LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-recog-3.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 89.2 % 3831 3419
Test Date: 2026-08-01 15:33:25 Functions: 95.1 % 203 193
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        40015 : pattern2 (rtx x1, int *pnum_clobbers)
      57              : {
      58        40015 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59        40015 :   rtx x2, x3, x4, x5, x6, x7;
      60        40015 :   int res ATTRIBUTE_UNUSED;
      61        40015 :   x2 = XEXP (x1, 1);
      62        40015 :   x3 = XEXP (x2, 0);
      63        40015 :   operands[1] = x3;
      64        40015 :   x4 = XEXP (x2, 1);
      65        40015 :   switch (GET_CODE (x4))
      66              :     {
      67           21 :     case AND:
      68           21 :       if (pnum_clobbers == NULL
      69           21 :           || GET_MODE (x4) != E_QImode)
      70              :         return -1;
      71           21 :       x5 = XEXP (x1, 0);
      72           21 :       operands[0] = x5;
      73           21 :       x6 = XEXP (x4, 0);
      74           21 :       operands[2] = x6;
      75           21 :       if (!register_operand (operands[2], E_QImode))
      76              :         return -1;
      77           15 :       return pattern1 (x2); /* [-1, 1] */
      78              : 
      79           42 :     case PLUS:
      80           42 :       if (pnum_clobbers == NULL
      81           42 :           || GET_MODE (x4) != E_QImode)
      82              :         return -1;
      83           42 :       x5 = XEXP (x1, 0);
      84           42 :       operands[0] = x5;
      85           42 :       x6 = XEXP (x4, 0);
      86           42 :       operands[2] = x6;
      87           42 :       if (!nonimmediate_operand (operands[2], E_QImode))
      88              :         return -1;
      89           42 :       res = pattern1 (x2);
      90           42 :       if (res >= 0)
      91            0 :         return res + 2; /* [2, 3] */
      92              :       return -1;
      93              : 
      94           40 :     case MINUS:
      95           40 :       if (pnum_clobbers == NULL
      96           40 :           || GET_MODE (x4) != E_QImode)
      97              :         return -1;
      98           40 :       x5 = XEXP (x1, 0);
      99           40 :       operands[0] = x5;
     100           40 :       x6 = XEXP (x4, 0);
     101           40 :       operands[3] = x6;
     102           40 :       if (!const_int_operand (operands[3], E_QImode))
     103              :         return -1;
     104           13 :       x7 = XEXP (x4, 1);
     105           13 :       operands[2] = x7;
     106           13 :       if (!nonimmediate_operand (operands[2], E_QImode))
     107              :         return -1;
     108           10 :       res = pattern0 (x2);
     109           10 :       if (res >= 0)
     110            0 :         return res + 4; /* [4, 5] */
     111              :       return -1;
     112              : 
     113              :     case CONST_INT:
     114              :     case CONST_WIDE_INT:
     115              :     case CONST_POLY_INT:
     116              :     case CONST_FIXED:
     117              :     case CONST_DOUBLE:
     118              :     case CONST_VECTOR:
     119              :     case CONST:
     120              :     case REG:
     121              :     case SUBREG:
     122              :     case LABEL_REF:
     123              :     case SYMBOL_REF:
     124              :     case HIGH:
     125              :       return 6;
     126              : 
     127              :     default:
     128              :       return -1;
     129              :     }
     130              : }
     131              : 
     132              : int
     133          592 : pattern32 (rtx x1, machine_mode i1)
     134              : {
     135          592 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     136          592 :   int res ATTRIBUTE_UNUSED;
     137          592 :   if (!register_operand (operands[0], i1)
     138          530 :       || GET_MODE (x1) != i1
     139          530 :       || !nonimmediate_operand (operands[1], i1)
     140         1122 :       || !const_0_to_255_operand (operands[2], E_SImode))
     141           62 :     return -1;
     142              :   return 0;
     143              : }
     144              : 
     145              : int
     146       152526 : pattern34 (rtx x1)
     147              : {
     148       152526 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     149       152526 :   rtx x2, x3, x4, x5;
     150       152526 :   int res ATTRIBUTE_UNUSED;
     151       152526 :   x2 = XEXP (x1, 0);
     152       152526 :   operands[0] = x2;
     153       152526 :   x3 = XEXP (x1, 1);
     154       152526 :   x4 = XEXP (x3, 0);
     155       152526 :   operands[1] = x4;
     156       152526 :   x5 = XEXP (x3, 1);
     157       152526 :   operands[2] = x5;
     158       152526 :   switch (GET_MODE (operands[0]))
     159              :     {
     160          421 :     case E_V32QImode:
     161          421 :       return pattern3 (x3, 
     162          421 : E_V32QImode); /* [-1, 0] */
     163              : 
     164          808 :     case E_V16HImode:
     165          808 :       if (pattern3 (x3, 
     166              : E_V16HImode) != 0)
     167              :         return -1;
     168              :       return 1;
     169              : 
     170         1079 :     case E_V8SImode:
     171         1079 :       if (pattern3 (x3, 
     172              : E_V8SImode) != 0)
     173              :         return -1;
     174              :       return 2;
     175              : 
     176          142 :     case E_V16SImode:
     177          142 :       if (pattern3 (x3, 
     178              : E_V16SImode) != 0)
     179              :         return -1;
     180              :       return 3;
     181              : 
     182         3613 :     case E_V4SImode:
     183         3613 :       if (!register_operand (operands[0], E_V4SImode)
     184         3613 :           || GET_MODE (x3) != E_V4SImode)
     185              :         return -1;
     186              :       return 4;
     187              : 
     188         1691 :     case E_V8DImode:
     189         1691 :       if (pattern3 (x3, 
     190              : E_V8DImode) != 0)
     191              :         return -1;
     192              :       return 5;
     193              : 
     194          304 :     case E_V4DImode:
     195          304 :       if (pattern3 (x3, 
     196              : E_V4DImode) != 0)
     197              :         return -1;
     198              :       return 6;
     199              : 
     200          154 :     case E_V2DImode:
     201          154 :       if (pattern3 (x3, 
     202              : E_V2DImode) != 0)
     203              :         return -1;
     204              :       return 7;
     205              : 
     206          170 :     case E_V64QImode:
     207          170 :       if (pattern3 (x3, 
     208              : E_V64QImode) != 0)
     209              :         return -1;
     210              :       return 8;
     211              : 
     212        10278 :     case E_V16QImode:
     213        10278 :       if (!register_operand (operands[0], E_V16QImode)
     214        10278 :           || GET_MODE (x3) != E_V16QImode)
     215              :         return -1;
     216              :       return 9;
     217              : 
     218          172 :     case E_V32HImode:
     219          172 :       if (pattern3 (x3, 
     220              : E_V32HImode) != 0)
     221              :         return -1;
     222              :       return 10;
     223              : 
     224         5433 :     case E_V8HImode:
     225         5433 :       if (!register_operand (operands[0], E_V8HImode)
     226         5433 :           || GET_MODE (x3) != E_V8HImode)
     227              :         return -1;
     228              :       return 11;
     229              : 
     230              :     default:
     231              :       return -1;
     232              :     }
     233              : }
     234              : 
     235              : int
     236       183202 : pattern43 (rtx x1, machine_mode i1, machine_mode i2)
     237              : {
     238       183202 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     239       183202 :   rtx x2, x3, x4;
     240       183202 :   int res ATTRIBUTE_UNUSED;
     241       183202 :   if (!register_operand (operands[0], i2)
     242       183202 :       || GET_MODE (x1) != i2)
     243              :     return -1;
     244       182957 :   x2 = XEXP (x1, 0);
     245       182957 :   x3 = XEXP (x2, 0);
     246       182957 :   operands[1] = x3;
     247       182957 :   if (!nonimmediate_operand (operands[1], i1))
     248              :     return -1;
     249       144273 :   x4 = XEXP (x1, 1);
     250       144273 :   operands[2] = x4;
     251       144273 :   if (!const_int_operand (operands[2], E_QImode))
     252              :     return -1;
     253              :   return 0;
     254              : }
     255              : 
     256              : int
     257       279487 : pattern49 (rtx x1)
     258              : {
     259       279487 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     260       279487 :   int res ATTRIBUTE_UNUSED;
     261       279487 :   switch (GET_MODE (x1))
     262              :     {
     263       103232 :     case E_QImode:
     264       103232 :       if (!nonimmediate_operand (operands[1], E_QImode)
     265       103232 :           || !general_operand (operands[2], E_QImode))
     266        64710 :         return -1;
     267              :       return 0;
     268              : 
     269         1385 :     case E_HImode:
     270         1385 :       if (!nonimmediate_operand (operands[1], E_HImode)
     271         1385 :           || !general_operand (operands[2], E_HImode))
     272          495 :         return -1;
     273              :       return 1;
     274              : 
     275        80012 :     case E_SImode:
     276        80012 :       if (!nonimmediate_operand (operands[1], E_SImode)
     277        80012 :           || !x86_64_general_operand (operands[2], E_SImode))
     278        41656 :         return -1;
     279              :       return 2;
     280              : 
     281        91792 :     case E_DImode:
     282        91792 :       if (!nonimmediate_operand (operands[1], E_DImode)
     283        91792 :           || !x86_64_general_operand (operands[2], E_DImode))
     284        49022 :         return -1;
     285              :       return 3;
     286              : 
     287              :     default:
     288              :       return -1;
     289              :     }
     290              : }
     291              : 
     292              : int
     293         2583 : pattern58 (rtx x1, machine_mode i1)
     294              : {
     295         2583 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     296         2583 :   rtx x2, x3, x4;
     297         2583 :   int res ATTRIBUTE_UNUSED;
     298         2583 :   x2 = XEXP (x1, 1);
     299         2583 :   if (GET_MODE (x2) != E_CCmode)
     300              :     return -1;
     301         2583 :   x3 = XEXP (x1, 0);
     302         2583 :   if (GET_CODE (x3) != REG
     303         2583 :       || REGNO (x3) != 17
     304         5162 :       || GET_MODE (x3) != E_CCmode)
     305              :     return -1;
     306         2579 :   x4 = XVECEXP (x2, 0, 0);
     307         2579 :   operands[0] = x4;
     308         2579 :   if (!register_operand (operands[0], i1))
     309              :     return -1;
     310              :   return 0;
     311              : }
     312              : 
     313              : int
     314          521 : pattern62 (rtx x1, int *pnum_clobbers, machine_mode i1)
     315              : {
     316          521 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     317          521 :   rtx x2, x3, x4;
     318          521 :   int res ATTRIBUTE_UNUSED;
     319          521 :   if (pnum_clobbers == NULL)
     320              :     return -1;
     321          521 :   x2 = XEXP (x1, 1);
     322          521 :   if (GET_MODE (x2) != i1)
     323              :     return -1;
     324          521 :   x3 = XEXP (x1, 0);
     325          521 :   operands[0] = x3;
     326          521 :   if (!register_operand (operands[0], i1))
     327              :     return -1;
     328          504 :   x4 = XVECEXP (x2, 0, 0);
     329          504 :   operands[1] = x4;
     330          504 :   if (!register_operand (operands[1], i1))
     331              :     return -1;
     332              :   return 0;
     333              : }
     334              : 
     335              : int
     336        47389 : pattern66 (rtx x1, machine_mode i1)
     337              : {
     338        47389 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     339        47389 :   rtx x2, x3, x4, x5;
     340        47389 :   int res ATTRIBUTE_UNUSED;
     341        47389 :   x2 = XEXP (x1, 1);
     342        47389 :   if (GET_MODE (x2) != i1)
     343              :     return -1;
     344        47336 :   x3 = XEXP (x1, 0);
     345        47336 :   operands[0] = x3;
     346        47336 :   if (!register_operand (operands[0], i1))
     347              :     return -1;
     348        47184 :   x4 = XVECEXP (x2, 0, 0);
     349        47184 :   operands[1] = x4;
     350        47184 :   if (!register_operand (operands[1], i1))
     351              :     return -1;
     352        30264 :   x5 = XVECEXP (x2, 0, 1);
     353        30264 :   operands[2] = x5;
     354        30264 :   if (!nonimmediate_operand (operands[2], i1))
     355              :     return -1;
     356              :   return 0;
     357              : }
     358              : 
     359              : int
     360           56 : pattern73 (rtx x1, machine_mode i1, machine_mode i2)
     361              : {
     362           56 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     363           56 :   rtx x2;
     364           56 :   int res ATTRIBUTE_UNUSED;
     365           56 :   if (!register_operand (operands[0], i2)
     366           56 :       || GET_MODE (x1) != i2)
     367              :     return -1;
     368           56 :   x2 = XVECEXP (x1, 0, 0);
     369           56 :   if (GET_MODE (x2) != i1
     370           56 :       || !vector_operand (operands[1], i1)
     371           56 :       || !vector_operand (operands[2], i1)
     372          112 :       || !const0_operand (operands[3], i1))
     373           28 :     return -1;
     374              :   return 0;
     375              : }
     376              : 
     377              : int
     378       627635 : pattern80 (rtx x1, machine_mode i1)
     379              : {
     380       627635 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     381       627635 :   int res ATTRIBUTE_UNUSED;
     382       627635 :   if (!nonimmediate_operand (operands[0], i1)
     383       624228 :       || GET_MODE (x1) != i1
     384       624228 :       || !nonimmediate_operand (operands[1], i1)
     385      1159476 :       || !general_operand (operands[2], i1))
     386        99593 :     return -1;
     387              :   return 0;
     388              : }
     389              : 
     390              : int
     391        13595 : pattern85 (rtx x1)
     392              : {
     393        13595 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     394        13595 :   rtx x2, x3, x4;
     395        13595 :   int res ATTRIBUTE_UNUSED;
     396        13595 :   x2 = XEXP (x1, 0);
     397        13595 :   if (GET_MODE (x2) != E_QImode
     398         8095 :       || !register_operand (operands[0], E_HImode)
     399        13798 :       || GET_MODE (x1) != E_HImode)
     400        13392 :     return -1;
     401          203 :   x3 = XEXP (x2, 0);
     402          203 :   operands[1] = x3;
     403          203 :   if (!nonimmediate_operand (operands[1], E_QImode))
     404              :     return -1;
     405          184 :   x4 = XEXP (x2, 1);
     406          184 :   operands[2] = x4;
     407          184 :   if (!x86_64_general_operand (operands[2], E_QImode))
     408              :     return -1;
     409              :   return 0;
     410              : }
     411              : 
     412              : int
     413        11050 : pattern92 (rtx x1, machine_mode i1, machine_mode i2)
     414              : {
     415        11050 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     416        11050 :   int res ATTRIBUTE_UNUSED;
     417        11050 :   if (!register_operand (operands[0], i1)
     418        11050 :       || GET_MODE (x1) != i1)
     419              :     return -1;
     420        11044 :   return pattern91 (x1, 
     421              : i1, 
     422        11044 : i2); /* [-1, 1] */
     423              : }
     424              : 
     425              : int
     426       251108 : pattern97 (rtx x1)
     427              : {
     428       251108 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     429       251108 :   rtx x2, x3, x4, x5, x6, x7, x8;
     430       251108 :   int res ATTRIBUTE_UNUSED;
     431       251108 :   x2 = XEXP (x1, 1);
     432       251108 :   x3 = XEXP (x2, 0);
     433       251108 :   x4 = XEXP (x3, 1);
     434       251108 :   if (GET_CODE (x4) != PARALLEL)
     435              :     return -1;
     436       251108 :   x5 = XEXP (x2, 1);
     437       251108 :   if (GET_CODE (x5) != VEC_SELECT)
     438              :     return -1;
     439        15807 :   x6 = XEXP (x5, 1);
     440        15807 :   if (GET_CODE (x6) != PARALLEL)
     441              :     return -1;
     442        15807 :   x7 = XEXP (x1, 0);
     443        15807 :   operands[0] = x7;
     444        15807 :   x8 = XEXP (x3, 0);
     445        15807 :   switch (GET_CODE (x8))
     446              :     {
     447              :     case REG:
     448              :     case SUBREG:
     449              :     case MEM:
     450              :       return 0;
     451              : 
     452         2374 :     case VEC_CONCAT:
     453         2374 :       return 1;
     454              : 
     455              :     default:
     456              :       return -1;
     457              :     }
     458              : }
     459              : 
     460              : int
     461         3207 : pattern103 (rtx x1, machine_mode i1)
     462              : {
     463         3207 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     464         3207 :   rtx x2, x3, x4, x5, x6, x7;
     465         3207 :   int res ATTRIBUTE_UNUSED;
     466         3207 :   if (GET_MODE (x1) != i1)
     467              :     return -1;
     468          447 :   x2 = XEXP (x1, 0);
     469          447 :   if (GET_CODE (x2) != VEC_SELECT
     470          284 :       || GET_MODE (x2) != i1)
     471              :     return -1;
     472          284 :   x3 = XEXP (x2, 1);
     473          284 :   if (GET_CODE (x3) != PARALLEL
     474          284 :       || XVECLEN (x3, 0) != 1)
     475              :     return -1;
     476          284 :   x4 = XVECEXP (x3, 0, 0);
     477          284 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     478              :     return -1;
     479          284 :   x5 = XEXP (x1, 1);
     480          284 :   if (GET_CODE (x5) != VEC_SELECT
     481          284 :       || GET_MODE (x5) != i1)
     482              :     return -1;
     483          284 :   x6 = XEXP (x5, 1);
     484          284 :   if (GET_CODE (x6) != PARALLEL
     485          284 :       || XVECLEN (x6, 0) != 1)
     486              :     return -1;
     487          284 :   x7 = XVECEXP (x6, 0, 0);
     488          284 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
     489            0 :     return -1;
     490              :   return 0;
     491              : }
     492              : 
     493              : int
     494        48608 : pattern114 (rtx x1, int *pnum_clobbers)
     495              : {
     496        48608 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     497        48608 :   rtx x2;
     498        48608 :   int res ATTRIBUTE_UNUSED;
     499        48608 :   switch (GET_MODE (operands[0]))
     500              :     {
     501        10326 :     case E_SImode:
     502        10326 :       if (!register_operand (operands[0], E_SImode)
     503        10326 :           || GET_MODE (x1) != E_SImode)
     504              :         return -1;
     505        10173 :       x2 = XEXP (x1, 0);
     506        10173 :       switch (GET_MODE (x2))
     507              :         {
     508         7754 :         case E_QImode:
     509         7754 :           if (!nonimmediate_operand (operands[1], E_QImode)
     510         7754 :               || !x86_64_general_operand (operands[2], E_QImode))
     511          322 :             return -1;
     512              :           return 0;
     513              : 
     514         2419 :         case E_HImode:
     515         2419 :           if (!nonimmediate_operand (operands[1], E_HImode)
     516         2419 :               || !x86_64_general_operand (operands[2], E_HImode))
     517          127 :             return -1;
     518              :           return 1;
     519              : 
     520              :         default:
     521              :           return -1;
     522              :         }
     523              : 
     524        34369 :     case E_DImode:
     525        34369 :       if (!register_operand (operands[0], E_DImode)
     526        34369 :           || GET_MODE (x1) != E_DImode)
     527              :         return -1;
     528        34124 :       x2 = XEXP (x1, 0);
     529        34124 :       switch (GET_MODE (x2))
     530              :         {
     531         2431 :         case E_QImode:
     532         2431 :           if (!nonimmediate_operand (operands[1], E_QImode)
     533         2431 :               || !x86_64_general_operand (operands[2], E_QImode))
     534          146 :             return -1;
     535              :           return 2;
     536              : 
     537          634 :         case E_HImode:
     538          634 :           if (!nonimmediate_operand (operands[1], E_HImode)
     539          634 :               || !x86_64_general_operand (operands[2], E_HImode))
     540          133 :             return -1;
     541              :           return 3;
     542              : 
     543        31059 :         case E_SImode:
     544        31059 :           if (pnum_clobbers == NULL
     545        30408 :               || !nonimmediate_operand (operands[1], E_SImode)
     546        58889 :               || !x86_64_general_operand (operands[2], E_SImode))
     547         4056 :             return -1;
     548              :           return 4;
     549              : 
     550              :         default:
     551              :           return -1;
     552              :         }
     553              : 
     554              :     default:
     555              :       return -1;
     556              :     }
     557              : }
     558              : 
     559              : int
     560         9327 : pattern133 (rtx x1, machine_mode i1, machine_mode i2)
     561              : {
     562         9327 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     563         9327 :   rtx x2;
     564         9327 :   int res ATTRIBUTE_UNUSED;
     565         9327 :   if (!register_operand (operands[0], i1)
     566         9327 :       || GET_MODE (x1) != i1)
     567              :     return -1;
     568         8924 :   x2 = XEXP (x1, 0);
     569         8924 :   if (GET_MODE (x2) != i1
     570         8924 :       || !vector_operand (operands[1], i1)
     571         8826 :       || !vector_operand (operands[2], i1)
     572         8348 :       || !nonimm_or_0_operand (operands[3], i1)
     573        16986 :       || !register_operand (operands[4], i2))
     574         1300 :     return -1;
     575              :   return 0;
     576              : }
     577              : 
     578              : int
     579            0 : pattern144 (rtx x1)
     580              : {
     581            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     582            0 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     583            0 :   rtx x10, x11;
     584            0 :   int res ATTRIBUTE_UNUSED;
     585            0 :   x2 = XEXP (x1, 1);
     586            0 :   operands[2] = x2;
     587            0 :   x3 = XEXP (x1, 2);
     588            0 :   operands[3] = x3;
     589            0 :   x4 = XEXP (x1, 0);
     590            0 :   x5 = XEXP (x4, 0);
     591            0 :   switch (GET_CODE (x5))
     592              :     {
     593            0 :     case REG:
     594            0 :     case SUBREG:
     595            0 :     case MEM:
     596            0 :       operands[1] = x5;
     597            0 :       switch (GET_MODE (operands[0]))
     598              :         {
     599            0 :         case E_V8HImode:
     600            0 :           return pattern141 (x1, 
     601              : E_V8HImode, 
     602              : E_QImode, 
     603            0 : E_V8HFmode); /* [-1, 0] */
     604              : 
     605            0 :         case E_V16HImode:
     606            0 :           if (pattern141 (x1, 
     607              : E_V16HImode, 
     608              : E_HImode, 
     609              : E_V16HFmode) != 0)
     610              :             return -1;
     611              :           return 1;
     612              : 
     613            0 :         case E_V32HImode:
     614            0 :           if (pattern141 (x1, 
     615              : E_V32HImode, 
     616              : E_SImode, 
     617              : E_V32HFmode) != 0)
     618              :             return -1;
     619              :           return 2;
     620              : 
     621            0 :         case E_V8SImode:
     622            0 :           if (pattern142 (x1, 
     623              : E_V8SImode, 
     624              : E_QImode) != 0)
     625              :             return -1;
     626              :           return 3;
     627              : 
     628            0 :         case E_V16SImode:
     629            0 :           if (!register_operand (operands[0], E_V16SImode)
     630            0 :               || GET_MODE (x1) != E_V16SImode
     631            0 :               || GET_MODE (x4) != E_V16SImode
     632            0 :               || !nonimm_or_0_operand (operands[2], E_V16SImode)
     633            0 :               || !register_operand (operands[3], E_HImode))
     634            0 :             return -1;
     635            0 :           switch (GET_MODE (operands[1]))
     636              :             {
     637            0 :             case E_V16HFmode:
     638            0 :               if (!vector_operand (operands[1], E_V16HFmode))
     639              :                 return -1;
     640              :               return 4;
     641              : 
     642            0 :             case E_V16SFmode:
     643            0 :               if (!vector_operand (operands[1], E_V16SFmode))
     644              :                 return -1;
     645              :               return 5;
     646              : 
     647              :             default:
     648              :               return -1;
     649              :             }
     650              : 
     651            0 :         case E_V8DImode:
     652            0 :           if (!register_operand (operands[0], E_V8DImode)
     653            0 :               || GET_MODE (x1) != E_V8DImode
     654            0 :               || GET_MODE (x4) != E_V8DImode
     655            0 :               || !nonimm_or_0_operand (operands[2], E_V8DImode)
     656            0 :               || !register_operand (operands[3], E_QImode))
     657            0 :             return -1;
     658            0 :           switch (GET_MODE (operands[1]))
     659              :             {
     660            0 :             case E_V8HFmode:
     661            0 :               if (!vector_operand (operands[1], E_V8HFmode))
     662              :                 return -1;
     663              :               return 6;
     664              : 
     665            0 :             case E_V8DFmode:
     666            0 :               if (!vector_operand (operands[1], E_V8DFmode))
     667              :                 return -1;
     668              :               return 7;
     669              : 
     670            0 :             case E_V8SFmode:
     671            0 :               if (!vector_operand (operands[1], E_V8SFmode))
     672              :                 return -1;
     673              :               return 8;
     674              : 
     675              :             default:
     676              :               return -1;
     677              :             }
     678              : 
     679            0 :         case E_V4SImode:
     680            0 :           if (pattern142 (x1, 
     681              : E_V4SImode, 
     682              : E_QImode) != 0)
     683              :             return -1;
     684              :           return 9;
     685              : 
     686            0 :         case E_V4DImode:
     687            0 :           if (!register_operand (operands[0], E_V4DImode)
     688            0 :               || GET_MODE (x1) != E_V4DImode
     689            0 :               || GET_MODE (x4) != E_V4DImode
     690            0 :               || !nonimm_or_0_operand (operands[2], E_V4DImode)
     691            0 :               || !register_operand (operands[3], E_QImode))
     692            0 :             return -1;
     693            0 :           switch (GET_MODE (operands[1]))
     694              :             {
     695            0 :             case E_V4HFmode:
     696            0 :               if (!memory_operand (operands[1], E_V4HFmode))
     697              :                 return -1;
     698              :               return 10;
     699              : 
     700            0 :             case E_V4DFmode:
     701            0 :               if (!vector_operand (operands[1], E_V4DFmode))
     702              :                 return -1;
     703              :               return 11;
     704              : 
     705            0 :             case E_V4SFmode:
     706            0 :               if (!vector_operand (operands[1], E_V4SFmode))
     707              :                 return -1;
     708              :               return 12;
     709              : 
     710              :             default:
     711              :               return -1;
     712              :             }
     713              : 
     714            0 :         case E_V2DImode:
     715            0 :           if (!register_operand (operands[0], E_V2DImode)
     716            0 :               || GET_MODE (x1) != E_V2DImode
     717            0 :               || GET_MODE (x4) != E_V2DImode
     718            0 :               || !nonimm_or_0_operand (operands[2], E_V2DImode)
     719            0 :               || !register_operand (operands[3], E_QImode))
     720            0 :             return -1;
     721            0 :           switch (GET_MODE (operands[1]))
     722              :             {
     723            0 :             case E_V2HFmode:
     724            0 :               if (!memory_operand (operands[1], E_V2HFmode))
     725              :                 return -1;
     726              :               return 13;
     727              : 
     728            0 :             case E_V2DFmode:
     729            0 :               if (!vector_operand (operands[1], E_V2DFmode))
     730              :                 return -1;
     731              :               return 14;
     732              : 
     733              :             default:
     734              :               return -1;
     735              :             }
     736              : 
     737              :         default:
     738              :           return -1;
     739              :         }
     740              : 
     741            0 :     case VEC_SELECT:
     742            0 :       x6 = XEXP (x5, 1);
     743            0 :       if (GET_CODE (x6) != PARALLEL)
     744              :         return -1;
     745            0 :       x7 = XEXP (x5, 0);
     746            0 :       operands[1] = x7;
     747            0 :       if (!register_operand (operands[3], E_QImode))
     748              :         return -1;
     749            0 :       switch (XVECLEN (x6, 0))
     750              :         {
     751            0 :         case 4:
     752            0 :           x8 = XVECEXP (x6, 0, 0);
     753            0 :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     754              :             return -1;
     755            0 :           x9 = XVECEXP (x6, 0, 1);
     756            0 :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
     757              :             return -1;
     758            0 :           x10 = XVECEXP (x6, 0, 2);
     759            0 :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     760              :             return -1;
     761            0 :           x11 = XVECEXP (x6, 0, 3);
     762            0 :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
     763            0 :               || GET_MODE (x5) != E_V4HFmode
     764            0 :               || !register_operand (operands[1], E_V8HFmode))
     765            0 :             return -1;
     766            0 :           switch (GET_MODE (operands[0]))
     767              :             {
     768            0 :             case E_V4SImode:
     769            0 :               if (pattern143 (x1, 
     770              : E_V4SImode) != 0)
     771              :                 return -1;
     772              :               return 15;
     773              : 
     774            0 :             case E_V4DImode:
     775            0 :               if (pattern143 (x1, 
     776              : E_V4DImode) != 0)
     777              :                 return -1;
     778              :               return 16;
     779              : 
     780              :             default:
     781              :               return -1;
     782              :             }
     783              : 
     784            0 :         case 2:
     785            0 :           x8 = XVECEXP (x6, 0, 0);
     786            0 :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     787              :             return -1;
     788            0 :           x9 = XVECEXP (x6, 0, 1);
     789            0 :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
     790            0 :               || !register_operand (operands[0], E_V2DImode)
     791            0 :               || GET_MODE (x1) != E_V2DImode
     792            0 :               || GET_MODE (x4) != E_V2DImode
     793            0 :               || !nonimm_or_0_operand (operands[2], E_V2DImode))
     794            0 :             return -1;
     795            0 :           switch (GET_MODE (x5))
     796              :             {
     797            0 :             case E_V2HFmode:
     798            0 :               if (!nonimmediate_operand (operands[1], E_V8HFmode))
     799              :                 return -1;
     800              :               return 17;
     801              : 
     802            0 :             case E_V2SFmode:
     803            0 :               if (!nonimmediate_operand (operands[1], E_V4SFmode))
     804              :                 return -1;
     805              :               return 18;
     806              : 
     807              :             default:
     808              :               return -1;
     809              :             }
     810              : 
     811              :         default:
     812              :           return -1;
     813              :         }
     814              : 
     815              :     default:
     816              :       return -1;
     817              :     }
     818              : }
     819              : 
     820              : int
     821          444 : pattern206 (rtx x1)
     822              : {
     823          444 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     824          444 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     825          444 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
     826          444 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
     827          444 :   rtx x26, x27;
     828          444 :   int res ATTRIBUTE_UNUSED;
     829          444 :   x2 = XEXP (x1, 0);
     830          444 :   x3 = XEXP (x2, 0);
     831          444 :   if (GET_CODE (x3) != VEC_CONCAT)
     832              :     return -1;
     833          444 :   x4 = XEXP (x2, 1);
     834          444 :   if (GET_CODE (x4) != PARALLEL)
     835              :     return -1;
     836          444 :   x5 = XEXP (x1, 1);
     837          444 :   if (GET_CODE (x5) != VEC_SELECT)
     838              :     return -1;
     839          444 :   x6 = XEXP (x5, 0);
     840          444 :   if (GET_CODE (x6) != VEC_CONCAT)
     841              :     return -1;
     842          444 :   x7 = XEXP (x5, 1);
     843          444 :   if (GET_CODE (x7) != PARALLEL)
     844              :     return -1;
     845          444 :   x8 = XEXP (x3, 0);
     846          444 :   operands[1] = x8;
     847          444 :   x9 = XEXP (x3, 1);
     848          444 :   operands[2] = x9;
     849          444 :   x10 = XEXP (x6, 0);
     850          444 :   if (!rtx_equal_p (x10, operands[1]))
     851              :     return -1;
     852          444 :   x11 = XEXP (x6, 1);
     853          444 :   if (!rtx_equal_p (x11, operands[2]))
     854              :     return -1;
     855          444 :   switch (XVECLEN (x4, 0))
     856              :     {
     857          197 :     case 16:
     858          197 :       return pattern196 (x1); /* [-1, 0] */
     859              : 
     860          239 :     case 8:
     861          239 :       x12 = XVECEXP (x4, 0, 0);
     862          239 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     863              :         return -1;
     864          239 :       x13 = XVECEXP (x4, 0, 1);
     865          239 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     866              :         return -1;
     867          239 :       x14 = XVECEXP (x4, 0, 2);
     868          239 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
     869              :         return -1;
     870          239 :       x15 = XVECEXP (x4, 0, 3);
     871          239 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
     872              :         return -1;
     873          239 :       x16 = XVECEXP (x4, 0, 4);
     874          239 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
     875              :         return -1;
     876          239 :       x17 = XVECEXP (x4, 0, 5);
     877          239 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
     878              :         return -1;
     879          239 :       x18 = XVECEXP (x4, 0, 6);
     880          239 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
     881              :         return -1;
     882          239 :       x19 = XVECEXP (x4, 0, 7);
     883          239 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 14]
     884          239 :           || XVECLEN (x7, 0) != 8)
     885              :         return -1;
     886          239 :       x20 = XVECEXP (x7, 0, 0);
     887          239 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
     888              :         return -1;
     889          239 :       x21 = XVECEXP (x7, 0, 1);
     890          239 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
     891              :         return -1;
     892          239 :       x22 = XVECEXP (x7, 0, 2);
     893          239 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
     894              :         return -1;
     895          239 :       x23 = XVECEXP (x7, 0, 3);
     896          239 :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
     897              :         return -1;
     898          239 :       x24 = XVECEXP (x7, 0, 4);
     899          239 :       if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
     900              :         return -1;
     901          239 :       x25 = XVECEXP (x7, 0, 5);
     902          239 :       if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
     903              :         return -1;
     904          239 :       x26 = XVECEXP (x7, 0, 6);
     905          239 :       if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
     906              :         return -1;
     907          239 :       x27 = XVECEXP (x7, 0, 7);
     908          239 :       if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 15]
     909          239 :           || pattern197 (x1, 
     910              : E_V16HImode, 
     911              : E_V8HImode) != 0)
     912           16 :         return -1;
     913              :       return 1;
     914              : 
     915              :     default:
     916              :       return -1;
     917              :     }
     918              : }
     919              : 
     920              : int
     921       321451 : pattern223 (rtx x1, machine_mode i1)
     922              : {
     923       321451 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     924       321451 :   int res ATTRIBUTE_UNUSED;
     925       321451 :   if (!register_operand (operands[0], i1)
     926       321450 :       || GET_MODE (x1) != i1
     927       321450 :       || !register_operand (operands[1], i1)
     928       281251 :       || !nonimmediate_operand (operands[2], i1)
     929       500446 :       || !scratch_operand (operands[3], i1))
     930       142485 :     return -1;
     931              :   return 0;
     932              : }
     933              : 
     934              : int
     935       365717 : pattern228 (rtx x1)
     936              : {
     937       365717 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     938       365717 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     939       365717 :   int res ATTRIBUTE_UNUSED;
     940       365717 :   x2 = XVECEXP (x1, 0, 1);
     941       365717 :   if (GET_CODE (x2) != USE)
     942              :     return -1;
     943       348898 :   x3 = XVECEXP (x1, 0, 2);
     944       348898 :   if (GET_CODE (x3) != CLOBBER)
     945              :     return -1;
     946       337862 :   x4 = XEXP (x3, 0);
     947       337862 :   if (GET_CODE (x4) != REG
     948       337862 :       || REGNO (x4) != 17
     949       675724 :       || GET_MODE (x4) != E_CCmode)
     950              :     return -1;
     951       337862 :   x5 = XVECEXP (x1, 0, 0);
     952       337862 :   x6 = XEXP (x5, 0);
     953       337862 :   operands[0] = x6;
     954       337862 :   x7 = XEXP (x5, 1);
     955       337862 :   x8 = XEXP (x7, 0);
     956       337862 :   operands[1] = x8;
     957       337862 :   x9 = XEXP (x2, 0);
     958       337862 :   operands[2] = x9;
     959       337862 :   switch (GET_MODE (operands[0]))
     960              :     {
     961         2299 :     case E_HFmode:
     962         2299 :       return pattern227 (x7, 
     963              : E_V8HFmode, 
     964         2299 : E_HFmode); /* [-1, 0] */
     965              : 
     966       154313 :     case E_SFmode:
     967       154313 :       if (pattern227 (x7, 
     968              : E_V4SFmode, 
     969              : E_SFmode) != 0)
     970              :         return -1;
     971              :       return 1;
     972              : 
     973       181250 :     case E_DFmode:
     974       181250 :       if (pattern227 (x7, 
     975              : E_V2DFmode, 
     976              : E_DFmode) != 0)
     977              :         return -1;
     978              :       return 2;
     979              : 
     980              :     default:
     981              :       return -1;
     982              :     }
     983              : }
     984              : 
     985              : int
     986       400956 : pattern242 (rtx x1, machine_mode i1)
     987              : {
     988       400956 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     989       400956 :   int res ATTRIBUTE_UNUSED;
     990       400956 :   if (!mask_reg_operand (operands[0], i1)
     991            0 :       || GET_MODE (x1) != i1
     992            0 :       || !mask_reg_operand (operands[1], i1)
     993       400956 :       || !mask_reg_operand (operands[2], i1))
     994       400956 :     return -1;
     995              :   return 0;
     996              : }
     997              : 
     998              : int
     999     17444690 : pattern249 (rtx x1)
    1000              : {
    1001     17444690 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1002     17444690 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1003     17444690 :   int res ATTRIBUTE_UNUSED;
    1004     17444690 :   x2 = XEXP (x1, 1);
    1005     17444690 :   x3 = XEXP (x2, 0);
    1006     17444690 :   x4 = XEXP (x3, 0);
    1007     17444690 :   if (GET_CODE (x4) != REG
    1008     17444690 :       || REGNO (x4) != 17)
    1009              :     return -1;
    1010      8633036 :   x5 = XEXP (x3, 1);
    1011      8633036 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1012              :     return -1;
    1013      8633036 :   x6 = XEXP (x1, 0);
    1014      8633036 :   operands[0] = x6;
    1015      8633036 :   x7 = XEXP (x2, 1);
    1016      8633036 :   switch (GET_CODE (x7))
    1017              :     {
    1018      2610093 :     case REG:
    1019      2610093 :     case SUBREG:
    1020      2610093 :     case MEM:
    1021      2610093 :       operands[2] = x7;
    1022      2610093 :       x8 = XEXP (x2, 2);
    1023      2610093 :       operands[3] = x8;
    1024      2610093 :       return 0;
    1025              : 
    1026         4320 :     case ZERO_EXTEND:
    1027         4320 :       if (GET_MODE (x7) != E_DImode)
    1028              :         return -1;
    1029         1304 :       x8 = XEXP (x2, 2);
    1030         1304 :       if (GET_CODE (x8) != ZERO_EXTEND
    1031           11 :           || GET_MODE (x8) != E_DImode)
    1032              :         return -1;
    1033              :       return 1;
    1034              : 
    1035              :     default:
    1036              :       return -1;
    1037              :     }
    1038              : }
    1039              : 
    1040              : int
    1041       620236 : pattern261 (rtx x1, machine_mode i1, machine_mode i2)
    1042              : {
    1043       620236 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1044       620236 :   rtx x2;
    1045       620236 :   int res ATTRIBUTE_UNUSED;
    1046       620236 :   switch (GET_CODE (x1))
    1047              :     {
    1048       248493 :     case ZERO_EXTEND:
    1049       248493 :       if (GET_MODE (x1) != i2)
    1050              :         return -1;
    1051       248493 :       x2 = XEXP (x1, 0);
    1052       248493 :       operands[3] = x2;
    1053       248493 :       if (!nonimmediate_operand (operands[3], i1))
    1054              :         return -1;
    1055              :       return 0;
    1056              : 
    1057        48166 :     case CONST_INT:
    1058        48166 :     case CONST_WIDE_INT:
    1059        48166 :       operands[3] = x1;
    1060        48166 :       if (!const_scalar_int_operand (operands[3], i2))
    1061              :         return -1;
    1062              :       return 1;
    1063              : 
    1064              :     default:
    1065              :       return -1;
    1066              :     }
    1067              : }
    1068              : 
    1069              : int
    1070        39711 : pattern271 (rtx x1, int *pnum_clobbers)
    1071              : {
    1072        39711 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1073        39711 :   rtx x2, x3;
    1074        39711 :   int res ATTRIBUTE_UNUSED;
    1075        39711 :   if (!nonmemory_operand (operands[2], E_QImode))
    1076              :     return -1;
    1077        37190 :   x2 = XEXP (x1, 0);
    1078        37190 :   switch (GET_CODE (x2))
    1079              :     {
    1080        37186 :     case REG:
    1081        37186 :     case SUBREG:
    1082        37186 :     case MEM:
    1083        37186 :       operands[0] = x2;
    1084        37186 :       x3 = XEXP (x1, 1);
    1085        37186 :       return pattern0 (x3); /* [-1, 1] */
    1086              : 
    1087            4 :     case STRICT_LOW_PART:
    1088            4 :       res = pattern267 (x1, pnum_clobbers);
    1089            4 :       if (res >= 0)
    1090            4 :         return res + 2; /* [2, 3] */
    1091              :       return -1;
    1092              : 
    1093              :     default:
    1094              :       return -1;
    1095              :     }
    1096              : }
    1097              : 
    1098              : int
    1099          943 : pattern283 (rtx x1)
    1100              : {
    1101          943 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1102          943 :   rtx x2;
    1103          943 :   int res ATTRIBUTE_UNUSED;
    1104          943 :   if (!register_operand (operands[0], E_SImode)
    1105          943 :       || GET_MODE (x1) != E_SImode)
    1106              :     return -1;
    1107          938 :   x2 = XEXP (x1, 0);
    1108          938 :   switch (GET_MODE (x2))
    1109              :     {
    1110          432 :     case E_QImode:
    1111          432 :       if (!nonimmediate_operand (operands[1], E_QImode))
    1112              :         return -1;
    1113              :       return 0;
    1114              : 
    1115          506 :     case E_HImode:
    1116          506 :       if (!nonimmediate_operand (operands[1], E_HImode))
    1117              :         return -1;
    1118              :       return 1;
    1119              : 
    1120              :     default:
    1121              :       return -1;
    1122              :     }
    1123              : }
    1124              : 
    1125              : int
    1126          724 : pattern291 (rtx x1, rtx_code i1)
    1127              : {
    1128          724 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1129          724 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1130          724 :   rtx x10, x11, x12;
    1131          724 :   int res ATTRIBUTE_UNUSED;
    1132          724 :   x2 = XEXP (x1, 0);
    1133          724 :   x3 = XEXP (x2, 1);
    1134          724 :   if (GET_MODE (x3) != E_QImode)
    1135              :     return -1;
    1136          660 :   x4 = XEXP (x3, 1);
    1137          660 :   if (GET_CODE (x4) != CONST_INT)
    1138              :     return -1;
    1139          660 :   x5 = XEXP (x1, 1);
    1140          660 :   if (GET_CODE (x5) != SUBREG
    1141          660 :       || maybe_ne (SUBREG_BYTE (x5), 0))
    1142              :     return -1;
    1143          589 :   x6 = XEXP (x5, 0);
    1144          589 :   if (GET_CODE (x6) != i1)
    1145              :     return -1;
    1146          589 :   x7 = XEXP (x6, 0);
    1147          589 :   if (GET_CODE (x7) != ZERO_EXTEND)
    1148              :     return -1;
    1149          589 :   x8 = XEXP (x6, 1);
    1150          589 :   if (GET_CODE (x8) != MINUS
    1151          589 :       || GET_MODE (x8) != E_QImode)
    1152              :     return -1;
    1153          589 :   x9 = XEXP (x8, 0);
    1154          589 :   if (GET_CODE (x9) != CONST_INT)
    1155              :     return -1;
    1156          589 :   x10 = XEXP (x8, 1);
    1157          589 :   if (GET_CODE (x10) != AND
    1158          589 :       || GET_MODE (x10) != E_QImode)
    1159              :     return -1;
    1160          589 :   x11 = XEXP (x10, 1);
    1161          589 :   if (GET_CODE (x11) != CONST_INT)
    1162              :     return -1;
    1163          589 :   x12 = XEXP (x3, 0);
    1164          589 :   if (!nonmemory_operand (x12, E_QImode))
    1165              :     return -1;
    1166          585 :   switch (XWINT (x4, 0))
    1167              :     {
    1168          576 :     case 63L:
    1169          576 :       if (XWINT (x9, 0) != 64L
    1170          576 :           || XWINT (x11, 0) != 63L
    1171         1152 :           || pattern290 (x1, 
    1172              : E_DImode, 
    1173              : E_TImode) != 0)
    1174           32 :         return -1;
    1175              :       return 0;
    1176              : 
    1177            6 :     case 31L:
    1178            6 :       if (XWINT (x9, 0) != 32L
    1179            6 :           || XWINT (x11, 0) != 31L)
    1180              :         return -1;
    1181              :       return 1;
    1182              : 
    1183              :     default:
    1184              :       return -1;
    1185              :     }
    1186              : }
    1187              : 
    1188              : int
    1189         1194 : pattern311 (rtx x1)
    1190              : {
    1191         1194 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1192         1194 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1193         1194 :   int res ATTRIBUTE_UNUSED;
    1194         1194 :   x2 = XEXP (x1, 2);
    1195         1194 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1196              :     return -1;
    1197         1170 :   x3 = XEXP (x1, 0);
    1198         1170 :   x4 = XEXP (x3, 0);
    1199         1170 :   x5 = XEXP (x4, 0);
    1200         1170 :   operands[1] = x5;
    1201         1170 :   x6 = XEXP (x4, 1);
    1202         1170 :   operands[2] = x6;
    1203         1170 :   x7 = XEXP (x3, 1);
    1204         1170 :   operands[3] = x7;
    1205         1170 :   x8 = XEXP (x3, 2);
    1206         1170 :   operands[4] = x8;
    1207         1170 :   if (!register_operand (operands[4], E_QImode))
    1208              :     return -1;
    1209         1134 :   x9 = XEXP (x1, 1);
    1210         1134 :   if (!rtx_equal_p (x9, operands[1]))
    1211              :     return -1;
    1212         1134 :   switch (GET_MODE (operands[0]))
    1213              :     {
    1214          698 :     case E_V8HFmode:
    1215          698 :       return pattern310 (x1, 
    1216          698 : E_V8HFmode); /* [-1, 0] */
    1217              : 
    1218          218 :     case E_V4SFmode:
    1219          218 :       if (pattern310 (x1, 
    1220              : E_V4SFmode) != 0)
    1221              :         return -1;
    1222              :       return 1;
    1223              : 
    1224          218 :     case E_V2DFmode:
    1225          218 :       if (pattern310 (x1, 
    1226              : E_V2DFmode) != 0)
    1227              :         return -1;
    1228              :       return 2;
    1229              : 
    1230              :     default:
    1231              :       return -1;
    1232              :     }
    1233              : }
    1234              : 
    1235              : int
    1236            0 : pattern321 (rtx x1, machine_mode i1, machine_mode i2)
    1237              : {
    1238            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1239            0 :   rtx x2, x3;
    1240            0 :   int res ATTRIBUTE_UNUSED;
    1241            0 :   if (!register_operand (operands[0], i1)
    1242            0 :       || GET_MODE (x1) != i1
    1243            0 :       || !vector_all_ones_operand (operands[1], i1)
    1244            0 :       || !const0_operand (operands[2], i1))
    1245            0 :     return -1;
    1246            0 :   x2 = XEXP (x1, 2);
    1247            0 :   if (GET_MODE (x2) != i2)
    1248              :     return -1;
    1249            0 :   x3 = XEXP (x2, 0);
    1250            0 :   if (GET_MODE (x3) != i2
    1251            0 :       || !nonimmediate_operand (operands[3], i1)
    1252            0 :       || !nonimmediate_operand (operands[4], i1)
    1253            0 :       || !const_0_to_7_operand (operands[5], E_SImode))
    1254            0 :     return -1;
    1255              :   return 0;
    1256              : }
    1257              : 
    1258              : int
    1259          470 : pattern329 (rtx x1)
    1260              : {
    1261          470 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1262          470 :   rtx x2;
    1263          470 :   int res ATTRIBUTE_UNUSED;
    1264          470 :   x2 = XVECEXP (x1, 0, 0);
    1265          470 :   operands[1] = x2;
    1266          470 :   switch (GET_MODE (operands[0]))
    1267              :     {
    1268          228 :     case E_V16QImode:
    1269          228 :       if (!register_operand (operands[0], E_V16QImode)
    1270          224 :           || GET_MODE (x1) != E_V16QImode
    1271          452 :           || !nonimmediate_operand (operands[1], E_V16HFmode))
    1272            8 :         return -1;
    1273              :       return 0;
    1274              : 
    1275          234 :     case E_V32QImode:
    1276          234 :       if (!register_operand (operands[0], E_V32QImode)
    1277          226 :           || GET_MODE (x1) != E_V32QImode
    1278          460 :           || !nonimmediate_operand (operands[1], E_V32HFmode))
    1279           12 :         return -1;
    1280              :       return 1;
    1281              : 
    1282              :     default:
    1283              :       return -1;
    1284              :     }
    1285              : }
    1286              : 
    1287              : int
    1288         1629 : pattern333 (rtx x1, rtx_code i1)
    1289              : {
    1290         1629 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1291         1629 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1292         1629 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    1293         1629 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    1294         1629 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    1295         1629 :   rtx x34, x35, x36, x37, x38, x39;
    1296         1629 :   int res ATTRIBUTE_UNUSED;
    1297         1629 :   x2 = XEXP (x1, 0);
    1298         1629 :   x3 = XEXP (x2, 0);
    1299         1629 :   x4 = XEXP (x3, 0);
    1300         1629 :   if (GET_CODE (x4) != VEC_SELECT)
    1301              :     return -1;
    1302         1094 :   x5 = XEXP (x4, 1);
    1303         1094 :   if (GET_CODE (x5) != PARALLEL
    1304         1094 :       || XVECLEN (x5, 0) != 1)
    1305              :     return -1;
    1306         1094 :   x6 = XVECEXP (x5, 0, 0);
    1307         1094 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1308              :     return -1;
    1309         1094 :   x7 = XEXP (x3, 1);
    1310         1094 :   if (GET_CODE (x7) != VEC_SELECT)
    1311              :     return -1;
    1312         1094 :   x8 = XEXP (x7, 1);
    1313         1094 :   if (GET_CODE (x8) != PARALLEL
    1314         1094 :       || XVECLEN (x8, 0) != 1)
    1315              :     return -1;
    1316         1094 :   x9 = XVECEXP (x8, 0, 0);
    1317         1094 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1318              :     return -1;
    1319         1094 :   x10 = XEXP (x2, 1);
    1320         1094 :   if (GET_CODE (x10) != i1)
    1321              :     return -1;
    1322         1068 :   x11 = XEXP (x10, 0);
    1323         1068 :   if (GET_CODE (x11) != VEC_SELECT)
    1324              :     return -1;
    1325         1068 :   x12 = XEXP (x11, 1);
    1326         1068 :   if (GET_CODE (x12) != PARALLEL
    1327         1068 :       || XVECLEN (x12, 0) != 1)
    1328              :     return -1;
    1329         1068 :   x13 = XVECEXP (x12, 0, 0);
    1330         1068 :   if (GET_CODE (x13) != CONST_INT)
    1331              :     return -1;
    1332         1068 :   x14 = XEXP (x10, 1);
    1333         1068 :   if (GET_CODE (x14) != VEC_SELECT)
    1334              :     return -1;
    1335         1068 :   x15 = XEXP (x14, 1);
    1336         1068 :   if (GET_CODE (x15) != PARALLEL
    1337         1068 :       || XVECLEN (x15, 0) != 1)
    1338              :     return -1;
    1339         1068 :   x16 = XVECEXP (x15, 0, 0);
    1340         1068 :   if (GET_CODE (x16) != CONST_INT)
    1341              :     return -1;
    1342         1068 :   x17 = XEXP (x1, 1);
    1343         1068 :   if (GET_CODE (x17) != VEC_CONCAT)
    1344              :     return -1;
    1345         1068 :   x18 = XEXP (x17, 0);
    1346         1068 :   if (GET_CODE (x18) != i1)
    1347              :     return -1;
    1348         1068 :   x19 = XEXP (x18, 0);
    1349         1068 :   if (GET_CODE (x19) != VEC_SELECT)
    1350              :     return -1;
    1351         1068 :   x20 = XEXP (x19, 1);
    1352         1068 :   if (GET_CODE (x20) != PARALLEL
    1353         1068 :       || XVECLEN (x20, 0) != 1)
    1354              :     return -1;
    1355         1068 :   x21 = XVECEXP (x20, 0, 0);
    1356         1068 :   if (GET_CODE (x21) != CONST_INT)
    1357              :     return -1;
    1358         1068 :   x22 = XEXP (x18, 1);
    1359         1068 :   if (GET_CODE (x22) != VEC_SELECT)
    1360              :     return -1;
    1361         1068 :   x23 = XEXP (x22, 1);
    1362         1068 :   if (GET_CODE (x23) != PARALLEL
    1363         1068 :       || XVECLEN (x23, 0) != 1)
    1364              :     return -1;
    1365         1068 :   x24 = XVECEXP (x23, 0, 0);
    1366         1068 :   if (GET_CODE (x24) != CONST_INT)
    1367              :     return -1;
    1368         1068 :   x25 = XEXP (x17, 1);
    1369         1068 :   if (GET_CODE (x25) != i1)
    1370              :     return -1;
    1371         1068 :   x26 = XEXP (x25, 0);
    1372         1068 :   if (GET_CODE (x26) != VEC_SELECT)
    1373              :     return -1;
    1374         1068 :   x27 = XEXP (x26, 1);
    1375         1068 :   if (GET_CODE (x27) != PARALLEL
    1376         1068 :       || XVECLEN (x27, 0) != 1)
    1377              :     return -1;
    1378         1068 :   x28 = XVECEXP (x27, 0, 0);
    1379         1068 :   if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1380              :     return -1;
    1381         1068 :   x29 = XEXP (x25, 1);
    1382         1068 :   if (GET_CODE (x29) != VEC_SELECT)
    1383              :     return -1;
    1384         1068 :   x30 = XEXP (x29, 1);
    1385         1068 :   if (GET_CODE (x30) != PARALLEL
    1386         1068 :       || XVECLEN (x30, 0) != 1)
    1387              :     return -1;
    1388         1068 :   x31 = XVECEXP (x30, 0, 0);
    1389         1068 :   if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    1390              :     return -1;
    1391         1068 :   x32 = XEXP (x4, 0);
    1392         1068 :   operands[1] = x32;
    1393         1068 :   x33 = XEXP (x7, 0);
    1394         1068 :   if (!rtx_equal_p (x33, operands[1]))
    1395              :     return -1;
    1396         1068 :   switch (XWINT (x13, 0))
    1397              :     {
    1398          208 :     case 0L:
    1399          208 :       if (XWINT (x16, 0) != 1L
    1400          208 :           || XWINT (x21, 0) != 2L
    1401          208 :           || XWINT (x24, 0) != 3L
    1402          208 :           || !register_operand (operands[0], E_V4DFmode)
    1403          204 :           || GET_MODE (x1) != E_V4DFmode
    1404          204 :           || GET_MODE (x2) != E_V2DFmode
    1405          204 :           || GET_MODE (x3) != E_DFmode
    1406          204 :           || GET_MODE (x4) != E_DFmode
    1407          204 :           || !register_operand (operands[1], E_V4DFmode)
    1408          180 :           || GET_MODE (x7) != E_DFmode
    1409          180 :           || GET_MODE (x10) != E_DFmode
    1410          388 :           || GET_MODE (x11) != E_DFmode)
    1411           28 :         return -1;
    1412          180 :       x34 = XEXP (x11, 0);
    1413          180 :       operands[2] = x34;
    1414          180 :       if (!nonimmediate_operand (operands[2], E_V4DFmode)
    1415          156 :           || GET_MODE (x14) != E_DFmode
    1416          156 :           || GET_MODE (x17) != E_V2DFmode
    1417          156 :           || GET_MODE (x18) != E_DFmode
    1418          156 :           || GET_MODE (x19) != E_DFmode
    1419          156 :           || GET_MODE (x22) != E_DFmode
    1420          156 :           || GET_MODE (x25) != E_DFmode
    1421          156 :           || GET_MODE (x26) != E_DFmode
    1422          336 :           || GET_MODE (x29) != E_DFmode)
    1423              :         return -1;
    1424          156 :       x35 = XEXP (x14, 0);
    1425          156 :       if (!rtx_equal_p (x35, operands[2]))
    1426              :         return -1;
    1427          156 :       x36 = XEXP (x19, 0);
    1428          156 :       if (!rtx_equal_p (x36, operands[1]))
    1429              :         return -1;
    1430          156 :       x37 = XEXP (x22, 0);
    1431          156 :       if (!rtx_equal_p (x37, operands[1]))
    1432              :         return -1;
    1433          156 :       x38 = XEXP (x26, 0);
    1434          156 :       if (!rtx_equal_p (x38, operands[2]))
    1435              :         return -1;
    1436          156 :       x39 = XEXP (x29, 0);
    1437          156 :       if (!rtx_equal_p (x39, operands[2]))
    1438              :         return -1;
    1439              :       return 0;
    1440              : 
    1441          860 :     case 2L:
    1442          860 :       if (XWINT (x16, 0) != 3L
    1443          860 :           || XWINT (x21, 0) != 0L
    1444          860 :           || XWINT (x24, 0) != 1L
    1445          860 :           || !register_operand (operands[0], E_V4SFmode)
    1446          860 :           || GET_MODE (x1) != E_V4SFmode
    1447          860 :           || GET_MODE (x2) != E_V2SFmode
    1448          860 :           || GET_MODE (x3) != E_SFmode
    1449          860 :           || GET_MODE (x4) != E_SFmode
    1450          860 :           || !register_operand (operands[1], E_V4SFmode)
    1451          678 :           || GET_MODE (x7) != E_SFmode
    1452          678 :           || GET_MODE (x10) != E_SFmode
    1453          678 :           || GET_MODE (x11) != E_SFmode
    1454          678 :           || GET_MODE (x14) != E_SFmode
    1455          678 :           || GET_MODE (x17) != E_V2SFmode
    1456          678 :           || GET_MODE (x18) != E_SFmode
    1457         1538 :           || GET_MODE (x19) != E_SFmode)
    1458          182 :         return -1;
    1459          678 :       x36 = XEXP (x19, 0);
    1460          678 :       operands[2] = x36;
    1461          678 :       if (!vector_operand (operands[2], E_V4SFmode)
    1462          678 :           || GET_MODE (x22) != E_SFmode
    1463          678 :           || GET_MODE (x25) != E_SFmode
    1464          678 :           || GET_MODE (x26) != E_SFmode
    1465         1356 :           || GET_MODE (x29) != E_SFmode)
    1466              :         return -1;
    1467          678 :       x34 = XEXP (x11, 0);
    1468          678 :       if (!rtx_equal_p (x34, operands[1]))
    1469              :         return -1;
    1470          678 :       x35 = XEXP (x14, 0);
    1471          678 :       if (!rtx_equal_p (x35, operands[1]))
    1472              :         return -1;
    1473          678 :       x37 = XEXP (x22, 0);
    1474          678 :       if (!rtx_equal_p (x37, operands[2]))
    1475              :         return -1;
    1476          678 :       x38 = XEXP (x26, 0);
    1477          678 :       if (!rtx_equal_p (x38, operands[2]))
    1478              :         return -1;
    1479          678 :       x39 = XEXP (x29, 0);
    1480          678 :       if (!rtx_equal_p (x39, operands[2]))
    1481              :         return -1;
    1482              :       return 1;
    1483              : 
    1484              :     default:
    1485              :       return -1;
    1486              :     }
    1487              : }
    1488              : 
    1489              : int
    1490          193 : pattern381 (rtx x1, machine_mode i1)
    1491              : {
    1492          193 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1493          193 :   rtx x2;
    1494          193 :   int res ATTRIBUTE_UNUSED;
    1495          193 :   if (!register_operand (operands[0], i1)
    1496          193 :       || GET_MODE (x1) != i1)
    1497              :     return -1;
    1498          193 :   x2 = XEXP (x1, 0);
    1499          193 :   if (GET_MODE (x2) != i1
    1500          193 :       || !general_operand (operands[1], i1))
    1501           10 :     return -1;
    1502              :   return 0;
    1503              : }
    1504              : 
    1505              : int
    1506       191686 : pattern385 (rtx x1)
    1507              : {
    1508       191686 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1509       191686 :   rtx x2, x3, x4;
    1510       191686 :   int res ATTRIBUTE_UNUSED;
    1511       191686 :   x2 = XVECEXP (x1, 0, 1);
    1512       191686 :   if (GET_CODE (x2) != CLOBBER)
    1513              :     return -1;
    1514       172298 :   x3 = XEXP (x2, 0);
    1515       172298 :   if (GET_CODE (x3) != REG
    1516       172298 :       || REGNO (x3) != 17
    1517       344596 :       || GET_MODE (x3) != E_CCmode)
    1518              :     return -1;
    1519       172298 :   x4 = XVECEXP (x1, 0, 0);
    1520       172298 :   return pattern384 (x4); /* [-1, 1] */
    1521              : }
    1522              : 
    1523              : int
    1524         3975 : pattern391 (rtx x1)
    1525              : {
    1526         3975 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1527         3975 :   int res ATTRIBUTE_UNUSED;
    1528         3975 :   switch (GET_MODE (operands[0]))
    1529              :     {
    1530          105 :     case E_SFmode:
    1531          105 :       if (!register_operand (operands[0], E_SFmode)
    1532          105 :           || GET_MODE (x1) != E_SFmode)
    1533              :         return -1;
    1534              :       return 0;
    1535              : 
    1536         1509 :     case E_DFmode:
    1537         1509 :       if (!register_operand (operands[0], E_DFmode)
    1538         1509 :           || GET_MODE (x1) != E_DFmode)
    1539              :         return -1;
    1540              :       return 1;
    1541              : 
    1542         2361 :     case E_XFmode:
    1543         2361 :       if (!register_operand (operands[0], E_XFmode)
    1544         2361 :           || GET_MODE (x1) != E_XFmode)
    1545              :         return -1;
    1546              :       return 2;
    1547              : 
    1548              :     default:
    1549              :       return -1;
    1550              :     }
    1551              : }
    1552              : 
    1553              : int
    1554          168 : pattern400 ()
    1555              : {
    1556          168 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1557          168 :   int res ATTRIBUTE_UNUSED;
    1558          168 :   switch (GET_MODE (operands[0]))
    1559              :     {
    1560           84 :     case E_SImode:
    1561           84 :       if (!register_operand (operands[0], E_SImode)
    1562           84 :           || !memory_operand (operands[1], E_SImode))
    1563            0 :         return -1;
    1564              :       return 0;
    1565              : 
    1566           84 :     case E_DImode:
    1567           84 :       if (!register_operand (operands[0], E_DImode)
    1568           84 :           || !memory_operand (operands[1], E_DImode))
    1569            0 :         return -1;
    1570              :       return 1;
    1571              : 
    1572              :     default:
    1573              :       return -1;
    1574              :     }
    1575              : }
    1576              : 
    1577              : int
    1578        29114 : pattern409 (rtx x1)
    1579              : {
    1580        29114 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1581        29114 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1582        29114 :   int res ATTRIBUTE_UNUSED;
    1583        29114 :   x2 = XVECEXP (x1, 0, 1);
    1584        29114 :   if (GET_CODE (x2) != CLOBBER)
    1585              :     return -1;
    1586        29114 :   x3 = XEXP (x2, 0);
    1587        29114 :   if (GET_CODE (x3) != REG
    1588        29114 :       || REGNO (x3) != 17
    1589        55258 :       || GET_MODE (x3) != E_CCmode)
    1590              :     return -1;
    1591        26144 :   x4 = XVECEXP (x1, 0, 0);
    1592        26144 :   x5 = XEXP (x4, 1);
    1593        26144 :   x6 = XEXP (x5, 1);
    1594        26144 :   switch (GET_CODE (x6))
    1595              :     {
    1596           63 :     case AND:
    1597           63 :       if (GET_MODE (x6) != E_QImode)
    1598              :         return -1;
    1599           63 :       x7 = XEXP (x4, 0);
    1600           63 :       operands[0] = x7;
    1601           63 :       x8 = XEXP (x5, 0);
    1602           63 :       operands[1] = x8;
    1603           63 :       return pattern209 (x5); /* [-1, 3] */
    1604              : 
    1605           19 :     case PLUS:
    1606           19 :       if (GET_MODE (x6) != E_QImode)
    1607              :         return -1;
    1608           19 :       x7 = XEXP (x4, 0);
    1609           19 :       operands[0] = x7;
    1610           19 :       x8 = XEXP (x5, 0);
    1611           19 :       operands[1] = x8;
    1612           19 :       res = pattern210 (x5);
    1613           19 :       if (res >= 0)
    1614            8 :         return res + 4; /* [4, 7] */
    1615              :       return -1;
    1616              : 
    1617            7 :     case MINUS:
    1618            7 :       if (GET_MODE (x6) != E_QImode)
    1619              :         return -1;
    1620            7 :       x7 = XEXP (x4, 0);
    1621            7 :       operands[0] = x7;
    1622            7 :       x8 = XEXP (x5, 0);
    1623            7 :       operands[1] = x8;
    1624            7 :       res = pattern211 (x5);
    1625            7 :       if (res >= 0)
    1626            5 :         return res + 8; /* [8, 11] */
    1627              :       return -1;
    1628              : 
    1629              :     case CONST_INT:
    1630              :     case CONST_WIDE_INT:
    1631              :     case CONST_POLY_INT:
    1632              :     case CONST_FIXED:
    1633              :     case CONST_DOUBLE:
    1634              :     case CONST_VECTOR:
    1635              :     case CONST:
    1636              :     case REG:
    1637              :     case SUBREG:
    1638              :     case LABEL_REF:
    1639              :     case SYMBOL_REF:
    1640              :     case HIGH:
    1641              :       return 12;
    1642              : 
    1643              :     default:
    1644              :       return -1;
    1645              :     }
    1646              : }
    1647              : 
    1648              : int
    1649         3696 : pattern426 (rtx x1)
    1650              : {
    1651         3696 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1652         3696 :   rtx x2, x3, x4;
    1653         3696 :   int res ATTRIBUTE_UNUSED;
    1654         3696 :   if (GET_CODE (x1) != ZERO_EXTRACT)
    1655              :     return -1;
    1656         2220 :   x2 = XEXP (x1, 1);
    1657         2220 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    1658              :     return -1;
    1659          370 :   x3 = XEXP (x1, 2);
    1660          370 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    1661              :     return -1;
    1662          370 :   x4 = XEXP (x1, 0);
    1663          370 :   operands[0] = x4;
    1664          370 :   if (!int248_register_operand (operands[0], E_VOIDmode))
    1665              :     return -1;
    1666              :   return 0;
    1667              : }
    1668              : 
    1669              : int
    1670         5828 : pattern432 (rtx x1, machine_mode i1)
    1671              : {
    1672         5828 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1673         5828 :   rtx x2;
    1674         5828 :   int res ATTRIBUTE_UNUSED;
    1675         5828 :   if (!register_operand (operands[0], i1)
    1676         5828 :       || GET_MODE (x1) != i1)
    1677              :     return -1;
    1678         5143 :   x2 = XEXP (x1, 0);
    1679         5143 :   if (GET_MODE (x2) != i1
    1680         5143 :       || !register_no_SP_operand (operands[1], i1)
    1681         4775 :       || !register_operand (operands[2], i1)
    1682         9579 :       || !immediate_operand (operands[3], i1))
    1683         3962 :     return -1;
    1684              :   return 0;
    1685              : }
    1686              : 
    1687              : int
    1688          117 : pattern439 (rtx x1, machine_mode i1)
    1689              : {
    1690          117 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1691          117 :   rtx x2;
    1692          117 :   int res ATTRIBUTE_UNUSED;
    1693          117 :   if (!nonimmediate_operand (operands[0], i1)
    1694          117 :       || GET_MODE (x1) != i1
    1695          234 :       || !general_operand (operands[1], i1))
    1696            0 :     return -1;
    1697          117 :   x2 = XEXP (x1, 1);
    1698          117 :   if (GET_MODE (x2) != i1)
    1699              :     return -1;
    1700              :   return 0;
    1701              : }
    1702              : 
    1703              : int
    1704        54542 : pattern445 (rtx x1)
    1705              : {
    1706        54542 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1707        54542 :   rtx x2, x3, x4;
    1708        54542 :   int res ATTRIBUTE_UNUSED;
    1709        54542 :   x2 = XEXP (x1, 0);
    1710        54542 :   x3 = XEXP (x2, 0);
    1711        54542 :   operands[1] = x3;
    1712        54542 :   if (!nonimmediate_operand (operands[1], E_SImode))
    1713              :     return -1;
    1714        17970 :   x4 = XEXP (x1, 1);
    1715        17970 :   switch (GET_CODE (x4))
    1716              :     {
    1717              :     case CONST_INT:
    1718              :     case CONST_WIDE_INT:
    1719              :     case CONST:
    1720              :     case LABEL_REF:
    1721              :     case SYMBOL_REF:
    1722              :       return 0;
    1723              : 
    1724            0 :     case ASHIFT:
    1725            0 :       if (GET_MODE (x4) != E_DImode
    1726            0 :           || !nonimmediate_operand (operands[0], E_DImode))
    1727            0 :         return -1;
    1728            0 :       res = pattern39 (x4, 
    1729              : E_DImode, 
    1730              : E_SImode);
    1731            0 :       if (res >= 0)
    1732            0 :         return res + 1; /* [1, 3] */
    1733              :       return -1;
    1734              : 
    1735              :     default:
    1736              :       return -1;
    1737              :     }
    1738              : }
    1739              : 
    1740              : int
    1741         7122 : pattern456 (rtx x1, int *pnum_clobbers)
    1742              : {
    1743         7122 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1744         7122 :   rtx x2, x3, x4, x5;
    1745         7122 :   int res ATTRIBUTE_UNUSED;
    1746         7122 :   if (pnum_clobbers == NULL)
    1747              :     return -1;
    1748         7120 :   x2 = XEXP (x1, 1);
    1749         7120 :   if (maybe_ne (SUBREG_BYTE (x2), 0)
    1750         7120 :       || GET_MODE (x2) != E_QImode)
    1751              :     return -1;
    1752         6796 :   x3 = XEXP (x2, 0);
    1753         6796 :   switch (GET_CODE (x3))
    1754              :     {
    1755         1474 :     case AND:
    1756         1474 :       return pattern455 (x1); /* [-1, 1] */
    1757              : 
    1758            0 :     case PLUS:
    1759            0 :       x4 = XEXP (x3, 0);
    1760            0 :       operands[2] = x4;
    1761            0 :       if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    1762              :         return -1;
    1763            0 :       res = pattern454 (x1);
    1764            0 :       if (res >= 0)
    1765            0 :         return res + 2; /* [2, 3] */
    1766              :       return -1;
    1767              : 
    1768            0 :     case MINUS:
    1769            0 :       x4 = XEXP (x3, 0);
    1770            0 :       operands[3] = x4;
    1771            0 :       if (!const_int_operand (operands[3], E_VOIDmode))
    1772              :         return -1;
    1773            0 :       x5 = XEXP (x3, 1);
    1774            0 :       operands[2] = x5;
    1775            0 :       if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    1776              :         return -1;
    1777            0 :       res = pattern14 (x1);
    1778            0 :       if (res >= 0)
    1779            0 :         return res + 4; /* [4, 5] */
    1780              :       return -1;
    1781              : 
    1782              :     default:
    1783              :       return -1;
    1784              :     }
    1785              : }
    1786              : 
    1787              : int
    1788         2956 : pattern469 (rtx x1)
    1789              : {
    1790         2956 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1791         2956 :   rtx x2, x3, x4, x5, x6;
    1792         2956 :   int res ATTRIBUTE_UNUSED;
    1793         2956 :   x2 = XEXP (x1, 0);
    1794         2956 :   x3 = XVECEXP (x2, 0, 0);
    1795         2956 :   operands[1] = x3;
    1796         2956 :   x4 = XVECEXP (x2, 0, 1);
    1797         2956 :   operands[2] = x4;
    1798         2956 :   x5 = XEXP (x1, 1);
    1799         2956 :   operands[3] = x5;
    1800         2956 :   x6 = XEXP (x1, 2);
    1801         2956 :   operands[4] = x6;
    1802         2956 :   switch (GET_MODE (operands[0]))
    1803              :     {
    1804         1008 :     case E_V64QImode:
    1805         1008 :       return pattern468 (x1, 
    1806              : E_DImode, 
    1807              : E_V64QImode, 
    1808         1008 : E_V32HFmode); /* [-1, 0] */
    1809              : 
    1810          992 :     case E_V32QImode:
    1811          992 :       if (pattern468 (x1, 
    1812              : E_SImode, 
    1813              : E_V32QImode, 
    1814              : E_V16HFmode) != 0)
    1815              :         return -1;
    1816              :       return 1;
    1817              : 
    1818          956 :     case E_V16QImode:
    1819          956 :       if (pattern468 (x1, 
    1820              : E_HImode, 
    1821              : E_V16QImode, 
    1822              : E_V8HFmode) != 0)
    1823              :         return -1;
    1824              :       return 2;
    1825              : 
    1826              :     default:
    1827              :       return -1;
    1828              :     }
    1829              : }
    1830              : 
    1831              : int
    1832          761 : pattern480 (rtx x1, machine_mode i1)
    1833              : {
    1834          761 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1835          761 :   rtx x2;
    1836          761 :   int res ATTRIBUTE_UNUSED;
    1837          761 :   if (!register_operand (operands[0], i1)
    1838          761 :       || GET_MODE (x1) != i1)
    1839              :     return -1;
    1840          711 :   x2 = XEXP (x1, 0);
    1841          711 :   if (GET_MODE (x2) != i1
    1842          711 :       || !register_operand (operands[1], i1)
    1843          711 :       || !register_operand (operands[2], i1)
    1844         1396 :       || !nonimmediate_operand (operands[3], i1))
    1845           26 :     return -1;
    1846              :   return 0;
    1847              : }
    1848              : 
    1849              : int
    1850         5220 : pattern485 (machine_mode i1, machine_mode i2)
    1851              : {
    1852         5220 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1853         5220 :   int res ATTRIBUTE_UNUSED;
    1854         5220 :   if (!register_operand (operands[2], i1)
    1855         5197 :       || !nonimmediate_operand (operands[3], i1)
    1856         5179 :       || !const0_operand (operands[4], i1)
    1857        10399 :       || !register_operand (operands[5], i2))
    1858          293 :     return -1;
    1859              :   return 0;
    1860              : }
    1861              : 
    1862              : int
    1863         7736 : pattern490 (rtx x1)
    1864              : {
    1865         7736 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1866         7736 :   rtx x2, x3, x4, x5, x6, x7;
    1867         7736 :   int res ATTRIBUTE_UNUSED;
    1868         7736 :   x2 = XEXP (x1, 0);
    1869         7736 :   x3 = XVECEXP (x2, 0, 0);
    1870         7736 :   operands[1] = x3;
    1871         7736 :   x4 = XVECEXP (x2, 0, 1);
    1872         7736 :   operands[2] = x4;
    1873         7736 :   x5 = XVECEXP (x2, 0, 2);
    1874         7736 :   operands[3] = x5;
    1875         7736 :   x6 = XEXP (x1, 2);
    1876         7736 :   operands[4] = x6;
    1877         7736 :   x7 = XEXP (x1, 1);
    1878         7736 :   switch (GET_CODE (x7))
    1879              :     {
    1880         3796 :     case REG:
    1881         3796 :     case SUBREG:
    1882         3796 :       if (!rtx_equal_p (x7, operands[1]))
    1883              :         return -1;
    1884         3796 :       switch (GET_MODE (operands[0]))
    1885              :         {
    1886         1288 :         case E_V16SImode:
    1887         1288 :           return pattern484 (x1, 
    1888              : E_V16SImode, 
    1889         1288 : E_HImode); /* [-1, 0] */
    1890              : 
    1891         1284 :         case E_V8SImode:
    1892         1284 :           if (pattern484 (x1, 
    1893              : E_V8SImode, 
    1894              : E_QImode) != 0)
    1895              :             return -1;
    1896              :           return 1;
    1897              : 
    1898         1224 :         case E_V4SImode:
    1899         1224 :           if (pattern484 (x1, 
    1900              : E_V4SImode, 
    1901              : E_QImode) != 0)
    1902              :             return -1;
    1903              :           return 2;
    1904              : 
    1905              :         default:
    1906              :           return -1;
    1907              :         }
    1908              : 
    1909         3880 :     case CONST_INT:
    1910         3880 :     case CONST_DOUBLE:
    1911         3880 :     case CONST_VECTOR:
    1912         3880 :       operands[5] = x7;
    1913         3880 :       switch (GET_MODE (operands[0]))
    1914              :         {
    1915         1324 :         case E_V16SImode:
    1916         1324 :           if (pattern489 (x1, 
    1917              : E_V16SImode, 
    1918              : E_HImode) != 0)
    1919              :             return -1;
    1920              :           return 3;
    1921              : 
    1922         1320 :         case E_V8SImode:
    1923         1320 :           if (pattern489 (x1, 
    1924              : E_V8SImode, 
    1925              : E_QImode) != 0)
    1926              :             return -1;
    1927              :           return 4;
    1928              : 
    1929         1236 :         case E_V4SImode:
    1930         1236 :           if (pattern489 (x1, 
    1931              : E_V4SImode, 
    1932              : E_QImode) != 0)
    1933              :             return -1;
    1934              :           return 5;
    1935              : 
    1936              :         default:
    1937              :           return -1;
    1938              :         }
    1939              : 
    1940              :     default:
    1941              :       return -1;
    1942              :     }
    1943              : }
    1944              : 
    1945              : int
    1946          971 : pattern502 (rtx x1, machine_mode i1)
    1947              : {
    1948          971 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1949          971 :   rtx x2, x3, x4, x5, x6, x7;
    1950          971 :   int res ATTRIBUTE_UNUSED;
    1951          971 :   x2 = XEXP (x1, 0);
    1952          971 :   x3 = XEXP (x2, 1);
    1953          971 :   x4 = XEXP (x3, 1);
    1954          971 :   x5 = XVECEXP (x4, 0, 0);
    1955          971 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1956              :     return -1;
    1957          971 :   x6 = XVECEXP (x4, 0, 1);
    1958          971 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1959              :     return -1;
    1960          971 :   switch (GET_MODE (operands[0]))
    1961              :     {
    1962          495 :     case E_V8HFmode:
    1963          495 :       if (!register_operand (operands[0], E_V8HFmode)
    1964          483 :           || GET_MODE (x1) != E_V8HFmode
    1965          978 :           || GET_MODE (x2) != E_V2HFmode)
    1966              :         return -1;
    1967          483 :       x7 = XEXP (x2, 0);
    1968          483 :       if (GET_MODE (x7) != E_V2HFmode
    1969          483 :           || !vector_operand (operands[1], i1)
    1970          483 :           || GET_MODE (x3) != E_V2HFmode
    1971          483 :           || !nonimm_or_0_operand (operands[2], E_V8HFmode)
    1972          963 :           || !const0_operand (operands[4], E_V6HFmode))
    1973            3 :         return -1;
    1974              :       return 0;
    1975              : 
    1976          476 :     case E_V4SFmode:
    1977          476 :       if (pattern501 (x1, 
    1978              : E_V2SFmode, 
    1979              : E_V4SFmode, 
    1980              : i1) != 0)
    1981              :         return -1;
    1982              :       return 1;
    1983              : 
    1984              :     default:
    1985              :       return -1;
    1986              :     }
    1987              : }
    1988              : 
    1989              : int
    1990         1746 : pattern510 ()
    1991              : {
    1992         1746 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1993         1746 :   int res ATTRIBUTE_UNUSED;
    1994         1746 :   switch (GET_MODE (operands[1]))
    1995              :     {
    1996          576 :     case E_V8HImode:
    1997          576 :       if (!register_operand (operands[1], E_V8HImode))
    1998              :         return -1;
    1999              :       return 0;
    2000              : 
    2001          588 :     case E_V8SImode:
    2002          588 :       if (!register_operand (operands[1], E_V8SImode))
    2003              :         return -1;
    2004              :       return 1;
    2005              : 
    2006          582 :     case E_V8DImode:
    2007          582 :       if (!register_operand (operands[1], E_V8DImode))
    2008              :         return -1;
    2009              :       return 2;
    2010              : 
    2011              :     default:
    2012              :       return -1;
    2013              :     }
    2014              : }
    2015              : 
    2016              : int
    2017          755 : pattern515 (machine_mode i1)
    2018              : {
    2019          755 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2020          755 :   int res ATTRIBUTE_UNUSED;
    2021          755 :   if (!const0_operand (operands[2], i1))
    2022              :     return -1;
    2023          753 :   switch (GET_MODE (operands[1]))
    2024              :     {
    2025          357 :     case E_V4DImode:
    2026          357 :       if (!register_operand (operands[1], E_V4DImode))
    2027              :         return -1;
    2028              :       return 0;
    2029              : 
    2030          396 :     case E_V4SImode:
    2031          396 :       if (!register_operand (operands[1], E_V4SImode))
    2032              :         return -1;
    2033              :       return 1;
    2034              : 
    2035              :     default:
    2036              :       return -1;
    2037              :     }
    2038              : }
    2039              : 
    2040              : int
    2041         1458 : pattern521 (rtx x1)
    2042              : {
    2043         1458 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2044         1458 :   int res ATTRIBUTE_UNUSED;
    2045         1458 :   if (!register_operand (operands[0], E_V2DFmode)
    2046         1458 :       || GET_MODE (x1) != E_V2DFmode)
    2047              :     return -1;
    2048         1283 :   switch (GET_MODE (operands[1]))
    2049              :     {
    2050         1075 :     case E_V2SImode:
    2051         1075 :       if (!nonimmediate_operand (operands[1], E_V2SImode))
    2052              :         return -1;
    2053              :       return 0;
    2054              : 
    2055          200 :     case E_V2DImode:
    2056          200 :       if (!nonimmediate_operand (operands[1], E_V2DImode))
    2057              :         return -1;
    2058              :       return 1;
    2059              : 
    2060              :     default:
    2061              :       return -1;
    2062              :     }
    2063              : }
    2064              : 
    2065              : int
    2066            6 : pattern526 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2067              : {
    2068            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2069            6 :   rtx x2, x3;
    2070            6 :   int res ATTRIBUTE_UNUSED;
    2071            6 :   if (!nonimmediate_operand (operands[0], i3)
    2072            6 :       || GET_MODE (x1) != i3)
    2073              :     return -1;
    2074            6 :   x2 = XEXP (x1, 0);
    2075            6 :   if (GET_MODE (x2) != i2)
    2076              :     return -1;
    2077            6 :   x3 = XEXP (x2, 0);
    2078            6 :   if (GET_MODE (x3) != i1
    2079            6 :       || !register_operand (operands[1], i1)
    2080           12 :       || !permvar_truncate_operand (operands[2], i1))
    2081            2 :     return -1;
    2082              :   return 0;
    2083              : }
    2084              : 
    2085              : int
    2086        17280 : pattern534 (rtx x1, machine_mode i1)
    2087              : {
    2088        17280 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2089        17280 :   rtx x2, x3;
    2090        17280 :   int res ATTRIBUTE_UNUSED;
    2091        17280 :   if (!register_operand (operands[0], i1)
    2092        17280 :       || GET_MODE (x1) != i1)
    2093              :     return -1;
    2094        17271 :   x2 = XEXP (x1, 0);
    2095        17271 :   if (GET_MODE (x2) != i1
    2096        17271 :       || !regmem_or_bitnot_regmem_operand (operands[1], i1)
    2097        34495 :       || !regmem_or_bitnot_regmem_operand (operands[2], i1))
    2098           65 :     return -1;
    2099        17206 :   x3 = XEXP (x1, 1);
    2100        17206 :   if (GET_MODE (x3) != i1
    2101        17206 :       || !regmem_or_bitnot_regmem_operand (operands[3], i1)
    2102        34412 :       || !regmem_or_bitnot_regmem_operand (operands[4], i1))
    2103           12 :     return -1;
    2104              :   return 0;
    2105              : }
    2106              : 
    2107              : int
    2108       128203 : pattern539 (rtx x1)
    2109              : {
    2110       128203 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2111       128203 :   rtx x2, x3, x4, x5, x6, x7;
    2112       128203 :   int res ATTRIBUTE_UNUSED;
    2113       128203 :   x2 = XEXP (x1, 0);
    2114       128203 :   x3 = XEXP (x2, 0);
    2115       128203 :   x4 = XEXP (x3, 0);
    2116       128203 :   operands[1] = x4;
    2117       128203 :   x5 = XEXP (x3, 1);
    2118       128203 :   operands[2] = x5;
    2119       128203 :   x6 = XEXP (x2, 1);
    2120       128203 :   operands[3] = x6;
    2121       128203 :   x7 = XEXP (x1, 1);
    2122       128203 :   operands[4] = x7;
    2123       128203 :   switch (GET_MODE (operands[0]))
    2124              :     {
    2125            0 :     case E_V64QImode:
    2126            0 :       return pattern538 (x1, 
    2127            0 : E_V64QImode); /* [-1, 0] */
    2128              : 
    2129          224 :     case E_V32QImode:
    2130          224 :       if (pattern538 (x1, 
    2131              : E_V32QImode) != 0)
    2132              :         return -1;
    2133              :       return 1;
    2134              : 
    2135          886 :     case E_V16QImode:
    2136          886 :       if (pattern538 (x1, 
    2137              : E_V16QImode) != 0)
    2138              :         return -1;
    2139              :       return 2;
    2140              : 
    2141            0 :     case E_V32HImode:
    2142            0 :       if (pattern538 (x1, 
    2143              : E_V32HImode) != 0)
    2144              :         return -1;
    2145              :       return 3;
    2146              : 
    2147           12 :     case E_V16HImode:
    2148           12 :       if (pattern538 (x1, 
    2149              : E_V16HImode) != 0)
    2150              :         return -1;
    2151              :       return 4;
    2152              : 
    2153          809 :     case E_V8HImode:
    2154          809 :       if (pattern538 (x1, 
    2155              : E_V8HImode) != 0)
    2156              :         return -1;
    2157              :       return 5;
    2158              : 
    2159          125 :     case E_V16SImode:
    2160          125 :       if (pattern538 (x1, 
    2161              : E_V16SImode) != 0)
    2162              :         return -1;
    2163              :       return 6;
    2164              : 
    2165         1402 :     case E_V8SImode:
    2166         1402 :       if (pattern538 (x1, 
    2167              : E_V8SImode) != 0)
    2168              :         return -1;
    2169              :       return 7;
    2170              : 
    2171         5999 :     case E_V4SImode:
    2172         5999 :       if (pattern538 (x1, 
    2173              : E_V4SImode) != 0)
    2174              :         return -1;
    2175              :       return 8;
    2176              : 
    2177            0 :     case E_V8DImode:
    2178            0 :       if (pattern538 (x1, 
    2179              : E_V8DImode) != 0)
    2180              :         return -1;
    2181              :       return 9;
    2182              : 
    2183           14 :     case E_V4DImode:
    2184           14 :       if (pattern538 (x1, 
    2185              : E_V4DImode) != 0)
    2186              :         return -1;
    2187              :       return 10;
    2188              : 
    2189         1434 :     case E_V2DImode:
    2190         1434 :       if (pattern538 (x1, 
    2191              : E_V2DImode) != 0)
    2192              :         return -1;
    2193              :       return 11;
    2194              : 
    2195              :     default:
    2196              :       return -1;
    2197              :     }
    2198              : }
    2199              : 
    2200              : int
    2201        12281 : pattern546 (rtx x1, machine_mode i1)
    2202              : {
    2203        12281 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2204        12281 :   rtx x2;
    2205        12281 :   int res ATTRIBUTE_UNUSED;
    2206        12281 :   if (!register_operand (operands[0], i1)
    2207        12281 :       || GET_MODE (x1) != i1)
    2208              :     return -1;
    2209        11956 :   x2 = XEXP (x1, 0);
    2210        11956 :   switch (GET_MODE (x2))
    2211              :     {
    2212          551 :     case E_V4QImode:
    2213          551 :       if (!register_operand (operands[1], E_V16QImode))
    2214              :         return -1;
    2215              :       return 0;
    2216              : 
    2217        10476 :     case E_V4HImode:
    2218        10476 :       if (!register_operand (operands[1], E_V8HImode))
    2219              :         return -1;
    2220              :       return 1;
    2221              : 
    2222              :     default:
    2223              :       return -1;
    2224              :     }
    2225              : }
    2226              : 
    2227              : int
    2228           55 : pattern550 (rtx x1)
    2229              : {
    2230           55 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2231           55 :   rtx x2, x3, x4, x5;
    2232           55 :   int res ATTRIBUTE_UNUSED;
    2233           55 :   x2 = XVECEXP (x1, 0, 1);
    2234           55 :   x3 = XVECEXP (x2, 0, 0);
    2235           55 :   operands[2] = x3;
    2236           55 :   switch (GET_MODE (operands[0]))
    2237              :     {
    2238           28 :     case E_SImode:
    2239           28 :       x4 = XVECEXP (x1, 0, 0);
    2240           28 :       x5 = XEXP (x4, 1);
    2241           28 :       return pattern549 (x5, 
    2242           28 : E_SImode); /* [-1, 0] */
    2243              : 
    2244           27 :     case E_DImode:
    2245           27 :       x4 = XVECEXP (x1, 0, 0);
    2246           27 :       x5 = XEXP (x4, 1);
    2247           27 :       if (pattern549 (x5, 
    2248              : E_DImode) != 0)
    2249              :         return -1;
    2250              :       return 1;
    2251              : 
    2252              :     default:
    2253              :       return -1;
    2254              :     }
    2255              : }
    2256              : 
    2257              : int
    2258         1174 : pattern557 (rtx x1)
    2259              : {
    2260         1174 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2261         1174 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2262         1174 :   int res ATTRIBUTE_UNUSED;
    2263         1174 :   x2 = XVECEXP (x1, 0, 0);
    2264         1174 :   x3 = XEXP (x2, 1);
    2265         1174 :   if (GET_MODE (x3) != E_V2SFmode)
    2266              :     return -1;
    2267          140 :   x4 = XVECEXP (x1, 0, 1);
    2268          140 :   if (GET_CODE (x4) != UNSPEC
    2269          140 :       || XVECLEN (x4, 0) != 1
    2270          140 :       || XINT (x4, 1) != 111)
    2271              :     return -1;
    2272          140 :   x5 = XVECEXP (x4, 0, 0);
    2273          140 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2274              :     return -1;
    2275          140 :   x6 = XEXP (x2, 0);
    2276          140 :   operands[0] = x6;
    2277          140 :   if (!register_operand (operands[0], E_V2SFmode))
    2278              :     return -1;
    2279          140 :   x7 = XVECEXP (x3, 0, 0);
    2280          140 :   operands[1] = x7;
    2281          140 :   if (!register_operand (operands[1], E_V2SFmode))
    2282              :     return -1;
    2283          126 :   x8 = XVECEXP (x3, 0, 1);
    2284          126 :   operands[2] = x8;
    2285          126 :   if (!nonimmediate_operand (operands[2], E_V2SFmode))
    2286              :     return -1;
    2287              :   return 0;
    2288              : }
    2289              : 
    2290              : int
    2291       304829 : pattern565 (rtx x1, machine_mode i1, machine_mode i2)
    2292              : {
    2293       304829 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2294       304829 :   rtx x2, x3;
    2295       304829 :   int res ATTRIBUTE_UNUSED;
    2296       304829 :   x2 = XEXP (x1, 0);
    2297       304829 :   if (GET_MODE (x2) != i2
    2298       304829 :       || !register_operand (operands[1], i1))
    2299        12730 :     return -1;
    2300       292099 :   x3 = XEXP (x1, 1);
    2301       292099 :   if (GET_MODE (x3) != i2
    2302       292099 :       || !nonimmediate_operand (operands[2], i1))
    2303          971 :     return -1;
    2304              :   return 0;
    2305              : }
    2306              : 
    2307              : int
    2308         3757 : pattern571 (rtx x1, machine_mode i1)
    2309              : {
    2310         3757 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2311         3757 :   int res ATTRIBUTE_UNUSED;
    2312         3757 :   if (!nonimmediate_operand (operands[0], i1)
    2313         3757 :       || GET_MODE (x1) != i1
    2314         3757 :       || !nonimmediate_operand (operands[1], i1)
    2315         7511 :       || !nonimmediate_or_x86_64_const_vector_operand (operands[2], i1))
    2316            3 :     return -1;
    2317              :   return 0;
    2318              : }
    2319              : 
    2320              : int
    2321        51793 : pattern576 (rtx x1)
    2322              : {
    2323        51793 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2324        51793 :   rtx x2, x3, x4, x5, x6;
    2325        51793 :   int res ATTRIBUTE_UNUSED;
    2326        51793 :   x2 = XVECEXP (x1, 0, 1);
    2327        51793 :   if (GET_CODE (x2) != CLOBBER)
    2328              :     return -1;
    2329        49032 :   x3 = XEXP (x2, 0);
    2330        49032 :   if (GET_CODE (x3) != REG
    2331        49032 :       || REGNO (x3) != 17
    2332        98064 :       || GET_MODE (x3) != E_CCmode)
    2333              :     return -1;
    2334        49032 :   x4 = XVECEXP (x1, 0, 0);
    2335        49032 :   x5 = XEXP (x4, 0);
    2336        49032 :   operands[0] = x5;
    2337        49032 :   if (!register_operand (operands[0], E_DImode))
    2338              :     return -1;
    2339        49030 :   x6 = XEXP (x4, 1);
    2340        49030 :   if (GET_MODE (x6) != E_DImode)
    2341              :     return -1;
    2342              :   return 0;
    2343              : }
    2344              : 
    2345              : int
    2346          119 : pattern583 (rtx x1)
    2347              : {
    2348          119 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2349          119 :   int res ATTRIBUTE_UNUSED;
    2350          119 :   switch (GET_MODE (operands[0]))
    2351              :     {
    2352           24 :     case E_QImode:
    2353           24 :       if (!register_operand (operands[0], E_QImode)
    2354           24 :           || GET_MODE (x1) != E_QImode
    2355           48 :           || !const_int_operand (operands[1], E_QImode))
    2356            0 :         return -1;
    2357              :       return 0;
    2358              : 
    2359            0 :     case E_HImode:
    2360            0 :       if (!register_operand (operands[0], E_HImode)
    2361            0 :           || GET_MODE (x1) != E_HImode
    2362            0 :           || !const_int_operand (operands[1], E_HImode))
    2363            0 :         return -1;
    2364              :       return 1;
    2365              : 
    2366           42 :     case E_SImode:
    2367           42 :       if (!register_operand (operands[0], E_SImode)
    2368           39 :           || GET_MODE (x1) != E_SImode
    2369           81 :           || !const_int_operand (operands[1], E_SImode))
    2370            3 :         return -1;
    2371              :       return 2;
    2372              : 
    2373           53 :     case E_DImode:
    2374           53 :       if (!register_operand (operands[0], E_DImode)
    2375           53 :           || GET_MODE (x1) != E_DImode
    2376          106 :           || !const_int_operand (operands[1], E_DImode))
    2377            0 :         return -1;
    2378              :       return 3;
    2379              : 
    2380              :     default:
    2381              :       return -1;
    2382              :     }
    2383              : }
    2384              : 
    2385              : int
    2386        60636 : pattern594 (rtx x1)
    2387              : {
    2388        60636 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2389        60636 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2390        60636 :   int res ATTRIBUTE_UNUSED;
    2391        60636 :   x2 = XVECEXP (x1, 0, 1);
    2392        60636 :   if (GET_CODE (x2) != USE)
    2393              :     return -1;
    2394        60634 :   x3 = XVECEXP (x1, 0, 2);
    2395        60634 :   x4 = XEXP (x3, 0);
    2396        60634 :   if (GET_CODE (x4) != REG
    2397        60634 :       || REGNO (x4) != 17
    2398       121268 :       || GET_MODE (x4) != E_CCmode)
    2399              :     return -1;
    2400        60634 :   x5 = XVECEXP (x1, 0, 0);
    2401        60634 :   x6 = XEXP (x5, 0);
    2402        60634 :   operands[0] = x6;
    2403        60634 :   x7 = XEXP (x5, 1);
    2404        60634 :   x8 = XEXP (x7, 0);
    2405        60634 :   operands[1] = x8;
    2406        60634 :   x9 = XEXP (x2, 0);
    2407        60634 :   operands[2] = x9;
    2408        60634 :   switch (GET_MODE (operands[0]))
    2409              :     {
    2410          258 :     case E_HFmode:
    2411          258 :       return pattern227 (x7, 
    2412              : E_V8HFmode, 
    2413          258 : E_HFmode); /* [-1, 0] */
    2414              : 
    2415        23684 :     case E_SFmode:
    2416        23684 :       if (GET_MODE (x7) != E_SFmode)
    2417              :         return -1;
    2418              :       return 1;
    2419              : 
    2420        36692 :     case E_DFmode:
    2421        36692 :       if (GET_MODE (x7) != E_DFmode)
    2422              :         return -1;
    2423              :       return 2;
    2424              : 
    2425              :     default:
    2426              :       return -1;
    2427              :     }
    2428              : }
    2429              : 
    2430              : int
    2431        32573 : pattern602 (rtx x1)
    2432              : {
    2433        32573 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2434        32573 :   rtx x2, x3, x4, x5, x6;
    2435        32573 :   int res ATTRIBUTE_UNUSED;
    2436        32573 :   x2 = XVECEXP (x1, 0, 2);
    2437        32573 :   if (!const_0_to_7_operand (x2, E_SImode))
    2438              :     return -1;
    2439        30797 :   x3 = XVECEXP (x1, 0, 0);
    2440        30797 :   switch (GET_CODE (x3))
    2441              :     {
    2442        28838 :     case CONST_INT:
    2443        28838 :     case CONST_WIDE_INT:
    2444        28838 :     case CONST_POLY_INT:
    2445        28838 :     case CONST_FIXED:
    2446        28838 :     case CONST_DOUBLE:
    2447        28838 :     case CONST_VECTOR:
    2448        28838 :     case CONST:
    2449        28838 :     case REG:
    2450        28838 :     case SUBREG:
    2451        28838 :     case MEM:
    2452        28838 :     case LABEL_REF:
    2453        28838 :     case SYMBOL_REF:
    2454        28838 :     case HIGH:
    2455        28838 :       operands[1] = x3;
    2456        28838 :       x4 = XVECEXP (x1, 0, 1);
    2457        28838 :       operands[2] = x4;
    2458        28838 :       operands[3] = x2;
    2459        28838 :       switch (GET_MODE (operands[0]))
    2460              :         {
    2461         1081 :         case E_DImode:
    2462         1081 :           return pattern598 (x1); /* [-1, 0] */
    2463              : 
    2464         2332 :         case E_SImode:
    2465         2332 :           res = pattern599 (x1);
    2466         2332 :           if (res >= 0)
    2467         2123 :             return res + 1; /* [1, 2] */
    2468              :           return -1;
    2469              : 
    2470        12729 :         case E_HImode:
    2471        12729 :           res = pattern600 (x1);
    2472        12729 :           if (res >= 0)
    2473        11790 :             return res + 3; /* [3, 5] */
    2474              :           return -1;
    2475              : 
    2476        12301 :         case E_QImode:
    2477        12301 :           res = pattern601 (x1);
    2478        12301 :           if (res >= 0)
    2479        10372 :             return res + 6; /* [6, 11] */
    2480              :           return -1;
    2481              : 
    2482              :         default:
    2483              :           return -1;
    2484              :         }
    2485              : 
    2486           36 :     case US_MINUS:
    2487           36 :       x5 = XEXP (x3, 0);
    2488           36 :       operands[1] = x5;
    2489           36 :       x6 = XEXP (x3, 1);
    2490           36 :       operands[2] = x6;
    2491           36 :       x4 = XVECEXP (x1, 0, 1);
    2492           36 :       operands[3] = x4;
    2493           36 :       operands[4] = x2;
    2494           36 :       switch (GET_MODE (operands[0]))
    2495              :         {
    2496            6 :         case E_DImode:
    2497            6 :           if (pattern73 (x1, 
    2498              : E_V64QImode, 
    2499              : E_DImode) != 0)
    2500              :             return -1;
    2501              :           return 12;
    2502              : 
    2503           12 :         case E_HImode:
    2504           12 :           res = pattern72 (x1);
    2505           12 :           if (res >= 0)
    2506           12 :             return res + 13; /* [13, 14] */
    2507              :           return -1;
    2508              : 
    2509           12 :         case E_SImode:
    2510           12 :           res = pattern306 (x1);
    2511           12 :           if (res >= 0)
    2512           12 :             return res + 15; /* [15, 16] */
    2513              :           return -1;
    2514              : 
    2515            6 :         case E_QImode:
    2516            6 :           if (pattern73 (x1, 
    2517              : E_V8HImode, 
    2518              : E_QImode) != 0)
    2519              :             return -1;
    2520              :           return 17;
    2521              : 
    2522              :         default:
    2523              :           return -1;
    2524              :         }
    2525              : 
    2526              :     default:
    2527              :       return -1;
    2528              :     }
    2529              : }
    2530              : 
    2531              : int
    2532         1769 : pattern626 (rtx x1, int *pnum_clobbers, machine_mode i1)
    2533              : {
    2534         1769 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2535         1769 :   int res ATTRIBUTE_UNUSED;
    2536         1769 :   if (pnum_clobbers == NULL
    2537         1747 :       || !register_operand (operands[0], i1)
    2538         1478 :       || GET_MODE (x1) != i1
    2539         3247 :       || !register_operand (operands[1], i1))
    2540         1189 :     return -1;
    2541              :   return 0;
    2542              : }
    2543              : 
    2544              : int
    2545         2267 : pattern632 ()
    2546              : {
    2547         2267 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2548         2267 :   int res ATTRIBUTE_UNUSED;
    2549         2267 :   switch (GET_MODE (operands[1]))
    2550              :     {
    2551         1131 :     case E_V32QImode:
    2552         1131 :       if (!register_operand (operands[1], E_V32QImode)
    2553         1131 :           || !nonimmediate_operand (operands[2], E_V32QImode))
    2554            0 :         return -1;
    2555              :       return 0;
    2556              : 
    2557         1136 :     case E_V32HImode:
    2558         1136 :       if (!register_operand (operands[1], E_V32HImode)
    2559         1136 :           || !nonimmediate_operand (operands[2], E_V32HImode))
    2560            0 :         return -1;
    2561              :       return 1;
    2562              : 
    2563              :     default:
    2564              :       return -1;
    2565              :     }
    2566              : }
    2567              : 
    2568              : int
    2569          786 : pattern640 (rtx x1)
    2570              : {
    2571          786 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2572          786 :   rtx x2, x3, x4, x5;
    2573          786 :   int res ATTRIBUTE_UNUSED;
    2574          786 :   x2 = XEXP (x1, 0);
    2575          786 :   x3 = XEXP (x2, 0);
    2576          786 :   x4 = XEXP (x3, 1);
    2577          786 :   operands[2] = x4;
    2578          786 :   if (!register_operand (operands[2], E_QImode))
    2579              :     return -1;
    2580          700 :   x5 = XEXP (x1, 1);
    2581          700 :   operands[1] = x5;
    2582          700 :   switch (GET_MODE (operands[0]))
    2583              :     {
    2584          363 :     case E_SImode:
    2585          363 :       return pattern639 (x1, 
    2586          363 : E_SImode); /* [-1, 0] */
    2587              : 
    2588          313 :     case E_DImode:
    2589          313 :       if (pattern639 (x1, 
    2590              : E_DImode) != 0)
    2591              :         return -1;
    2592              :       return 1;
    2593              : 
    2594              :     default:
    2595              :       return -1;
    2596              :     }
    2597              : }
    2598              : 
    2599              : int
    2600          812 : pattern647 (rtx x1, machine_mode i1)
    2601              : {
    2602          812 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2603          812 :   rtx x2;
    2604          812 :   int res ATTRIBUTE_UNUSED;
    2605          812 :   if (!register_operand (operands[0], i1)
    2606          812 :       || GET_MODE (x1) != i1)
    2607              :     return -1;
    2608          761 :   x2 = XEXP (x1, 0);
    2609          761 :   if (GET_MODE (x2) != i1
    2610          761 :       || !nonimmediate_operand (operands[1], i1)
    2611         1509 :       || !register_operand (operands[2], i1))
    2612           67 :     return -1;
    2613              :   return 0;
    2614              : }
    2615              : 
    2616              : int
    2617         6092 : pattern653 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2618              : {
    2619         6092 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2620         6092 :   rtx x2, x3, x4;
    2621         6092 :   int res ATTRIBUTE_UNUSED;
    2622         6092 :   x2 = XEXP (x1, 0);
    2623         6092 :   x3 = XVECEXP (x2, 0, 0);
    2624         6092 :   operands[1] = x3;
    2625         6092 :   x4 = XEXP (x1, 2);
    2626         6092 :   operands[3] = x4;
    2627         6092 :   switch (GET_MODE (operands[0]))
    2628              :     {
    2629         2052 :     case E_V32HImode:
    2630         2052 :       return pattern652 (x1, 
    2631              : E_V32HImode, 
    2632              : E_SImode, 
    2633         2052 : i1); /* [-1, 0] */
    2634              : 
    2635         2040 :     case E_V16HImode:
    2636         2040 :       if (pattern652 (x1, 
    2637              : E_V16HImode, 
    2638              : E_HImode, 
    2639              : i2) != 0)
    2640              :         return -1;
    2641              :       return 1;
    2642              : 
    2643         2000 :     case E_V8HImode:
    2644         2000 :       if (pattern652 (x1, 
    2645              : E_V8HImode, 
    2646              : E_QImode, 
    2647              : i3) != 0)
    2648              :         return -1;
    2649              :       return 2;
    2650              : 
    2651              :     default:
    2652              :       return -1;
    2653              :     }
    2654              : }
    2655              : 
    2656              : int
    2657          244 : pattern660 (rtx x1, machine_mode i1)
    2658              : {
    2659          244 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2660          244 :   int res ATTRIBUTE_UNUSED;
    2661          244 :   if (!register_operand (operands[0], i1)
    2662          244 :       || GET_MODE (x1) != i1)
    2663              :     return -1;
    2664          212 :   switch (GET_MODE (operands[1]))
    2665              :     {
    2666           77 :     case E_V8HFmode:
    2667           77 :       if (!vector_operand (operands[1], E_V8HFmode))
    2668              :         return -1;
    2669              :       return 0;
    2670              : 
    2671          101 :     case E_V8SFmode:
    2672          101 :       if (!nonimmediate_operand (operands[1], E_V8SFmode))
    2673              :         return -1;
    2674              :       return 1;
    2675              : 
    2676           34 :     case E_V8DFmode:
    2677           34 :       if (!vector_operand (operands[1], E_V8DFmode))
    2678              :         return -1;
    2679              :       return 2;
    2680              : 
    2681              :     default:
    2682              :       return -1;
    2683              :     }
    2684              : }
    2685              : 
    2686              : int
    2687         1908 : pattern666 (rtx x1, machine_mode i1)
    2688              : {
    2689         1908 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2690         1908 :   rtx x2, x3;
    2691         1908 :   int res ATTRIBUTE_UNUSED;
    2692         1908 :   if (!register_operand (operands[0], i1)
    2693         1908 :       || GET_MODE (x1) != i1)
    2694              :     return -1;
    2695         1844 :   x2 = XVECEXP (x1, 0, 0);
    2696         1844 :   if (GET_MODE (x2) != i1)
    2697              :     return -1;
    2698         1844 :   x3 = XEXP (x2, 0);
    2699         1844 :   if (GET_MODE (x3) != i1
    2700         1844 :       || !register_operand (operands[1], i1)
    2701         3608 :       || !nonimmediate_operand (operands[2], i1))
    2702          100 :     return -1;
    2703              :   return 0;
    2704              : }
    2705              : 
    2706              : int
    2707         2643 : pattern671 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2708              : {
    2709         2643 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2710         2643 :   rtx x2, x3;
    2711         2643 :   int res ATTRIBUTE_UNUSED;
    2712         2643 :   if (!register_operand (operands[0], i2)
    2713         2643 :       || GET_MODE (x1) != i2)
    2714              :     return -1;
    2715         2575 :   x2 = XVECEXP (x1, 0, 0);
    2716         2575 :   if (GET_MODE (x2) != i2)
    2717              :     return -1;
    2718         2575 :   x3 = XEXP (x2, 0);
    2719         2575 :   if (GET_MODE (x3) != i2
    2720         2575 :       || !register_operand (operands[1], i3)
    2721         2549 :       || !nonimm_or_0_operand (operands[2], i2)
    2722         5122 :       || !register_operand (operands[3], i1))
    2723           82 :     return -1;
    2724              :   return 0;
    2725              : }
    2726              : 
    2727              : int
    2728          133 : pattern678 (rtx x1)
    2729              : {
    2730          133 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2731          133 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2732          133 :   int res ATTRIBUTE_UNUSED;
    2733          133 :   x2 = XVECEXP (x1, 0, 2);
    2734          133 :   x3 = XEXP (x2, 0);
    2735          133 :   if (maybe_ne (SUBREG_BYTE (x3), 0))
    2736              :     return -1;
    2737          133 :   x4 = XEXP (x3, 0);
    2738          133 :   if (GET_CODE (x4) != NOT)
    2739              :     return -1;
    2740            6 :   x5 = XVECEXP (x1, 0, 0);
    2741            6 :   operands[2] = x5;
    2742            6 :   x6 = XVECEXP (x1, 0, 1);
    2743            6 :   operands[1] = x6;
    2744            6 :   x7 = XEXP (x4, 0);
    2745            6 :   operands[3] = x7;
    2746            6 :   if (!register_operand (operands[3], E_VOIDmode))
    2747              :     return -1;
    2748            6 :   x8 = XEXP (x2, 1);
    2749            6 :   operands[4] = x8;
    2750            6 :   switch (GET_MODE (operands[0]))
    2751              :     {
    2752            3 :     case E_V32QImode:
    2753            3 :       return pattern677 (x1, 
    2754            3 : E_V32QImode); /* [-1, 0] */
    2755              : 
    2756            3 :     case E_V16QImode:
    2757            3 :       if (pattern677 (x1, 
    2758              : E_V16QImode) != 0)
    2759              :         return -1;
    2760              :       return 1;
    2761              : 
    2762              :     default:
    2763              :       return -1;
    2764              :     }
    2765              : }
    2766              : 
    2767              : int
    2768          667 : pattern685 (rtx x1)
    2769              : {
    2770          667 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2771          667 :   rtx x2;
    2772          667 :   int res ATTRIBUTE_UNUSED;
    2773          667 :   x2 = XVECEXP (x1, 0, 2);
    2774          667 :   operands[3] = x2;
    2775          667 :   switch (GET_MODE (operands[0]))
    2776              :     {
    2777          163 :     case E_V32HFmode:
    2778          163 :       return pattern684 (x1, 
    2779          163 : E_V32HFmode); /* [-1, 0] */
    2780              : 
    2781          234 :     case E_V16HFmode:
    2782          234 :       if (pattern684 (x1, 
    2783              : E_V16HFmode) != 0)
    2784              :         return -1;
    2785              :       return 1;
    2786              : 
    2787          270 :     case E_V8HFmode:
    2788          270 :       if (pattern684 (x1, 
    2789              : E_V8HFmode) != 0)
    2790              :         return -1;
    2791              :       return 2;
    2792              : 
    2793              :     default:
    2794              :       return -1;
    2795              :     }
    2796              : }
    2797              : 
    2798              : int
    2799         8234 : pattern691 (rtx x1)
    2800              : {
    2801         8234 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2802         8234 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2803         8234 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2804         8234 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    2805         8234 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    2806         8234 :   int res ATTRIBUTE_UNUSED;
    2807         8234 :   x2 = XVECEXP (x1, 0, 0);
    2808         8234 :   if (GET_CODE (x2) != CONST_INT)
    2809              :     return -1;
    2810         8234 :   x3 = XVECEXP (x1, 0, 1);
    2811         8234 :   if (GET_CODE (x3) != CONST_INT)
    2812              :     return -1;
    2813         8234 :   x4 = XVECEXP (x1, 0, 2);
    2814         8234 :   if (GET_CODE (x4) != CONST_INT)
    2815              :     return -1;
    2816         8234 :   x5 = XVECEXP (x1, 0, 3);
    2817         8234 :   if (GET_CODE (x5) != CONST_INT)
    2818              :     return -1;
    2819         8234 :   x6 = XVECEXP (x1, 0, 4);
    2820         8234 :   if (GET_CODE (x6) != CONST_INT)
    2821              :     return -1;
    2822         8234 :   x7 = XVECEXP (x1, 0, 5);
    2823         8234 :   if (GET_CODE (x7) != CONST_INT)
    2824              :     return -1;
    2825         8234 :   x8 = XVECEXP (x1, 0, 6);
    2826         8234 :   if (GET_CODE (x8) != CONST_INT)
    2827              :     return -1;
    2828         8234 :   x9 = XVECEXP (x1, 0, 7);
    2829         8234 :   if (GET_CODE (x9) != CONST_INT)
    2830              :     return -1;
    2831         8234 :   x10 = XVECEXP (x1, 0, 8);
    2832         8234 :   if (GET_CODE (x10) != CONST_INT)
    2833              :     return -1;
    2834         8234 :   x11 = XVECEXP (x1, 0, 9);
    2835         8234 :   if (GET_CODE (x11) != CONST_INT)
    2836              :     return -1;
    2837         8234 :   x12 = XVECEXP (x1, 0, 10);
    2838         8234 :   if (GET_CODE (x12) != CONST_INT)
    2839              :     return -1;
    2840         8234 :   x13 = XVECEXP (x1, 0, 11);
    2841         8234 :   if (GET_CODE (x13) != CONST_INT)
    2842              :     return -1;
    2843         8234 :   x14 = XVECEXP (x1, 0, 12);
    2844         8234 :   if (GET_CODE (x14) != CONST_INT)
    2845              :     return -1;
    2846         8234 :   x15 = XVECEXP (x1, 0, 13);
    2847         8234 :   if (GET_CODE (x15) != CONST_INT)
    2848              :     return -1;
    2849         8234 :   x16 = XVECEXP (x1, 0, 14);
    2850         8234 :   if (GET_CODE (x16) != CONST_INT)
    2851              :     return -1;
    2852         8234 :   x17 = XVECEXP (x1, 0, 15);
    2853         8234 :   if (GET_CODE (x17) != CONST_INT)
    2854              :     return -1;
    2855         8234 :   x18 = XVECEXP (x1, 0, 16);
    2856         8234 :   if (GET_CODE (x18) != CONST_INT)
    2857              :     return -1;
    2858         8234 :   x19 = XVECEXP (x1, 0, 17);
    2859         8234 :   if (GET_CODE (x19) != CONST_INT)
    2860              :     return -1;
    2861         8234 :   x20 = XVECEXP (x1, 0, 18);
    2862         8234 :   if (GET_CODE (x20) != CONST_INT)
    2863              :     return -1;
    2864         8234 :   x21 = XVECEXP (x1, 0, 19);
    2865         8234 :   if (GET_CODE (x21) != CONST_INT)
    2866              :     return -1;
    2867         8234 :   x22 = XVECEXP (x1, 0, 20);
    2868         8234 :   if (GET_CODE (x22) != CONST_INT)
    2869              :     return -1;
    2870         8234 :   x23 = XVECEXP (x1, 0, 21);
    2871         8234 :   if (GET_CODE (x23) != CONST_INT)
    2872              :     return -1;
    2873         8234 :   x24 = XVECEXP (x1, 0, 22);
    2874         8234 :   if (GET_CODE (x24) != CONST_INT)
    2875              :     return -1;
    2876         8234 :   x25 = XVECEXP (x1, 0, 23);
    2877         8234 :   if (GET_CODE (x25) != CONST_INT)
    2878              :     return -1;
    2879         8234 :   x26 = XVECEXP (x1, 0, 24);
    2880         8234 :   if (GET_CODE (x26) != CONST_INT)
    2881              :     return -1;
    2882         8234 :   x27 = XVECEXP (x1, 0, 25);
    2883         8234 :   if (GET_CODE (x27) != CONST_INT)
    2884              :     return -1;
    2885         8234 :   x28 = XVECEXP (x1, 0, 26);
    2886         8234 :   if (GET_CODE (x28) != CONST_INT)
    2887              :     return -1;
    2888         8234 :   x29 = XVECEXP (x1, 0, 27);
    2889         8234 :   if (GET_CODE (x29) != CONST_INT)
    2890              :     return -1;
    2891         8234 :   x30 = XVECEXP (x1, 0, 28);
    2892         8234 :   if (GET_CODE (x30) != CONST_INT)
    2893              :     return -1;
    2894         8234 :   x31 = XVECEXP (x1, 0, 29);
    2895         8234 :   if (GET_CODE (x31) != CONST_INT)
    2896              :     return -1;
    2897         8234 :   x32 = XVECEXP (x1, 0, 30);
    2898         8234 :   if (GET_CODE (x32) != CONST_INT)
    2899              :     return -1;
    2900         8234 :   x33 = XVECEXP (x1, 0, 31);
    2901         8234 :   if (GET_CODE (x33) != CONST_INT)
    2902            0 :     return -1;
    2903              :   return 0;
    2904              : }
    2905              : 
    2906              : int
    2907            0 : pattern727 (rtx x1)
    2908              : {
    2909            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2910            0 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2911            0 :   int res ATTRIBUTE_UNUSED;
    2912            0 :   x2 = XVECEXP (x1, 0, 2);
    2913            0 :   x3 = XEXP (x2, 0);
    2914            0 :   if (GET_CODE (x3) != REG
    2915            0 :       || REGNO (x3) != 17
    2916            0 :       || GET_MODE (x3) != E_CCmode)
    2917              :     return -1;
    2918            0 :   x4 = XVECEXP (x1, 0, 0);
    2919            0 :   x5 = XEXP (x4, 0);
    2920            0 :   operands[0] = x5;
    2921            0 :   if (!register_operand (operands[0], E_SImode))
    2922              :     return -1;
    2923            0 :   x6 = XEXP (x4, 1);
    2924            0 :   x7 = XEXP (x6, 0);
    2925            0 :   operands[1] = x7;
    2926            0 :   if (!nonimmediate_operand (operands[1], E_SImode))
    2927              :     return -1;
    2928            0 :   x8 = XVECEXP (x1, 0, 1);
    2929            0 :   x9 = XEXP (x8, 0);
    2930            0 :   operands[2] = x9;
    2931            0 :   if (!scratch_operand (operands[2], E_SImode))
    2932              :     return -1;
    2933              :   return 0;
    2934              : }
    2935              : 
    2936              : int
    2937       124644 : pattern733 (rtx x1, machine_mode i1, machine_mode i2)
    2938              : {
    2939       124644 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2940       124644 :   rtx x2, x3, x4, x5, x6, x7;
    2941       124644 :   int res ATTRIBUTE_UNUSED;
    2942       124644 :   x2 = XVECEXP (x1, 0, 0);
    2943       124644 :   x3 = XEXP (x2, 1);
    2944       124644 :   x4 = XEXP (x3, 1);
    2945       124644 :   if (GET_MODE (x4) != i2)
    2946              :     return -1;
    2947       124644 :   x5 = XEXP (x4, 0);
    2948       124644 :   if (GET_MODE (x5) != i1
    2949       124644 :       || !nonimmediate_operand (operands[0], i1))
    2950            0 :     return -1;
    2951       124644 :   x6 = XVECEXP (x1, 0, 1);
    2952       124644 :   x7 = XEXP (x6, 1);
    2953       124644 :   if (GET_MODE (x7) != i1)
    2954              :     return -1;
    2955              :   return 0;
    2956              : }
    2957              : 
    2958              : int
    2959       133611 : pattern741 (rtx x1, machine_mode i1)
    2960              : {
    2961       133611 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2962       133611 :   rtx x2;
    2963       133611 :   int res ATTRIBUTE_UNUSED;
    2964       133611 :   if (peep2_current_count < 2
    2965       133611 :       || peep2_current_count < 3
    2966       123284 :       || !general_reg_operand (operands[0], i1)
    2967       227776 :       || !general_reg_operand (operands[1], i1))
    2968        44893 :     return -1;
    2969        88718 :   x2 = PATTERN (peep2_next_insn (2));
    2970        88718 :   if (GET_CODE (x2) != SET)
    2971              :     return -1;
    2972        60014 :   switch (GET_CODE (x1))
    2973              :     {
    2974              :     case SET:
    2975              :       return 0;
    2976              : 
    2977        26382 :     case PARALLEL:
    2978        26382 :       return 1;
    2979              : 
    2980              :     default:
    2981              :       return -1;
    2982              :     }
    2983              : }
    2984              : 
    2985              : int
    2986      3848064 : pattern745 (rtx x1, machine_mode i1)
    2987              : {
    2988      3848064 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2989      3848064 :   rtx x2, x3, x4, x5, x6;
    2990      3848064 :   int res ATTRIBUTE_UNUSED;
    2991      3848064 :   if (!register_operand (operands[0], i1)
    2992      3848064 :       || GET_CODE (x1) != SET)
    2993              :     return -1;
    2994      3044918 :   x2 = XEXP (x1, 1);
    2995      3044918 :   if (GET_CODE (x2) != PLUS
    2996       265896 :       || GET_MODE (x2) != i1)
    2997              :     return -1;
    2998       258706 :   x3 = XEXP (x1, 0);
    2999       258706 :   operands[3] = x3;
    3000       258706 :   if (!register_operand (operands[3], i1))
    3001              :     return -1;
    3002       258706 :   x4 = XEXP (x2, 0);
    3003       258706 :   operands[4] = x4;
    3004       258706 :   if (!register_operand (operands[4], i1))
    3005              :     return -1;
    3006       211305 :   x5 = XEXP (x2, 1);
    3007       211305 :   operands[2] = x5;
    3008       211305 :   if (!x86_64_nonmemory_operand (operands[2], i1))
    3009              :     return -1;
    3010       202552 :   x6 = PATTERN (peep2_next_insn (2));
    3011       202552 :   return pattern743 (x6, 
    3012       202552 : i1); /* [-1, 0] */
    3013              : }
    3014              : 
    3015              : int
    3016        16631 : pattern757 (machine_mode i1)
    3017              : {
    3018        16631 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3019        16631 :   int res ATTRIBUTE_UNUSED;
    3020        16631 :   if (!register_operand (operands[0], i1)
    3021        16508 :       || !ix86_comparison_uns_operator (operands[1], i1)
    3022        16375 :       || !register_operand (operands[2], i1)
    3023        27575 :       || !register_operand (operands[3], i1))
    3024        16559 :     return -1;
    3025              :   return 0;
    3026              : }
    3027              : 
    3028              : int
    3029          469 : pattern762 (rtx x1, machine_mode i1)
    3030              : {
    3031          469 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3032          469 :   rtx x2, x3;
    3033          469 :   int res ATTRIBUTE_UNUSED;
    3034          469 :   if (!nonimmediate_operand (operands[0], i1)
    3035          469 :       || GET_MODE (x1) != i1)
    3036              :     return -1;
    3037          469 :   x2 = XEXP (x1, 0);
    3038          469 :   if (GET_MODE (x2) != i1
    3039          469 :       || !nonimmediate_operand (operands[1], i1))
    3040          279 :     return -1;
    3041          190 :   x3 = XEXP (x2, 1);
    3042          190 :   if (GET_MODE (x3) != i1
    3043          190 :       || !x86_64_immediate_operand (operands[2], i1))
    3044           58 :     return -1;
    3045              :   return 0;
    3046              : }
    3047              : 
    3048              : int
    3049        54095 : pattern770 (rtx x1)
    3050              : {
    3051        54095 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3052        54095 :   rtx x2, x3;
    3053        54095 :   int res ATTRIBUTE_UNUSED;
    3054        54095 :   x2 = XEXP (x1, 1);
    3055        54095 :   switch (GET_CODE (x2))
    3056              :     {
    3057        12354 :     case REG:
    3058        12354 :     case SUBREG:
    3059        12354 :     case MEM:
    3060        12354 :       if (!rtx_equal_p (x2, operands[1]))
    3061              :         return -1;
    3062         4051 :       switch (GET_MODE (operands[0]))
    3063              :         {
    3064         1529 :         case E_SImode:
    3065         1529 :           return pattern768 (x1, 
    3066         1529 : E_SImode); /* [-1, 0] */
    3067              : 
    3068         2001 :         case E_DImode:
    3069         2001 :           if (pattern768 (x1, 
    3070              : E_DImode) != 0)
    3071              :             return -1;
    3072              :           return 1;
    3073              : 
    3074              :         default:
    3075              :           return -1;
    3076              :         }
    3077              : 
    3078           99 :     case NOT:
    3079           99 :       x3 = XEXP (x2, 0);
    3080           99 :       if (!rtx_equal_p (x3, operands[1]))
    3081              :         return -1;
    3082           84 :       switch (GET_MODE (operands[0]))
    3083              :         {
    3084            0 :         case E_SImode:
    3085            0 :           if (pattern769 (x1, 
    3086              : E_SImode) != 0)
    3087              :             return -1;
    3088              :           return 2;
    3089              : 
    3090           84 :         case E_DImode:
    3091           84 :           if (pattern769 (x1, 
    3092              : E_DImode) != 0)
    3093              :             return -1;
    3094              :           return 3;
    3095              : 
    3096              :         default:
    3097              :           return -1;
    3098              :         }
    3099              : 
    3100              :     default:
    3101              :       return -1;
    3102              :     }
    3103              : }
    3104              : 
    3105              : int
    3106          213 : pattern785 (rtx x1, machine_mode i1)
    3107              : {
    3108          213 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3109          213 :   int res ATTRIBUTE_UNUSED;
    3110          213 :   if (!register_operand (operands[0], i1)
    3111          213 :       || GET_MODE (x1) != i1)
    3112              :     return -1;
    3113          182 :   switch (GET_MODE (operands[1]))
    3114              :     {
    3115           77 :     case E_V8HFmode:
    3116           77 :       if (!vector_operand (operands[1], E_V8HFmode))
    3117              :         return -1;
    3118              :       return 0;
    3119              : 
    3120           73 :     case E_V8SFmode:
    3121           73 :       if (!nonimmediate_operand (operands[1], E_V8SFmode))
    3122              :         return -1;
    3123              :       return 1;
    3124              : 
    3125           32 :     case E_V8DFmode:
    3126           32 :       if (!nonimmediate_operand (operands[1], E_V8DFmode))
    3127              :         return -1;
    3128              :       return 2;
    3129              : 
    3130              :     default:
    3131              :       return -1;
    3132              :     }
    3133              : }
    3134              : 
    3135              : int
    3136        21011 : pattern793 (rtx x1, machine_mode i1)
    3137              : {
    3138        21011 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3139        21011 :   int res ATTRIBUTE_UNUSED;
    3140        21011 :   if (!register_operand (operands[0], i1)
    3141        20961 :       || GET_MODE (x1) != i1
    3142        20961 :       || !nonimmediate_operand (operands[1], i1)
    3143        41096 :       || !register_operand (operands[2], i1))
    3144         3056 :     return -1;
    3145              :   return 0;
    3146              : }
    3147              : 
    3148              : int
    3149         4181 : pattern800 (rtx x1)
    3150              : {
    3151         4181 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3152         4181 :   rtx x2;
    3153         4181 :   int res ATTRIBUTE_UNUSED;
    3154         4181 :   x2 = XVECEXP (x1, 0, 1);
    3155         4181 :   if (!rtx_equal_p (x2, operands[0]))
    3156              :     return -1;
    3157         3128 :   switch (GET_MODE (operands[0]))
    3158              :     {
    3159          146 :     case E_V64QImode:
    3160          146 :       return pattern799 (x1, 
    3161              : E_V64QImode, 
    3162          146 : E_DImode); /* [-1, 0] */
    3163              : 
    3164           62 :     case E_V32QImode:
    3165           62 :       if (pattern799 (x1, 
    3166              : E_V32QImode, 
    3167              : E_SImode) != 0)
    3168              :         return -1;
    3169              :       return 1;
    3170              : 
    3171          102 :     case E_V16QImode:
    3172          102 :       if (pattern799 (x1, 
    3173              : E_V16QImode, 
    3174              : E_HImode) != 0)
    3175              :         return -1;
    3176              :       return 2;
    3177              : 
    3178          225 :     case E_V32HImode:
    3179          225 :       if (pattern799 (x1, 
    3180              : E_V32HImode, 
    3181              : E_SImode) != 0)
    3182              :         return -1;
    3183              :       return 3;
    3184              : 
    3185           98 :     case E_V16HImode:
    3186           98 :       if (pattern799 (x1, 
    3187              : E_V16HImode, 
    3188              : E_HImode) != 0)
    3189              :         return -1;
    3190              :       return 4;
    3191              : 
    3192           98 :     case E_V8HImode:
    3193           98 :       if (pattern799 (x1, 
    3194              : E_V8HImode, 
    3195              : E_QImode) != 0)
    3196              :         return -1;
    3197              :       return 5;
    3198              : 
    3199          191 :     case E_V16SImode:
    3200          191 :       if (pattern799 (x1, 
    3201              : E_V16SImode, 
    3202              : E_HImode) != 0)
    3203              :         return -1;
    3204              :       return 6;
    3205              : 
    3206          144 :     case E_V8SImode:
    3207          144 :       if (pattern799 (x1, 
    3208              : E_V8SImode, 
    3209              : E_QImode) != 0)
    3210              :         return -1;
    3211              :       return 7;
    3212              : 
    3213          139 :     case E_V4SImode:
    3214          139 :       if (pattern799 (x1, 
    3215              : E_V4SImode, 
    3216              : E_QImode) != 0)
    3217              :         return -1;
    3218              :       return 8;
    3219              : 
    3220          547 :     case E_V8DImode:
    3221          547 :       if (pattern799 (x1, 
    3222              : E_V8DImode, 
    3223              : E_QImode) != 0)
    3224              :         return -1;
    3225              :       return 9;
    3226              : 
    3227          125 :     case E_V4DImode:
    3228          125 :       if (pattern799 (x1, 
    3229              : E_V4DImode, 
    3230              : E_QImode) != 0)
    3231              :         return -1;
    3232              :       return 10;
    3233              : 
    3234          140 :     case E_V2DImode:
    3235          140 :       if (pattern799 (x1, 
    3236              : E_V2DImode, 
    3237              : E_QImode) != 0)
    3238              :         return -1;
    3239              :       return 11;
    3240              : 
    3241           81 :     case E_V32HFmode:
    3242           81 :       if (pattern799 (x1, 
    3243              : E_V32HFmode, 
    3244              : E_SImode) != 0)
    3245              :         return -1;
    3246              :       return 12;
    3247              : 
    3248          129 :     case E_V16HFmode:
    3249          129 :       if (pattern799 (x1, 
    3250              : E_V16HFmode, 
    3251              : E_HImode) != 0)
    3252              :         return -1;
    3253              :       return 13;
    3254              : 
    3255           81 :     case E_V8HFmode:
    3256           81 :       if (pattern799 (x1, 
    3257              : E_V8HFmode, 
    3258              : E_QImode) != 0)
    3259              :         return -1;
    3260              :       return 14;
    3261              : 
    3262            0 :     case E_V32BFmode:
    3263            0 :       if (pattern799 (x1, 
    3264              : E_V32BFmode, 
    3265              : E_SImode) != 0)
    3266              :         return -1;
    3267              :       return 15;
    3268              : 
    3269            0 :     case E_V16BFmode:
    3270            0 :       if (pattern799 (x1, 
    3271              : E_V16BFmode, 
    3272              : E_HImode) != 0)
    3273              :         return -1;
    3274              :       return 16;
    3275              : 
    3276            0 :     case E_V8BFmode:
    3277            0 :       if (pattern799 (x1, 
    3278              : E_V8BFmode, 
    3279              : E_QImode) != 0)
    3280              :         return -1;
    3281              :       return 17;
    3282              : 
    3283          110 :     case E_V16SFmode:
    3284          110 :       if (pattern799 (x1, 
    3285              : E_V16SFmode, 
    3286              : E_HImode) != 0)
    3287              :         return -1;
    3288              :       return 18;
    3289              : 
    3290          146 :     case E_V8SFmode:
    3291          146 :       if (pattern799 (x1, 
    3292              : E_V8SFmode, 
    3293              : E_QImode) != 0)
    3294              :         return -1;
    3295              :       return 19;
    3296              : 
    3297          122 :     case E_V4SFmode:
    3298          122 :       if (pattern799 (x1, 
    3299              : E_V4SFmode, 
    3300              : E_QImode) != 0)
    3301              :         return -1;
    3302              :       return 20;
    3303              : 
    3304          161 :     case E_V8DFmode:
    3305          161 :       if (pattern799 (x1, 
    3306              : E_V8DFmode, 
    3307              : E_QImode) != 0)
    3308              :         return -1;
    3309              :       return 21;
    3310              : 
    3311          158 :     case E_V4DFmode:
    3312          158 :       if (pattern799 (x1, 
    3313              : E_V4DFmode, 
    3314              : E_QImode) != 0)
    3315              :         return -1;
    3316              :       return 22;
    3317              : 
    3318          123 :     case E_V2DFmode:
    3319          123 :       if (pattern799 (x1, 
    3320              : E_V2DFmode, 
    3321              : E_QImode) != 0)
    3322              :         return -1;
    3323              :       return 23;
    3324              : 
    3325              :     default:
    3326              :       return -1;
    3327              :     }
    3328              : }
    3329              : 
    3330              : int
    3331           86 : pattern842 (rtx x1, int *pnum_clobbers)
    3332              : {
    3333           86 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3334           86 :   rtx x2, x3;
    3335           86 :   int res ATTRIBUTE_UNUSED;
    3336           86 :   x2 = XVECEXP (x1, 0, 1);
    3337           86 :   if (GET_CODE (x2) != USE)
    3338              :     return -1;
    3339           86 :   x3 = XVECEXP (x1, 0, 2);
    3340           86 :   if (GET_CODE (x3) != USE
    3341           86 :       || !register_operand (operands[1], E_XFmode))
    3342           58 :     return -1;
    3343           28 :   return pattern841 (x1, pnum_clobbers); /* [-1, 2] */
    3344              : }
    3345              : 
    3346              : int
    3347      5892068 : pattern847 (rtx x1, machine_mode i1)
    3348              : {
    3349      5892068 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3350      5892068 :   int res ATTRIBUTE_UNUSED;
    3351      5892068 :   if (!register_operand (operands[0], i1)
    3352      5889352 :       || GET_MODE (x1) != i1
    3353      5889352 :       || !register_operand (operands[1], i1)
    3354     11777544 :       || !x86_64_nonmemory_operand (operands[2], i1))
    3355       161770 :     return -1;
    3356              :   return 0;
    3357              : }
    3358              : 
    3359              : int
    3360         5738 : pattern851 (rtx x1)
    3361              : {
    3362         5738 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3363         5738 :   rtx x2, x3, x4, x5;
    3364         5738 :   int res ATTRIBUTE_UNUSED;
    3365         5738 :   x2 = XVECEXP (x1, 0, 1);
    3366         5738 :   x3 = XEXP (x2, 0);
    3367         5738 :   operands[2] = x3;
    3368         5738 :   switch (GET_MODE (operands[0]))
    3369              :     {
    3370          164 :     case E_V2SFmode:
    3371          164 :       x4 = XVECEXP (x1, 0, 0);
    3372          164 :       x5 = XEXP (x4, 1);
    3373          164 :       return pattern715 (x5); /* [-1, 0] */
    3374              : 
    3375            4 :     case E_V2BFmode:
    3376            4 :       x4 = XVECEXP (x1, 0, 0);
    3377            4 :       x5 = XEXP (x4, 1);
    3378            4 :       if (pattern716 (x5, 
    3379              : E_V2BFmode) != 0)
    3380              :         return -1;
    3381              :       return 1;
    3382              : 
    3383            4 :     case E_V4BFmode:
    3384            4 :       x4 = XVECEXP (x1, 0, 0);
    3385            4 :       x5 = XEXP (x4, 1);
    3386            4 :       if (pattern716 (x5, 
    3387              : E_V4BFmode) != 0)
    3388              :         return -1;
    3389              :       return 2;
    3390              : 
    3391            8 :     case E_V2HFmode:
    3392            8 :       x4 = XVECEXP (x1, 0, 0);
    3393            8 :       x5 = XEXP (x4, 1);
    3394            8 :       if (pattern716 (x5, 
    3395              : E_V2HFmode) != 0)
    3396              :         return -1;
    3397              :       return 3;
    3398              : 
    3399            6 :     case E_V4HFmode:
    3400            6 :       x4 = XVECEXP (x1, 0, 0);
    3401            6 :       x5 = XEXP (x4, 1);
    3402            6 :       if (pattern716 (x5, 
    3403              : E_V4HFmode) != 0)
    3404              :         return -1;
    3405              :       return 4;
    3406              : 
    3407            4 :     case E_V32BFmode:
    3408            4 :       x4 = XVECEXP (x1, 0, 0);
    3409            4 :       x5 = XEXP (x4, 1);
    3410            4 :       if (pattern714 (x5, 
    3411              : E_V32BFmode) != 0)
    3412              :         return -1;
    3413              :       return 5;
    3414              : 
    3415            4 :     case E_V16BFmode:
    3416            4 :       x4 = XVECEXP (x1, 0, 0);
    3417            4 :       x5 = XEXP (x4, 1);
    3418            4 :       if (pattern714 (x5, 
    3419              : E_V16BFmode) != 0)
    3420              :         return -1;
    3421              :       return 6;
    3422              : 
    3423            4 :     case E_V8BFmode:
    3424            4 :       x4 = XVECEXP (x1, 0, 0);
    3425            4 :       x5 = XEXP (x4, 1);
    3426            4 :       if (pattern714 (x5, 
    3427              : E_V8BFmode) != 0)
    3428              :         return -1;
    3429              :       return 7;
    3430              : 
    3431           14 :     case E_V32HFmode:
    3432           14 :       x4 = XVECEXP (x1, 0, 0);
    3433           14 :       x5 = XEXP (x4, 1);
    3434           14 :       if (pattern714 (x5, 
    3435              : E_V32HFmode) != 0)
    3436              :         return -1;
    3437              :       return 8;
    3438              : 
    3439           10 :     case E_V16HFmode:
    3440           10 :       x4 = XVECEXP (x1, 0, 0);
    3441           10 :       x5 = XEXP (x4, 1);
    3442           10 :       if (pattern714 (x5, 
    3443              : E_V16HFmode) != 0)
    3444              :         return -1;
    3445              :       return 9;
    3446              : 
    3447          157 :     case E_V8HFmode:
    3448          157 :       x4 = XVECEXP (x1, 0, 0);
    3449          157 :       x5 = XEXP (x4, 1);
    3450          157 :       if (pattern714 (x5, 
    3451              : E_V8HFmode) != 0)
    3452              :         return -1;
    3453              :       return 10;
    3454              : 
    3455           66 :     case E_V16SFmode:
    3456           66 :       x4 = XVECEXP (x1, 0, 0);
    3457           66 :       x5 = XEXP (x4, 1);
    3458           66 :       if (pattern714 (x5, 
    3459              : E_V16SFmode) != 0)
    3460              :         return -1;
    3461              :       return 11;
    3462              : 
    3463          536 :     case E_V8SFmode:
    3464          536 :       x4 = XVECEXP (x1, 0, 0);
    3465          536 :       x5 = XEXP (x4, 1);
    3466          536 :       if (pattern714 (x5, 
    3467              : E_V8SFmode) != 0)
    3468              :         return -1;
    3469              :       return 12;
    3470              : 
    3471          714 :     case E_V4SFmode:
    3472          714 :       x4 = XVECEXP (x1, 0, 0);
    3473          714 :       x5 = XEXP (x4, 1);
    3474          714 :       if (pattern714 (x5, 
    3475              : E_V4SFmode) != 0)
    3476              :         return -1;
    3477              :       return 13;
    3478              : 
    3479           42 :     case E_V8DFmode:
    3480           42 :       x4 = XVECEXP (x1, 0, 0);
    3481           42 :       x5 = XEXP (x4, 1);
    3482           42 :       if (pattern714 (x5, 
    3483              : E_V8DFmode) != 0)
    3484              :         return -1;
    3485              :       return 14;
    3486              : 
    3487         1050 :     case E_V4DFmode:
    3488         1050 :       x4 = XVECEXP (x1, 0, 0);
    3489         1050 :       x5 = XEXP (x4, 1);
    3490         1050 :       if (pattern714 (x5, 
    3491              : E_V4DFmode) != 0)
    3492              :         return -1;
    3493              :       return 15;
    3494              : 
    3495          616 :     case E_V2DFmode:
    3496          616 :       x4 = XVECEXP (x1, 0, 0);
    3497          616 :       x5 = XEXP (x4, 1);
    3498          616 :       if (pattern714 (x5, 
    3499              : E_V2DFmode) != 0)
    3500              :         return -1;
    3501              :       return 16;
    3502              : 
    3503              :     default:
    3504              :       return -1;
    3505              :     }
    3506              : }
    3507              : 
    3508              : int
    3509        21494 : pattern882 (rtx x1, machine_mode i1)
    3510              : {
    3511        21494 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3512        21494 :   int res ATTRIBUTE_UNUSED;
    3513        21494 :   if (!register_operand (operands[0], i1)
    3514        21102 :       || GET_MODE (x1) != i1
    3515        21102 :       || !bcst_vector_operand (operands[1], i1)
    3516        21006 :       || !bcst_vector_operand (operands[2], i1)
    3517        42409 :       || !bcst_vector_operand (operands[3], i1))
    3518          601 :     return -1;
    3519              :   return 0;
    3520              : }
    3521              : 
    3522              : int
    3523            8 : pattern888 (rtx x1)
    3524              : {
    3525            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3526            8 :   rtx x2, x3, x4;
    3527            8 :   int res ATTRIBUTE_UNUSED;
    3528            8 :   if (GET_CODE (x1) != VEC_SELECT)
    3529              :     return -1;
    3530            8 :   x2 = XEXP (x1, 1);
    3531            8 :   if (GET_CODE (x2) != PARALLEL
    3532            8 :       || XVECLEN (x2, 0) != 1)
    3533              :     return -1;
    3534            8 :   x3 = XVECEXP (x2, 0, 0);
    3535            8 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3536              :     return -1;
    3537            8 :   x4 = XEXP (x1, 0);
    3538            8 :   operands[1] = x4;
    3539            8 :   switch (GET_MODE (x1))
    3540              :     {
    3541            4 :     case E_DFmode:
    3542            4 :       if (!nonimmediate_operand (operands[1], E_V2DFmode))
    3543              :         return -1;
    3544              :       return 0;
    3545              : 
    3546            4 :     case E_SFmode:
    3547            4 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    3548              :         return -1;
    3549              :       return 1;
    3550              : 
    3551              :     default:
    3552              :       return -1;
    3553              :     }
    3554              : }
    3555              : 
    3556              : int
    3557         5670 : pattern899 (rtx x1)
    3558              : {
    3559         5670 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3560         5670 :   rtx x2, x3, x4;
    3561         5670 :   int res ATTRIBUTE_UNUSED;
    3562         5670 :   x2 = XVECEXP (x1, 0, 0);
    3563         5670 :   x3 = XEXP (x2, 1);
    3564         5670 :   operands[1] = x3;
    3565         5670 :   x4 = XEXP (x2, 0);
    3566         5670 :   if (!rtx_equal_p (x4, operands[0]))
    3567              :     return -1;
    3568         3555 :   switch (GET_MODE (operands[0]))
    3569              :     {
    3570         2397 :     case E_SImode:
    3571         2397 :       return pattern876 (x1, 
    3572         2397 : E_SImode); /* [-1, 0] */
    3573              : 
    3574          614 :     case E_DImode:
    3575          614 :       if (pattern876 (x1, 
    3576              : E_DImode) != 0)
    3577              :         return -1;
    3578              :       return 1;
    3579              : 
    3580              :     default:
    3581              :       return -1;
    3582              :     }
    3583              : }
    3584              : 
    3585              : int
    3586         1934 : pattern908 (rtx x1, machine_mode i1)
    3587              : {
    3588         1934 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3589         1934 :   rtx x2, x3;
    3590         1934 :   int res ATTRIBUTE_UNUSED;
    3591         1934 :   if (!register_operand (operands[0], i1)
    3592         1934 :       || GET_MODE (x1) != i1)
    3593              :     return -1;
    3594         1699 :   x2 = XEXP (x1, 0);
    3595         1699 :   operands[2] = x2;
    3596         1699 :   if (!register_operand (operands[2], i1))
    3597              :     return -1;
    3598         1480 :   x3 = XEXP (x1, 1);
    3599         1480 :   operands[1] = x3;
    3600         1480 :   if (!reg_or_0_operand (operands[1], i1))
    3601              :     return -1;
    3602              :   return 0;
    3603              : }
    3604              : 
    3605              : int
    3606          388 : pattern918 (rtx x1, int i1, machine_mode i2)
    3607              : {
    3608          388 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3609          388 :   rtx x2, x3;
    3610          388 :   int res ATTRIBUTE_UNUSED;
    3611          388 :   if (GET_CODE (x1) != VEC_SELECT
    3612          388 :       || GET_MODE (x1) != i2)
    3613              :     return -1;
    3614          388 :   x2 = XEXP (x1, 1);
    3615          388 :   if (GET_CODE (x2) != PARALLEL
    3616          388 :       || XVECLEN (x2, 0) != i1)
    3617              :     return -1;
    3618          388 :   x3 = XVECEXP (x2, 0, 0);
    3619          388 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3620            0 :     return -1;
    3621              :   return 0;
    3622              : }
    3623              : 
    3624              : int
    3625         2096 : pattern921 (rtx x1, machine_mode i1, machine_mode i2)
    3626              : {
    3627         2096 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3628         2096 :   rtx x2, x3;
    3629         2096 :   int res ATTRIBUTE_UNUSED;
    3630         2096 :   if (!register_operand (operands[0], i1)
    3631         2096 :       || GET_MODE (x1) != i1)
    3632              :     return -1;
    3633         2036 :   x2 = XVECEXP (x1, 0, 0);
    3634         2036 :   if (GET_MODE (x2) != i1)
    3635              :     return -1;
    3636         2036 :   x3 = XEXP (x2, 0);
    3637         2036 :   if (GET_MODE (x3) != i1
    3638         2036 :       || !register_operand (operands[1], i1)
    3639         2016 :       || !register_operand (operands[2], i1)
    3640         2000 :       || !nonimm_or_0_operand (operands[3], i1)
    3641         4036 :       || !register_operand (operands[4], i2))
    3642           36 :     return -1;
    3643              :   return 0;
    3644              : }
    3645              : 
    3646              : int
    3647         1158 : pattern931 (rtx x1)
    3648              : {
    3649         1158 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3650         1158 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3651         1158 :   rtx x10, x11, x12, x13, x14, x15, x16;
    3652         1158 :   int res ATTRIBUTE_UNUSED;
    3653         1158 :   x2 = XEXP (x1, 0);
    3654         1158 :   x3 = XEXP (x2, 0);
    3655         1158 :   if (GET_MODE (x3) != E_V8QImode)
    3656              :     return -1;
    3657         1158 :   x4 = XEXP (x2, 1);
    3658         1158 :   if (GET_CODE (x4) != VEC_SELECT
    3659          956 :       || GET_MODE (x4) != E_V8QImode)
    3660              :     return -1;
    3661          956 :   x5 = XEXP (x4, 1);
    3662          956 :   if (GET_CODE (x5) != PARALLEL
    3663          956 :       || XVECLEN (x5, 0) != 8)
    3664              :     return -1;
    3665          956 :   x6 = XVECEXP (x5, 0, 0);
    3666          956 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3667              :     return -1;
    3668          956 :   x7 = XVECEXP (x5, 0, 1);
    3669          956 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3670              :     return -1;
    3671          956 :   x8 = XVECEXP (x5, 0, 2);
    3672          956 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    3673              :     return -1;
    3674          956 :   x9 = XVECEXP (x5, 0, 3);
    3675          956 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    3676              :     return -1;
    3677          956 :   x10 = XVECEXP (x5, 0, 4);
    3678          956 :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    3679              :     return -1;
    3680          956 :   x11 = XVECEXP (x5, 0, 5);
    3681          956 :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    3682              :     return -1;
    3683          956 :   x12 = XVECEXP (x5, 0, 6);
    3684          956 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    3685              :     return -1;
    3686          956 :   x13 = XVECEXP (x5, 0, 7);
    3687          956 :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
    3688          956 :       || !register_operand (operands[0], E_V16QImode)
    3689          948 :       || GET_MODE (x1) != E_V16QImode
    3690          948 :       || GET_MODE (x2) != E_V8QImode
    3691         1904 :       || !nonimmediate_operand (operands[1], E_V8HFmode))
    3692           80 :     return -1;
    3693          876 :   x14 = XEXP (x4, 0);
    3694          876 :   operands[2] = x14;
    3695          876 :   if (!nonimm_or_0_operand (operands[2], E_V16QImode))
    3696              :     return -1;
    3697          876 :   x15 = XEXP (x2, 2);
    3698          876 :   operands[3] = x15;
    3699          876 :   x16 = XEXP (x1, 1);
    3700          876 :   operands[4] = x16;
    3701          876 :   if (!const0_operand (operands[4], E_V8QImode))
    3702              :     return -1;
    3703              :   return 0;
    3704              : }
    3705              : 
    3706              : int
    3707           28 : pattern950 (rtx x1)
    3708              : {
    3709           28 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3710           28 :   rtx x2, x3, x4, x5;
    3711           28 :   int res ATTRIBUTE_UNUSED;
    3712           28 :   x2 = XVECEXP (x1, 0, 1);
    3713           28 :   x3 = XEXP (x2, 0);
    3714           28 :   operands[2] = x3;
    3715           28 :   if (!memory_operand (operands[2], E_DImode))
    3716              :     return -1;
    3717           28 :   x4 = XVECEXP (x1, 0, 0);
    3718           28 :   x5 = XEXP (x4, 1);
    3719           28 :   return pattern391 (x5); /* [-1, 2] */
    3720              : }
    3721              : 
    3722              : int
    3723          283 : pattern955 (rtx x1)
    3724              : {
    3725          283 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3726          283 :   rtx x2, x3, x4, x5;
    3727          283 :   int res ATTRIBUTE_UNUSED;
    3728          283 :   x2 = XEXP (x1, 0);
    3729          283 :   x3 = XEXP (x2, 1);
    3730          283 :   x4 = XEXP (x3, 1);
    3731          283 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3732              :     return -1;
    3733          277 :   x5 = XEXP (x3, 0);
    3734          277 :   operands[3] = x5;
    3735          277 :   if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
    3736              :     return -1;
    3737          271 :   switch (GET_MODE (operands[0]))
    3738              :     {
    3739            0 :     case E_QImode:
    3740            0 :       return pattern953 (x1, 
    3741            0 : E_QImode); /* [-1, 0] */
    3742              : 
    3743            0 :     case E_HImode:
    3744            0 :       if (pattern953 (x1, 
    3745              : E_HImode) != 0)
    3746              :         return -1;
    3747              :       return 1;
    3748              : 
    3749          189 :     case E_SImode:
    3750          189 :       if (pattern954 (x1, 
    3751              : E_SImode) != 0)
    3752              :         return -1;
    3753              :       return 2;
    3754              : 
    3755           82 :     case E_DImode:
    3756           82 :       if (pattern954 (x1, 
    3757              : E_DImode) != 0)
    3758              :         return -1;
    3759              :       return 3;
    3760              : 
    3761              :     default:
    3762              :       return -1;
    3763              :     }
    3764              : }
    3765              : 
    3766              : int
    3767          117 : pattern968 (rtx x1, machine_mode i1)
    3768              : {
    3769          117 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3770          117 :   rtx x2;
    3771          117 :   int res ATTRIBUTE_UNUSED;
    3772          117 :   if (!register_operand (operands[0], i1)
    3773          117 :       || GET_MODE (x1) != i1)
    3774              :     return -1;
    3775           93 :   x2 = XEXP (x1, 0);
    3776           93 :   if (GET_MODE (x2) != i1
    3777           93 :       || !vector_operand (operands[1], i1)
    3778           69 :       || !vector_operand (operands[2], i1)
    3779          150 :       || !const0_operand (operands[3], i1))
    3780           69 :     return -1;
    3781              :   return 0;
    3782              : }
    3783              : 
    3784              : int
    3785       144782 : pattern976 (rtx x1)
    3786              : {
    3787       144782 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3788       144782 :   int res ATTRIBUTE_UNUSED;
    3789       144782 :   switch (GET_MODE (operands[0]))
    3790              :     {
    3791        63283 :     case E_QImode:
    3792        63283 :       if (!register_operand (operands[0], E_QImode)
    3793        63283 :           || GET_MODE (x1) != E_QImode)
    3794              :         return -1;
    3795              :       return 0;
    3796              : 
    3797        59966 :     case E_HImode:
    3798        59966 :       if (!register_operand (operands[0], E_HImode)
    3799        59966 :           || GET_MODE (x1) != E_HImode)
    3800              :         return -1;
    3801              :       return 1;
    3802              : 
    3803              :     default:
    3804              :       return -1;
    3805              :     }
    3806              : }
    3807              : 
    3808              : int
    3809         7924 : pattern979 (rtx x1, machine_mode i1)
    3810              : {
    3811         7924 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3812         7924 :   int res ATTRIBUTE_UNUSED;
    3813         7924 :   if (!register_operand (operands[0], i1)
    3814         7566 :       || GET_MODE (x1) != i1
    3815         7566 :       || !nonimmediate_operand (operands[2], i1)
    3816        15390 :       || !register_operand (operands[1], i1))
    3817          964 :     return -1;
    3818              :   return 0;
    3819              : }
    3820              : 
    3821              : int
    3822          168 : pattern984 (rtx x1)
    3823              : {
    3824          168 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3825          168 :   rtx x2;
    3826          168 :   int res ATTRIBUTE_UNUSED;
    3827          168 :   if (!register_operand (operands[0], E_QImode)
    3828          168 :       || GET_MODE (x1) != E_QImode)
    3829              :     return -1;
    3830          168 :   x2 = XEXP (x1, 0);
    3831          168 :   if (GET_MODE (x2) != E_QImode)
    3832              :     return -1;
    3833          168 :   switch (GET_MODE (operands[1]))
    3834              :     {
    3835            3 :     case E_V8SImode:
    3836            3 :       if (!register_operand (operands[1], E_V8SImode)
    3837            3 :           || !nonimmediate_operand (operands[2], E_V8SImode)
    3838            6 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3839            0 :         return -1;
    3840              :       return 0;
    3841              : 
    3842            0 :     case E_V4SImode:
    3843            0 :       if (!register_operand (operands[1], E_V4SImode)
    3844            0 :           || !nonimmediate_operand (operands[2], E_V4SImode)
    3845            0 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3846            0 :         return -1;
    3847              :       return 1;
    3848              : 
    3849           29 :     case E_V8DImode:
    3850           29 :       if (!register_operand (operands[1], E_V8DImode)
    3851           29 :           || !nonimmediate_operand (operands[2], E_V8DImode)
    3852           58 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3853            0 :         return -1;
    3854              :       return 2;
    3855              : 
    3856            0 :     case E_V4DImode:
    3857            0 :       if (!register_operand (operands[1], E_V4DImode)
    3858            0 :           || !nonimmediate_operand (operands[2], E_V4DImode)
    3859            0 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3860            0 :         return -1;
    3861              :       return 3;
    3862              : 
    3863            0 :     case E_V2DImode:
    3864            0 :       if (!register_operand (operands[1], E_V2DImode)
    3865            0 :           || !nonimmediate_operand (operands[2], E_V2DImode)
    3866            0 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3867            0 :         return -1;
    3868              :       return 4;
    3869              : 
    3870            0 :     case E_V8HFmode:
    3871            0 :       if (!register_operand (operands[1], E_V8HFmode)
    3872            0 :           || !nonimmediate_operand (operands[2], E_V8HFmode)
    3873            0 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3874            0 :         return -1;
    3875              :       return 5;
    3876              : 
    3877            3 :     case E_V8SFmode:
    3878            3 :       if (!register_operand (operands[1], E_V8SFmode)
    3879            3 :           || !nonimmediate_operand (operands[2], E_V8SFmode)
    3880            6 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3881            0 :         return -1;
    3882              :       return 6;
    3883              : 
    3884           21 :     case E_V4SFmode:
    3885           21 :       if (!register_operand (operands[1], E_V4SFmode)
    3886           18 :           || !nonimmediate_operand (operands[2], E_V4SFmode)
    3887           33 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3888            9 :         return -1;
    3889              :       return 7;
    3890              : 
    3891           50 :     case E_V8DFmode:
    3892           50 :       if (!register_operand (operands[1], E_V8DFmode)
    3893           50 :           || !nonimmediate_operand (operands[2], E_V8DFmode)
    3894          100 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3895            0 :         return -1;
    3896              :       return 8;
    3897              : 
    3898           25 :     case E_V4DFmode:
    3899           25 :       if (!register_operand (operands[1], E_V4DFmode)
    3900           25 :           || !nonimmediate_operand (operands[2], E_V4DFmode)
    3901           50 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3902            0 :         return -1;
    3903              :       return 9;
    3904              : 
    3905           34 :     case E_V2DFmode:
    3906           34 :       if (!register_operand (operands[1], E_V2DFmode)
    3907           34 :           || !nonimmediate_operand (operands[2], E_V2DFmode)
    3908           68 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3909            0 :         return -1;
    3910              :       return 10;
    3911              : 
    3912            3 :     case E_V8HImode:
    3913            3 :       if (!register_operand (operands[1], E_V8HImode)
    3914            3 :           || !nonimmediate_operand (operands[2], E_V8HImode)
    3915            6 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3916            0 :         return -1;
    3917              :       return 11;
    3918              : 
    3919              :     default:
    3920              :       return -1;
    3921              :     }
    3922              : }
    3923              : 
    3924              : int
    3925          622 : pattern1008 (rtx x1)
    3926              : {
    3927          622 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3928          622 :   rtx x2;
    3929          622 :   int res ATTRIBUTE_UNUSED;
    3930          622 :   if (!register_operand (operands[0], E_V8DImode)
    3931          622 :       || GET_MODE (x1) != E_V8DImode)
    3932              :     return -1;
    3933          508 :   x2 = XEXP (x1, 0);
    3934          508 :   if (GET_MODE (x2) != E_V8DImode
    3935          508 :       || !nonimm_or_0_operand (operands[2], E_V8DImode)
    3936          972 :       || !register_operand (operands[3], E_QImode))
    3937          108 :     return -1;
    3938          400 :   switch (GET_MODE (operands[1]))
    3939              :     {
    3940          146 :     case E_V8HFmode:
    3941          146 :       if (!vector_operand (operands[1], E_V8HFmode))
    3942              :         return -1;
    3943              :       return 0;
    3944              : 
    3945          126 :     case E_V8DFmode:
    3946          126 :       if (!vector_operand (operands[1], E_V8DFmode))
    3947              :         return -1;
    3948              :       return 1;
    3949              : 
    3950          128 :     case E_V8SFmode:
    3951          128 :       if (!vector_operand (operands[1], E_V8SFmode))
    3952              :         return -1;
    3953              :       return 2;
    3954              : 
    3955              :     default:
    3956              :       return -1;
    3957              :     }
    3958              : }
    3959              : 
    3960              : int
    3961         3351 : pattern1016 (rtx x1, machine_mode i1)
    3962              : {
    3963         3351 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3964         3351 :   rtx x2, x3, x4;
    3965         3351 :   int res ATTRIBUTE_UNUSED;
    3966         3351 :   if (!register_operand (operands[0], i1)
    3967         3351 :       || GET_MODE (x1) != i1)
    3968              :     return -1;
    3969         3239 :   x2 = XEXP (x1, 0);
    3970         3239 :   if (GET_MODE (x2) != i1)
    3971              :     return -1;
    3972         3239 :   x3 = XVECEXP (x2, 0, 0);
    3973         3239 :   if (!register_operand (x3, i1))
    3974              :     return -1;
    3975         3201 :   x4 = XVECEXP (x2, 0, 1);
    3976         3201 :   if (!register_operand (x4, i1))
    3977              :     return -1;
    3978              :   return 0;
    3979              : }
    3980              : 
    3981              : int
    3982            0 : pattern1026 (rtx x1, machine_mode i1, machine_mode i2)
    3983              : {
    3984            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3985            0 :   rtx x2, x3;
    3986            0 :   int res ATTRIBUTE_UNUSED;
    3987            0 :   if (!register_operand (operands[0], i1)
    3988            0 :       || GET_MODE (x1) != i1
    3989            0 :       || !vector_operand (operands[1], i1)
    3990            0 :       || !vector_operand (operands[2], i1))
    3991            0 :     return -1;
    3992            0 :   x2 = XEXP (x1, 2);
    3993            0 :   if (GET_MODE (x2) != i2)
    3994              :     return -1;
    3995            0 :   x3 = XVECEXP (x2, 0, 0);
    3996            0 :   if (GET_MODE (x3) != i1
    3997            0 :       || !register_operand (operands[3], i1)
    3998            0 :       || !const0_operand (operands[4], i1))
    3999            0 :     return -1;
    4000              :   return 0;
    4001              : }
    4002              : 
    4003              : int
    4004          221 : pattern1034 (rtx x1, machine_mode i1)
    4005              : {
    4006          221 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4007          221 :   rtx x2;
    4008          221 :   int res ATTRIBUTE_UNUSED;
    4009          221 :   if (!register_operand (operands[0], i1)
    4010          221 :       || GET_MODE (x1) != i1)
    4011              :     return -1;
    4012          213 :   x2 = XVECEXP (x1, 0, 0);
    4013          213 :   if (GET_MODE (x2) != i1
    4014          213 :       || !register_operand (operands[1], i1))
    4015            7 :     return -1;
    4016              :   return 0;
    4017              : }
    4018              : 
    4019              : int
    4020          213 : pattern1039 (rtx x1, machine_mode i1, machine_mode i2)
    4021              : {
    4022          213 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4023          213 :   rtx x2;
    4024          213 :   int res ATTRIBUTE_UNUSED;
    4025          213 :   x2 = XVECEXP (x1, 0, 0);
    4026          213 :   if (GET_MODE (x2) != i2
    4027          213 :       || !register_operand (operands[0], i2)
    4028          209 :       || GET_MODE (x1) != i2
    4029          209 :       || !register_operand (operands[1], i1)
    4030          418 :       || !const48_operand (operands[2], E_SImode))
    4031            8 :     return -1;
    4032              :   return 0;
    4033              : }
    4034              : 
    4035              : int
    4036        29472 : pattern1045 (rtx x1, machine_mode i1)
    4037              : {
    4038        29472 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4039        29472 :   int res ATTRIBUTE_UNUSED;
    4040        29472 :   if (!register_operand (operands[0], i1)
    4041        28607 :       || GET_MODE (x1) != i1
    4042        28607 :       || !register_operand (operands[1], i1)
    4043        21425 :       || !vector_operand (operands[2], i1)
    4044        47976 :       || !register_operand (operands[3], i1))
    4045        13868 :     return -1;
    4046              :   return 0;
    4047              : }
    4048              : 
    4049              : int
    4050           26 : pattern1052 (rtx x1)
    4051              : {
    4052           26 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4053           26 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4054           26 :   rtx x10;
    4055           26 :   int res ATTRIBUTE_UNUSED;
    4056           26 :   x2 = XEXP (x1, 0);
    4057           26 :   x3 = XEXP (x2, 0);
    4058           26 :   x4 = XEXP (x3, 0);
    4059           26 :   x5 = XEXP (x4, 1);
    4060           26 :   if (GET_CODE (x5) != CONST_VECTOR
    4061           26 :       || XVECLEN (x5, 0) != 4
    4062           26 :       || GET_MODE (x5) != E_V4SImode)
    4063              :     return -1;
    4064           26 :   x6 = XVECEXP (x5, 0, 0);
    4065           26 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4066              :     return -1;
    4067           26 :   x7 = XVECEXP (x5, 0, 1);
    4068           26 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4069              :     return -1;
    4070           26 :   x8 = XVECEXP (x5, 0, 2);
    4071           26 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4072              :     return -1;
    4073           26 :   x9 = XVECEXP (x5, 0, 3);
    4074           26 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4075              :     return -1;
    4076           26 :   x10 = XEXP (x4, 2);
    4077           26 :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    4078           26 :       || GET_MODE (x4) != E_V4SImode)
    4079              :     return -1;
    4080           26 :   return pattern698 (x1); /* [-1, 2] */
    4081              : }
    4082              : 
    4083              : int
    4084          428 : pattern1063 ()
    4085              : {
    4086          428 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4087          428 :   int res ATTRIBUTE_UNUSED;
    4088          428 :   switch (GET_MODE (operands[3]))
    4089              :     {
    4090           87 :     case E_HImode:
    4091           87 :       if (!extract_high_operator (operands[3], E_HImode)
    4092           87 :           || !extract_high_operator (operands[4], E_HImode))
    4093            2 :         return -1;
    4094              :       return 0;
    4095              : 
    4096          247 :     case E_SImode:
    4097          247 :       if (!extract_high_operator (operands[3], E_SImode)
    4098          247 :           || !extract_high_operator (operands[4], E_SImode))
    4099          126 :         return -1;
    4100              :       return 1;
    4101              : 
    4102           94 :     case E_DImode:
    4103           94 :       if (!extract_high_operator (operands[3], E_DImode)
    4104           94 :           || !extract_high_operator (operands[4], E_DImode))
    4105           41 :         return -1;
    4106              :       return 2;
    4107              : 
    4108              :     default:
    4109              :       return -1;
    4110              :     }
    4111              : }
    4112              : 
    4113              : int
    4114       261775 : pattern1068 (rtx x1, rtx_code i1)
    4115              : {
    4116       261775 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4117       261775 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4118       261775 :   rtx x10, x11, x12;
    4119       261775 :   int res ATTRIBUTE_UNUSED;
    4120       261775 :   x2 = XEXP (x1, 0);
    4121       261775 :   x3 = XEXP (x2, 1);
    4122       261775 :   switch (GET_CODE (x3))
    4123              :     {
    4124        20957 :     case AND:
    4125        20957 :       if (GET_MODE (x3) != E_QImode)
    4126              :         return -1;
    4127        20957 :       x4 = XEXP (x3, 1);
    4128        20957 :       if (GET_CODE (x4) != CONST_INT)
    4129              :         return -1;
    4130        20957 :       x5 = XEXP (x1, 1);
    4131        20957 :       if (GET_CODE (x5) != SUBREG
    4132        20957 :           || maybe_ne (SUBREG_BYTE (x5), 0))
    4133              :         return -1;
    4134        20914 :       x6 = XEXP (x5, 0);
    4135        20914 :       if (GET_CODE (x6) != i1)
    4136              :         return -1;
    4137        20914 :       x7 = XEXP (x6, 0);
    4138        20914 :       if (GET_CODE (x7) != ZERO_EXTEND)
    4139              :         return -1;
    4140        20914 :       x8 = XEXP (x6, 1);
    4141        20914 :       if (GET_CODE (x8) != MINUS
    4142        20914 :           || GET_MODE (x8) != E_QImode)
    4143              :         return -1;
    4144        20914 :       x9 = XEXP (x8, 0);
    4145        20914 :       if (GET_CODE (x9) != CONST_INT)
    4146              :         return -1;
    4147        20914 :       x10 = XEXP (x8, 1);
    4148        20914 :       if (GET_CODE (x10) != AND
    4149        20914 :           || GET_MODE (x10) != E_QImode)
    4150              :         return -1;
    4151        20914 :       x11 = XEXP (x10, 1);
    4152        20914 :       if (GET_CODE (x11) != CONST_INT)
    4153              :         return -1;
    4154        20914 :       x12 = XEXP (x3, 0);
    4155        20914 :       if (!nonmemory_operand (x12, E_QImode))
    4156              :         return -1;
    4157        20910 :       switch (XWINT (x4, 0))
    4158              :         {
    4159        12332 :         case 63L:
    4160        12332 :           if (XWINT (x9, 0) != 64L
    4161        12332 :               || XWINT (x11, 0) != 63L
    4162        24664 :               || pattern1067 (x1, 
    4163              : E_DImode, 
    4164              : E_TImode) != 0)
    4165           32 :             return -1;
    4166              :           return 0;
    4167              : 
    4168         8575 :         case 31L:
    4169         8575 :           if (XWINT (x9, 0) != 32L
    4170         8575 :               || XWINT (x11, 0) != 31L)
    4171              :             return -1;
    4172              :           return 1;
    4173              : 
    4174              :         default:
    4175              :           return -1;
    4176              :         }
    4177              : 
    4178              :     case CONST_INT:
    4179              :     case CONST_WIDE_INT:
    4180              :     case CONST_POLY_INT:
    4181              :     case CONST_FIXED:
    4182              :     case CONST_DOUBLE:
    4183              :     case CONST_VECTOR:
    4184              :     case CONST:
    4185              :     case REG:
    4186              :     case SUBREG:
    4187              :     case LABEL_REF:
    4188              :     case SYMBOL_REF:
    4189              :     case HIGH:
    4190              :       return 2;
    4191              : 
    4192              :     default:
    4193              :       return -1;
    4194              :     }
    4195              : }
    4196              : 
    4197              : int
    4198           92 : pattern1088 (rtx x1, machine_mode i1, machine_mode i2)
    4199              : {
    4200           92 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4201           92 :   rtx x2;
    4202           92 :   int res ATTRIBUTE_UNUSED;
    4203           92 :   if (!memory_operand (operands[0], i2)
    4204           92 :       || GET_MODE (x1) != i2)
    4205              :     return -1;
    4206           88 :   x2 = XVECEXP (x1, 0, 0);
    4207           88 :   if (GET_MODE (x2) != i2
    4208           88 :       || !register_operand (operands[1], i1))
    4209            0 :     return -1;
    4210              :   return 0;
    4211              : }
    4212              : 
    4213              : int
    4214        29289 : pattern1091 (rtx x1)
    4215              : {
    4216        29289 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4217        29289 :   rtx x2, x3, x4, x5;
    4218        29289 :   int res ATTRIBUTE_UNUSED;
    4219        29289 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    4220              :     return -1;
    4221        27158 :   x2 = XEXP (x1, 1);
    4222        27158 :   x3 = XEXP (x2, 1);
    4223        27158 :   operands[1] = x3;
    4224        27158 :   if (!nonimmediate_operand (operands[1], E_QImode))
    4225              :     return -1;
    4226        15547 :   x4 = XEXP (x1, 0);
    4227        15547 :   switch (GET_CODE (x4))
    4228              :     {
    4229           30 :     case STRICT_LOW_PART:
    4230           30 :       x5 = XEXP (x4, 0);
    4231           30 :       operands[0] = x5;
    4232           30 :       if (!register_operand (operands[0], E_QImode))
    4233              :         return -1;
    4234           30 :       return pattern1090 (); /* [-1, 2] */
    4235              : 
    4236        15517 :     case REG:
    4237        15517 :     case SUBREG:
    4238        15517 :     case MEM:
    4239        15517 :       operands[0] = x4;
    4240        15517 :       if (!nonimmediate_operand (operands[0], E_QImode))
    4241              :         return -1;
    4242        15517 :       res = pattern1090 ();
    4243        15517 :       if (res >= 0)
    4244          156 :         return res + 3; /* [3, 5] */
    4245              :       return -1;
    4246              : 
    4247              :     default:
    4248              :       return -1;
    4249              :     }
    4250              : }
    4251              : 
    4252              : int
    4253          719 : pattern1105 (rtx x1, machine_mode i1)
    4254              : {
    4255          719 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4256          719 :   int res ATTRIBUTE_UNUSED;
    4257          719 :   if (!nonimmediate_operand (operands[0], i1)
    4258          719 :       || GET_MODE (x1) != i1
    4259          719 :       || !ix86_carry_flag_unset_operator (operands[2], i1)
    4260         1179 :       || !nonimmediate_operand (operands[1], i1))
    4261          507 :     return -1;
    4262              :   return 0;
    4263              : }
    4264              : 
    4265              : int
    4266         1056 : pattern1113 (rtx x1, machine_mode i1, machine_mode i2)
    4267              : {
    4268         1056 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4269         1056 :   rtx x2;
    4270         1056 :   int res ATTRIBUTE_UNUSED;
    4271         1056 :   if (!register_operand (operands[0], i2)
    4272         1056 :       || GET_MODE (x1) != i2)
    4273              :     return -1;
    4274         1030 :   x2 = XEXP (x1, 0);
    4275         1030 :   if (GET_MODE (x2) != i2
    4276         1030 :       || !register_operand (operands[1], i1)
    4277         2060 :       || !nonimmediate_operand (operands[2], i1))
    4278            0 :     return -1;
    4279              :   return 0;
    4280              : }
    4281              : 
    4282              : int
    4283          845 : pattern1119 (rtx x1, machine_mode i1)
    4284              : {
    4285          845 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4286          845 :   rtx x2;
    4287          845 :   int res ATTRIBUTE_UNUSED;
    4288          845 :   if (!register_operand (operands[0], i1)
    4289          845 :       || GET_MODE (x1) != i1)
    4290              :     return -1;
    4291          821 :   x2 = XVECEXP (x1, 0, 0);
    4292          821 :   switch (GET_MODE (x2))
    4293              :     {
    4294           29 :     case E_HFmode:
    4295           29 :       if (!register_operand (operands[1], E_V8HFmode))
    4296              :         return -1;
    4297              :       return 0;
    4298              : 
    4299          437 :     case E_SFmode:
    4300          437 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    4301              :         return -1;
    4302              :       return 1;
    4303              : 
    4304          355 :     case E_DFmode:
    4305          355 :       if (!nonimmediate_operand (operands[1], E_V2DFmode))
    4306              :         return -1;
    4307              :       return 2;
    4308              : 
    4309              :     default:
    4310              :       return -1;
    4311              :     }
    4312              : }
    4313              : 
    4314              : int
    4315          936 : pattern1124 (rtx x1)
    4316              : {
    4317          936 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4318          936 :   rtx x2;
    4319          936 :   int res ATTRIBUTE_UNUSED;
    4320          936 :   if (!register_operand (operands[0], E_V2DImode)
    4321          936 :       || GET_MODE (x1) != E_V2DImode)
    4322              :     return -1;
    4323          899 :   x2 = XEXP (x1, 0);
    4324          899 :   if (GET_MODE (x2) != E_V2DImode
    4325          899 :       || !nonimm_or_0_operand (operands[2], E_V2DImode)
    4326         1786 :       || !register_operand (operands[3], E_QImode))
    4327           38 :     return -1;
    4328          861 :   switch (GET_MODE (operands[1]))
    4329              :     {
    4330              :     case E_V8HFmode:
    4331              :       return 0;
    4332              : 
    4333          444 :     case E_V2DFmode:
    4334          444 :       return 1;
    4335              : 
    4336              :     default:
    4337              :       return -1;
    4338              :     }
    4339              : }
    4340              : 
    4341              : int
    4342         3059 : pattern1127 (rtx x1, machine_mode i1, machine_mode i2)
    4343              : {
    4344         3059 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4345         3059 :   rtx x2;
    4346         3059 :   int res ATTRIBUTE_UNUSED;
    4347         3059 :   if (!register_operand (operands[0], i2)
    4348         3059 :       || GET_MODE (x1) != i2)
    4349              :     return -1;
    4350         2944 :   x2 = XEXP (x1, 0);
    4351         2944 :   if (GET_MODE (x2) != i2
    4352         2944 :       || !nonimmediate_operand (operands[1], i2)
    4353         2896 :       || !register_operand (operands[2], i2)
    4354         2895 :       || !nonimm_or_0_operand (operands[3], i2)
    4355         5749 :       || !register_operand (operands[4], i1))
    4356          602 :     return -1;
    4357              :   return 0;
    4358              : }
    4359              : 
    4360              : int
    4361         2760 : pattern1133 (rtx x1)
    4362              : {
    4363         2760 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4364         2760 :   rtx x2, x3, x4, x5;
    4365         2760 :   int res ATTRIBUTE_UNUSED;
    4366         2760 :   x2 = XEXP (x1, 0);
    4367         2760 :   x3 = XEXP (x2, 1);
    4368         2760 :   operands[4] = x3;
    4369         2760 :   x4 = XEXP (x2, 2);
    4370         2760 :   operands[5] = x4;
    4371         2760 :   if (!register_operand (operands[5], E_QImode))
    4372              :     return -1;
    4373         2707 :   x5 = XEXP (x1, 1);
    4374         2707 :   if (!rtx_equal_p (x5, operands[1]))
    4375              :     return -1;
    4376         2707 :   switch (GET_MODE (operands[0]))
    4377              :     {
    4378          825 :     case E_V8HFmode:
    4379          825 :       return pattern1132 (x1, 
    4380          825 : E_V8HFmode); /* [-1, 0] */
    4381              : 
    4382          935 :     case E_V4SFmode:
    4383          935 :       if (pattern1132 (x1, 
    4384              : E_V4SFmode) != 0)
    4385              :         return -1;
    4386              :       return 1;
    4387              : 
    4388          947 :     case E_V2DFmode:
    4389          947 :       if (pattern1132 (x1, 
    4390              : E_V2DFmode) != 0)
    4391              :         return -1;
    4392              :       return 2;
    4393              : 
    4394              :     default:
    4395              :       return -1;
    4396              :     }
    4397              : }
    4398              : 
    4399              : int
    4400          958 : pattern1146 (rtx x1)
    4401              : {
    4402          958 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4403          958 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4404          958 :   rtx x10, x11;
    4405          958 :   int res ATTRIBUTE_UNUSED;
    4406          958 :   x2 = XVECEXP (x1, 0, 0);
    4407          958 :   x3 = XEXP (x2, 2);
    4408          958 :   if (XWINT (x3, 0) != 1L)
    4409              :     return -1;
    4410          958 :   x4 = XEXP (x2, 0);
    4411          958 :   x5 = XEXP (x4, 0);
    4412          958 :   x6 = XVECEXP (x5, 0, 0);
    4413          958 :   operands[1] = x6;
    4414          958 :   x7 = XVECEXP (x5, 0, 1);
    4415          958 :   operands[2] = x7;
    4416          958 :   x8 = XEXP (x4, 1);
    4417          958 :   operands[3] = x8;
    4418          958 :   x9 = XEXP (x4, 2);
    4419          958 :   operands[4] = x9;
    4420          958 :   if (!register_operand (operands[4], E_QImode))
    4421              :     return -1;
    4422          940 :   x10 = XVECEXP (x1, 0, 1);
    4423          940 :   operands[5] = x10;
    4424          940 :   if (!const48_operand (operands[5], E_SImode))
    4425              :     return -1;
    4426          940 :   x11 = XEXP (x2, 1);
    4427          940 :   if (!rtx_equal_p (x11, operands[1]))
    4428              :     return -1;
    4429          940 :   switch (GET_MODE (operands[0]))
    4430              :     {
    4431          520 :     case E_V8HFmode:
    4432          520 :       return pattern1145 (x1, 
    4433          520 : E_V8HFmode); /* [-1, 0] */
    4434              : 
    4435          210 :     case E_V4SFmode:
    4436          210 :       if (pattern1145 (x1, 
    4437              : E_V4SFmode) != 0)
    4438              :         return -1;
    4439              :       return 1;
    4440              : 
    4441          210 :     case E_V2DFmode:
    4442          210 :       if (pattern1145 (x1, 
    4443              : E_V2DFmode) != 0)
    4444              :         return -1;
    4445              :       return 2;
    4446              : 
    4447              :     default:
    4448              :       return -1;
    4449              :     }
    4450              : }
    4451              : 
    4452              : int
    4453         3630 : pattern1164 (rtx x1, machine_mode i1)
    4454              : {
    4455         3630 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4456         3630 :   int res ATTRIBUTE_UNUSED;
    4457         3630 :   if (!memory_operand (operands[0], i1)
    4458         3630 :       || GET_MODE (x1) != i1
    4459         7260 :       || !memory_operand (operands[1], i1))
    4460            0 :     return -1;
    4461         3630 :   switch (GET_MODE (operands[2]))
    4462              :     {
    4463           16 :     case E_SImode:
    4464           16 :       if (!register_operand (operands[2], E_SImode))
    4465              :         return -1;
    4466              :       return 0;
    4467              : 
    4468         3614 :     case E_DImode:
    4469         3614 :       if (!register_operand (operands[2], E_DImode))
    4470              :         return -1;
    4471              :       return 1;
    4472              : 
    4473              :     default:
    4474              :       return -1;
    4475              :     }
    4476              : }
    4477              : 
    4478              : int
    4479          145 : pattern1172 (rtx x1)
    4480              : {
    4481          145 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4482          145 :   rtx x2, x3, x4, x5;
    4483          145 :   int res ATTRIBUTE_UNUSED;
    4484          145 :   x2 = XEXP (x1, 0);
    4485          145 :   if (GET_MODE (x2) != E_SImode)
    4486              :     return -1;
    4487          145 :   x3 = XEXP (x2, 0);
    4488          145 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 31])
    4489              :     return -1;
    4490          121 :   x4 = XEXP (x2, 1);
    4491          121 :   if (GET_CODE (x4) != CLZ
    4492          121 :       || GET_MODE (x4) != E_SImode)
    4493              :     return -1;
    4494          121 :   x5 = XEXP (x1, 1);
    4495          121 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 31])
    4496            0 :     return -1;
    4497              :   return 0;
    4498              : }
    4499              : 
    4500              : int
    4501        21125 : pattern1180 (rtx x1, machine_mode i1, machine_mode i2)
    4502              : {
    4503        21125 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4504        21125 :   rtx x2;
    4505        21125 :   int res ATTRIBUTE_UNUSED;
    4506        21125 :   if (!nonimmediate_operand (operands[0], i2)
    4507        21077 :       || GET_MODE (x1) != i2
    4508        42202 :       || !nonimmediate_operand (operands[1], i2))
    4509         1022 :     return -1;
    4510        20103 :   x2 = XEXP (x1, 1);
    4511        20103 :   if (GET_MODE (x2) != i2
    4512        20103 :       || !nonimmediate_operand (operands[2], i1))
    4513         9065 :     return -1;
    4514              :   return 0;
    4515              : }
    4516              : 
    4517              : int
    4518        14892 : pattern1186 (rtx x1)
    4519              : {
    4520        14892 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4521        14892 :   rtx x2, x3;
    4522        14892 :   int res ATTRIBUTE_UNUSED;
    4523        14892 :   switch (XVECLEN (x1, 0))
    4524              :     {
    4525        13969 :     case 2:
    4526        13969 :       if (XINT (x1, 1) != 21)
    4527              :         return -1;
    4528        13969 :       x2 = XVECEXP (x1, 0, 1);
    4529        13969 :       if (GET_CODE (x2) != REG
    4530        13969 :           || REGNO (x2) != 7)
    4531            0 :         return -1;
    4532              :       return 0;
    4533              : 
    4534          923 :     case 1:
    4535          923 :       if (XINT (x1, 1) != 22)
    4536              :         return -1;
    4537          923 :       x3 = XVECEXP (x1, 0, 0);
    4538          923 :       if (GET_CODE (x3) != REG
    4539          923 :           || REGNO (x3) != 7)
    4540            0 :         return -1;
    4541              :       return 1;
    4542              : 
    4543              :     default:
    4544              :       return -1;
    4545              :     }
    4546              : }
    4547              : 
    4548              : int
    4549        24232 : pattern1196 (rtx x1)
    4550              : {
    4551        24232 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4552        24232 :   rtx x2, x3, x4, x5;
    4553        24232 :   int res ATTRIBUTE_UNUSED;
    4554        24232 :   if (!nonmemory_operand (operands[2], E_QImode))
    4555              :     return -1;
    4556        24077 :   x2 = XEXP (x1, 0);
    4557        24077 :   if (GET_CODE (x2) != STRICT_LOW_PART)
    4558              :     return -1;
    4559           12 :   x3 = XEXP (x2, 0);
    4560           12 :   operands[0] = x3;
    4561           12 :   x4 = XEXP (x1, 1);
    4562           12 :   x5 = XEXP (x4, 0);
    4563           12 :   operands[1] = x5;
    4564           12 :   return pattern379 (x4); /* [-1, 1] */
    4565              : }
    4566              : 
    4567              : int
    4568            6 : pattern1202 (rtx x1, machine_mode i1, machine_mode i2)
    4569              : {
    4570            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4571            6 :   rtx x2;
    4572            6 :   int res ATTRIBUTE_UNUSED;
    4573            6 :   if (!memory_operand (operands[0], i2)
    4574            6 :       || GET_MODE (x1) != i2)
    4575              :     return -1;
    4576            6 :   x2 = XEXP (x1, 0);
    4577            6 :   if (GET_MODE (x2) != i2
    4578            6 :       || !nonmemory_operand (operands[1], i1))
    4579            0 :     return -1;
    4580              :   return 0;
    4581              : }
    4582              : 
    4583              : int
    4584        39063 : pattern1209 (rtx x1, machine_mode i1)
    4585              : {
    4586        39063 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4587        39063 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4588        39063 :   rtx x10, x11, x12;
    4589        39063 :   int res ATTRIBUTE_UNUSED;
    4590        39063 :   x2 = XVECEXP (x1, 0, 0);
    4591        39063 :   x3 = XEXP (x2, 1);
    4592        39063 :   if (GET_MODE (x3) != i1)
    4593              :     return -1;
    4594        37566 :   x4 = XEXP (x3, 0);
    4595        37566 :   if (GET_CODE (x4) != PLUS
    4596           24 :       || GET_MODE (x4) != i1)
    4597              :     return -1;
    4598           24 :   x5 = XEXP (x4, 0);
    4599           24 :   if (!ix86_carry_flag_operator (x5, i1))
    4600              :     return -1;
    4601           24 :   operands[4] = x5;
    4602           24 :   x6 = XEXP (x5, 1);
    4603           24 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4604              :     return -1;
    4605           24 :   x7 = XVECEXP (x1, 0, 1);
    4606           24 :   if (GET_CODE (x7) != CLOBBER)
    4607              :     return -1;
    4608           24 :   x8 = XEXP (x7, 0);
    4609           24 :   if (GET_CODE (x8) != REG
    4610           24 :       || REGNO (x8) != 17
    4611           48 :       || GET_MODE (x8) != E_CCmode)
    4612              :     return -1;
    4613           24 :   x9 = XEXP (x5, 0);
    4614           24 :   operands[3] = x9;
    4615           24 :   if (!flags_reg_operand (operands[3], E_VOIDmode))
    4616              :     return -1;
    4617           24 :   x10 = XEXP (x3, 1);
    4618           24 :   operands[2] = x10;
    4619           24 :   if (!memory_operand (operands[2], i1))
    4620              :     return -1;
    4621            6 :   x11 = XEXP (x4, 1);
    4622            6 :   if (!rtx_equal_p (x11, operands[0]))
    4623              :     return -1;
    4624            6 :   x12 = XEXP (x2, 0);
    4625            6 :   return pattern1208 (x12, 
    4626            6 : i1); /* [-1, 1] */
    4627              : }
    4628              : 
    4629              : int
    4630         1203 : pattern1219 (rtx x1, machine_mode i1)
    4631              : {
    4632         1203 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4633         1203 :   int res ATTRIBUTE_UNUSED;
    4634         1203 :   if (!register_operand (operands[0], i1)
    4635         1203 :       || GET_MODE (x1) != i1)
    4636              :     return -1;
    4637          872 :   return pattern1218 (); /* [-1, 2] */
    4638              : }
    4639              : 
    4640              : int
    4641          198 : pattern1224 (rtx x1, machine_mode i1)
    4642              : {
    4643          198 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4644          198 :   int res ATTRIBUTE_UNUSED;
    4645          198 :   if (!nonimmediate_operand (operands[0], i1)
    4646          198 :       || GET_MODE (x1) != i1
    4647          198 :       || !nonimmediate_operand (operands[1], i1)
    4648          384 :       || !ix86_carry_flag_unset_operator (operands[2], i1))
    4649           41 :     return -1;
    4650              :   return 0;
    4651              : }
    4652              : 
    4653              : int
    4654          978 : pattern1229 (rtx x1, machine_mode i1)
    4655              : {
    4656          978 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4657          978 :   rtx x2;
    4658          978 :   int res ATTRIBUTE_UNUSED;
    4659          978 :   if (!register_operand (operands[0], i1)
    4660          978 :       || GET_MODE (x1) != i1)
    4661              :     return -1;
    4662          904 :   x2 = XEXP (x1, 0);
    4663          904 :   if (GET_MODE (x2) != i1
    4664          904 :       || !nonimmediate_operand (operands[2], i1)
    4665         1794 :       || !register_operand (operands[1], i1))
    4666          123 :     return -1;
    4667              :   return 0;
    4668              : }
    4669              : 
    4670              : int
    4671         1812 : pattern1235 (rtx x1)
    4672              : {
    4673         1812 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4674         1812 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4675         1812 :   int res ATTRIBUTE_UNUSED;
    4676         1812 :   x2 = XEXP (x1, 0);
    4677         1812 :   x3 = XEXP (x2, 0);
    4678         1812 :   x4 = XEXP (x3, 0);
    4679         1812 :   x5 = XEXP (x4, 0);
    4680         1812 :   x6 = XEXP (x5, 1);
    4681         1812 :   if (GET_CODE (x6) != PARALLEL
    4682         1812 :       || XVECLEN (x6, 0) != 1)
    4683              :     return -1;
    4684         1812 :   x7 = XVECEXP (x6, 0, 0);
    4685         1812 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4686              :     return -1;
    4687         1812 :   x8 = XEXP (x1, 2);
    4688         1812 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    4689            0 :     return -1;
    4690              :   return 0;
    4691              : }
    4692              : 
    4693              : int
    4694         1904 : pattern1242 (rtx x1)
    4695              : {
    4696         1904 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4697         1904 :   rtx x2, x3, x4;
    4698         1904 :   int res ATTRIBUTE_UNUSED;
    4699         1904 :   x2 = XVECEXP (x1, 0, 2);
    4700         1904 :   x3 = XEXP (x2, 0);
    4701         1904 :   x4 = XEXP (x3, 1);
    4702         1904 :   operands[4] = x4;
    4703         1904 :   switch (GET_MODE (operands[0]))
    4704              :     {
    4705         1462 :     case E_V16QImode:
    4706         1462 :       if (!register_operand (operands[0], E_V16QImode)
    4707         1462 :           || GET_MODE (x1) != E_V16QImode
    4708         1462 :           || !vector_operand (operands[1], E_V16QImode)
    4709         1204 :           || !register_operand (operands[2], E_V16QImode)
    4710         2044 :           || GET_MODE (x2) != E_V16QImode)
    4711          880 :         return -1;
    4712          582 :       switch (GET_MODE (x3))
    4713              :         {
    4714          272 :         case E_V4SImode:
    4715          272 :           if (!register_operand (operands[3], E_V4SImode)
    4716          272 :               || !vector_all_ones_operand (operands[4], E_V4SImode))
    4717          272 :             return -1;
    4718              :           return 0;
    4719              : 
    4720          303 :         case E_V2DImode:
    4721          303 :           if (!register_operand (operands[3], E_V2DImode)
    4722          303 :               || !vector_all_ones_operand (operands[4], E_V2DImode))
    4723          303 :             return -1;
    4724              :           return 1;
    4725              : 
    4726              :         default:
    4727              :           return -1;
    4728              :         }
    4729              : 
    4730          190 :     case E_V32QImode:
    4731          190 :       if (!register_operand (operands[0], E_V32QImode)
    4732          190 :           || GET_MODE (x1) != E_V32QImode
    4733          190 :           || !vector_operand (operands[1], E_V32QImode)
    4734          126 :           || !register_operand (operands[2], E_V32QImode)
    4735          284 :           || GET_MODE (x2) != E_V32QImode)
    4736           96 :         return -1;
    4737           94 :       switch (GET_MODE (x3))
    4738              :         {
    4739           64 :         case E_V8SImode:
    4740           64 :           if (!register_operand (operands[3], E_V8SImode)
    4741           64 :               || !vector_all_ones_operand (operands[4], E_V8SImode))
    4742           64 :             return -1;
    4743              :           return 2;
    4744              : 
    4745           29 :         case E_V4DImode:
    4746           29 :           if (!register_operand (operands[3], E_V4DImode)
    4747           29 :               || !vector_all_ones_operand (operands[4], E_V4DImode))
    4748           29 :             return -1;
    4749              :           return 3;
    4750              : 
    4751              :         default:
    4752              :           return -1;
    4753              :         }
    4754              : 
    4755              :     default:
    4756              :       return -1;
    4757              :     }
    4758              : }
    4759              : 
    4760              : int
    4761           50 : pattern1261 (rtx x1)
    4762              : {
    4763           50 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4764           50 :   rtx x2, x3;
    4765           50 :   int res ATTRIBUTE_UNUSED;
    4766           50 :   switch (GET_MODE (operands[0]))
    4767              :     {
    4768           40 :     case E_SImode:
    4769           40 :       if (!register_operand (operands[0], E_SImode)
    4770           40 :           || GET_MODE (x1) != E_SImode)
    4771              :         return -1;
    4772           40 :       x2 = XEXP (x1, 0);
    4773           40 :       if (GET_MODE (x2) != E_SImode)
    4774              :         return -1;
    4775           40 :       x3 = XEXP (x2, 0);
    4776           40 :       if (GET_MODE (x3) != E_SImode
    4777           40 :           || !nonimmediate_operand (operands[1], E_SImode))
    4778           10 :         return -1;
    4779              :       return 0;
    4780              : 
    4781           10 :     case E_DImode:
    4782           10 :       if (!register_operand (operands[0], E_DImode)
    4783           10 :           || GET_MODE (x1) != E_DImode)
    4784              :         return -1;
    4785           10 :       x2 = XEXP (x1, 0);
    4786           10 :       if (GET_MODE (x2) != E_DImode)
    4787              :         return -1;
    4788           10 :       x3 = XEXP (x2, 0);
    4789           10 :       if (GET_MODE (x3) != E_DImode
    4790           10 :           || !nonimmediate_operand (operands[1], E_DImode))
    4791            0 :         return -1;
    4792              :       return 1;
    4793              : 
    4794              :     default:
    4795              :       return -1;
    4796              :     }
    4797              : }
    4798              : 
    4799              : int
    4800       120993 : pattern1275 (rtx x1, machine_mode i1)
    4801              : {
    4802       120993 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4803       120993 :   rtx x2, x3, x4, x5, x6;
    4804       120993 :   int res ATTRIBUTE_UNUSED;
    4805       120993 :   if (peep2_current_count < 4
    4806       112493 :       || GET_CODE (x1) != SET)
    4807              :     return -1;
    4808       106591 :   x2 = XEXP (x1, 1);
    4809       106591 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4810              :     return -1;
    4811        55095 :   x3 = XEXP (x1, 0);
    4812        55095 :   operands[3] = x3;
    4813        55095 :   if (!memory_operand (operands[3], i1))
    4814              :     return -1;
    4815        47324 :   x4 = PATTERN (peep2_next_insn (3));
    4816        47324 :   if (GET_CODE (x4) != SET)
    4817              :     return -1;
    4818        45085 :   x5 = XEXP (x4, 1);
    4819        45085 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4820              :     return -1;
    4821        27435 :   x6 = XEXP (x4, 0);
    4822        27435 :   operands[4] = x6;
    4823        27435 :   if (!memory_operand (operands[4], i1))
    4824              :     return -1;
    4825              :   return 0;
    4826              : }
    4827              : 
    4828              : int
    4829         5042 : pattern1285 (rtx x1, machine_mode i1)
    4830              : {
    4831         5042 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4832         5042 :   rtx x2;
    4833         5042 :   int res ATTRIBUTE_UNUSED;
    4834         5042 :   if (!nonimmediate_operand (operands[0], i1)
    4835         5042 :       || GET_MODE (x1) != i1)
    4836              :     return -1;
    4837         5042 :   x2 = XEXP (x1, 0);
    4838         5042 :   if (GET_MODE (x2) != i1
    4839         5042 :       || !nonimmediate_operand (operands[1], i1)
    4840         4027 :       || !ix86_carry_flag_operator (operands[4], i1)
    4841         9069 :       || !x86_64_general_operand (operands[2], i1))
    4842         1729 :     return -1;
    4843              :   return 0;
    4844              : }
    4845              : 
    4846              : int
    4847          276 : pattern1293 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4848              : {
    4849          276 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4850          276 :   rtx x2;
    4851          276 :   int res ATTRIBUTE_UNUSED;
    4852          276 :   if (!register_operand (operands[0], i1)
    4853          276 :       || GET_MODE (x1) != i1)
    4854              :     return -1;
    4855          264 :   x2 = XEXP (x1, 0);
    4856          264 :   if (GET_MODE (x2) != i1
    4857          264 :       || !register_operand (operands[1], i1)
    4858          264 :       || !register_operand (operands[2], i2)
    4859          264 :       || !nonimmediate_operand (operands[3], i2)
    4860          264 :       || !const0_operand (operands[4], i1)
    4861          528 :       || !register_operand (operands[5], i3))
    4862            3 :     return -1;
    4863              :   return 0;
    4864              : }
    4865              : 
    4866              : int
    4867         1058 : pattern1302 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4868              : {
    4869         1058 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4870         1058 :   rtx x2, x3;
    4871         1058 :   int res ATTRIBUTE_UNUSED;
    4872         1058 :   if (!register_operand (operands[0], i1)
    4873         1058 :       || GET_MODE (x1) != i1)
    4874              :     return -1;
    4875         1046 :   x2 = XEXP (x1, 0);
    4876         1046 :   if (GET_MODE (x2) != i1)
    4877              :     return -1;
    4878         1046 :   x3 = XEXP (x2, 0);
    4879         1046 :   if (GET_MODE (x3) != i2
    4880         1046 :       || !nonimmediate_operand (operands[1], i1)
    4881         1046 :       || !nonimm_or_0_operand (operands[2], i1)
    4882         2088 :       || !register_operand (operands[3], i3))
    4883            5 :     return -1;
    4884              :   return 0;
    4885              : }
    4886              : 
    4887              : int
    4888         1920 : pattern1311 (rtx x1, machine_mode i1, machine_mode i2)
    4889              : {
    4890         1920 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4891         1920 :   rtx x2, x3;
    4892         1920 :   int res ATTRIBUTE_UNUSED;
    4893         1920 :   if (!register_operand (operands[0], i1)
    4894         1920 :       || GET_MODE (x1) != i1)
    4895              :     return -1;
    4896         1803 :   x2 = XEXP (x1, 0);
    4897         1803 :   if (GET_MODE (x2) != i1)
    4898              :     return -1;
    4899         1803 :   x3 = XEXP (x2, 0);
    4900         1803 :   if (GET_MODE (x3) != i1
    4901         1803 :       || !vector_operand (operands[2], i1)
    4902         3606 :       || !register_operand (operands[4], i2))
    4903            0 :     return -1;
    4904              :   return 0;
    4905              : }
    4906              : 
    4907              : int
    4908         2854 : pattern1318 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4909              : {
    4910         2854 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4911         2854 :   rtx x2, x3;
    4912         2854 :   int res ATTRIBUTE_UNUSED;
    4913         2854 :   if (!register_operand (operands[0], i2)
    4914         2854 :       || GET_MODE (x1) != i2)
    4915              :     return -1;
    4916         2744 :   x2 = XVECEXP (x1, 0, 0);
    4917         2744 :   if (GET_MODE (x2) != i2)
    4918              :     return -1;
    4919         2744 :   x3 = XEXP (x2, 0);
    4920         2744 :   if (GET_MODE (x3) != i2
    4921         2744 :       || !register_operand (operands[1], i3)
    4922         2712 :       || !nonimm_or_0_operand (operands[2], i2)
    4923         5420 :       || !register_operand (operands[3], i1))
    4924          152 :     return -1;
    4925              :   return 0;
    4926              : }
    4927              : 
    4928              : int
    4929          972 : pattern1326 (rtx x1)
    4930              : {
    4931          972 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4932          972 :   rtx x2, x3;
    4933          972 :   int res ATTRIBUTE_UNUSED;
    4934          972 :   if (!register_operand (operands[0], E_V16HFmode)
    4935          972 :       || GET_MODE (x1) != E_V16HFmode)
    4936              :     return -1;
    4937          944 :   x2 = XVECEXP (x1, 0, 0);
    4938          944 :   if (GET_MODE (x2) != E_V16HFmode)
    4939              :     return -1;
    4940          944 :   x3 = XEXP (x2, 0);
    4941          944 :   if (GET_MODE (x3) != E_V16HFmode
    4942          944 :       || !nonimm_or_0_operand (operands[2], E_V16HFmode)
    4943         1888 :       || !register_operand (operands[3], E_HImode))
    4944           20 :     return -1;
    4945          924 :   switch (GET_MODE (operands[1]))
    4946              :     {
    4947            0 :     case E_V16HImode:
    4948            0 :       if (!register_operand (operands[1], E_V16HImode))
    4949              :         return -1;
    4950              :       return 0;
    4951              : 
    4952          924 :     case E_V16SImode:
    4953          924 :       if (!register_operand (operands[1], E_V16SImode))
    4954              :         return -1;
    4955              :       return 1;
    4956              : 
    4957              :     default:
    4958              :       return -1;
    4959              :     }
    4960              : }
    4961              : 
    4962              : int
    4963         6632 : pattern1335 (rtx x1)
    4964              : {
    4965         6632 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4966         6632 :   rtx x2, x3, x4, x5, x6, x7;
    4967         6632 :   int res ATTRIBUTE_UNUSED;
    4968         6632 :   x2 = XEXP (x1, 1);
    4969         6632 :   x3 = XEXP (x2, 2);
    4970         6632 :   if (maybe_ne (SUBREG_BYTE (x3), 0)
    4971         6632 :       || GET_MODE (x3) != E_QImode)
    4972              :     return -1;
    4973         6632 :   x4 = XEXP (x3, 0);
    4974         6632 :   if (GET_CODE (x4) != AND)
    4975              :     return -1;
    4976         1132 :   x5 = XEXP (x1, 0);
    4977         1132 :   operands[0] = x5;
    4978         1132 :   x6 = XEXP (x4, 0);
    4979         1132 :   operands[2] = x6;
    4980         1132 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    4981              :     return -1;
    4982         1045 :   x7 = XEXP (x4, 1);
    4983         1045 :   operands[3] = x7;
    4984         1045 :   if (!const_int_operand (operands[3], E_VOIDmode))
    4985              :     return -1;
    4986         1045 :   return pattern410 (x2); /* [-1, 1] */
    4987              : }
    4988              : 
    4989              : int
    4990          124 : pattern1342 (rtx x1, machine_mode i1)
    4991              : {
    4992          124 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4993          124 :   int res ATTRIBUTE_UNUSED;
    4994          124 :   if (!register_operand (operands[0], i1)
    4995          124 :       || GET_MODE (x1) != i1
    4996          124 :       || !register_operand (operands[1], i1)
    4997          239 :       || !general_operand (operands[2], i1))
    4998           30 :     return -1;
    4999              :   return 0;
    5000              : }
    5001              : 
    5002              : int
    5003            0 : pattern1349 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5004              : {
    5005            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5006            0 :   int res ATTRIBUTE_UNUSED;
    5007            0 :   if (!register_operand (operands[0], i3)
    5008            0 :       || GET_MODE (x1) != i3
    5009            0 :       || pattern565 (x1, 
    5010              : i1, 
    5011              : i2) != 0)
    5012            0 :     return -1;
    5013              :   return 0;
    5014              : }
    5015              : 
    5016              : int
    5017          192 : pattern1353 (rtx x1)
    5018              : {
    5019          192 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5020          192 :   rtx x2, x3, x4;
    5021          192 :   int res ATTRIBUTE_UNUSED;
    5022          192 :   x2 = XEXP (x1, 0);
    5023          192 :   x3 = XEXP (x2, 0);
    5024          192 :   operands[0] = x3;
    5025          192 :   if (!nonmemory_operand (operands[2], E_QImode))
    5026              :     return -1;
    5027          185 :   x4 = XEXP (x1, 1);
    5028          185 :   return pattern379 (x4); /* [-1, 1] */
    5029              : }
    5030              : 
    5031              : int
    5032            0 : pattern1360 (rtx x1)
    5033              : {
    5034            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5035            0 :   rtx x2, x3, x4, x5, x6;
    5036            0 :   int res ATTRIBUTE_UNUSED;
    5037            0 :   x2 = XEXP (x1, 1);
    5038            0 :   if (GET_CODE (x2) != CALL)
    5039              :     return -1;
    5040            0 :   x3 = XEXP (x2, 0);
    5041            0 :   if (GET_CODE (x3) != MEM
    5042            0 :       || GET_MODE (x3) != E_QImode)
    5043              :     return -1;
    5044            0 :   x4 = XEXP (x1, 0);
    5045            0 :   operands[2] = x4;
    5046            0 :   x5 = XEXP (x2, 1);
    5047            0 :   operands[3] = x5;
    5048            0 :   x6 = XEXP (x3, 0);
    5049            0 :   if (!rtx_equal_p (x6, operands[0]))
    5050              :     return -1;
    5051              :   return 0;
    5052              : }
    5053              : 
    5054              : int
    5055        27242 : pattern1367 (rtx x1, machine_mode i1)
    5056              : {
    5057        27242 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5058        27242 :   rtx x2, x3, x4, x5, x6;
    5059        27242 :   int res ATTRIBUTE_UNUSED;
    5060        27242 :   if (!plusminuslogic_operator (operands[3], i1))
    5061              :     return -1;
    5062         6231 :   x2 = XVECEXP (x1, 0, 1);
    5063         6231 :   if (GET_CODE (x2) != CLOBBER)
    5064              :     return -1;
    5065         6231 :   x3 = XEXP (x2, 0);
    5066         6231 :   if (GET_CODE (x3) != REG
    5067         6231 :       || REGNO (x3) != 17
    5068        12462 :       || GET_MODE (x3) != E_CCmode)
    5069              :     return -1;
    5070         6231 :   x4 = XVECEXP (x1, 0, 0);
    5071         6231 :   x5 = XEXP (x4, 1);
    5072         6231 :   x6 = XEXP (x5, 1);
    5073         6231 :   operands[2] = x6;
    5074         6231 :   if (!nonmemory_operand (operands[2], i1)
    5075         6231 :       || pattern1366 (x4) != 0)
    5076         5861 :     return -1;
    5077              :   return 0;
    5078              : }
    5079              : 
    5080              : int
    5081           12 : pattern1376 (rtx x1, machine_mode i1)
    5082              : {
    5083           12 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5084           12 :   rtx x2;
    5085           12 :   int res ATTRIBUTE_UNUSED;
    5086           12 :   if (!register_operand (operands[0], i1)
    5087           12 :       || GET_MODE (x1) != i1)
    5088              :     return -1;
    5089           12 :   x2 = XEXP (x1, 0);
    5090           12 :   if (GET_MODE (x2) != i1
    5091           12 :       || !nonimmediate_operand (operands[1], i1))
    5092            0 :     return -1;
    5093              :   return 0;
    5094              : }
    5095              : 
    5096              : int
    5097            8 : pattern1382 (rtx x1)
    5098              : {
    5099            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5100            8 :   rtx x2, x3, x4;
    5101            8 :   int res ATTRIBUTE_UNUSED;
    5102            8 :   if (GET_CODE (x1) != VEC_SELECT)
    5103              :     return -1;
    5104            8 :   x2 = XEXP (x1, 1);
    5105            8 :   if (GET_CODE (x2) != PARALLEL
    5106            8 :       || XVECLEN (x2, 0) != 1)
    5107              :     return -1;
    5108            8 :   x3 = XVECEXP (x2, 0, 0);
    5109            8 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5110              :     return -1;
    5111            8 :   x4 = XEXP (x1, 0);
    5112            8 :   operands[1] = x4;
    5113            8 :   if (!const48_operand (operands[2], E_SImode))
    5114              :     return -1;
    5115            8 :   switch (GET_MODE (x1))
    5116              :     {
    5117            4 :     case E_DFmode:
    5118            4 :       if (!register_operand (operands[1], E_V2DFmode))
    5119              :         return -1;
    5120              :       return 0;
    5121              : 
    5122            4 :     case E_SFmode:
    5123            4 :       if (!register_operand (operands[1], E_V4SFmode))
    5124              :         return -1;
    5125              :       return 1;
    5126              : 
    5127              :     default:
    5128              :       return -1;
    5129              :     }
    5130              : }
    5131              : 
    5132              : int
    5133           36 : pattern1389 (rtx x1, machine_mode i1, machine_mode i2)
    5134              : {
    5135           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5136           36 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5137           36 :   int res ATTRIBUTE_UNUSED;
    5138           36 :   x2 = XEXP (x1, 0);
    5139           36 :   x3 = XEXP (x2, 0);
    5140           36 :   x4 = XEXP (x3, 0);
    5141           36 :   x5 = XEXP (x4, 0);
    5142           36 :   operands[2] = x5;
    5143           36 :   if (!nonimmediate_operand (operands[2], i2))
    5144              :     return -1;
    5145           36 :   x6 = XEXP (x2, 1);
    5146           36 :   operands[1] = x6;
    5147           36 :   if (!register_operand (operands[1], i1))
    5148              :     return -1;
    5149           36 :   x7 = XEXP (x1, 1);
    5150           36 :   operands[3] = x7;
    5151           36 :   if (!nonimm_or_0_operand (operands[3], i1))
    5152              :     return -1;
    5153           36 :   x8 = XEXP (x1, 2);
    5154           36 :   operands[4] = x8;
    5155           36 :   if (!register_operand (operands[4], E_QImode))
    5156              :     return -1;
    5157              :   return 0;
    5158              : }
    5159              : 
    5160              : int
    5161          258 : pattern1403 (rtx x1, machine_mode i1)
    5162              : {
    5163          258 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5164          258 :   rtx x2, x3;
    5165          258 :   int res ATTRIBUTE_UNUSED;
    5166          258 :   if (!register_operand (operands[0], i1)
    5167          258 :       || GET_MODE (x1) != i1)
    5168              :     return -1;
    5169          244 :   x2 = XEXP (x1, 0);
    5170          244 :   if (GET_MODE (x2) != i1
    5171          244 :       || !nonimmediate_operand (operands[1], i1)
    5172          488 :       || !nonimmediate_operand (operands[2], i1))
    5173            0 :     return -1;
    5174          244 :   x3 = XEXP (x2, 2);
    5175          244 :   if (GET_MODE (x3) != i1
    5176          244 :       || !nonimmediate_operand (operands[3], i1))
    5177            0 :     return -1;
    5178              :   return 0;
    5179              : }
    5180              : 
    5181              : int
    5182          244 : pattern1412 (rtx x1, machine_mode i1)
    5183              : {
    5184          244 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5185          244 :   rtx x2, x3, x4;
    5186          244 :   int res ATTRIBUTE_UNUSED;
    5187          244 :   if (!register_operand (operands[0], i1)
    5188          244 :       || GET_MODE (x1) != i1)
    5189              :     return -1;
    5190          234 :   x2 = XEXP (x1, 0);
    5191          234 :   if (GET_MODE (x2) != i1)
    5192              :     return -1;
    5193          234 :   x3 = XEXP (x2, 0);
    5194          234 :   if (GET_MODE (x3) != i1
    5195          234 :       || !nonimmediate_operand (operands[1], i1)
    5196          468 :       || !nonimmediate_operand (operands[2], i1))
    5197            0 :     return -1;
    5198          234 :   x4 = XEXP (x2, 2);
    5199          234 :   if (GET_MODE (x4) != i1
    5200          234 :       || !nonimmediate_operand (operands[3], i1))
    5201            0 :     return -1;
    5202              :   return 0;
    5203              : }
    5204              : 
    5205              : int
    5206            0 : pattern1422 (rtx x1, machine_mode i1, machine_mode i2)
    5207              : {
    5208            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5209            0 :   rtx x2, x3, x4;
    5210            0 :   int res ATTRIBUTE_UNUSED;
    5211            0 :   if (!register_operand (operands[0], i1)
    5212            0 :       || GET_MODE (x1) != i1)
    5213              :     return -1;
    5214            0 :   x2 = XVECEXP (x1, 0, 0);
    5215            0 :   if (GET_MODE (x2) != i1)
    5216              :     return -1;
    5217            0 :   x3 = XEXP (x2, 0);
    5218            0 :   if (GET_MODE (x3) != i1)
    5219              :     return -1;
    5220            0 :   x4 = XEXP (x3, 0);
    5221            0 :   if (GET_MODE (x4) != i2
    5222            0 :       || !nonimmediate_operand (operands[1], i2)
    5223            0 :       || !register_operand (operands[2], i1))
    5224            0 :     return -1;
    5225              :   return 0;
    5226              : }
    5227              : 
    5228              : int
    5229         1002 : pattern1432 (rtx x1, int i1, int i2, int i3, int i4, int i5)
    5230              : {
    5231         1002 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5232         1002 :   rtx x2, x3, x4, x5, x6;
    5233         1002 :   int res ATTRIBUTE_UNUSED;
    5234         1002 :   x2 = XVECEXP (x1, 0, 3);
    5235         1002 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i5])
    5236              :     return -1;
    5237         1002 :   x3 = XVECEXP (x1, 0, 4);
    5238         1002 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    5239              :     return -1;
    5240         1002 :   x4 = XVECEXP (x1, 0, 5);
    5241         1002 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    5242              :     return -1;
    5243         1002 :   x5 = XVECEXP (x1, 0, 6);
    5244         1002 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    5245              :     return -1;
    5246         1002 :   x6 = XVECEXP (x1, 0, 7);
    5247         1002 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    5248            0 :     return -1;
    5249              :   return 0;
    5250              : }
    5251              : 
    5252              : int
    5253           33 : pattern1440 (rtx x1)
    5254              : {
    5255           33 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5256           33 :   rtx x2, x3, x4, x5;
    5257           33 :   int res ATTRIBUTE_UNUSED;
    5258           33 :   x2 = XEXP (x1, 0);
    5259           33 :   x3 = XEXP (x2, 1);
    5260           33 :   x4 = XEXP (x3, 0);
    5261           33 :   if (GET_CODE (x4) != REG
    5262           33 :       || REGNO (x4) != 17)
    5263              :     return -1;
    5264            9 :   x5 = XEXP (x3, 1);
    5265            9 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5266              :     return -1;
    5267            9 :   return pattern1169 (x1); /* [-1, 5] */
    5268              : }
    5269              : 
    5270              : int
    5271           34 : pattern1450 (rtx x1, machine_mode i1)
    5272              : {
    5273           34 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5274           34 :   rtx x2;
    5275           34 :   int res ATTRIBUTE_UNUSED;
    5276           34 :   if (!register_operand (operands[0], i1)
    5277           34 :       || GET_MODE (x1) != i1)
    5278              :     return -1;
    5279           34 :   x2 = XEXP (x1, 0);
    5280           34 :   if (GET_MODE (x2) != i1
    5281           34 :       || !nonimmediate_operand (operands[1], i1))
    5282            0 :     return -1;
    5283              :   return 0;
    5284              : }
    5285              : 
    5286              : int
    5287        86002 : pattern1457 (rtx x1, machine_mode i1)
    5288              : {
    5289        86002 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5290        86002 :   rtx x2;
    5291        86002 :   int res ATTRIBUTE_UNUSED;
    5292        86002 :   if (!memory_operand (operands[0], i1)
    5293        86002 :       || GET_MODE (x1) != i1)
    5294              :     return -1;
    5295        83864 :   x2 = XVECEXP (x1, 0, 0);
    5296        83864 :   if (GET_MODE (x2) != i1
    5297        83864 :       || !nonmemory_operand (operands[1], i1))
    5298         1359 :     return -1;
    5299              :   return 0;
    5300              : }
    5301              : 
    5302              : int
    5303            0 : pattern1463 (rtx x1, machine_mode i1)
    5304              : {
    5305            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5306            0 :   rtx x2;
    5307            0 :   int res ATTRIBUTE_UNUSED;
    5308            0 :   if (!register_operand (operands[0], i1)
    5309            0 :       || GET_MODE (x1) != i1
    5310            0 :       || !vector_operand (operands[1], i1)
    5311            0 :       || !register_operand (operands[2], i1))
    5312            0 :     return -1;
    5313            0 :   x2 = XVECEXP (x1, 0, 2);
    5314            0 :   if (GET_MODE (x2) != i1)
    5315              :     return -1;
    5316              :   return 0;
    5317              : }
    5318              : 
    5319              : int
    5320         3126 : pattern1468 ()
    5321              : {
    5322         3126 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5323         3126 :   int res ATTRIBUTE_UNUSED;
    5324         3126 :   switch (GET_MODE (operands[4]))
    5325              :     {
    5326          135 :     case E_QImode:
    5327          135 :       if (!register_operand (operands[4], E_QImode))
    5328              :         return -1;
    5329              :       return 0;
    5330              : 
    5331           42 :     case E_HImode:
    5332           42 :       if (!register_operand (operands[4], E_HImode))
    5333              :         return -1;
    5334              :       return 1;
    5335              : 
    5336          784 :     case E_SImode:
    5337          784 :       if (!register_operand (operands[4], E_SImode))
    5338              :         return -1;
    5339              :       return 2;
    5340              : 
    5341         2165 :     case E_DImode:
    5342         2165 :       if (!register_operand (operands[4], E_DImode))
    5343              :         return -1;
    5344              :       return 3;
    5345              : 
    5346              :     default:
    5347              :       return -1;
    5348              :     }
    5349              : }
    5350              : 
    5351              : int
    5352          543 : pattern1479 (rtx x1, machine_mode i1)
    5353              : {
    5354          543 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5355          543 :   rtx x2, x3;
    5356          543 :   int res ATTRIBUTE_UNUSED;
    5357          543 :   if (!register_operand (operands[0], i1)
    5358          543 :       || GET_MODE (x1) != i1)
    5359              :     return -1;
    5360          516 :   x2 = XEXP (x1, 0);
    5361          516 :   if (GET_MODE (x2) != i1)
    5362              :     return -1;
    5363          516 :   x3 = XEXP (x2, 0);
    5364          516 :   if (GET_MODE (x3) != i1
    5365          516 :       || !nonimmediate_operand (operands[1], i1)
    5366          516 :       || !nonimmediate_operand (operands[2], i1)
    5367         1028 :       || !nonimmediate_operand (operands[3], i1))
    5368            4 :     return -1;
    5369              :   return 0;
    5370              : }
    5371              : 
    5372              : int
    5373         1068 : pattern1487 (rtx x1)
    5374              : {
    5375         1068 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5376         1068 :   rtx x2, x3, x4, x5;
    5377         1068 :   int res ATTRIBUTE_UNUSED;
    5378         1068 :   x2 = XEXP (x1, 2);
    5379         1068 :   x3 = XVECEXP (x2, 0, 0);
    5380         1068 :   if (maybe_ne (SUBREG_BYTE (x3), 0))
    5381              :     return -1;
    5382         1068 :   x4 = XEXP (x3, 0);
    5383         1068 :   if (GET_CODE (x4) != NOT)
    5384              :     return -1;
    5385           75 :   x5 = XEXP (x4, 0);
    5386           75 :   operands[3] = x5;
    5387           75 :   if (!const_0_to_7_operand (operands[5], E_SImode))
    5388              :     return -1;
    5389           75 :   switch (GET_MODE (operands[0]))
    5390              :     {
    5391           48 :     case E_V4SImode:
    5392           48 :       return pattern1485 (x1, 
    5393              : E_V4SImode, 
    5394           48 : E_V16QImode); /* [-1, 0] */
    5395              : 
    5396            0 :     case E_V2DImode:
    5397            0 :       if (pattern1485 (x1, 
    5398              : E_V2DImode, 
    5399              : E_V16QImode) != 0)
    5400              :         return -1;
    5401              :       return 1;
    5402              : 
    5403            0 :     case E_V8SImode:
    5404            0 :       if (pattern1485 (x1, 
    5405              : E_V8SImode, 
    5406              : E_V32QImode) != 0)
    5407              :         return -1;
    5408              :       return 2;
    5409              : 
    5410            0 :     case E_V4DImode:
    5411            0 :       if (pattern1485 (x1, 
    5412              : E_V4DImode, 
    5413              : E_V32QImode) != 0)
    5414              :         return -1;
    5415              :       return 3;
    5416              : 
    5417           22 :     case E_V32QImode:
    5418           22 :       if (pattern1486 (x1, 
    5419              : E_V32QImode, 
    5420              : E_SImode) != 0)
    5421              :         return -1;
    5422              :       return 4;
    5423              : 
    5424            5 :     case E_V16QImode:
    5425            5 :       if (pattern1486 (x1, 
    5426              : E_V16QImode, 
    5427              : E_HImode) != 0)
    5428              :         return -1;
    5429              :       return 5;
    5430              : 
    5431              :     default:
    5432              :       return -1;
    5433              :     }
    5434              : }
    5435              : 
    5436              : int
    5437       371042 : pattern1503 (machine_mode i1)
    5438              : {
    5439       371042 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5440       371042 :   int res ATTRIBUTE_UNUSED;
    5441       371042 :   if (!register_operand (operands[1], i1)
    5442          331 :       || !const_0_to_15_operand (operands[2], E_VOIDmode)
    5443          331 :       || !const_0_to_15_operand (operands[3], E_VOIDmode)
    5444          331 :       || !const_0_to_15_operand (operands[4], E_VOIDmode)
    5445       371373 :       || !const_0_to_15_operand (operands[5], E_VOIDmode))
    5446       370711 :     return -1;
    5447              :   return 0;
    5448              : }
    5449              : 
    5450              : int
    5451        36714 : pattern1512 (rtx x1)
    5452              : {
    5453        36714 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5454        36714 :   rtx x2, x3, x4, x5;
    5455        36714 :   int res ATTRIBUTE_UNUSED;
    5456        36714 :   if (!register_operand (operands[0], E_SImode))
    5457              :     return -1;
    5458        31061 :   x2 = XVECEXP (x1, 0, 0);
    5459        31061 :   x3 = XEXP (x2, 1);
    5460        31061 :   if (GET_MODE (x3) != E_SImode
    5461        31061 :       || !nonimmediate_operand (operands[3], E_SImode)
    5462        61694 :       || !register_operand (operands[1], E_SImode))
    5463          460 :     return -1;
    5464        30601 :   x4 = XVECEXP (x1, 0, 1);
    5465        30601 :   x5 = XEXP (x4, 1);
    5466        30601 :   if (GET_MODE (x5) != E_SImode)
    5467              :     return -1;
    5468              :   return 0;
    5469              : }
    5470              : 
    5471              : int
    5472            9 : pattern1520 (rtx x1)
    5473              : {
    5474            9 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5475            9 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5476            9 :   int res ATTRIBUTE_UNUSED;
    5477            9 :   x2 = XVECEXP (x1, 0, 0);
    5478            9 :   x3 = XEXP (x2, 1);
    5479            9 :   x4 = XEXP (x3, 0);
    5480            9 :   x5 = XEXP (x4, 0);
    5481            9 :   x6 = XEXP (x5, 0);
    5482            9 :   operands[1] = x6;
    5483            9 :   x7 = XVECEXP (x1, 0, 1);
    5484            9 :   x8 = XEXP (x7, 0);
    5485            9 :   operands[0] = x8;
    5486            9 :   x9 = XEXP (x4, 1);
    5487            9 :   if (!rtx_equal_p (x9, operands[1]))
    5488              :     return -1;
    5489            9 :   return pattern1511 (x1); /* [-1, 1] */
    5490              : }
    5491              : 
    5492              : int
    5493         4423 : pattern1527 (rtx x1)
    5494              : {
    5495         4423 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5496         4423 :   rtx x2, x3, x4, x5, x6;
    5497         4423 :   int res ATTRIBUTE_UNUSED;
    5498         4423 :   x2 = XVECEXP (x1, 0, 2);
    5499         4423 :   if (GET_CODE (x2) != CLOBBER)
    5500              :     return -1;
    5501         4423 :   x3 = XEXP (x2, 0);
    5502         4423 :   if (GET_CODE (x3) != REG
    5503         4423 :       || REGNO (x3) != 17
    5504         8846 :       || GET_MODE (x3) != E_CCmode)
    5505              :     return -1;
    5506         4423 :   x4 = XVECEXP (x1, 0, 0);
    5507         4423 :   x5 = XEXP (x4, 1);
    5508         4423 :   x6 = XVECEXP (x5, 0, 0);
    5509         4423 :   operands[1] = x6;
    5510         4423 :   return 0;
    5511              : }
    5512              : 
    5513              : int
    5514          155 : pattern1534 (rtx x1, machine_mode i1, machine_mode i2)
    5515              : {
    5516          155 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5517          155 :   rtx x2;
    5518          155 :   int res ATTRIBUTE_UNUSED;
    5519          155 :   if (!register_operand (operands[0], i2)
    5520          155 :       || GET_MODE (x1) != i2)
    5521              :     return -1;
    5522          139 :   x2 = XEXP (x1, 0);
    5523          139 :   if (GET_MODE (x2) != i2
    5524          139 :       || !register_operand (operands[1], i2)
    5525          127 :       || !register_operand (operands[2], i2)
    5526          266 :       || !nonimmediate_operand (operands[3], i1))
    5527           24 :     return -1;
    5528              :   return 0;
    5529              : }
    5530              : 
    5531              : int
    5532       326041 : pattern1541 (rtx x1, machine_mode i1)
    5533              : {
    5534       326041 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5535       326041 :   int res ATTRIBUTE_UNUSED;
    5536       326041 :   if (!nonimmediate_operand (operands[0], i1)
    5537       325783 :       || GET_MODE (x1) != i1
    5538       325783 :       || !nonimmediate_operand (operands[1], i1)
    5539       649370 :       || !nonmemory_operand (operands[2], E_QImode))
    5540         7887 :     return -1;
    5541              :   return 0;
    5542              : }
    5543              : 
    5544              : int
    5545          159 : pattern1548 (rtx x1, machine_mode i1)
    5546              : {
    5547          159 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5548          159 :   rtx x2, x3;
    5549          159 :   int res ATTRIBUTE_UNUSED;
    5550          159 :   if (!register_operand (operands[0], i1)
    5551          159 :       || GET_MODE (x1) != i1
    5552          159 :       || !nonimmediate_operand (operands[3], i1)
    5553          223 :       || !nonimmediate_operand (operands[4], i1))
    5554           95 :     return -1;
    5555           64 :   x2 = XEXP (x1, 0);
    5556           64 :   x3 = XEXP (x2, 0);
    5557           64 :   switch (GET_MODE (x3))
    5558              :     {
    5559           52 :     case E_SImode:
    5560           52 :       if (!nonimmediate_operand (operands[1], E_SImode))
    5561              :         return -1;
    5562              :       return 0;
    5563              : 
    5564           12 :     case E_DImode:
    5565           12 :       if (!nonimmediate_operand (operands[1], E_DImode))
    5566              :         return -1;
    5567              :       return 1;
    5568              : 
    5569              :     default:
    5570              :       return -1;
    5571              :     }
    5572              : }
    5573              : 
    5574              : int
    5575          242 : pattern1558 (rtx x1, machine_mode i1, machine_mode i2)
    5576              : {
    5577          242 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5578          242 :   rtx x2, x3, x4, x5, x6, x7;
    5579          242 :   int res ATTRIBUTE_UNUSED;
    5580          242 :   if (!register_operand (operands[0], i2)
    5581          242 :       || GET_MODE (x1) != i2)
    5582              :     return -1;
    5583          199 :   x2 = XEXP (x1, 0);
    5584          199 :   if (GET_MODE (x2) != i1)
    5585              :     return -1;
    5586          199 :   x3 = XEXP (x2, 0);
    5587          199 :   if (GET_MODE (x3) != i1)
    5588              :     return -1;
    5589          199 :   x4 = XEXP (x3, 0);
    5590          199 :   if (GET_MODE (x4) != i1)
    5591              :     return -1;
    5592          199 :   x5 = XEXP (x4, 0);
    5593          199 :   if (GET_MODE (x5) != i1
    5594          199 :       || !register_operand (operands[1], i2))
    5595           50 :     return -1;
    5596          149 :   x6 = XEXP (x4, 1);
    5597          149 :   if (GET_MODE (x6) != i1
    5598          149 :       || !register_operand (operands[2], i2))
    5599           29 :     return -1;
    5600          120 :   x7 = XEXP (x3, 1);
    5601          120 :   if (GET_MODE (x7) != i1)
    5602              :     return -1;
    5603              :   return 0;
    5604              : }
    5605              : 
    5606              : int
    5607         4408 : pattern1568 (rtx x1, machine_mode i1, machine_mode i2)
    5608              : {
    5609         4408 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5610         4408 :   rtx x2;
    5611         4408 :   int res ATTRIBUTE_UNUSED;
    5612         4408 :   if (GET_MODE (x1) != i1)
    5613              :     return -1;
    5614         4408 :   x2 = XEXP (x1, 0);
    5615         4408 :   if (GET_MODE (x2) != i1
    5616         4408 :       || !register_operand (operands[1], i2)
    5617         8783 :       || !nonimm_or_0_operand (operands[2], i1))
    5618           68 :     return -1;
    5619              :   return 0;
    5620              : }
    5621              : 
    5622              : int
    5623          190 : pattern1576 (rtx x1, machine_mode i1)
    5624              : {
    5625          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5626          190 :   rtx x2, x3, x4, x5, x6, x7;
    5627          190 :   int res ATTRIBUTE_UNUSED;
    5628          190 :   x2 = XEXP (x1, 0);
    5629          190 :   if (GET_CODE (x2) != VEC_SELECT
    5630          190 :       || GET_MODE (x2) != i1)
    5631              :     return -1;
    5632          190 :   x3 = XEXP (x2, 1);
    5633          190 :   if (GET_CODE (x3) != PARALLEL
    5634          190 :       || XVECLEN (x3, 0) != 1)
    5635              :     return -1;
    5636          190 :   x4 = XVECEXP (x3, 0, 0);
    5637          190 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5638              :     return -1;
    5639          190 :   x5 = XEXP (x1, 1);
    5640          190 :   if (GET_CODE (x5) != VEC_SELECT
    5641          190 :       || GET_MODE (x5) != i1)
    5642              :     return -1;
    5643          190 :   x6 = XEXP (x5, 1);
    5644          190 :   if (GET_CODE (x6) != PARALLEL
    5645          190 :       || XVECLEN (x6, 0) != 1)
    5646              :     return -1;
    5647          190 :   x7 = XVECEXP (x6, 0, 0);
    5648          190 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    5649            0 :     return -1;
    5650              :   return 0;
    5651              : }
    5652              : 
    5653              : int
    5654          186 : pattern1587 (rtx x1, machine_mode i1)
    5655              : {
    5656          186 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5657          186 :   int res ATTRIBUTE_UNUSED;
    5658          186 :   if (!nonimmediate_operand (operands[0], i1)
    5659          186 :       || GET_MODE (x1) != i1
    5660          186 :       || !nonimmediate_operand (operands[1], i1)
    5661          372 :       || !ix86_carry_flag_unset_operator (operands[2], i1))
    5662           22 :     return -1;
    5663              :   return 0;
    5664              : }
    5665              : 
    5666              : int
    5667          170 : pattern1594 (rtx x1, int *pnum_clobbers)
    5668              : {
    5669          170 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5670          170 :   rtx x2, x3, x4, x5, x6;
    5671          170 :   int res ATTRIBUTE_UNUSED;
    5672          170 :   x2 = XVECEXP (x1, 0, 1);
    5673          170 :   x3 = XEXP (x2, 1);
    5674          170 :   x4 = XEXP (x3, 0);
    5675          170 :   if (!rtx_equal_p (x4, operands[2]))
    5676              :     return -1;
    5677          170 :   x5 = XEXP (x3, 1);
    5678          170 :   if (!rtx_equal_p (x5, operands[3]))
    5679              :     return -1;
    5680          170 :   switch (GET_CODE (operands[3]))
    5681              :     {
    5682          138 :     case REG:
    5683          138 :     case SUBREG:
    5684          138 :     case MEM:
    5685          138 :       if (!nonimmediate_operand (operands[3], E_SImode))
    5686              :         return -1;
    5687          124 :       x6 = XVECEXP (x1, 0, 2);
    5688          124 :       return pattern1593 (x6, pnum_clobbers); /* [-1, 2] */
    5689              : 
    5690            4 :     case CONST_INT:
    5691            4 :       if (!const_int_operand (operands[3], E_SImode))
    5692              :         return -1;
    5693            4 :       x6 = XVECEXP (x1, 0, 2);
    5694            4 :       if (pattern963 (x6, 
    5695              : E_CCmode, 
    5696              : 17) != 0)
    5697              :         return -1;
    5698              :       return 3;
    5699              : 
    5700              :     default:
    5701              :       return -1;
    5702              :     }
    5703              : }
    5704              : 
    5705              : int
    5706          370 : pattern1606 (rtx x1)
    5707              : {
    5708          370 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5709          370 :   rtx x2, x3, x4, x5, x6;
    5710          370 :   int res ATTRIBUTE_UNUSED;
    5711          370 :   if (!register_operand (operands[0], E_V4SFmode)
    5712          370 :       || GET_MODE (x1) != E_V4SFmode)
    5713              :     return -1;
    5714          358 :   x2 = XEXP (x1, 0);
    5715          358 :   if (GET_MODE (x2) != E_V4SFmode)
    5716              :     return -1;
    5717          358 :   x3 = XEXP (x2, 0);
    5718          358 :   if (GET_MODE (x3) != E_V8SFmode
    5719          358 :       || !vector_operand (operands[1], E_V4SFmode))
    5720            0 :     return -1;
    5721          358 :   x4 = XEXP (x1, 1);
    5722          358 :   operands[2] = x4;
    5723          358 :   if (!nonimm_or_0_operand (operands[2], E_V4SFmode))
    5724              :     return -1;
    5725          358 :   x5 = XEXP (x1, 2);
    5726          358 :   operands[3] = x5;
    5727          358 :   x6 = XEXP (x3, 1);
    5728          358 :   if (!rtx_equal_p (x6, operands[1]))
    5729              :     return -1;
    5730              :   return 0;
    5731              : }
    5732              : 
    5733              : int
    5734            0 : pattern1617 (rtx x1, machine_mode i1, machine_mode i2)
    5735              : {
    5736            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5737            0 :   rtx x2, x3, x4;
    5738            0 :   int res ATTRIBUTE_UNUSED;
    5739            0 :   if (!register_operand (operands[0], i1)
    5740            0 :       || GET_MODE (x1) != i1)
    5741              :     return -1;
    5742            0 :   x2 = XVECEXP (x1, 0, 0);
    5743            0 :   if (GET_MODE (x2) != i1)
    5744              :     return -1;
    5745            0 :   x3 = XEXP (x2, 0);
    5746            0 :   if (GET_MODE (x3) != i1
    5747            0 :       || !register_operand (operands[1], i1)
    5748            0 :       || !register_operand (operands[2], i1)
    5749            0 :       || !nonimmediate_operand (operands[3], i1)
    5750            0 :       || !register_operand (operands[4], i2))
    5751            0 :     return -1;
    5752            0 :   x4 = XEXP (x2, 1);
    5753            0 :   if (!rtx_equal_p (x4, operands[3]))
    5754              :     return -1;
    5755              :   return 0;
    5756              : }
    5757              : 
    5758              : int
    5759          287 : pattern1628 (machine_mode i1)
    5760              : {
    5761          287 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5762          287 :   int res ATTRIBUTE_UNUSED;
    5763          287 :   if (!vsib_address_operand (operands[0], i1))
    5764              :     return -1;
    5765          233 :   switch (GET_MODE (operands[2]))
    5766              :     {
    5767          159 :     case E_V8SImode:
    5768          159 :       if (!register_operand (operands[2], E_V8SImode))
    5769              :         return -1;
    5770              :       return 0;
    5771              : 
    5772           74 :     case E_V8DImode:
    5773           74 :       if (!register_operand (operands[2], E_V8DImode))
    5774              :         return -1;
    5775              :       return 1;
    5776              : 
    5777              :     default:
    5778              :       return -1;
    5779              :     }
    5780              : }
    5781              : 
    5782              : int
    5783          218 : pattern1637 (machine_mode i1)
    5784              : {
    5785          218 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5786          218 :   int res ATTRIBUTE_UNUSED;
    5787          218 :   if (!vsib_address_operand (operands[3], i1))
    5788              :     return -1;
    5789          208 :   switch (GET_MODE (operands[2]))
    5790              :     {
    5791          128 :     case E_V8SImode:
    5792          128 :       if (!register_operand (operands[2], E_V8SImode))
    5793              :         return -1;
    5794              :       return 0;
    5795              : 
    5796           80 :     case E_V8DImode:
    5797           80 :       if (!register_operand (operands[2], E_V8DImode))
    5798              :         return -1;
    5799              :       return 1;
    5800              : 
    5801              :     default:
    5802              :       return -1;
    5803              :     }
    5804              : }
    5805              : 
    5806              : int
    5807         3709 : pattern1645 (rtx x1, machine_mode i1, machine_mode i2)
    5808              : {
    5809         3709 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5810         3709 :   rtx x2, x3;
    5811         3709 :   int res ATTRIBUTE_UNUSED;
    5812         3709 :   if (!register_operand (operands[0], i1)
    5813         3709 :       || GET_MODE (x1) != i1)
    5814              :     return -1;
    5815         3679 :   x2 = XEXP (x1, 0);
    5816         3679 :   if (GET_MODE (x2) != i2
    5817         3679 :       || !register_operand (operands[1], i1))
    5818          893 :     return -1;
    5819         2786 :   x3 = XEXP (x2, 1);
    5820         2786 :   operands[2] = x3;
    5821         2786 :   if (!nonimmediate_operand (operands[2], i1))
    5822              :     return -1;
    5823              :   return 0;
    5824              : }
    5825              : 
    5826              : int
    5827        57912 : pattern1653 (rtx x1, machine_mode i1)
    5828              : {
    5829        57912 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5830        57912 :   rtx x2;
    5831        57912 :   int res ATTRIBUTE_UNUSED;
    5832        57912 :   if (!nonimmediate_operand (operands[1], i1)
    5833        57900 :       || !register_operand (operands[0], i1)
    5834       115812 :       || GET_MODE (x1) != i1)
    5835           12 :     return -1;
    5836        57900 :   x2 = XEXP (x1, 1);
    5837        57900 :   if (GET_MODE (x2) != i1)
    5838              :     return -1;
    5839              :   return 0;
    5840              : }
    5841              : 
    5842              : int
    5843        18321 : pattern1660 (rtx x1)
    5844              : {
    5845        18321 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5846        18321 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5847        18321 :   rtx x10, x11;
    5848        18321 :   int res ATTRIBUTE_UNUSED;
    5849        18321 :   if (!plusminuslogic_operator (operands[3], E_SImode))
    5850              :     return -1;
    5851        12277 :   x2 = XVECEXP (x1, 0, 1);
    5852        12277 :   if (GET_CODE (x2) != CLOBBER)
    5853              :     return -1;
    5854        12277 :   x3 = XEXP (x2, 0);
    5855        12277 :   if (GET_CODE (x3) != REG
    5856        12277 :       || REGNO (x3) != 17
    5857        24554 :       || GET_MODE (x3) != E_CCmode)
    5858              :     return -1;
    5859        12277 :   x4 = XVECEXP (x1, 0, 0);
    5860        12277 :   x5 = XEXP (x4, 0);
    5861        12277 :   operands[4] = x5;
    5862        12277 :   if (!register_operand (operands[4], E_SImode))
    5863              :     return -1;
    5864        12272 :   x6 = XEXP (x4, 1);
    5865        12272 :   x7 = XEXP (x6, 1);
    5866        12272 :   operands[2] = x7;
    5867        12272 :   if (!nonmemory_operand (operands[2], E_SImode))
    5868              :     return -1;
    5869        12227 :   x8 = XEXP (x6, 0);
    5870        12227 :   if (!rtx_equal_p (x8, operands[4]))
    5871              :     return -1;
    5872        12180 :   x9 = PATTERN (peep2_next_insn (2));
    5873        12180 :   x10 = XEXP (x9, 1);
    5874        12180 :   if (!rtx_equal_p (x10, operands[0]))
    5875              :     return -1;
    5876         1554 :   x11 = PATTERN (peep2_next_insn (3));
    5877         1554 :   if (GET_CODE (x11) != SET)
    5878              :     return -1;
    5879              :   return 0;
    5880              : }
    5881              : 
    5882              : int
    5883         1084 : pattern1675 (rtx x1, machine_mode i1)
    5884              : {
    5885         1084 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5886         1084 :   rtx x2, x3, x4;
    5887         1084 :   int res ATTRIBUTE_UNUSED;
    5888         1084 :   if (!register_operand (operands[0], i1)
    5889         1084 :       || GET_MODE (x1) != i1)
    5890              :     return -1;
    5891         1041 :   x2 = XVECEXP (x1, 0, 0);
    5892         1041 :   if (GET_MODE (x2) != i1)
    5893              :     return -1;
    5894         1041 :   x3 = XEXP (x2, 0);
    5895         1041 :   if (GET_MODE (x3) != i1)
    5896              :     return -1;
    5897         1041 :   x4 = XEXP (x3, 0);
    5898         1041 :   if (GET_MODE (x4) != i1
    5899         1041 :       || !register_operand (operands[1], i1)
    5900         1041 :       || !register_operand (operands[2], i1)
    5901         2082 :       || !nonimm_or_0_operand (operands[3], i1))
    5902            0 :     return -1;
    5903              :   return 0;
    5904              : }
    5905              : 
    5906              : int
    5907           54 : pattern1683 (rtx x1, machine_mode i1)
    5908              : {
    5909           54 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5910           54 :   rtx x2, x3, x4, x5;
    5911           54 :   int res ATTRIBUTE_UNUSED;
    5912           54 :   if (!register_operand (operands[0], i1)
    5913           54 :       || GET_MODE (x1) != i1)
    5914              :     return -1;
    5915           39 :   x2 = XVECEXP (x1, 0, 0);
    5916           39 :   if (GET_MODE (x2) != i1)
    5917              :     return -1;
    5918           39 :   x3 = XEXP (x2, 0);
    5919           39 :   if (GET_MODE (x3) != i1)
    5920              :     return -1;
    5921           39 :   x4 = XEXP (x3, 0);
    5922           39 :   if (GET_MODE (x4) != i1
    5923           39 :       || !nonimmediate_operand (operands[1], i1)
    5924           78 :       || !register_operand (operands[2], i1))
    5925            6 :     return -1;
    5926           33 :   x5 = XEXP (x3, 2);
    5927           33 :   if (GET_MODE (x5) != i1
    5928           33 :       || !register_operand (operands[3], i1))
    5929            0 :     return -1;
    5930              :   return 0;
    5931              : }
    5932              : 
    5933              : int
    5934        49081 : pattern1696 (rtx x1, machine_mode i1)
    5935              : {
    5936        49081 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5937        49081 :   int res ATTRIBUTE_UNUSED;
    5938        49081 :   if (!nonimmediate_operand (operands[1], i1)
    5939        49081 :       || !x86_64_hilo_general_operand (operands[2], i1)
    5940        49004 :       || !nonimmediate_operand (operands[0], i1)
    5941        98085 :       || GET_MODE (x1) != i1)
    5942           77 :     return -1;
    5943              :   return 0;
    5944              : }
    5945              : 
    5946              : int
    5947         1279 : pattern1703 (machine_mode i1)
    5948              : {
    5949         1279 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5950         1279 :   int res ATTRIBUTE_UNUSED;
    5951         1279 :   if (!register_operand (operands[1], i1)
    5952          477 :       || !const_0_to_15_operand (operands[2], E_VOIDmode)
    5953          477 :       || !const_0_to_15_operand (operands[3], E_VOIDmode)
    5954          477 :       || !const_0_to_15_operand (operands[4], E_VOIDmode)
    5955         1756 :       || !const_0_to_15_operand (operands[5], E_VOIDmode))
    5956          802 :     return -1;
    5957              :   return 0;
    5958              : }
    5959              : 
    5960              : int
    5961            2 : pattern1712 (rtx x1, machine_mode i1)
    5962              : {
    5963            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5964            2 :   rtx x2, x3, x4;
    5965            2 :   int res ATTRIBUTE_UNUSED;
    5966            2 :   if (!register_operand (operands[0], i1)
    5967            2 :       || GET_MODE (x1) != i1)
    5968              :     return -1;
    5969            2 :   x2 = XEXP (x1, 0);
    5970            2 :   if (GET_MODE (x2) != i1
    5971            2 :       || !nonimmediate_operand (operands[1], i1))
    5972            0 :     return -1;
    5973            2 :   x3 = XEXP (x1, 1);
    5974            2 :   if (GET_MODE (x3) != i1)
    5975              :     return -1;
    5976            2 :   x4 = XEXP (x3, 0);
    5977            2 :   if (GET_MODE (x4) != i1)
    5978              :     return -1;
    5979              :   return 0;
    5980              : }
    5981              : 
    5982              : int
    5983           18 : pattern1721 (rtx x1, machine_mode i1)
    5984              : {
    5985           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5986           18 :   rtx x2;
    5987           18 :   int res ATTRIBUTE_UNUSED;
    5988           18 :   if (!bt_comparison_operator (operands[3], i1))
    5989              :     return -1;
    5990           18 :   x2 = XVECEXP (x1, 0, 0);
    5991           18 :   switch (GET_MODE (x2))
    5992              :     {
    5993            0 :     case E_V16QImode:
    5994            0 :       return pattern1720 (x1, 
    5995            0 : E_V16QImode); /* [-1, 0] */
    5996              : 
    5997            0 :     case E_V8HImode:
    5998            0 :       if (pattern1720 (x1, 
    5999              : E_V8HImode) != 0)
    6000              :         return -1;
    6001              :       return 1;
    6002              : 
    6003            0 :     case E_V4SImode:
    6004            0 :       if (pattern1720 (x1, 
    6005              : E_V4SImode) != 0)
    6006              :         return -1;
    6007              :       return 2;
    6008              : 
    6009            8 :     case E_V2DImode:
    6010            8 :       if (pattern1720 (x1, 
    6011              : E_V2DImode) != 0)
    6012              :         return -1;
    6013              :       return 3;
    6014              : 
    6015            0 :     case E_V1TImode:
    6016            0 :       if (pattern1720 (x1, 
    6017              : E_V1TImode) != 0)
    6018              :         return -1;
    6019              :       return 4;
    6020              : 
    6021            0 :     case E_V4SFmode:
    6022            0 :       if (pattern1720 (x1, 
    6023              : E_V4SFmode) != 0)
    6024              :         return -1;
    6025              :       return 5;
    6026              : 
    6027            0 :     case E_V2DFmode:
    6028            0 :       if (pattern1720 (x1, 
    6029              : E_V2DFmode) != 0)
    6030              :         return -1;
    6031              :       return 6;
    6032              : 
    6033            0 :     case E_V32QImode:
    6034            0 :       if (pattern1720 (x1, 
    6035              : E_V32QImode) != 0)
    6036              :         return -1;
    6037              :       return 7;
    6038              : 
    6039            0 :     case E_V16HImode:
    6040            0 :       if (pattern1720 (x1, 
    6041              : E_V16HImode) != 0)
    6042              :         return -1;
    6043              :       return 8;
    6044              : 
    6045            0 :     case E_V8SImode:
    6046            0 :       if (pattern1720 (x1, 
    6047              : E_V8SImode) != 0)
    6048              :         return -1;
    6049              :       return 9;
    6050              : 
    6051           10 :     case E_V4DImode:
    6052           10 :       if (pattern1720 (x1, 
    6053              : E_V4DImode) != 0)
    6054              :         return -1;
    6055              :       return 10;
    6056              : 
    6057            0 :     case E_V2TImode:
    6058            0 :       if (pattern1720 (x1, 
    6059              : E_V2TImode) != 0)
    6060              :         return -1;
    6061              :       return 11;
    6062              : 
    6063            0 :     case E_V8SFmode:
    6064            0 :       if (pattern1720 (x1, 
    6065              : E_V8SFmode) != 0)
    6066              :         return -1;
    6067              :       return 12;
    6068              : 
    6069            0 :     case E_V4DFmode:
    6070            0 :       if (pattern1720 (x1, 
    6071              : E_V4DFmode) != 0)
    6072              :         return -1;
    6073              :       return 13;
    6074              : 
    6075              :     default:
    6076              :       return -1;
    6077              :     }
    6078              : }
    6079              : 
    6080              : int
    6081         1786 : pattern1746 (rtx x1, machine_mode i1)
    6082              : {
    6083         1786 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6084         1786 :   rtx x2, x3, x4;
    6085         1786 :   int res ATTRIBUTE_UNUSED;
    6086         1786 :   if (!vsib_mem_operator (operands[5], i1)
    6087         1786 :       || !register_operand (operands[6], E_QImode))
    6088          166 :     return -1;
    6089         1620 :   x2 = XEXP (x1, 1);
    6090         1620 :   if (GET_MODE (x2) != i1
    6091         1620 :       || !register_operand (operands[3], i1)
    6092         3190 :       || !scratch_operand (operands[1], E_QImode))
    6093           50 :     return -1;
    6094         1570 :   x3 = XEXP (x1, 0);
    6095         1570 :   x4 = XEXP (x3, 0);
    6096         1570 :   switch (GET_MODE (x4))
    6097              :     {
    6098            0 :     case E_SImode:
    6099            0 :       return pattern1745 (
    6100            0 : E_SImode); /* [-1, 1] */
    6101              : 
    6102         1570 :     case E_DImode:
    6103         1570 :       res = pattern1745 (
    6104              : E_DImode);
    6105         1570 :       if (res >= 0)
    6106         1460 :         return res + 2; /* [2, 3] */
    6107              :       return -1;
    6108              : 
    6109              :     default:
    6110              :       return -1;
    6111              :     }
    6112              : }
    6113              : 
    6114              : int
    6115            3 : pattern1758 (rtx x1, machine_mode i1)
    6116              : {
    6117            3 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6118            3 :   int res ATTRIBUTE_UNUSED;
    6119            3 :   if (!ix86_carry_flag_unset_operator (operands[2], i1)
    6120            3 :       || !nonimmediate_operand (operands[1], i1)
    6121            3 :       || !nonimmediate_operand (operands[0], i1)
    6122            6 :       || GET_MODE (x1) != i1)
    6123            0 :     return -1;
    6124              :   return 0;
    6125              : }
    6126              : 
    6127              : int
    6128          514 : pattern1765 (rtx x1, machine_mode i1)
    6129              : {
    6130          514 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6131          514 :   rtx x2, x3, x4;
    6132          514 :   int res ATTRIBUTE_UNUSED;
    6133          514 :   if (!register_operand (operands[0], i1)
    6134          514 :       || GET_MODE (x1) != i1)
    6135              :     return -1;
    6136          492 :   x2 = XVECEXP (x1, 0, 0);
    6137          492 :   if (GET_MODE (x2) != i1)
    6138              :     return -1;
    6139          492 :   x3 = XEXP (x2, 0);
    6140          492 :   if (GET_MODE (x3) != i1)
    6141              :     return -1;
    6142          492 :   x4 = XEXP (x3, 0);
    6143          492 :   if (GET_MODE (x4) != i1
    6144          492 :       || !register_operand (operands[2], i1)
    6145          492 :       || !nonimm_or_0_operand (operands[4], i1)
    6146          984 :       || !register_operand (operands[1], i1))
    6147            0 :     return -1;
    6148              :   return 0;
    6149              : }
    6150              : 
    6151              : int
    6152           94 : pattern1771 (machine_mode i1)
    6153              : {
    6154           94 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6155           94 :   int res ATTRIBUTE_UNUSED;
    6156           94 :   if (!vsib_address_operand (operands[0], i1))
    6157              :     return -1;
    6158           77 :   switch (GET_MODE (operands[2]))
    6159              :     {
    6160           23 :     case E_V8SImode:
    6161           23 :       if (!register_operand (operands[2], E_V8SImode)
    6162           23 :           || !register_operand (operands[3], E_V8SFmode))
    6163            2 :         return -1;
    6164              :       return 0;
    6165              : 
    6166           54 :     case E_V4DImode:
    6167           54 :       if (!register_operand (operands[2], E_V4DImode)
    6168           54 :           || !register_operand (operands[3], E_V4SFmode))
    6169           29 :         return -1;
    6170              :       return 1;
    6171              : 
    6172              :     default:
    6173              :       return -1;
    6174              :     }
    6175              : }
    6176              : 
    6177              : int
    6178         1308 : pattern1781 (machine_mode i1)
    6179              : {
    6180         1308 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6181         1308 :   int res ATTRIBUTE_UNUSED;
    6182         1308 :   if (!vsib_address_operand (operands[4], i1))
    6183              :     return -1;
    6184         1308 :   switch (GET_MODE (operands[3]))
    6185              :     {
    6186          616 :     case E_V4SImode:
    6187          616 :       if (!register_operand (operands[3], E_V4SImode))
    6188              :         return -1;
    6189              :       return 0;
    6190              : 
    6191          692 :     case E_V2DImode:
    6192          692 :       if (!register_operand (operands[3], E_V2DImode))
    6193              :         return -1;
    6194              :       return 1;
    6195              : 
    6196              :     default:
    6197              :       return -1;
    6198              :     }
    6199              : }
    6200              : 
    6201              : int
    6202         1104 : pattern1789 (rtx x1, machine_mode i1, machine_mode i2)
    6203              : {
    6204         1104 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6205         1104 :   rtx x2, x3;
    6206         1104 :   int res ATTRIBUTE_UNUSED;
    6207         1104 :   if (!register_operand (operands[0], i1)
    6208         1104 :       || GET_MODE (x1) != i1)
    6209              :     return -1;
    6210          965 :   x2 = XEXP (x1, 0);
    6211          965 :   if (GET_MODE (x2) != i1)
    6212              :     return -1;
    6213          965 :   x3 = XEXP (x2, 0);
    6214          965 :   if (GET_MODE (x3) != i2
    6215          965 :       || !register_operand (operands[1], i1)
    6216          963 :       || !nonimmediate_operand (operands[2], i1)
    6217         1812 :       || !nonimm_or_0_operand (operands[11], i1))
    6218          173 :     return -1;
    6219              :   return 0;
    6220              : }
    6221              : 
    6222              : int
    6223            0 : pattern1798 (rtx x1, machine_mode i1)
    6224              : {
    6225            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6226            0 :   rtx x2;
    6227            0 :   int res ATTRIBUTE_UNUSED;
    6228            0 :   if (!register_operand (operands[0], i1))
    6229              :     return -1;
    6230            0 :   operands[2] = x1;
    6231            0 :   x2 = PATTERN (peep2_next_insn (1));
    6232            0 :   return pattern1797 (x2, 
    6233            0 : i1); /* [-1, 0] */
    6234              : }
    6235              : 
    6236              : int
    6237          813 : pattern1805 (machine_mode i1)
    6238              : {
    6239          813 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6240          813 :   int res ATTRIBUTE_UNUSED;
    6241          813 :   if (!vsib_address_operand (operands[0], i1))
    6242              :     return -1;
    6243          794 :   switch (GET_MODE (operands[2]))
    6244              :     {
    6245          400 :     case E_V16SImode:
    6246          400 :       return pattern1803 (
    6247              : E_HImode, 
    6248              : E_V16SFmode, 
    6249          400 : E_V16SImode); /* [-1, 0] */
    6250              : 
    6251          394 :     case E_V8DImode:
    6252          394 :       if (pattern1803 (
    6253              : E_QImode, 
    6254              : E_V8SFmode, 
    6255              : E_V8DImode) != 0)
    6256              :         return -1;
    6257              :       return 1;
    6258              : 
    6259              :     default:
    6260              :       return -1;
    6261              :     }
    6262              : }
    6263              : 
    6264              : int
    6265           25 : pattern1812 (rtx x1, machine_mode i1)
    6266              : {
    6267           25 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6268           25 :   rtx x2, x3, x4, x5, x6, x7;
    6269           25 :   int res ATTRIBUTE_UNUSED;
    6270           25 :   if (!register_operand (operands[0], i1))
    6271              :     return -1;
    6272           25 :   x2 = XVECEXP (x1, 0, 0);
    6273           25 :   x3 = XEXP (x2, 1);
    6274           25 :   if (GET_MODE (x3) != i1
    6275           25 :       || !register_operand (operands[1], i1))
    6276            0 :     return -1;
    6277           25 :   x4 = XVECEXP (x1, 0, 1);
    6278           25 :   x5 = XEXP (x4, 0);
    6279           25 :   if (GET_MODE (x5) != i1)
    6280              :     return -1;
    6281           25 :   x6 = XEXP (x4, 1);
    6282           25 :   if (GET_MODE (x6) != i1)
    6283              :     return -1;
    6284           25 :   x7 = XEXP (x6, 0);
    6285           25 :   if (GET_MODE (x7) != i1
    6286           25 :       || !const_int_operand (operands[2], i1))
    6287            0 :     return -1;
    6288              :   return 0;
    6289              : }
    6290              : 
    6291              : int
    6292         1317 : pattern1823 (rtx x1, machine_mode i1, machine_mode i2)
    6293              : {
    6294         1317 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6295         1317 :   rtx x2, x3;
    6296         1317 :   int res ATTRIBUTE_UNUSED;
    6297         1317 :   if (!register_operand (operands[0], i1)
    6298         1317 :       || GET_MODE (x1) != i1)
    6299              :     return -1;
    6300          280 :   x2 = XEXP (x1, 0);
    6301          280 :   if (GET_MODE (x2) != i2
    6302          280 :       || !nonimmediate_operand (operands[1], i1))
    6303            0 :     return -1;
    6304          280 :   x3 = XEXP (x2, 1);
    6305          280 :   if (!rtx_equal_p (x3, operands[1]))
    6306              :     return -1;
    6307              :   return 0;
    6308              : }
    6309              : 
    6310              : int
    6311          836 : pattern1828 (rtx x1, machine_mode i1, machine_mode i2)
    6312              : {
    6313          836 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6314          836 :   rtx x2, x3;
    6315          836 :   int res ATTRIBUTE_UNUSED;
    6316          836 :   if (!register_operand (operands[0], i1)
    6317          828 :       || GET_MODE (x1) != i1
    6318          828 :       || !register_operand (operands[2], i1)
    6319          828 :       || !vsib_mem_operator (operands[7], i2)
    6320          828 :       || !register_operand (operands[5], i1)
    6321         1598 :       || !scratch_operand (operands[1], i1))
    6322           74 :     return -1;
    6323          762 :   x2 = XVECEXP (x1, 0, 1);
    6324          762 :   x3 = XEXP (x2, 0);
    6325          762 :   switch (GET_MODE (x3))
    6326              :     {
    6327            0 :     case E_SImode:
    6328            0 :       return pattern1827 (
    6329            0 : E_SImode); /* [-1, 1] */
    6330              : 
    6331          762 :     case E_DImode:
    6332          762 :       res = pattern1827 (
    6333              : E_DImode);
    6334          762 :       if (res >= 0)
    6335          686 :         return res + 2; /* [2, 3] */
    6336              :       return -1;
    6337              : 
    6338              :     default:
    6339              :       return -1;
    6340              :     }
    6341              : }
    6342              : 
    6343              : int
    6344        61831 : pattern1840 (rtx x1, machine_mode i1, machine_mode i2)
    6345              : {
    6346        61831 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6347        61831 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6348        61831 :   rtx x10;
    6349        61831 :   int res ATTRIBUTE_UNUSED;
    6350        61831 :   x2 = XVECEXP (x1, 0, 0);
    6351        61831 :   x3 = XEXP (x2, 1);
    6352        61831 :   x4 = XEXP (x3, 0);
    6353        61831 :   x5 = XEXP (x4, 0);
    6354        61831 :   if (GET_MODE (x5) != i2
    6355        61831 :       || !nonimmediate_operand (operands[1], i1))
    6356           26 :     return -1;
    6357        61805 :   x6 = XEXP (x4, 1);
    6358        61805 :   if (GET_MODE (x6) != i2
    6359        61805 :       || !nonimmediate_operand (operands[2], i1))
    6360           36 :     return -1;
    6361        61769 :   x7 = XEXP (x3, 1);
    6362        61769 :   if (GET_MODE (x7) != i2)
    6363              :     return -1;
    6364        61769 :   x8 = XEXP (x7, 0);
    6365        61769 :   if (GET_MODE (x8) != i1
    6366        61769 :       || !register_operand (operands[0], i1))
    6367            0 :     return -1;
    6368        61769 :   x9 = XVECEXP (x1, 0, 1);
    6369        61769 :   x10 = XEXP (x9, 1);
    6370        61769 :   if (GET_MODE (x10) != i1
    6371        61769 :       || !scratch_operand (operands[3], i1))
    6372           20 :     return -1;
    6373              :   return 0;
    6374              : }
    6375              : 
    6376              : int
    6377          246 : pattern1852 (rtx x1, machine_mode i1)
    6378              : {
    6379          246 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6380          246 :   int res ATTRIBUTE_UNUSED;
    6381          246 :   if (!register_operand (operands[5], i1))
    6382              :     return -1;
    6383          110 :   switch (GET_MODE (x1))
    6384              :     {
    6385            0 :     case E_SImode:
    6386            0 :       if (!vsib_address_operand (operands[3], E_SImode))
    6387              :         return -1;
    6388              :       return 0;
    6389              : 
    6390          110 :     case E_DImode:
    6391          110 :       if (!vsib_address_operand (operands[3], E_DImode))
    6392              :         return -1;
    6393              :       return 1;
    6394              : 
    6395              :     default:
    6396              :       return -1;
    6397              :     }
    6398              : }
    6399              : 
    6400              : int
    6401         9445 : pattern1860 (rtx x1)
    6402              : {
    6403         9445 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6404         9445 :   rtx x2, x3, x4, x5;
    6405         9445 :   int res ATTRIBUTE_UNUSED;
    6406         9445 :   x2 = XEXP (x1, 1);
    6407         9445 :   if (GET_CODE (x2) != COMPARE)
    6408              :     return -1;
    6409         2584 :   x3 = XEXP (x2, 1);
    6410         2584 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6411              :     return -1;
    6412          379 :   x4 = XEXP (x1, 0);
    6413          379 :   if (GET_CODE (x4) != REG
    6414          379 :       || REGNO (x4) != 17)
    6415              :     return -1;
    6416          379 :   x5 = XEXP (x2, 0);
    6417          379 :   if (!rtx_equal_p (x5, operands[0]))
    6418              :     return -1;
    6419              :   return 0;
    6420              : }
    6421              : 
    6422              : int
    6423          552 : pattern1867 (rtx x1, machine_mode i1)
    6424              : {
    6425          552 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6426          552 :   rtx x2;
    6427          552 :   int res ATTRIBUTE_UNUSED;
    6428          552 :   if (!register_operand (operands[0], i1)
    6429          552 :       || GET_MODE (x1) != i1)
    6430              :     return -1;
    6431          502 :   x2 = XEXP (x1, 0);
    6432          502 :   if (GET_MODE (x2) != i1
    6433          502 :       || !nonimmediate_operand (operands[1], i1)
    6434         1004 :       || !nonimm_or_0_operand (operands[10], i1))
    6435           24 :     return -1;
    6436              :   return 0;
    6437              : }
    6438              : 
    6439              : int
    6440          736 : pattern1871 ()
    6441              : {
    6442          736 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6443          736 :   int res ATTRIBUTE_UNUSED;
    6444          736 :   if (!const_0_to_15_operand (operands[2], E_VOIDmode)
    6445          736 :       || !const_0_to_15_operand (operands[3], E_VOIDmode)
    6446          736 :       || !const_0_to_15_operand (operands[4], E_VOIDmode)
    6447          736 :       || !const_0_to_15_operand (operands[5], E_VOIDmode)
    6448          736 :       || !const_0_to_15_operand (operands[6], E_VOIDmode)
    6449          736 :       || !const_0_to_15_operand (operands[7], E_VOIDmode)
    6450          736 :       || !const_0_to_15_operand (operands[8], E_VOIDmode)
    6451          736 :       || !const_0_to_15_operand (operands[9], E_VOIDmode)
    6452          736 :       || !const_0_to_15_operand (operands[10], E_VOIDmode)
    6453          736 :       || !const_0_to_15_operand (operands[11], E_VOIDmode)
    6454          736 :       || !const_0_to_15_operand (operands[12], E_VOIDmode)
    6455          736 :       || !const_0_to_15_operand (operands[13], E_VOIDmode)
    6456          736 :       || !const_0_to_15_operand (operands[14], E_VOIDmode)
    6457          736 :       || !const_0_to_15_operand (operands[15], E_VOIDmode)
    6458          736 :       || !const_0_to_15_operand (operands[16], E_VOIDmode)
    6459         1472 :       || !const_0_to_15_operand (operands[17], E_VOIDmode))
    6460            0 :     return -1;
    6461              :   return 0;
    6462              : }
    6463              : 
    6464              : int
    6465          419 : pattern1885 ()
    6466              : {
    6467          419 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6468          419 :   int res ATTRIBUTE_UNUSED;
    6469          419 :   if (!const_0_to_7_operand (operands[4], E_VOIDmode)
    6470          419 :       || !const_0_to_7_operand (operands[5], E_VOIDmode)
    6471          419 :       || !const_0_to_7_operand (operands[6], E_VOIDmode)
    6472          419 :       || !const_8_to_15_operand (operands[7], E_VOIDmode)
    6473          419 :       || !const_8_to_15_operand (operands[8], E_VOIDmode)
    6474          419 :       || !const_8_to_15_operand (operands[9], E_VOIDmode)
    6475          838 :       || !const_8_to_15_operand (operands[10], E_VOIDmode))
    6476            0 :     return -1;
    6477              :   return 0;
    6478              : }
    6479              : 
    6480              : int
    6481        39165 : pattern1890 (rtx x1)
    6482              : {
    6483        39165 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6484        39165 :   rtx x2, x3, x4, x5;
    6485        39165 :   int res ATTRIBUTE_UNUSED;
    6486        39165 :   x2 = XVECEXP (x1, 0, 8);
    6487        39165 :   if (XWINT (x2, 0) != 12L)
    6488              :     return -1;
    6489        39165 :   x3 = XVECEXP (x1, 0, 9);
    6490        39165 :   if (XWINT (x3, 0) != 28L)
    6491              :     return -1;
    6492        39165 :   x4 = XVECEXP (x1, 0, 10);
    6493        39165 :   if (XWINT (x4, 0) != 13L)
    6494              :     return -1;
    6495        39165 :   x5 = XVECEXP (x1, 0, 11);
    6496        39165 :   if (XWINT (x5, 0) != 29L)
    6497            0 :     return -1;
    6498              :   return 0;
    6499              : }
    6500              : 
    6501              : int
    6502         2523 : pattern1896 (rtx x1)
    6503              : {
    6504         2523 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6505         2523 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6506         2523 :   rtx x10, x11, x12;
    6507         2523 :   int res ATTRIBUTE_UNUSED;
    6508         2523 :   x2 = XVECEXP (x1, 0, 0);
    6509         2523 :   x3 = XEXP (x2, 1);
    6510         2523 :   x4 = XEXP (x3, 0);
    6511         2523 :   x5 = XEXP (x4, 1);
    6512         2523 :   switch (GET_CODE (x5))
    6513              :     {
    6514         2024 :     case SIGN_EXTEND:
    6515         2024 :       x6 = XEXP (x5, 0);
    6516         2024 :       operands[2] = x6;
    6517         2024 :       x7 = XEXP (x3, 1);
    6518         2024 :       x8 = XEXP (x7, 0);
    6519         2024 :       x9 = XEXP (x8, 1);
    6520         2024 :       if (!rtx_equal_p (x9, operands[2]))
    6521              :         return -1;
    6522         2024 :       x10 = XVECEXP (x1, 0, 1);
    6523         2024 :       x11 = XEXP (x10, 1);
    6524         2024 :       x12 = XEXP (x11, 1);
    6525         2024 :       if (!rtx_equal_p (x12, operands[2]))
    6526              :         return -1;
    6527         2024 :       switch (GET_MODE (x4))
    6528              :         {
    6529              :         case E_HImode:
    6530              :           return 0;
    6531              : 
    6532              :         case E_SImode:
    6533              :           return 1;
    6534              : 
    6535              :         case E_DImode:
    6536              :           return 2;
    6537              : 
    6538              :         case E_TImode:
    6539              :           return 3;
    6540              : 
    6541              :         default:
    6542              :           return -1;
    6543              :         }
    6544              : 
    6545          499 :     case CONST_INT:
    6546          499 :       operands[6] = x5;
    6547          499 :       x7 = XEXP (x3, 1);
    6548          499 :       x8 = XEXP (x7, 0);
    6549          499 :       x9 = XEXP (x8, 1);
    6550          499 :       operands[2] = x9;
    6551          499 :       x10 = XVECEXP (x1, 0, 1);
    6552          499 :       x11 = XEXP (x10, 1);
    6553          499 :       x12 = XEXP (x11, 1);
    6554          499 :       if (!rtx_equal_p (x12, operands[2]))
    6555              :         return -1;
    6556          499 :       switch (GET_MODE (x4))
    6557              :         {
    6558              :         case E_HImode:
    6559              :           return 4;
    6560              : 
    6561              :         case E_SImode:
    6562              :           return 5;
    6563              : 
    6564              :         case E_DImode:
    6565              :           return 6;
    6566              : 
    6567              :         case E_TImode:
    6568              :           return 7;
    6569              : 
    6570              :         default:
    6571              :           return -1;
    6572              :         }
    6573              : 
    6574              :     default:
    6575              :       return -1;
    6576              :     }
    6577              : }
    6578              : 
    6579              : int
    6580            2 : pattern1908 (rtx x1)
    6581              : {
    6582            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6583            2 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6584            2 :   int res ATTRIBUTE_UNUSED;
    6585            2 :   x2 = XEXP (x1, 1);
    6586            2 :   x3 = XEXP (x2, 0);
    6587            2 :   x4 = XEXP (x3, 0);
    6588            2 :   if (GET_CODE (x4) != REG
    6589            2 :       || REGNO (x4) != 17
    6590            4 :       || GET_MODE (x4) != E_CCZmode)
    6591              :     return -1;
    6592            2 :   x5 = XEXP (x3, 1);
    6593            2 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6594              :     return -1;
    6595            2 :   x6 = XEXP (x2, 1);
    6596            2 :   if (GET_CODE (x6) != LABEL_REF)
    6597              :     return -1;
    6598            2 :   x7 = XEXP (x2, 2);
    6599            2 :   if (GET_CODE (x7) != PC)
    6600              :     return -1;
    6601            2 :   x8 = XEXP (x1, 0);
    6602            2 :   if (GET_CODE (x8) != PC)
    6603            0 :     return -1;
    6604              :   return 0;
    6605              : }
    6606              : 
    6607              : int
    6608          968 : pattern1916 (rtx x1, machine_mode i1, machine_mode i2)
    6609              : {
    6610          968 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6611          968 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6612          968 :   int res ATTRIBUTE_UNUSED;
    6613          968 :   x2 = XVECEXP (x1, 0, 0);
    6614          968 :   x3 = XEXP (x2, 1);
    6615          968 :   x4 = XEXP (x3, 1);
    6616          968 :   if (GET_MODE (x4) != i2)
    6617              :     return -1;
    6618          968 :   x5 = XEXP (x4, 0);
    6619          968 :   if (GET_MODE (x5) != i1)
    6620              :     return -1;
    6621          968 :   x6 = XEXP (x5, 0);
    6622          968 :   if (GET_MODE (x6) != i1
    6623          968 :       || !ix86_carry_flag_operator (operands[5], i1)
    6624         1936 :       || !nonimmediate_operand (operands[0], i1))
    6625            0 :     return -1;
    6626          968 :   x7 = XVECEXP (x1, 0, 1);
    6627          968 :   x8 = XEXP (x7, 1);
    6628          968 :   if (GET_MODE (x8) != i1)
    6629              :     return -1;
    6630          968 :   x9 = XEXP (x8, 0);
    6631          968 :   if (GET_MODE (x9) != i1)
    6632              :     return -1;
    6633              :   return 0;
    6634              : }
    6635              : 
    6636              : int
    6637         1622 : pattern1924 (rtx x1)
    6638              : {
    6639         1622 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6640         1622 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6641         1622 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6642         1622 :   int res ATTRIBUTE_UNUSED;
    6643         1622 :   x2 = XEXP (x1, 0);
    6644         1622 :   x3 = XEXP (x2, 0);
    6645         1622 :   x4 = XEXP (x3, 0);
    6646         1622 :   x5 = XEXP (x4, 0);
    6647         1622 :   x6 = XEXP (x5, 0);
    6648         1622 :   operands[1] = x6;
    6649         1622 :   if (!nonimmediate_operand (operands[1], E_V8HImode))
    6650              :     return -1;
    6651         1399 :   x7 = XEXP (x3, 1);
    6652         1399 :   x8 = XEXP (x7, 0);
    6653         1399 :   x9 = XEXP (x8, 0);
    6654         1399 :   operands[2] = x9;
    6655         1399 :   if (!nonimmediate_operand (operands[2], E_V8HImode))
    6656              :     return -1;
    6657         1217 :   x10 = XEXP (x1, 1);
    6658         1217 :   operands[3] = x10;
    6659         1217 :   if (!register_operand (operands[3], E_V4SImode))
    6660              :     return -1;
    6661         1205 :   x11 = XEXP (x2, 1);
    6662         1205 :   x12 = XEXP (x11, 0);
    6663         1205 :   x13 = XEXP (x12, 0);
    6664         1205 :   x14 = XEXP (x13, 0);
    6665         1205 :   if (!rtx_equal_p (x14, operands[1]))
    6666              :     return -1;
    6667         1205 :   x15 = XEXP (x11, 1);
    6668         1205 :   x16 = XEXP (x15, 0);
    6669         1205 :   x17 = XEXP (x16, 0);
    6670         1205 :   if (!rtx_equal_p (x17, operands[2]))
    6671              :     return -1;
    6672              :   return 0;
    6673              : }
    6674              : 
    6675              :  int
    6676     54935146 : recog_5 (rtx x1 ATTRIBUTE_UNUSED,
    6677              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6678              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6679              : {
    6680     54935146 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6681     54935146 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6682     54935146 :   int res ATTRIBUTE_UNUSED;
    6683     54935146 :   x2 = XEXP (x1, 1);
    6684     54935146 :   x3 = XEXP (x2, 0);
    6685     54935146 :   operands[0] = x3;
    6686     54935146 :   res = recog_4 (x1, insn, pnum_clobbers);
    6687     54935146 :   if (res >= 0)
    6688              :     return res;
    6689      1546921 :   if (GET_CODE (x3) != SUBREG
    6690       112485 :       || maybe_ne (SUBREG_BYTE (x3), 0)
    6691      1648808 :       || GET_MODE (x3) != E_QImode)
    6692              :     return -1;
    6693        39247 :   x4 = XEXP (x3, 0);
    6694        39247 :   switch (GET_CODE (x4))
    6695              :     {
    6696        24965 :     case ASHIFTRT:
    6697        24965 :     case LSHIFTRT:
    6698        24965 :     case SIGN_EXTRACT:
    6699        24965 :     case ZERO_EXTRACT:
    6700        24965 :       operands[2] = x4;
    6701        24965 :       x5 = XEXP (x4, 0);
    6702        24965 :       operands[0] = x5;
    6703        24965 :       if (!int248_register_operand (operands[0], E_VOIDmode))
    6704              :         return -1;
    6705        24739 :       x6 = XEXP (x2, 1);
    6706        24739 :       operands[1] = x6;
    6707        24739 :       switch (pattern1218 ())
    6708              :         {
    6709          276 :         case 0:
    6710          276 :           if (const0_operand (operands[1], E_QImode)
    6711          304 :               && 
    6712              : #line 1676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6713              : (ix86_match_ccmode (insn, CCNOmode)))
    6714              :             return 28; /* *cmpqi_exthi_2 */
    6715              :           if (general_operand (operands[1], E_QImode)
    6716              :               && 
    6717              : #line 1699 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6718              : (ix86_match_ccmode (insn, CCmode)))
    6719              :             return 31; /* *cmpqi_exthi_3 */
    6720              :           break;
    6721              : 
    6722              :         case 1:
    6723              :           if (const0_operand (operands[1], E_QImode)
    6724              :               && 
    6725              : #line 1676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6726              : (ix86_match_ccmode (insn, CCNOmode)))
    6727              :             return 29; /* *cmpqi_extsi_2 */
    6728              :           if (general_operand (operands[1], E_QImode)
    6729              :               && 
    6730              : #line 1699 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6731              : (ix86_match_ccmode (insn, CCmode)))
    6732              :             return 32; /* *cmpqi_extsi_3 */
    6733              :           break;
    6734              : 
    6735              :         case 2:
    6736              :           if (const0_operand (operands[1], E_QImode)
    6737              :               && (
    6738              : #line 1676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6739              : (ix86_match_ccmode (insn, CCNOmode)) && 
    6740              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6741              : (TARGET_64BIT)))
    6742              :             return 30; /* *cmpqi_extdi_2 */
    6743              :           if (general_operand (operands[1], E_QImode)
    6744              :               && (
    6745              : #line 1699 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6746              : (ix86_match_ccmode (insn, CCmode)) && 
    6747              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6748              : (TARGET_64BIT)))
    6749              :             return 33; /* *cmpqi_extdi_3 */
    6750              :           break;
    6751              : 
    6752              :         default:
    6753              :           break;
    6754              :         }
    6755              :       if (GET_CODE (x6) != SUBREG
    6756              :           || maybe_ne (SUBREG_BYTE (x6), 0)
    6757              :           || GET_MODE (x6) != E_QImode)
    6758              :         return -1;
    6759              :       x7 = XEXP (x6, 0);
    6760              :       switch (GET_CODE (x7))
    6761              :         {
    6762              :         case ASHIFTRT:
    6763              :         case LSHIFTRT:
    6764              :         case SIGN_EXTRACT:
    6765              :         case ZERO_EXTRACT:
    6766              :           operands[3] = x7;
    6767              :           x8 = XEXP (x7, 0);
    6768              :           operands[1] = x8;
    6769              :           if (!int248_register_operand (operands[1], E_VOIDmode))
    6770              :             return -1;
    6771              :           switch (GET_MODE (operands[2]))
    6772              :             {
    6773              :             case E_HImode:
    6774              :               if (!extract_high_operator (operands[2], E_HImode)
    6775              :                   || !extract_high_operator (operands[3], E_HImode)
    6776              :                   || !
    6777              : #line 1714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6778              : (ix86_match_ccmode (insn, CCmode)))
    6779              :                 return -1;
    6780              :               return 34; /* *cmpqi_exthi_4 */
    6781              : 
    6782              :             case E_SImode:
    6783              :               if (!extract_high_operator (operands[2], E_SImode)
    6784              :                   || !extract_high_operator (operands[3], E_SImode)
    6785              :                   || !
    6786              : #line 1714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6787              : (ix86_match_ccmode (insn, CCmode)))
    6788              :                 return -1;
    6789              :               return 35; /* *cmpqi_extsi_4 */
    6790              : 
    6791              :             case E_DImode:
    6792              :               if (!extract_high_operator (operands[2], E_DImode)
    6793              :                   || !extract_high_operator (operands[3], E_DImode)
    6794              :                   || !(
    6795              : #line 1714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6796              : (ix86_match_ccmode (insn, CCmode)) && 
    6797              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6798              : (TARGET_64BIT)))
    6799              :                 return -1;
    6800              :               return 36; /* *cmpqi_extdi_4 */
    6801              : 
    6802              :             default:
    6803              :               return -1;
    6804              :             }
    6805              : 
    6806              :         default:
    6807              :           return -1;
    6808              :         }
    6809              : 
    6810              :     default:
    6811              :       return -1;
    6812              :     }
    6813              : }
    6814              : 
    6815              :  int
    6816              : recog_12 (rtx x1 ATTRIBUTE_UNUSED,
    6817              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6818              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6819              : {
    6820              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6821              :   rtx x2, x3, x4;
    6822              :   int res ATTRIBUTE_UNUSED;
    6823              :   switch (pattern74 (x1))
    6824              :     {
    6825              :     case 0:
    6826              :       x2 = XEXP (x1, 1);
    6827              :       x3 = XVECEXP (x2, 0, 2);
    6828              :       operands[3] = x3;
    6829              :       x4 = XVECEXP (x2, 0, 1);
    6830              :       operands[2] = x4;
    6831              :       switch (pattern976 (x2))
    6832              :         {
    6833              :         case 0:
    6834              :           switch (GET_MODE (operands[1]))
    6835              :             {
    6836              :             case E_HFmode:
    6837              :               if (register_operand (operands[1], E_HFmode)
    6838              :                   && nonimmediate_operand (operands[2], E_HFmode)
    6839              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6840              :                   && 
    6841              : #line 20745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6842              : (TARGET_AVX512FP16))
    6843              :                 return 1493; /* setcc_hf_mask */
    6844              :               break;
    6845              : 
    6846              :             case E_V8HFmode:
    6847              :               if (register_operand (operands[1], E_V8HFmode)
    6848              :                   && nonimmediate_operand (operands[2], E_V8HFmode)
    6849              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6850              :                   && (
    6851              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6852              : (TARGET_AVX512F && 1) && 
    6853              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6854              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
    6855              :                 return 3344; /* avx512fp16_cmpv8hf3 */
    6856              :               break;
    6857              : 
    6858              :             case E_V8SFmode:
    6859              :               if (register_operand (operands[1], E_V8SFmode)
    6860              :                   && nonimmediate_operand (operands[2], E_V8SFmode)
    6861              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6862              :                   && (
    6863              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6864              : (TARGET_AVX512F && 1) && 
    6865              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6866              : (TARGET_AVX512VL)))
    6867              :                 return 3350; /* avx512vl_cmpv8sf3 */
    6868              :               break;
    6869              : 
    6870              :             case E_V4SFmode:
    6871              :               if (register_operand (operands[1], E_V4SFmode)
    6872              :                   && nonimmediate_operand (operands[2], E_V4SFmode)
    6873              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6874              :                   && (
    6875              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6876              : (TARGET_AVX512F && 1) && 
    6877              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6878              : (TARGET_AVX512VL)))
    6879              :                 return 3352; /* avx512vl_cmpv4sf3 */
    6880              :               break;
    6881              : 
    6882              :             case E_V8DFmode:
    6883              :               if (register_operand (operands[1], E_V8DFmode)
    6884              :                   && nonimmediate_operand (operands[2], E_V8DFmode)
    6885              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6886              :                   && 
    6887              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6888              : (TARGET_AVX512F && 1))
    6889              :                 return 3354; /* avx512f_cmpv8df3 */
    6890              :               break;
    6891              : 
    6892              :             case E_V4DFmode:
    6893              :               if (register_operand (operands[1], E_V4DFmode)
    6894              :                   && nonimmediate_operand (operands[2], E_V4DFmode)
    6895              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6896              :                   && (
    6897              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6898              : (TARGET_AVX512F && 1) && 
    6899              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6900              : (TARGET_AVX512VL)))
    6901              :                 return 3358; /* avx512vl_cmpv4df3 */
    6902              :               break;
    6903              : 
    6904              :             case E_V2DFmode:
    6905              :               if (register_operand (operands[1], E_V2DFmode)
    6906              :                   && nonimmediate_operand (operands[2], E_V2DFmode)
    6907              :                   && const_0_to_31_operand (operands[3], E_SImode)
    6908              :                   && (
    6909              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6910              : (TARGET_AVX512F && 1) && 
    6911              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6912              : (TARGET_AVX512VL)))
    6913              :                 return 3360; /* avx512vl_cmpv2df3 */
    6914              :               break;
    6915              : 
    6916              :             case E_V8HImode:
    6917              :               if (const_0_to_7_operand (operands[3], E_SImode))
    6918              :                 {
    6919              :                   if (register_operand (operands[1], E_V8HImode)
    6920              :                       && nonimmediate_operand (operands[2], E_V8HImode)
    6921              :                       && (
    6922              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6923              : (TARGET_AVX512F) && 
    6924              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6925              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    6926              :                     return 3492; /* avx512vl_cmpv8hi3 */
    6927              :                   if (general_operand (operands[1], E_V8HImode)
    6928              :                       && general_operand (operands[2], E_V8HImode)
    6929              :                       && (
    6930              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6931              : (TARGET_AVX512F && ix86_pre_reload_split ()
    6932              :    && rtx_equal_p (operands[1], operands[2])
    6933              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    6934              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6935              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    6936              :                     return 3564; /* *avx512vl_cmpv8hi3_dup_op */
    6937              :                 }
    6938              :               break;
    6939              : 
    6940              :             case E_V8SImode:
    6941              :               if (const_0_to_7_operand (operands[3], E_SImode))
    6942              :                 {
    6943              :                   if (register_operand (operands[1], E_V8SImode)
    6944              :                       && nonimmediate_operand (operands[2], E_V8SImode)
    6945              :                       && (
    6946              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6947              : (TARGET_AVX512F) && 
    6948              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6949              : (TARGET_AVX512VL)))
    6950              :                     return 3496; /* avx512vl_cmpv8si3 */
    6951              :                   if (general_operand (operands[1], E_V8SImode)
    6952              :                       && general_operand (operands[2], E_V8SImode)
    6953              :                       && (
    6954              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6955              : (TARGET_AVX512F && ix86_pre_reload_split ()
    6956              :    && rtx_equal_p (operands[1], operands[2])
    6957              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    6958              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6959              : (TARGET_AVX512VL)))
    6960              :                     return 3568; /* *avx512vl_cmpv8si3_dup_op */
    6961              :                 }
    6962              :               break;
    6963              : 
    6964              :             case E_V4SImode:
    6965              :               if (const_0_to_7_operand (operands[3], E_SImode))
    6966              :                 {
    6967              :                   if (register_operand (operands[1], E_V4SImode)
    6968              :                       && nonimmediate_operand (operands[2], E_V4SImode)
    6969              :                       && (
    6970              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6971              : (TARGET_AVX512F) && 
    6972              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6973              : (TARGET_AVX512VL)))
    6974              :                     return 3498; /* avx512vl_cmpv4si3 */
    6975              :                   if (general_operand (operands[1], E_V4SImode)
    6976              :                       && general_operand (operands[2], E_V4SImode)
    6977              :                       && (
    6978              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6979              : (TARGET_AVX512F && ix86_pre_reload_split ()
    6980              :    && rtx_equal_p (operands[1], operands[2])
    6981              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    6982              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6983              : (TARGET_AVX512VL)))
    6984              :                     return 3570; /* *avx512vl_cmpv4si3_dup_op */
    6985              :                 }
    6986              :               break;
    6987              : 
    6988              :             case E_V8DImode:
    6989              :               if (const_0_to_7_operand (operands[3], E_SImode))
    6990              :                 {
    6991              :                   if (register_operand (operands[1], E_V8DImode)
    6992              :                       && nonimmediate_operand (operands[2], E_V8DImode)
    6993              :                       && 
    6994              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6995              : (TARGET_AVX512F))
    6996              :                     return 3500; /* avx512f_cmpv8di3 */
    6997              :                   if (general_operand (operands[1], E_V8DImode)
    6998              :                       && general_operand (operands[2], E_V8DImode)
    6999              :                       && 
    7000              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7001              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7002              :    && rtx_equal_p (operands[1], operands[2])
    7003              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))))
    7004              :                     return 3572; /* *avx512f_cmpv8di3_dup_op */
    7005              :                 }
    7006              :               break;
    7007              : 
    7008              :             case E_V4DImode:
    7009              :               if (const_0_to_7_operand (operands[3], E_SImode))
    7010              :                 {
    7011              :                   if (register_operand (operands[1], E_V4DImode)
    7012              :                       && nonimmediate_operand (operands[2], E_V4DImode)
    7013              :                       && (
    7014              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7015              : (TARGET_AVX512F) && 
    7016              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7017              : (TARGET_AVX512VL)))
    7018              :                     return 3502; /* avx512vl_cmpv4di3 */
    7019              :                   if (general_operand (operands[1], E_V4DImode)
    7020              :                       && general_operand (operands[2], E_V4DImode)
    7021              :                       && (
    7022              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7023              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7024              :    && rtx_equal_p (operands[1], operands[2])
    7025              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7026              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7027              : (TARGET_AVX512VL)))
    7028              :                     return 3574; /* *avx512vl_cmpv4di3_dup_op */
    7029              :                 }
    7030              :               break;
    7031              : 
    7032              :             case E_V2DImode:
    7033              :               if (const_0_to_7_operand (operands[3], E_SImode))
    7034              :                 {
    7035              :                   if (register_operand (operands[1], E_V2DImode)
    7036              :                       && nonimmediate_operand (operands[2], E_V2DImode)
    7037              :                       && (
    7038              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7039              : (TARGET_AVX512F) && 
    7040              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7041              : (TARGET_AVX512VL)))
    7042              :                     return 3504; /* avx512vl_cmpv2di3 */
    7043              :                   if (general_operand (operands[1], E_V2DImode)
    7044              :                       && general_operand (operands[2], E_V2DImode)
    7045              :                       && (
    7046              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7047              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7048              :    && rtx_equal_p (operands[1], operands[2])
    7049              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7050              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7051              : (TARGET_AVX512VL)))
    7052              :                     return 3576; /* *avx512vl_cmpv2di3_dup_op */
    7053              :                 }
    7054              :               break;
    7055              : 
    7056              :             case E_V8BFmode:
    7057              :               if (register_operand (operands[1], E_V8BFmode)
    7058              :                   && nonimmediate_operand (operands[2], E_V8BFmode)
    7059              :                   && const_0_to_31_operand (operands[3], E_VOIDmode)
    7060              :                   && 
    7061              : #line 33900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7062              : (TARGET_AVX10_2))
    7063              :                 return 10876; /* avx10_2_cmpbf16_v8bf */
    7064              :               break;
    7065              : 
    7066              :             default:
    7067              :               break;
    7068              :             }
    7069              :           break;
    7070              : 
    7071              :         case 1:
    7072              :           switch (GET_MODE (operands[1]))
    7073              :             {
    7074              :             case E_V16HFmode:
    7075              :               if (register_operand (operands[1], E_V16HFmode)
    7076              :                   && nonimmediate_operand (operands[2], E_V16HFmode)
    7077              :                   && const_0_to_31_operand (operands[3], E_SImode)
    7078              :                   && (
    7079              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7080              : (TARGET_AVX512F && 1) && 
    7081              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7082              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
    7083              :                 return 3342; /* avx512vl_cmpv16hf3 */
    7084              :               break;
    7085              : 
    7086              :             case E_V16SFmode:
    7087              :               if (register_operand (operands[1], E_V16SFmode)
    7088              :                   && nonimmediate_operand (operands[2], E_V16SFmode)
    7089              :                   && const_0_to_31_operand (operands[3], E_SImode)
    7090              :                   && 
    7091              : #line 4677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7092              : (TARGET_AVX512F && 1))
    7093              :                 return 3346; /* avx512f_cmpv16sf3 */
    7094              :               break;
    7095              : 
    7096              :             case E_V16QImode:
    7097              :               if (const_0_to_7_operand (operands[3], E_SImode))
    7098              :                 {
    7099              :                   if (register_operand (operands[1], E_V16QImode)
    7100              :                       && nonimmediate_operand (operands[2], E_V16QImode)
    7101              :                       && (
    7102              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7103              : (TARGET_AVX512F) && 
    7104              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7105              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7106              :                     return 3486; /* avx512vl_cmpv16qi3 */
    7107              :                   if (general_operand (operands[1], E_V16QImode)
    7108              :                       && general_operand (operands[2], E_V16QImode)
    7109              :                       && (
    7110              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7111              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7112              :    && rtx_equal_p (operands[1], operands[2])
    7113              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7114              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7115              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7116              :                     return 3558; /* *avx512vl_cmpv16qi3_dup_op */
    7117              :                 }
    7118              :               break;
    7119              : 
    7120              :             case E_V16HImode:
    7121              :               if (const_0_to_7_operand (operands[3], E_SImode))
    7122              :                 {
    7123              :                   if (register_operand (operands[1], E_V16HImode)
    7124              :                       && nonimmediate_operand (operands[2], E_V16HImode)
    7125              :                       && (
    7126              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7127              : (TARGET_AVX512F) && 
    7128              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7129              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7130              :                     return 3490; /* avx512vl_cmpv16hi3 */
    7131              :                   if (general_operand (operands[1], E_V16HImode)
    7132              :                       && general_operand (operands[2], E_V16HImode)
    7133              :                       && (
    7134              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7135              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7136              :    && rtx_equal_p (operands[1], operands[2])
    7137              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7138              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7139              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7140              :                     return 3562; /* *avx512vl_cmpv16hi3_dup_op */
    7141              :                 }
    7142              :               break;
    7143              : 
    7144              :             case E_V16SImode:
    7145              :               if (const_0_to_7_operand (operands[3], E_SImode))
    7146              :                 {
    7147              :                   if (register_operand (operands[1], E_V16SImode)
    7148              :                       && nonimmediate_operand (operands[2], E_V16SImode)
    7149              :                       && 
    7150              : #line 4872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7151              : (TARGET_AVX512F))
    7152              :                     return 3494; /* avx512f_cmpv16si3 */
    7153              :                   if (general_operand (operands[1], E_V16SImode)
    7154              :                       && general_operand (operands[2], E_V16SImode)
    7155              :                       && 
    7156              : #line 4964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7157              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7158              :    && rtx_equal_p (operands[1], operands[2])
    7159              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))))
    7160              :                     return 3566; /* *avx512f_cmpv16si3_dup_op */
    7161              :                 }
    7162              :               break;
    7163              : 
    7164              :             case E_V16BFmode:
    7165              :               if (register_operand (operands[1], E_V16BFmode)
    7166              :                   && nonimmediate_operand (operands[2], E_V16BFmode)
    7167              :                   && const_0_to_31_operand (operands[3], E_VOIDmode)
    7168              :                   && 
    7169              : #line 33900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7170              : (TARGET_AVX10_2))
    7171              :                 return 10874; /* avx10_2_cmpbf16_v16bf */
    7172              :               break;
    7173              : 
    7174              :             default:
    7175              :               break;
    7176              :             }
    7177              :           break;
    7178              : 
    7179              :         default:
    7180              :           break;
    7181              :         }
    7182              :       if (XWINT (x3, 0) != 0L)
    7183              :         return -1;
    7184              :       operands[2] = x4;
    7185              :       switch (pattern977 (x2))
    7186              :         {
    7187              :         case 0:
    7188              :           if (!(
    7189              : #line 4992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7190              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7191              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7192              : (TARGET_AVX512VL)))
    7193              :             return -1;
    7194              :           return 3582; /* *avx512vl_eqv16qi3_1 */
    7195              : 
    7196              :         case 1:
    7197              :           if (!(
    7198              : #line 4992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7199              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7200              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7201              : (TARGET_AVX512VL)))
    7202              :             return -1;
    7203              :           return 3594; /* *avx512vl_eqv16hi3_1 */
    7204              : 
    7205              :         case 2:
    7206              :           if (!
    7207              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7208              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7209              :             return -1;
    7210              :           return 3638; /* *avx512f_eqv16si3_1 */
    7211              : 
    7212              :         case 3:
    7213              :           if (!(
    7214              : #line 4992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7215              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7216              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7217              : (TARGET_AVX512VL)))
    7218              :             return -1;
    7219              :           return 3598; /* *avx512vl_eqv8hi3_1 */
    7220              : 
    7221              :         case 4:
    7222              :           if (!(
    7223              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7224              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7225              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7226              : (TARGET_AVX512VL)))
    7227              :             return -1;
    7228              :           return 3642; /* *avx512vl_eqv8si3_1 */
    7229              : 
    7230              :         case 5:
    7231              :           if (!(
    7232              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7233              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7234              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7235              : (TARGET_AVX512VL)))
    7236              :             return -1;
    7237              :           return 3646; /* *avx512vl_eqv4si3_1 */
    7238              : 
    7239              :         case 6:
    7240              :           if (!
    7241              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7242              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7243              :             return -1;
    7244              :           return 3650; /* *avx512f_eqv8di3_1 */
    7245              : 
    7246              :         case 7:
    7247              :           if (!(
    7248              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7249              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7250              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7251              : (TARGET_AVX512VL)))
    7252              :             return -1;
    7253              :           return 3654; /* *avx512vl_eqv4di3_1 */
    7254              : 
    7255              :         case 8:
    7256              :           if (!(
    7257              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7258              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7259              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7260              : (TARGET_AVX512VL)))
    7261              :             return -1;
    7262              :           return 3658; /* *avx512vl_eqv2di3_1 */
    7263              : 
    7264              :         default:
    7265              :           return -1;
    7266              :         }
    7267              : 
    7268              :     case 1:
    7269              :       if (!(
    7270              : #line 5189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7271              : (TARGET_AVX512BW && ix86_pre_reload_split ()
    7272              :   && ix86_binary_operator_ok (US_MINUS, V16QImode, operands)
    7273              :   && (INTVAL (operands[4]) & 3) == 0) && 
    7274              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7275              : (TARGET_AVX512VL)))
    7276              :         return -1;
    7277              :       return 3730; /* *avx512vl_ucmpv16qi3_1 */
    7278              : 
    7279              :     case 2:
    7280              :       if (!(
    7281              : #line 5189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7282              : (TARGET_AVX512BW && ix86_pre_reload_split ()
    7283              :   && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)
    7284              :   && (INTVAL (operands[4]) & 3) == 0) && 
    7285              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7286              : (TARGET_AVX512VL)))
    7287              :         return -1;
    7288              :       return 3736; /* *avx512vl_ucmpv16hi3_1 */
    7289              : 
    7290              :     case 3:
    7291              :       if (!(
    7292              : #line 5189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7293              : (TARGET_AVX512BW && ix86_pre_reload_split ()
    7294              :   && ix86_binary_operator_ok (US_MINUS, V8HImode, operands)
    7295              :   && (INTVAL (operands[4]) & 3) == 0) && 
    7296              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7297              : (TARGET_AVX512VL)))
    7298              :         return -1;
    7299              :       return 3738; /* *avx512vl_ucmpv8hi3_1 */
    7300              : 
    7301              :     default:
    7302              :       return -1;
    7303              :     }
    7304              : }
    7305              : 
    7306              :  int
    7307              : recog_28 (rtx x1 ATTRIBUTE_UNUSED,
    7308              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7309              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7310              : {
    7311              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7312              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    7313              :   int res ATTRIBUTE_UNUSED;
    7314              :   x2 = XEXP (x1, 1);
    7315              :   x3 = XEXP (x2, 0);
    7316              :   switch (GET_CODE (x3))
    7317              :     {
    7318              :     case AND:
    7319              :       x4 = XEXP (x1, 0);
    7320              :       operands[0] = x4;
    7321              :       x5 = XEXP (x3, 1);
    7322              :       operands[3] = x5;
    7323              :       x6 = XEXP (x3, 0);
    7324              :       switch (GET_CODE (x6))
    7325              :         {
    7326              :         case REG:
    7327              :         case SUBREG:
    7328              :         case MEM:
    7329              :           operands[1] = x6;
    7330              :           switch (pattern75 (x2))
    7331              :             {
    7332              :             case 0:
    7333              :               if (!
    7334              : #line 3773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7335              : (TARGET_64BIT
    7336              :    && CONST_WIDE_INT_P (operands[3])
    7337              :    && CONST_WIDE_INT_NUNITS (operands[3]) == 2
    7338              :    && CONST_WIDE_INT_ELT (operands[3], 0) == -1
    7339              :    && CONST_WIDE_INT_ELT (operands[3], 1) == 0))
    7340              :                 return -1;
    7341              :               return 149; /* *insvti_highpart_1 */
    7342              : 
    7343              :             case 1:
    7344              :               if (!
    7345              : #line 3795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7346              : (TARGET_64BIT
    7347              :    && CONST_WIDE_INT_P (operands[3])
    7348              :    && CONST_WIDE_INT_NUNITS (operands[3]) == 2
    7349              :    && CONST_WIDE_INT_ELT (operands[3], 0) == 0
    7350              :    && CONST_WIDE_INT_ELT (operands[3], 1) == -1))
    7351              :                 return -1;
    7352              :               return 152; /* *insvti_lowpart_1 */
    7353              : 
    7354              :             case 2:
    7355              :               if (!
    7356              : #line 3817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7357              : (!TARGET_64BIT
    7358              :    && CONST_INT_P (operands[3])
    7359              :    && UINTVAL (operands[3]) == 0xffffffff00000000ll))
    7360              :                 return -1;
    7361              :               return 155; /* *insvdi_lowpart_1 */
    7362              : 
    7363              :             default:
    7364              :               return -1;
    7365              :             }
    7366              : 
    7367              :         case XOR:
    7368              :           if (pnum_clobbers == NULL
    7369              :               || GET_MODE (x6) != E_HImode
    7370              :               || !register_operand (operands[0], E_HImode)
    7371              :               || GET_MODE (x2) != E_HImode
    7372              :               || GET_MODE (x3) != E_HImode)
    7373              :             return -1;
    7374              :           x7 = XEXP (x6, 0);
    7375              :           operands[1] = x7;
    7376              :           if (!nonimmediate_operand (operands[1], E_HImode))
    7377              :             return -1;
    7378              :           x8 = XEXP (x6, 1);
    7379              :           operands[2] = x8;
    7380              :           if (!nonimmediate_operand (operands[2], E_HImode)
    7381              :               || !nonimmediate_operand (operands[3], E_HImode))
    7382              :             return -1;
    7383              :           x9 = XEXP (x2, 1);
    7384              :           if (!rtx_equal_p (x9, operands[1])
    7385              :               || !
    7386              : #line 14554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7387              : (TARGET_BMI && ix86_pre_reload_split ()))
    7388              :             return -1;
    7389              :           *pnum_clobbers = 1;
    7390              :           return 874; /* *xor2andn */
    7391              : 
    7392              :         default:
    7393              :           return -1;
    7394              :         }
    7395              : 
    7396              :     case ASHIFT:
    7397              :       x4 = XEXP (x1, 0);
    7398              :       operands[0] = x4;
    7399              :       x5 = XEXP (x3, 1);
    7400              :       operands[2] = x5;
    7401              :       x6 = XEXP (x3, 0);
    7402              :       switch (GET_CODE (x6))
    7403              :         {
    7404              :         case REG:
    7405              :         case SUBREG:
    7406              :           operands[1] = x6;
    7407              :           switch (pattern619 (x2))
    7408              :             {
    7409              :             case 0:
    7410              :               if (!
    7411              : #line 8274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7412              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    7413              :    && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
    7414              :        < (HOST_WIDE_INT_1U << INTVAL (operands[2])))))
    7415              :                 return -1;
    7416              :               return 381; /* *leaqi_general_4 */
    7417              : 
    7418              :             case 1:
    7419              :               if (!
    7420              : #line 8274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7421              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    7422              :    && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
    7423              :        < (HOST_WIDE_INT_1U << INTVAL (operands[2])))))
    7424              :                 return -1;
    7425              :               return 383; /* *leahi_general_4 */
    7426              : 
    7427              :             case 2:
    7428              :               if (!(
    7429              : #line 15063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7430              : (INTVAL (operands[2]) == 16 * BITS_PER_UNIT / 2
    7431              :    && (TImode == DImode
    7432              :        ? CONST_INT_P (operands[3])
    7433              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
    7434              :        : CONST_INT_P (operands[3])
    7435              :        ? INTVAL (operands[3]) >= 0
    7436              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
    7437              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
    7438              :    && !(CONST_INT_P (operands[3])
    7439              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
    7440              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
    7441              :                                                                      0)),
    7442              :                                         VOIDmode))) && 
    7443              : #line 1231 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7444              : (TARGET_64BIT)))
    7445              :                 return -1;
    7446              :               return 971; /* *concatditi3_5 */
    7447              : 
    7448              :             case 3:
    7449              :               if (!(
    7450              : #line 14986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7451              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
    7452              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7453              : (TARGET_64BIT)))
    7454              :                 return -1;
    7455              :               return 935; /* *concatditi3_1 */
    7456              : 
    7457              :             default:
    7458              :               return -1;
    7459              :             }
    7460              : 
    7461              :         case SIGN_EXTEND:
    7462              :           switch (pattern429 (x2))
    7463              :             {
    7464              :             case 0:
    7465              :               if (!(
    7466              : #line 15022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7467              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
    7468              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7469              : (TARGET_64BIT)))
    7470              :                 return -1;
    7471              :               return 950; /* *concatditi3_3 */
    7472              : 
    7473              :             case 1:
    7474              :               if (!(
    7475              : #line 15095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7476              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT
    7477              :    && (TImode == DImode
    7478              :        ? CONST_INT_P (operands[3])
    7479              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
    7480              :        : CONST_INT_P (operands[3])
    7481              :        ? INTVAL (operands[3]) >= 0
    7482              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
    7483              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
    7484              :    && !(CONST_INT_P (operands[3])
    7485              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
    7486              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
    7487              :                                                                      0)),
    7488              :                                         VOIDmode))) && 
    7489              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7490              : (TARGET_64BIT)))
    7491              :                 return -1;
    7492              :               return 980; /* *concatditi3_6 */
    7493              : 
    7494              :             default:
    7495              :               return -1;
    7496              :             }
    7497              : 
    7498              :         case ZERO_EXTEND:
    7499              :           switch (pattern429 (x2))
    7500              :             {
    7501              :             case 0:
    7502              :               if (!(
    7503              : #line 15022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7504              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
    7505              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7506              : (TARGET_64BIT)))
    7507              :                 return -1;
    7508              :               return 953; /* *concatditi3_3 */
    7509              : 
    7510              :             case 1:
    7511              :               if (!(
    7512              : #line 15095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7513              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT
    7514              :    && (TImode == DImode
    7515              :        ? CONST_INT_P (operands[3])
    7516              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
    7517              :        : CONST_INT_P (operands[3])
    7518              :        ? INTVAL (operands[3]) >= 0
    7519              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
    7520              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
    7521              :    && !(CONST_INT_P (operands[3])
    7522              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
    7523              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
    7524              :                                                                      0)),
    7525              :                                         VOIDmode))) && 
    7526              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7527              : (TARGET_64BIT)))
    7528              :                 return -1;
    7529              :               return 983; /* *concatditi3_6 */
    7530              : 
    7531              :             default:
    7532              :               return -1;
    7533              :             }
    7534              : 
    7535              :         default:
    7536              :           return -1;
    7537              :         }
    7538              : 
    7539              :     case REG:
    7540              :     case SUBREG:
    7541              :     case MEM:
    7542              :       operands[1] = x3;
    7543              :       switch (pattern82 (x1, pnum_clobbers))
    7544              :         {
    7545              :         case 0:
    7546              :           if (
    7547              : #line 13601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7548              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7549              :             {
    7550              :               *pnum_clobbers = 1;
    7551              :               return 761; /* *xorqi_1_slp */
    7552              :             }
    7553              :           break;
    7554              : 
    7555              :         case 1:
    7556              :           if (
    7557              : #line 13601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7558              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7559              :             {
    7560              :               *pnum_clobbers = 1;
    7561              :               return 764; /* *xorhi_1_slp */
    7562              :             }
    7563              :           break;
    7564              : 
    7565              :         case 2:
    7566              :           if ((
    7567              : #line 14382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7568              : (ix86_binary_operator_ok (XOR, TImode, operands, TARGET_APX_NDD)) && 
    7569              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7570              : (TARGET_64BIT)))
    7571              :             {
    7572              :               *pnum_clobbers = 1;
    7573              :               return 856; /* *xorti3_doubleword */
    7574              :             }
    7575              :           break;
    7576              : 
    7577              :         case 3:
    7578              :           if (
    7579              : #line 14444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7580              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)
    7581              :    && TARGET_APX_NF))
    7582              :             return 859; /* *xorhi_1_nf */
    7583              :           if (pnum_clobbers != NULL
    7584              :               && 
    7585              : #line 14444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7586              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)
    7587              :    && true))
    7588              :             {
    7589              :               *pnum_clobbers = 1;
    7590              :               return 860; /* *xorhi_1 */
    7591              :             }
    7592              :           break;
    7593              : 
    7594              :         case 4:
    7595              :           if (
    7596              : #line 1383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7597              : (TARGET_MMX_WITH_SSE))
    7598              :             return 2139; /* xorv2sf3 */
    7599              :           break;
    7600              : 
    7601              :         case 5:
    7602              :           if (
    7603              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7604              : (TARGET_SSE))
    7605              :             return 2173; /* xorv2bf3 */
    7606              :           break;
    7607              : 
    7608              :         case 6:
    7609              :           if ((
    7610              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7611              : (TARGET_SSE) && 
    7612              : #line 2251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7613              : (TARGET_MMX_WITH_SSE)))
    7614              :             return 2176; /* xorv4bf3 */
    7615              :           break;
    7616              : 
    7617              :         case 7:
    7618              :           if (
    7619              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7620              : (TARGET_SSE))
    7621              :             return 2179; /* xorv2hf3 */
    7622              :           break;
    7623              : 
    7624              :         case 8:
    7625              :           if ((
    7626              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7627              : (TARGET_SSE) && 
    7628              : #line 2252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7629              : (TARGET_MMX_WITH_SSE)))
    7630              :             return 2182; /* xorv4hf3 */
    7631              :           break;
    7632              : 
    7633              :         case 9:
    7634              :           if (
    7635              : #line 4721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7636              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7637              :    && ix86_binary_operator_ok (XOR, V8QImode, operands)))
    7638              :             return 2336; /* *mmx_xorv8qi3 */
    7639              :           break;
    7640              : 
    7641              :         case 10:
    7642              :           if (
    7643              : #line 4721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7644              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7645              :    && ix86_binary_operator_ok (XOR, V4HImode, operands)))
    7646              :             return 2339; /* *mmx_xorv4hi3 */
    7647              :           break;
    7648              : 
    7649              :         case 11:
    7650              :           if (
    7651              : #line 4721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7652              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7653              :    && ix86_binary_operator_ok (XOR, V2SImode, operands)))
    7654              :             return 2342; /* *mmx_xorv2si3 */
    7655              :           break;
    7656              : 
    7657              :         case 12:
    7658              :           if (
    7659              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7660              : (ix86_binary_operator_ok (XOR, V4QImode, operands)))
    7661              :             {
    7662              :               *pnum_clobbers = 1;
    7663              :               return 2345; /* *xorv4qi3 */
    7664              :             }
    7665              :           break;
    7666              : 
    7667              :         case 13:
    7668              :           if (
    7669              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7670              : (ix86_binary_operator_ok (XOR, V2QImode, operands)))
    7671              :             {
    7672              :               *pnum_clobbers = 1;
    7673              :               return 2348; /* *xorv2qi3 */
    7674              :             }
    7675              :           break;
    7676              : 
    7677              :         case 14:
    7678              :           if (
    7679              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7680              : (ix86_binary_operator_ok (XOR, V2HImode, operands)))
    7681              :             {
    7682              :               *pnum_clobbers = 1;
    7683              :               return 2351; /* *xorv2hi3 */
    7684              :             }
    7685              :           break;
    7686              : 
    7687              :         case 15:
    7688              :           if (
    7689              : #line 6068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7690              : (TARGET_SSE))
    7691              :             return 3869; /* xorbf3 */
    7692              :           break;
    7693              : 
    7694              :         case 16:
    7695              :           if (
    7696              : #line 6068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7697              : (TARGET_SSE))
    7698              :             return 3872; /* xorhf3 */
    7699              :           break;
    7700              : 
    7701              :         case 17:
    7702              :           if (
    7703              : #line 6068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7704              : (TARGET_SSE))
    7705              :             return 3875; /* xorsf3 */
    7706              :           break;
    7707              : 
    7708              :         case 18:
    7709              :           if ((
    7710              : #line 6068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7711              : (TARGET_SSE) && 
    7712              : #line 1387 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7713              : (TARGET_SSE2)))
    7714              :             return 3878; /* xordf3 */
    7715              :           break;
    7716              : 
    7717              :         case 19:
    7718              :           if (
    7719              : #line 6143 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7720              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7721              :             return 3881; /* *xortf3 */
    7722              :           break;
    7723              : 
    7724              :         default:
    7725              :           break;
    7726              :         }
    7727              :       if (pnum_clobbers != NULL
    7728              :           && pattern83 (x2) == 0)
    7729              :         {
    7730              :           x6 = XEXP (x3, 0);
    7731              :           x7 = XEXP (x6, 0);
    7732              :           operands[2] = x7;
    7733              :           switch (pattern1091 (x1))
    7734              :             {
    7735              :             case 0:
    7736              :               if (
    7737              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7738              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7739              :                 {
    7740              :                   *pnum_clobbers = 1;
    7741              :                   return 767; /* *xorqi_exthi_1_slp */
    7742              :                 }
    7743              :               break;
    7744              : 
    7745              :             case 1:
    7746              :               if (
    7747              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7748              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7749              :                 {
    7750              :                   *pnum_clobbers = 1;
    7751              :                   return 770; /* *xorqi_extsi_1_slp */
    7752              :                 }
    7753              :               break;
    7754              : 
    7755              :             case 2:
    7756              :               if ((
    7757              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7758              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    7759              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7760              : (TARGET_64BIT)))
    7761              :                 {
    7762              :                   *pnum_clobbers = 1;
    7763              :                   return 773; /* *xorqi_extdi_1_slp */
    7764              :                 }
    7765              :               break;
    7766              : 
    7767              :             case 3:
    7768              :               *pnum_clobbers = 1;
    7769              :               return 791; /* *xorqi_exthi_0 */
    7770              : 
    7771              :             case 4:
    7772              :               *pnum_clobbers = 1;
    7773              :               return 794; /* *xorqi_extsi_0 */
    7774              : 
    7775              :             case 5:
    7776              :               if (
    7777              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7778              : (TARGET_64BIT))
    7779              :                 {
    7780              :                   *pnum_clobbers = 1;
    7781              :                   return 797; /* *xorqi_extdi_0 */
    7782              :                 }
    7783              :               break;
    7784              : 
    7785              :             default:
    7786              :               break;
    7787              :             }
    7788              :           x9 = XEXP (x2, 1);
    7789              :           if (GET_CODE (x9) == SUBREG)
    7790              :             {
    7791              :               switch (pattern1094 (x1))
    7792              :                 {
    7793              :                 case 0:
    7794              :                   if (
    7795              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7796              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7797              :                     {
    7798              :                       *pnum_clobbers = 1;
    7799              :                       return 776; /* *xorqi_exthi_2_slp */
    7800              :                     }
    7801              :                   break;
    7802              : 
    7803              :                 case 1:
    7804              :                   if (
    7805              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7806              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7807              :                     {
    7808              :                       *pnum_clobbers = 1;
    7809              :                       return 779; /* *xorqi_extsi_2_slp */
    7810              :                     }
    7811              :                   break;
    7812              : 
    7813              :                 case 2:
    7814              :                   if ((
    7815              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7816              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    7817              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7818              : (TARGET_64BIT)))
    7819              :                     {
    7820              :                       *pnum_clobbers = 1;
    7821              :                       return 782; /* *xorqi_extdi_2_slp */
    7822              :                     }
    7823              :                   break;
    7824              : 
    7825              :                 case 3:
    7826              :                   *pnum_clobbers = 1;
    7827              :                   return 800; /* *xorqi_ext2hi_0 */
    7828              : 
    7829              :                 case 4:
    7830              :                   *pnum_clobbers = 1;
    7831              :                   return 803; /* *xorqi_ext2si_0 */
    7832              : 
    7833              :                 case 5:
    7834              :                   if (
    7835              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7836              : (TARGET_64BIT))
    7837              :                     {
    7838              :                       *pnum_clobbers = 1;
    7839              :                       return 806; /* *xorqi_ext2di_0 */
    7840              :                     }
    7841              :                   break;
    7842              : 
    7843              :                 default:
    7844              :                   break;
    7845              :                 }
    7846              :             }
    7847              :         }
    7848              :       operands[1] = x3;
    7849              :       if (pattern84 (x1) != 0)
    7850              :         return -1;
    7851              :       if (
    7852              : #line 14665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7853              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)
    7854              :    && TARGET_APX_NF))
    7855              :         return 903; /* *xorqi_1_nf */
    7856              :       if (pnum_clobbers == NULL
    7857              :           || !
    7858              : #line 14665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7859              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)
    7860              :    && true))
    7861              :         return -1;
    7862              :       *pnum_clobbers = 1;
    7863              :       return 904; /* *xorqi_1 */
    7864              : 
    7865              :     case ZERO_EXTEND:
    7866              :       switch (pattern40 (x1))
    7867              :         {
    7868              :         case 0:
    7869              :           if (!(
    7870              : #line 15003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7871              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
    7872              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7873              : (TARGET_64BIT)))
    7874              :             return -1;
    7875              :           return 941; /* *concatditi3_2 */
    7876              : 
    7877              :         case 1:
    7878              :           if (!(
    7879              : #line 15047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7880              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
    7881              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7882              : (TARGET_64BIT)))
    7883              :             return -1;
    7884              :           return 962; /* *concatditi3_4 */
    7885              : 
    7886              :         case 2:
    7887              :           if (!(
    7888              : #line 15047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7889              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
    7890              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7891              : (TARGET_64BIT)))
    7892              :             return -1;
    7893              :           return 965; /* *concatditi3_4 */
    7894              : 
    7895              :         case 3:
    7896              :           if (!(
    7897              : #line 15124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7898              : (TImode == DImode
    7899              :    ? CONST_INT_P (operands[2])
    7900              :      && (UINTVAL (operands[2]) & GET_MODE_MASK (SImode)) == 0
    7901              :      && !ix86_endbr_immediate_operand (operands[2], VOIDmode)
    7902              :    : CONST_WIDE_INT_P (operands[2])
    7903              :      && CONST_WIDE_INT_NUNITS (operands[2]) == 2
    7904              :      && CONST_WIDE_INT_ELT (operands[2], 0) == 0
    7905              :      && !ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[2],
    7906              :                                                                     1)),
    7907              :                                        VOIDmode)) && 
    7908              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7909              : (TARGET_64BIT)))
    7910              :             return -1;
    7911              :           return 989; /* *concatditi3_7 */
    7912              : 
    7913              :         default:
    7914              :           return -1;
    7915              :         }
    7916              : 
    7917              :     default:
    7918              :       return -1;
    7919              :     }
    7920              : }
    7921              : 
    7922              :  int
    7923              : recog_49 (rtx x1 ATTRIBUTE_UNUSED,
    7924              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7925              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7926              : {
    7927              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7928              :   rtx x2, x3, x4;
    7929              :   int res ATTRIBUTE_UNUSED;
    7930              :   switch (pattern2 (x1, pnum_clobbers))
    7931              :     {
    7932              :     case 0:
    7933              :       if (!
    7934              : #line 19169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7935              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
    7936              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
    7937              :       == GET_MODE_BITSIZE (QImode)-1
    7938              :    && ix86_pre_reload_split ()))
    7939              :         return -1;
    7940              :       *pnum_clobbers = 1;
    7941              :       return 1331; /* *rotrqi3_mask_1 */
    7942              : 
    7943              :     case 1:
    7944              :       if (!
    7945              : #line 19169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7946              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
    7947              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
    7948              :       == GET_MODE_BITSIZE (HImode)-1
    7949              :    && ix86_pre_reload_split ()))
    7950              :         return -1;
    7951              :       *pnum_clobbers = 1;
    7952              :       return 1333; /* *rotrhi3_mask_1 */
    7953              : 
    7954              :     case 2:
    7955              :       if (!
    7956              : #line 19250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7957              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
    7958              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    7959              :    && ix86_pre_reload_split ()))
    7960              :         return -1;
    7961              :       *pnum_clobbers = 1;
    7962              :       return 1347; /* *rotrqi3_add_1 */
    7963              : 
    7964              :     case 3:
    7965              :       if (!
    7966              : #line 19250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7967              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
    7968              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    7969              :    && ix86_pre_reload_split ()))
    7970              :         return -1;
    7971              :       *pnum_clobbers = 1;
    7972              :       return 1349; /* *rotrhi3_add_1 */
    7973              : 
    7974              :     case 4:
    7975              :       if (!
    7976              : #line 19319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7977              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
    7978              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    7979              :    && ix86_pre_reload_split ()))
    7980              :         return -1;
    7981              :       *pnum_clobbers = 1;
    7982              :       return 1363; /* *rotrqi3_sub_1 */
    7983              : 
    7984              :     case 5:
    7985              :       if (!
    7986              : #line 19319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7987              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
    7988              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    7989              :    && ix86_pre_reload_split ()))
    7990              :         return -1;
    7991              :       *pnum_clobbers = 1;
    7992              :       return 1365; /* *rotrhi3_sub_1 */
    7993              : 
    7994              :     case 6:
    7995              :       x2 = XEXP (x1, 0);
    7996              :       operands[0] = x2;
    7997              :       x3 = XEXP (x1, 1);
    7998              :       switch (pattern270 (x3, pnum_clobbers))
    7999              :         {
    8000              :         case 0:
    8001              :           if (
    8002              : #line 19121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8003              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
    8004              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
    8005              :       == GET_MODE_BITSIZE (QImode)-1
    8006              :    && ix86_pre_reload_split ()))
    8007              :             {
    8008              :               *pnum_clobbers = 1;
    8009              :               return 1323; /* *rotrqi3_mask */
    8010              :             }
    8011              :           break;
    8012              : 
    8013              :         case 1:
    8014              :           if (
    8015              : #line 19121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8016              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
    8017              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
    8018              :       == GET_MODE_BITSIZE (HImode)-1
    8019              :    && ix86_pre_reload_split ()))
    8020              :             {
    8021              :               *pnum_clobbers = 1;
    8022              :               return 1325; /* *rotrhi3_mask */
    8023              :             }
    8024              :           break;
    8025              : 
    8026              :         case 2:
    8027              :           if (
    8028              : #line 19214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8029              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
    8030              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    8031              :    && ix86_pre_reload_split ()))
    8032              :             {
    8033              :               *pnum_clobbers = 1;
    8034              :               return 1339; /* *rotrqi3_add */
    8035              :             }
    8036              :           break;
    8037              : 
    8038              :         case 3:
    8039              :           if (
    8040              : #line 19214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8041              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
    8042              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    8043              :    && ix86_pre_reload_split ()))
    8044              :             {
    8045              :               *pnum_clobbers = 1;
    8046              :               return 1341; /* *rotrhi3_add */
    8047              :             }
    8048              :           break;
    8049              : 
    8050              :         case 4:
    8051              :           if (
    8052              : #line 19283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8053              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
    8054              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    8055              :    && ix86_pre_reload_split ()))
    8056              :             {
    8057              :               *pnum_clobbers = 1;
    8058              :               return 1355; /* *rotrqi3_sub */
    8059              :             }
    8060              :           break;
    8061              : 
    8062              :         case 5:
    8063              :           if (
    8064              : #line 19283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8065              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
    8066              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    8067              :    && ix86_pre_reload_split ()))
    8068              :             {
    8069              :               *pnum_clobbers = 1;
    8070              :               return 1357; /* *rotrhi3_sub */
    8071              :             }
    8072              :           break;
    8073              : 
    8074              :         case 6:
    8075              :           if (pnum_clobbers != NULL
    8076              :               && pattern628 (x3) == 0
    8077              :               && 
    8078              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8079              : (TARGET_64BIT))
    8080              :             {
    8081              :               *pnum_clobbers = 2;
    8082              :               return 1373; /* ix86_rotrti3_doubleword */
    8083              :             }
    8084              :           x4 = XEXP (x3, 1);
    8085              :           if (XWINT (x4, 0) == 64L
    8086              :               && register_operand (operands[0], E_TImode)
    8087              :               && GET_MODE (x3) == E_TImode
    8088              :               && register_operand (operands[1], E_TImode)
    8089              :               && 
    8090              : #line 19442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8091              : (TARGET_64BIT))
    8092              :             return 1377; /* rotr64ti2_doubleword */
    8093              :           break;
    8094              : 
    8095              :         default:
    8096              :           break;
    8097              :         }
    8098              :       x4 = XEXP (x3, 1);
    8099              :       operands[2] = x4;
    8100              :       switch (pattern271 (x1, pnum_clobbers))
    8101              :         {
    8102              :         case 0:
    8103              :           if (
    8104              : #line 19658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8105              : (ix86_binary_operator_ok (ROTATERT, QImode, operands, TARGET_APX_NDD)
    8106              :    && TARGET_APX_NF))
    8107              :             return 1413; /* *rotrqi3_1_nf */
    8108              :           if (pnum_clobbers == NULL
    8109              :               || !
    8110              : #line 19658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8111              : (ix86_binary_operator_ok (ROTATERT, QImode, operands, TARGET_APX_NDD)
    8112              :    && true))
    8113              :             return -1;
    8114              :           *pnum_clobbers = 1;
    8115              :           return 1414; /* *rotrqi3_1 */
    8116              : 
    8117              :         case 1:
    8118              :           if (
    8119              : #line 19658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8120              : (ix86_binary_operator_ok (ROTATERT, HImode, operands, TARGET_APX_NDD)
    8121              :    && TARGET_APX_NF))
    8122              :             return 1417; /* *rotrhi3_1_nf */
    8123              :           if (pnum_clobbers == NULL
    8124              :               || !
    8125              : #line 19658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8126              : (ix86_binary_operator_ok (ROTATERT, HImode, operands, TARGET_APX_NDD)
    8127              :    && true))
    8128              :             return -1;
    8129              :           *pnum_clobbers = 1;
    8130              :           return 1418; /* *rotrhi3_1 */
    8131              : 
    8132              :         case 2:
    8133              :           if (!
    8134              : #line 19686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8135              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8136              :             return -1;
    8137              :           *pnum_clobbers = 1;
    8138              :           return 1420; /* *rotrqi3_1_slp */
    8139              : 
    8140              :         case 3:
    8141              :           if (!
    8142              : #line 19686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8143              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8144              :             return -1;
    8145              :           *pnum_clobbers = 1;
    8146              :           return 1422; /* *rotrhi3_1_slp */
    8147              : 
    8148              :         default:
    8149              :           return -1;
    8150              :         }
    8151              : 
    8152              :     default:
    8153              :       return -1;
    8154              :     }
    8155              : }
    8156              : 
    8157              :  int
    8158              : recog_57 (rtx x1 ATTRIBUTE_UNUSED,
    8159              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8160              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8161              : {
    8162              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8163              :   rtx x2;
    8164              :   int res ATTRIBUTE_UNUSED;
    8165              :   switch (pattern88 (x1, pnum_clobbers))
    8166              :     {
    8167              :     case 0:
    8168              :       switch (GET_MODE (operands[0]))
    8169              :         {
    8170              :         case E_TImode:
    8171              :           x2 = XEXP (x1, 1);
    8172              :           if (pattern79 (x2, pnum_clobbers) != 0
    8173              :               || !(
    8174              : #line 6659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8175              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
    8176              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8177              : (TARGET_64BIT)))
    8178              :             return -1;
    8179              :           *pnum_clobbers = 1;
    8180              :           return 275; /* *addti3_doubleword */
    8181              : 
    8182              :         case E_HImode:
    8183              :           x2 = XEXP (x1, 1);
    8184              :           if (pattern80 (x2, 
    8185              : E_HImode) != 0)
    8186              :             return -1;
    8187              :           if (
    8188              : #line 7031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8189              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)
    8190              :   && TARGET_APX_NF))
    8191              :             return 305; /* *addhi_1_nf */
    8192              :           if (pnum_clobbers == NULL
    8193              :               || !
    8194              : #line 7031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8195              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)
    8196              :   && true))
    8197              :             return -1;
    8198              :           *pnum_clobbers = 1;
    8199              :           return 306; /* *addhi_1 */
    8200              : 
    8201              :         case E_QImode:
    8202              :           x2 = XEXP (x1, 1);
    8203              :           if (pattern80 (x2, 
    8204              : E_QImode) != 0)
    8205              :             return -1;
    8206              :           if (
    8207              : #line 7092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8208              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)
    8209              :   && TARGET_APX_NF))
    8210              :             return 307; /* *addqi_1_nf */
    8211              :           if (pnum_clobbers == NULL
    8212              :               || !
    8213              : #line 7092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8214              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)
    8215              :   && true))
    8216              :             return -1;
    8217              :           *pnum_clobbers = 1;
    8218              :           return 308; /* *addqi_1 */
    8219              : 
    8220              :         case E_HFmode:
    8221              :           x2 = XEXP (x1, 1);
    8222              :           if (pattern3 (x2, 
    8223              : E_HFmode) != 0
    8224              :               || !
    8225              : #line 24521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8226              : (TARGET_AVX512FP16
    8227              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8228              :             return -1;
    8229              :           return 1714; /* *addhf */
    8230              : 
    8231              :         case E_V8QImode:
    8232              :           x2 = XEXP (x1, 1);
    8233              :           if (pattern6 (x2, 
    8234              : E_V8QImode) != 0
    8235              :               || !
    8236              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8237              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8238              :    && ix86_binary_operator_ok (PLUS, V8QImode, operands)))
    8239              :             return -1;
    8240              :           return 2184; /* *mmx_addv8qi3 */
    8241              : 
    8242              :         case E_V4HImode:
    8243              :           x2 = XEXP (x1, 1);
    8244              :           if (pattern6 (x2, 
    8245              : E_V4HImode) != 0
    8246              :               || !
    8247              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8248              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8249              :    && ix86_binary_operator_ok (PLUS, V4HImode, operands)))
    8250              :             return -1;
    8251              :           return 2186; /* *mmx_addv4hi3 */
    8252              : 
    8253              :         case E_V2SImode:
    8254              :           x2 = XEXP (x1, 1);
    8255              :           if (pattern6 (x2, 
    8256              : E_V2SImode) != 0
    8257              :               || !
    8258              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8259              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8260              :    && ix86_binary_operator_ok (PLUS, V2SImode, operands)))
    8261              :             return -1;
    8262              :           return 2188; /* *mmx_addv2si3 */
    8263              : 
    8264              :         case E_V1DImode:
    8265              :           x2 = XEXP (x1, 1);
    8266              :           if (pattern6 (x2, 
    8267              : E_V1DImode) != 0
    8268              :               || !(
    8269              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8270              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8271              :    && ix86_binary_operator_ok (PLUS, V1DImode, operands)) && 
    8272              : #line 50 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8273              : (TARGET_SSE2)))
    8274              :             return -1;
    8275              :           return 2190; /* *mmx_addv1di3 */
    8276              : 
    8277              :         case E_V4QImode:
    8278              :           x2 = XEXP (x1, 1);
    8279              :           if (pattern5 (x2, 
    8280              : E_V4QImode) != 0
    8281              :               || !
    8282              : #line 3258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8283              : (TARGET_SSE2))
    8284              :             return -1;
    8285              :           return 2192; /* addv4qi3 */
    8286              : 
    8287              :         case E_V2HImode:
    8288              :           x2 = XEXP (x1, 1);
    8289              :           if (pattern5 (x2, 
    8290              : E_V2HImode) != 0
    8291              :               || !
    8292              : #line 3258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8293              : (TARGET_SSE2))
    8294              :             return -1;
    8295              :           return 2194; /* addv2hi3 */
    8296              : 
    8297              :         case E_V2QImode:
    8298              :           if (pnum_clobbers == NULL)
    8299              :             return -1;
    8300              :           x2 = XEXP (x1, 1);
    8301              :           if (pattern5 (x2, 
    8302              : E_V2QImode) != 0
    8303              :               || !
    8304              : #line 3272 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8305              : (!TARGET_PARTIAL_REG_STALL || optimize_size || TARGET_SSE2))
    8306              :             return -1;
    8307              :           *pnum_clobbers = 1;
    8308              :           return 2196; /* addv2qi3 */
    8309              : 
    8310              :         default:
    8311              :           return -1;
    8312              :         }
    8313              : 
    8314              :     case 1:
    8315              :       if (!
    8316              : #line 7170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8317              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8318              :         return -1;
    8319              :       *pnum_clobbers = 1;
    8320              :       return 309; /* *addqi_1_slp */
    8321              : 
    8322              :     case 2:
    8323              :       if (!
    8324              : #line 7170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8325              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8326              :         return -1;
    8327              :       *pnum_clobbers = 1;
    8328              :       return 310; /* *addhi_1_slp */
    8329              : 
    8330              :     default:
    8331              :       return -1;
    8332              :     }
    8333              : }
    8334              : 
    8335              :  int
    8336              : recog_66 (rtx x1 ATTRIBUTE_UNUSED,
    8337              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8338              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8339              : {
    8340              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8341              :   rtx x2, x3, x4, x5, x6, x7;
    8342              :   int res ATTRIBUTE_UNUSED;
    8343              :   x2 = XEXP (x1, 0);
    8344              :   operands[0] = x2;
    8345              :   x3 = XEXP (x1, 1);
    8346              :   x4 = XEXP (x3, 0);
    8347              :   switch (GET_CODE (x4))
    8348              :     {
    8349              :     case REG:
    8350              :     case SUBREG:
    8351              :       operands[2] = x4;
    8352              :       x5 = XEXP (x3, 2);
    8353              :       if (GET_CODE (x5) != CONST_INT)
    8354              :         return -1;
    8355              :       operands[3] = x5;
    8356              :       x6 = XEXP (x3, 1);
    8357              :       operands[1] = x6;
    8358              :       switch (GET_MODE (operands[0]))
    8359              :         {
    8360              :         case E_V2SFmode:
    8361              :           if (register_operand (operands[0], E_V2SFmode)
    8362              :               && GET_MODE (x3) == E_V2SFmode
    8363              :               && register_operand (operands[2], E_V2SFmode)
    8364              :               && register_operand (operands[1], E_V2SFmode)
    8365              :               && const_0_to_3_operand (operands[3], E_SImode)
    8366              :               && 
    8367              : #line 1321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8368              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8369              :             return 2134; /* *mmx_blendps */
    8370              :           break;
    8371              : 
    8372              :         case E_V4HFmode:
    8373              :           if (pattern878 (x3, 
    8374              : E_V4HFmode) == 0
    8375              :               && 
    8376              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8377              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8378              :             return 2396; /* *mmx_pblendw64 */
    8379              :           break;
    8380              : 
    8381              :         case E_V4BFmode:
    8382              :           if (pattern878 (x3, 
    8383              : E_V4BFmode) == 0
    8384              :               && 
    8385              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8386              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8387              :             return 2397; /* *mmx_pblendw64 */
    8388              :           break;
    8389              : 
    8390              :         case E_V4HImode:
    8391              :           if (pattern878 (x3, 
    8392              : E_V4HImode) == 0
    8393              :               && 
    8394              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8395              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8396              :             return 2398; /* *mmx_pblendw64 */
    8397              :           break;
    8398              : 
    8399              :         case E_V2HFmode:
    8400              :           if (pattern879 (x3, 
    8401              : E_V2HFmode) == 0
    8402              :               && 
    8403              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8404              : (TARGET_SSE4_1))
    8405              :             return 2399; /* *mmx_pblendw32 */
    8406              :           break;
    8407              : 
    8408              :         case E_V2BFmode:
    8409              :           if (pattern879 (x3, 
    8410              : E_V2BFmode) == 0
    8411              :               && 
    8412              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8413              : (TARGET_SSE4_1))
    8414              :             return 2400; /* *mmx_pblendw32 */
    8415              :           break;
    8416              : 
    8417              :         case E_V2HImode:
    8418              :           if (pattern879 (x3, 
    8419              : E_V2HImode) == 0
    8420              :               && 
    8421              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8422              : (TARGET_SSE4_1))
    8423              :             return 2401; /* *mmx_pblendw32 */
    8424              :           break;
    8425              : 
    8426              :         default:
    8427              :           break;
    8428              :         }
    8429              :       if (XWINT (x5, 0) != 1L)
    8430              :         return -1;
    8431              :       operands[1] = x6;
    8432              :       switch (GET_MODE (operands[0]))
    8433              :         {
    8434              :         case E_V2SFmode:
    8435              :           if (pattern880 (x3, 
    8436              : E_V2SFmode) != 0
    8437              :               || !
    8438              : #line 1767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8439              : (TARGET_MMX_WITH_SSE))
    8440              :             return -1;
    8441              :           return 2150; /* *mmx_movss_v2sf */
    8442              : 
    8443              :         case E_V2SImode:
    8444              :           if (pattern880 (x3, 
    8445              : E_V2SImode) != 0
    8446              :               || !
    8447              : #line 1767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8448              : (TARGET_MMX_WITH_SSE))
    8449              :             return -1;
    8450              :           return 2151; /* *mmx_movss_v2si */
    8451              : 
    8452              :         default:
    8453              :           return -1;
    8454              :         }
    8455              : 
    8456              :     case VEC_DUPLICATE:
    8457              :       x7 = XEXP (x4, 0);
    8458              :       operands[2] = x7;
    8459              :       x6 = XEXP (x3, 1);
    8460              :       operands[1] = x6;
    8461              :       x5 = XEXP (x3, 2);
    8462              :       operands[3] = x5;
    8463              :       if (!const_int_operand (operands[3], E_SImode))
    8464              :         return -1;
    8465              :       switch (GET_MODE (operands[0]))
    8466              :         {
    8467              :         case E_V2SImode:
    8468              :           if (pattern881 (x3, 
    8469              : E_V2SImode, 
    8470              : E_SImode) != 0
    8471              :               || !
    8472              : #line 5300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8473              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8474              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8475              :        < GET_MODE_NUNITS (V2SImode))))
    8476              :             return -1;
    8477              :           return 2376; /* *mmx_pinsrd */
    8478              : 
    8479              :         case E_V4HFmode:
    8480              :           if (pattern881 (x3, 
    8481              : E_V4HFmode, 
    8482              : E_HFmode) != 0
    8483              :               || !
    8484              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8485              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8486              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8487              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8488              :        < GET_MODE_NUNITS (V4HImode))))
    8489              :             return -1;
    8490              :           return 2377; /* *mmx_pinsrw */
    8491              : 
    8492              :         case E_V4BFmode:
    8493              :           if (pattern881 (x3, 
    8494              : E_V4BFmode, 
    8495              : E_BFmode) != 0
    8496              :               || !
    8497              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8498              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8499              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8500              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8501              :        < GET_MODE_NUNITS (V4HImode))))
    8502              :             return -1;
    8503              :           return 2378; /* *mmx_pinsrw */
    8504              : 
    8505              :         case E_V4HImode:
    8506              :           if (pattern881 (x3, 
    8507              : E_V4HImode, 
    8508              : E_HImode) != 0
    8509              :               || !
    8510              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8511              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8512              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8513              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8514              :        < GET_MODE_NUNITS (V4HImode))))
    8515              :             return -1;
    8516              :           return 2379; /* *mmx_pinsrw */
    8517              : 
    8518              :         case E_V8QImode:
    8519              :           if (pattern881 (x3, 
    8520              : E_V8QImode, 
    8521              : E_QImode) != 0
    8522              :               || !
    8523              : #line 5387 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8524              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8525              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8526              :        < GET_MODE_NUNITS (V8QImode))))
    8527              :             return -1;
    8528              :           return 2380; /* *mmx_pinsrb */
    8529              : 
    8530              :         case E_V2HFmode:
    8531              :           if (pattern881 (x3, 
    8532              : E_V2HFmode, 
    8533              : E_HFmode) != 0
    8534              :               || !
    8535              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8536              : (TARGET_SSE2
    8537              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8538              :        < GET_MODE_NUNITS (V2HImode))))
    8539              :             return -1;
    8540              :           return 2415; /* *pinsrw */
    8541              : 
    8542              :         case E_V2BFmode:
    8543              :           if (pattern881 (x3, 
    8544              : E_V2BFmode, 
    8545              : E_BFmode) != 0
    8546              :               || !
    8547              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8548              : (TARGET_SSE2
    8549              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8550              :        < GET_MODE_NUNITS (V2HImode))))
    8551              :             return -1;
    8552              :           return 2416; /* *pinsrw */
    8553              : 
    8554              :         case E_V2HImode:
    8555              :           if (pattern881 (x3, 
    8556              : E_V2HImode, 
    8557              : E_HImode) != 0
    8558              :               || !
    8559              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8560              : (TARGET_SSE2
    8561              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8562              :        < GET_MODE_NUNITS (V2HImode))))
    8563              :             return -1;
    8564              :           return 2417; /* *pinsrw */
    8565              : 
    8566              :         case E_V4QImode:
    8567              :           if (pattern881 (x3, 
    8568              : E_V4QImode, 
    8569              : E_QImode) != 0
    8570              :               || !
    8571              : #line 6064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8572              : (TARGET_SSE4_1
    8573              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8574              :        < GET_MODE_NUNITS (V4QImode))))
    8575              :             return -1;
    8576              :           return 2418; /* *pinsrb */
    8577              : 
    8578              :         default:
    8579              :           return -1;
    8580              :         }
    8581              : 
    8582              :     case SS_TRUNCATE:
    8583              :       switch (pattern107 (x3))
    8584              :         {
    8585              :         case 0:
    8586              :           if (!
    8587              : #line 16187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8588              : (TARGET_AVX512VL))
    8589              :             return -1;
    8590              :           return 7394; /* avx512vl_ss_truncatev2div2qi2_mask_store_1 */
    8591              : 
    8592              :         case 1:
    8593              :           if (!
    8594              : #line 16282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8595              : (TARGET_AVX512VL))
    8596              :             return -1;
    8597              :           return 7421; /* avx512vl_ss_truncatev4siv4qi2_mask_store_1 */
    8598              : 
    8599              :         case 2:
    8600              :           if (!
    8601              : #line 16282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8602              : (TARGET_AVX512VL))
    8603              :             return -1;
    8604              :           return 7424; /* avx512vl_ss_truncatev4div4qi2_mask_store_1 */
    8605              : 
    8606              :         case 3:
    8607              :           if (!(
    8608              : #line 16380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8609              : (TARGET_AVX512VL) && 
    8610              : #line 16304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8611              : (TARGET_AVX512BW)))
    8612              :             return -1;
    8613              :           return 7451; /* avx512vl_ss_truncatev8hiv8qi2_mask_store_1 */
    8614              : 
    8615              :         case 4:
    8616              :           if (!
    8617              : #line 16380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8618              : (TARGET_AVX512VL))
    8619              :             return -1;
    8620              :           return 7454; /* avx512vl_ss_truncatev8siv8qi2_mask_store_1 */
    8621              : 
    8622              :         case 5:
    8623              :           if (!
    8624              : #line 16892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8625              : (TARGET_AVX512F))
    8626              :             return -1;
    8627              :           return 7546; /* avx512f_ss_truncatev8div16qi2_mask_store_1 */
    8628              : 
    8629              :         case 6:
    8630              :           if (!
    8631              : #line 16534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8632              : (TARGET_AVX512VL))
    8633              :             return -1;
    8634              :           return 7491; /* avx512vl_ss_truncatev4siv4hi2_mask_store_1 */
    8635              : 
    8636              :         case 7:
    8637              :           if (!
    8638              : #line 16534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8639              : (TARGET_AVX512VL))
    8640              :             return -1;
    8641              :           return 7494; /* avx512vl_ss_truncatev4div4hi2_mask_store_1 */
    8642              : 
    8643              :         case 8:
    8644              :           if (!
    8645              : #line 16621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8646              : (TARGET_AVX512VL))
    8647              :             return -1;
    8648              :           return 7509; /* avx512vl_ss_truncatev2div2hi2_mask_store_1 */
    8649              : 
    8650              :         case 9:
    8651              :           if (!
    8652              : #line 16767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8653              : (TARGET_AVX512VL))
    8654              :             return -1;
    8655              :           return 7528; /* avx512vl_ss_truncatev2div2si2_mask_store_1 */
    8656              : 
    8657              :         default:
    8658              :           return -1;
    8659              :         }
    8660              : 
    8661              :     case TRUNCATE:
    8662              :       switch (pattern107 (x3))
    8663              :         {
    8664              :         case 0:
    8665              :           if (!
    8666              : #line 16187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8667              : (TARGET_AVX512VL))
    8668              :             return -1;
    8669              :           return 7395; /* avx512vl_truncatev2div2qi2_mask_store_1 */
    8670              : 
    8671              :         case 1:
    8672              :           if (!
    8673              : #line 16282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8674              : (TARGET_AVX512VL))
    8675              :             return -1;
    8676              :           return 7422; /* avx512vl_truncatev4siv4qi2_mask_store_1 */
    8677              : 
    8678              :         case 2:
    8679              :           if (!
    8680              : #line 16282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8681              : (TARGET_AVX512VL))
    8682              :             return -1;
    8683              :           return 7425; /* avx512vl_truncatev4div4qi2_mask_store_1 */
    8684              : 
    8685              :         case 3:
    8686              :           if (!(
    8687              : #line 16380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8688              : (TARGET_AVX512VL) && 
    8689              : #line 16304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8690              : (TARGET_AVX512BW)))
    8691              :             return -1;
    8692              :           return 7452; /* avx512vl_truncatev8hiv8qi2_mask_store_1 */
    8693              : 
    8694              :         case 4:
    8695              :           if (!
    8696              : #line 16380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8697              : (TARGET_AVX512VL))
    8698              :             return -1;
    8699              :           return 7455; /* avx512vl_truncatev8siv8qi2_mask_store_1 */
    8700              : 
    8701              :         case 5:
    8702              :           if (!
    8703              : #line 16892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8704              : (TARGET_AVX512F))
    8705              :             return -1;
    8706              :           return 7547; /* avx512f_truncatev8div16qi2_mask_store_1 */
    8707              : 
    8708              :         case 6:
    8709              :           if (!
    8710              : #line 16534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8711              : (TARGET_AVX512VL))
    8712              :             return -1;
    8713              :           return 7492; /* avx512vl_truncatev4siv4hi2_mask_store_1 */
    8714              : 
    8715              :         case 7:
    8716              :           if (!
    8717              : #line 16534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8718              : (TARGET_AVX512VL))
    8719              :             return -1;
    8720              :           return 7495; /* avx512vl_truncatev4div4hi2_mask_store_1 */
    8721              : 
    8722              :         case 8:
    8723              :           if (!
    8724              : #line 16621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8725              : (TARGET_AVX512VL))
    8726              :             return -1;
    8727              :           return 7510; /* avx512vl_truncatev2div2hi2_mask_store_1 */
    8728              : 
    8729              :         case 9:
    8730              :           if (!
    8731              : #line 16767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8732              : (TARGET_AVX512VL))
    8733              :             return -1;
    8734              :           return 7529; /* avx512vl_truncatev2div2si2_mask_store_1 */
    8735              : 
    8736              :         default:
    8737              :           return -1;
    8738              :         }
    8739              : 
    8740              :     case US_TRUNCATE:
    8741              :       switch (pattern107 (x3))
    8742              :         {
    8743              :         case 0:
    8744              :           if (!
    8745              : #line 16187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8746              : (TARGET_AVX512VL))
    8747              :             return -1;
    8748              :           return 7396; /* avx512vl_us_truncatev2div2qi2_mask_store_1 */
    8749              : 
    8750              :         case 1:
    8751              :           if (!
    8752              : #line 16282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8753              : (TARGET_AVX512VL))
    8754              :             return -1;
    8755              :           return 7423; /* avx512vl_us_truncatev4siv4qi2_mask_store_1 */
    8756              : 
    8757              :         case 2:
    8758              :           if (!
    8759              : #line 16282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8760              : (TARGET_AVX512VL))
    8761              :             return -1;
    8762              :           return 7426; /* avx512vl_us_truncatev4div4qi2_mask_store_1 */
    8763              : 
    8764              :         case 3:
    8765              :           if (!(
    8766              : #line 16380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8767              : (TARGET_AVX512VL) && 
    8768              : #line 16304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8769              : (TARGET_AVX512BW)))
    8770              :             return -1;
    8771              :           return 7453; /* avx512vl_us_truncatev8hiv8qi2_mask_store_1 */
    8772              : 
    8773              :         case 4:
    8774              :           if (!
    8775              : #line 16380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8776              : (TARGET_AVX512VL))
    8777              :             return -1;
    8778              :           return 7456; /* avx512vl_us_truncatev8siv8qi2_mask_store_1 */
    8779              : 
    8780              :         case 5:
    8781              :           if (!
    8782              : #line 16892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8783              : (TARGET_AVX512F))
    8784              :             return -1;
    8785              :           return 7548; /* avx512f_us_truncatev8div16qi2_mask_store_1 */
    8786              : 
    8787              :         case 6:
    8788              :           if (!
    8789              : #line 16534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8790              : (TARGET_AVX512VL))
    8791              :             return -1;
    8792              :           return 7493; /* avx512vl_us_truncatev4siv4hi2_mask_store_1 */
    8793              : 
    8794              :         case 7:
    8795              :           if (!
    8796              : #line 16534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8797              : (TARGET_AVX512VL))
    8798              :             return -1;
    8799              :           return 7496; /* avx512vl_us_truncatev4div4hi2_mask_store_1 */
    8800              : 
    8801              :         case 8:
    8802              :           if (!
    8803              : #line 16621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8804              : (TARGET_AVX512VL))
    8805              :             return -1;
    8806              :           return 7511; /* avx512vl_us_truncatev2div2hi2_mask_store_1 */
    8807              : 
    8808              :         case 9:
    8809              :           if (!
    8810              : #line 16767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8811              : (TARGET_AVX512VL))
    8812              :             return -1;
    8813              :           return 7530; /* avx512vl_us_truncatev2div2si2_mask_store_1 */
    8814              : 
    8815              :         default:
    8816              :           return -1;
    8817              :         }
    8818              : 
    8819              :     default:
    8820              :       return -1;
    8821              :     }
    8822              : }
    8823              : 
    8824              :  int
    8825              : recog_77 (rtx x1 ATTRIBUTE_UNUSED,
    8826              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8827              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8828              : {
    8829              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8830              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8831              :   rtx x10;
    8832              :   int res ATTRIBUTE_UNUSED;
    8833              :   x2 = XEXP (x1, 1);
    8834              :   x3 = XEXP (x2, 0);
    8835              :   x4 = XEXP (x3, 0);
    8836              :   switch (GET_CODE (x4))
    8837              :     {
    8838              :     case REG:
    8839              :     case SUBREG:
    8840              :     case MEM:
    8841              :       operands[1] = x4;
    8842              :       x5 = XEXP (x3, 1);
    8843              :       operands[2] = x5;
    8844              :       switch (pattern281 (x2))
    8845              :         {
    8846              :         case 0:
    8847              :           if (!nonimmediate_operand (operands[1], E_QImode)
    8848              :               || !general_operand (operands[2], E_QImode))
    8849              :             return -1;
    8850              :           if (
    8851              : #line 6883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8852              : (TARGET_APX_NDD && TARGET_APX_NF
    8853              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8854              :             return 296; /* *addqi_1_zextsi_nf */
    8855              :           if (pnum_clobbers == NULL
    8856              :               || !
    8857              : #line 6883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8858              : (TARGET_APX_NDD && true
    8859              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8860              :             return -1;
    8861              :           *pnum_clobbers = 1;
    8862              :           return 297; /* *addqi_1_zextsi */
    8863              : 
    8864              :         case 1:
    8865              :           if (!nonimmediate_operand (operands[1], E_HImode)
    8866              :               || !general_operand (operands[2], E_HImode))
    8867              :             return -1;
    8868              :           if (
    8869              : #line 6925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8870              : (TARGET_APX_NDD && TARGET_APX_NF
    8871              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8872              :             return 300; /* *addhi_1_zextsi_nf */
    8873              :           if (pnum_clobbers == NULL
    8874              :               || !
    8875              : #line 6925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8876              : (TARGET_APX_NDD && true
    8877              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8878              :             return -1;
    8879              :           *pnum_clobbers = 1;
    8880              :           return 301; /* *addhi_1_zextsi */
    8881              : 
    8882              :         case 2:
    8883              :           if (!nonimmediate_operand (operands[1], E_QImode)
    8884              :               || !general_operand (operands[2], E_QImode))
    8885              :             return -1;
    8886              :           if (
    8887              : #line 6883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8888              : (TARGET_APX_NDD && TARGET_APX_NF
    8889              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8890              :             return 298; /* *addqi_1_zextdi_nf */
    8891              :           if (pnum_clobbers == NULL
    8892              :               || !
    8893              : #line 6883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8894              : (TARGET_APX_NDD && true
    8895              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8896              :             return -1;
    8897              :           *pnum_clobbers = 1;
    8898              :           return 299; /* *addqi_1_zextdi */
    8899              : 
    8900              :         case 3:
    8901              :           if (!nonimmediate_operand (operands[1], E_HImode)
    8902              :               || !general_operand (operands[2], E_HImode))
    8903              :             return -1;
    8904              :           if (
    8905              : #line 6925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8906              : (TARGET_APX_NDD && TARGET_APX_NF
    8907              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8908              :             return 302; /* *addhi_1_zextdi_nf */
    8909              :           if (pnum_clobbers == NULL
    8910              :               || !
    8911              : #line 6925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8912              : (TARGET_APX_NDD && true
    8913              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8914              :             return -1;
    8915              :           *pnum_clobbers = 1;
    8916              :           return 303; /* *addhi_1_zextdi */
    8917              : 
    8918              :         case 4:
    8919              :           if (pnum_clobbers == NULL
    8920              :               || !nonimmediate_operand (operands[1], E_SImode)
    8921              :               || !x86_64_general_operand (operands[2], E_SImode)
    8922              :               || !
    8923              : #line 6974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8924              : (TARGET_64BIT
    8925              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
    8926              :             return -1;
    8927              :           *pnum_clobbers = 1;
    8928              :           return 304; /* addsi_1_zext */
    8929              : 
    8930              :         default:
    8931              :           return -1;
    8932              :         }
    8933              : 
    8934              :     case PLUS:
    8935              :       if (pnum_clobbers == NULL)
    8936              :         return -1;
    8937              :       x6 = XEXP (x4, 0);
    8938              :       switch (GET_CODE (x6))
    8939              :         {
    8940              :         case LTU:
    8941              :         case UNLT:
    8942              :           operands[3] = x6;
    8943              :           x7 = XEXP (x6, 0);
    8944              :           if (GET_CODE (x7) != REG
    8945              :               || REGNO (x7) != 17)
    8946              :             return -1;
    8947              :           x8 = XEXP (x6, 1);
    8948              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8949              :             return -1;
    8950              :           x9 = XEXP (x4, 1);
    8951              :           operands[1] = x9;
    8952              :           x5 = XEXP (x3, 1);
    8953              :           operands[2] = x5;
    8954              :           switch (pattern281 (x2))
    8955              :             {
    8956              :             case 0:
    8957              :               if (pattern1559 (x4, 
    8958              : E_QImode) != 0
    8959              :                   || !
    8960              : #line 9318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8961              : (TARGET_APX_NDD
    8962              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8963              :                 return -1;
    8964              :               *pnum_clobbers = 1;
    8965              :               return 486; /* *addqi3_carry_zextsi */
    8966              : 
    8967              :             case 1:
    8968              :               if (pattern1559 (x4, 
    8969              : E_HImode) != 0
    8970              :                   || !
    8971              : #line 9342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8972              : (TARGET_APX_NDD
    8973              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8974              :                 return -1;
    8975              :               *pnum_clobbers = 1;
    8976              :               return 488; /* *addhi3_carry_zextsi */
    8977              : 
    8978              :             case 2:
    8979              :               if (pattern1559 (x4, 
    8980              : E_QImode) != 0
    8981              :                   || !
    8982              : #line 9318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8983              : (TARGET_APX_NDD
    8984              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8985              :                 return -1;
    8986              :               *pnum_clobbers = 1;
    8987              :               return 487; /* *addqi3_carry_zextdi */
    8988              : 
    8989              :             case 3:
    8990              :               if (pattern1559 (x4, 
    8991              : E_HImode) != 0
    8992              :                   || !
    8993              : #line 9342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8994              : (TARGET_APX_NDD
    8995              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8996              :                 return -1;
    8997              :               *pnum_clobbers = 1;
    8998              :               return 489; /* *addhi3_carry_zextdi */
    8999              : 
    9000              :             case 4:
    9001              :               if (pattern1559 (x4, 
    9002              : E_SImode) != 0
    9003              :                   || !
    9004              : #line 9366 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9005              : (TARGET_64BIT
    9006              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
    9007              :                 return -1;
    9008              :               *pnum_clobbers = 1;
    9009              :               return 490; /* *addsi3_carry_zext */
    9010              : 
    9011              :             default:
    9012              :               return -1;
    9013              :             }
    9014              : 
    9015              :         default:
    9016              :           return -1;
    9017              :         }
    9018              : 
    9019              :     case LTU:
    9020              :     case UNLT:
    9021              :       switch (pattern282 (x2, pnum_clobbers))
    9022              :         {
    9023              :         case 0:
    9024              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
    9025              :               || !nonimmediate_operand (operands[1], E_QImode)
    9026              :               || !
    9027              : #line 9390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9028              : (TARGET_APX_NDD))
    9029              :             return -1;
    9030              :           *pnum_clobbers = 1;
    9031              :           return 492; /* *addqi3_carry_zextsi_0 */
    9032              : 
    9033              :         case 1:
    9034              :           if (!ix86_carry_flag_operator (operands[2], E_HImode)
    9035              :               || !nonimmediate_operand (operands[1], E_HImode)
    9036              :               || !
    9037              : #line 9408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9038              : (TARGET_APX_NDD))
    9039              :             return -1;
    9040              :           *pnum_clobbers = 1;
    9041              :           return 494; /* *addhi3_carry_zextsi_0 */
    9042              : 
    9043              :         case 2:
    9044              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
    9045              :               || !nonimmediate_operand (operands[1], E_QImode)
    9046              :               || !
    9047              : #line 9390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9048              : (TARGET_APX_NDD))
    9049              :             return -1;
    9050              :           *pnum_clobbers = 1;
    9051              :           return 493; /* *addqi3_carry_zextdi_0 */
    9052              : 
    9053              :         case 3:
    9054              :           if (!ix86_carry_flag_operator (operands[2], E_HImode)
    9055              :               || !nonimmediate_operand (operands[1], E_HImode)
    9056              :               || !
    9057              : #line 9408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9058              : (TARGET_APX_NDD))
    9059              :             return -1;
    9060              :           *pnum_clobbers = 1;
    9061              :           return 495; /* *addhi3_carry_zextdi_0 */
    9062              : 
    9063              :         case 4:
    9064              :           if (!ix86_carry_flag_operator (operands[2], E_SImode)
    9065              :               || !nonimmediate_operand (operands[1], E_SImode)
    9066              :               || !
    9067              : #line 9426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9068              : (TARGET_64BIT))
    9069              :             return -1;
    9070              :           *pnum_clobbers = 1;
    9071              :           return 496; /* *addsi3_carry_zext_0 */
    9072              : 
    9073              :         default:
    9074              :           return -1;
    9075              :         }
    9076              : 
    9077              :     case GE:
    9078              :     case GEU:
    9079              :       switch (pattern282 (x2, pnum_clobbers))
    9080              :         {
    9081              :         case 0:
    9082              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9083              :               || !nonimmediate_operand (operands[1], E_QImode)
    9084              :               || !
    9085              : #line 9448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9086              : (TARGET_APX_NDD))
    9087              :             return -1;
    9088              :           *pnum_clobbers = 1;
    9089              :           return 498; /* *addqi3_carry_zextsi_0r */
    9090              : 
    9091              :         case 1:
    9092              :           if (!ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9093              :               || !nonimmediate_operand (operands[1], E_HImode)
    9094              :               || !
    9095              : #line 9466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9096              : (TARGET_APX_NDD))
    9097              :             return -1;
    9098              :           *pnum_clobbers = 1;
    9099              :           return 500; /* *addhi3_carry_zextsi_0r */
    9100              : 
    9101              :         case 2:
    9102              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9103              :               || !nonimmediate_operand (operands[1], E_QImode)
    9104              :               || !
    9105              : #line 9448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9106              : (TARGET_APX_NDD))
    9107              :             return -1;
    9108              :           *pnum_clobbers = 1;
    9109              :           return 499; /* *addqi3_carry_zextdi_0r */
    9110              : 
    9111              :         case 3:
    9112              :           if (!ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9113              :               || !nonimmediate_operand (operands[1], E_HImode)
    9114              :               || !
    9115              : #line 9466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9116              : (TARGET_APX_NDD))
    9117              :             return -1;
    9118              :           *pnum_clobbers = 1;
    9119              :           return 501; /* *addhi3_carry_zextdi_0r */
    9120              : 
    9121              :         case 4:
    9122              :           if (!ix86_carry_flag_unset_operator (operands[2], E_SImode)
    9123              :               || !nonimmediate_operand (operands[1], E_SImode)
    9124              :               || !
    9125              : #line 9484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9126              : (TARGET_64BIT))
    9127              :             return -1;
    9128              :           *pnum_clobbers = 1;
    9129              :           return 502; /* *addsi3_carry_zext_0r */
    9130              : 
    9131              :         default:
    9132              :           return -1;
    9133              :         }
    9134              : 
    9135              :     case UNSPEC:
    9136              :       if (pnum_clobbers == NULL
    9137              :           || XVECLEN (x4, 0) != 1
    9138              :           || XINT (x4, 1) != 20
    9139              :           || GET_MODE (x4) != E_SImode)
    9140              :         return -1;
    9141              :       x10 = XVECEXP (x4, 0, 0);
    9142              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    9143              :           || !register_operand (operands[0], E_DImode)
    9144              :           || GET_MODE (x2) != E_DImode
    9145              :           || GET_MODE (x3) != E_SImode)
    9146              :         return -1;
    9147              :       x5 = XEXP (x3, 1);
    9148              :       operands[1] = x5;
    9149              :       if (!register_operand (operands[1], E_SImode)
    9150              :           || !
    9151              : #line 24304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9152              : (TARGET_X32))
    9153              :         return -1;
    9154              :       *pnum_clobbers = 1;
    9155              :       return 1701; /* *add_tp_x32_zext */
    9156              : 
    9157              :     default:
    9158              :       return -1;
    9159              :     }
    9160              : }
    9161              : 
    9162              :  int
    9163              : recog_82 (rtx x1 ATTRIBUTE_UNUSED,
    9164              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9165              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9166              : {
    9167              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9168              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9169              :   rtx x10, x11, x12, x13;
    9170              :   int res ATTRIBUTE_UNUSED;
    9171              :   x2 = XEXP (x1, 0);
    9172              :   operands[0] = x2;
    9173              :   x3 = XEXP (x1, 1);
    9174              :   x4 = XEXP (x3, 0);
    9175              :   switch (GET_CODE (x4))
    9176              :     {
    9177              :     case PLUS:
    9178              :       return recog_77 (x1, insn, pnum_clobbers);
    9179              : 
    9180              :     case MINUS:
    9181              :       return recog_79 (x1, insn, pnum_clobbers);
    9182              : 
    9183              :     case MULT:
    9184              :       x5 = XEXP (x4, 0);
    9185              :       operands[1] = x5;
    9186              :       x6 = XEXP (x4, 1);
    9187              :       operands[2] = x6;
    9188              :       switch (GET_MODE (operands[0]))
    9189              :         {
    9190              :         case E_SImode:
    9191              :           if (!register_operand (operands[0], E_SImode)
    9192              :               || GET_MODE (x3) != E_SImode
    9193              :               || GET_MODE (x4) != E_HImode
    9194              :               || !nonimmediate_operand (operands[1], E_HImode)
    9195              :               || !immediate_operand (operands[2], E_HImode))
    9196              :             return -1;
    9197              :           if (
    9198              : #line 11439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9199              : (TARGET_APX_ZU && TARGET_APX_NF))
    9200              :             return 628; /* *imulhisizu_nf */
    9201              :           if (pnum_clobbers == NULL
    9202              :               || !
    9203              : #line 11439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9204              : (TARGET_APX_ZU && true))
    9205              :             return -1;
    9206              :           *pnum_clobbers = 1;
    9207              :           return 629; /* *imulhisizu */
    9208              : 
    9209              :         case E_DImode:
    9210              :           if (!register_operand (operands[0], E_DImode)
    9211              :               || GET_MODE (x3) != E_DImode)
    9212              :             return -1;
    9213              :           switch (GET_MODE (x4))
    9214              :             {
    9215              :             case E_HImode:
    9216              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9217              :                   || !immediate_operand (operands[2], E_HImode))
    9218              :                 return -1;
    9219              :               if (
    9220              : #line 11439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9221              : (TARGET_APX_ZU && TARGET_APX_NF))
    9222              :                 return 630; /* *imulhidizu_nf */
    9223              :               if (pnum_clobbers == NULL
    9224              :                   || !
    9225              : #line 11439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9226              : (TARGET_APX_ZU && true))
    9227              :                 return -1;
    9228              :               *pnum_clobbers = 1;
    9229              :               return 631; /* *imulhidizu */
    9230              : 
    9231              :             case E_SImode:
    9232              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9233              :                   || !x86_64_general_operand (operands[2], E_SImode))
    9234              :                 return -1;
    9235              :               if (
    9236              : #line 11451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9237              : (TARGET_64BIT
    9238              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
    9239              :    && TARGET_APX_NF))
    9240              :                 return 632; /* *mulsi3_1_zext_nf */
    9241              :               if (pnum_clobbers == NULL
    9242              :                   || !
    9243              : #line 11451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9244              : (TARGET_64BIT
    9245              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
    9246              :    && true))
    9247              :                 return -1;
    9248              :               *pnum_clobbers = 1;
    9249              :               return 633; /* *mulsi3_1_zext */
    9250              : 
    9251              :             default:
    9252              :               return -1;
    9253              :             }
    9254              : 
    9255              :         default:
    9256              :           return -1;
    9257              :         }
    9258              : 
    9259              :     case SMUL_HIGHPART:
    9260              :       if (pattern113 (x3, pnum_clobbers) != 0
    9261              :           || !
    9262              : #line 11976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9263              : (TARGET_64BIT))
    9264              :         return -1;
    9265              :       *pnum_clobbers = 2;
    9266              :       return 665; /* *smulsi3_highpart_zext */
    9267              : 
    9268              :     case UMUL_HIGHPART:
    9269              :       if (pattern113 (x3, pnum_clobbers) != 0
    9270              :           || !
    9271              : #line 11976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9272              : (TARGET_64BIT))
    9273              :         return -1;
    9274              :       *pnum_clobbers = 2;
    9275              :       return 666; /* *umulsi3_highpart_zext */
    9276              : 
    9277              :     case TRUNCATE:
    9278              :       if (pnum_clobbers == NULL
    9279              :           || GET_MODE (x4) != E_SImode)
    9280              :         return -1;
    9281              :       x5 = XEXP (x4, 0);
    9282              :       if (GET_CODE (x5) != LSHIFTRT
    9283              :           || GET_MODE (x5) != E_DImode)
    9284              :         return -1;
    9285              :       x7 = XEXP (x5, 0);
    9286              :       if (GET_CODE (x7) != MULT
    9287              :           || GET_MODE (x7) != E_DImode)
    9288              :         return -1;
    9289              :       x8 = XEXP (x5, 1);
    9290              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 32]
    9291              :           || !register_operand (operands[0], E_DImode)
    9292              :           || GET_MODE (x3) != E_DImode)
    9293              :         return -1;
    9294              :       x9 = XEXP (x7, 0);
    9295              :       if (GET_MODE (x9) != E_DImode)
    9296              :         return -1;
    9297              :       x10 = XEXP (x7, 1);
    9298              :       if (GET_MODE (x10) != E_DImode)
    9299              :         return -1;
    9300              :       switch (GET_CODE (x9))
    9301              :         {
    9302              :         case SIGN_EXTEND:
    9303              :           if (GET_CODE (x10) != SIGN_EXTEND)
    9304              :             return -1;
    9305              :           x11 = XEXP (x9, 0);
    9306              :           operands[1] = x11;
    9307              :           if (!nonimmediate_operand (operands[1], E_SImode))
    9308              :             return -1;
    9309              :           x12 = XEXP (x10, 0);
    9310              :           operands[2] = x12;
    9311              :           if (!nonimmediate_operand (operands[2], E_SImode)
    9312              :               || !
    9313              : #line 12024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9314              : (TARGET_64BIT
    9315              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9316              :             return -1;
    9317              :           *pnum_clobbers = 2;
    9318              :           return 669; /* *smulsi3_highpart_zext */
    9319              : 
    9320              :         case ZERO_EXTEND:
    9321              :           if (GET_CODE (x10) != ZERO_EXTEND)
    9322              :             return -1;
    9323              :           x11 = XEXP (x9, 0);
    9324              :           operands[1] = x11;
    9325              :           if (!nonimmediate_operand (operands[1], E_SImode))
    9326              :             return -1;
    9327              :           x12 = XEXP (x10, 0);
    9328              :           operands[2] = x12;
    9329              :           if (!nonimmediate_operand (operands[2], E_SImode)
    9330              :               || !
    9331              : #line 12024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9332              : (TARGET_64BIT
    9333              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9334              :             return -1;
    9335              :           *pnum_clobbers = 2;
    9336              :           return 670; /* *umulsi3_highpart_zext */
    9337              : 
    9338              :         default:
    9339              :           return -1;
    9340              :         }
    9341              : 
    9342              :     case AND:
    9343              :       return recog_78 (x1, insn, pnum_clobbers);
    9344              : 
    9345              :     case IOR:
    9346              :       switch (pattern115 (x3, pnum_clobbers))
    9347              :         {
    9348              :         case 0:
    9349              :           if (
    9350              : #line 14585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9351              : (TARGET_APX_NDD && TARGET_APX_NF
    9352              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9353              :             return 881; /* *iorqi_1_zextsi_nf */
    9354              :           if (pnum_clobbers == NULL
    9355              :               || !
    9356              : #line 14585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9357              : (TARGET_APX_NDD && true
    9358              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9359              :             return -1;
    9360              :           *pnum_clobbers = 1;
    9361              :           return 882; /* *iorqi_1_zextsi */
    9362              : 
    9363              :         case 1:
    9364              :           if (
    9365              : #line 14604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9366              : (TARGET_APX_NDD && TARGET_APX_NF
    9367              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9368              :             return 889; /* *iorhi_1_zextsi_nf */
    9369              :           if (pnum_clobbers == NULL
    9370              :               || !
    9371              : #line 14604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9372              : (TARGET_APX_NDD && true
    9373              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9374              :             return -1;
    9375              :           *pnum_clobbers = 1;
    9376              :           return 890; /* *iorhi_1_zextsi */
    9377              : 
    9378              :         case 2:
    9379              :           if (
    9380              : #line 14585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9381              : (TARGET_APX_NDD && TARGET_APX_NF
    9382              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9383              :             return 885; /* *iorqi_1_zextdi_nf */
    9384              :           if (pnum_clobbers == NULL
    9385              :               || !
    9386              : #line 14585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9387              : (TARGET_APX_NDD && true
    9388              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9389              :             return -1;
    9390              :           *pnum_clobbers = 1;
    9391              :           return 886; /* *iorqi_1_zextdi */
    9392              : 
    9393              :         case 3:
    9394              :           if (
    9395              : #line 14604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9396              : (TARGET_APX_NDD && TARGET_APX_NF
    9397              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9398              :             return 893; /* *iorhi_1_zextdi_nf */
    9399              :           if (pnum_clobbers == NULL
    9400              :               || !
    9401              : #line 14604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9402              : (TARGET_APX_NDD && true
    9403              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9404              :             return -1;
    9405              :           *pnum_clobbers = 1;
    9406              :           return 894; /* *iorhi_1_zextdi */
    9407              : 
    9408              :         case 4:
    9409              :           if (!
    9410              : #line 14625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9411              : (TARGET_64BIT
    9412              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
    9413              :             return -1;
    9414              :           *pnum_clobbers = 1;
    9415              :           return 897; /* *iorsi_1_zext */
    9416              : 
    9417              :         default:
    9418              :           return -1;
    9419              :         }
    9420              : 
    9421              :     case XOR:
    9422              :       return recog_81 (x1, insn, pnum_clobbers);
    9423              : 
    9424              :     case NEG:
    9425              :       x5 = XEXP (x4, 0);
    9426              :       operands[1] = x5;
    9427              :       switch (pattern284 (x3, pnum_clobbers))
    9428              :         {
    9429              :         case 0:
    9430              :           if (
    9431              : #line 15295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9432              : (TARGET_APX_NDD && TARGET_APX_NF))
    9433              :             return 1002; /* *negqi_1_zextsi_nf */
    9434              :           if (pnum_clobbers == NULL
    9435              :               || !
    9436              : #line 15295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9437              : (TARGET_APX_NDD && true))
    9438              :             return -1;
    9439              :           *pnum_clobbers = 1;
    9440              :           return 1003; /* *negqi_1_zextsi */
    9441              : 
    9442              :         case 1:
    9443              :           if (
    9444              : #line 15309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9445              : (TARGET_APX_NDD && TARGET_APX_NF))
    9446              :             return 1006; /* *neghi_1_zextsi_nf */
    9447              :           if (pnum_clobbers == NULL
    9448              :               || !
    9449              : #line 15309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9450              : (TARGET_APX_NDD && true))
    9451              :             return -1;
    9452              :           *pnum_clobbers = 1;
    9453              :           return 1007; /* *neghi_1_zextsi */
    9454              : 
    9455              :         case 2:
    9456              :           if (
    9457              : #line 15295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9458              : (TARGET_APX_NDD && TARGET_APX_NF))
    9459              :             return 1004; /* *negqi_1_zextdi_nf */
    9460              :           if (pnum_clobbers == NULL
    9461              :               || !
    9462              : #line 15295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9463              : (TARGET_APX_NDD && true))
    9464              :             return -1;
    9465              :           *pnum_clobbers = 1;
    9466              :           return 1005; /* *negqi_1_zextdi */
    9467              : 
    9468              :         case 3:
    9469              :           if (
    9470              : #line 15309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9471              : (TARGET_APX_NDD && TARGET_APX_NF))
    9472              :             return 1008; /* *neghi_1_zextdi_nf */
    9473              :           if (pnum_clobbers == NULL
    9474              :               || !
    9475              : #line 15309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9476              : (TARGET_APX_NDD && true))
    9477              :             return -1;
    9478              :           *pnum_clobbers = 1;
    9479              :           return 1009; /* *neghi_1_zextdi */
    9480              : 
    9481              :         case 4:
    9482              :           if (!
    9483              : #line 15324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9484              : (TARGET_64BIT
    9485              :    && ix86_unary_operator_ok (NEG, SImode, operands, TARGET_APX_NDD)))
    9486              :             return -1;
    9487              :           *pnum_clobbers = 1;
    9488              :           return 1010; /* *negsi_1_zext */
    9489              : 
    9490              :         default:
    9491              :           return -1;
    9492              :         }
    9493              : 
    9494              :     case NOT:
    9495              :       x5 = XEXP (x4, 0);
    9496              :       operands[1] = x5;
    9497              :       switch (GET_MODE (operands[0]))
    9498              :         {
    9499              :         case E_SImode:
    9500              :           switch (pattern283 (x3))
    9501              :             {
    9502              :             case 0:
    9503              :               if (!
    9504              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9505              : (TARGET_APX_NDD))
    9506              :                 return -1;
    9507              :               return 1074; /* *one_cmplqi2_1_zextsi */
    9508              : 
    9509              :             case 1:
    9510              :               if (!
    9511              : #line 16001 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9512              : (TARGET_APX_NDD))
    9513              :                 return -1;
    9514              :               return 1076; /* *one_cmplhi2_1_zextsi */
    9515              : 
    9516              :             default:
    9517              :               return -1;
    9518              :             }
    9519              : 
    9520              :         case E_DImode:
    9521              :           if (!register_operand (operands[0], E_DImode)
    9522              :               || GET_MODE (x3) != E_DImode)
    9523              :             return -1;
    9524              :           switch (GET_MODE (x4))
    9525              :             {
    9526              :             case E_QImode:
    9527              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9528              :                   || !
    9529              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9530              : (TARGET_APX_NDD))
    9531              :                 return -1;
    9532              :               return 1075; /* *one_cmplqi2_1_zextdi */
    9533              : 
    9534              :             case E_HImode:
    9535              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9536              :                   || !
    9537              : #line 16001 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9538              : (TARGET_APX_NDD))
    9539              :                 return -1;
    9540              :               return 1077; /* *one_cmplhi2_1_zextdi */
    9541              : 
    9542              :             case E_SImode:
    9543              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9544              :                   || !
    9545              : #line 16014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9546              : (TARGET_64BIT
    9547              :    && ix86_unary_operator_ok (NOT, SImode, operands, TARGET_APX_NDD)))
    9548              :                 return -1;
    9549              :               return 1078; /* *one_cmplsi2_1_zext */
    9550              : 
    9551              :             default:
    9552              :               return -1;
    9553              :             }
    9554              : 
    9555              :         default:
    9556              :           return -1;
    9557              :         }
    9558              : 
    9559              :     case ASHIFT:
    9560              :       switch (pattern116 (x3))
    9561              :         {
    9562              :         case 0:
    9563              :           if (register_operand (operands[2], E_SImode)
    9564              :               && 
    9565              : #line 17016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9566              : (TARGET_64BIT && TARGET_BMI2))
    9567              :             return 1130; /* *bmi2_ashlsi3_1_zext */
    9568              :           if (pnum_clobbers == NULL
    9569              :               || !nonmemory_operand (operands[2], E_QImode)
    9570              :               || !
    9571              : #line 17057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9572              : (TARGET_64BIT
    9573              :    && ix86_binary_operator_ok (ASHIFT, SImode, operands, TARGET_APX_NDD)))
    9574              :             return -1;
    9575              :           *pnum_clobbers = 1;
    9576              :           return 1141; /* *ashlsi3_1_zext */
    9577              : 
    9578              :         case 1:
    9579              :           if (
    9580              : #line 17026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9581              : (TARGET_APX_NDD && TARGET_APX_NF))
    9582              :             return 1135; /* *ashlqi3_1_zextdi_nf */
    9583              :           if (pnum_clobbers == NULL
    9584              :               || !
    9585              : #line 17026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9586              : (TARGET_APX_NDD && true))
    9587              :             return -1;
    9588              :           *pnum_clobbers = 1;
    9589              :           return 1136; /* *ashlqi3_1_zextdi */
    9590              : 
    9591              :         case 2:
    9592              :           if (
    9593              : #line 17041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9594              : (TARGET_APX_NDD && TARGET_APX_NF))
    9595              :             return 1139; /* *ashlhi3_1_zextdi_nf */
    9596              :           if (pnum_clobbers == NULL
    9597              :               || !
    9598              : #line 17041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9599              : (TARGET_APX_NDD && true))
    9600              :             return -1;
    9601              :           *pnum_clobbers = 1;
    9602              :           return 1140; /* *ashlhi3_1_zextdi */
    9603              : 
    9604              :         case 3:
    9605              :           if (
    9606              : #line 17026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9607              : (TARGET_APX_NDD && TARGET_APX_NF))
    9608              :             return 1133; /* *ashlqi3_1_zextsi_nf */
    9609              :           if (pnum_clobbers == NULL
    9610              :               || !
    9611              : #line 17026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9612              : (TARGET_APX_NDD && true))
    9613              :             return -1;
    9614              :           *pnum_clobbers = 1;
    9615              :           return 1134; /* *ashlqi3_1_zextsi */
    9616              : 
    9617              :         case 4:
    9618              :           if (
    9619              : #line 17041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9620              : (TARGET_APX_NDD && TARGET_APX_NF))
    9621              :             return 1137; /* *ashlhi3_1_zextsi_nf */
    9622              :           if (pnum_clobbers == NULL
    9623              :               || !
    9624              : #line 17041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9625              : (TARGET_APX_NDD && true))
    9626              :             return -1;
    9627              :           *pnum_clobbers = 1;
    9628              :           return 1138; /* *ashlhi3_1_zextsi */
    9629              : 
    9630              :         default:
    9631              :           return -1;
    9632              :         }
    9633              : 
    9634              :     case ASHIFTRT:
    9635              :       if (GET_MODE (x4) == E_SImode
    9636              :           && register_operand (operands[0], E_DImode))
    9637              :         {
    9638              :           res = recog_74 (x1, insn, pnum_clobbers);
    9639              :           if (res >= 0)
    9640              :             return res;
    9641              :         }
    9642              :       x5 = XEXP (x4, 0);
    9643              :       operands[1] = x5;
    9644              :       switch (pattern285 (x3, pnum_clobbers))
    9645              :         {
    9646              :         case 0:
    9647              :           if (
    9648              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9649              : (TARGET_APX_NDD && TARGET_APX_NF))
    9650              :             return 1230; /* *ashrqi3_1_zextsi_nf */
    9651              :           if (pnum_clobbers == NULL
    9652              :               || !
    9653              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9654              : (TARGET_APX_NDD && true))
    9655              :             return -1;
    9656              :           *pnum_clobbers = 1;
    9657              :           return 1231; /* *ashrqi3_1_zextsi */
    9658              : 
    9659              :         case 1:
    9660              :           if (
    9661              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9662              : (TARGET_APX_NDD && TARGET_APX_NF))
    9663              :             return 1238; /* *ashrhi3_1_zextsi_nf */
    9664              :           if (pnum_clobbers == NULL
    9665              :               || !
    9666              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9667              : (TARGET_APX_NDD && true))
    9668              :             return -1;
    9669              :           *pnum_clobbers = 1;
    9670              :           return 1239; /* *ashrhi3_1_zextsi */
    9671              : 
    9672              :         case 2:
    9673              :           if (
    9674              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9675              : (TARGET_APX_NDD && TARGET_APX_NF))
    9676              :             return 1234; /* *ashrqi3_1_zextdi_nf */
    9677              :           if (pnum_clobbers == NULL
    9678              :               || !
    9679              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9680              : (TARGET_APX_NDD && true))
    9681              :             return -1;
    9682              :           *pnum_clobbers = 1;
    9683              :           return 1235; /* *ashrqi3_1_zextdi */
    9684              : 
    9685              :         case 3:
    9686              :           if (
    9687              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9688              : (TARGET_APX_NDD && TARGET_APX_NF))
    9689              :             return 1242; /* *ashrhi3_1_zextdi_nf */
    9690              :           if (pnum_clobbers == NULL
    9691              :               || !
    9692              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9693              : (TARGET_APX_NDD && true))
    9694              :             return -1;
    9695              :           *pnum_clobbers = 1;
    9696              :           return 1243; /* *ashrhi3_1_zextdi */
    9697              : 
    9698              :         case 4:
    9699              :           if (!
    9700              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9701              : (TARGET_64BIT
    9702              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)))
    9703              :             return -1;
    9704              :           *pnum_clobbers = 1;
    9705              :           return 1245; /* *ashrsi3_1_zext */
    9706              : 
    9707              :         default:
    9708              :           return -1;
    9709              :         }
    9710              : 
    9711              :     case LSHIFTRT:
    9712              :       switch (pattern116 (x3))
    9713              :         {
    9714              :         case 0:
    9715              :           if (register_operand (operands[2], E_SImode)
    9716              :               && 
    9717              : #line 18448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9718              : (TARGET_64BIT && TARGET_BMI2))
    9719              :             return 1222; /* *bmi2_lshrsi3_1_zext */
    9720              :           if (pnum_clobbers == NULL
    9721              :               || !nonmemory_operand (operands[2], E_QImode)
    9722              :               || !
    9723              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9724              : (TARGET_64BIT
    9725              :    && ix86_binary_operator_ok (LSHIFTRT, SImode, operands, TARGET_APX_NDD)))
    9726              :             return -1;
    9727              :           *pnum_clobbers = 1;
    9728              :           return 1244; /* *lshrsi3_1_zext */
    9729              : 
    9730              :         case 1:
    9731              :           if (
    9732              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9733              : (TARGET_APX_NDD && TARGET_APX_NF))
    9734              :             return 1232; /* *lshrqi3_1_zextdi_nf */
    9735              :           if (pnum_clobbers == NULL
    9736              :               || !
    9737              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9738              : (TARGET_APX_NDD && true))
    9739              :             return -1;
    9740              :           *pnum_clobbers = 1;
    9741              :           return 1233; /* *lshrqi3_1_zextdi */
    9742              : 
    9743              :         case 2:
    9744              :           if (
    9745              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9746              : (TARGET_APX_NDD && TARGET_APX_NF))
    9747              :             return 1240; /* *lshrhi3_1_zextdi_nf */
    9748              :           if (pnum_clobbers == NULL
    9749              :               || !
    9750              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9751              : (TARGET_APX_NDD && true))
    9752              :             return -1;
    9753              :           *pnum_clobbers = 1;
    9754              :           return 1241; /* *lshrhi3_1_zextdi */
    9755              : 
    9756              :         case 3:
    9757              :           if (
    9758              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9759              : (TARGET_APX_NDD && TARGET_APX_NF))
    9760              :             return 1228; /* *lshrqi3_1_zextsi_nf */
    9761              :           if (pnum_clobbers == NULL
    9762              :               || !
    9763              : #line 18458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9764              : (TARGET_APX_NDD && true))
    9765              :             return -1;
    9766              :           *pnum_clobbers = 1;
    9767              :           return 1229; /* *lshrqi3_1_zextsi */
    9768              : 
    9769              :         case 4:
    9770              :           if (
    9771              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9772              : (TARGET_APX_NDD && TARGET_APX_NF))
    9773              :             return 1236; /* *lshrhi3_1_zextsi_nf */
    9774              :           if (pnum_clobbers == NULL
    9775              :               || !
    9776              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9777              : (TARGET_APX_NDD && true))
    9778              :             return -1;
    9779              :           *pnum_clobbers = 1;
    9780              :           return 1237; /* *lshrhi3_1_zextsi */
    9781              : 
    9782              :         default:
    9783              :           return -1;
    9784              :         }
    9785              : 
    9786              :     case ROTATERT:
    9787              :       switch (pattern116 (x3))
    9788              :         {
    9789              :         case 0:
    9790              :           if (const_0_to_31_operand (operands[2], E_QImode)
    9791              :               && 
    9792              : #line 19554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9793              : (TARGET_64BIT && TARGET_BMI2 && !optimize_function_for_size_p (cfun)))
    9794              :             return 1388; /* *bmi2_rorxsi3_1_zext */
    9795              :           if (pnum_clobbers == NULL
    9796              :               || !nonmemory_operand (operands[2], E_QImode)
    9797              :               || !
    9798              : #line 19595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9799              : (TARGET_64BIT && ix86_binary_operator_ok (ROTATERT, SImode, operands)))
    9800              :             return -1;
    9801              :           *pnum_clobbers = 1;
    9802              :           return 1410; /* *rotrsi3_1_zext */
    9803              : 
    9804              :         case 1:
    9805              :           if (
    9806              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9807              : (TARGET_APX_NDD && TARGET_APX_NF))
    9808              :             return 1399; /* *rotrqi3_1_zextdi_nf */
    9809              :           if (pnum_clobbers == NULL
    9810              :               || !
    9811              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9812              : (TARGET_APX_NDD && true))
    9813              :             return -1;
    9814              :           *pnum_clobbers = 1;
    9815              :           return 1400; /* *rotrqi3_1_zextdi */
    9816              : 
    9817              :         case 2:
    9818              :           if (
    9819              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9820              : (TARGET_APX_NDD && TARGET_APX_NF))
    9821              :             return 1407; /* *rotrhi3_1_zextdi_nf */
    9822              :           if (pnum_clobbers == NULL
    9823              :               || !
    9824              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9825              : (TARGET_APX_NDD && true))
    9826              :             return -1;
    9827              :           *pnum_clobbers = 1;
    9828              :           return 1408; /* *rotrhi3_1_zextdi */
    9829              : 
    9830              :         case 3:
    9831              :           if (
    9832              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9833              : (TARGET_APX_NDD && TARGET_APX_NF))
    9834              :             return 1395; /* *rotrqi3_1_zextsi_nf */
    9835              :           if (pnum_clobbers == NULL
    9836              :               || !
    9837              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9838              : (TARGET_APX_NDD && true))
    9839              :             return -1;
    9840              :           *pnum_clobbers = 1;
    9841              :           return 1396; /* *rotrqi3_1_zextsi */
    9842              : 
    9843              :         case 4:
    9844              :           if (
    9845              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9846              : (TARGET_APX_NDD && TARGET_APX_NF))
    9847              :             return 1403; /* *rotrhi3_1_zextsi_nf */
    9848              :           if (pnum_clobbers == NULL
    9849              :               || !
    9850              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9851              : (TARGET_APX_NDD && true))
    9852              :             return -1;
    9853              :           *pnum_clobbers = 1;
    9854              :           return 1404; /* *rotrhi3_1_zextsi */
    9855              : 
    9856              :         default:
    9857              :           return -1;
    9858              :         }
    9859              : 
    9860              :     case ROTATE:
    9861              :       x5 = XEXP (x4, 0);
    9862              :       operands[1] = x5;
    9863              :       switch (pattern285 (x3, pnum_clobbers))
    9864              :         {
    9865              :         case 0:
    9866              :           if (
    9867              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9868              : (TARGET_APX_NDD && TARGET_APX_NF))
    9869              :             return 1393; /* *rotlqi3_1_zextsi_nf */
    9870              :           if (pnum_clobbers == NULL
    9871              :               || !
    9872              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9873              : (TARGET_APX_NDD && true))
    9874              :             return -1;
    9875              :           *pnum_clobbers = 1;
    9876              :           return 1394; /* *rotlqi3_1_zextsi */
    9877              : 
    9878              :         case 1:
    9879              :           if (
    9880              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9881              : (TARGET_APX_NDD && TARGET_APX_NF))
    9882              :             return 1401; /* *rotlhi3_1_zextsi_nf */
    9883              :           if (pnum_clobbers == NULL
    9884              :               || !
    9885              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9886              : (TARGET_APX_NDD && true))
    9887              :             return -1;
    9888              :           *pnum_clobbers = 1;
    9889              :           return 1402; /* *rotlhi3_1_zextsi */
    9890              : 
    9891              :         case 2:
    9892              :           if (
    9893              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9894              : (TARGET_APX_NDD && TARGET_APX_NF))
    9895              :             return 1397; /* *rotlqi3_1_zextdi_nf */
    9896              :           if (pnum_clobbers == NULL
    9897              :               || !
    9898              : #line 19564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9899              : (TARGET_APX_NDD && true))
    9900              :             return -1;
    9901              :           *pnum_clobbers = 1;
    9902              :           return 1398; /* *rotlqi3_1_zextdi */
    9903              : 
    9904              :         case 3:
    9905              :           if (
    9906              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9907              : (TARGET_APX_NDD && TARGET_APX_NF))
    9908              :             return 1405; /* *rotlhi3_1_zextdi_nf */
    9909              :           if (pnum_clobbers == NULL
    9910              :               || !
    9911              : #line 19579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9912              : (TARGET_APX_NDD && true))
    9913              :             return -1;
    9914              :           *pnum_clobbers = 1;
    9915              :           return 1406; /* *rotlhi3_1_zextdi */
    9916              : 
    9917              :         case 4:
    9918              :           if (!
    9919              : #line 19595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9920              : (TARGET_64BIT && ix86_binary_operator_ok (ROTATE, SImode, operands)))
    9921              :             return -1;
    9922              :           *pnum_clobbers = 1;
    9923              :           return 1409; /* *rotlsi3_1_zext */
    9924              : 
    9925              :         default:
    9926              :           return -1;
    9927              :         }
    9928              : 
    9929              :     case CTZ:
    9930              :       if (pattern117 (x3, pnum_clobbers, 
    9931              : E_SImode, 
    9932              : E_DImode) != 0
    9933              :           || !
    9934              : #line 22218 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9935              : (TARGET_64BIT))
    9936              :         return -1;
    9937              :       *pnum_clobbers = 1;
    9938              :       return 1557; /* *ctzsidi2_uext */
    9939              : 
    9940              :     case CLZ:
    9941              :       if (pattern117 (x3, pnum_clobbers, 
    9942              : E_SImode, 
    9943              : E_DImode) != 0
    9944              :           || !
    9945              : #line 22661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9946              : (TARGET_LZCNT && TARGET_64BIT))
    9947              :         return -1;
    9948              :       *pnum_clobbers = 1;
    9949              :       return 1581; /* *clzsi2_lzcnt_zext_2 */
    9950              : 
    9951              :     case POPCOUNT:
    9952              :       if (pnum_clobbers == NULL)
    9953              :         return -1;
    9954              :       x5 = XEXP (x4, 0);
    9955              :       operands[1] = x5;
    9956              :       switch (GET_MODE (operands[0]))
    9957              :         {
    9958              :         case E_DImode:
    9959              :           if (pattern630 (x3, 
    9960              : E_DImode, 
    9961              : E_SImode) != 0
    9962              :               || !
    9963              : #line 23500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9964              : (TARGET_POPCNT && TARGET_64BIT))
    9965              :             return -1;
    9966              :           *pnum_clobbers = 1;
    9967              :           return 1672; /* *popcountsi2_zext_2 */
    9968              : 
    9969              :         case E_SImode:
    9970              :           if (pattern630 (x3, 
    9971              : E_SImode, 
    9972              : E_HImode) != 0
    9973              :               || !
    9974              : #line 23566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9975              : (TARGET_POPCNT
    9976              :    && ix86_pre_reload_split ()))
    9977              :             return -1;
    9978              :           *pnum_clobbers = 1;
    9979              :           return 1675; /* *popcounthi2_2 */
    9980              : 
    9981              :         default:
    9982              :           return -1;
    9983              :         }
    9984              : 
    9985              :     case UNSPEC:
    9986              :       return recog_76 (x1, insn, pnum_clobbers);
    9987              : 
    9988              :     case IF_THEN_ELSE:
    9989              :       if (GET_MODE (x4) != E_SImode)
    9990              :         return -1;
    9991              :       x5 = XEXP (x4, 0);
    9992              :       if (!ix86_comparison_operator (x5, E_VOIDmode))
    9993              :         return -1;
    9994              :       operands[1] = x5;
    9995              :       x7 = XEXP (x5, 0);
    9996              :       if (GET_CODE (x7) != REG
    9997              :           || REGNO (x7) != 17)
    9998              :         return -1;
    9999              :       x8 = XEXP (x5, 1);
   10000              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   10001              :           || !nonimmediate_operand (operands[0], E_DImode)
   10002              :           || GET_MODE (x3) != E_DImode)
   10003              :         return -1;
   10004              :       x6 = XEXP (x4, 1);
   10005              :       operands[2] = x6;
   10006              :       if (!nonimmediate_operand (operands[2], E_SImode))
   10007              :         return -1;
   10008              :       x13 = XEXP (x4, 2);
   10009              :       operands[3] = x13;
   10010              :       if (!nonimmediate_operand (operands[3], E_SImode)
   10011              :           || !
   10012              : #line 27528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10013              : (TARGET_64BIT
   10014              :    && TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
   10015              :         return -1;
   10016              :       return 1845; /* *movsicc_noc_zext_1 */
   10017              : 
   10018              :     case VEC_SELECT:
   10019              :       return recog_80 (x1, insn, pnum_clobbers);
   10020              : 
   10021              :     case FIX:
   10022              :       switch (pattern118 (x3))
   10023              :         {
   10024              :         case 0:
   10025              :           if (!
   10026              : #line 9087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10027              : (TARGET_64BIT && TARGET_SSE))
   10028              :             return -1;
   10029              :           return 4874; /* *sse_cvttss2si_zext */
   10030              : 
   10031              :         case 1:
   10032              :           if (!
   10033              : #line 9804 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10034              : (TARGET_64BIT && TARGET_SSE2))
   10035              :             return -1;
   10036              :           return 5028; /* *sse2_cvttsd2si_zext */
   10037              : 
   10038              :         default:
   10039              :           return -1;
   10040              :         }
   10041              : 
   10042              :     case UNSIGNED_FIX:
   10043              :       switch (pattern118 (x3))
   10044              :         {
   10045              :         case 0:
   10046              :           if (!
   10047              : #line 9602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10048              : (TARGET_64BIT && TARGET_AVX512F))
   10049              :             return -1;
   10050              :           return 4989; /* *avx512f_vcvttss2usi_zext */
   10051              : 
   10052              :         case 1:
   10053              :           if (!
   10054              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10055              : (TARGET_64BIT && TARGET_AVX512F))
   10056              :             return -1;
   10057              :           return 5007; /* *avx512f_vcvttsd2usi_zext */
   10058              : 
   10059              :         default:
   10060              :           return -1;
   10061              :         }
   10062              : 
   10063              :     case SUBREG:
   10064              :       if (pattern119 (x3) != 0
   10065              :           || !
   10066              : #line 23025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10067              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   10068              :         return -1;
   10069              :       return 8680; /* *sse2_pmovskb_zexthisi */
   10070              : 
   10071              :     default:
   10072              :       return -1;
   10073              :     }
   10074              : }
   10075              : 
   10076              :  int
   10077              : recog_109 (rtx x1 ATTRIBUTE_UNUSED,
   10078              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10079              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10080              : {
   10081              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10082              :   rtx x2, x3;
   10083              :   int res ATTRIBUTE_UNUSED;
   10084              :   switch (pattern18 (x1, pnum_clobbers))
   10085              :     {
   10086              :     case 0:
   10087              :       if (!
   10088              : #line 19169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10089              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   10090              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   10091              :       == GET_MODE_BITSIZE (SImode)-1
   10092              :    && ix86_pre_reload_split ()))
   10093              :         return -1;
   10094              :       *pnum_clobbers = 1;
   10095              :       return 1335; /* *rotrsi3_mask_1 */
   10096              : 
   10097              :     case 1:
   10098              :       if (!(
   10099              : #line 19169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10100              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   10101              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   10102              :       == GET_MODE_BITSIZE (DImode)-1
   10103              :    && ix86_pre_reload_split ()) && 
   10104              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10105              : (TARGET_64BIT)))
   10106              :         return -1;
   10107              :       *pnum_clobbers = 1;
   10108              :       return 1337; /* *rotrdi3_mask_1 */
   10109              : 
   10110              :     case 2:
   10111              :       if (!
   10112              : #line 19250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10113              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   10114              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10115              :    && ix86_pre_reload_split ()))
   10116              :         return -1;
   10117              :       *pnum_clobbers = 1;
   10118              :       return 1351; /* *rotrsi3_add_1 */
   10119              : 
   10120              :     case 3:
   10121              :       if (!(
   10122              : #line 19250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10123              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   10124              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10125              :    && ix86_pre_reload_split ()) && 
   10126              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10127              : (TARGET_64BIT)))
   10128              :         return -1;
   10129              :       *pnum_clobbers = 1;
   10130              :       return 1353; /* *rotrdi3_add_1 */
   10131              : 
   10132              :     case 4:
   10133              :       if (!
   10134              : #line 19319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10135              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   10136              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10137              :    && ix86_pre_reload_split ()))
   10138              :         return -1;
   10139              :       *pnum_clobbers = 1;
   10140              :       return 1367; /* *rotrsi3_sub_1 */
   10141              : 
   10142              :     case 5:
   10143              :       if (!(
   10144              : #line 19319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10145              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   10146              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10147              :    && ix86_pre_reload_split ()) && 
   10148              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10149              : (TARGET_64BIT)))
   10150              :         return -1;
   10151              :       *pnum_clobbers = 1;
   10152              :       return 1369; /* *rotrdi3_sub_1 */
   10153              : 
   10154              :     case 6:
   10155              :       x2 = XEXP (x1, 1);
   10156              :       x3 = XEXP (x2, 1);
   10157              :       switch (GET_CODE (x3))
   10158              :         {
   10159              :         case SUBREG:
   10160              :           switch (pattern456 (x2, pnum_clobbers))
   10161              :             {
   10162              :             case 0:
   10163              :               if (
   10164              : #line 19121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10165              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   10166              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   10167              :       == GET_MODE_BITSIZE (SImode)-1
   10168              :    && ix86_pre_reload_split ()))
   10169              :                 {
   10170              :                   *pnum_clobbers = 1;
   10171              :                   return 1327; /* *rotrsi3_mask */
   10172              :                 }
   10173              :               break;
   10174              : 
   10175              :             case 1:
   10176              :               if ((
   10177              : #line 19121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10178              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   10179              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   10180              :       == GET_MODE_BITSIZE (DImode)-1
   10181              :    && ix86_pre_reload_split ()) && 
   10182              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10183              : (TARGET_64BIT)))
   10184              :                 {
   10185              :                   *pnum_clobbers = 1;
   10186              :                   return 1329; /* *rotrdi3_mask */
   10187              :                 }
   10188              :               break;
   10189              : 
   10190              :             case 2:
   10191              :               if (
   10192              : #line 19214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10193              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   10194              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10195              :    && ix86_pre_reload_split ()))
   10196              :                 {
   10197              :                   *pnum_clobbers = 1;
   10198              :                   return 1343; /* *rotrsi3_add */
   10199              :                 }
   10200              :               break;
   10201              : 
   10202              :             case 3:
   10203              :               if ((
   10204              : #line 19214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10205              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   10206              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10207              :    && ix86_pre_reload_split ()) && 
   10208              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10209              : (TARGET_64BIT)))
   10210              :                 {
   10211              :                   *pnum_clobbers = 1;
   10212              :                   return 1345; /* *rotrdi3_add */
   10213              :                 }
   10214              :               break;
   10215              : 
   10216              :             case 4:
   10217              :               if (
   10218              : #line 19283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10219              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   10220              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10221              :    && ix86_pre_reload_split ()))
   10222              :                 {
   10223              :                   *pnum_clobbers = 1;
   10224              :                   return 1359; /* *rotrsi3_sub */
   10225              :                 }
   10226              :               break;
   10227              : 
   10228              :             case 5:
   10229              :               if ((
   10230              : #line 19283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10231              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   10232              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10233              :    && ix86_pre_reload_split ()) && 
   10234              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10235              : (TARGET_64BIT)))
   10236              :                 {
   10237              :                   *pnum_clobbers = 1;
   10238              :                   return 1361; /* *rotrdi3_sub */
   10239              :                 }
   10240              :               break;
   10241              : 
   10242              :             default:
   10243              :               break;
   10244              :             }
   10245              :           break;
   10246              : 
   10247              :         case CONST_INT:
   10248              :           operands[2] = x3;
   10249              :           switch (GET_MODE (operands[0]))
   10250              :             {
   10251              :             case E_DImode:
   10252              :               if (pattern626 (x2, pnum_clobbers, 
   10253              : E_DImode) == 0
   10254              :                   && const_1_to_31_operand (operands[2], E_QImode)
   10255              :                   && 
   10256              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10257              : (!TARGET_64BIT))
   10258              :                 {
   10259              :                   *pnum_clobbers = 2;
   10260              :                   return 1372; /* ix86_rotrdi3_doubleword */
   10261              :                 }
   10262              :               break;
   10263              : 
   10264              :             case E_SImode:
   10265              :               if (register_operand (operands[0], E_SImode)
   10266              :                   && GET_MODE (x2) == E_SImode
   10267              :                   && nonimmediate_operand (operands[1], E_SImode)
   10268              :                   && const_0_to_31_operand (operands[2], E_QImode)
   10269              :                   && 
   10270              : #line 19465 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10271              : (TARGET_BMI2 && !optimize_function_for_size_p (cfun)))
   10272              :                 return 1378; /* *bmi2_rorxsi3_1 */
   10273              :               break;
   10274              : 
   10275              :             default:
   10276              :               break;
   10277              :             }
   10278              :           if (register_operand (operands[0], E_DImode)
   10279              :               && GET_MODE (x2) == E_DImode)
   10280              :             {
   10281              :               if (XWINT (x3, 0) == 32L
   10282              :                   && register_operand (operands[1], E_DImode)
   10283              :                   && 
   10284              : #line 19424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10285              : (!TARGET_64BIT))
   10286              :                 return 1375; /* rotr32di2_doubleword */
   10287              :               if (nonimmediate_operand (operands[1], E_DImode))
   10288              :                 {
   10289              :                   operands[2] = x3;
   10290              :                   if (const_0_to_63_operand (operands[2], E_QImode)
   10291              :                       && (
   10292              : #line 19465 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10293              : (TARGET_BMI2 && !optimize_function_for_size_p (cfun)) && 
   10294              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10295              : (TARGET_64BIT)))
   10296              :                     return 1379; /* *bmi2_rorxdi3_1 */
   10297              :                 }
   10298              :             }
   10299              :           break;
   10300              : 
   10301              :         default:
   10302              :           break;
   10303              :         }
   10304              :       operands[2] = x3;
   10305              :       if (!nonmemory_operand (operands[2], E_QImode))
   10306              :         return -1;
   10307              :       switch (pattern14 (x2))
   10308              :         {
   10309              :         case 0:
   10310              :           if (
   10311              : #line 19475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10312              : (ix86_binary_operator_ok (ROTATERT, SImode, operands, TARGET_APX_NDD)
   10313              :    && TARGET_APX_NF))
   10314              :             return 1382; /* *rotrsi3_1_nf */
   10315              :           if (pnum_clobbers == NULL
   10316              :               || !
   10317              : #line 19475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10318              : (ix86_binary_operator_ok (ROTATERT, SImode, operands, TARGET_APX_NDD)
   10319              :    && true))
   10320              :             return -1;
   10321              :           *pnum_clobbers = 1;
   10322              :           return 1383; /* *rotrsi3_1 */
   10323              : 
   10324              :         case 1:
   10325              :           if ((
   10326              : #line 19475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10327              : (ix86_binary_operator_ok (ROTATERT, DImode, operands, TARGET_APX_NDD)
   10328              :    && TARGET_APX_NF) && 
   10329              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10330              : (TARGET_64BIT)))
   10331              :             return 1386; /* *rotrdi3_1_nf */
   10332              :           if (pnum_clobbers == NULL
   10333              :               || !(
   10334              : #line 19475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10335              : (ix86_binary_operator_ok (ROTATERT, DImode, operands, TARGET_APX_NDD)
   10336              :    && true) && 
   10337              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10338              : (TARGET_64BIT)))
   10339              :             return -1;
   10340              :           *pnum_clobbers = 1;
   10341              :           return 1387; /* *rotrdi3_1 */
   10342              : 
   10343              :         default:
   10344              :           return -1;
   10345              :         }
   10346              : 
   10347              :     default:
   10348              :       return -1;
   10349              :     }
   10350              : }
   10351              : 
   10352              :  int
   10353              : recog_122 (rtx x1 ATTRIBUTE_UNUSED,
   10354              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10355              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10356              : {
   10357              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10358              :   rtx x2, x3, x4, x5, x6, x7, x8;
   10359              :   int res ATTRIBUTE_UNUSED;
   10360              :   if (pnum_clobbers == NULL)
   10361              :     return -1;
   10362              :   x2 = XEXP (x1, 1);
   10363              :   x3 = XEXP (x2, 0);
   10364              :   if (!ix86_carry_flag_operator (x3, E_VOIDmode))
   10365              :     return -1;
   10366              :   operands[1] = x3;
   10367              :   x4 = XEXP (x3, 0);
   10368              :   if (GET_CODE (x4) != REG
   10369              :       || REGNO (x4) != 17)
   10370              :     return -1;
   10371              :   x5 = XEXP (x3, 1);
   10372              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   10373              :     return -1;
   10374              :   x6 = XEXP (x2, 1);
   10375              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   10376              :     return -1;
   10377              :   x7 = XEXP (x2, 2);
   10378              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   10379              :     return -1;
   10380              :   x8 = XEXP (x1, 0);
   10381              :   operands[0] = x8;
   10382              :   switch (pattern24 (x2))
   10383              :     {
   10384              :     case 0:
   10385              :       *pnum_clobbers = 1;
   10386              :       return 1835; /* *x86_movsicc_0_m1_se */
   10387              : 
   10388              :     case 1:
   10389              :       if (!
   10390              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10391              : (TARGET_64BIT))
   10392              :         return -1;
   10393              :       *pnum_clobbers = 1;
   10394              :       return 1836; /* *x86_movdicc_0_m1_se */
   10395              : 
   10396              :     default:
   10397              :       return -1;
   10398              :     }
   10399              : }
   10400              : 
   10401              :  int
   10402              : recog_125 (rtx x1 ATTRIBUTE_UNUSED,
   10403              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10404              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10405              : {
   10406              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10407              :   rtx x2, x3, x4, x5, x6;
   10408              :   int res ATTRIBUTE_UNUSED;
   10409              :   x2 = XEXP (x1, 1);
   10410              :   x3 = XEXP (x2, 0);
   10411              :   if (GET_CODE (x3) != SUBREG
   10412              :       || maybe_ne (SUBREG_BYTE (x3), 0)
   10413              :       || GET_MODE (x3) != E_V2DImode)
   10414              :     return -1;
   10415              :   x4 = XEXP (x2, 1);
   10416              :   x5 = XVECEXP (x4, 0, 0);
   10417              :   if (XWINT (x5, 0) != 0L
   10418              :       || GET_MODE (x2) != E_DImode)
   10419              :     return -1;
   10420              :   x6 = XEXP (x3, 0);
   10421              :   switch (pattern1227 (x6))
   10422              :     {
   10423              :     case 0:
   10424              :       if (pshufb_truncv8hiv8qi_operand (operands[2], E_V16QImode)
   10425              :           && 
   10426              : #line 16099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10427              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()))
   10428              :         return 7381; /* *avx512f_pshufb_truncv8hiv8qi_1 */
   10429              :       if (!pshufb_truncv4siv4hi_operand (operands[2], E_V16QImode)
   10430              :           || !
   10431              : #line 16454 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10432              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   10433              :         return -1;
   10434              :       return 7466; /* *avx512f_pshufb_truncv4siv4hi_1 */
   10435              : 
   10436              :     case 1:
   10437              :       if (!
   10438              : #line 16691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10439              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   10440              :         return -1;
   10441              :       return 7515; /* *avx512f_pshufd_truncv2div2si_1 */
   10442              : 
   10443              :     default:
   10444              :       return -1;
   10445              :     }
   10446              : }
   10447              : 
   10448              :  int
   10449              : recog_127 (rtx x1 ATTRIBUTE_UNUSED,
   10450              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10451              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10452              : {
   10453              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10454              :   rtx x2, x3, x4, x5, x6;
   10455              :   int res ATTRIBUTE_UNUSED;
   10456              :   x2 = XEXP (x1, 1);
   10457              :   x3 = XEXP (x2, 0);
   10458              :   x4 = XVECEXP (x3, 0, 0);
   10459              :   operands[1] = x4;
   10460              :   x5 = XEXP (x2, 2);
   10461              :   switch (GET_CODE (x5))
   10462              :     {
   10463              :     case REG:
   10464              :     case SUBREG:
   10465              :       operands[3] = x5;
   10466              :       switch (GET_MODE (operands[0]))
   10467              :         {
   10468              :         case E_V16SImode:
   10469              :           if (pattern1013 (x2, 
   10470              : E_V16SImode, 
   10471              : E_HImode) != 0
   10472              :               || !
   10473              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10474              : (TARGET_AVX512F))
   10475              :             return -1;
   10476              :           return 2509; /* *avx512f_loadv16si_mask */
   10477              : 
   10478              :         case E_V8SImode:
   10479              :           if (pattern1013 (x2, 
   10480              : E_V8SImode, 
   10481              : E_QImode) != 0
   10482              :               || !(
   10483              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10484              : (TARGET_AVX512F) && 
   10485              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10486              : (TARGET_AVX512VL)))
   10487              :             return -1;
   10488              :           return 2510; /* *avx512vl_loadv8si_mask */
   10489              : 
   10490              :         case E_V4SImode:
   10491              :           if (pattern1013 (x2, 
   10492              : E_V4SImode, 
   10493              : E_QImode) != 0
   10494              :               || !(
   10495              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10496              : (TARGET_AVX512F) && 
   10497              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10498              : (TARGET_AVX512VL)))
   10499              :             return -1;
   10500              :           return 2511; /* *avx512vl_loadv4si_mask */
   10501              : 
   10502              :         case E_V8DImode:
   10503              :           if (pattern1013 (x2, 
   10504              : E_V8DImode, 
   10505              : E_QImode) != 0
   10506              :               || !
   10507              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10508              : (TARGET_AVX512F))
   10509              :             return -1;
   10510              :           return 2512; /* *avx512f_loadv8di_mask */
   10511              : 
   10512              :         case E_V4DImode:
   10513              :           if (pattern1013 (x2, 
   10514              : E_V4DImode, 
   10515              : E_QImode) != 0
   10516              :               || !(
   10517              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10518              : (TARGET_AVX512F) && 
   10519              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10520              : (TARGET_AVX512VL)))
   10521              :             return -1;
   10522              :           return 2513; /* *avx512vl_loadv4di_mask */
   10523              : 
   10524              :         case E_V2DImode:
   10525              :           if (pattern1013 (x2, 
   10526              : E_V2DImode, 
   10527              : E_QImode) != 0
   10528              :               || !(
   10529              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10530              : (TARGET_AVX512F) && 
   10531              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10532              : (TARGET_AVX512VL)))
   10533              :             return -1;
   10534              :           return 2514; /* *avx512vl_loadv2di_mask */
   10535              : 
   10536              :         case E_V16SFmode:
   10537              :           if (pattern1013 (x2, 
   10538              : E_V16SFmode, 
   10539              : E_HImode) != 0
   10540              :               || !
   10541              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10542              : (TARGET_AVX512F))
   10543              :             return -1;
   10544              :           return 2515; /* *avx512f_loadv16sf_mask */
   10545              : 
   10546              :         case E_V8SFmode:
   10547              :           if (pattern1013 (x2, 
   10548              : E_V8SFmode, 
   10549              : E_QImode) != 0
   10550              :               || !(
   10551              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10552              : (TARGET_AVX512F) && 
   10553              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10554              : (TARGET_AVX512VL)))
   10555              :             return -1;
   10556              :           return 2516; /* *avx512vl_loadv8sf_mask */
   10557              : 
   10558              :         case E_V4SFmode:
   10559              :           if (pattern1013 (x2, 
   10560              : E_V4SFmode, 
   10561              : E_QImode) != 0
   10562              :               || !(
   10563              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10564              : (TARGET_AVX512F) && 
   10565              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10566              : (TARGET_AVX512VL)))
   10567              :             return -1;
   10568              :           return 2517; /* *avx512vl_loadv4sf_mask */
   10569              : 
   10570              :         case E_V8DFmode:
   10571              :           if (pattern1013 (x2, 
   10572              : E_V8DFmode, 
   10573              : E_QImode) != 0
   10574              :               || !
   10575              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10576              : (TARGET_AVX512F))
   10577              :             return -1;
   10578              :           return 2518; /* *avx512f_loadv8df_mask */
   10579              : 
   10580              :         case E_V4DFmode:
   10581              :           if (pattern1013 (x2, 
   10582              : E_V4DFmode, 
   10583              : E_QImode) != 0
   10584              :               || !(
   10585              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10586              : (TARGET_AVX512F) && 
   10587              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10588              : (TARGET_AVX512VL)))
   10589              :             return -1;
   10590              :           return 2519; /* *avx512vl_loadv4df_mask */
   10591              : 
   10592              :         case E_V2DFmode:
   10593              :           if (pattern1013 (x2, 
   10594              : E_V2DFmode, 
   10595              : E_QImode) != 0
   10596              :               || !(
   10597              : #line 1582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10598              : (TARGET_AVX512F) && 
   10599              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10600              : (TARGET_AVX512VL)))
   10601              :             return -1;
   10602              :           return 2520; /* *avx512vl_loadv2df_mask */
   10603              : 
   10604              :         case E_V64QImode:
   10605              :           if (pattern1013 (x2, 
   10606              : E_V64QImode, 
   10607              : E_DImode) != 0
   10608              :               || !
   10609              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10610              : (TARGET_AVX512BW))
   10611              :             return -1;
   10612              :           return 2539; /* *avx512bw_loadv64qi_mask */
   10613              : 
   10614              :         case E_V16QImode:
   10615              :           if (pattern1013 (x2, 
   10616              : E_V16QImode, 
   10617              : E_HImode) != 0
   10618              :               || !(
   10619              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10620              : (TARGET_AVX512BW) && 
   10621              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10622              : (TARGET_AVX512VL)))
   10623              :             return -1;
   10624              :           return 2540; /* *avx512vl_loadv16qi_mask */
   10625              : 
   10626              :         case E_V32QImode:
   10627              :           if (pattern1013 (x2, 
   10628              : E_V32QImode, 
   10629              : E_SImode) != 0
   10630              :               || !(
   10631              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10632              : (TARGET_AVX512BW) && 
   10633              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10634              : (TARGET_AVX512VL)))
   10635              :             return -1;
   10636              :           return 2541; /* *avx512vl_loadv32qi_mask */
   10637              : 
   10638              :         case E_V32HImode:
   10639              :           if (pattern1013 (x2, 
   10640              : E_V32HImode, 
   10641              : E_SImode) != 0
   10642              :               || !
   10643              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10644              : (TARGET_AVX512BW))
   10645              :             return -1;
   10646              :           return 2542; /* *avx512bw_loadv32hi_mask */
   10647              : 
   10648              :         case E_V16HImode:
   10649              :           if (pattern1013 (x2, 
   10650              : E_V16HImode, 
   10651              : E_HImode) != 0
   10652              :               || !(
   10653              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10654              : (TARGET_AVX512BW) && 
   10655              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10656              : (TARGET_AVX512VL)))
   10657              :             return -1;
   10658              :           return 2543; /* *avx512vl_loadv16hi_mask */
   10659              : 
   10660              :         case E_V8HImode:
   10661              :           if (pattern1013 (x2, 
   10662              : E_V8HImode, 
   10663              : E_QImode) != 0
   10664              :               || !(
   10665              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10666              : (TARGET_AVX512BW) && 
   10667              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10668              : (TARGET_AVX512VL)))
   10669              :             return -1;
   10670              :           return 2544; /* *avx512vl_loadv8hi_mask */
   10671              : 
   10672              :         case E_V32HFmode:
   10673              :           if (pattern1013 (x2, 
   10674              : E_V32HFmode, 
   10675              : E_SImode) != 0
   10676              :               || !
   10677              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10678              : (TARGET_AVX512BW))
   10679              :             return -1;
   10680              :           return 2545; /* *avx512bw_loadv32hf_mask */
   10681              : 
   10682              :         case E_V16HFmode:
   10683              :           if (pattern1013 (x2, 
   10684              : E_V16HFmode, 
   10685              : E_HImode) != 0
   10686              :               || !(
   10687              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10688              : (TARGET_AVX512BW) && 
   10689              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10690              : (TARGET_AVX512VL)))
   10691              :             return -1;
   10692              :           return 2546; /* *avx512vl_loadv16hf_mask */
   10693              : 
   10694              :         case E_V8HFmode:
   10695              :           if (pattern1013 (x2, 
   10696              : E_V8HFmode, 
   10697              : E_QImode) != 0
   10698              :               || !(
   10699              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10700              : (TARGET_AVX512BW) && 
   10701              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10702              : (TARGET_AVX512VL)))
   10703              :             return -1;
   10704              :           return 2547; /* *avx512fp16_loadv8hf_mask */
   10705              : 
   10706              :         case E_V32BFmode:
   10707              :           if (pattern1013 (x2, 
   10708              : E_V32BFmode, 
   10709              : E_SImode) != 0
   10710              :               || !
   10711              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10712              : (TARGET_AVX512BW))
   10713              :             return -1;
   10714              :           return 2548; /* *avx512bw_loadv32bf_mask */
   10715              : 
   10716              :         case E_V16BFmode:
   10717              :           if (pattern1013 (x2, 
   10718              : E_V16BFmode, 
   10719              : E_HImode) != 0
   10720              :               || !(
   10721              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10722              : (TARGET_AVX512BW) && 
   10723              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10724              : (TARGET_AVX512VL)))
   10725              :             return -1;
   10726              :           return 2549; /* *avx512vl_loadv16bf_mask */
   10727              : 
   10728              :         case E_V8BFmode:
   10729              :           if (pattern1013 (x2, 
   10730              : E_V8BFmode, 
   10731              : E_QImode) != 0
   10732              :               || !(
   10733              : #line 1679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10734              : (TARGET_AVX512BW) && 
   10735              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10736              : (TARGET_AVX512VL)))
   10737              :             return -1;
   10738              :           return 2550; /* *avx512vl_loadv8bf_mask */
   10739              : 
   10740              :         default:
   10741              :           return -1;
   10742              :         }
   10743              : 
   10744              :     case AND:
   10745              :       if (GET_MODE (x5) != E_QImode)
   10746              :         return -1;
   10747              :       x6 = XEXP (x5, 1);
   10748              :       if (GET_CODE (x6) != CONST_INT)
   10749              :         return -1;
   10750              :       switch (pattern1121 (x2))
   10751              :         {
   10752              :         case 0:
   10753              :           if (!(
   10754              : #line 1623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10755              : (TARGET_AVX512F) && 
   10756              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10757              : (TARGET_AVX512VL)))
   10758              :             return -1;
   10759              :           return 2533; /* *avx512vl_loadv4sfmask_and15 */
   10760              : 
   10761              :         case 1:
   10762              :           if (!(
   10763              : #line 1623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10764              : (TARGET_AVX512F) && 
   10765              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10766              : (TARGET_AVX512VL)))
   10767              :             return -1;
   10768              :           return 2534; /* *avx512vl_loadv4dfmask_and15 */
   10769              : 
   10770              :         case 2:
   10771              :           if (!(
   10772              : #line 1623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10773              : (TARGET_AVX512F) && 
   10774              : #line 522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10775              : (TARGET_AVX512VL)))
   10776              :             return -1;
   10777              :           return 2535; /* *avx512vl_loadv4simask_and15 */
   10778              : 
   10779              :         case 3:
   10780              :           if (!(
   10781              : #line 1623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10782              : (TARGET_AVX512F) && 
   10783              : #line 522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10784              : (TARGET_AVX512VL)))
   10785              :             return -1;
   10786              :           return 2536; /* *avx512vl_loadv4dimask_and15 */
   10787              : 
   10788              :         case 4:
   10789              :           if (!(
   10790              : #line 1642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10791              : (TARGET_AVX512F) && 
   10792              : #line 528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10793              : (TARGET_AVX512VL)))
   10794              :             return -1;
   10795              :           return 2537; /* *avx512vl_loadv2dfmask_and3 */
   10796              : 
   10797              :         case 5:
   10798              :           if (!(
   10799              : #line 1642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10800              : (TARGET_AVX512F) && 
   10801              : #line 528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10802              : (TARGET_AVX512VL)))
   10803              :             return -1;
   10804              :           return 2538; /* *avx512vl_loadv2dimask_and3 */
   10805              : 
   10806              :         default:
   10807              :           return -1;
   10808              :         }
   10809              : 
   10810              :     default:
   10811              :       return -1;
   10812              :     }
   10813              : }
   10814              : 
   10815              :  int
   10816              : recog_134 (rtx x1 ATTRIBUTE_UNUSED,
   10817              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10818              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10819              : {
   10820              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10821              :   rtx x2, x3, x4, x5, x6, x7;
   10822              :   int res ATTRIBUTE_UNUSED;
   10823              :   x2 = XEXP (x1, 1);
   10824              :   x3 = XEXP (x2, 0);
   10825              :   x4 = XVECEXP (x3, 0, 0);
   10826              :   operands[1] = x4;
   10827              :   x5 = XVECEXP (x3, 0, 1);
   10828              :   operands[2] = x5;
   10829              :   x6 = XEXP (x2, 1);
   10830              :   operands[3] = x6;
   10831              :   x7 = XEXP (x2, 2);
   10832              :   operands[4] = x7;
   10833              :   switch (GET_MODE (operands[0]))
   10834              :     {
   10835              :     case E_V8SImode:
   10836              :       if (pattern1127 (x2, 
   10837              : E_QImode, 
   10838              : E_V8SImode) != 0
   10839              :           || !(
   10840              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10841              : (TARGET_AVX512F) && 
   10842              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10843              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   10844              :         return -1;
   10845              :       return 9244; /* avx2_permvarv8si_mask */
   10846              : 
   10847              :     case E_V8SFmode:
   10848              :       if (pattern1128 (x2, 
   10849              : E_QImode, 
   10850              : E_V8SFmode, 
   10851              : E_V8SImode) != 0
   10852              :           || !(
   10853              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10854              : (TARGET_AVX512F) && 
   10855              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10856              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   10857              :         return -1;
   10858              :       return 9246; /* avx2_permvarv8sf_mask */
   10859              : 
   10860              :     case E_V16SImode:
   10861              :       if (pattern1127 (x2, 
   10862              : E_HImode, 
   10863              : E_V16SImode) != 0
   10864              :           || !(
   10865              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10866              : (TARGET_AVX512F) && (
   10867              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10868              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10869              : #line 978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10870              : (TARGET_AVX512F))))
   10871              :         return -1;
   10872              :       return 9248; /* avx512f_permvarv16si_mask */
   10873              : 
   10874              :     case E_V16SFmode:
   10875              :       if (pattern1128 (x2, 
   10876              : E_HImode, 
   10877              : E_V16SFmode, 
   10878              : E_V16SImode) != 0
   10879              :           || !(
   10880              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10881              : (TARGET_AVX512F) && (
   10882              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10883              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10884              : #line 978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10885              : (TARGET_AVX512F))))
   10886              :         return -1;
   10887              :       return 9250; /* avx512f_permvarv16sf_mask */
   10888              : 
   10889              :     case E_V8DImode:
   10890              :       if (pattern1127 (x2, 
   10891              : E_QImode, 
   10892              : E_V8DImode) != 0
   10893              :           || !(
   10894              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10895              : (TARGET_AVX512F) && (
   10896              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10897              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10898              : #line 979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10899              : (TARGET_AVX512F))))
   10900              :         return -1;
   10901              :       return 9252; /* avx512f_permvarv8di_mask */
   10902              : 
   10903              :     case E_V8DFmode:
   10904              :       if (pattern1128 (x2, 
   10905              : E_QImode, 
   10906              : E_V8DFmode, 
   10907              : E_V8DImode) != 0
   10908              :           || !(
   10909              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10910              : (TARGET_AVX512F) && (
   10911              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10912              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10913              : #line 979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10914              : (TARGET_AVX512F))))
   10915              :         return -1;
   10916              :       return 9254; /* avx512f_permvarv8df_mask */
   10917              : 
   10918              :     case E_V4DImode:
   10919              :       if (pattern1127 (x2, 
   10920              : E_QImode, 
   10921              : E_V4DImode) != 0
   10922              :           || !(
   10923              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10924              : (TARGET_AVX512F) && (
   10925              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10926              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
   10927              : #line 980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10928              : (TARGET_AVX512VL))))
   10929              :         return -1;
   10930              :       return 9256; /* avx2_permvarv4di_mask */
   10931              : 
   10932              :     case E_V4DFmode:
   10933              :       if (pattern1128 (x2, 
   10934              : E_QImode, 
   10935              : E_V4DFmode, 
   10936              : E_V4DImode) != 0
   10937              :           || !(
   10938              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10939              : (TARGET_AVX512F) && (
   10940              : #line 28619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10941              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
   10942              : #line 980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10943              : (TARGET_AVX512VL))))
   10944              :         return -1;
   10945              :       return 9258; /* avx2_permvarv4df_mask */
   10946              : 
   10947              :     case E_V64QImode:
   10948              :       if (pattern1127 (x2, 
   10949              : E_DImode, 
   10950              : E_V64QImode) != 0
   10951              :           || !(
   10952              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10953              : (TARGET_AVX512F) && 
   10954              : #line 28639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10955              : (TARGET_AVX512VBMI && (64 == 64 || TARGET_AVX512VL))))
   10956              :         return -1;
   10957              :       return 9260; /* avx512bw_permvarv64qi_mask */
   10958              : 
   10959              :     case E_V16QImode:
   10960              :       if (pattern1127 (x2, 
   10961              : E_HImode, 
   10962              : E_V16QImode) != 0
   10963              :           || !(
   10964              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10965              : (TARGET_AVX512F) && (
   10966              : #line 28639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10967              : (TARGET_AVX512VBMI && (16 == 64 || TARGET_AVX512VL)) && 
   10968              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10969              : (TARGET_AVX512VL))))
   10970              :         return -1;
   10971              :       return 9262; /* avx512vl_permvarv16qi_mask */
   10972              : 
   10973              :     case E_V32QImode:
   10974              :       if (pattern1127 (x2, 
   10975              : E_SImode, 
   10976              : E_V32QImode) != 0
   10977              :           || !(
   10978              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10979              : (TARGET_AVX512F) && (
   10980              : #line 28639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10981              : (TARGET_AVX512VBMI && (32 == 64 || TARGET_AVX512VL)) && 
   10982              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10983              : (TARGET_AVX512VL))))
   10984              :         return -1;
   10985              :       return 9264; /* avx512vl_permvarv32qi_mask */
   10986              : 
   10987              :     case E_V8HImode:
   10988              :       if (pattern1127 (x2, 
   10989              : E_QImode, 
   10990              : E_V8HImode) != 0
   10991              :           || !(
   10992              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10993              : (TARGET_AVX512F) && (
   10994              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10995              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
   10996              : #line 678 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10997              : (TARGET_AVX512VL))))
   10998              :         return -1;
   10999              :       return 9266; /* avx512vl_permvarv8hi_mask */
   11000              : 
   11001              :     case E_V16HImode:
   11002              :       if (pattern1127 (x2, 
   11003              : E_HImode, 
   11004              : E_V16HImode) != 0
   11005              :           || !(
   11006              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11007              : (TARGET_AVX512F) && (
   11008              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11009              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   11010              : #line 678 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11011              : (TARGET_AVX512VL))))
   11012              :         return -1;
   11013              :       return 9268; /* avx512vl_permvarv16hi_mask */
   11014              : 
   11015              :     case E_V32HImode:
   11016              :       if (pattern1127 (x2, 
   11017              : E_SImode, 
   11018              : E_V32HImode) != 0
   11019              :           || !(
   11020              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11021              : (TARGET_AVX512F) && 
   11022              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11023              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
   11024              :         return -1;
   11025              :       return 9270; /* avx512bw_permvarv32hi_mask */
   11026              : 
   11027              :     case E_V8HFmode:
   11028              :       if (pattern1128 (x2, 
   11029              : E_QImode, 
   11030              : E_V8HFmode, 
   11031              : E_V8HImode) != 0
   11032              :           || !(
   11033              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11034              : (TARGET_AVX512F) && (
   11035              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11036              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
   11037              : #line 679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11038              : (TARGET_AVX512VL))))
   11039              :         return -1;
   11040              :       return 9272; /* avx512fp16_permvarv8hf_mask */
   11041              : 
   11042              :     case E_V16HFmode:
   11043              :       if (pattern1128 (x2, 
   11044              : E_HImode, 
   11045              : E_V16HFmode, 
   11046              : E_V16HImode) != 0
   11047              :           || !(
   11048              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11049              : (TARGET_AVX512F) && (
   11050              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11051              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   11052              : #line 679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11053              : (TARGET_AVX512VL))))
   11054              :         return -1;
   11055              :       return 9274; /* avx512vl_permvarv16hf_mask */
   11056              : 
   11057              :     case E_V32HFmode:
   11058              :       if (pattern1128 (x2, 
   11059              : E_SImode, 
   11060              : E_V32HFmode, 
   11061              : E_V32HImode) != 0
   11062              :           || !(
   11063              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11064              : (TARGET_AVX512F) && 
   11065              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11066              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
   11067              :         return -1;
   11068              :       return 9276; /* avx512bw_permvarv32hf_mask */
   11069              : 
   11070              :     case E_V8BFmode:
   11071              :       if (pattern1128 (x2, 
   11072              : E_QImode, 
   11073              : E_V8BFmode, 
   11074              : E_V8HImode) != 0
   11075              :           || !(
   11076              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11077              : (TARGET_AVX512F) && (
   11078              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11079              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
   11080              : #line 680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11081              : (TARGET_AVX512VL))))
   11082              :         return -1;
   11083              :       return 9278; /* avx512vl_permvarv8bf_mask */
   11084              : 
   11085              :     case E_V16BFmode:
   11086              :       if (pattern1128 (x2, 
   11087              : E_HImode, 
   11088              : E_V16BFmode, 
   11089              : E_V16HImode) != 0
   11090              :           || !(
   11091              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11092              : (TARGET_AVX512F) && (
   11093              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11094              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   11095              : #line 680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11096              : (TARGET_AVX512VL))))
   11097              :         return -1;
   11098              :       return 9280; /* avx512vl_permvarv16bf_mask */
   11099              : 
   11100              :     case E_V32BFmode:
   11101              :       if (pattern1128 (x2, 
   11102              : E_SImode, 
   11103              : E_V32BFmode, 
   11104              : E_V32HImode) != 0
   11105              :           || !(
   11106              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11107              : (TARGET_AVX512F) && 
   11108              : #line 28652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11109              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
   11110              :         return -1;
   11111              :       return 9282; /* avx512bw_permvarv32bf_mask */
   11112              : 
   11113              :     default:
   11114              :       return -1;
   11115              :     }
   11116              : }
   11117              : 
   11118              :  int
   11119              : recog_147 (rtx x1 ATTRIBUTE_UNUSED,
   11120              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11121              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11122              : {
   11123              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11124              :   rtx x2;
   11125              :   int res ATTRIBUTE_UNUSED;
   11126              :   x2 = XEXP (x1, 1);
   11127              :   switch (pattern483 (x2))
   11128              :     {
   11129              :     case 0:
   11130              :       if (!(
   11131              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11132              : (TARGET_AVX512F) && 
   11133              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11134              : (TARGET_AVX512VBMI2)))
   11135              :         return -1;
   11136              :       return 10332; /* vpshrd_v32hi_mask */
   11137              : 
   11138              :     case 1:
   11139              :       if (!(
   11140              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11141              : (TARGET_AVX512F) && 
   11142              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11143              : (TARGET_AVX512VBMI2)))
   11144              :         return -1;
   11145              :       return 10334; /* vpshrd_v16si_mask */
   11146              : 
   11147              :     case 2:
   11148              :       if (!(
   11149              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11150              : (TARGET_AVX512F) && 
   11151              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11152              : (TARGET_AVX512VBMI2)))
   11153              :         return -1;
   11154              :       return 10336; /* vpshrd_v8di_mask */
   11155              : 
   11156              :     case 3:
   11157              :       if (!(
   11158              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11159              : (TARGET_AVX512F) && (
   11160              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11161              : (TARGET_AVX512VBMI2) && 
   11162              : #line 747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11163              : (TARGET_AVX512VL))))
   11164              :         return -1;
   11165              :       return 10338; /* vpshrd_v16hi_mask */
   11166              : 
   11167              :     case 4:
   11168              :       if (!(
   11169              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11170              : (TARGET_AVX512F) && (
   11171              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11172              : (TARGET_AVX512VBMI2) && 
   11173              : #line 747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11174              : (TARGET_AVX512VL))))
   11175              :         return -1;
   11176              :       return 10340; /* vpshrd_v8si_mask */
   11177              : 
   11178              :     case 5:
   11179              :       if (!(
   11180              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11181              : (TARGET_AVX512F) && (
   11182              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11183              : (TARGET_AVX512VBMI2) && 
   11184              : #line 748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11185              : (TARGET_AVX512VL))))
   11186              :         return -1;
   11187              :       return 10342; /* vpshrd_v4di_mask */
   11188              : 
   11189              :     case 6:
   11190              :       if (!(
   11191              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11192              : (TARGET_AVX512F) && (
   11193              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11194              : (TARGET_AVX512VBMI2) && 
   11195              : #line 748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11196              : (TARGET_AVX512VL))))
   11197              :         return -1;
   11198              :       return 10344; /* vpshrd_v8hi_mask */
   11199              : 
   11200              :     case 7:
   11201              :       if (!(
   11202              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11203              : (TARGET_AVX512F) && (
   11204              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11205              : (TARGET_AVX512VBMI2) && 
   11206              : #line 749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11207              : (TARGET_AVX512VL))))
   11208              :         return -1;
   11209              :       return 10346; /* vpshrd_v4si_mask */
   11210              : 
   11211              :     case 8:
   11212              :       if (!(
   11213              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11214              : (TARGET_AVX512F) && (
   11215              : #line 31824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11216              : (TARGET_AVX512VBMI2) && 
   11217              : #line 749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11218              : (TARGET_AVX512VL))))
   11219              :         return -1;
   11220              :       return 10348; /* vpshrd_v2di_mask */
   11221              : 
   11222              :     default:
   11223              :       return -1;
   11224              :     }
   11225              : }
   11226              : 
   11227              :  int
   11228              : recog_154 (rtx x1 ATTRIBUTE_UNUSED,
   11229              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11230              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11231              : {
   11232              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11233              :   rtx x2, x3, x4, x5, x6;
   11234              :   int res ATTRIBUTE_UNUSED;
   11235              :   x2 = XEXP (x1, 1);
   11236              :   x3 = XEXP (x2, 2);
   11237              :   switch (GET_CODE (x3))
   11238              :     {
   11239              :     case CONST_INT:
   11240              :       x4 = XEXP (x2, 0);
   11241              :       x5 = XEXP (x4, 0);
   11242              :       operands[2] = x5;
   11243              :       x6 = XEXP (x2, 1);
   11244              :       operands[1] = x6;
   11245              :       switch (XWINT (x3, 0))
   11246              :         {
   11247              :         case 3L:
   11248              :           switch (GET_MODE (operands[0]))
   11249              :             {
   11250              :             case E_V8HFmode:
   11251              :               if (pattern1020 (x2, 
   11252              : E_V8HFmode, 
   11253              : E_V2HFmode) == 0
   11254              :                   && 
   11255              : #line 12534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11256              : (TARGET_SSE))
   11257              :                 return 5356; /* *vec_concatv8hf_movss */
   11258              :               break;
   11259              : 
   11260              :             case E_V8BFmode:
   11261              :               if (pattern1020 (x2, 
   11262              : E_V8BFmode, 
   11263              : E_V2BFmode) == 0
   11264              :                   && 
   11265              : #line 12534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11266              : (TARGET_SSE))
   11267              :                 return 5357; /* *vec_concatv8bf_movss */
   11268              :               break;
   11269              : 
   11270              :             case E_V8HImode:
   11271              :               if (pattern1020 (x2, 
   11272              : E_V8HImode, 
   11273              : E_V2HImode) == 0
   11274              :                   && 
   11275              : #line 12534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11276              : (TARGET_SSE))
   11277              :                 return 5358; /* *vec_concatv8hi_movss */
   11278              :               break;
   11279              : 
   11280              :             default:
   11281              :               break;
   11282              :             }
   11283              :           break;
   11284              : 
   11285              :         case 1L:
   11286              :           switch (GET_MODE (operands[0]))
   11287              :             {
   11288              :             case E_V4SImode:
   11289              :               if (pattern1021 (x2, 
   11290              : E_V4SImode, 
   11291              : E_SImode) == 0
   11292              :                   && 
   11293              : #line 12556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11294              : (TARGET_SSE))
   11295              :                 return 5359; /* vec_setv4si_0 */
   11296              :               break;
   11297              : 
   11298              :             case E_V4SFmode:
   11299              :               if (pattern1021 (x2, 
   11300              : E_V4SFmode, 
   11301              : E_SFmode) == 0
   11302              :                   && 
   11303              : #line 12556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11304              : (TARGET_SSE))
   11305              :                 return 5360; /* vec_setv4sf_0 */
   11306              :               break;
   11307              : 
   11308              :             case E_V8HImode:
   11309              :               if (pattern1020 (x2, 
   11310              : E_V8HImode, 
   11311              : E_HImode) == 0
   11312              :                   && 
   11313              : #line 12641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11314              : (TARGET_SSE2))
   11315              :                 return 5361; /* vec_setv8hi_0 */
   11316              :               break;
   11317              : 
   11318              :             case E_V8HFmode:
   11319              :               if (pattern1020 (x2, 
   11320              : E_V8HFmode, 
   11321              : E_HFmode) == 0
   11322              :                   && 
   11323              : #line 12641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11324              : (TARGET_SSE2))
   11325              :                 return 5362; /* vec_setv8hf_0 */
   11326              :               break;
   11327              : 
   11328              :             case E_V8BFmode:
   11329              :               if (pattern1020 (x2, 
   11330              : E_V8BFmode, 
   11331              : E_BFmode) == 0
   11332              :                   && 
   11333              : #line 12641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11334              : (TARGET_SSE2))
   11335              :                 return 5363; /* vec_setv8bf_0 */
   11336              :               break;
   11337              : 
   11338              :             case E_V16HImode:
   11339              :               if (pattern1022 (x2, 
   11340              : E_V16HImode, 
   11341              : E_HImode) == 0
   11342              :                   && 
   11343              : #line 12743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11344              : (TARGET_AVX512FP16))
   11345              :                 return 5367; /* vec_setv16hi_0 */
   11346              :               break;
   11347              : 
   11348              :             case E_V32HImode:
   11349              :               if (pattern1022 (x2, 
   11350              : E_V32HImode, 
   11351              : E_HImode) == 0
   11352              :                   && 
   11353              : #line 12743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11354              : (TARGET_AVX512FP16))
   11355              :                 return 5368; /* vec_setv32hi_0 */
   11356              :               break;
   11357              : 
   11358              :             case E_V16HFmode:
   11359              :               if (pattern1022 (x2, 
   11360              : E_V16HFmode, 
   11361              : E_HFmode) == 0
   11362              :                   && 
   11363              : #line 12743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11364              : (TARGET_AVX512FP16))
   11365              :                 return 5369; /* vec_setv16hf_0 */
   11366              :               break;
   11367              : 
   11368              :             case E_V32HFmode:
   11369              :               if (pattern1022 (x2, 
   11370              : E_V32HFmode, 
   11371              : E_HFmode) == 0
   11372              :                   && 
   11373              : #line 12743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11374              : (TARGET_AVX512FP16))
   11375              :                 return 5370; /* vec_setv32hf_0 */
   11376              :               break;
   11377              : 
   11378              :             case E_V16BFmode:
   11379              :               if (pattern1022 (x2, 
   11380              : E_V16BFmode, 
   11381              : E_BFmode) == 0
   11382              :                   && 
   11383              : #line 12743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11384              : (TARGET_AVX512FP16))
   11385              :                 return 5371; /* vec_setv16bf_0 */
   11386              :               break;
   11387              : 
   11388              :             case E_V32BFmode:
   11389              :               if (pattern1022 (x2, 
   11390              : E_V32BFmode, 
   11391              : E_BFmode) == 0
   11392              :                   && 
   11393              : #line 12743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11394              : (TARGET_AVX512FP16))
   11395              :                 return 5372; /* vec_setv32bf_0 */
   11396              :               break;
   11397              : 
   11398              :             case E_V8SImode:
   11399              :               if (pattern1022 (x2, 
   11400              : E_V8SImode, 
   11401              : E_SImode) == 0
   11402              :                   && 
   11403              : #line 12850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11404              : (TARGET_AVX))
   11405              :                 return 5384; /* vec_setv8si_0 */
   11406              :               break;
   11407              : 
   11408              :             case E_V8SFmode:
   11409              :               if (pattern1022 (x2, 
   11410              : E_V8SFmode, 
   11411              : E_SFmode) == 0
   11412              :                   && 
   11413              : #line 12850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11414              : (TARGET_AVX))
   11415              :                 return 5385; /* vec_setv8sf_0 */
   11416              :               break;
   11417              : 
   11418              :             case E_V16SImode:
   11419              :               if (pattern1022 (x2, 
   11420              : E_V16SImode, 
   11421              : E_SImode) == 0
   11422              :                   && (
   11423              : #line 12850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11424              : (TARGET_AVX) && 
   11425              : #line 975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11426              : (TARGET_AVX512F)))
   11427              :                 return 5386; /* vec_setv16si_0 */
   11428              :               break;
   11429              : 
   11430              :             case E_V16SFmode:
   11431              :               if (pattern1022 (x2, 
   11432              : E_V16SFmode, 
   11433              : E_SFmode) == 0
   11434              :                   && (
   11435              : #line 12850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11436              : (TARGET_AVX) && 
   11437              : #line 975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11438              : (TARGET_AVX512F)))
   11439              :                 return 5387; /* vec_setv16sf_0 */
   11440              :               break;
   11441              : 
   11442              :             case E_V2DFmode:
   11443              :               if (pattern881 (x2, 
   11444              : E_V2DFmode, 
   11445              : E_DFmode) == 0
   11446              :                   && 
   11447              : #line 12994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11448              : (TARGET_SSE2))
   11449              :                 return 5396; /* vec_setv2df_0 */
   11450              :               break;
   11451              : 
   11452              :             case E_V8DFmode:
   11453              :               if (pattern1022 (x2, 
   11454              : E_V8DFmode, 
   11455              : E_DFmode) == 0
   11456              :                   && (
   11457              : #line 15675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11458              : (TARGET_AVX) && 
   11459              : #line 466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11460              : (TARGET_AVX512F)))
   11461              :                 return 7308; /* vec_setv8df_0 */
   11462              :               break;
   11463              : 
   11464              :             case E_V4DFmode:
   11465              :               if (pattern1022 (x2, 
   11466              : E_V4DFmode, 
   11467              : E_DFmode) == 0
   11468              :                   && 
   11469              : #line 15675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11470              : (TARGET_AVX))
   11471              :                 return 7309; /* vec_setv4df_0 */
   11472              :               break;
   11473              : 
   11474              :             case E_V8DImode:
   11475              :               if (pattern1022 (x2, 
   11476              : E_V8DImode, 
   11477              : E_DImode) == 0
   11478              :                   && (
   11479              : #line 22626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11480              : (TARGET_AVX) && 
   11481              : #line 699 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11482              : (TARGET_AVX512F)))
   11483              :                 return 8610; /* vec_setv8di_0 */
   11484              :               break;
   11485              : 
   11486              :             case E_V4DImode:
   11487              :               if (pattern1022 (x2, 
   11488              : E_V4DImode, 
   11489              : E_DImode) == 0
   11490              :                   && 
   11491              : #line 22626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11492              : (TARGET_AVX))
   11493              :                 return 8611; /* vec_setv4di_0 */
   11494              :               break;
   11495              : 
   11496              :             default:
   11497              :               break;
   11498              :             }
   11499              :           break;
   11500              : 
   11501              :         default:
   11502              :           break;
   11503              :         }
   11504              :       operands[3] = x3;
   11505              :       if (const_int_operand (operands[3], E_SImode))
   11506              :         {
   11507              :           switch (GET_MODE (operands[0]))
   11508              :             {
   11509              :             case E_V4SFmode:
   11510              :               if (pattern904 (x2, 
   11511              : E_V4SFmode, 
   11512              : E_SFmode) == 0
   11513              :                   && 
   11514              : #line 12817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11515              : (TARGET_SSE4_1
   11516              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11517              :        < GET_MODE_NUNITS (V4SFmode))))
   11518              :                 return 5383; /* *vec_setv4sf_sse4_1 */
   11519              :               break;
   11520              : 
   11521              :             case E_V16QImode:
   11522              :               if (pattern904 (x2, 
   11523              : E_V16QImode, 
   11524              : E_QImode) == 0
   11525              :                   && (
   11526              : #line 20663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11527              : (TARGET_SSE2
   11528              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11529              :        < GET_MODE_NUNITS (V16QImode))) && 
   11530              : #line 20643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11531              : (TARGET_SSE4_1)))
   11532              :                 return 8498; /* sse4_1_pinsrb */
   11533              :               break;
   11534              : 
   11535              :             case E_V8HImode:
   11536              :               if (pattern904 (x2, 
   11537              : E_V8HImode, 
   11538              : E_HImode) == 0
   11539              :                   && 
   11540              : #line 20663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11541              : (TARGET_SSE2
   11542              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11543              :        < GET_MODE_NUNITS (V8HImode))))
   11544              :                 return 8499; /* sse2_pinsrw */
   11545              :               break;
   11546              : 
   11547              :             case E_V8HFmode:
   11548              :               if (pattern904 (x2, 
   11549              : E_V8HFmode, 
   11550              : E_HFmode) == 0
   11551              :                   && 
   11552              : #line 20663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11553              : (TARGET_SSE2
   11554              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11555              :        < GET_MODE_NUNITS (V8HFmode))))
   11556              :                 return 8500; /* sse2_pinsrph */
   11557              :               break;
   11558              : 
   11559              :             case E_V8BFmode:
   11560              :               if (pattern904 (x2, 
   11561              : E_V8BFmode, 
   11562              : E_BFmode) == 0
   11563              :                   && 
   11564              : #line 20663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11565              : (TARGET_SSE2
   11566              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11567              :        < GET_MODE_NUNITS (V8BFmode))))
   11568              :                 return 8501; /* sse2_pinsrbf */
   11569              :               break;
   11570              : 
   11571              :             case E_V4SImode:
   11572              :               if (pattern904 (x2, 
   11573              : E_V4SImode, 
   11574              : E_SImode) == 0
   11575              :                   && (
   11576              : #line 20663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11577              : (TARGET_SSE2
   11578              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11579              :        < GET_MODE_NUNITS (V4SImode))) && 
   11580              : #line 20644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11581              : (TARGET_SSE4_1)))
   11582              :                 return 8502; /* sse4_1_pinsrd */
   11583              :               break;
   11584              : 
   11585              :             case E_V2DImode:
   11586              :               if (pattern904 (x2, 
   11587              : E_V2DImode, 
   11588              : E_DImode) == 0
   11589              :                   && (
   11590              : #line 20663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11591              : (TARGET_SSE2
   11592              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11593              :        < GET_MODE_NUNITS (V2DImode))) && 
   11594              : #line 20645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11595              : (TARGET_SSE4_1 && TARGET_64BIT)))
   11596              :                 return 8503; /* sse4_1_pinsrq */
   11597              :               break;
   11598              : 
   11599              :             case E_V8DFmode:
   11600              :               if (pattern905 (x2, 
   11601              : E_V8DFmode, 
   11602              : E_V2DFmode) == 0
   11603              :                   && (
   11604              : #line 20768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11605              : (TARGET_AVX512F
   11606              :    && (INTVAL (operands[3])
   11607              :        == (GET_MODE_UNIT_SIZE (V8DFmode) == 4 ? 0xF : 0x3))) && 
   11608              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11609              : (TARGET_AVX512DQ)))
   11610              :                 return 8504; /* *avx512dq_vinsertf64x2_0 */
   11611              :               break;
   11612              : 
   11613              :             case E_V8DImode:
   11614              :               if (pattern905 (x2, 
   11615              : E_V8DImode, 
   11616              : E_V2DImode) == 0
   11617              :                   && (
   11618              : #line 20768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11619              : (TARGET_AVX512F
   11620              :    && (INTVAL (operands[3])
   11621              :        == (GET_MODE_UNIT_SIZE (V8DImode) == 4 ? 0xF : 0x3))) && 
   11622              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11623              : (TARGET_AVX512DQ)))
   11624              :                 return 8505; /* *avx512dq_vinserti64x2_0 */
   11625              :               break;
   11626              : 
   11627              :             case E_V16SFmode:
   11628              :               if (pattern905 (x2, 
   11629              : E_V16SFmode, 
   11630              : E_V4SFmode) == 0
   11631              :                   && 
   11632              : #line 20768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11633              : (TARGET_AVX512F
   11634              :    && (INTVAL (operands[3])
   11635              :        == (GET_MODE_UNIT_SIZE (V16SFmode) == 4 ? 0xF : 0x3))))
   11636              :                 return 8506; /* *avx512f_vinsertf32x4_0 */
   11637              :               break;
   11638              : 
   11639              :             case E_V16SImode:
   11640              :               if (pattern905 (x2, 
   11641              : E_V16SImode, 
   11642              : E_V4SImode) == 0
   11643              :                   && 
   11644              : #line 20768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11645              : (TARGET_AVX512F
   11646              :    && (INTVAL (operands[3])
   11647              :        == (GET_MODE_UNIT_SIZE (V16SImode) == 4 ? 0xF : 0x3))))
   11648              :                 return 8507; /* *avx512f_vinserti32x4_0 */
   11649              :               break;
   11650              : 
   11651              :             default:
   11652              :               break;
   11653              :             }
   11654              :         }
   11655              :       if (XWINT (x3, 0) != 1L
   11656              :           || !register_operand (operands[0], E_V4SImode)
   11657              :           || GET_MODE (x2) != E_V4SImode
   11658              :           || GET_MODE (x4) != E_V4SImode)
   11659              :         return -1;
   11660              :       operands[2] = x5;
   11661              :       if (!nonimmediate_operand (operands[2], E_SImode))
   11662              :         return -1;
   11663              :       operands[1] = x6;
   11664              :       if (!reg_or_0_operand (operands[1], E_V4SImode)
   11665              :           || !
   11666              : #line 21835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11667              : (TARGET_SSE))
   11668              :         return -1;
   11669              :       return 8574; /* sse2_loadld */
   11670              : 
   11671              :     case REG:
   11672              :     case SUBREG:
   11673              :       operands[3] = x3;
   11674              :       x4 = XEXP (x2, 0);
   11675              :       x5 = XEXP (x4, 0);
   11676              :       operands[1] = x5;
   11677              :       x6 = XEXP (x2, 1);
   11678              :       operands[2] = x6;
   11679              :       switch (GET_MODE (operands[0]))
   11680              :         {
   11681              :         case E_V2DFmode:
   11682              :           if (pattern155 (x2, 
   11683              : E_V2DFmode, 
   11684              : E_DFmode, 
   11685              : E_QImode) != 0)
   11686              :             return -1;
   11687              :           if ((
   11688              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11689              : (TARGET_AVX512F) && 
   11690              : #line 15603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11691              : (TARGET_SSE2)))
   11692              :             return 7306; /* vec_dupv2df_mask */
   11693              :           if (!(
   11694              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11695              : (TARGET_AVX512F) && (
   11696              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11697              : (TARGET_AVX512F) && 
   11698              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11699              : (TARGET_AVX512VL))))
   11700              :             return -1;
   11701              :           return 9429; /* avx512vl_vec_dup_gprv2df_mask */
   11702              : 
   11703              :         case E_V16SFmode:
   11704              :           if (pattern142 (x2, 
   11705              : E_V16SFmode, 
   11706              : E_HImode) != 0)
   11707              :             return -1;
   11708              :           switch (GET_MODE (operands[1]))
   11709              :             {
   11710              :             case E_V4SFmode:
   11711              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   11712              :                   || !
   11713              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11714              : (TARGET_AVX512F))
   11715              :                 return -1;
   11716              :               return 9375; /* avx512f_broadcastv16sf_mask */
   11717              : 
   11718              :             case E_SFmode:
   11719              :               if (!nonimmediate_operand (operands[1], E_SFmode)
   11720              :                   || !
   11721              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11722              : (TARGET_AVX512F))
   11723              :                 return -1;
   11724              :               return 9419; /* avx512f_vec_dup_gprv16sf_mask */
   11725              : 
   11726              :             case E_V8SFmode:
   11727              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   11728              :                   || !(
   11729              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11730              : (TARGET_AVX512F) && 
   11731              : #line 29391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11732              : (TARGET_AVX512DQ)))
   11733              :                 return -1;
   11734              :               return 9483; /* avx512dq_broadcastv16sf_mask_1 */
   11735              : 
   11736              :             default:
   11737              :               return -1;
   11738              :             }
   11739              : 
   11740              :         case E_V16SImode:
   11741              :           if (pattern142 (x2, 
   11742              : E_V16SImode, 
   11743              : E_HImode) != 0)
   11744              :             return -1;
   11745              :           switch (GET_MODE (operands[1]))
   11746              :             {
   11747              :             case E_V4SImode:
   11748              :               if (!nonimmediate_operand (operands[1], E_V4SImode)
   11749              :                   || !
   11750              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11751              : (TARGET_AVX512F))
   11752              :                 return -1;
   11753              :               return 9377; /* avx512f_broadcastv16si_mask */
   11754              : 
   11755              :             case E_SImode:
   11756              :               if (!nonimmediate_operand (operands[1], E_SImode)
   11757              :                   || !
   11758              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11759              : (TARGET_AVX512F))
   11760              :                 return -1;
   11761              :               return 9407; /* avx512f_vec_dup_gprv16si_mask */
   11762              : 
   11763              :             case E_V8SImode:
   11764              :               if (!nonimmediate_operand (operands[1], E_V8SImode)
   11765              :                   || !(
   11766              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11767              : (TARGET_AVX512F) && 
   11768              : #line 29391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11769              : (TARGET_AVX512DQ)))
   11770              :                 return -1;
   11771              :               return 9485; /* avx512dq_broadcastv16si_mask_1 */
   11772              : 
   11773              :             default:
   11774              :               return -1;
   11775              :             }
   11776              : 
   11777              :         case E_V8DFmode:
   11778              :           if (pattern142 (x2, 
   11779              : E_V8DFmode, 
   11780              : E_QImode) != 0)
   11781              :             return -1;
   11782              :           switch (GET_MODE (operands[1]))
   11783              :             {
   11784              :             case E_V4DFmode:
   11785              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   11786              :                   || !
   11787              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11788              : (TARGET_AVX512F))
   11789              :                 return -1;
   11790              :               return 9379; /* avx512f_broadcastv8df_mask */
   11791              : 
   11792              :             case E_DFmode:
   11793              :               if (!nonimmediate_operand (operands[1], E_DFmode)
   11794              :                   || !
   11795              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11796              : (TARGET_AVX512F))
   11797              :                 return -1;
   11798              :               return 9425; /* avx512f_vec_dup_gprv8df_mask */
   11799              : 
   11800              :             case E_V2DFmode:
   11801              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   11802              :                   || !(
   11803              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11804              : (TARGET_AVX512F) && 
   11805              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11806              : (TARGET_AVX512DQ)))
   11807              :                 return -1;
   11808              :               return 9489; /* avx512dq_broadcastv8df_mask_1 */
   11809              : 
   11810              :             default:
   11811              :               return -1;
   11812              :             }
   11813              : 
   11814              :         case E_V8DImode:
   11815              :           if (pattern142 (x2, 
   11816              : E_V8DImode, 
   11817              : E_QImode) != 0)
   11818              :             return -1;
   11819              :           switch (GET_MODE (operands[1]))
   11820              :             {
   11821              :             case E_V4DImode:
   11822              :               if (!nonimmediate_operand (operands[1], E_V4DImode)
   11823              :                   || !
   11824              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11825              : (TARGET_AVX512F))
   11826              :                 return -1;
   11827              :               return 9381; /* avx512f_broadcastv8di_mask */
   11828              : 
   11829              :             case E_DImode:
   11830              :               if (!nonimmediate_operand (operands[1], E_DImode)
   11831              :                   || !
   11832              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11833              : (TARGET_AVX512F))
   11834              :                 return -1;
   11835              :               return 9413; /* avx512f_vec_dup_gprv8di_mask */
   11836              : 
   11837              :             case E_V2DImode:
   11838              :               if (!nonimmediate_operand (operands[1], E_V2DImode)
   11839              :                   || !(
   11840              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11841              : (TARGET_AVX512F) && 
   11842              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11843              : (TARGET_AVX512DQ)))
   11844              :                 return -1;
   11845              :               return 9487; /* avx512dq_broadcastv8di_mask_1 */
   11846              : 
   11847              :             default:
   11848              :               return -1;
   11849              :             }
   11850              : 
   11851              :         case E_V64QImode:
   11852              :           if (pattern155 (x2, 
   11853              : E_V64QImode, 
   11854              : E_QImode, 
   11855              : E_DImode) != 0
   11856              :               || !(
   11857              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11858              : (TARGET_AVX512F) && 
   11859              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11860              : (TARGET_AVX512BW)))
   11861              :             return -1;
   11862              :           return 9383; /* avx512bw_vec_dup_gprv64qi_mask */
   11863              : 
   11864              :         case E_V16QImode:
   11865              :           if (pattern155 (x2, 
   11866              : E_V16QImode, 
   11867              : E_QImode, 
   11868              : E_HImode) != 0
   11869              :               || !(
   11870              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11871              : (TARGET_AVX512F) && (
   11872              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11873              : (TARGET_AVX512BW) && 
   11874              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11875              : (TARGET_AVX512VL))))
   11876              :             return -1;
   11877              :           return 9385; /* avx512vl_vec_dup_gprv16qi_mask */
   11878              : 
   11879              :         case E_V32QImode:
   11880              :           if (pattern155 (x2, 
   11881              : E_V32QImode, 
   11882              : E_QImode, 
   11883              : E_SImode) != 0
   11884              :               || !(
   11885              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11886              : (TARGET_AVX512F) && (
   11887              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11888              : (TARGET_AVX512BW) && 
   11889              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11890              : (TARGET_AVX512VL))))
   11891              :             return -1;
   11892              :           return 9387; /* avx512vl_vec_dup_gprv32qi_mask */
   11893              : 
   11894              :         case E_V32HImode:
   11895              :           if (pattern155 (x2, 
   11896              : E_V32HImode, 
   11897              : E_HImode, 
   11898              : E_SImode) != 0
   11899              :               || !(
   11900              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11901              : (TARGET_AVX512F) && 
   11902              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11903              : (TARGET_AVX512BW)))
   11904              :             return -1;
   11905              :           return 9389; /* avx512bw_vec_dup_gprv32hi_mask */
   11906              : 
   11907              :         case E_V16HImode:
   11908              :           if (pattern153 (x2, 
   11909              : E_HImode) != 0
   11910              :               || !(
   11911              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11912              : (TARGET_AVX512F) && (
   11913              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11914              : (TARGET_AVX512BW) && 
   11915              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11916              : (TARGET_AVX512VL))))
   11917              :             return -1;
   11918              :           return 9391; /* avx512vl_vec_dup_gprv16hi_mask */
   11919              : 
   11920              :         case E_V8HImode:
   11921              :           if (pattern155 (x2, 
   11922              : E_V8HImode, 
   11923              : E_HImode, 
   11924              : E_QImode) != 0
   11925              :               || !(
   11926              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11927              : (TARGET_AVX512F) && (
   11928              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11929              : (TARGET_AVX512BW) && 
   11930              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11931              : (TARGET_AVX512VL))))
   11932              :             return -1;
   11933              :           return 9393; /* avx512vl_vec_dup_gprv8hi_mask */
   11934              : 
   11935              :         case E_V32HFmode:
   11936              :           if (pattern155 (x2, 
   11937              : E_V32HFmode, 
   11938              : E_HFmode, 
   11939              : E_SImode) != 0
   11940              :               || !(
   11941              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11942              : (TARGET_AVX512F) && 
   11943              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11944              : (TARGET_AVX512BW)))
   11945              :             return -1;
   11946              :           return 9395; /* avx512bw_vec_dup_gprv32hf_mask */
   11947              : 
   11948              :         case E_V16HFmode:
   11949              :           if (pattern155 (x2, 
   11950              : E_V16HFmode, 
   11951              : E_HFmode, 
   11952              : E_HImode) != 0
   11953              :               || !(
   11954              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11955              : (TARGET_AVX512F) && (
   11956              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11957              : (TARGET_AVX512BW) && 
   11958              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11959              : (TARGET_AVX512VL))))
   11960              :             return -1;
   11961              :           return 9397; /* avx512vl_vec_dup_gprv16hf_mask */
   11962              : 
   11963              :         case E_V8HFmode:
   11964              :           if (pattern155 (x2, 
   11965              : E_V8HFmode, 
   11966              : E_HFmode, 
   11967              : E_QImode) != 0
   11968              :               || !(
   11969              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11970              : (TARGET_AVX512F) && (
   11971              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11972              : (TARGET_AVX512BW) && 
   11973              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11974              : (TARGET_AVX512VL))))
   11975              :             return -1;
   11976              :           return 9399; /* avx512fp16_vec_dup_gprv8hf_mask */
   11977              : 
   11978              :         case E_V32BFmode:
   11979              :           if (pattern155 (x2, 
   11980              : E_V32BFmode, 
   11981              : E_BFmode, 
   11982              : E_SImode) != 0
   11983              :               || !(
   11984              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11985              : (TARGET_AVX512F) && 
   11986              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11987              : (TARGET_AVX512BW)))
   11988              :             return -1;
   11989              :           return 9401; /* avx512bw_vec_dup_gprv32bf_mask */
   11990              : 
   11991              :         case E_V16BFmode:
   11992              :           if (pattern155 (x2, 
   11993              : E_V16BFmode, 
   11994              : E_BFmode, 
   11995              : E_HImode) != 0
   11996              :               || !(
   11997              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11998              : (TARGET_AVX512F) && (
   11999              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12000              : (TARGET_AVX512BW) && 
   12001              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12002              : (TARGET_AVX512VL))))
   12003              :             return -1;
   12004              :           return 9403; /* avx512vl_vec_dup_gprv16bf_mask */
   12005              : 
   12006              :         case E_V8BFmode:
   12007              :           if (pattern155 (x2, 
   12008              : E_V8BFmode, 
   12009              : E_BFmode, 
   12010              : E_QImode) != 0
   12011              :               || !(
   12012              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12013              : (TARGET_AVX512F) && (
   12014              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12015              : (TARGET_AVX512BW) && 
   12016              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12017              : (TARGET_AVX512VL))))
   12018              :             return -1;
   12019              :           return 9405; /* avx512vl_vec_dup_gprv8bf_mask */
   12020              : 
   12021              :         case E_V8SImode:
   12022              :           if (pattern142 (x2, 
   12023              : E_V8SImode, 
   12024              : E_QImode) != 0)
   12025              :             return -1;
   12026              :           switch (GET_MODE (operands[1]))
   12027              :             {
   12028              :             case E_SImode:
   12029              :               if (!nonimmediate_operand (operands[1], E_SImode)
   12030              :                   || !(
   12031              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12032              : (TARGET_AVX512F) && (
   12033              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12034              : (TARGET_AVX512F) && 
   12035              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12036              : (TARGET_AVX512VL))))
   12037              :                 return -1;
   12038              :               return 9409; /* avx512vl_vec_dup_gprv8si_mask */
   12039              : 
   12040              :             case E_V4SImode:
   12041              :               if (!nonimmediate_operand (operands[1], E_V4SImode)
   12042              :                   || !(
   12043              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12044              : (TARGET_AVX512F) && 
   12045              : #line 29377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12046              : (TARGET_AVX512VL)))
   12047              :                 return -1;
   12048              :               return 9479; /* avx512vl_broadcastv8si_mask_1 */
   12049              : 
   12050              :             default:
   12051              :               return -1;
   12052              :             }
   12053              : 
   12054              :         case E_V4SImode:
   12055              :           if (pattern155 (x2, 
   12056              : E_V4SImode, 
   12057              : E_SImode, 
   12058              : E_QImode) != 0
   12059              :               || !(
   12060              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12061              : (TARGET_AVX512F) && (
   12062              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12063              : (TARGET_AVX512F) && 
   12064              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12065              : (TARGET_AVX512VL))))
   12066              :             return -1;
   12067              :           return 9411; /* avx512vl_vec_dup_gprv4si_mask */
   12068              : 
   12069              :         case E_V4DImode:
   12070              :           if (pattern142 (x2, 
   12071              : E_V4DImode, 
   12072              : E_QImode) != 0)
   12073              :             return -1;
   12074              :           switch (GET_MODE (operands[1]))
   12075              :             {
   12076              :             case E_DImode:
   12077              :               if (!nonimmediate_operand (operands[1], E_DImode)
   12078              :                   || !(
   12079              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12080              : (TARGET_AVX512F) && (
   12081              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12082              : (TARGET_AVX512F) && 
   12083              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12084              : (TARGET_AVX512VL))))
   12085              :                 return -1;
   12086              :               return 9415; /* avx512vl_vec_dup_gprv4di_mask */
   12087              : 
   12088              :             case E_V2DImode:
   12089              :               if (!nonimmediate_operand (operands[1], E_V2DImode)
   12090              :                   || !(
   12091              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12092              : (TARGET_AVX512F) && (
   12093              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12094              : (TARGET_AVX512DQ) && 
   12095              : #line 29403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12096              : (TARGET_AVX512VL))))
   12097              :                 return -1;
   12098              :               return 9491; /* avx512dq_broadcastv4di_mask_1 */
   12099              : 
   12100              :             default:
   12101              :               return -1;
   12102              :             }
   12103              : 
   12104              :         case E_V2DImode:
   12105              :           if (pattern155 (x2, 
   12106              : E_V2DImode, 
   12107              : E_DImode, 
   12108              : E_QImode) != 0
   12109              :               || !(
   12110              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12111              : (TARGET_AVX512F) && (
   12112              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12113              : (TARGET_AVX512F) && 
   12114              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12115              : (TARGET_AVX512VL))))
   12116              :             return -1;
   12117              :           return 9417; /* avx512vl_vec_dup_gprv2di_mask */
   12118              : 
   12119              :         case E_V8SFmode:
   12120              :           if (pattern142 (x2, 
   12121              : E_V8SFmode, 
   12122              : E_QImode) != 0)
   12123              :             return -1;
   12124              :           switch (GET_MODE (operands[1]))
   12125              :             {
   12126              :             case E_SFmode:
   12127              :               if (!nonimmediate_operand (operands[1], E_SFmode)
   12128              :                   || !(
   12129              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12130              : (TARGET_AVX512F) && (
   12131              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12132              : (TARGET_AVX512F) && 
   12133              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12134              : (TARGET_AVX512VL))))
   12135              :                 return -1;
   12136              :               return 9421; /* avx512vl_vec_dup_gprv8sf_mask */
   12137              : 
   12138              :             case E_V4SFmode:
   12139              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   12140              :                   || !(
   12141              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12142              : (TARGET_AVX512F) && 
   12143              : #line 29377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12144              : (TARGET_AVX512VL)))
   12145              :                 return -1;
   12146              :               return 9481; /* avx512vl_broadcastv8sf_mask_1 */
   12147              : 
   12148              :             default:
   12149              :               return -1;
   12150              :             }
   12151              : 
   12152              :         case E_V4SFmode:
   12153              :           if (pattern155 (x2, 
   12154              : E_V4SFmode, 
   12155              : E_SFmode, 
   12156              : E_QImode) != 0
   12157              :               || !(
   12158              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12159              : (TARGET_AVX512F) && (
   12160              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12161              : (TARGET_AVX512F) && 
   12162              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12163              : (TARGET_AVX512VL))))
   12164              :             return -1;
   12165              :           return 9423; /* avx512vl_vec_dup_gprv4sf_mask */
   12166              : 
   12167              :         case E_V4DFmode:
   12168              :           if (pattern142 (x2, 
   12169              : E_V4DFmode, 
   12170              : E_QImode) != 0)
   12171              :             return -1;
   12172              :           switch (GET_MODE (operands[1]))
   12173              :             {
   12174              :             case E_DFmode:
   12175              :               if (!nonimmediate_operand (operands[1], E_DFmode)
   12176              :                   || !(
   12177              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12178              : (TARGET_AVX512F) && (
   12179              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12180              : (TARGET_AVX512F) && 
   12181              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12182              : (TARGET_AVX512VL))))
   12183              :                 return -1;
   12184              :               return 9427; /* avx512vl_vec_dup_gprv4df_mask */
   12185              : 
   12186              :             case E_V2DFmode:
   12187              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   12188              :                   || !(
   12189              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12190              : (TARGET_AVX512F) && (
   12191              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12192              : (TARGET_AVX512DQ) && 
   12193              : #line 29403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12194              : (TARGET_AVX512VL))))
   12195              :                 return -1;
   12196              :               return 9493; /* avx512dq_broadcastv4df_mask_1 */
   12197              : 
   12198              :             default:
   12199              :               return -1;
   12200              :             }
   12201              : 
   12202              :         default:
   12203              :           return -1;
   12204              :         }
   12205              : 
   12206              :     default:
   12207              :       return -1;
   12208              :     }
   12209              : }
   12210              : 
   12211              :  int
   12212              : recog_167 (rtx x1 ATTRIBUTE_UNUSED,
   12213              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12214              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12215              : {
   12216              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12217              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12218              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   12219              :   rtx x18, x19, x20, x21, x22, x23, x24;
   12220              :   int res ATTRIBUTE_UNUSED;
   12221              :   x2 = XEXP (x1, 1);
   12222              :   x3 = XEXP (x2, 0);
   12223              :   x4 = XEXP (x3, 1);
   12224              :   x5 = XVECEXP (x4, 0, 2);
   12225              :   if (GET_CODE (x5) != CONST_INT)
   12226              :     return -1;
   12227              :   x6 = XVECEXP (x4, 0, 3);
   12228              :   if (GET_CODE (x6) != CONST_INT
   12229              :       || pattern1315 (x4) != 0)
   12230              :     return -1;
   12231              :   x7 = XVECEXP (x4, 0, 12);
   12232              :   if (GET_CODE (x7) != CONST_INT)
   12233              :     return -1;
   12234              :   x8 = XVECEXP (x4, 0, 13);
   12235              :   if (GET_CODE (x8) != CONST_INT)
   12236              :     return -1;
   12237              :   x9 = XVECEXP (x4, 0, 14);
   12238              :   if (GET_CODE (x9) != CONST_INT)
   12239              :     return -1;
   12240              :   x10 = XVECEXP (x4, 0, 15);
   12241              :   if (GET_CODE (x10) != CONST_INT)
   12242              :     return -1;
   12243              :   x11 = XEXP (x2, 2);
   12244              :   if (!register_operand (x11, E_HImode))
   12245              :     return -1;
   12246              :   x12 = XVECEXP (x4, 0, 0);
   12247              :   switch (XWINT (x12, 0))
   12248              :     {
   12249              :     case 2L:
   12250              :       x13 = XVECEXP (x4, 0, 1);
   12251              :       if (XWINT (x13, 0) != 18L
   12252              :           || XWINT (x5, 0) != 3L
   12253              :           || XWINT (x6, 0) != 19L
   12254              :           || pattern1877 (x4) != 0)
   12255              :         return -1;
   12256              :       x14 = XVECEXP (x4, 0, 8);
   12257              :       if (XWINT (x14, 0) != 10L)
   12258              :         return -1;
   12259              :       x15 = XVECEXP (x4, 0, 9);
   12260              :       if (XWINT (x15, 0) != 26L)
   12261              :         return -1;
   12262              :       x16 = XVECEXP (x4, 0, 10);
   12263              :       if (XWINT (x16, 0) != 11L)
   12264              :         return -1;
   12265              :       x17 = XVECEXP (x4, 0, 11);
   12266              :       if (XWINT (x17, 0) != 27L
   12267              :           || pattern1909 (x2) != 0)
   12268              :         return -1;
   12269              :       switch (GET_MODE (operands[0]))
   12270              :         {
   12271              :         case E_V16SFmode:
   12272              :           if (pattern1607 (x2, 
   12273              : E_V16SFmode, 
   12274              : E_V32SFmode) != 0
   12275              :               || !
   12276              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12277              : (TARGET_AVX512F))
   12278              :             return -1;
   12279              :           return 5309; /* avx512f_unpckhps512_mask */
   12280              : 
   12281              :         case E_V16SImode:
   12282              :           if (pattern1607 (x2, 
   12283              : E_V16SImode, 
   12284              : E_V32SImode) != 0
   12285              :               || !
   12286              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12287              : (TARGET_AVX512F))
   12288              :             return -1;
   12289              :           return 8489; /* avx512f_interleave_highv16si_mask */
   12290              : 
   12291              :         default:
   12292              :           return -1;
   12293              :         }
   12294              : 
   12295              :     case 0L:
   12296              :       x13 = XVECEXP (x4, 0, 1);
   12297              :       switch (XWINT (x13, 0))
   12298              :         {
   12299              :         case 16L:
   12300              :           if (XWINT (x5, 0) != 1L
   12301              :               || XWINT (x6, 0) != 17L)
   12302              :             return -1;
   12303              :           x18 = XEXP (x3, 0);
   12304              :           x19 = XEXP (x18, 1);
   12305              :           operands[2] = x19;
   12306              :           x20 = XEXP (x2, 1);
   12307              :           operands[3] = x20;
   12308              :           operands[4] = x11;
   12309              :           x21 = XVECEXP (x4, 0, 4);
   12310              :           switch (XWINT (x21, 0))
   12311              :             {
   12312              :             case 4L:
   12313              :               x22 = XVECEXP (x4, 0, 5);
   12314              :               if (XWINT (x22, 0) != 20L)
   12315              :                 return -1;
   12316              :               x23 = XVECEXP (x4, 0, 6);
   12317              :               if (XWINT (x23, 0) != 5L)
   12318              :                 return -1;
   12319              :               x24 = XVECEXP (x4, 0, 7);
   12320              :               if (XWINT (x24, 0) != 21L)
   12321              :                 return -1;
   12322              :               x14 = XVECEXP (x4, 0, 8);
   12323              :               if (XWINT (x14, 0) != 8L)
   12324              :                 return -1;
   12325              :               x15 = XVECEXP (x4, 0, 9);
   12326              :               if (XWINT (x15, 0) != 24L)
   12327              :                 return -1;
   12328              :               x16 = XVECEXP (x4, 0, 10);
   12329              :               if (XWINT (x16, 0) != 9L)
   12330              :                 return -1;
   12331              :               x17 = XVECEXP (x4, 0, 11);
   12332              :               if (XWINT (x17, 0) != 25L
   12333              :                   || XWINT (x7, 0) != 12L
   12334              :                   || XWINT (x8, 0) != 28L
   12335              :                   || XWINT (x9, 0) != 13L
   12336              :                   || XWINT (x10, 0) != 29L)
   12337              :                 return -1;
   12338              :               switch (GET_MODE (operands[0]))
   12339              :                 {
   12340              :                 case E_V16SFmode:
   12341              :                   if (pattern1607 (x2, 
   12342              : E_V16SFmode, 
   12343              : E_V32SFmode) != 0
   12344              :                       || !
   12345              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12346              : (TARGET_AVX512F))
   12347              :                     return -1;
   12348              :                   return 5315; /* avx512f_unpcklps512_mask */
   12349              : 
   12350              :                 case E_V16SImode:
   12351              :                   if (pattern1607 (x2, 
   12352              : E_V16SImode, 
   12353              : E_V32SImode) != 0
   12354              :                       || !
   12355              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12356              : (TARGET_AVX512F))
   12357              :                     return -1;
   12358              :                   return 8495; /* avx512f_interleave_lowv16si_mask */
   12359              : 
   12360              :                 default:
   12361              :                   return -1;
   12362              :                 }
   12363              : 
   12364              :             case 2L:
   12365              :               x22 = XVECEXP (x4, 0, 5);
   12366              :               if (XWINT (x22, 0) != 18L)
   12367              :                 return -1;
   12368              :               x23 = XVECEXP (x4, 0, 6);
   12369              :               if (XWINT (x23, 0) != 3L)
   12370              :                 return -1;
   12371              :               x24 = XVECEXP (x4, 0, 7);
   12372              :               if (XWINT (x24, 0) != 19L)
   12373              :                 return -1;
   12374              :               x14 = XVECEXP (x4, 0, 8);
   12375              :               switch (XWINT (x14, 0))
   12376              :                 {
   12377              :                 case 4L:
   12378              :                   x15 = XVECEXP (x4, 0, 9);
   12379              :                   if (XWINT (x15, 0) != 20L)
   12380              :                     return -1;
   12381              :                   x16 = XVECEXP (x4, 0, 10);
   12382              :                   if (XWINT (x16, 0) != 5L)
   12383              :                     return -1;
   12384              :                   x17 = XVECEXP (x4, 0, 11);
   12385              :                   if (XWINT (x17, 0) != 21L
   12386              :                       || XWINT (x7, 0) != 6L
   12387              :                       || XWINT (x8, 0) != 22L
   12388              :                       || XWINT (x9, 0) != 7L
   12389              :                       || XWINT (x10, 0) != 23L
   12390              :                       || pattern1608 (x2, 
   12391              : E_V16QImode, 
   12392              : E_V32QImode) != 0
   12393              :                       || !(
   12394              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12395              : (TARGET_AVX512F) && 
   12396              : #line 20350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12397              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12398              :                     return -1;
   12399              :                   return 8449; /* vec_interleave_lowv16qi_mask */
   12400              : 
   12401              :                 case 8L:
   12402              :                   x15 = XVECEXP (x4, 0, 9);
   12403              :                   if (XWINT (x15, 0) != 24L)
   12404              :                     return -1;
   12405              :                   x16 = XVECEXP (x4, 0, 10);
   12406              :                   if (XWINT (x16, 0) != 9L)
   12407              :                     return -1;
   12408              :                   x17 = XVECEXP (x4, 0, 11);
   12409              :                   if (XWINT (x17, 0) != 25L
   12410              :                       || XWINT (x7, 0) != 10L
   12411              :                       || XWINT (x8, 0) != 26L
   12412              :                       || XWINT (x9, 0) != 11L
   12413              :                       || XWINT (x10, 0) != 27L)
   12414              :                     return -1;
   12415              :                   switch (GET_MODE (operands[0]))
   12416              :                     {
   12417              :                     case E_V16HImode:
   12418              :                       if (pattern1607 (x2, 
   12419              : E_V16HImode, 
   12420              : E_V32HImode) != 0
   12421              :                           || !(
   12422              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12423              : (TARGET_AVX512F) && 
   12424              : #line 20470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12425              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12426              :                         return -1;
   12427              :                       return 8475; /* avx2_interleave_lowv16hi_mask */
   12428              : 
   12429              :                     case E_V16HFmode:
   12430              :                       if (pattern1607 (x2, 
   12431              : E_V16HFmode, 
   12432              : E_V32HFmode) != 0
   12433              :                           || !(
   12434              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12435              : (TARGET_AVX512F) && 
   12436              : #line 20470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12437              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12438              :                         return -1;
   12439              :                       return 8477; /* avx2_interleave_lowv16hf_mask */
   12440              : 
   12441              :                     case E_V16BFmode:
   12442              :                       if (pattern1607 (x2, 
   12443              : E_V16BFmode, 
   12444              : E_V32BFmode) != 0
   12445              :                           || !(
   12446              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12447              : (TARGET_AVX512F) && 
   12448              : #line 20470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12449              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12450              :                         return -1;
   12451              :                       return 8479; /* avx2_interleave_lowv16bf_mask */
   12452              : 
   12453              :                     default:
   12454              :                       return -1;
   12455              :                     }
   12456              : 
   12457              :                 default:
   12458              :                   return -1;
   12459              :                 }
   12460              : 
   12461              :             default:
   12462              :               return -1;
   12463              :             }
   12464              : 
   12465              :         case 0L:
   12466              :           if (pattern1702 (x4) != 0)
   12467              :             return -1;
   12468              :           x14 = XVECEXP (x4, 0, 8);
   12469              :           if (XWINT (x14, 0) != 8L)
   12470              :             return -1;
   12471              :           x15 = XVECEXP (x4, 0, 9);
   12472              :           if (XWINT (x15, 0) != 8L)
   12473              :             return -1;
   12474              :           x16 = XVECEXP (x4, 0, 10);
   12475              :           if (XWINT (x16, 0) != 10L)
   12476              :             return -1;
   12477              :           x17 = XVECEXP (x4, 0, 11);
   12478              :           if (XWINT (x17, 0) != 10L
   12479              :               || XWINT (x7, 0) != 12L
   12480              :               || XWINT (x8, 0) != 12L
   12481              :               || XWINT (x9, 0) != 14L
   12482              :               || XWINT (x10, 0) != 14L
   12483              :               || pattern1846 (x2, 
   12484              : E_V16SFmode, 
   12485              : E_V32SFmode) != 0
   12486              :               || !
   12487              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12488              : (TARGET_AVX512F))
   12489              :             return -1;
   12490              :           return 5331; /* avx512f_movsldup512_mask */
   12491              : 
   12492              :         default:
   12493              :           return -1;
   12494              :         }
   12495              : 
   12496              :     case 1L:
   12497              :       x13 = XVECEXP (x4, 0, 1);
   12498              :       if (XWINT (x13, 0) != 1L
   12499              :           || XWINT (x5, 0) != 3L
   12500              :           || XWINT (x6, 0) != 3L)
   12501              :         return -1;
   12502              :       x21 = XVECEXP (x4, 0, 4);
   12503              :       if (XWINT (x21, 0) != 5L)
   12504              :         return -1;
   12505              :       x22 = XVECEXP (x4, 0, 5);
   12506              :       if (XWINT (x22, 0) != 5L)
   12507              :         return -1;
   12508              :       x23 = XVECEXP (x4, 0, 6);
   12509              :       if (XWINT (x23, 0) != 7L)
   12510              :         return -1;
   12511              :       x24 = XVECEXP (x4, 0, 7);
   12512              :       if (XWINT (x24, 0) != 7L)
   12513              :         return -1;
   12514              :       x14 = XVECEXP (x4, 0, 8);
   12515              :       if (XWINT (x14, 0) != 9L)
   12516              :         return -1;
   12517              :       x15 = XVECEXP (x4, 0, 9);
   12518              :       if (XWINT (x15, 0) != 9L)
   12519              :         return -1;
   12520              :       x16 = XVECEXP (x4, 0, 10);
   12521              :       if (XWINT (x16, 0) != 11L)
   12522              :         return -1;
   12523              :       x17 = XVECEXP (x4, 0, 11);
   12524              :       if (XWINT (x17, 0) != 11L
   12525              :           || XWINT (x7, 0) != 13L
   12526              :           || XWINT (x8, 0) != 13L
   12527              :           || XWINT (x9, 0) != 15L
   12528              :           || XWINT (x10, 0) != 15L
   12529              :           || pattern1846 (x2, 
   12530              : E_V16SFmode, 
   12531              : E_V32SFmode) != 0
   12532              :           || !
   12533              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12534              : (TARGET_AVX512F))
   12535              :         return -1;
   12536              :       return 5325; /* avx512f_movshdup512_mask */
   12537              : 
   12538              :     case 8L:
   12539              :       x13 = XVECEXP (x4, 0, 1);
   12540              :       if (XWINT (x13, 0) != 24L
   12541              :           || XWINT (x5, 0) != 9L
   12542              :           || XWINT (x6, 0) != 25L)
   12543              :         return -1;
   12544              :       x21 = XVECEXP (x4, 0, 4);
   12545              :       if (XWINT (x21, 0) != 10L)
   12546              :         return -1;
   12547              :       x22 = XVECEXP (x4, 0, 5);
   12548              :       if (XWINT (x22, 0) != 26L)
   12549              :         return -1;
   12550              :       x23 = XVECEXP (x4, 0, 6);
   12551              :       if (XWINT (x23, 0) != 11L)
   12552              :         return -1;
   12553              :       x24 = XVECEXP (x4, 0, 7);
   12554              :       if (XWINT (x24, 0) != 27L
   12555              :           || pattern1892 (x4) != 0
   12556              :           || XWINT (x7, 0) != 14L
   12557              :           || XWINT (x8, 0) != 30L
   12558              :           || XWINT (x9, 0) != 15L
   12559              :           || XWINT (x10, 0) != 31L
   12560              :           || pattern784 (x2, 
   12561              : E_V32QImode, 
   12562              : E_V16QImode) != 0
   12563              :           || !register_operand (operands[1], E_V16QImode))
   12564              :         return -1;
   12565              :       x18 = XEXP (x3, 0);
   12566              :       x19 = XEXP (x18, 1);
   12567              :       operands[2] = x19;
   12568              :       if (!vector_operand (operands[2], E_V16QImode))
   12569              :         return -1;
   12570              :       x20 = XEXP (x2, 1);
   12571              :       operands[3] = x20;
   12572              :       if (!nonimm_or_0_operand (operands[3], E_V16QImode))
   12573              :         return -1;
   12574              :       operands[4] = x11;
   12575              :       if (!(
   12576              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12577              : (TARGET_AVX512F) && 
   12578              : #line 20254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12579              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12580              :         return -1;
   12581              :       return 8443; /* vec_interleave_highv16qi_mask */
   12582              : 
   12583              :     case 4L:
   12584              :       x13 = XVECEXP (x4, 0, 1);
   12585              :       if (XWINT (x13, 0) != 20L
   12586              :           || XWINT (x5, 0) != 5L
   12587              :           || XWINT (x6, 0) != 21L
   12588              :           || pattern1877 (x4) != 0
   12589              :           || pattern1892 (x4) != 0
   12590              :           || pattern1909 (x2) != 0)
   12591              :         return -1;
   12592              :       switch (GET_MODE (operands[0]))
   12593              :         {
   12594              :         case E_V16HImode:
   12595              :           if (pattern1607 (x2, 
   12596              : E_V16HImode, 
   12597              : E_V32HImode) != 0
   12598              :               || !(
   12599              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12600              : (TARGET_AVX512F) && 
   12601              : #line 20402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12602              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12603              :             return -1;
   12604              :           return 8457; /* avx2_interleave_highv16hi_mask */
   12605              : 
   12606              :         case E_V16HFmode:
   12607              :           if (pattern1607 (x2, 
   12608              : E_V16HFmode, 
   12609              : E_V32HFmode) != 0
   12610              :               || !(
   12611              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12612              : (TARGET_AVX512F) && 
   12613              : #line 20402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12614              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12615              :             return -1;
   12616              :           return 8459; /* avx2_interleave_highv16hf_mask */
   12617              : 
   12618              :         case E_V16BFmode:
   12619              :           if (pattern1607 (x2, 
   12620              : E_V16BFmode, 
   12621              : E_V32BFmode) != 0
   12622              :               || !(
   12623              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12624              : (TARGET_AVX512F) && 
   12625              : #line 20402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12626              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12627              :             return -1;
   12628              :           return 8461; /* avx2_interleave_highv16bf_mask */
   12629              : 
   12630              :         default:
   12631              :           return -1;
   12632              :         }
   12633              : 
   12634              :     default:
   12635              :       return -1;
   12636              :     }
   12637              : }
   12638              : 
   12639              :  int
   12640              : recog_178 (rtx x1 ATTRIBUTE_UNUSED,
   12641              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12642              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12643              : {
   12644              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12645              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12646              :   rtx x10;
   12647              :   int res ATTRIBUTE_UNUSED;
   12648              :   x2 = XEXP (x1, 1);
   12649              :   x3 = XEXP (x2, 0);
   12650              :   x4 = XEXP (x3, 1);
   12651              :   x5 = XVECEXP (x4, 0, 4);
   12652              :   if (GET_CODE (x5) != CONST_INT)
   12653              :     return -1;
   12654              :   operands[6] = x5;
   12655              :   res = recog_177 (x1, insn, pnum_clobbers);
   12656              :   if (res >= 0)
   12657              :     return res;
   12658              :   if (XWINT (x5, 0) != 4L)
   12659              :     return -1;
   12660              :   x6 = XVECEXP (x4, 0, 5);
   12661              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12662              :     return -1;
   12663              :   x7 = XVECEXP (x4, 0, 6);
   12664              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12665              :     return -1;
   12666              :   x8 = XVECEXP (x4, 0, 7);
   12667              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12668              :       || pattern1316 (x2, 
   12669              : E_V8HImode) != 0
   12670              :       || pattern1032 (x4) != 0)
   12671              :     return -1;
   12672              :   x9 = XEXP (x2, 1);
   12673              :   operands[6] = x9;
   12674              :   if (!nonimm_or_0_operand (operands[6], E_V8HImode))
   12675              :     return -1;
   12676              :   x10 = XEXP (x2, 2);
   12677              :   operands[7] = x10;
   12678              :   if (!register_operand (operands[7], E_QImode)
   12679              :       || !(
   12680              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12681              : (TARGET_AVX512F) && 
   12682              : #line 21643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12683              : (TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12684              :     return -1;
   12685              :   return 8567; /* sse2_pshuflw_1_mask */
   12686              : }
   12687              : 
   12688              :  int
   12689              : recog_180 (rtx x1 ATTRIBUTE_UNUSED,
   12690              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12691              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12692              : {
   12693              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12694              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12695              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   12696              :   rtx x18, x19, x20;
   12697              :   int res ATTRIBUTE_UNUSED;
   12698              :   x2 = XEXP (x1, 1);
   12699              :   x3 = XEXP (x2, 0);
   12700              :   x4 = XEXP (x3, 1);
   12701              :   x5 = XVECEXP (x4, 0, 1);
   12702              :   operands[3] = x5;
   12703              :   x6 = XVECEXP (x4, 0, 2);
   12704              :   operands[4] = x6;
   12705              :   x7 = XVECEXP (x4, 0, 3);
   12706              :   operands[5] = x7;
   12707              :   x8 = XVECEXP (x4, 0, 5);
   12708              :   operands[7] = x8;
   12709              :   x9 = XVECEXP (x4, 0, 6);
   12710              :   operands[8] = x9;
   12711              :   x10 = XVECEXP (x4, 0, 7);
   12712              :   operands[9] = x10;
   12713              :   x11 = XVECEXP (x4, 0, 8);
   12714              :   operands[10] = x11;
   12715              :   x12 = XVECEXP (x4, 0, 9);
   12716              :   operands[11] = x12;
   12717              :   x13 = XVECEXP (x4, 0, 10);
   12718              :   operands[12] = x13;
   12719              :   x14 = XVECEXP (x4, 0, 11);
   12720              :   operands[13] = x14;
   12721              :   x15 = XVECEXP (x4, 0, 12);
   12722              :   operands[14] = x15;
   12723              :   x16 = XVECEXP (x4, 0, 13);
   12724              :   operands[15] = x16;
   12725              :   x17 = XVECEXP (x4, 0, 14);
   12726              :   operands[16] = x17;
   12727              :   x18 = XVECEXP (x4, 0, 15);
   12728              :   operands[17] = x18;
   12729              :   x19 = XEXP (x2, 1);
   12730              :   operands[18] = x19;
   12731              :   x20 = XEXP (x2, 2);
   12732              :   operands[19] = x20;
   12733              :   if (!register_operand (operands[19], E_HImode))
   12734              :     return -1;
   12735              :   switch (GET_MODE (operands[0]))
   12736              :     {
   12737              :     case E_V16SFmode:
   12738              :       if (!register_operand (operands[0], E_V16SFmode)
   12739              :           || GET_MODE (x2) != E_V16SFmode
   12740              :           || GET_MODE (x3) != E_V16SFmode
   12741              :           || !register_operand (operands[1], E_V16SFmode)
   12742              :           || pattern1893 () != 0
   12743              :           || !nonimm_or_0_operand (operands[18], E_V16SFmode)
   12744              :           || !(
   12745              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12746              : (TARGET_AVX512F) && 
   12747              : #line 21261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12748              : (TARGET_AVX512F
   12749              :    && (INTVAL (operands[2]) & 3) == 0
   12750              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12751              :    && INTVAL (operands[2]) == INTVAL (operands[4]) - 2
   12752              :    && INTVAL (operands[2]) == INTVAL (operands[5]) - 3
   12753              :    && (INTVAL (operands[6]) & 3) == 0
   12754              :    && INTVAL (operands[6]) == INTVAL (operands[7]) - 1
   12755              :    && INTVAL (operands[6]) == INTVAL (operands[8]) - 2
   12756              :    && INTVAL (operands[6]) == INTVAL (operands[9]) - 3
   12757              :    && (INTVAL (operands[10]) & 3) == 0
   12758              :    && INTVAL (operands[10]) == INTVAL (operands[11]) - 1
   12759              :    && INTVAL (operands[10]) == INTVAL (operands[12]) - 2
   12760              :    && INTVAL (operands[10]) == INTVAL (operands[13]) - 3
   12761              :    && (INTVAL (operands[14]) & 3) == 0
   12762              :    && INTVAL (operands[14]) == INTVAL (operands[15]) - 1
   12763              :    && INTVAL (operands[14]) == INTVAL (operands[16]) - 2
   12764              :    && INTVAL (operands[14]) == INTVAL (operands[17]) - 3)))
   12765              :         return -1;
   12766              :       return 8553; /* *avx512f_shuf_f32x4_1_mask_1 */
   12767              : 
   12768              :     case E_V16SImode:
   12769              :       if (!register_operand (operands[0], E_V16SImode)
   12770              :           || GET_MODE (x2) != E_V16SImode
   12771              :           || GET_MODE (x3) != E_V16SImode
   12772              :           || !nonimm_or_0_operand (operands[18], E_V16SImode))
   12773              :         return -1;
   12774              :       if (register_operand (operands[1], E_V16SImode)
   12775              :           && pattern1893 () == 0
   12776              :           && (
   12777              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12778              : (TARGET_AVX512F) && 
   12779              : #line 21261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12780              : (TARGET_AVX512F
   12781              :    && (INTVAL (operands[2]) & 3) == 0
   12782              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12783              :    && INTVAL (operands[2]) == INTVAL (operands[4]) - 2
   12784              :    && INTVAL (operands[2]) == INTVAL (operands[5]) - 3
   12785              :    && (INTVAL (operands[6]) & 3) == 0
   12786              :    && INTVAL (operands[6]) == INTVAL (operands[7]) - 1
   12787              :    && INTVAL (operands[6]) == INTVAL (operands[8]) - 2
   12788              :    && INTVAL (operands[6]) == INTVAL (operands[9]) - 3
   12789              :    && (INTVAL (operands[10]) & 3) == 0
   12790              :    && INTVAL (operands[10]) == INTVAL (operands[11]) - 1
   12791              :    && INTVAL (operands[10]) == INTVAL (operands[12]) - 2
   12792              :    && INTVAL (operands[10]) == INTVAL (operands[13]) - 3
   12793              :    && (INTVAL (operands[14]) & 3) == 0
   12794              :    && INTVAL (operands[14]) == INTVAL (operands[15]) - 1
   12795              :    && INTVAL (operands[14]) == INTVAL (operands[16]) - 2
   12796              :    && INTVAL (operands[14]) == INTVAL (operands[17]) - 3)))
   12797              :         return 8555; /* *avx512f_shuf_i32x4_1_mask_1 */
   12798              :       if (!nonimmediate_operand (operands[1], E_V16SImode)
   12799              :           || pattern1847 () != 0
   12800              :           || !const_8_to_11_operand (operands[10], E_VOIDmode)
   12801              :           || !const_8_to_11_operand (operands[11], E_VOIDmode)
   12802              :           || !const_8_to_11_operand (operands[12], E_VOIDmode)
   12803              :           || !const_8_to_11_operand (operands[13], E_VOIDmode)
   12804              :           || !const_12_to_15_operand (operands[14], E_VOIDmode)
   12805              :           || !const_12_to_15_operand (operands[15], E_VOIDmode)
   12806              :           || !const_12_to_15_operand (operands[16], E_VOIDmode)
   12807              :           || !const_12_to_15_operand (operands[17], E_VOIDmode)
   12808              :           || !(
   12809              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12810              : (TARGET_AVX512F) && 
   12811              : #line 21344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12812              : (TARGET_AVX512F
   12813              :    && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   12814              :    && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   12815              :    && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   12816              :    && INTVAL (operands[5]) + 4 == INTVAL (operands[9])
   12817              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[10])
   12818              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[11])
   12819              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[12])
   12820              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[13])
   12821              :    && INTVAL (operands[2]) + 12 == INTVAL (operands[14])
   12822              :    && INTVAL (operands[3]) + 12 == INTVAL (operands[15])
   12823              :    && INTVAL (operands[4]) + 12 == INTVAL (operands[16])
   12824              :    && INTVAL (operands[5]) + 12 == INTVAL (operands[17]))))
   12825              :         return -1;
   12826              :       return 8557; /* avx512f_pshufd_1_mask */
   12827              : 
   12828              :     default:
   12829              :       return -1;
   12830              :     }
   12831              : }
   12832              : 
   12833              :  int
   12834              : recog_191 (rtx x1 ATTRIBUTE_UNUSED,
   12835              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12836              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12837              : {
   12838              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12839              :   rtx x2, x3, x4, x5, x6, x7;
   12840              :   int res ATTRIBUTE_UNUSED;
   12841              :   x2 = XEXP (x1, 1);
   12842              :   x3 = XEXP (x2, 0);
   12843              :   x4 = XEXP (x3, 0);
   12844              :   operands[1] = x4;
   12845              :   x5 = XEXP (x3, 1);
   12846              :   operands[2] = x5;
   12847              :   x6 = XEXP (x2, 1);
   12848              :   operands[3] = x6;
   12849              :   x7 = XEXP (x2, 2);
   12850              :   operands[4] = x7;
   12851              :   switch (GET_MODE (operands[0]))
   12852              :     {
   12853              :     case E_V16HImode:
   12854              :       if (pattern135 (x2, 
   12855              : E_HImode, 
   12856              : E_V16HImode) != 0)
   12857              :         return -1;
   12858              :       if (nonimmediate_operand (operands[1], E_V16HImode)
   12859              :           && nonmemory_operand (operands[2], E_DImode)
   12860              :           && (
   12861              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12862              : (TARGET_AVX512F) && (
   12863              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12864              : (TARGET_AVX512VL) && 
   12865              : #line 781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12866              : (TARGET_AVX512BW))))
   12867              :         return 7720; /* ashrv16hi3_mask */
   12868              :       if (!register_operand (operands[1], E_V16HImode)
   12869              :           || !nonimmediate_operand (operands[2], E_V16HImode)
   12870              :           || !(
   12871              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12872              : (TARGET_AVX512F) && (
   12873              : #line 30327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12874              : (TARGET_AVX512BW) && 
   12875              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12876              : (TARGET_AVX512VL))))
   12877              :         return -1;
   12878              :       return 9716; /* avx512vl_ashrvv16hi_mask */
   12879              : 
   12880              :     case E_V8HImode:
   12881              :       if (pattern135 (x2, 
   12882              : E_QImode, 
   12883              : E_V8HImode) != 0)
   12884              :         return -1;
   12885              :       if (nonimmediate_operand (operands[1], E_V8HImode)
   12886              :           && nonmemory_operand (operands[2], E_DImode)
   12887              :           && (
   12888              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12889              : (TARGET_AVX512F) && (
   12890              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12891              : (TARGET_AVX512VL) && 
   12892              : #line 781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12893              : (TARGET_AVX512BW))))
   12894              :         return 7722; /* ashrv8hi3_mask */
   12895              :       if (!register_operand (operands[1], E_V8HImode)
   12896              :           || !nonimmediate_operand (operands[2], E_V8HImode)
   12897              :           || !(
   12898              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12899              : (TARGET_AVX512F) && (
   12900              : #line 30327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12901              : (TARGET_AVX512BW) && 
   12902              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12903              : (TARGET_AVX512VL))))
   12904              :         return -1;
   12905              :       return 9714; /* avx512vl_ashrvv8hi_mask */
   12906              : 
   12907              :     case E_V8SImode:
   12908              :       if (pattern135 (x2, 
   12909              : E_QImode, 
   12910              : E_V8SImode) != 0)
   12911              :         return -1;
   12912              :       if (nonimmediate_operand (operands[1], E_V8SImode)
   12913              :           && nonmemory_operand (operands[2], E_DImode)
   12914              :           && (
   12915              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12916              : (TARGET_AVX512F) && 
   12917              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12918              : (TARGET_AVX512VL)))
   12919              :         return 7724; /* ashrv8si3_mask */
   12920              :       if (!register_operand (operands[1], E_V8SImode)
   12921              :           || !nonimmediate_operand (operands[2], E_V8SImode)
   12922              :           || !(
   12923              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12924              : (TARGET_AVX512F) && 
   12925              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12926              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   12927              :         return -1;
   12928              :       return 9704; /* avx2_ashrvv8si_mask */
   12929              : 
   12930              :     case E_V4SImode:
   12931              :       if (pattern135 (x2, 
   12932              : E_QImode, 
   12933              : E_V4SImode) != 0)
   12934              :         return -1;
   12935              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   12936              :           && nonmemory_operand (operands[2], E_DImode)
   12937              :           && (
   12938              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12939              : (TARGET_AVX512F) && 
   12940              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12941              : (TARGET_AVX512VL)))
   12942              :         return 7726; /* ashrv4si3_mask */
   12943              :       if (!register_operand (operands[1], E_V4SImode)
   12944              :           || !nonimmediate_operand (operands[2], E_V4SImode)
   12945              :           || !(
   12946              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12947              : (TARGET_AVX512F) && 
   12948              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12949              : (TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
   12950              :         return -1;
   12951              :       return 9702; /* avx2_ashrvv4si_mask */
   12952              : 
   12953              :     case E_V2DImode:
   12954              :       if (pattern135 (x2, 
   12955              : E_QImode, 
   12956              : E_V2DImode) != 0)
   12957              :         return -1;
   12958              :       if (nonimmediate_operand (operands[1], E_V2DImode)
   12959              :           && nonmemory_operand (operands[2], E_DImode)
   12960              :           && (
   12961              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12962              : (TARGET_AVX512F) && 
   12963              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12964              : (TARGET_AVX512VL)))
   12965              :         return 7728; /* ashrv2di3_mask */
   12966              :       if (!register_operand (operands[1], E_V2DImode)
   12967              :           || !nonimmediate_operand (operands[2], E_V2DImode)
   12968              :           || !(
   12969              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12970              : (TARGET_AVX512F) && (
   12971              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12972              : (TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL)) && 
   12973              : #line 671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12974              : (TARGET_AVX512VL))))
   12975              :         return -1;
   12976              :       return 9708; /* avx2_ashrvv2di_mask */
   12977              : 
   12978              :     case E_V32HImode:
   12979              :       if (pattern135 (x2, 
   12980              : E_SImode, 
   12981              : E_V32HImode) != 0)
   12982              :         return -1;
   12983              :       if (nonimmediate_operand (operands[1], E_V32HImode)
   12984              :           && nonmemory_operand (operands[2], E_DImode)
   12985              :           && (
   12986              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12987              : (TARGET_AVX512F) && (
   12988              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12989              : (TARGET_AVX512F) && 
   12990              : #line 776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12991              : (TARGET_AVX512BW))))
   12992              :         return 7738; /* ashrv32hi3_mask */
   12993              :       if (!register_operand (operands[1], E_V32HImode)
   12994              :           || !nonimmediate_operand (operands[2], E_V32HImode)
   12995              :           || !(
   12996              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12997              : (TARGET_AVX512F) && 
   12998              : #line 30327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12999              : (TARGET_AVX512BW)))
   13000              :         return -1;
   13001              :       return 9718; /* avx512bw_ashrvv32hi_mask */
   13002              : 
   13003              :     case E_V4DImode:
   13004              :       if (pattern135 (x2, 
   13005              : E_QImode, 
   13006              : E_V4DImode) != 0)
   13007              :         return -1;
   13008              :       if (nonimmediate_operand (operands[1], E_V4DImode)
   13009              :           && nonmemory_operand (operands[2], E_DImode)
   13010              :           && (
   13011              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13012              : (TARGET_AVX512F) && (
   13013              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13014              : (TARGET_AVX512F) && 
   13015              : #line 777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13016              : (TARGET_AVX512VL))))
   13017              :         return 7740; /* ashrv4di3_mask */
   13018              :       if (!register_operand (operands[1], E_V4DImode)
   13019              :           || !nonimmediate_operand (operands[2], E_V4DImode)
   13020              :           || !(
   13021              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13022              : (TARGET_AVX512F) && (
   13023              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13024              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
   13025              : #line 671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13026              : (TARGET_AVX512VL))))
   13027              :         return -1;
   13028              :       return 9710; /* avx2_ashrvv4di_mask */
   13029              : 
   13030              :     case E_V16SImode:
   13031              :       if (pattern135 (x2, 
   13032              : E_HImode, 
   13033              : E_V16SImode) != 0)
   13034              :         return -1;
   13035              :       if (nonimmediate_operand (operands[1], E_V16SImode)
   13036              :           && nonmemory_operand (operands[2], E_DImode)
   13037              :           && 
   13038              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13039              : (TARGET_AVX512F))
   13040              :         return 7742; /* ashrv16si3_mask */
   13041              :       if (!register_operand (operands[1], E_V16SImode)
   13042              :           || !nonimmediate_operand (operands[2], E_V16SImode)
   13043              :           || !(
   13044              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13045              : (TARGET_AVX512F) && (
   13046              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13047              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   13048              : #line 670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13049              : (TARGET_AVX512F))))
   13050              :         return -1;
   13051              :       return 9706; /* avx512f_ashrvv16si_mask */
   13052              : 
   13053              :     case E_V8DImode:
   13054              :       if (pattern135 (x2, 
   13055              : E_QImode, 
   13056              : E_V8DImode) != 0)
   13057              :         return -1;
   13058              :       if (nonimmediate_operand (operands[1], E_V8DImode)
   13059              :           && nonmemory_operand (operands[2], E_DImode)
   13060              :           && 
   13061              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13062              : (TARGET_AVX512F))
   13063              :         return 7744; /* ashrv8di3_mask */
   13064              :       if (!register_operand (operands[1], E_V8DImode)
   13065              :           || !nonimmediate_operand (operands[2], E_V8DImode)
   13066              :           || !(
   13067              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13068              : (TARGET_AVX512F) && (
   13069              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13070              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   13071              : #line 672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13072              : (TARGET_AVX512F))))
   13073              :         return -1;
   13074              :       return 9712; /* avx512f_ashrvv8di_mask */
   13075              : 
   13076              :     default:
   13077              :       return -1;
   13078              :     }
   13079              : }
   13080              : 
   13081              :  int
   13082              : recog_193 (rtx x1 ATTRIBUTE_UNUSED,
   13083              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13084              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13085              : {
   13086              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13087              :   rtx x2;
   13088              :   int res ATTRIBUTE_UNUSED;
   13089              :   x2 = XEXP (x1, 1);
   13090              :   switch (pattern148 (x2))
   13091              :     {
   13092              :     case 0:
   13093              :       if (nonimmediate_operand (operands[1], E_V16HImode)
   13094              :           && nonmemory_operand (operands[2], E_DImode)
   13095              :           && (
   13096              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13097              : (TARGET_AVX512F) && (
   13098              : #line 18047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13099              : (TARGET_AVX512VL) && 
   13100              : #line 786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13101              : (TARGET_AVX512BW))))
   13102              :         return 7757; /* lshrv16hi3_mask */
   13103              :       if (!register_operand (operands[1], E_V16HImode)
   13104              :           || !nonimmediate_operand (operands[2], E_V16HImode)
   13105              :           || !(
   13106              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13107              : (TARGET_AVX512F) && (
   13108              : #line 30349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13109              : (TARGET_AVX512BW) && 
   13110              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13111              : (TARGET_AVX512VL))))
   13112              :         return -1;
   13113              :       return 9750; /* avx512vl_lshrvv16hi_mask */
   13114              : 
   13115              :     case 1:
   13116              :       if (nonimmediate_operand (operands[1], E_V8HImode)
   13117              :           && nonmemory_operand (operands[2], E_DImode)
   13118              :           && (
   13119              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13120              : (TARGET_AVX512F) && (
   13121              : #line 18047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13122              : (TARGET_AVX512VL) && 
   13123              : #line 786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13124              : (TARGET_AVX512BW))))
   13125              :         return 7761; /* lshrv8hi3_mask */
   13126              :       if (!register_operand (operands[1], E_V8HImode)
   13127              :           || !nonimmediate_operand (operands[2], E_V8HImode)
   13128              :           || !(
   13129              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13130              : (TARGET_AVX512F) && (
   13131              : #line 30349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13132              : (TARGET_AVX512BW) && 
   13133              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13134              : (TARGET_AVX512VL))))
   13135              :         return -1;
   13136              :       return 9746; /* avx512vl_lshrvv8hi_mask */
   13137              : 
   13138              :     case 2:
   13139              :       if (nonimmediate_operand (operands[1], E_V8SImode)
   13140              :           && nonmemory_operand (operands[2], E_DImode)
   13141              :           && (
   13142              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13143              : (TARGET_AVX512F) && 
   13144              : #line 18047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13145              : (TARGET_AVX512VL)))
   13146              :         return 7765; /* lshrv8si3_mask */
   13147              :       if (!register_operand (operands[1], E_V8SImode)
   13148              :           || !nonimmediate_operand (operands[2], E_V8SImode)
   13149              :           || !(
   13150              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13151              : (TARGET_AVX512F) && 
   13152              : #line 30338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13153              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   13154              :         return -1;
   13155              :       return 9726; /* avx2_lshrvv8si_mask */
   13156              : 
   13157              :     case 3:
   13158              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   13159              :           && nonmemory_operand (operands[2], E_DImode)
   13160              :           && (
   13161              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13162              : (TARGET_AVX512F) && 
   13163              : #line 18047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13164              : (TARGET_AVX512VL)))
   13165              :         return 7769; /* lshrv4si3_mask */
   13166              :       if (!register_operand (operands[1], E_V4SImode)
   13167              :           || !nonimmediate_operand (operands[2], E_V4SImode)
   13168              :           || !(
   13169              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13170              : (TARGET_AVX512F) && 
   13171              : #line 30338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13172              : (TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
   13173              :         return -1;
   13174              :       return 9730; /* avx2_lshrvv4si_mask */
   13175              : 
   13176              :     case 4:
   13177              :       if (nonimmediate_operand (operands[1], E_V4DImode)
   13178              :           && nonmemory_operand (operands[2], E_DImode)
   13179              :           && (
   13180              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13181              : (TARGET_AVX512F) && 
   13182              : #line 18047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13183              : (TARGET_AVX512VL)))
   13184              :         return 7773; /* lshrv4di3_mask */
   13185              :       if (!register_operand (operands[1], E_V4DImode)
   13186              :           || !nonimmediate_operand (operands[2], E_V4DImode)
   13187              :           || !(
   13188              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13189              : (TARGET_AVX512F) && 
   13190              : #line 30338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13191              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   13192              :         return -1;
   13193              :       return 9738; /* avx2_lshrvv4di_mask */
   13194              : 
   13195              :     case 5:
   13196              :       if (nonimmediate_operand (operands[1], E_V2DImode)
   13197              :           && nonmemory_operand (operands[2], E_DImode)
   13198              :           && (
   13199              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13200              : (TARGET_AVX512F) && 
   13201              : #line 18047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13202              : (TARGET_AVX512VL)))
   13203              :         return 7777; /* lshrv2di3_mask */
   13204              :       if (!register_operand (operands[1], E_V2DImode)
   13205              :           || !nonimmediate_operand (operands[2], E_V2DImode)
   13206              :           || !(
   13207              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13208              : (TARGET_AVX512F) && 
   13209              : #line 30338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13210              : (TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
   13211              :         return -1;
   13212              :       return 9742; /* avx2_lshrvv2di_mask */
   13213              : 
   13214              :     case 6:
   13215              :       if (nonimmediate_operand (operands[1], E_V32HImode)
   13216              :           && nonmemory_operand (operands[2], E_DImode)
   13217              :           && (
   13218              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13219              : (TARGET_AVX512F) && (
   13220              : #line 18135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13221              : (TARGET_AVX512F) && 
   13222              : #line 773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13223              : (TARGET_AVX512BW))))
   13224              :         return 7797; /* lshrv32hi3_mask */
   13225              :       if (!register_operand (operands[1], E_V32HImode)
   13226              :           || !nonimmediate_operand (operands[2], E_V32HImode)
   13227              :           || !(
   13228              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13229              : (TARGET_AVX512F) && 
   13230              : #line 30349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13231              : (TARGET_AVX512BW)))
   13232              :         return -1;
   13233              :       return 9754; /* avx512bw_lshrvv32hi_mask */
   13234              : 
   13235              :     case 7:
   13236              :       if (nonimmediate_operand (operands[1], E_V16SImode)
   13237              :           && nonmemory_operand (operands[2], E_DImode)
   13238              :           && 
   13239              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13240              : (TARGET_AVX512F))
   13241              :         return 7801; /* lshrv16si3_mask */
   13242              :       if (!register_operand (operands[1], E_V16SImode)
   13243              :           || !nonimmediate_operand (operands[2], E_V16SImode)
   13244              :           || !(
   13245              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13246              : (TARGET_AVX512F) && (
   13247              : #line 30338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13248              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   13249              : #line 791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13250              : (TARGET_AVX512F))))
   13251              :         return -1;
   13252              :       return 9722; /* avx512f_lshrvv16si_mask */
   13253              : 
   13254              :     case 8:
   13255              :       if (nonimmediate_operand (operands[1], E_V8DImode)
   13256              :           && nonmemory_operand (operands[2], E_DImode)
   13257              :           && 
   13258              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13259              : (TARGET_AVX512F))
   13260              :         return 7805; /* lshrv8di3_mask */
   13261              :       if (!register_operand (operands[1], E_V8DImode)
   13262              :           || !nonimmediate_operand (operands[2], E_V8DImode)
   13263              :           || !(
   13264              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13265              : (TARGET_AVX512F) && (
   13266              : #line 30338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13267              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   13268              : #line 792 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13269              : (TARGET_AVX512F))))
   13270              :         return -1;
   13271              :       return 9734; /* avx512f_lshrvv8di_mask */
   13272              : 
   13273              :     default:
   13274              :       return -1;
   13275              :     }
   13276              : }
   13277              : 
   13278              :  int
   13279              : recog_199 (rtx x1 ATTRIBUTE_UNUSED,
   13280              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13281              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13282              : {
   13283              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13284              :   rtx x2, x3, x4, x5;
   13285              :   int res ATTRIBUTE_UNUSED;
   13286              :   x2 = XEXP (x1, 1);
   13287              :   switch (pattern157 (x2))
   13288              :     {
   13289              :     case 0:
   13290              :       if (!(
   13291              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13292              : (TARGET_AVX512F) && 
   13293              : #line 25029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13294              : (TARGET_AVX2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   13295              :         return -1;
   13296              :       return 8873; /* avx2_sign_extendv16qiv16hi2_mask */
   13297              : 
   13298              :     case 1:
   13299              :       if (!(
   13300              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13301              : (TARGET_AVX512F) && 
   13302              : #line 25084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13303              : (TARGET_AVX512BW)))
   13304              :         return -1;
   13305              :       return 8881; /* avx512bw_sign_extendv32qiv32hi2_mask */
   13306              : 
   13307              :     case 2:
   13308              :       if (!(
   13309              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13310              : (TARGET_AVX512F) && 
   13311              : #line 25156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13312              : (TARGET_SSE4_1 && TARGET_AVX512BW && TARGET_AVX512VL)))
   13313              :         return -1;
   13314              :       return 8893; /* *sse4_1_sign_extendv8qiv8hi2_mask_1 */
   13315              : 
   13316              :     case 3:
   13317              :       if (!
   13318              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13319              : (TARGET_AVX512F))
   13320              :         return -1;
   13321              :       return 8905; /* avx512f_sign_extendv16qiv16si2_mask */
   13322              : 
   13323              :     case 4:
   13324              :       if (!
   13325              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13326              : (TARGET_AVX512F))
   13327              :         return -1;
   13328              :       return 8935; /* avx512f_sign_extendv16hiv16si2_mask */
   13329              : 
   13330              :     case 5:
   13331              :       if (!(
   13332              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13333              : (TARGET_AVX512F) && 
   13334              : #line 25342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13335              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13336              :         return -1;
   13337              :       return 8913; /* *avx2_sign_extendv8qiv8si2_mask_1 */
   13338              : 
   13339              :     case 6:
   13340              :       if (!(
   13341              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13342              : (TARGET_AVX512F) && 
   13343              : #line 25566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13344              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13345              :         return -1;
   13346              :       return 8943; /* avx2_sign_extendv8hiv8si2_mask */
   13347              : 
   13348              :     case 7:
   13349              :       if (!(
   13350              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13351              : (TARGET_AVX512F) && 
   13352              : #line 25432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13353              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13354              :         return -1;
   13355              :       return 8925; /* *sse4_1_sign_extendv4qiv4si2_mask_1 */
   13356              : 
   13357              :     case 8:
   13358              :       if (!(
   13359              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13360              : (TARGET_AVX512F) && 
   13361              : #line 25638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13362              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13363              :         return -1;
   13364              :       return 8955; /* *sse4_1_sign_extendv4hiv4si2_mask_1 */
   13365              : 
   13366              :     case 9:
   13367              :       if (!
   13368              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13369              : (TARGET_AVX512F))
   13370              :         return -1;
   13371              :       return 8971; /* *avx512f_sign_extendv8qiv8di2_mask_1 */
   13372              : 
   13373              :     case 10:
   13374              :       if (!
   13375              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13376              : (TARGET_AVX512F))
   13377              :         return -1;
   13378              :       return 9002; /* avx512f_sign_extendv8hiv8di2_mask */
   13379              : 
   13380              :     case 11:
   13381              :       if (!
   13382              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13383              : (TARGET_AVX512F))
   13384              :         return -1;
   13385              :       return 9030; /* avx512f_sign_extendv8siv8di2_mask */
   13386              : 
   13387              :     case 12:
   13388              :       if (!(
   13389              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13390              : (TARGET_AVX512F) && 
   13391              : #line 25882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13392              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13393              :         return -1;
   13394              :       return 8983; /* *avx2_sign_extendv4qiv4di2_mask_1 */
   13395              : 
   13396              :     case 13:
   13397              :       if (!(
   13398              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13399              : (TARGET_AVX512F) && 
   13400              : #line 26059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13401              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13402              :         return -1;
   13403              :       return 9010; /* *avx2_sign_extendv4hiv4di2_mask_1 */
   13404              : 
   13405              :     case 14:
   13406              :       if (!(
   13407              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13408              : (TARGET_AVX512F) && 
   13409              : #line 26274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13410              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13411              :         return -1;
   13412              :       return 9036; /* avx2_sign_extendv4siv4di2_mask */
   13413              : 
   13414              :     case 15:
   13415              :       if (!(
   13416              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13417              : (TARGET_AVX512F) && 
   13418              : #line 25975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13419              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13420              :         return -1;
   13421              :       return 8995; /* *sse4_1_sign_extendv2qiv2di2_mask_1 */
   13422              : 
   13423              :     case 16:
   13424              :       if (!(
   13425              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13426              : (TARGET_AVX512F) && 
   13427              : #line 26144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13428              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13429              :         return -1;
   13430              :       return 9022; /* *sse4_1_sign_extendv2hiv2di2_mask_1 */
   13431              : 
   13432              :     case 17:
   13433              :       if (!(
   13434              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13435              : (TARGET_AVX512F) && 
   13436              : #line 26342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13437              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13438              :         return -1;
   13439              :       return 9046; /* *sse4_1_sign_extendv2siv2di2_mask_1 */
   13440              : 
   13441              :     case 18:
   13442              :       x3 = XEXP (x2, 0);
   13443              :       x4 = XEXP (x3, 0);
   13444              :       x5 = XEXP (x4, 0);
   13445              :       operands[1] = x5;
   13446              :       switch (pattern917 (x2))
   13447              :         {
   13448              :         case 0:
   13449              :           if ((
   13450              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13451              : (TARGET_AVX512F) && 
   13452              : #line 25143 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13453              : (TARGET_SSE4_1 && TARGET_AVX512BW && TARGET_AVX512VL)))
   13454              :             return 8889; /* sse4_1_sign_extendv8qiv8hi2_mask */
   13455              :           break;
   13456              : 
   13457              :         case 1:
   13458              :           if ((
   13459              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13460              : (TARGET_AVX512F) && 
   13461              : #line 25330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13462              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13463              :             return 8909; /* avx2_sign_extendv8qiv8si2_mask */
   13464              :           break;
   13465              : 
   13466              :         case 2:
   13467              :           if (
   13468              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13469              : (TARGET_AVX512F))
   13470              :             return 8967; /* avx512f_sign_extendv8qiv8di2_mask */
   13471              :           break;
   13472              : 
   13473              :         case 3:
   13474              :           if ((
   13475              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13476              : (TARGET_AVX512F) && 
   13477              : #line 25419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13478              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13479              :             return 8921; /* sse4_1_sign_extendv4qiv4si2_mask */
   13480              :           break;
   13481              : 
   13482              :         case 4:
   13483              :           if ((
   13484              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13485              : (TARGET_AVX512F) && 
   13486              : #line 25625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13487              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13488              :             return 8951; /* sse4_1_sign_extendv4hiv4si2_mask */
   13489              :           break;
   13490              : 
   13491              :         case 5:
   13492              :           if ((
   13493              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13494              : (TARGET_AVX512F) && 
   13495              : #line 25870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13496              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13497              :             return 8979; /* avx2_sign_extendv4qiv4di2_mask */
   13498              :           break;
   13499              : 
   13500              :         case 6:
   13501              :           if ((
   13502              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13503              : (TARGET_AVX512F) && 
   13504              : #line 26047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13505              : (TARGET_AVX2 && TARGET_AVX512VL)))
   13506              :             return 9006; /* avx2_sign_extendv4hiv4di2_mask */
   13507              :           break;
   13508              : 
   13509              :         case 7:
   13510              :           if ((
   13511              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13512              : (TARGET_AVX512F) && 
   13513              : #line 25962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13514              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13515              :             return 8991; /* sse4_1_sign_extendv2qiv2di2_mask */
   13516              :           break;
   13517              : 
   13518              :         case 8:
   13519              :           if ((
   13520              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13521              : (TARGET_AVX512F) && 
   13522              : #line 26131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13523              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13524              :             return 9018; /* sse4_1_sign_extendv2hiv2di2_mask */
   13525              :           break;
   13526              : 
   13527              :         case 9:
   13528              :           if ((
   13529              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13530              : (TARGET_AVX512F) && 
   13531              : #line 26329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13532              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   13533              :             return 9042; /* sse4_1_sign_extendv2siv2di2_mask */
   13534              :           break;
   13535              : 
   13536              :         default:
   13537              :           break;
   13538              :         }
   13539              :       if (GET_CODE (x5) != SUBREG
   13540              :           || maybe_ne (SUBREG_BYTE (x5), 0))
   13541              :         return -1;
   13542              :       switch (pattern416 (x2))
   13543              :         {
   13544              :         case 0:
   13545              :           if (!
   13546              : #line 25204 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13547              : (TARGET_AVX512VL && TARGET_AVX512BW
   13548              :    && ix86_pre_reload_split ()))
   13549              :             return -1;
   13550              :           return 8898; /* *avx512vl_sign_extendv8qiv8hi2_mask_2 */
   13551              : 
   13552              :         case 1:
   13553              :           if (!
   13554              : #line 25385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13555              : (TARGET_AVX512VL
   13556              :    && ix86_pre_reload_split ()))
   13557              :             return -1;
   13558              :           return 8918; /* *avx512vl_sign_extendv8qiv8si2_mask_2 */
   13559              : 
   13560              :         case 2:
   13561              :           if (!
   13562              : #line 25837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13563              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   13564              :             return -1;
   13565              :           return 8976; /* *avx512f_sign_extendv8qiv8di2_mask_2 */
   13566              : 
   13567              :         case 3:
   13568              :           if (!
   13569              : #line 25679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13570              : (TARGET_AVX512VL
   13571              :    && ix86_pre_reload_split ()))
   13572              :             return -1;
   13573              :           return 8960; /* *avx512vl_sign_extendv4hiv4si2_mask_2 */
   13574              : 
   13575              :         case 4:
   13576              :           if (!
   13577              : #line 26098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13578              : (TARGET_AVX512VL
   13579              :    && ix86_pre_reload_split ()))
   13580              :             return -1;
   13581              :           return 9015; /* *avx512vl_sign_extendv4hiv4di2_mask_2 */
   13582              : 
   13583              :         case 5:
   13584              :           if (!
   13585              : #line 26381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13586              : (TARGET_AVX512VL
   13587              :    && ix86_pre_reload_split ()))
   13588              :             return -1;
   13589              :           return 9051; /* *avx512vl_sign_extendv2siv2di2_mask_2 */
   13590              : 
   13591              :         case 6:
   13592              :           if ((
   13593              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13594              : (TARGET_AVX512F) && 
   13595              : #line 25456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13596              : (TARGET_SSE4_1 && TARGET_AVX512VL
   13597              :    && ix86_pre_reload_split ())))
   13598              :             return 8929; /* *sse4_1_sign_extendv4qiv4si2_2 */
   13599              :           if (!
   13600              : #line 25481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13601              : (TARGET_AVX512VL
   13602              :    && ix86_pre_reload_split ()))
   13603              :             return -1;
   13604              :           return 8932; /* *avx512vl_sign_extendv4qiv4si2_mask_2 */
   13605              : 
   13606              :         case 7:
   13607              :           if (!
   13608              : #line 25929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13609              : (TARGET_AVX512VL
   13610              :    && ix86_pre_reload_split ()))
   13611              :             return -1;
   13612              :           return 8988; /* *avx512vl_sign_extendv4qiv4di2_mask_2 */
   13613              : 
   13614              :         case 8:
   13615              :           if (!
   13616              : #line 26191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13617              : (TARGET_AVX512VL
   13618              :    && ix86_pre_reload_split ()))
   13619              :             return -1;
   13620              :           return 9027; /* *avx512vl_sign_extendv2hiv2di2_mask_2 */
   13621              : 
   13622              :         default:
   13623              :           return -1;
   13624              :         }
   13625              : 
   13626              :     default:
   13627              :       return -1;
   13628              :     }
   13629              : }
   13630              : 
   13631              :  int
   13632              : recog_208 (rtx x1 ATTRIBUTE_UNUSED,
   13633              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13634              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13635              : {
   13636              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13637              :   rtx x2;
   13638              :   int res ATTRIBUTE_UNUSED;
   13639              :   x2 = XEXP (x1, 1);
   13640              :   switch (pattern144 (x2))
   13641              :     {
   13642              :     case 0:
   13643              :       if (!(
   13644              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13645              : (TARGET_AVX512F) && (
   13646              : #line 8291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13647              : (TARGET_AVX512FP16) && 
   13648              : #line 683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13649              : (TARGET_AVX512VL))))
   13650              :         return -1;
   13651              :       return 4672; /* avx512fp16_fix_truncv8hi2_mask */
   13652              : 
   13653              :     case 1:
   13654              :       if (!(
   13655              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13656              : (TARGET_AVX512F) && (
   13657              : #line 8291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13658              : (TARGET_AVX512FP16) && 
   13659              : #line 683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13660              : (TARGET_AVX512VL))))
   13661              :         return -1;
   13662              :       return 4680; /* avx512fp16_fix_truncv16hi2_mask */
   13663              : 
   13664              :     case 2:
   13665              :       if (!(
   13666              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13667              : (TARGET_AVX512F) && 
   13668              : #line 8291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13669              : (TARGET_AVX512FP16)))
   13670              :         return -1;
   13671              :       return 4688; /* avx512fp16_fix_truncv32hi2_mask */
   13672              : 
   13673              :     case 3:
   13674              :       switch (GET_MODE (operands[1]))
   13675              :         {
   13676              :         case E_V8HFmode:
   13677              :           if (!vector_operand (operands[1], E_V8HFmode)
   13678              :               || !(
   13679              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13680              : (TARGET_AVX512F) && (
   13681              : #line 8291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13682              : (TARGET_AVX512FP16) && 
   13683              : #line 684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13684              : (TARGET_AVX512VL))))
   13685              :             return -1;
   13686              :           return 4696; /* avx512fp16_fix_truncv8si2_mask */
   13687              : 
   13688              :         case E_V8SFmode:
   13689              :           if (!nonimmediate_operand (operands[1], E_V8SFmode)
   13690              :               || !(
   13691              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13692              : (TARGET_AVX512F) && 
   13693              : #line 9309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13694              : (TARGET_AVX && TARGET_AVX512VL)))
   13695              :             return -1;
   13696              :           return 4958; /* fix_truncv8sfv8si2_mask */
   13697              : 
   13698              :         case E_V8DFmode:
   13699              :           if (!vector_operand (operands[1], E_V8DFmode)
   13700              :               || !
   13701              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13702              : (TARGET_AVX512F))
   13703              :             return -1;
   13704              :           return 5117; /* fix_truncv8dfv8si2_mask */
   13705              : 
   13706              :         default:
   13707              :           return -1;
   13708              :         }
   13709              : 
   13710              :     case 4:
   13711              :       if (!(
   13712              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13713              : (TARGET_AVX512F) && 
   13714              : #line 8291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13715              : (TARGET_AVX512FP16)))
   13716              :         return -1;
   13717              :       return 4704; /* avx512fp16_fix_truncv16si2_mask */
   13718              : 
   13719              :     case 5:
   13720              :       if (!
   13721              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13722              : (TARGET_AVX512F))
   13723              :         return -1;
   13724              :       return 4949; /* fix_truncv16sfv16si2_mask */
   13725              : 
   13726              :     case 6:
   13727              :       if (!(
   13728              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13729              : (TARGET_AVX512F) && 
   13730              : #line 8291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13731              : (TARGET_AVX512FP16)))
   13732              :         return -1;
   13733              :       return 4712; /* avx512fp16_fix_truncv8di2_mask */
   13734              : 
   13735              :     case 7:
   13736              :       if (!(
   13737              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13738              : (TARGET_AVX512F) && 
   13739              : #line 10373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13740              : (TARGET_AVX512DQ && 1)))
   13741              :         return -1;
   13742              :       return 5154; /* fix_truncv8dfv8di2_mask */
   13743              : 
   13744              :     case 8:
   13745              :       if (!(
   13746              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13747              : (TARGET_AVX512F) && 
   13748              : #line 10416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13749              : (TARGET_AVX512DQ && 1)))
   13750              :         return -1;
   13751              :       return 5198; /* fix_truncv8sfv8di2_mask */
   13752              : 
   13753              :     case 9:
   13754              :       switch (GET_MODE (operands[1]))
   13755              :         {
   13756              :         case E_V4HFmode:
   13757              :           if (!memory_operand (operands[1], E_V4HFmode)
   13758              :               || !(
   13759              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13760              : (TARGET_AVX512F) && 
   13761              : #line 8341 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13762              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13763              :             return -1;
   13764              :           return 4735; /* *avx512fp16_fix_truncv4si2_load_mask */
   13765              : 
   13766              :         case E_V4SFmode:
   13767              :           if (!vector_operand (operands[1], E_V4SFmode)
   13768              :               || !(
   13769              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13770              : (TARGET_AVX512F) && 
   13771              : #line 9339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13772              : (TARGET_SSE2 && TARGET_AVX512VL)))
   13773              :             return -1;
   13774              :           return 4962; /* fix_truncv4sfv4si2_mask */
   13775              : 
   13776              :         case E_V4DFmode:
   13777              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   13778              :               || !(
   13779              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13780              : (TARGET_AVX512F) && 
   13781              : #line 10333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13782              : (TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F))))
   13783              :             return -1;
   13784              :           return 5131; /* fix_truncv4dfv4si2_mask */
   13785              : 
   13786              :         default:
   13787              :           return -1;
   13788              :         }
   13789              : 
   13790              :     case 10:
   13791              :       if (!(
   13792              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13793              : (TARGET_AVX512F) && 
   13794              : #line 8341 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13795              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13796              :         return -1;
   13797              :       return 4739; /* *avx512fp16_fix_truncv4di2_load_mask */
   13798              : 
   13799              :     case 11:
   13800              :       if (!(
   13801              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13802              : (TARGET_AVX512F) && (
   13803              : #line 10373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13804              : (TARGET_AVX512DQ && 1) && 
   13805              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13806              : (TARGET_AVX512VL))))
   13807              :         return -1;
   13808              :       return 5161; /* fix_truncv4dfv4di2_mask */
   13809              : 
   13810              :     case 12:
   13811              :       if (!(
   13812              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13813              : (TARGET_AVX512F) && (
   13814              : #line 10416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13815              : (TARGET_AVX512DQ && 1) && 
   13816              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13817              : (TARGET_AVX512VL))))
   13818              :         return -1;
   13819              :       return 5205; /* fix_truncv4sfv4di2_mask */
   13820              : 
   13821              :     case 13:
   13822              :       if (!(
   13823              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13824              : (TARGET_AVX512F) && 
   13825              : #line 8391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13826              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13827              :         return -1;
   13828              :       return 4751; /* *avx512fp16_fix_truncv2di2_load_mask */
   13829              : 
   13830              :     case 14:
   13831              :       if (!(
   13832              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13833              : (TARGET_AVX512F) && (
   13834              : #line 10373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13835              : (TARGET_AVX512DQ && 1) && 
   13836              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13837              : (TARGET_AVX512VL))))
   13838              :         return -1;
   13839              :       return 5165; /* fix_truncv2dfv2di2_mask */
   13840              : 
   13841              :     case 15:
   13842              :       if (!(
   13843              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13844              : (TARGET_AVX512F) && 
   13845              : #line 8331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13846              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13847              :         return -1;
   13848              :       return 4727; /* avx512fp16_fix_truncv4si2_mask */
   13849              : 
   13850              :     case 16:
   13851              :       if (!(
   13852              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13853              : (TARGET_AVX512F) && 
   13854              : #line 8331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13855              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13856              :         return -1;
   13857              :       return 4731; /* avx512fp16_fix_truncv4di2_mask */
   13858              : 
   13859              :     case 17:
   13860              :       if (!(
   13861              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13862              : (TARGET_AVX512F) && 
   13863              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13864              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13865              :         return -1;
   13866              :       return 4747; /* avx512fp16_fix_truncv2di2_mask */
   13867              : 
   13868              :     case 18:
   13869              :       if (!(
   13870              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13871              : (TARGET_AVX512F) && 
   13872              : #line 10439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13873              : (TARGET_AVX512DQ && TARGET_AVX512VL)))
   13874              :         return -1;
   13875              :       return 5213; /* avx512dq_fix_truncv2sfv2di2_mask */
   13876              : 
   13877              :     default:
   13878              :       return -1;
   13879              :     }
   13880              : }
   13881              : 
   13882              :  int
   13883              : recog_219 (rtx x1 ATTRIBUTE_UNUSED,
   13884              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13885              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13886              : {
   13887              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13888              :   rtx x2, x3;
   13889              :   int res ATTRIBUTE_UNUSED;
   13890              :   x2 = XEXP (x1, 1);
   13891              :   x3 = XVECEXP (x2, 0, 0);
   13892              :   operands[1] = x3;
   13893              :   switch (GET_MODE (operands[0]))
   13894              :     {
   13895              :     case E_V8SFmode:
   13896              :       if (!register_operand (operands[0], E_V8SFmode)
   13897              :           || GET_MODE (x2) != E_V8SFmode
   13898              :           || !vector_operand (operands[1], E_V8SFmode)
   13899              :           || !(
   13900              : #line 3173 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13901              : (TARGET_SSE) && 
   13902              : #line 444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13903              : (TARGET_AVX)))
   13904              :         return -1;
   13905              :       return 3027; /* avx_rsqrtv8sf2 */
   13906              : 
   13907              :     case E_V4SFmode:
   13908              :       if (!register_operand (operands[0], E_V4SFmode)
   13909              :           || GET_MODE (x2) != E_V4SFmode
   13910              :           || !vector_operand (operands[1], E_V4SFmode)
   13911              :           || !
   13912              : #line 3173 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13913              : (TARGET_SSE))
   13914              :         return -1;
   13915              :       return 3028; /* sse_rsqrtv4sf2 */
   13916              : 
   13917              :     case E_V32HFmode:
   13918              :       if (!register_operand (operands[0], E_V32HFmode)
   13919              :           || GET_MODE (x2) != E_V32HFmode
   13920              :           || !vector_operand (operands[1], E_V32HFmode)
   13921              :           || !
   13922              : #line 3185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13923              : (TARGET_AVX512FP16))
   13924              :         return -1;
   13925              :       return 3029; /* avx512fp16_rsqrtv32hf2 */
   13926              : 
   13927              :     case E_V16HFmode:
   13928              :       if (!register_operand (operands[0], E_V16HFmode)
   13929              :           || GET_MODE (x2) != E_V16HFmode
   13930              :           || !vector_operand (operands[1], E_V16HFmode)
   13931              :           || !(
   13932              : #line 3185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13933              : (TARGET_AVX512FP16) && 
   13934              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13935              : (TARGET_AVX512VL)))
   13936              :         return -1;
   13937              :       return 3031; /* avx512fp16_rsqrtv16hf2 */
   13938              : 
   13939              :     case E_V8HFmode:
   13940              :       if (!register_operand (operands[0], E_V8HFmode)
   13941              :           || GET_MODE (x2) != E_V8HFmode
   13942              :           || !vector_operand (operands[1], E_V8HFmode)
   13943              :           || !(
   13944              : #line 3185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13945              : (TARGET_AVX512FP16) && 
   13946              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13947              : (TARGET_AVX512VL)))
   13948              :         return -1;
   13949              :       return 3033; /* avx512fp16_rsqrtv8hf2 */
   13950              : 
   13951              :     case E_V32BFmode:
   13952              :       if (!register_operand (operands[0], E_V32BFmode)
   13953              :           || GET_MODE (x2) != E_V32BFmode
   13954              :           || !nonimmediate_operand (operands[1], E_V32BFmode)
   13955              :           || !
   13956              : #line 33833 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13957              : (TARGET_AVX10_2))
   13958              :         return -1;
   13959              :       return 10824; /* avx10_2_rsqrtbf16_v32bf */
   13960              : 
   13961              :     case E_V16BFmode:
   13962              :       if (!register_operand (operands[0], E_V16BFmode)
   13963              :           || GET_MODE (x2) != E_V16BFmode
   13964              :           || !nonimmediate_operand (operands[1], E_V16BFmode)
   13965              :           || !
   13966              : #line 33833 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13967              : (TARGET_AVX10_2))
   13968              :         return -1;
   13969              :       return 10826; /* avx10_2_rsqrtbf16_v16bf */
   13970              : 
   13971              :     case E_V8BFmode:
   13972              :       if (!register_operand (operands[0], E_V8BFmode)
   13973              :           || GET_MODE (x2) != E_V8BFmode
   13974              :           || !nonimmediate_operand (operands[1], E_V8BFmode)
   13975              :           || !
   13976              : #line 33833 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13977              : (TARGET_AVX10_2))
   13978              :         return -1;
   13979              :       return 10828; /* avx10_2_rsqrtbf16_v8bf */
   13980              : 
   13981              :     default:
   13982              :       return -1;
   13983              :     }
   13984              : }
   13985              : 
   13986              :  int
   13987              : recog_225 (rtx x1 ATTRIBUTE_UNUSED,
   13988              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13989              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13990              : {
   13991              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13992              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13993              :   int res ATTRIBUTE_UNUSED;
   13994              :   x2 = XEXP (x1, 1);
   13995              :   x3 = XVECEXP (x2, 0, 1);
   13996              :   if (!const_4_or_8_to_11_operand (x3, E_SImode))
   13997              :     return -1;
   13998              :   x4 = XVECEXP (x2, 0, 0);
   13999              :   x5 = XEXP (x4, 0);
   14000              :   x6 = XVECEXP (x5, 0, 2);
   14001              :   switch (GET_CODE (x6))
   14002              :     {
   14003              :     case REG:
   14004              :     case SUBREG:
   14005              :     case MEM:
   14006              :       operands[3] = x6;
   14007              :       x7 = XEXP (x4, 1);
   14008              :       switch (GET_CODE (x7))
   14009              :         {
   14010              :         case CONST_INT:
   14011              :         case CONST_DOUBLE:
   14012              :         case CONST_VECTOR:
   14013              :           operands[4] = x7;
   14014              :           x8 = XEXP (x4, 2);
   14015              :           operands[5] = x8;
   14016              :           operands[6] = x3;
   14017              :           switch (GET_MODE (operands[0]))
   14018              :             {
   14019              :             case E_V32HFmode:
   14020              :               if (pattern1677 (x2, 
   14021              : E_SImode, 
   14022              : E_V32HFmode) != 0
   14023              :                   || !(
   14024              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14025              : (TARGET_AVX512F) && (
   14026              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14027              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14028              :                                                               || V32HFmode == V8DFmode
   14029              :                                                               || V32HFmode == V8DImode
   14030              :                                                               || V32HFmode == V16SImode
   14031              :                                                               || V32HFmode == V32HFmode)) && 
   14032              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14033              : (TARGET_AVX512FP16))))
   14034              :                 return -1;
   14035              :               return 4149; /* fma_fmaddsub_v32hf_maskz_1_round */
   14036              : 
   14037              :             case E_V16SFmode:
   14038              :               if (pattern1677 (x2, 
   14039              : E_HImode, 
   14040              : E_V16SFmode) != 0
   14041              :                   || !(
   14042              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14043              : (TARGET_AVX512F) && 
   14044              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14045              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14046              :                                                               || V16SFmode == V8DFmode
   14047              :                                                               || V16SFmode == V8DImode
   14048              :                                                               || V16SFmode == V16SImode
   14049              :                                                               || V16SFmode == V32HFmode))))
   14050              :                 return -1;
   14051              :               return 4157; /* fma_fmaddsub_v16sf_maskz_1_round */
   14052              : 
   14053              :             case E_V8DFmode:
   14054              :               if (pattern1677 (x2, 
   14055              : E_QImode, 
   14056              : E_V8DFmode) != 0
   14057              :                   || !(
   14058              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14059              : (TARGET_AVX512F) && 
   14060              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14061              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14062              :                                                               || V8DFmode == V8DFmode
   14063              :                                                               || V8DFmode == V8DImode
   14064              :                                                               || V8DFmode == V16SImode
   14065              :                                                               || V8DFmode == V32HFmode))))
   14066              :                 return -1;
   14067              :               return 4165; /* fma_fmaddsub_v8df_maskz_1_round */
   14068              : 
   14069              :             default:
   14070              :               return -1;
   14071              :             }
   14072              : 
   14073              :         case REG:
   14074              :         case SUBREG:
   14075              :         case MEM:
   14076              :           x8 = XEXP (x4, 2);
   14077              :           operands[4] = x8;
   14078              :           operands[5] = x3;
   14079              :           switch (GET_MODE (operands[0]))
   14080              :             {
   14081              :             case E_V32HFmode:
   14082              :               if (pattern1612 (x2, 
   14083              : E_V32HFmode, 
   14084              : E_SImode) != 0)
   14085              :                 return -1;
   14086              :               if (register_operand (operands[1], E_V32HFmode)
   14087              :                   && register_operand (operands[3], E_V32HFmode)
   14088              :                   && rtx_equal_p (x7, operands[1])
   14089              :                   && (
   14090              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14091              : (TARGET_AVX512F) && (
   14092              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14093              : (TARGET_AVX512F) && 
   14094              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14095              : (TARGET_AVX512FP16))))
   14096              :                 return 4171; /* avx512bw_fmaddsub_v32hf_mask_round */
   14097              :               if (!nonimmediate_operand (operands[1], E_V32HFmode)
   14098              :                   || !nonimmediate_operand (operands[3], E_V32HFmode)
   14099              :                   || !rtx_equal_p (x7, operands[3])
   14100              :                   || !(
   14101              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14102              : (TARGET_AVX512F) && (
   14103              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14104              : (TARGET_AVX512F) && 
   14105              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14106              : (TARGET_AVX512FP16))))
   14107              :                 return -1;
   14108              :               return 4189; /* avx512bw_fmaddsub_v32hf_mask3_round */
   14109              : 
   14110              :             case E_V16HFmode:
   14111              :               if (pattern1612 (x2, 
   14112              : E_V16HFmode, 
   14113              : E_HImode) != 0)
   14114              :                 return -1;
   14115              :               if (register_operand (operands[1], E_V16HFmode)
   14116              :                   && register_operand (operands[3], E_V16HFmode)
   14117              :                   && rtx_equal_p (x7, operands[1])
   14118              :                   && (
   14119              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14120              : (TARGET_AVX512F) && (
   14121              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14122              : (TARGET_AVX512F) && 
   14123              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14124              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14125              :                 return 4173; /* avx512vl_fmaddsub_v16hf_mask_round */
   14126              :               if (!nonimmediate_operand (operands[1], E_V16HFmode)
   14127              :                   || !nonimmediate_operand (operands[3], E_V16HFmode)
   14128              :                   || !rtx_equal_p (x7, operands[3])
   14129              :                   || !(
   14130              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14131              : (TARGET_AVX512F) && (
   14132              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14133              : (TARGET_AVX512F) && 
   14134              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14135              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14136              :                 return -1;
   14137              :               return 4191; /* avx512vl_fmaddsub_v16hf_mask3_round */
   14138              : 
   14139              :             case E_V8HFmode:
   14140              :               if (pattern1612 (x2, 
   14141              : E_V8HFmode, 
   14142              : E_QImode) != 0)
   14143              :                 return -1;
   14144              :               if (register_operand (operands[1], E_V8HFmode)
   14145              :                   && register_operand (operands[3], E_V8HFmode)
   14146              :                   && rtx_equal_p (x7, operands[1])
   14147              :                   && (
   14148              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14149              : (TARGET_AVX512F) && (
   14150              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14151              : (TARGET_AVX512F) && 
   14152              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14153              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14154              :                 return 4175; /* avx512fp16_fmaddsub_v8hf_mask_round */
   14155              :               if (!nonimmediate_operand (operands[1], E_V8HFmode)
   14156              :                   || !nonimmediate_operand (operands[3], E_V8HFmode)
   14157              :                   || !rtx_equal_p (x7, operands[3])
   14158              :                   || !(
   14159              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14160              : (TARGET_AVX512F) && (
   14161              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14162              : (TARGET_AVX512F) && 
   14163              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14164              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14165              :                 return -1;
   14166              :               return 4193; /* avx512fp16_fmaddsub_v8hf_mask3_round */
   14167              : 
   14168              :             case E_V16SFmode:
   14169              :               if (pattern1612 (x2, 
   14170              : E_V16SFmode, 
   14171              : E_HImode) != 0)
   14172              :                 return -1;
   14173              :               if (register_operand (operands[1], E_V16SFmode)
   14174              :                   && register_operand (operands[3], E_V16SFmode)
   14175              :                   && rtx_equal_p (x7, operands[1])
   14176              :                   && 
   14177              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14178              : (TARGET_AVX512F))
   14179              :                 return 4177; /* avx512f_fmaddsub_v16sf_mask_round */
   14180              :               if (!nonimmediate_operand (operands[1], E_V16SFmode)
   14181              :                   || !nonimmediate_operand (operands[3], E_V16SFmode)
   14182              :                   || !rtx_equal_p (x7, operands[3])
   14183              :                   || !
   14184              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14185              : (TARGET_AVX512F))
   14186              :                 return -1;
   14187              :               return 4195; /* avx512f_fmaddsub_v16sf_mask3_round */
   14188              : 
   14189              :             case E_V8SFmode:
   14190              :               if (pattern1612 (x2, 
   14191              : E_V8SFmode, 
   14192              : E_QImode) != 0)
   14193              :                 return -1;
   14194              :               if (register_operand (operands[1], E_V8SFmode)
   14195              :                   && register_operand (operands[3], E_V8SFmode)
   14196              :                   && rtx_equal_p (x7, operands[1])
   14197              :                   && (
   14198              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14199              : (TARGET_AVX512F) && (
   14200              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14201              : (TARGET_AVX512F) && 
   14202              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14203              : (TARGET_AVX512VL))))
   14204              :                 return 4179; /* avx512vl_fmaddsub_v8sf_mask_round */
   14205              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   14206              :                   || !nonimmediate_operand (operands[3], E_V8SFmode)
   14207              :                   || !rtx_equal_p (x7, operands[3])
   14208              :                   || !(
   14209              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14210              : (TARGET_AVX512F) && (
   14211              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14212              : (TARGET_AVX512F) && 
   14213              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14214              : (TARGET_AVX512VL))))
   14215              :                 return -1;
   14216              :               return 4197; /* avx512vl_fmaddsub_v8sf_mask3_round */
   14217              : 
   14218              :             case E_V4SFmode:
   14219              :               if (pattern1612 (x2, 
   14220              : E_V4SFmode, 
   14221              : E_QImode) != 0)
   14222              :                 return -1;
   14223              :               if (register_operand (operands[1], E_V4SFmode)
   14224              :                   && register_operand (operands[3], E_V4SFmode)
   14225              :                   && rtx_equal_p (x7, operands[1])
   14226              :                   && (
   14227              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14228              : (TARGET_AVX512F) && (
   14229              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14230              : (TARGET_AVX512F) && 
   14231              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14232              : (TARGET_AVX512VL))))
   14233              :                 return 4181; /* avx512vl_fmaddsub_v4sf_mask_round */
   14234              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   14235              :                   || !nonimmediate_operand (operands[3], E_V4SFmode)
   14236              :                   || !rtx_equal_p (x7, operands[3])
   14237              :                   || !(
   14238              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14239              : (TARGET_AVX512F) && (
   14240              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14241              : (TARGET_AVX512F) && 
   14242              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14243              : (TARGET_AVX512VL))))
   14244              :                 return -1;
   14245              :               return 4199; /* avx512vl_fmaddsub_v4sf_mask3_round */
   14246              : 
   14247              :             case E_V8DFmode:
   14248              :               if (pattern1612 (x2, 
   14249              : E_V8DFmode, 
   14250              : E_QImode) != 0)
   14251              :                 return -1;
   14252              :               if (register_operand (operands[1], E_V8DFmode)
   14253              :                   && register_operand (operands[3], E_V8DFmode)
   14254              :                   && rtx_equal_p (x7, operands[1])
   14255              :                   && 
   14256              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14257              : (TARGET_AVX512F))
   14258              :                 return 4183; /* avx512f_fmaddsub_v8df_mask_round */
   14259              :               if (!nonimmediate_operand (operands[1], E_V8DFmode)
   14260              :                   || !nonimmediate_operand (operands[3], E_V8DFmode)
   14261              :                   || !rtx_equal_p (x7, operands[3])
   14262              :                   || !
   14263              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14264              : (TARGET_AVX512F))
   14265              :                 return -1;
   14266              :               return 4201; /* avx512f_fmaddsub_v8df_mask3_round */
   14267              : 
   14268              :             case E_V4DFmode:
   14269              :               if (pattern1612 (x2, 
   14270              : E_V4DFmode, 
   14271              : E_QImode) != 0)
   14272              :                 return -1;
   14273              :               if (register_operand (operands[1], E_V4DFmode)
   14274              :                   && register_operand (operands[3], E_V4DFmode)
   14275              :                   && rtx_equal_p (x7, operands[1])
   14276              :                   && (
   14277              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14278              : (TARGET_AVX512F) && (
   14279              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14280              : (TARGET_AVX512F) && 
   14281              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14282              : (TARGET_AVX512VL))))
   14283              :                 return 4185; /* avx512vl_fmaddsub_v4df_mask_round */
   14284              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   14285              :                   || !nonimmediate_operand (operands[3], E_V4DFmode)
   14286              :                   || !rtx_equal_p (x7, operands[3])
   14287              :                   || !(
   14288              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14289              : (TARGET_AVX512F) && (
   14290              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14291              : (TARGET_AVX512F) && 
   14292              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14293              : (TARGET_AVX512VL))))
   14294              :                 return -1;
   14295              :               return 4203; /* avx512vl_fmaddsub_v4df_mask3_round */
   14296              : 
   14297              :             case E_V2DFmode:
   14298              :               if (pattern1612 (x2, 
   14299              : E_V2DFmode, 
   14300              : E_QImode) != 0)
   14301              :                 return -1;
   14302              :               if (register_operand (operands[1], E_V2DFmode)
   14303              :                   && register_operand (operands[3], E_V2DFmode)
   14304              :                   && rtx_equal_p (x7, operands[1])
   14305              :                   && (
   14306              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14307              : (TARGET_AVX512F) && (
   14308              : #line 6840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14309              : (TARGET_AVX512F) && 
   14310              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14311              : (TARGET_AVX512VL))))
   14312              :                 return 4187; /* avx512vl_fmaddsub_v2df_mask_round */
   14313              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   14314              :                   || !nonimmediate_operand (operands[3], E_V2DFmode)
   14315              :                   || !rtx_equal_p (x7, operands[3])
   14316              :                   || !(
   14317              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14318              : (TARGET_AVX512F) && (
   14319              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14320              : (TARGET_AVX512F) && 
   14321              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14322              : (TARGET_AVX512VL))))
   14323              :                 return -1;
   14324              :               return 4205; /* avx512vl_fmaddsub_v2df_mask3_round */
   14325              : 
   14326              :             default:
   14327              :               return -1;
   14328              :             }
   14329              : 
   14330              :         default:
   14331              :           return -1;
   14332              :         }
   14333              : 
   14334              :     case NEG:
   14335              :       x9 = XEXP (x6, 0);
   14336              :       operands[3] = x9;
   14337              :       x7 = XEXP (x4, 1);
   14338              :       switch (GET_CODE (x7))
   14339              :         {
   14340              :         case CONST_INT:
   14341              :         case CONST_DOUBLE:
   14342              :         case CONST_VECTOR:
   14343              :           operands[4] = x7;
   14344              :           x8 = XEXP (x4, 2);
   14345              :           operands[5] = x8;
   14346              :           operands[6] = x3;
   14347              :           switch (GET_MODE (operands[0]))
   14348              :             {
   14349              :             case E_V32HFmode:
   14350              :               if (pattern1678 (x2, 
   14351              : E_SImode, 
   14352              : E_V32HFmode) != 0
   14353              :                   || !(
   14354              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14355              : (TARGET_AVX512F) && (
   14356              : #line 6891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14357              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14358              :                                                               || V32HFmode == V8DFmode
   14359              :                                                               || V32HFmode == V8DImode
   14360              :                                                               || V32HFmode == V16SImode
   14361              :                                                               || V32HFmode == V32HFmode)) && 
   14362              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14363              : (TARGET_AVX512FP16))))
   14364              :                 return -1;
   14365              :               return 4213; /* fma_fmsubadd_v32hf_maskz_1_round */
   14366              : 
   14367              :             case E_V16SFmode:
   14368              :               if (pattern1678 (x2, 
   14369              : E_HImode, 
   14370              : E_V16SFmode) != 0
   14371              :                   || !(
   14372              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14373              : (TARGET_AVX512F) && 
   14374              : #line 6891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14375              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14376              :                                                               || V16SFmode == V8DFmode
   14377              :                                                               || V16SFmode == V8DImode
   14378              :                                                               || V16SFmode == V16SImode
   14379              :                                                               || V16SFmode == V32HFmode))))
   14380              :                 return -1;
   14381              :               return 4221; /* fma_fmsubadd_v16sf_maskz_1_round */
   14382              : 
   14383              :             case E_V8DFmode:
   14384              :               if (pattern1678 (x2, 
   14385              : E_QImode, 
   14386              : E_V8DFmode) != 0
   14387              :                   || !(
   14388              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14389              : (TARGET_AVX512F) && 
   14390              : #line 6891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14391              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14392              :                                                               || V8DFmode == V8DFmode
   14393              :                                                               || V8DFmode == V8DImode
   14394              :                                                               || V8DFmode == V16SImode
   14395              :                                                               || V8DFmode == V32HFmode))))
   14396              :                 return -1;
   14397              :               return 4229; /* fma_fmsubadd_v8df_maskz_1_round */
   14398              : 
   14399              :             default:
   14400              :               return -1;
   14401              :             }
   14402              : 
   14403              :         case REG:
   14404              :         case SUBREG:
   14405              :         case MEM:
   14406              :           x8 = XEXP (x4, 2);
   14407              :           operands[4] = x8;
   14408              :           operands[5] = x3;
   14409              :           switch (GET_MODE (operands[0]))
   14410              :             {
   14411              :             case E_V32HFmode:
   14412              :               if (pattern1613 (x2, 
   14413              : E_V32HFmode, 
   14414              : E_SImode) != 0)
   14415              :                 return -1;
   14416              :               if (register_operand (operands[3], E_V32HFmode)
   14417              :                   && rtx_equal_p (x7, operands[1])
   14418              :                   && (
   14419              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14420              : (TARGET_AVX512F) && (
   14421              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14422              : (TARGET_AVX512F) && 
   14423              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14424              : (TARGET_AVX512FP16))))
   14425              :                 return 4235; /* avx512bw_fmsubadd_v32hf_mask_round */
   14426              :               if (!nonimmediate_operand (operands[3], E_V32HFmode)
   14427              :                   || !rtx_equal_p (x7, operands[3])
   14428              :                   || !(
   14429              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14430              : (TARGET_AVX512F) && (
   14431              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14432              : (TARGET_AVX512F) && 
   14433              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14434              : (TARGET_AVX512FP16))))
   14435              :                 return -1;
   14436              :               return 4253; /* avx512bw_fmsubadd_v32hf_mask3_round */
   14437              : 
   14438              :             case E_V16HFmode:
   14439              :               if (pattern1613 (x2, 
   14440              : E_V16HFmode, 
   14441              : E_HImode) != 0)
   14442              :                 return -1;
   14443              :               if (register_operand (operands[3], E_V16HFmode)
   14444              :                   && rtx_equal_p (x7, operands[1])
   14445              :                   && (
   14446              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14447              : (TARGET_AVX512F) && (
   14448              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14449              : (TARGET_AVX512F) && 
   14450              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14451              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14452              :                 return 4237; /* avx512vl_fmsubadd_v16hf_mask_round */
   14453              :               if (!nonimmediate_operand (operands[3], E_V16HFmode)
   14454              :                   || !rtx_equal_p (x7, operands[3])
   14455              :                   || !(
   14456              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14457              : (TARGET_AVX512F) && (
   14458              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14459              : (TARGET_AVX512F) && 
   14460              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14461              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14462              :                 return -1;
   14463              :               return 4255; /* avx512vl_fmsubadd_v16hf_mask3_round */
   14464              : 
   14465              :             case E_V8HFmode:
   14466              :               if (pattern1613 (x2, 
   14467              : E_V8HFmode, 
   14468              : E_QImode) != 0)
   14469              :                 return -1;
   14470              :               if (register_operand (operands[3], E_V8HFmode)
   14471              :                   && rtx_equal_p (x7, operands[1])
   14472              :                   && (
   14473              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14474              : (TARGET_AVX512F) && (
   14475              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14476              : (TARGET_AVX512F) && 
   14477              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14478              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14479              :                 return 4239; /* avx512fp16_fmsubadd_v8hf_mask_round */
   14480              :               if (!nonimmediate_operand (operands[3], E_V8HFmode)
   14481              :                   || !rtx_equal_p (x7, operands[3])
   14482              :                   || !(
   14483              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14484              : (TARGET_AVX512F) && (
   14485              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14486              : (TARGET_AVX512F) && 
   14487              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14488              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14489              :                 return -1;
   14490              :               return 4257; /* avx512fp16_fmsubadd_v8hf_mask3_round */
   14491              : 
   14492              :             case E_V16SFmode:
   14493              :               if (pattern1613 (x2, 
   14494              : E_V16SFmode, 
   14495              : E_HImode) != 0)
   14496              :                 return -1;
   14497              :               if (register_operand (operands[3], E_V16SFmode)
   14498              :                   && rtx_equal_p (x7, operands[1])
   14499              :                   && 
   14500              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14501              : (TARGET_AVX512F))
   14502              :                 return 4241; /* avx512f_fmsubadd_v16sf_mask_round */
   14503              :               if (!nonimmediate_operand (operands[3], E_V16SFmode)
   14504              :                   || !rtx_equal_p (x7, operands[3])
   14505              :                   || !
   14506              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14507              : (TARGET_AVX512F))
   14508              :                 return -1;
   14509              :               return 4259; /* avx512f_fmsubadd_v16sf_mask3_round */
   14510              : 
   14511              :             case E_V8SFmode:
   14512              :               if (pattern1613 (x2, 
   14513              : E_V8SFmode, 
   14514              : E_QImode) != 0)
   14515              :                 return -1;
   14516              :               if (register_operand (operands[3], E_V8SFmode)
   14517              :                   && rtx_equal_p (x7, operands[1])
   14518              :                   && (
   14519              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14520              : (TARGET_AVX512F) && (
   14521              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14522              : (TARGET_AVX512F) && 
   14523              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14524              : (TARGET_AVX512VL))))
   14525              :                 return 4243; /* avx512vl_fmsubadd_v8sf_mask_round */
   14526              :               if (!nonimmediate_operand (operands[3], E_V8SFmode)
   14527              :                   || !rtx_equal_p (x7, operands[3])
   14528              :                   || !(
   14529              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14530              : (TARGET_AVX512F) && (
   14531              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14532              : (TARGET_AVX512F) && 
   14533              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14534              : (TARGET_AVX512VL))))
   14535              :                 return -1;
   14536              :               return 4261; /* avx512vl_fmsubadd_v8sf_mask3_round */
   14537              : 
   14538              :             case E_V4SFmode:
   14539              :               if (pattern1613 (x2, 
   14540              : E_V4SFmode, 
   14541              : E_QImode) != 0)
   14542              :                 return -1;
   14543              :               if (register_operand (operands[3], E_V4SFmode)
   14544              :                   && rtx_equal_p (x7, operands[1])
   14545              :                   && (
   14546              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14547              : (TARGET_AVX512F) && (
   14548              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14549              : (TARGET_AVX512F) && 
   14550              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14551              : (TARGET_AVX512VL))))
   14552              :                 return 4245; /* avx512vl_fmsubadd_v4sf_mask_round */
   14553              :               if (!nonimmediate_operand (operands[3], E_V4SFmode)
   14554              :                   || !rtx_equal_p (x7, operands[3])
   14555              :                   || !(
   14556              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14557              : (TARGET_AVX512F) && (
   14558              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14559              : (TARGET_AVX512F) && 
   14560              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14561              : (TARGET_AVX512VL))))
   14562              :                 return -1;
   14563              :               return 4263; /* avx512vl_fmsubadd_v4sf_mask3_round */
   14564              : 
   14565              :             case E_V8DFmode:
   14566              :               if (pattern1613 (x2, 
   14567              : E_V8DFmode, 
   14568              : E_QImode) != 0)
   14569              :                 return -1;
   14570              :               if (register_operand (operands[3], E_V8DFmode)
   14571              :                   && rtx_equal_p (x7, operands[1])
   14572              :                   && 
   14573              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14574              : (TARGET_AVX512F))
   14575              :                 return 4247; /* avx512f_fmsubadd_v8df_mask_round */
   14576              :               if (!nonimmediate_operand (operands[3], E_V8DFmode)
   14577              :                   || !rtx_equal_p (x7, operands[3])
   14578              :                   || !
   14579              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14580              : (TARGET_AVX512F))
   14581              :                 return -1;
   14582              :               return 4265; /* avx512f_fmsubadd_v8df_mask3_round */
   14583              : 
   14584              :             case E_V4DFmode:
   14585              :               if (pattern1613 (x2, 
   14586              : E_V4DFmode, 
   14587              : E_QImode) != 0)
   14588              :                 return -1;
   14589              :               if (register_operand (operands[3], E_V4DFmode)
   14590              :                   && rtx_equal_p (x7, operands[1])
   14591              :                   && (
   14592              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14593              : (TARGET_AVX512F) && (
   14594              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14595              : (TARGET_AVX512F) && 
   14596              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14597              : (TARGET_AVX512VL))))
   14598              :                 return 4249; /* avx512vl_fmsubadd_v4df_mask_round */
   14599              :               if (!nonimmediate_operand (operands[3], E_V4DFmode)
   14600              :                   || !rtx_equal_p (x7, operands[3])
   14601              :                   || !(
   14602              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14603              : (TARGET_AVX512F) && (
   14604              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14605              : (TARGET_AVX512F) && 
   14606              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14607              : (TARGET_AVX512VL))))
   14608              :                 return -1;
   14609              :               return 4267; /* avx512vl_fmsubadd_v4df_mask3_round */
   14610              : 
   14611              :             case E_V2DFmode:
   14612              :               if (pattern1613 (x2, 
   14613              : E_V2DFmode, 
   14614              : E_QImode) != 0)
   14615              :                 return -1;
   14616              :               if (register_operand (operands[3], E_V2DFmode)
   14617              :                   && rtx_equal_p (x7, operands[1])
   14618              :                   && (
   14619              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14620              : (TARGET_AVX512F) && (
   14621              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14622              : (TARGET_AVX512F) && 
   14623              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14624              : (TARGET_AVX512VL))))
   14625              :                 return 4251; /* avx512vl_fmsubadd_v2df_mask_round */
   14626              :               if (!nonimmediate_operand (operands[3], E_V2DFmode)
   14627              :                   || !rtx_equal_p (x7, operands[3])
   14628              :                   || !(
   14629              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14630              : (TARGET_AVX512F) && (
   14631              : #line 6930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14632              : (TARGET_AVX512F) && 
   14633              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14634              : (TARGET_AVX512VL))))
   14635              :                 return -1;
   14636              :               return 4269; /* avx512vl_fmsubadd_v2df_mask3_round */
   14637              : 
   14638              :             default:
   14639              :               return -1;
   14640              :             }
   14641              : 
   14642              :         default:
   14643              :           return -1;
   14644              :         }
   14645              : 
   14646              :     default:
   14647              :       return -1;
   14648              :     }
   14649              : }
   14650              : 
   14651              :  int
   14652              : recog_238 (rtx x1 ATTRIBUTE_UNUSED,
   14653              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14654              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14655              : {
   14656              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14657              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   14658              :   rtx x10;
   14659              :   int res ATTRIBUTE_UNUSED;
   14660              :   if (pnum_clobbers == NULL)
   14661              :     return -1;
   14662              :   x2 = XEXP (x1, 0);
   14663              :   if (GET_CODE (x2) != MEM)
   14664              :     return -1;
   14665              :   operands[5] = x2;
   14666              :   x3 = XEXP (x2, 0);
   14667              :   if (GET_CODE (x3) != UNSPEC
   14668              :       || XVECLEN (x3, 0) != 4
   14669              :       || XINT (x3, 1) != 155)
   14670              :     return -1;
   14671              :   x4 = XVECEXP (x3, 0, 0);
   14672              :   operands[0] = x4;
   14673              :   x5 = XVECEXP (x3, 0, 1);
   14674              :   operands[2] = x5;
   14675              :   x6 = XVECEXP (x3, 0, 2);
   14676              :   operands[4] = x6;
   14677              :   if (!const1248_operand (operands[4], E_SImode))
   14678              :     return -1;
   14679              :   x7 = XVECEXP (x3, 0, 3);
   14680              :   operands[6] = x7;
   14681              :   x8 = XEXP (x1, 1);
   14682              :   x9 = XVECEXP (x8, 0, 1);
   14683              :   operands[3] = x9;
   14684              :   x10 = XVECEXP (x8, 0, 0);
   14685              :   if (!rtx_equal_p (x10, operands[6]))
   14686              :     return -1;
   14687              :   switch (GET_MODE (operands[5]))
   14688              :     {
   14689              :     case E_V16SImode:
   14690              :       if (!vsib_mem_operator (operands[5], E_V16SImode)
   14691              :           || GET_MODE (x8) != E_V16SImode)
   14692              :         return -1;
   14693              :       switch (GET_MODE (x3))
   14694              :         {
   14695              :         case E_SImode:
   14696              :           switch (pattern1731 (
   14697              : E_SImode))
   14698              :             {
   14699              :             case 0:
   14700              :               if (!(
   14701              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14702              : (TARGET_AVX512F) && 
   14703              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14704              : (Pmode == SImode)))
   14705              :                 return -1;
   14706              :               *pnum_clobbers = 1;
   14707              :               return 9986; /* *avx512f_scattersiv16si */
   14708              : 
   14709              :             case 1:
   14710              :               if (!(
   14711              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14712              : (TARGET_AVX512F) && 
   14713              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14714              : (Pmode == SImode)))
   14715              :                 return -1;
   14716              :               *pnum_clobbers = 1;
   14717              :               return 10010; /* *avx512f_scatterdiv16si */
   14718              : 
   14719              :             default:
   14720              :               return -1;
   14721              :             }
   14722              : 
   14723              :         case E_DImode:
   14724              :           switch (pattern1731 (
   14725              : E_DImode))
   14726              :             {
   14727              :             case 0:
   14728              :               if (!(
   14729              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14730              : (TARGET_AVX512F) && 
   14731              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14732              : (Pmode == DImode)))
   14733              :                 return -1;
   14734              :               *pnum_clobbers = 1;
   14735              :               return 9998; /* *avx512f_scattersiv16si */
   14736              : 
   14737              :             case 1:
   14738              :               if (!(
   14739              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14740              : (TARGET_AVX512F) && 
   14741              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14742              : (Pmode == DImode)))
   14743              :                 return -1;
   14744              :               *pnum_clobbers = 1;
   14745              :               return 10022; /* *avx512f_scatterdiv16si */
   14746              : 
   14747              :             default:
   14748              :               return -1;
   14749              :             }
   14750              : 
   14751              :         default:
   14752              :           return -1;
   14753              :         }
   14754              : 
   14755              :     case E_V16SFmode:
   14756              :       if (!vsib_mem_operator (operands[5], E_V16SFmode)
   14757              :           || GET_MODE (x8) != E_V16SFmode)
   14758              :         return -1;
   14759              :       switch (GET_MODE (x3))
   14760              :         {
   14761              :         case E_SImode:
   14762              :           switch (pattern1732 (
   14763              : E_SImode))
   14764              :             {
   14765              :             case 0:
   14766              :               if (!(
   14767              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14768              : (TARGET_AVX512F) && 
   14769              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14770              : (Pmode == SImode)))
   14771              :                 return -1;
   14772              :               *pnum_clobbers = 1;
   14773              :               return 9987; /* *avx512f_scattersiv16sf */
   14774              : 
   14775              :             case 1:
   14776              :               if (!(
   14777              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14778              : (TARGET_AVX512F) && 
   14779              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14780              : (Pmode == SImode)))
   14781              :                 return -1;
   14782              :               *pnum_clobbers = 1;
   14783              :               return 10011; /* *avx512f_scatterdiv16sf */
   14784              : 
   14785              :             default:
   14786              :               return -1;
   14787              :             }
   14788              : 
   14789              :         case E_DImode:
   14790              :           switch (pattern1732 (
   14791              : E_DImode))
   14792              :             {
   14793              :             case 0:
   14794              :               if (!(
   14795              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14796              : (TARGET_AVX512F) && 
   14797              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14798              : (Pmode == DImode)))
   14799              :                 return -1;
   14800              :               *pnum_clobbers = 1;
   14801              :               return 9999; /* *avx512f_scattersiv16sf */
   14802              : 
   14803              :             case 1:
   14804              :               if (!(
   14805              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14806              : (TARGET_AVX512F) && 
   14807              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14808              : (Pmode == DImode)))
   14809              :                 return -1;
   14810              :               *pnum_clobbers = 1;
   14811              :               return 10023; /* *avx512f_scatterdiv16sf */
   14812              : 
   14813              :             default:
   14814              :               return -1;
   14815              :             }
   14816              : 
   14817              :         default:
   14818              :           return -1;
   14819              :         }
   14820              : 
   14821              :     case E_V8DImode:
   14822              :       switch (pattern1629 (x1, 
   14823              : E_V8DImode))
   14824              :         {
   14825              :         case 0:
   14826              :           if (!(
   14827              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14828              : (TARGET_AVX512F) && 
   14829              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14830              : (Pmode == SImode)))
   14831              :             return -1;
   14832              :           *pnum_clobbers = 1;
   14833              :           return 9988; /* *avx512f_scattersiv8di */
   14834              : 
   14835              :         case 1:
   14836              :           if (!(
   14837              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14838              : (TARGET_AVX512F) && 
   14839              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14840              : (Pmode == SImode)))
   14841              :             return -1;
   14842              :           *pnum_clobbers = 1;
   14843              :           return 10012; /* *avx512f_scatterdiv8di */
   14844              : 
   14845              :         case 2:
   14846              :           if (!(
   14847              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14848              : (TARGET_AVX512F) && 
   14849              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14850              : (Pmode == DImode)))
   14851              :             return -1;
   14852              :           *pnum_clobbers = 1;
   14853              :           return 10000; /* *avx512f_scattersiv8di */
   14854              : 
   14855              :         case 3:
   14856              :           if (!(
   14857              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14858              : (TARGET_AVX512F) && 
   14859              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14860              : (Pmode == DImode)))
   14861              :             return -1;
   14862              :           *pnum_clobbers = 1;
   14863              :           return 10024; /* *avx512f_scatterdiv8di */
   14864              : 
   14865              :         default:
   14866              :           return -1;
   14867              :         }
   14868              : 
   14869              :     case E_V8DFmode:
   14870              :       switch (pattern1629 (x1, 
   14871              : E_V8DFmode))
   14872              :         {
   14873              :         case 0:
   14874              :           if (!(
   14875              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14876              : (TARGET_AVX512F) && 
   14877              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14878              : (Pmode == SImode)))
   14879              :             return -1;
   14880              :           *pnum_clobbers = 1;
   14881              :           return 9989; /* *avx512f_scattersiv8df */
   14882              : 
   14883              :         case 1:
   14884              :           if (!(
   14885              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14886              : (TARGET_AVX512F) && 
   14887              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14888              : (Pmode == SImode)))
   14889              :             return -1;
   14890              :           *pnum_clobbers = 1;
   14891              :           return 10013; /* *avx512f_scatterdiv8df */
   14892              : 
   14893              :         case 2:
   14894              :           if (!(
   14895              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14896              : (TARGET_AVX512F) && 
   14897              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14898              : (Pmode == DImode)))
   14899              :             return -1;
   14900              :           *pnum_clobbers = 1;
   14901              :           return 10001; /* *avx512f_scattersiv8df */
   14902              : 
   14903              :         case 3:
   14904              :           if (!(
   14905              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14906              : (TARGET_AVX512F) && 
   14907              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14908              : (Pmode == DImode)))
   14909              :             return -1;
   14910              :           *pnum_clobbers = 1;
   14911              :           return 10025; /* *avx512f_scatterdiv8df */
   14912              : 
   14913              :         default:
   14914              :           return -1;
   14915              :         }
   14916              : 
   14917              :     case E_V8SImode:
   14918              :       switch (pattern1630 (x1, 
   14919              : E_V8SImode))
   14920              :         {
   14921              :         case 0:
   14922              :           switch (pattern1770 (
   14923              : E_SImode))
   14924              :             {
   14925              :             case 0:
   14926              :               if (!(
   14927              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14928              : (TARGET_AVX512F) && ((((
   14929              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14930              : (TARGET_AVX512VL) && 
   14931              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14932              : (Pmode == SImode)) && 
   14933              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14934              : (Pmode == SImode)) && 
   14935              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14936              : (TARGET_AVX512VL)) && 
   14937              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14938              : (TARGET_AVX512VL))))
   14939              :                 return -1;
   14940              :               *pnum_clobbers = 1;
   14941              :               return 9990; /* *avx512f_scattersiv8si */
   14942              : 
   14943              :             case 1:
   14944              :               if (!(
   14945              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14946              : (TARGET_AVX512F) && (((
   14947              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14948              : (TARGET_AVX512VL) && 
   14949              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14950              : (Pmode == SImode)) && 
   14951              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14952              : (Pmode == SImode)) && 
   14953              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14954              : (TARGET_AVX512VL))))
   14955              :                 return -1;
   14956              :               *pnum_clobbers = 1;
   14957              :               return 10014; /* *avx512f_scatterdiv8si */
   14958              : 
   14959              :             default:
   14960              :               return -1;
   14961              :             }
   14962              : 
   14963              :         case 1:
   14964              :           switch (pattern1770 (
   14965              : E_DImode))
   14966              :             {
   14967              :             case 0:
   14968              :               if (!(
   14969              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14970              : (TARGET_AVX512F) && ((((
   14971              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14972              : (TARGET_AVX512VL) && 
   14973              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14974              : (Pmode == DImode)) && 
   14975              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14976              : (Pmode == DImode)) && 
   14977              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14978              : (TARGET_AVX512VL)) && 
   14979              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14980              : (TARGET_AVX512VL))))
   14981              :                 return -1;
   14982              :               *pnum_clobbers = 1;
   14983              :               return 10002; /* *avx512f_scattersiv8si */
   14984              : 
   14985              :             case 1:
   14986              :               if (!(
   14987              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14988              : (TARGET_AVX512F) && (((
   14989              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14990              : (TARGET_AVX512VL) && 
   14991              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14992              : (Pmode == DImode)) && 
   14993              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14994              : (Pmode == DImode)) && 
   14995              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14996              : (TARGET_AVX512VL))))
   14997              :                 return -1;
   14998              :               *pnum_clobbers = 1;
   14999              :               return 10026; /* *avx512f_scatterdiv8si */
   15000              : 
   15001              :             default:
   15002              :               return -1;
   15003              :             }
   15004              : 
   15005              :         default:
   15006              :           return -1;
   15007              :         }
   15008              : 
   15009              :     case E_V8SFmode:
   15010              :       switch (pattern1630 (x1, 
   15011              : E_V8SFmode))
   15012              :         {
   15013              :         case 0:
   15014              :           switch (pattern1771 (
   15015              : E_SImode))
   15016              :             {
   15017              :             case 0:
   15018              :               if (!(
   15019              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15020              : (TARGET_AVX512F) && ((((
   15021              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15022              : (TARGET_AVX512VL) && 
   15023              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15024              : (Pmode == SImode)) && 
   15025              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15026              : (Pmode == SImode)) && 
   15027              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15028              : (TARGET_AVX512VL)) && 
   15029              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15030              : (TARGET_AVX512VL))))
   15031              :                 return -1;
   15032              :               *pnum_clobbers = 1;
   15033              :               return 9991; /* *avx512f_scattersiv8sf */
   15034              : 
   15035              :             case 1:
   15036              :               if (!(
   15037              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15038              : (TARGET_AVX512F) && (((
   15039              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15040              : (TARGET_AVX512VL) && 
   15041              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15042              : (Pmode == SImode)) && 
   15043              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15044              : (Pmode == SImode)) && 
   15045              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15046              : (TARGET_AVX512VL))))
   15047              :                 return -1;
   15048              :               *pnum_clobbers = 1;
   15049              :               return 10015; /* *avx512f_scatterdiv8sf */
   15050              : 
   15051              :             default:
   15052              :               return -1;
   15053              :             }
   15054              : 
   15055              :         case 1:
   15056              :           switch (pattern1771 (
   15057              : E_DImode))
   15058              :             {
   15059              :             case 0:
   15060              :               if (!(
   15061              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15062              : (TARGET_AVX512F) && ((((
   15063              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15064              : (TARGET_AVX512VL) && 
   15065              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15066              : (Pmode == DImode)) && 
   15067              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15068              : (Pmode == DImode)) && 
   15069              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15070              : (TARGET_AVX512VL)) && 
   15071              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15072              : (TARGET_AVX512VL))))
   15073              :                 return -1;
   15074              :               *pnum_clobbers = 1;
   15075              :               return 10003; /* *avx512f_scattersiv8sf */
   15076              : 
   15077              :             case 1:
   15078              :               if (!(
   15079              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15080              : (TARGET_AVX512F) && (((
   15081              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15082              : (TARGET_AVX512VL) && 
   15083              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15084              : (Pmode == DImode)) && 
   15085              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15086              : (Pmode == DImode)) && 
   15087              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15088              : (TARGET_AVX512VL))))
   15089              :                 return -1;
   15090              :               *pnum_clobbers = 1;
   15091              :               return 10027; /* *avx512f_scatterdiv8sf */
   15092              : 
   15093              :             default:
   15094              :               return -1;
   15095              :             }
   15096              : 
   15097              :         default:
   15098              :           return -1;
   15099              :         }
   15100              : 
   15101              :     case E_V4DImode:
   15102              :       switch (pattern1632 (x1, 
   15103              : E_V4DImode))
   15104              :         {
   15105              :         case 0:
   15106              :           if (!(
   15107              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15108              : (TARGET_AVX512F) && ((((
   15109              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15110              : (TARGET_AVX512VL) && 
   15111              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15112              : (Pmode == SImode)) && 
   15113              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15114              : (Pmode == SImode)) && 
   15115              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15116              : (TARGET_AVX512VL)) && 
   15117              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15118              : (TARGET_AVX512VL))))
   15119              :             return -1;
   15120              :           *pnum_clobbers = 1;
   15121              :           return 9992; /* *avx512f_scattersiv4di */
   15122              : 
   15123              :         case 1:
   15124              :           if (!(
   15125              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15126              : (TARGET_AVX512F) && (((
   15127              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15128              : (TARGET_AVX512VL) && 
   15129              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15130              : (Pmode == SImode)) && 
   15131              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15132              : (Pmode == SImode)) && 
   15133              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15134              : (TARGET_AVX512VL))))
   15135              :             return -1;
   15136              :           *pnum_clobbers = 1;
   15137              :           return 10016; /* *avx512f_scatterdiv4di */
   15138              : 
   15139              :         case 2:
   15140              :           if (!(
   15141              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15142              : (TARGET_AVX512F) && ((((
   15143              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15144              : (TARGET_AVX512VL) && 
   15145              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15146              : (Pmode == DImode)) && 
   15147              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15148              : (Pmode == DImode)) && 
   15149              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15150              : (TARGET_AVX512VL)) && 
   15151              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15152              : (TARGET_AVX512VL))))
   15153              :             return -1;
   15154              :           *pnum_clobbers = 1;
   15155              :           return 10004; /* *avx512f_scattersiv4di */
   15156              : 
   15157              :         case 3:
   15158              :           if (!(
   15159              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15160              : (TARGET_AVX512F) && (((
   15161              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15162              : (TARGET_AVX512VL) && 
   15163              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15164              : (Pmode == DImode)) && 
   15165              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15166              : (Pmode == DImode)) && 
   15167              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15168              : (TARGET_AVX512VL))))
   15169              :             return -1;
   15170              :           *pnum_clobbers = 1;
   15171              :           return 10028; /* *avx512f_scatterdiv4di */
   15172              : 
   15173              :         default:
   15174              :           return -1;
   15175              :         }
   15176              : 
   15177              :     case E_V4DFmode:
   15178              :       switch (pattern1632 (x1, 
   15179              : E_V4DFmode))
   15180              :         {
   15181              :         case 0:
   15182              :           if (!(
   15183              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15184              : (TARGET_AVX512F) && ((((
   15185              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15186              : (TARGET_AVX512VL) && 
   15187              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15188              : (Pmode == SImode)) && 
   15189              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15190              : (Pmode == SImode)) && 
   15191              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15192              : (TARGET_AVX512VL)) && 
   15193              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15194              : (TARGET_AVX512VL))))
   15195              :             return -1;
   15196              :           *pnum_clobbers = 1;
   15197              :           return 9993; /* *avx512f_scattersiv4df */
   15198              : 
   15199              :         case 1:
   15200              :           if (!(
   15201              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15202              : (TARGET_AVX512F) && (((
   15203              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15204              : (TARGET_AVX512VL) && 
   15205              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15206              : (Pmode == SImode)) && 
   15207              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15208              : (Pmode == SImode)) && 
   15209              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15210              : (TARGET_AVX512VL))))
   15211              :             return -1;
   15212              :           *pnum_clobbers = 1;
   15213              :           return 10017; /* *avx512f_scatterdiv4df */
   15214              : 
   15215              :         case 2:
   15216              :           if (!(
   15217              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15218              : (TARGET_AVX512F) && ((((
   15219              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15220              : (TARGET_AVX512VL) && 
   15221              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15222              : (Pmode == DImode)) && 
   15223              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15224              : (Pmode == DImode)) && 
   15225              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15226              : (TARGET_AVX512VL)) && 
   15227              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15228              : (TARGET_AVX512VL))))
   15229              :             return -1;
   15230              :           *pnum_clobbers = 1;
   15231              :           return 10005; /* *avx512f_scattersiv4df */
   15232              : 
   15233              :         case 3:
   15234              :           if (!(
   15235              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15236              : (TARGET_AVX512F) && (((
   15237              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15238              : (TARGET_AVX512VL) && 
   15239              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15240              : (Pmode == DImode)) && 
   15241              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15242              : (Pmode == DImode)) && 
   15243              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15244              : (TARGET_AVX512VL))))
   15245              :             return -1;
   15246              :           *pnum_clobbers = 1;
   15247              :           return 10029; /* *avx512f_scatterdiv4df */
   15248              : 
   15249              :         default:
   15250              :           return -1;
   15251              :         }
   15252              : 
   15253              :     case E_V4SImode:
   15254              :       switch (pattern1634 (x1, 
   15255              : E_V4SImode))
   15256              :         {
   15257              :         case 0:
   15258              :           if (!(
   15259              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15260              : (TARGET_AVX512F) && ((((
   15261              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15262              : (TARGET_AVX512VL) && 
   15263              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15264              : (Pmode == SImode)) && 
   15265              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15266              : (Pmode == SImode)) && 
   15267              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15268              : (TARGET_AVX512VL)) && 
   15269              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15270              : (TARGET_AVX512VL))))
   15271              :             return -1;
   15272              :           *pnum_clobbers = 1;
   15273              :           return 9994; /* *avx512f_scattersiv4si */
   15274              : 
   15275              :         case 1:
   15276              :           if (!(
   15277              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15278              : (TARGET_AVX512F) && (((
   15279              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15280              : (TARGET_AVX512VL) && 
   15281              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15282              : (Pmode == SImode)) && 
   15283              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15284              : (Pmode == SImode)) && 
   15285              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15286              : (TARGET_AVX512VL))))
   15287              :             return -1;
   15288              :           *pnum_clobbers = 1;
   15289              :           return 10018; /* *avx512f_scatterdiv4si */
   15290              : 
   15291              :         case 2:
   15292              :           if (!(
   15293              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15294              : (TARGET_AVX512F) && ((((
   15295              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15296              : (TARGET_AVX512VL) && 
   15297              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15298              : (Pmode == DImode)) && 
   15299              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15300              : (Pmode == DImode)) && 
   15301              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15302              : (TARGET_AVX512VL)) && 
   15303              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15304              : (TARGET_AVX512VL))))
   15305              :             return -1;
   15306              :           *pnum_clobbers = 1;
   15307              :           return 10006; /* *avx512f_scattersiv4si */
   15308              : 
   15309              :         case 3:
   15310              :           if (!(
   15311              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15312              : (TARGET_AVX512F) && (((
   15313              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15314              : (TARGET_AVX512VL) && 
   15315              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15316              : (Pmode == DImode)) && 
   15317              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15318              : (Pmode == DImode)) && 
   15319              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15320              : (TARGET_AVX512VL))))
   15321              :             return -1;
   15322              :           *pnum_clobbers = 1;
   15323              :           return 10030; /* *avx512f_scatterdiv4si */
   15324              : 
   15325              :         default:
   15326              :           return -1;
   15327              :         }
   15328              : 
   15329              :     case E_V4SFmode:
   15330              :       switch (pattern1634 (x1, 
   15331              : E_V4SFmode))
   15332              :         {
   15333              :         case 0:
   15334              :           if (!(
   15335              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15336              : (TARGET_AVX512F) && ((((
   15337              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15338              : (TARGET_AVX512VL) && 
   15339              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15340              : (Pmode == SImode)) && 
   15341              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15342              : (Pmode == SImode)) && 
   15343              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15344              : (TARGET_AVX512VL)) && 
   15345              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15346              : (TARGET_AVX512VL))))
   15347              :             return -1;
   15348              :           *pnum_clobbers = 1;
   15349              :           return 9995; /* *avx512f_scattersiv4sf */
   15350              : 
   15351              :         case 1:
   15352              :           if (!(
   15353              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15354              : (TARGET_AVX512F) && (((
   15355              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15356              : (TARGET_AVX512VL) && 
   15357              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15358              : (Pmode == SImode)) && 
   15359              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15360              : (Pmode == SImode)) && 
   15361              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15362              : (TARGET_AVX512VL))))
   15363              :             return -1;
   15364              :           *pnum_clobbers = 1;
   15365              :           return 10019; /* *avx512f_scatterdiv4sf */
   15366              : 
   15367              :         case 2:
   15368              :           if (!(
   15369              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15370              : (TARGET_AVX512F) && ((((
   15371              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15372              : (TARGET_AVX512VL) && 
   15373              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15374              : (Pmode == DImode)) && 
   15375              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15376              : (Pmode == DImode)) && 
   15377              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15378              : (TARGET_AVX512VL)) && 
   15379              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15380              : (TARGET_AVX512VL))))
   15381              :             return -1;
   15382              :           *pnum_clobbers = 1;
   15383              :           return 10007; /* *avx512f_scattersiv4sf */
   15384              : 
   15385              :         case 3:
   15386              :           if (!(
   15387              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15388              : (TARGET_AVX512F) && (((
   15389              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15390              : (TARGET_AVX512VL) && 
   15391              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15392              : (Pmode == DImode)) && 
   15393              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15394              : (Pmode == DImode)) && 
   15395              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15396              : (TARGET_AVX512VL))))
   15397              :             return -1;
   15398              :           *pnum_clobbers = 1;
   15399              :           return 10031; /* *avx512f_scatterdiv4sf */
   15400              : 
   15401              :         default:
   15402              :           return -1;
   15403              :         }
   15404              : 
   15405              :     case E_V2DImode:
   15406              :       switch (pattern1634 (x1, 
   15407              : E_V2DImode))
   15408              :         {
   15409              :         case 0:
   15410              :           if (!(
   15411              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15412              : (TARGET_AVX512F) && ((((
   15413              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15414              : (TARGET_AVX512VL) && 
   15415              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15416              : (Pmode == SImode)) && 
   15417              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15418              : (Pmode == SImode)) && 
   15419              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15420              : (TARGET_AVX512VL)) && 
   15421              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15422              : (TARGET_AVX512VL))))
   15423              :             return -1;
   15424              :           *pnum_clobbers = 1;
   15425              :           return 9996; /* *avx512f_scattersiv2di */
   15426              : 
   15427              :         case 1:
   15428              :           if (!(
   15429              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15430              : (TARGET_AVX512F) && (((
   15431              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15432              : (TARGET_AVX512VL) && 
   15433              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15434              : (Pmode == SImode)) && 
   15435              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15436              : (Pmode == SImode)) && 
   15437              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15438              : (TARGET_AVX512VL))))
   15439              :             return -1;
   15440              :           *pnum_clobbers = 1;
   15441              :           return 10020; /* *avx512f_scatterdiv2di */
   15442              : 
   15443              :         case 2:
   15444              :           if (!(
   15445              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15446              : (TARGET_AVX512F) && ((((
   15447              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15448              : (TARGET_AVX512VL) && 
   15449              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15450              : (Pmode == DImode)) && 
   15451              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15452              : (Pmode == DImode)) && 
   15453              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15454              : (TARGET_AVX512VL)) && 
   15455              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15456              : (TARGET_AVX512VL))))
   15457              :             return -1;
   15458              :           *pnum_clobbers = 1;
   15459              :           return 10008; /* *avx512f_scattersiv2di */
   15460              : 
   15461              :         case 3:
   15462              :           if (!(
   15463              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15464              : (TARGET_AVX512F) && (((
   15465              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15466              : (TARGET_AVX512VL) && 
   15467              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15468              : (Pmode == DImode)) && 
   15469              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15470              : (Pmode == DImode)) && 
   15471              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15472              : (TARGET_AVX512VL))))
   15473              :             return -1;
   15474              :           *pnum_clobbers = 1;
   15475              :           return 10032; /* *avx512f_scatterdiv2di */
   15476              : 
   15477              :         default:
   15478              :           return -1;
   15479              :         }
   15480              : 
   15481              :     case E_V2DFmode:
   15482              :       switch (pattern1634 (x1, 
   15483              : E_V2DFmode))
   15484              :         {
   15485              :         case 0:
   15486              :           if (!(
   15487              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15488              : (TARGET_AVX512F) && ((((
   15489              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15490              : (TARGET_AVX512VL) && 
   15491              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15492              : (Pmode == SImode)) && 
   15493              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15494              : (Pmode == SImode)) && 
   15495              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15496              : (TARGET_AVX512VL)) && 
   15497              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15498              : (TARGET_AVX512VL))))
   15499              :             return -1;
   15500              :           *pnum_clobbers = 1;
   15501              :           return 9997; /* *avx512f_scattersiv2df */
   15502              : 
   15503              :         case 1:
   15504              :           if (!(
   15505              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15506              : (TARGET_AVX512F) && (((
   15507              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15508              : (TARGET_AVX512VL) && 
   15509              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15510              : (Pmode == SImode)) && 
   15511              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15512              : (Pmode == SImode)) && 
   15513              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15514              : (TARGET_AVX512VL))))
   15515              :             return -1;
   15516              :           *pnum_clobbers = 1;
   15517              :           return 10021; /* *avx512f_scatterdiv2df */
   15518              : 
   15519              :         case 2:
   15520              :           if (!(
   15521              : #line 31014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15522              : (TARGET_AVX512F) && ((((
   15523              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15524              : (TARGET_AVX512VL) && 
   15525              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15526              : (Pmode == DImode)) && 
   15527              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15528              : (Pmode == DImode)) && 
   15529              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15530              : (TARGET_AVX512VL)) && 
   15531              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15532              : (TARGET_AVX512VL))))
   15533              :             return -1;
   15534              :           *pnum_clobbers = 1;
   15535              :           return 10009; /* *avx512f_scattersiv2df */
   15536              : 
   15537              :         case 3:
   15538              :           if (!(
   15539              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15540              : (TARGET_AVX512F) && (((
   15541              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15542              : (TARGET_AVX512VL) && 
   15543              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15544              : (Pmode == DImode)) && 
   15545              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15546              : (Pmode == DImode)) && 
   15547              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15548              : (TARGET_AVX512VL))))
   15549              :             return -1;
   15550              :           *pnum_clobbers = 1;
   15551              :           return 10033; /* *avx512f_scatterdiv2df */
   15552              : 
   15553              :         default:
   15554              :           return -1;
   15555              :         }
   15556              : 
   15557              :     default:
   15558              :       return -1;
   15559              :     }
   15560              : }
   15561              : 
   15562              :  int
   15563              : recog_257 (rtx x1 ATTRIBUTE_UNUSED,
   15564              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15565              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15566              : {
   15567              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15568              :   rtx x2, x3, x4, x5, x6;
   15569              :   int res ATTRIBUTE_UNUSED;
   15570              :   x2 = XEXP (x1, 0);
   15571              :   operands[0] = x2;
   15572              :   x3 = XEXP (x1, 1);
   15573              :   x4 = XVECEXP (x3, 0, 0);
   15574              :   operands[1] = x4;
   15575              :   x5 = XVECEXP (x3, 0, 1);
   15576              :   operands[2] = x5;
   15577              :   x6 = XVECEXP (x3, 0, 2);
   15578              :   operands[3] = x6;
   15579              :   switch (GET_MODE (operands[0]))
   15580              :     {
   15581              :     case E_V16SImode:
   15582              :       if (pattern925 (x3, 
   15583              : E_HImode, 
   15584              : E_V16SImode) != 0
   15585              :           || !
   15586              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15587              : (TARGET_AVX512F))
   15588              :         return -1;
   15589              :       return 10034; /* avx512f_compressv16si_mask */
   15590              : 
   15591              :     case E_V16SFmode:
   15592              :       if (pattern925 (x3, 
   15593              : E_HImode, 
   15594              : E_V16SFmode) != 0
   15595              :           || !
   15596              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15597              : (TARGET_AVX512F))
   15598              :         return -1;
   15599              :       return 10035; /* avx512f_compressv16sf_mask */
   15600              : 
   15601              :     case E_V8DImode:
   15602              :       if (pattern925 (x3, 
   15603              : E_QImode, 
   15604              : E_V8DImode) != 0
   15605              :           || !
   15606              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15607              : (TARGET_AVX512F))
   15608              :         return -1;
   15609              :       return 10036; /* avx512f_compressv8di_mask */
   15610              : 
   15611              :     case E_V8DFmode:
   15612              :       if (pattern925 (x3, 
   15613              : E_QImode, 
   15614              : E_V8DFmode) != 0
   15615              :           || !
   15616              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15617              : (TARGET_AVX512F))
   15618              :         return -1;
   15619              :       return 10037; /* avx512f_compressv8df_mask */
   15620              : 
   15621              :     case E_V8SImode:
   15622              :       if (pattern925 (x3, 
   15623              : E_QImode, 
   15624              : E_V8SImode) != 0
   15625              :           || !(
   15626              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15627              : (TARGET_AVX512F) && 
   15628              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15629              : (TARGET_AVX512VL)))
   15630              :         return -1;
   15631              :       return 10038; /* avx512vl_compressv8si_mask */
   15632              : 
   15633              :     case E_V8SFmode:
   15634              :       if (pattern925 (x3, 
   15635              : E_QImode, 
   15636              : E_V8SFmode) != 0
   15637              :           || !(
   15638              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15639              : (TARGET_AVX512F) && 
   15640              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15641              : (TARGET_AVX512VL)))
   15642              :         return -1;
   15643              :       return 10039; /* avx512vl_compressv8sf_mask */
   15644              : 
   15645              :     case E_V4DImode:
   15646              :       if (pattern925 (x3, 
   15647              : E_QImode, 
   15648              : E_V4DImode) != 0
   15649              :           || !(
   15650              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15651              : (TARGET_AVX512F) && 
   15652              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15653              : (TARGET_AVX512VL)))
   15654              :         return -1;
   15655              :       return 10040; /* avx512vl_compressv4di_mask */
   15656              : 
   15657              :     case E_V4DFmode:
   15658              :       if (pattern925 (x3, 
   15659              : E_QImode, 
   15660              : E_V4DFmode) != 0
   15661              :           || !(
   15662              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15663              : (TARGET_AVX512F) && 
   15664              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15665              : (TARGET_AVX512VL)))
   15666              :         return -1;
   15667              :       return 10041; /* avx512vl_compressv4df_mask */
   15668              : 
   15669              :     case E_V4SImode:
   15670              :       if (pattern925 (x3, 
   15671              : E_QImode, 
   15672              : E_V4SImode) != 0
   15673              :           || !(
   15674              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15675              : (TARGET_AVX512F) && 
   15676              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15677              : (TARGET_AVX512VL)))
   15678              :         return -1;
   15679              :       return 10042; /* avx512vl_compressv4si_mask */
   15680              : 
   15681              :     case E_V4SFmode:
   15682              :       if (pattern925 (x3, 
   15683              : E_QImode, 
   15684              : E_V4SFmode) != 0
   15685              :           || !(
   15686              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15687              : (TARGET_AVX512F) && 
   15688              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15689              : (TARGET_AVX512VL)))
   15690              :         return -1;
   15691              :       return 10043; /* avx512vl_compressv4sf_mask */
   15692              : 
   15693              :     case E_V2DImode:
   15694              :       if (pattern925 (x3, 
   15695              : E_QImode, 
   15696              : E_V2DImode) != 0
   15697              :           || !(
   15698              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15699              : (TARGET_AVX512F) && 
   15700              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15701              : (TARGET_AVX512VL)))
   15702              :         return -1;
   15703              :       return 10044; /* avx512vl_compressv2di_mask */
   15704              : 
   15705              :     case E_V2DFmode:
   15706              :       if (pattern925 (x3, 
   15707              : E_QImode, 
   15708              : E_V2DFmode) != 0
   15709              :           || !(
   15710              : #line 31069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15711              : (TARGET_AVX512F) && 
   15712              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15713              : (TARGET_AVX512VL)))
   15714              :         return -1;
   15715              :       return 10045; /* avx512vl_compressv2df_mask */
   15716              : 
   15717              :     case E_V64QImode:
   15718              :       if (pattern925 (x3, 
   15719              : E_DImode, 
   15720              : E_V64QImode) != 0
   15721              :           || !
   15722              : #line 31083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15723              : (TARGET_AVX512VBMI2))
   15724              :         return -1;
   15725              :       return 10046; /* compressv64qi_mask */
   15726              : 
   15727              :     case E_V16QImode:
   15728              :       if (pattern925 (x3, 
   15729              : E_HImode, 
   15730              : E_V16QImode) != 0
   15731              :           || !(
   15732              : #line 31083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15733              : (TARGET_AVX512VBMI2) && 
   15734              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15735              : (TARGET_AVX512VL)))
   15736              :         return -1;
   15737              :       return 10047; /* compressv16qi_mask */
   15738              : 
   15739              :     case E_V32QImode:
   15740              :       if (pattern925 (x3, 
   15741              : E_SImode, 
   15742              : E_V32QImode) != 0
   15743              :           || !(
   15744              : #line 31083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15745              : (TARGET_AVX512VBMI2) && 
   15746              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15747              : (TARGET_AVX512VL)))
   15748              :         return -1;
   15749              :       return 10048; /* compressv32qi_mask */
   15750              : 
   15751              :     case E_V32HImode:
   15752              :       if (pattern925 (x3, 
   15753              : E_SImode, 
   15754              : E_V32HImode) != 0
   15755              :           || !
   15756              : #line 31083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15757              : (TARGET_AVX512VBMI2))
   15758              :         return -1;
   15759              :       return 10049; /* compressv32hi_mask */
   15760              : 
   15761              :     case E_V16HImode:
   15762              :       if (pattern925 (x3, 
   15763              : E_HImode, 
   15764              : E_V16HImode) != 0
   15765              :           || !(
   15766              : #line 31083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15767              : (TARGET_AVX512VBMI2) && 
   15768              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15769              : (TARGET_AVX512VL)))
   15770              :         return -1;
   15771              :       return 10050; /* compressv16hi_mask */
   15772              : 
   15773              :     case E_V8HImode:
   15774              :       if (pattern925 (x3, 
   15775              : E_QImode, 
   15776              : E_V8HImode) != 0
   15777              :           || !(
   15778              : #line 31083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15779              : (TARGET_AVX512VBMI2) && 
   15780              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15781              : (TARGET_AVX512VL)))
   15782              :         return -1;
   15783              :       return 10051; /* compressv8hi_mask */
   15784              : 
   15785              :     default:
   15786              :       return -1;
   15787              :     }
   15788              : }
   15789              : 
   15790              :  int
   15791              : recog_267 (rtx x1 ATTRIBUTE_UNUSED,
   15792              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15793              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15794              : {
   15795              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15796              :   rtx x2, x3, x4, x5, x6;
   15797              :   int res ATTRIBUTE_UNUSED;
   15798              :   x2 = XEXP (x1, 0);
   15799              :   operands[0] = x2;
   15800              :   x3 = XEXP (x1, 1);
   15801              :   x4 = XVECEXP (x3, 0, 0);
   15802              :   operands[1] = x4;
   15803              :   x5 = XVECEXP (x3, 0, 1);
   15804              :   operands[2] = x5;
   15805              :   x6 = XVECEXP (x3, 0, 2);
   15806              :   operands[3] = x6;
   15807              :   if (!const_0_to_255_operand (operands[3], E_SImode))
   15808              :     return -1;
   15809              :   switch (GET_MODE (operands[0]))
   15810              :     {
   15811              :     case E_V32QImode:
   15812              :       if (pattern158 (x3, 
   15813              : E_V32QImode) != 0)
   15814              :         return -1;
   15815              :       if ((
   15816              : #line 24701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15817              : (TARGET_SSE4_1) && 
   15818              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15819              : (TARGET_AVX2)))
   15820              :         return 8839; /* avx2_mpsadbw */
   15821              :       if (!(
   15822              : #line 24736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15823              : (TARGET_AVX10_2) && 
   15824              : #line 597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15825              : (TARGET_AVX)))
   15826              :         return -1;
   15827              :       return 8843; /* *avx2_mpsadbw */
   15828              : 
   15829              :     case E_V16QImode:
   15830              :       if (pattern158 (x3, 
   15831              : E_V16QImode) != 0)
   15832              :         return -1;
   15833              :       if (
   15834              : #line 24701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15835              : (TARGET_SSE4_1))
   15836              :         return 8840; /* sse4_1_mpsadbw */
   15837              :       if (!
   15838              : #line 24736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15839              : (TARGET_AVX10_2))
   15840              :         return -1;
   15841              :       return 8845; /* *sse4_1_mpsadbw */
   15842              : 
   15843              :     case E_V64QImode:
   15844              :       if (pattern158 (x3, 
   15845              : E_V64QImode) != 0
   15846              :           || !
   15847              : #line 24724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15848              : (TARGET_AVX10_2))
   15849              :         return -1;
   15850              :       return 8841; /* avx10_2_mpsadbw */
   15851              : 
   15852              :     default:
   15853              :       return -1;
   15854              :     }
   15855              : }
   15856              : 
   15857              :  int
   15858              : recog_273 (rtx x1 ATTRIBUTE_UNUSED,
   15859              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15860              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15861              : {
   15862              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15863              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   15864              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   15865              :   rtx x18;
   15866              :   int res ATTRIBUTE_UNUSED;
   15867              :   x2 = XEXP (x1, 1);
   15868              :   x3 = XEXP (x2, 1);
   15869              :   x4 = XEXP (x3, 1);
   15870              :   if (GET_CODE (x4) != PARALLEL)
   15871              :     return -1;
   15872              :   x5 = XEXP (x2, 0);
   15873              :   operands[2] = x5;
   15874              :   x6 = XEXP (x3, 0);
   15875              :   operands[1] = x6;
   15876              :   switch (XVECLEN (x4, 0))
   15877              :     {
   15878              :     case 2:
   15879              :       x7 = XVECEXP (x4, 0, 0);
   15880              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   15881              :         return -1;
   15882              :       x8 = XVECEXP (x4, 0, 1);
   15883              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   15884              :         return -1;
   15885              :       switch (GET_MODE (operands[0]))
   15886              :         {
   15887              :         case E_V4SFmode:
   15888              :           if (!nonimmediate_operand (operands[0], E_V4SFmode)
   15889              :               || GET_MODE (x2) != E_V4SFmode
   15890              :               || !nonimmediate_operand (operands[2], E_V2SFmode)
   15891              :               || GET_MODE (x3) != E_V2SFmode
   15892              :               || !nonimmediate_operand (operands[1], E_V4SFmode)
   15893              :               || !
   15894              : #line 12348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15895              : (TARGET_SSE))
   15896              :             return -1;
   15897              :           return 5340; /* sse_loadlps */
   15898              : 
   15899              :         case E_V4DImode:
   15900              :           if (pattern1244 (x2, 
   15901              : E_V4DImode, 
   15902              : E_V2DImode) != 0
   15903              :               || !
   15904              : #line 29766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15905              : (TARGET_AVX && 1))
   15906              :             return -1;
   15907              :           return 9610; /* vec_set_lo_v4di */
   15908              : 
   15909              :         case E_V4DFmode:
   15910              :           if (pattern1244 (x2, 
   15911              : E_V4DFmode, 
   15912              : E_V2DFmode) != 0
   15913              :               || !
   15914              : #line 29766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15915              : (TARGET_AVX && 1))
   15916              :             return -1;
   15917              :           return 9612; /* vec_set_lo_v4df */
   15918              : 
   15919              :         default:
   15920              :           return -1;
   15921              :         }
   15922              : 
   15923              :     case 1:
   15924              :       x7 = XVECEXP (x4, 0, 0);
   15925              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   15926              :           || !nonimmediate_operand (operands[0], E_V2DFmode)
   15927              :           || GET_MODE (x2) != E_V2DFmode
   15928              :           || !nonimmediate_operand (operands[2], E_DFmode)
   15929              :           || GET_MODE (x3) != E_DFmode
   15930              :           || !nonimm_or_0_operand (operands[1], E_V2DFmode)
   15931              :           || !
   15932              : #line 15504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15933              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   15934              :         return -1;
   15935              :       return 7302; /* sse2_loadlpd */
   15936              : 
   15937              :     case 8:
   15938              :       x7 = XVECEXP (x4, 0, 0);
   15939              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   15940              :         return -1;
   15941              :       x8 = XVECEXP (x4, 0, 1);
   15942              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
   15943              :         return -1;
   15944              :       x9 = XVECEXP (x4, 0, 2);
   15945              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 10]
   15946              :           || pattern1245 (x4, 
   15947              : 15, 
   15948              : 14, 
   15949              : 13, 
   15950              : 12, 
   15951              : 11) != 0)
   15952              :         return -1;
   15953              :       switch (GET_MODE (operands[0]))
   15954              :         {
   15955              :         case E_V16SFmode:
   15956              :           if (pattern1244 (x2, 
   15957              : E_V16SFmode, 
   15958              : E_V8SFmode) != 0
   15959              :               || !
   15960              : #line 20880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15961              : (TARGET_AVX512DQ))
   15962              :             return -1;
   15963              :           return 8516; /* vec_set_lo_v16sf */
   15964              : 
   15965              :         case E_V16SImode:
   15966              :           if (pattern1244 (x2, 
   15967              : E_V16SImode, 
   15968              : E_V8SImode) != 0
   15969              :               || !
   15970              : #line 20880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15971              : (TARGET_AVX512DQ))
   15972              :             return -1;
   15973              :           return 8518; /* vec_set_lo_v16si */
   15974              : 
   15975              :         case E_V16HImode:
   15976              :           if (pattern1244 (x2, 
   15977              : E_V16HImode, 
   15978              : E_V8HImode) != 0
   15979              :               || !
   15980              : #line 29867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15981              : (TARGET_AVX))
   15982              :             return -1;
   15983              :           return 9626; /* vec_set_lo_v16hi */
   15984              : 
   15985              :         case E_V16HFmode:
   15986              :           if (pattern1244 (x2, 
   15987              : E_V16HFmode, 
   15988              : E_V8HFmode) != 0
   15989              :               || !
   15990              : #line 29867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15991              : (TARGET_AVX))
   15992              :             return -1;
   15993              :           return 9627; /* vec_set_lo_v16hf */
   15994              : 
   15995              :         case E_V16BFmode:
   15996              :           if (pattern1244 (x2, 
   15997              : E_V16BFmode, 
   15998              : E_V8BFmode) != 0
   15999              :               || !
   16000              : #line 29867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16001              : (TARGET_AVX))
   16002              :             return -1;
   16003              :           return 9628; /* vec_set_lo_v16bf */
   16004              : 
   16005              :         default:
   16006              :           return -1;
   16007              :         }
   16008              : 
   16009              :     case 4:
   16010              :       x7 = XVECEXP (x4, 0, 0);
   16011              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
   16012              :         return -1;
   16013              :       x8 = XVECEXP (x4, 0, 1);
   16014              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   16015              :         return -1;
   16016              :       x9 = XVECEXP (x4, 0, 2);
   16017              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   16018              :         return -1;
   16019              :       x10 = XVECEXP (x4, 0, 3);
   16020              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
   16021              :         return -1;
   16022              :       switch (GET_MODE (operands[0]))
   16023              :         {
   16024              :         case E_V8DFmode:
   16025              :           if (pattern1244 (x2, 
   16026              : E_V8DFmode, 
   16027              : E_V4DFmode) != 0
   16028              :               || !
   16029              : #line 20914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16030              : (TARGET_AVX512F))
   16031              :             return -1;
   16032              :           return 8524; /* vec_set_lo_v8df */
   16033              : 
   16034              :         case E_V8DImode:
   16035              :           if (pattern1244 (x2, 
   16036              : E_V8DImode, 
   16037              : E_V4DImode) != 0
   16038              :               || !
   16039              : #line 20914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16040              : (TARGET_AVX512F))
   16041              :             return -1;
   16042              :           return 8526; /* vec_set_lo_v8di */
   16043              : 
   16044              :         case E_V8SImode:
   16045              :           if (pattern1244 (x2, 
   16046              : E_V8SImode, 
   16047              : E_V4SImode) != 0
   16048              :               || !
   16049              : #line 29817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16050              : (TARGET_AVX))
   16051              :             return -1;
   16052              :           return 9618; /* vec_set_lo_v8si */
   16053              : 
   16054              :         case E_V8SFmode:
   16055              :           if (pattern1244 (x2, 
   16056              : E_V8SFmode, 
   16057              : E_V4SFmode) != 0
   16058              :               || !
   16059              : #line 29817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16060              : (TARGET_AVX))
   16061              :             return -1;
   16062              :           return 9620; /* vec_set_lo_v8sf */
   16063              : 
   16064              :         default:
   16065              :           return -1;
   16066              :         }
   16067              : 
   16068              :     case 16:
   16069              :       x7 = XVECEXP (x4, 0, 0);
   16070              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
   16071              :         return -1;
   16072              :       x8 = XVECEXP (x4, 0, 1);
   16073              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 17])
   16074              :         return -1;
   16075              :       x9 = XVECEXP (x4, 0, 2);
   16076              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 18]
   16077              :           || pattern1245 (x4, 
   16078              : 23, 
   16079              : 22, 
   16080              : 21, 
   16081              : 20, 
   16082              : 19) != 0)
   16083              :         return -1;
   16084              :       x11 = XVECEXP (x4, 0, 8);
   16085              :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 24])
   16086              :         return -1;
   16087              :       x12 = XVECEXP (x4, 0, 9);
   16088              :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 25])
   16089              :         return -1;
   16090              :       x13 = XVECEXP (x4, 0, 10);
   16091              :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 26])
   16092              :         return -1;
   16093              :       x14 = XVECEXP (x4, 0, 11);
   16094              :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 27])
   16095              :         return -1;
   16096              :       x15 = XVECEXP (x4, 0, 12);
   16097              :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 28])
   16098              :         return -1;
   16099              :       x16 = XVECEXP (x4, 0, 13);
   16100              :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 29])
   16101              :         return -1;
   16102              :       x17 = XVECEXP (x4, 0, 14);
   16103              :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 30])
   16104              :         return -1;
   16105              :       x18 = XVECEXP (x4, 0, 15);
   16106              :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 31]
   16107              :           || pattern1244 (x2, 
   16108              : E_V32QImode, 
   16109              : E_V16QImode) != 0
   16110              :           || !
   16111              : #line 29917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16112              : (TARGET_AVX))
   16113              :         return -1;
   16114              :       return 9632; /* vec_set_lo_v32qi */
   16115              : 
   16116              :     default:
   16117              :       return -1;
   16118              :     }
   16119              : }
   16120              : 
   16121              :  int
   16122              : recog_278 (rtx x1 ATTRIBUTE_UNUSED,
   16123              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16124              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16125              : {
   16126              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16127              :   rtx x2, x3, x4;
   16128              :   int res ATTRIBUTE_UNUSED;
   16129              :   x2 = XEXP (x1, 1);
   16130              :   operands[3] = x2;
   16131              :   x3 = XEXP (x2, 0);
   16132              :   operands[1] = x3;
   16133              :   x4 = XEXP (x2, 1);
   16134              :   operands[2] = x4;
   16135              :   switch (GET_MODE (operands[0]))
   16136              :     {
   16137              :     case E_V8SFmode:
   16138              :       if (pattern809 (
   16139              : E_V8SFmode) != 0)
   16140              :         return -1;
   16141              :       if ((
   16142              : #line 4594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16143              : (TARGET_SSE
   16144              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16145              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16146              : (TARGET_AVX)))
   16147              :         return 3324; /* *avx_maskcmpv8sf3_comm */
   16148              :       if (!(
   16149              : #line 4628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16150              : (TARGET_SSE) && 
   16151              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16152              : (TARGET_AVX)))
   16153              :         return -1;
   16154              :       return 3332; /* avx_maskcmpv8sf3 */
   16155              : 
   16156              :     case E_V4SFmode:
   16157              :       if (pattern809 (
   16158              : E_V4SFmode) != 0)
   16159              :         return -1;
   16160              :       if (
   16161              : #line 4594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16162              : (TARGET_SSE
   16163              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE))
   16164              :         return 3325; /* *sse_maskcmpv4sf3_comm */
   16165              :       if (!
   16166              : #line 4628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16167              : (TARGET_SSE))
   16168              :         return -1;
   16169              :       return 3333; /* sse_maskcmpv4sf3 */
   16170              : 
   16171              :     case E_V4DFmode:
   16172              :       if (pattern809 (
   16173              : E_V4DFmode) != 0)
   16174              :         return -1;
   16175              :       if ((
   16176              : #line 4594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16177              : (TARGET_SSE
   16178              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16179              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16180              : (TARGET_AVX)))
   16181              :         return 3326; /* *avx_maskcmpv4df3_comm */
   16182              :       if (!(
   16183              : #line 4628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16184              : (TARGET_SSE) && 
   16185              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16186              : (TARGET_AVX)))
   16187              :         return -1;
   16188              :       return 3334; /* avx_maskcmpv4df3 */
   16189              : 
   16190              :     case E_V2DFmode:
   16191              :       if (pattern809 (
   16192              : E_V2DFmode) != 0)
   16193              :         return -1;
   16194              :       if ((
   16195              : #line 4594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16196              : (TARGET_SSE
   16197              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16198              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16199              : (TARGET_SSE2)))
   16200              :         return 3327; /* *sse2_maskcmpv2df3_comm */
   16201              :       if (!(
   16202              : #line 4628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16203              : (TARGET_SSE) && 
   16204              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16205              : (TARGET_SSE2)))
   16206              :         return -1;
   16207              :       return 3335; /* sse2_maskcmpv2df3 */
   16208              : 
   16209              :     case E_V8SImode:
   16210              :       if (pattern810 (
   16211              : E_V8SFmode, 
   16212              : E_V8SImode) != 0
   16213              :           || !(
   16214              : #line 4611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16215              : (TARGET_SSE
   16216              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16217              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16218              : (TARGET_AVX)))
   16219              :         return -1;
   16220              :       return 3328; /* *avx_imaskcmpv8sf3_comm */
   16221              : 
   16222              :     case E_V4SImode:
   16223              :       if (pattern810 (
   16224              : E_V4SFmode, 
   16225              : E_V4SImode) != 0
   16226              :           || !
   16227              : #line 4611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16228              : (TARGET_SSE
   16229              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE))
   16230              :         return -1;
   16231              :       return 3329; /* *sse_imaskcmpv4sf3_comm */
   16232              : 
   16233              :     case E_V4DImode:
   16234              :       if (pattern810 (
   16235              : E_V4DFmode, 
   16236              : E_V4DImode) != 0
   16237              :           || !(
   16238              : #line 4611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16239              : (TARGET_SSE
   16240              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16241              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16242              : (TARGET_AVX)))
   16243              :         return -1;
   16244              :       return 3330; /* *avx_imaskcmpv4df3_comm */
   16245              : 
   16246              :     case E_V2DImode:
   16247              :       if (pattern810 (
   16248              : E_V2DFmode, 
   16249              : E_V2DImode) != 0
   16250              :           || !(
   16251              : #line 4611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16252              : (TARGET_SSE
   16253              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16254              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16255              : (TARGET_SSE2)))
   16256              :         return -1;
   16257              :       return 3331; /* *sse2_imaskcmpv2df3_comm */
   16258              : 
   16259              :     default:
   16260              :       return -1;
   16261              :     }
   16262              : }
   16263              : 
   16264              :  int
   16265              : recog_280 (rtx x1 ATTRIBUTE_UNUSED,
   16266              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16267              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16268              : {
   16269              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16270              :   rtx x2, x3, x4, x5;
   16271              :   int res ATTRIBUTE_UNUSED;
   16272              :   x2 = XEXP (x1, 1);
   16273              :   x3 = XEXP (x2, 0);
   16274              :   operands[1] = x3;
   16275              :   x4 = XEXP (x2, 2);
   16276              :   switch (GET_CODE (x4))
   16277              :     {
   16278              :     case REG:
   16279              :     case SUBREG:
   16280              :     case MEM:
   16281              :     case VEC_DUPLICATE:
   16282              :       operands[3] = x4;
   16283              :       switch (GET_MODE (operands[0]))
   16284              :         {
   16285              :         case E_V4SFmode:
   16286              :           if (!register_operand (operands[0], E_V4SFmode)
   16287              :               || GET_MODE (x2) != E_V4SFmode)
   16288              :             return -1;
   16289              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   16290              :               && nonimmediate_operand (operands[2], E_V4SFmode)
   16291              :               && nonimmediate_operand (operands[3], E_V4SFmode)
   16292              :               && 
   16293              : #line 6316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16294              : (TARGET_FMA || TARGET_FMA4))
   16295              :             return 3884; /* *fma_fmadd_v4sf */
   16296              :           if (!bcst_vector_operand (operands[1], E_V4SFmode)
   16297              :               || !bcst_vector_operand (operands[2], E_V4SFmode)
   16298              :               || !bcst_vector_operand (operands[3], E_V4SFmode)
   16299              :               || !(
   16300              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16301              : (TARGET_AVX512F && 1 && 1) && 
   16302              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16303              : (TARGET_AVX512VL)))
   16304              :             return -1;
   16305              :           return 3904; /* *fma_fmadd_v4sf */
   16306              : 
   16307              :         case E_V2DFmode:
   16308              :           if (!register_operand (operands[0], E_V2DFmode)
   16309              :               || GET_MODE (x2) != E_V2DFmode)
   16310              :             return -1;
   16311              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   16312              :               && nonimmediate_operand (operands[2], E_V2DFmode)
   16313              :               && nonimmediate_operand (operands[3], E_V2DFmode)
   16314              :               && 
   16315              : #line 6316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16316              : (TARGET_FMA || TARGET_FMA4))
   16317              :             return 3885; /* *fma_fmadd_v2df */
   16318              :           if (!bcst_vector_operand (operands[1], E_V2DFmode)
   16319              :               || !bcst_vector_operand (operands[2], E_V2DFmode)
   16320              :               || !bcst_vector_operand (operands[3], E_V2DFmode)
   16321              :               || !(
   16322              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16323              : (TARGET_AVX512F && 1 && 1) && 
   16324              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16325              : (TARGET_AVX512VL)))
   16326              :             return -1;
   16327              :           return 3913; /* *fma_fmadd_v2df */
   16328              : 
   16329              :         case E_V8SFmode:
   16330              :           if (!register_operand (operands[0], E_V8SFmode)
   16331              :               || GET_MODE (x2) != E_V8SFmode)
   16332              :             return -1;
   16333              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   16334              :               && nonimmediate_operand (operands[2], E_V8SFmode)
   16335              :               && nonimmediate_operand (operands[3], E_V8SFmode)
   16336              :               && 
   16337              : #line 6316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16338              : (TARGET_FMA || TARGET_FMA4))
   16339              :             return 3886; /* *fma_fmadd_v8sf */
   16340              :           if (!bcst_vector_operand (operands[1], E_V8SFmode)
   16341              :               || !bcst_vector_operand (operands[2], E_V8SFmode)
   16342              :               || !bcst_vector_operand (operands[3], E_V8SFmode)
   16343              :               || !(
   16344              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16345              : (TARGET_AVX512F && 1 && 1) && 
   16346              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16347              : (TARGET_AVX512VL)))
   16348              :             return -1;
   16349              :           return 3902; /* *fma_fmadd_v8sf */
   16350              : 
   16351              :         case E_V4DFmode:
   16352              :           if (!register_operand (operands[0], E_V4DFmode)
   16353              :               || GET_MODE (x2) != E_V4DFmode)
   16354              :             return -1;
   16355              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   16356              :               && nonimmediate_operand (operands[2], E_V4DFmode)
   16357              :               && nonimmediate_operand (operands[3], E_V4DFmode)
   16358              :               && 
   16359              : #line 6316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16360              : (TARGET_FMA || TARGET_FMA4))
   16361              :             return 3887; /* *fma_fmadd_v4df */
   16362              :           if (!bcst_vector_operand (operands[1], E_V4DFmode)
   16363              :               || !bcst_vector_operand (operands[2], E_V4DFmode)
   16364              :               || !bcst_vector_operand (operands[3], E_V4DFmode)
   16365              :               || !(
   16366              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16367              : (TARGET_AVX512F && 1 && 1) && 
   16368              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16369              : (TARGET_AVX512VL)))
   16370              :             return -1;
   16371              :           return 3911; /* *fma_fmadd_v4df */
   16372              : 
   16373              :         case E_V32HFmode:
   16374              :           if (pattern882 (x2, 
   16375              : E_V32HFmode) != 0
   16376              :               || !(
   16377              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16378              : (TARGET_AVX512F && 1 && 1) && 
   16379              : #line 6329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16380              : (TARGET_AVX512FP16)))
   16381              :             return -1;
   16382              :           return 3888; /* *fma_fmadd_v32hf */
   16383              : 
   16384              :         case E_V16HFmode:
   16385              :           if (pattern882 (x2, 
   16386              : E_V16HFmode) != 0
   16387              :               || !(
   16388              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16389              : (TARGET_AVX512F && 1 && 1) && 
   16390              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16391              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   16392              :             return -1;
   16393              :           return 3892; /* *fma_fmadd_v16hf */
   16394              : 
   16395              :         case E_V8HFmode:
   16396              :           if (pattern882 (x2, 
   16397              : E_V8HFmode) != 0
   16398              :               || !(
   16399              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16400              : (TARGET_AVX512F && 1 && 1) && 
   16401              : #line 6331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16402              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   16403              :             return -1;
   16404              :           return 3894; /* *fma_fmadd_v8hf */
   16405              : 
   16406              :         case E_V16SFmode:
   16407              :           if (pattern882 (x2, 
   16408              : E_V16SFmode) != 0
   16409              :               || !
   16410              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16411              : (TARGET_AVX512F && 1 && 1))
   16412              :             return -1;
   16413              :           return 3898; /* *fma_fmadd_v16sf */
   16414              : 
   16415              :         case E_V8DFmode:
   16416              :           if (pattern882 (x2, 
   16417              : E_V8DFmode) != 0
   16418              :               || !
   16419              : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16420              : (TARGET_AVX512F && 1 && 1))
   16421              :             return -1;
   16422              :           return 3907; /* *fma_fmadd_v8df */
   16423              : 
   16424              :         case E_V32BFmode:
   16425              :           if (pattern934 (x2, 
   16426              : E_V32BFmode) != 0
   16427              :               || !
   16428              : #line 33589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16429              : (TARGET_AVX10_2))
   16430              :             return -1;
   16431              :           return 10776; /* avx10_2_fmaddbf16_v32bf */
   16432              : 
   16433              :         case E_V16BFmode:
   16434              :           if (pattern934 (x2, 
   16435              : E_V16BFmode) != 0
   16436              :               || !
   16437              : #line 33589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16438              : (TARGET_AVX10_2))
   16439              :             return -1;
   16440              :           return 10778; /* avx10_2_fmaddbf16_v16bf */
   16441              : 
   16442              :         case E_V8BFmode:
   16443              :           if (pattern934 (x2, 
   16444              : E_V8BFmode) != 0
   16445              :               || !
   16446              : #line 33589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16447              : (TARGET_AVX10_2))
   16448              :             return -1;
   16449              :           return 10780; /* avx10_2_fmaddbf16_v8bf */
   16450              : 
   16451              :         default:
   16452              :           return -1;
   16453              :         }
   16454              : 
   16455              :     case NEG:
   16456              :       x5 = XEXP (x4, 0);
   16457              :       operands[3] = x5;
   16458              :       switch (GET_MODE (operands[0]))
   16459              :         {
   16460              :         case E_V4SFmode:
   16461              :           if (!register_operand (operands[0], E_V4SFmode)
   16462              :               || GET_MODE (x2) != E_V4SFmode
   16463              :               || GET_MODE (x4) != E_V4SFmode)
   16464              :             return -1;
   16465              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   16466              :               && nonimmediate_operand (operands[2], E_V4SFmode)
   16467              :               && nonimmediate_operand (operands[3], E_V4SFmode)
   16468              :               && 
   16469              : #line 6413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16470              : (TARGET_FMA || TARGET_FMA4))
   16471              :             return 3947; /* *fma_fmsub_v4sf */
   16472              :           if (!bcst_vector_operand (operands[1], E_V4SFmode)
   16473              :               || !bcst_vector_operand (operands[2], E_V4SFmode)
   16474              :               || !bcst_vector_operand (operands[3], E_V4SFmode)
   16475              :               || !(
   16476              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16477              : (TARGET_AVX512F && 1 && 1) && 
   16478              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16479              : (TARGET_AVX512VL)))
   16480              :             return -1;
   16481              :           return 3967; /* *fma_fmsub_v4sf */
   16482              : 
   16483              :         case E_V2DFmode:
   16484              :           if (!register_operand (operands[0], E_V2DFmode)
   16485              :               || GET_MODE (x2) != E_V2DFmode
   16486              :               || GET_MODE (x4) != E_V2DFmode)
   16487              :             return -1;
   16488              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   16489              :               && nonimmediate_operand (operands[2], E_V2DFmode)
   16490              :               && nonimmediate_operand (operands[3], E_V2DFmode)
   16491              :               && 
   16492              : #line 6413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16493              : (TARGET_FMA || TARGET_FMA4))
   16494              :             return 3948; /* *fma_fmsub_v2df */
   16495              :           if (!bcst_vector_operand (operands[1], E_V2DFmode)
   16496              :               || !bcst_vector_operand (operands[2], E_V2DFmode)
   16497              :               || !bcst_vector_operand (operands[3], E_V2DFmode)
   16498              :               || !(
   16499              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16500              : (TARGET_AVX512F && 1 && 1) && 
   16501              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16502              : (TARGET_AVX512VL)))
   16503              :             return -1;
   16504              :           return 3976; /* *fma_fmsub_v2df */
   16505              : 
   16506              :         case E_V8SFmode:
   16507              :           if (!register_operand (operands[0], E_V8SFmode)
   16508              :               || GET_MODE (x2) != E_V8SFmode
   16509              :               || GET_MODE (x4) != E_V8SFmode)
   16510              :             return -1;
   16511              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   16512              :               && nonimmediate_operand (operands[2], E_V8SFmode)
   16513              :               && nonimmediate_operand (operands[3], E_V8SFmode)
   16514              :               && 
   16515              : #line 6413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16516              : (TARGET_FMA || TARGET_FMA4))
   16517              :             return 3949; /* *fma_fmsub_v8sf */
   16518              :           if (!bcst_vector_operand (operands[1], E_V8SFmode)
   16519              :               || !bcst_vector_operand (operands[2], E_V8SFmode)
   16520              :               || !bcst_vector_operand (operands[3], E_V8SFmode)
   16521              :               || !(
   16522              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16523              : (TARGET_AVX512F && 1 && 1) && 
   16524              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16525              : (TARGET_AVX512VL)))
   16526              :             return -1;
   16527              :           return 3965; /* *fma_fmsub_v8sf */
   16528              : 
   16529              :         case E_V4DFmode:
   16530              :           if (!register_operand (operands[0], E_V4DFmode)
   16531              :               || GET_MODE (x2) != E_V4DFmode
   16532              :               || GET_MODE (x4) != E_V4DFmode)
   16533              :             return -1;
   16534              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   16535              :               && nonimmediate_operand (operands[2], E_V4DFmode)
   16536              :               && nonimmediate_operand (operands[3], E_V4DFmode)
   16537              :               && 
   16538              : #line 6413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16539              : (TARGET_FMA || TARGET_FMA4))
   16540              :             return 3950; /* *fma_fmsub_v4df */
   16541              :           if (!bcst_vector_operand (operands[1], E_V4DFmode)
   16542              :               || !bcst_vector_operand (operands[2], E_V4DFmode)
   16543              :               || !bcst_vector_operand (operands[3], E_V4DFmode)
   16544              :               || !(
   16545              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16546              : (TARGET_AVX512F && 1 && 1) && 
   16547              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16548              : (TARGET_AVX512VL)))
   16549              :             return -1;
   16550              :           return 3974; /* *fma_fmsub_v4df */
   16551              : 
   16552              :         case E_V32HFmode:
   16553              :           if (pattern883 (x2, 
   16554              : E_V32HFmode) != 0
   16555              :               || !(
   16556              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16557              : (TARGET_AVX512F && 1 && 1) && 
   16558              : #line 6329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16559              : (TARGET_AVX512FP16)))
   16560              :             return -1;
   16561              :           return 3951; /* *fma_fmsub_v32hf */
   16562              : 
   16563              :         case E_V16HFmode:
   16564              :           if (pattern883 (x2, 
   16565              : E_V16HFmode) != 0
   16566              :               || !(
   16567              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16568              : (TARGET_AVX512F && 1 && 1) && 
   16569              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16570              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   16571              :             return -1;
   16572              :           return 3955; /* *fma_fmsub_v16hf */
   16573              : 
   16574              :         case E_V8HFmode:
   16575              :           if (pattern883 (x2, 
   16576              : E_V8HFmode) != 0
   16577              :               || !(
   16578              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16579              : (TARGET_AVX512F && 1 && 1) && 
   16580              : #line 6331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16581              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   16582              :             return -1;
   16583              :           return 3957; /* *fma_fmsub_v8hf */
   16584              : 
   16585              :         case E_V16SFmode:
   16586              :           if (pattern883 (x2, 
   16587              : E_V16SFmode) != 0
   16588              :               || !
   16589              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16590              : (TARGET_AVX512F && 1 && 1))
   16591              :             return -1;
   16592              :           return 3961; /* *fma_fmsub_v16sf */
   16593              : 
   16594              :         case E_V8DFmode:
   16595              :           if (pattern883 (x2, 
   16596              : E_V8DFmode) != 0
   16597              :               || !
   16598              : #line 6445 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16599              : (TARGET_AVX512F && 1 && 1))
   16600              :             return -1;
   16601              :           return 3970; /* *fma_fmsub_v8df */
   16602              : 
   16603              :         case E_V32BFmode:
   16604              :           if (pattern935 (x2, 
   16605              : E_V32BFmode) != 0
   16606              :               || !
   16607              : #line 33717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16608              : (TARGET_AVX10_2))
   16609              :             return -1;
   16610              :           return 10800; /* avx10_2_fmsubbf16_v32bf */
   16611              : 
   16612              :         case E_V16BFmode:
   16613              :           if (pattern935 (x2, 
   16614              : E_V16BFmode) != 0
   16615              :               || !
   16616              : #line 33717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16617              : (TARGET_AVX10_2))
   16618              :             return -1;
   16619              :           return 10802; /* avx10_2_fmsubbf16_v16bf */
   16620              : 
   16621              :         case E_V8BFmode:
   16622              :           if (pattern935 (x2, 
   16623              : E_V8BFmode) != 0
   16624              :               || !
   16625              : #line 33717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16626              : (TARGET_AVX10_2))
   16627              :             return -1;
   16628              :           return 10804; /* avx10_2_fmsubbf16_v8bf */
   16629              : 
   16630              :         default:
   16631              :           return -1;
   16632              :         }
   16633              : 
   16634              :     default:
   16635              :       return -1;
   16636              :     }
   16637              : }
   16638              : 
   16639              :  int
   16640              : recog_289 (rtx x1 ATTRIBUTE_UNUSED,
   16641              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16642              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16643              : {
   16644              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16645              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16646              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16647              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   16648              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   16649              :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
   16650              :   rtx x42, x43, x44, x45, x46, x47, x48, x49;
   16651              :   rtx x50, x51, x52, x53, x54, x55, x56, x57;
   16652              :   rtx x58, x59, x60, x61, x62, x63, x64, x65;
   16653              :   rtx x66, x67;
   16654              :   int res ATTRIBUTE_UNUSED;
   16655              :   x2 = XEXP (x1, 1);
   16656              :   x3 = XEXP (x2, 1);
   16657              :   if (pattern691 (x3) != 0)
   16658              :     return -1;
   16659              :   x4 = XVECEXP (x3, 0, 32);
   16660              :   if (GET_CODE (x4) != CONST_INT)
   16661              :     return -1;
   16662              :   x5 = XVECEXP (x3, 0, 33);
   16663              :   if (GET_CODE (x5) != CONST_INT)
   16664              :     return -1;
   16665              :   x6 = XVECEXP (x3, 0, 34);
   16666              :   if (GET_CODE (x6) != CONST_INT)
   16667              :     return -1;
   16668              :   x7 = XVECEXP (x3, 0, 35);
   16669              :   if (GET_CODE (x7) != CONST_INT)
   16670              :     return -1;
   16671              :   x8 = XVECEXP (x3, 0, 36);
   16672              :   if (GET_CODE (x8) != CONST_INT)
   16673              :     return -1;
   16674              :   x9 = XVECEXP (x3, 0, 37);
   16675              :   if (GET_CODE (x9) != CONST_INT)
   16676              :     return -1;
   16677              :   x10 = XVECEXP (x3, 0, 38);
   16678              :   if (GET_CODE (x10) != CONST_INT)
   16679              :     return -1;
   16680              :   x11 = XVECEXP (x3, 0, 39);
   16681              :   if (GET_CODE (x11) != CONST_INT)
   16682              :     return -1;
   16683              :   x12 = XVECEXP (x3, 0, 40);
   16684              :   if (GET_CODE (x12) != CONST_INT)
   16685              :     return -1;
   16686              :   x13 = XVECEXP (x3, 0, 41);
   16687              :   if (GET_CODE (x13) != CONST_INT)
   16688              :     return -1;
   16689              :   x14 = XVECEXP (x3, 0, 42);
   16690              :   if (GET_CODE (x14) != CONST_INT)
   16691              :     return -1;
   16692              :   x15 = XVECEXP (x3, 0, 43);
   16693              :   if (GET_CODE (x15) != CONST_INT)
   16694              :     return -1;
   16695              :   x16 = XVECEXP (x3, 0, 44);
   16696              :   if (GET_CODE (x16) != CONST_INT)
   16697              :     return -1;
   16698              :   x17 = XVECEXP (x3, 0, 45);
   16699              :   if (GET_CODE (x17) != CONST_INT)
   16700              :     return -1;
   16701              :   x18 = XVECEXP (x3, 0, 46);
   16702              :   if (GET_CODE (x18) != CONST_INT)
   16703              :     return -1;
   16704              :   x19 = XVECEXP (x3, 0, 47);
   16705              :   if (GET_CODE (x19) != CONST_INT)
   16706              :     return -1;
   16707              :   x20 = XVECEXP (x3, 0, 48);
   16708              :   if (GET_CODE (x20) != CONST_INT)
   16709              :     return -1;
   16710              :   x21 = XVECEXP (x3, 0, 49);
   16711              :   if (GET_CODE (x21) != CONST_INT)
   16712              :     return -1;
   16713              :   x22 = XVECEXP (x3, 0, 50);
   16714              :   if (GET_CODE (x22) != CONST_INT)
   16715              :     return -1;
   16716              :   x23 = XVECEXP (x3, 0, 51);
   16717              :   if (GET_CODE (x23) != CONST_INT)
   16718              :     return -1;
   16719              :   x24 = XVECEXP (x3, 0, 52);
   16720              :   if (GET_CODE (x24) != CONST_INT)
   16721              :     return -1;
   16722              :   x25 = XVECEXP (x3, 0, 53);
   16723              :   if (GET_CODE (x25) != CONST_INT)
   16724              :     return -1;
   16725              :   x26 = XVECEXP (x3, 0, 54);
   16726              :   if (GET_CODE (x26) != CONST_INT)
   16727              :     return -1;
   16728              :   x27 = XVECEXP (x3, 0, 55);
   16729              :   if (GET_CODE (x27) != CONST_INT)
   16730              :     return -1;
   16731              :   x28 = XVECEXP (x3, 0, 56);
   16732              :   if (GET_CODE (x28) != CONST_INT)
   16733              :     return -1;
   16734              :   x29 = XVECEXP (x3, 0, 57);
   16735              :   if (GET_CODE (x29) != CONST_INT)
   16736              :     return -1;
   16737              :   x30 = XVECEXP (x3, 0, 58);
   16738              :   if (GET_CODE (x30) != CONST_INT)
   16739              :     return -1;
   16740              :   x31 = XVECEXP (x3, 0, 59);
   16741              :   if (GET_CODE (x31) != CONST_INT)
   16742              :     return -1;
   16743              :   x32 = XVECEXP (x3, 0, 60);
   16744              :   if (GET_CODE (x32) != CONST_INT)
   16745              :     return -1;
   16746              :   x33 = XVECEXP (x3, 0, 61);
   16747              :   if (GET_CODE (x33) != CONST_INT)
   16748              :     return -1;
   16749              :   x34 = XVECEXP (x3, 0, 62);
   16750              :   if (GET_CODE (x34) != CONST_INT)
   16751              :     return -1;
   16752              :   x35 = XVECEXP (x3, 0, 63);
   16753              :   if (GET_CODE (x35) != CONST_INT
   16754              :       || pattern1645 (x2, 
   16755              : E_V64QImode, 
   16756              : E_V128QImode) != 0)
   16757              :     return -1;
   16758              :   x36 = XVECEXP (x3, 0, 0);
   16759              :   switch (XWINT (x36, 0))
   16760              :     {
   16761              :     case 8L:
   16762              :       x37 = XVECEXP (x3, 0, 1);
   16763              :       if (XWINT (x37, 0) != 72L)
   16764              :         return -1;
   16765              :       x38 = XVECEXP (x3, 0, 2);
   16766              :       if (XWINT (x38, 0) != 9L)
   16767              :         return -1;
   16768              :       x39 = XVECEXP (x3, 0, 3);
   16769              :       if (XWINT (x39, 0) != 73L)
   16770              :         return -1;
   16771              :       x40 = XVECEXP (x3, 0, 4);
   16772              :       if (XWINT (x40, 0) != 10L)
   16773              :         return -1;
   16774              :       x41 = XVECEXP (x3, 0, 5);
   16775              :       if (XWINT (x41, 0) != 74L)
   16776              :         return -1;
   16777              :       x42 = XVECEXP (x3, 0, 6);
   16778              :       if (XWINT (x42, 0) != 11L)
   16779              :         return -1;
   16780              :       x43 = XVECEXP (x3, 0, 7);
   16781              :       if (XWINT (x43, 0) != 75L)
   16782              :         return -1;
   16783              :       x44 = XVECEXP (x3, 0, 8);
   16784              :       if (XWINT (x44, 0) != 12L)
   16785              :         return -1;
   16786              :       x45 = XVECEXP (x3, 0, 9);
   16787              :       if (XWINT (x45, 0) != 76L)
   16788              :         return -1;
   16789              :       x46 = XVECEXP (x3, 0, 10);
   16790              :       if (XWINT (x46, 0) != 13L)
   16791              :         return -1;
   16792              :       x47 = XVECEXP (x3, 0, 11);
   16793              :       if (XWINT (x47, 0) != 77L)
   16794              :         return -1;
   16795              :       x48 = XVECEXP (x3, 0, 12);
   16796              :       if (XWINT (x48, 0) != 14L)
   16797              :         return -1;
   16798              :       x49 = XVECEXP (x3, 0, 13);
   16799              :       if (XWINT (x49, 0) != 78L)
   16800              :         return -1;
   16801              :       x50 = XVECEXP (x3, 0, 14);
   16802              :       if (XWINT (x50, 0) != 15L)
   16803              :         return -1;
   16804              :       x51 = XVECEXP (x3, 0, 15);
   16805              :       if (XWINT (x51, 0) != 79L)
   16806              :         return -1;
   16807              :       x52 = XVECEXP (x3, 0, 16);
   16808              :       if (XWINT (x52, 0) != 24L)
   16809              :         return -1;
   16810              :       x53 = XVECEXP (x3, 0, 17);
   16811              :       if (XWINT (x53, 0) != 88L)
   16812              :         return -1;
   16813              :       x54 = XVECEXP (x3, 0, 18);
   16814              :       if (XWINT (x54, 0) != 25L)
   16815              :         return -1;
   16816              :       x55 = XVECEXP (x3, 0, 19);
   16817              :       if (XWINT (x55, 0) != 89L)
   16818              :         return -1;
   16819              :       x56 = XVECEXP (x3, 0, 20);
   16820              :       if (XWINT (x56, 0) != 26L)
   16821              :         return -1;
   16822              :       x57 = XVECEXP (x3, 0, 21);
   16823              :       if (XWINT (x57, 0) != 90L)
   16824              :         return -1;
   16825              :       x58 = XVECEXP (x3, 0, 22);
   16826              :       if (XWINT (x58, 0) != 27L)
   16827              :         return -1;
   16828              :       x59 = XVECEXP (x3, 0, 23);
   16829              :       if (XWINT (x59, 0) != 91L)
   16830              :         return -1;
   16831              :       x60 = XVECEXP (x3, 0, 24);
   16832              :       if (XWINT (x60, 0) != 28L)
   16833              :         return -1;
   16834              :       x61 = XVECEXP (x3, 0, 25);
   16835              :       if (XWINT (x61, 0) != 92L)
   16836              :         return -1;
   16837              :       x62 = XVECEXP (x3, 0, 26);
   16838              :       if (XWINT (x62, 0) != 29L)
   16839              :         return -1;
   16840              :       x63 = XVECEXP (x3, 0, 27);
   16841              :       if (XWINT (x63, 0) != 93L)
   16842              :         return -1;
   16843              :       x64 = XVECEXP (x3, 0, 28);
   16844              :       if (XWINT (x64, 0) != 30L)
   16845              :         return -1;
   16846              :       x65 = XVECEXP (x3, 0, 29);
   16847              :       if (XWINT (x65, 0) != 94L)
   16848              :         return -1;
   16849              :       x66 = XVECEXP (x3, 0, 30);
   16850              :       if (XWINT (x66, 0) != 31L)
   16851              :         return -1;
   16852              :       x67 = XVECEXP (x3, 0, 31);
   16853              :       if (XWINT (x67, 0) != 95L
   16854              :           || XWINT (x4, 0) != 40L
   16855              :           || XWINT (x5, 0) != 104L
   16856              :           || XWINT (x6, 0) != 41L
   16857              :           || XWINT (x7, 0) != 105L
   16858              :           || XWINT (x8, 0) != 42L
   16859              :           || XWINT (x9, 0) != 106L
   16860              :           || XWINT (x10, 0) != 43L
   16861              :           || XWINT (x11, 0) != 107L
   16862              :           || XWINT (x12, 0) != 44L
   16863              :           || XWINT (x13, 0) != 108L
   16864              :           || XWINT (x14, 0) != 45L
   16865              :           || XWINT (x15, 0) != 109L
   16866              :           || XWINT (x16, 0) != 46L
   16867              :           || XWINT (x17, 0) != 110L
   16868              :           || XWINT (x18, 0) != 47L
   16869              :           || XWINT (x19, 0) != 111L
   16870              :           || XWINT (x20, 0) != 56L
   16871              :           || XWINT (x21, 0) != 120L
   16872              :           || XWINT (x22, 0) != 57L
   16873              :           || XWINT (x23, 0) != 121L
   16874              :           || XWINT (x24, 0) != 58L
   16875              :           || XWINT (x25, 0) != 122L
   16876              :           || XWINT (x26, 0) != 59L
   16877              :           || XWINT (x27, 0) != 123L
   16878              :           || XWINT (x28, 0) != 60L
   16879              :           || XWINT (x29, 0) != 124L
   16880              :           || XWINT (x30, 0) != 61L
   16881              :           || XWINT (x31, 0) != 125L
   16882              :           || XWINT (x32, 0) != 62L
   16883              :           || XWINT (x33, 0) != 126L
   16884              :           || XWINT (x34, 0) != 63L
   16885              :           || XWINT (x35, 0) != 127L
   16886              :           || !
   16887              : #line 20206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16888              : (TARGET_AVX512BW))
   16889              :         return -1;
   16890              :       return 8438; /* avx512bw_interleave_highv64qi */
   16891              : 
   16892              :     case 0L:
   16893              :       x37 = XVECEXP (x3, 0, 1);
   16894              :       if (XWINT (x37, 0) != 64L)
   16895              :         return -1;
   16896              :       x38 = XVECEXP (x3, 0, 2);
   16897              :       if (XWINT (x38, 0) != 1L)
   16898              :         return -1;
   16899              :       x39 = XVECEXP (x3, 0, 3);
   16900              :       if (XWINT (x39, 0) != 65L)
   16901              :         return -1;
   16902              :       x40 = XVECEXP (x3, 0, 4);
   16903              :       if (XWINT (x40, 0) != 2L)
   16904              :         return -1;
   16905              :       x41 = XVECEXP (x3, 0, 5);
   16906              :       if (XWINT (x41, 0) != 66L)
   16907              :         return -1;
   16908              :       x42 = XVECEXP (x3, 0, 6);
   16909              :       if (XWINT (x42, 0) != 3L)
   16910              :         return -1;
   16911              :       x43 = XVECEXP (x3, 0, 7);
   16912              :       if (XWINT (x43, 0) != 67L)
   16913              :         return -1;
   16914              :       x44 = XVECEXP (x3, 0, 8);
   16915              :       if (XWINT (x44, 0) != 4L)
   16916              :         return -1;
   16917              :       x45 = XVECEXP (x3, 0, 9);
   16918              :       if (XWINT (x45, 0) != 68L)
   16919              :         return -1;
   16920              :       x46 = XVECEXP (x3, 0, 10);
   16921              :       if (XWINT (x46, 0) != 5L)
   16922              :         return -1;
   16923              :       x47 = XVECEXP (x3, 0, 11);
   16924              :       if (XWINT (x47, 0) != 69L)
   16925              :         return -1;
   16926              :       x48 = XVECEXP (x3, 0, 12);
   16927              :       if (XWINT (x48, 0) != 6L)
   16928              :         return -1;
   16929              :       x49 = XVECEXP (x3, 0, 13);
   16930              :       if (XWINT (x49, 0) != 70L)
   16931              :         return -1;
   16932              :       x50 = XVECEXP (x3, 0, 14);
   16933              :       if (XWINT (x50, 0) != 7L)
   16934              :         return -1;
   16935              :       x51 = XVECEXP (x3, 0, 15);
   16936              :       if (XWINT (x51, 0) != 71L)
   16937              :         return -1;
   16938              :       x52 = XVECEXP (x3, 0, 16);
   16939              :       if (XWINT (x52, 0) != 16L)
   16940              :         return -1;
   16941              :       x53 = XVECEXP (x3, 0, 17);
   16942              :       if (XWINT (x53, 0) != 80L)
   16943              :         return -1;
   16944              :       x54 = XVECEXP (x3, 0, 18);
   16945              :       if (XWINT (x54, 0) != 17L)
   16946              :         return -1;
   16947              :       x55 = XVECEXP (x3, 0, 19);
   16948              :       if (XWINT (x55, 0) != 81L)
   16949              :         return -1;
   16950              :       x56 = XVECEXP (x3, 0, 20);
   16951              :       if (XWINT (x56, 0) != 18L)
   16952              :         return -1;
   16953              :       x57 = XVECEXP (x3, 0, 21);
   16954              :       if (XWINT (x57, 0) != 82L)
   16955              :         return -1;
   16956              :       x58 = XVECEXP (x3, 0, 22);
   16957              :       if (XWINT (x58, 0) != 19L)
   16958              :         return -1;
   16959              :       x59 = XVECEXP (x3, 0, 23);
   16960              :       if (XWINT (x59, 0) != 83L)
   16961              :         return -1;
   16962              :       x60 = XVECEXP (x3, 0, 24);
   16963              :       if (XWINT (x60, 0) != 20L)
   16964              :         return -1;
   16965              :       x61 = XVECEXP (x3, 0, 25);
   16966              :       if (XWINT (x61, 0) != 84L)
   16967              :         return -1;
   16968              :       x62 = XVECEXP (x3, 0, 26);
   16969              :       if (XWINT (x62, 0) != 21L)
   16970              :         return -1;
   16971              :       x63 = XVECEXP (x3, 0, 27);
   16972              :       if (XWINT (x63, 0) != 85L)
   16973              :         return -1;
   16974              :       x64 = XVECEXP (x3, 0, 28);
   16975              :       if (XWINT (x64, 0) != 22L)
   16976              :         return -1;
   16977              :       x65 = XVECEXP (x3, 0, 29);
   16978              :       if (XWINT (x65, 0) != 86L)
   16979              :         return -1;
   16980              :       x66 = XVECEXP (x3, 0, 30);
   16981              :       if (XWINT (x66, 0) != 23L)
   16982              :         return -1;
   16983              :       x67 = XVECEXP (x3, 0, 31);
   16984              :       if (XWINT (x67, 0) != 87L
   16985              :           || XWINT (x4, 0) != 32L
   16986              :           || XWINT (x5, 0) != 96L
   16987              :           || XWINT (x6, 0) != 33L
   16988              :           || XWINT (x7, 0) != 97L
   16989              :           || XWINT (x8, 0) != 34L
   16990              :           || XWINT (x9, 0) != 98L
   16991              :           || XWINT (x10, 0) != 35L
   16992              :           || XWINT (x11, 0) != 99L
   16993              :           || XWINT (x12, 0) != 36L
   16994              :           || XWINT (x13, 0) != 100L
   16995              :           || XWINT (x14, 0) != 37L
   16996              :           || XWINT (x15, 0) != 101L
   16997              :           || XWINT (x16, 0) != 38L
   16998              :           || XWINT (x17, 0) != 102L
   16999              :           || XWINT (x18, 0) != 39L
   17000              :           || XWINT (x19, 0) != 103L
   17001              :           || XWINT (x20, 0) != 48L
   17002              :           || XWINT (x21, 0) != 112L
   17003              :           || XWINT (x22, 0) != 49L
   17004              :           || XWINT (x23, 0) != 113L
   17005              :           || XWINT (x24, 0) != 50L
   17006              :           || XWINT (x25, 0) != 114L
   17007              :           || XWINT (x26, 0) != 51L
   17008              :           || XWINT (x27, 0) != 115L
   17009              :           || XWINT (x28, 0) != 52L
   17010              :           || XWINT (x29, 0) != 116L
   17011              :           || XWINT (x30, 0) != 53L
   17012              :           || XWINT (x31, 0) != 117L
   17013              :           || XWINT (x32, 0) != 54L
   17014              :           || XWINT (x33, 0) != 118L
   17015              :           || XWINT (x34, 0) != 55L
   17016              :           || XWINT (x35, 0) != 119L
   17017              :           || !
   17018              : #line 20302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17019              : (TARGET_AVX512BW))
   17020              :         return -1;
   17021              :       return 8444; /* avx512bw_interleave_lowv64qi */
   17022              : 
   17023              :     default:
   17024              :       return -1;
   17025              :     }
   17026              : }
   17027              : 
   17028              :  int
   17029              : recog_304 (rtx x1 ATTRIBUTE_UNUSED,
   17030              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17031              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17032              : {
   17033              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17034              :   rtx x2, x3, x4;
   17035              :   int res ATTRIBUTE_UNUSED;
   17036              :   x2 = XEXP (x1, 1);
   17037              :   x3 = XEXP (x2, 1);
   17038              :   x4 = XVECEXP (x3, 0, 0);
   17039              :   operands[3] = x4;
   17040              :   if (!const_int_operand (operands[3], E_VOIDmode))
   17041              :     return -1;
   17042              :   switch (GET_MODE (operands[0]))
   17043              :     {
   17044              :     case E_V4SFmode:
   17045              :       if (!register_operand (operands[0], E_V4SFmode)
   17046              :           || GET_MODE (x2) != E_V4SFmode)
   17047              :         return -1;
   17048              :       if (nonimmediate_operand (operands[1], E_V4SFmode))
   17049              :         {
   17050              :           if (avx_vbroadcast_operand (operands[2], E_VOIDmode)
   17051              :               && 
   17052              : #line 28668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17053              : (TARGET_AVX))
   17054              :             return 9283; /* *avx_vperm_broadcast_v4sf */
   17055              :           if (
   17056              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17057              : (TARGET_AVX && 1
   17058              :    && avx_vpermilp_parallel (operands[2], V4SFmode)))
   17059              :             return 9302; /* *avx_vpermilpv4sf */
   17060              :         }
   17061              :       if (!register_operand (operands[1], E_V4SFmode)
   17062              :           || !palignr_operand (operands[2], E_VOIDmode)
   17063              :           || !
   17064              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17065              : (TARGET_SSSE3))
   17066              :         return -1;
   17067              :       return 9608; /* *ssse3_palignrv4sf_perm */
   17068              : 
   17069              :     case E_V8SFmode:
   17070              :       if (!register_operand (operands[0], E_V8SFmode)
   17071              :           || GET_MODE (x2) != E_V8SFmode
   17072              :           || !nonimmediate_operand (operands[1], E_V8SFmode))
   17073              :         return -1;
   17074              :       if (avx_vbroadcast_operand (operands[2], E_VOIDmode)
   17075              :           && 
   17076              : #line 28696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17077              : (TARGET_AVX
   17078              :    && (V8SFmode != V4DFmode || !TARGET_AVX2 || operands[3] == const0_rtx)))
   17079              :         return 9284; /* *avx_vperm_broadcast_v8sf */
   17080              :       if (!(
   17081              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17082              : (TARGET_AVX && 1
   17083              :    && avx_vpermilp_parallel (operands[2], V8SFmode)) && 
   17084              : #line 313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17085              : (TARGET_AVX)))
   17086              :         return -1;
   17087              :       return 9300; /* *avx_vpermilpv8sf */
   17088              : 
   17089              :     case E_V4DFmode:
   17090              :       if (!register_operand (operands[0], E_V4DFmode)
   17091              :           || GET_MODE (x2) != E_V4DFmode
   17092              :           || !nonimmediate_operand (operands[1], E_V4DFmode))
   17093              :         return -1;
   17094              :       if (avx_vbroadcast_operand (operands[2], E_VOIDmode)
   17095              :           && 
   17096              : #line 28696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17097              : (TARGET_AVX
   17098              :    && (V4DFmode != V4DFmode || !TARGET_AVX2 || operands[3] == const0_rtx)))
   17099              :         return 9285; /* *avx_vperm_broadcast_v4df */
   17100              :       if (!(
   17101              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17102              : (TARGET_AVX && 1
   17103              :    && avx_vpermilp_parallel (operands[2], V4DFmode)) && 
   17104              : #line 314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17105              : (TARGET_AVX)))
   17106              :         return -1;
   17107              :       return 9306; /* *avx_vpermilpv4df */
   17108              : 
   17109              :     case E_V16SImode:
   17110              :       if (!register_operand (operands[0], E_V16SImode)
   17111              :           || GET_MODE (x2) != E_V16SImode
   17112              :           || !nonimmediate_operand (operands[1], E_V16SImode)
   17113              :           || !(
   17114              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17115              : (TARGET_AVX && 1
   17116              :    && avx_vpermilp_parallel (operands[2], V16SImode)) && 
   17117              : #line 311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17118              : (TARGET_AVX512F)))
   17119              :         return -1;
   17120              :       return 9286; /* *avx512f_vpermilpv16si */
   17121              : 
   17122              :     case E_V8SImode:
   17123              :       if (!register_operand (operands[0], E_V8SImode)
   17124              :           || GET_MODE (x2) != E_V8SImode
   17125              :           || !nonimmediate_operand (operands[1], E_V8SImode)
   17126              :           || !(
   17127              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17128              : (TARGET_AVX && 1
   17129              :    && avx_vpermilp_parallel (operands[2], V8SImode)) && 
   17130              : #line 311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17131              : (TARGET_AVX)))
   17132              :         return -1;
   17133              :       return 9288; /* *avx_vpermilpv8si */
   17134              : 
   17135              :     case E_V4SImode:
   17136              :       if (!register_operand (operands[0], E_V4SImode)
   17137              :           || GET_MODE (x2) != E_V4SImode)
   17138              :         return -1;
   17139              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   17140              :           && 
   17141              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17142              : (TARGET_AVX && 1
   17143              :    && avx_vpermilp_parallel (operands[2], V4SImode)))
   17144              :         return 9290; /* *sse2_vpermilpv4si */
   17145              :       if (!register_operand (operands[1], E_V4SImode)
   17146              :           || !palignr_operand (operands[2], E_VOIDmode)
   17147              :           || !
   17148              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17149              : (TARGET_SSSE3))
   17150              :         return -1;
   17151              :       return 9606; /* *ssse3_palignrv4si_perm */
   17152              : 
   17153              :     case E_V8DImode:
   17154              :       if (!register_operand (operands[0], E_V8DImode)
   17155              :           || GET_MODE (x2) != E_V8DImode
   17156              :           || !nonimmediate_operand (operands[1], E_V8DImode)
   17157              :           || !(
   17158              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17159              : (TARGET_AVX && 1
   17160              :    && avx_vpermilp_parallel (operands[2], V8DImode)) && 
   17161              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17162              : (TARGET_AVX512F)))
   17163              :         return -1;
   17164              :       return 9292; /* *avx512f_vpermilpv8di */
   17165              : 
   17166              :     case E_V4DImode:
   17167              :       if (!register_operand (operands[0], E_V4DImode)
   17168              :           || GET_MODE (x2) != E_V4DImode
   17169              :           || !nonimmediate_operand (operands[1], E_V4DImode)
   17170              :           || !(
   17171              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17172              : (TARGET_AVX && 1
   17173              :    && avx_vpermilp_parallel (operands[2], V4DImode)) && 
   17174              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17175              : (TARGET_AVX)))
   17176              :         return -1;
   17177              :       return 9294; /* *avx512vl_vpermilpv4di */
   17178              : 
   17179              :     case E_V2DImode:
   17180              :       if (!register_operand (operands[0], E_V2DImode)
   17181              :           || GET_MODE (x2) != E_V2DImode)
   17182              :         return -1;
   17183              :       if (nonimmediate_operand (operands[1], E_V2DImode)
   17184              :           && (
   17185              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17186              : (TARGET_AVX && 1
   17187              :    && avx_vpermilp_parallel (operands[2], V2DImode)) && 
   17188              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17189              : (TARGET_SSE2)))
   17190              :         return 9296; /* *avx512vl_vpermilpv2di */
   17191              :       if (!register_operand (operands[1], E_V2DImode)
   17192              :           || !palignr_operand (operands[2], E_VOIDmode)
   17193              :           || !
   17194              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17195              : (TARGET_SSSE3))
   17196              :         return -1;
   17197              :       return 9607; /* *ssse3_palignrv2di_perm */
   17198              : 
   17199              :     case E_V16SFmode:
   17200              :       if (!register_operand (operands[0], E_V16SFmode)
   17201              :           || GET_MODE (x2) != E_V16SFmode
   17202              :           || !nonimmediate_operand (operands[1], E_V16SFmode)
   17203              :           || !(
   17204              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17205              : (TARGET_AVX && 1
   17206              :    && avx_vpermilp_parallel (operands[2], V16SFmode)) && 
   17207              : #line 313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17208              : (TARGET_AVX512F)))
   17209              :         return -1;
   17210              :       return 9298; /* *avx512f_vpermilpv16sf */
   17211              : 
   17212              :     case E_V8DFmode:
   17213              :       if (!register_operand (operands[0], E_V8DFmode)
   17214              :           || GET_MODE (x2) != E_V8DFmode
   17215              :           || !nonimmediate_operand (operands[1], E_V8DFmode)
   17216              :           || !(
   17217              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17218              : (TARGET_AVX && 1
   17219              :    && avx_vpermilp_parallel (operands[2], V8DFmode)) && 
   17220              : #line 314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17221              : (TARGET_AVX512F)))
   17222              :         return -1;
   17223              :       return 9304; /* *avx512f_vpermilpv8df */
   17224              : 
   17225              :     case E_V2DFmode:
   17226              :       if (!register_operand (operands[0], E_V2DFmode)
   17227              :           || GET_MODE (x2) != E_V2DFmode)
   17228              :         return -1;
   17229              :       if (nonimmediate_operand (operands[1], E_V2DFmode)
   17230              :           && (
   17231              : #line 28805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17232              : (TARGET_AVX && 1
   17233              :    && avx_vpermilp_parallel (operands[2], V2DFmode)) && 
   17234              : #line 314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17235              : (TARGET_SSE2)))
   17236              :         return 9308; /* *avx_vpermilpv2df */
   17237              :       if (!register_operand (operands[1], E_V2DFmode)
   17238              :           || !palignr_operand (operands[2], E_VOIDmode)
   17239              :           || !(
   17240              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17241              : (TARGET_SSSE3) && 
   17242              : #line 356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17243              : (TARGET_SSE2)))
   17244              :         return -1;
   17245              :       return 9609; /* *ssse3_palignrv2df_perm */
   17246              : 
   17247              :     case E_V16QImode:
   17248              :       if (pattern1161 (x2, 
   17249              : E_V16QImode) != 0
   17250              :           || !
   17251              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17252              : (TARGET_SSSE3))
   17253              :         return -1;
   17254              :       return 9602; /* *ssse3_palignrv16qi_perm */
   17255              : 
   17256              :     case E_V8HImode:
   17257              :       if (pattern1161 (x2, 
   17258              : E_V8HImode) != 0
   17259              :           || !
   17260              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17261              : (TARGET_SSSE3))
   17262              :         return -1;
   17263              :       return 9603; /* *ssse3_palignrv8hi_perm */
   17264              : 
   17265              :     case E_V8HFmode:
   17266              :       if (pattern1161 (x2, 
   17267              : E_V8HFmode) != 0
   17268              :           || !
   17269              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17270              : (TARGET_SSSE3))
   17271              :         return -1;
   17272              :       return 9604; /* *ssse3_palignrv8hf_perm */
   17273              : 
   17274              :     case E_V8BFmode:
   17275              :       if (pattern1161 (x2, 
   17276              : E_V8BFmode) != 0
   17277              :           || !
   17278              : #line 29683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17279              : (TARGET_SSSE3))
   17280              :         return -1;
   17281              :       return 9605; /* *ssse3_palignrv8bf_perm */
   17282              : 
   17283              :     default:
   17284              :       return -1;
   17285              :     }
   17286              : }
   17287              : 
   17288              :  int
   17289              : recog_314 (rtx x1 ATTRIBUTE_UNUSED,
   17290              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17291              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17292              : {
   17293              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17294              :   rtx x2, x3, x4;
   17295              :   int res ATTRIBUTE_UNUSED;
   17296              :   x2 = XEXP (x1, 1);
   17297              :   x3 = XEXP (x2, 0);
   17298              :   x4 = XEXP (x3, 0);
   17299              :   switch (GET_CODE (x4))
   17300              :     {
   17301              :     case REG:
   17302              :     case SUBREG:
   17303              :     case MEM:
   17304              :     case NOT:
   17305              :       switch (pattern537 (x2))
   17306              :         {
   17307              :         case 0:
   17308              :           if (!(
   17309              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17310              : ((64 == 64 || TARGET_AVX512VL
   17311              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17312              :    && ix86_pre_reload_split ()
   17313              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17314              :                     STRIP_UNARY (operands[4]))
   17315              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17316              :                        STRIP_UNARY (operands[4]))
   17317              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17318              :                        STRIP_UNARY (operands[3]))
   17319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17320              :                        STRIP_UNARY (operands[3])))) && 
   17321              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17322              : (TARGET_AVX512F)))
   17323              :             return -1;
   17324              :           return 5599; /* *avx512bw_vpternlogv64qi_1 */
   17325              : 
   17326              :         case 1:
   17327              :           if (!(
   17328              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17329              : ((32 == 64 || TARGET_AVX512VL
   17330              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17331              :    && ix86_pre_reload_split ()
   17332              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17333              :                     STRIP_UNARY (operands[4]))
   17334              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17335              :                        STRIP_UNARY (operands[4]))
   17336              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17337              :                        STRIP_UNARY (operands[3]))
   17338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17339              :                        STRIP_UNARY (operands[3])))) && 
   17340              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17341              : (TARGET_AVX)))
   17342              :             return -1;
   17343              :           return 5626; /* *avx512vl_vpternlogv32qi_1 */
   17344              : 
   17345              :         case 2:
   17346              :           if (!
   17347              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17348              : ((16 == 64 || TARGET_AVX512VL
   17349              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17350              :    && ix86_pre_reload_split ()
   17351              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17352              :                     STRIP_UNARY (operands[4]))
   17353              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17354              :                        STRIP_UNARY (operands[4]))
   17355              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17356              :                        STRIP_UNARY (operands[3]))
   17357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17358              :                        STRIP_UNARY (operands[3])))))
   17359              :             return -1;
   17360              :           return 5653; /* *avx512vl_vpternlogv16qi_1 */
   17361              : 
   17362              :         case 3:
   17363              :           if (!(
   17364              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17365              : ((64 == 64 || TARGET_AVX512VL
   17366              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17367              :    && ix86_pre_reload_split ()
   17368              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17369              :                     STRIP_UNARY (operands[4]))
   17370              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17371              :                        STRIP_UNARY (operands[4]))
   17372              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17373              :                        STRIP_UNARY (operands[3]))
   17374              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17375              :                        STRIP_UNARY (operands[3])))) && 
   17376              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17377              : (TARGET_AVX512F)))
   17378              :             return -1;
   17379              :           return 5680; /* *avx512bw_vpternlogv32hi_1 */
   17380              : 
   17381              :         case 4:
   17382              :           if (!(
   17383              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17384              : ((32 == 64 || TARGET_AVX512VL
   17385              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17386              :    && ix86_pre_reload_split ()
   17387              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17388              :                     STRIP_UNARY (operands[4]))
   17389              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17390              :                        STRIP_UNARY (operands[4]))
   17391              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17392              :                        STRIP_UNARY (operands[3]))
   17393              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17394              :                        STRIP_UNARY (operands[3])))) && 
   17395              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17396              : (TARGET_AVX)))
   17397              :             return -1;
   17398              :           return 5707; /* *avx512vl_vpternlogv16hi_1 */
   17399              : 
   17400              :         case 5:
   17401              :           if (!
   17402              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17403              : ((16 == 64 || TARGET_AVX512VL
   17404              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17405              :    && ix86_pre_reload_split ()
   17406              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17407              :                     STRIP_UNARY (operands[4]))
   17408              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17409              :                        STRIP_UNARY (operands[4]))
   17410              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17411              :                        STRIP_UNARY (operands[3]))
   17412              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17413              :                        STRIP_UNARY (operands[3])))))
   17414              :             return -1;
   17415              :           return 5734; /* *avx512vl_vpternlogv8hi_1 */
   17416              : 
   17417              :         case 6:
   17418              :           if (!(
   17419              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17420              : ((64 == 64 || TARGET_AVX512VL
   17421              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17422              :    && ix86_pre_reload_split ()
   17423              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17424              :                     STRIP_UNARY (operands[4]))
   17425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17426              :                        STRIP_UNARY (operands[4]))
   17427              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17428              :                        STRIP_UNARY (operands[3]))
   17429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17430              :                        STRIP_UNARY (operands[3])))) && 
   17431              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17432              : (TARGET_AVX512F)))
   17433              :             return -1;
   17434              :           return 5761; /* *avx512f_vpternlogv16si_1 */
   17435              : 
   17436              :         case 7:
   17437              :           if (!(
   17438              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17439              : ((32 == 64 || TARGET_AVX512VL
   17440              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17441              :    && ix86_pre_reload_split ()
   17442              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17443              :                     STRIP_UNARY (operands[4]))
   17444              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17445              :                        STRIP_UNARY (operands[4]))
   17446              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17447              :                        STRIP_UNARY (operands[3]))
   17448              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17449              :                        STRIP_UNARY (operands[3])))) && 
   17450              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17451              : (TARGET_AVX)))
   17452              :             return -1;
   17453              :           return 5788; /* *avx512vl_vpternlogv8si_1 */
   17454              : 
   17455              :         case 8:
   17456              :           if (!
   17457              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17458              : ((16 == 64 || TARGET_AVX512VL
   17459              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17460              :    && ix86_pre_reload_split ()
   17461              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17462              :                     STRIP_UNARY (operands[4]))
   17463              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17464              :                        STRIP_UNARY (operands[4]))
   17465              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17466              :                        STRIP_UNARY (operands[3]))
   17467              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17468              :                        STRIP_UNARY (operands[3])))))
   17469              :             return -1;
   17470              :           return 5815; /* *avx512vl_vpternlogv4si_1 */
   17471              : 
   17472              :         case 9:
   17473              :           if (!(
   17474              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17475              : ((64 == 64 || TARGET_AVX512VL
   17476              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17477              :    && ix86_pre_reload_split ()
   17478              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17479              :                     STRIP_UNARY (operands[4]))
   17480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17481              :                        STRIP_UNARY (operands[4]))
   17482              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17483              :                        STRIP_UNARY (operands[3]))
   17484              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17485              :                        STRIP_UNARY (operands[3])))) && 
   17486              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17487              : (TARGET_AVX512F)))
   17488              :             return -1;
   17489              :           return 5842; /* *avx512f_vpternlogv8di_1 */
   17490              : 
   17491              :         case 10:
   17492              :           if (!(
   17493              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17494              : ((32 == 64 || TARGET_AVX512VL
   17495              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17496              :    && ix86_pre_reload_split ()
   17497              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17498              :                     STRIP_UNARY (operands[4]))
   17499              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17500              :                        STRIP_UNARY (operands[4]))
   17501              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17502              :                        STRIP_UNARY (operands[3]))
   17503              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17504              :                        STRIP_UNARY (operands[3])))) && 
   17505              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17506              : (TARGET_AVX)))
   17507              :             return -1;
   17508              :           return 5869; /* *avx512vl_vpternlogv4di_1 */
   17509              : 
   17510              :         case 11:
   17511              :           if (!
   17512              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17513              : ((16 == 64 || TARGET_AVX512VL
   17514              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17515              :    && ix86_pre_reload_split ()
   17516              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17517              :                     STRIP_UNARY (operands[4]))
   17518              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17519              :                        STRIP_UNARY (operands[4]))
   17520              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17521              :                        STRIP_UNARY (operands[3]))
   17522              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17523              :                        STRIP_UNARY (operands[3])))))
   17524              :             return -1;
   17525              :           return 5896; /* *avx512vl_vpternlogv2di_1 */
   17526              : 
   17527              :         case 12:
   17528              :           if (!(
   17529              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17530              : ((64 == 64 || TARGET_AVX512VL
   17531              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17532              :    && ix86_pre_reload_split ()
   17533              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17534              :                     STRIP_UNARY (operands[4]))
   17535              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17536              :                        STRIP_UNARY (operands[4]))
   17537              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17538              :                        STRIP_UNARY (operands[3]))
   17539              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17540              :                        STRIP_UNARY (operands[3])))) && 
   17541              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17542              : (TARGET_AVX512F)))
   17543              :             return -1;
   17544              :           return 5602; /* *avx512bw_vpternlogv64qi_1 */
   17545              : 
   17546              :         case 13:
   17547              :           if (!(
   17548              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17549              : ((32 == 64 || TARGET_AVX512VL
   17550              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17551              :    && ix86_pre_reload_split ()
   17552              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17553              :                     STRIP_UNARY (operands[4]))
   17554              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17555              :                        STRIP_UNARY (operands[4]))
   17556              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17557              :                        STRIP_UNARY (operands[3]))
   17558              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17559              :                        STRIP_UNARY (operands[3])))) && 
   17560              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17561              : (TARGET_AVX)))
   17562              :             return -1;
   17563              :           return 5629; /* *avx512vl_vpternlogv32qi_1 */
   17564              : 
   17565              :         case 14:
   17566              :           if (!
   17567              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17568              : ((16 == 64 || TARGET_AVX512VL
   17569              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17570              :    && ix86_pre_reload_split ()
   17571              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17572              :                     STRIP_UNARY (operands[4]))
   17573              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17574              :                        STRIP_UNARY (operands[4]))
   17575              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17576              :                        STRIP_UNARY (operands[3]))
   17577              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17578              :                        STRIP_UNARY (operands[3])))))
   17579              :             return -1;
   17580              :           return 5656; /* *avx512vl_vpternlogv16qi_1 */
   17581              : 
   17582              :         case 15:
   17583              :           if (!(
   17584              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17585              : ((64 == 64 || TARGET_AVX512VL
   17586              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17587              :    && ix86_pre_reload_split ()
   17588              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17589              :                     STRIP_UNARY (operands[4]))
   17590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17591              :                        STRIP_UNARY (operands[4]))
   17592              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17593              :                        STRIP_UNARY (operands[3]))
   17594              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17595              :                        STRIP_UNARY (operands[3])))) && 
   17596              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17597              : (TARGET_AVX512F)))
   17598              :             return -1;
   17599              :           return 5683; /* *avx512bw_vpternlogv32hi_1 */
   17600              : 
   17601              :         case 16:
   17602              :           if (!(
   17603              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17604              : ((32 == 64 || TARGET_AVX512VL
   17605              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17606              :    && ix86_pre_reload_split ()
   17607              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17608              :                     STRIP_UNARY (operands[4]))
   17609              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17610              :                        STRIP_UNARY (operands[4]))
   17611              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17612              :                        STRIP_UNARY (operands[3]))
   17613              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17614              :                        STRIP_UNARY (operands[3])))) && 
   17615              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17616              : (TARGET_AVX)))
   17617              :             return -1;
   17618              :           return 5710; /* *avx512vl_vpternlogv16hi_1 */
   17619              : 
   17620              :         case 17:
   17621              :           if (!
   17622              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17623              : ((16 == 64 || TARGET_AVX512VL
   17624              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17625              :    && ix86_pre_reload_split ()
   17626              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17627              :                     STRIP_UNARY (operands[4]))
   17628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17629              :                        STRIP_UNARY (operands[4]))
   17630              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17631              :                        STRIP_UNARY (operands[3]))
   17632              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17633              :                        STRIP_UNARY (operands[3])))))
   17634              :             return -1;
   17635              :           return 5737; /* *avx512vl_vpternlogv8hi_1 */
   17636              : 
   17637              :         case 18:
   17638              :           if (!(
   17639              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17640              : ((64 == 64 || TARGET_AVX512VL
   17641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17642              :    && ix86_pre_reload_split ()
   17643              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17644              :                     STRIP_UNARY (operands[4]))
   17645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17646              :                        STRIP_UNARY (operands[4]))
   17647              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17648              :                        STRIP_UNARY (operands[3]))
   17649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17650              :                        STRIP_UNARY (operands[3])))) && 
   17651              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17652              : (TARGET_AVX512F)))
   17653              :             return -1;
   17654              :           return 5764; /* *avx512f_vpternlogv16si_1 */
   17655              : 
   17656              :         case 19:
   17657              :           if (!(
   17658              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17659              : ((32 == 64 || TARGET_AVX512VL
   17660              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17661              :    && ix86_pre_reload_split ()
   17662              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17663              :                     STRIP_UNARY (operands[4]))
   17664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17665              :                        STRIP_UNARY (operands[4]))
   17666              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17667              :                        STRIP_UNARY (operands[3]))
   17668              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17669              :                        STRIP_UNARY (operands[3])))) && 
   17670              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17671              : (TARGET_AVX)))
   17672              :             return -1;
   17673              :           return 5791; /* *avx512vl_vpternlogv8si_1 */
   17674              : 
   17675              :         case 20:
   17676              :           if (!
   17677              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17678              : ((16 == 64 || TARGET_AVX512VL
   17679              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17680              :    && ix86_pre_reload_split ()
   17681              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17682              :                     STRIP_UNARY (operands[4]))
   17683              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17684              :                        STRIP_UNARY (operands[4]))
   17685              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17686              :                        STRIP_UNARY (operands[3]))
   17687              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17688              :                        STRIP_UNARY (operands[3])))))
   17689              :             return -1;
   17690              :           return 5818; /* *avx512vl_vpternlogv4si_1 */
   17691              : 
   17692              :         case 21:
   17693              :           if (!(
   17694              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17695              : ((64 == 64 || TARGET_AVX512VL
   17696              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17697              :    && ix86_pre_reload_split ()
   17698              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17699              :                     STRIP_UNARY (operands[4]))
   17700              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17701              :                        STRIP_UNARY (operands[4]))
   17702              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17703              :                        STRIP_UNARY (operands[3]))
   17704              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17705              :                        STRIP_UNARY (operands[3])))) && 
   17706              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17707              : (TARGET_AVX512F)))
   17708              :             return -1;
   17709              :           return 5845; /* *avx512f_vpternlogv8di_1 */
   17710              : 
   17711              :         case 22:
   17712              :           if (!(
   17713              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17714              : ((32 == 64 || TARGET_AVX512VL
   17715              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17716              :    && ix86_pre_reload_split ()
   17717              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17718              :                     STRIP_UNARY (operands[4]))
   17719              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17720              :                        STRIP_UNARY (operands[4]))
   17721              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17722              :                        STRIP_UNARY (operands[3]))
   17723              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17724              :                        STRIP_UNARY (operands[3])))) && 
   17725              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17726              : (TARGET_AVX)))
   17727              :             return -1;
   17728              :           return 5872; /* *avx512vl_vpternlogv4di_1 */
   17729              : 
   17730              :         case 23:
   17731              :           if (!
   17732              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17733              : ((16 == 64 || TARGET_AVX512VL
   17734              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17735              :    && ix86_pre_reload_split ()
   17736              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17737              :                     STRIP_UNARY (operands[4]))
   17738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17739              :                        STRIP_UNARY (operands[4]))
   17740              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17741              :                        STRIP_UNARY (operands[3]))
   17742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17743              :                        STRIP_UNARY (operands[3])))))
   17744              :             return -1;
   17745              :           return 5899; /* *avx512vl_vpternlogv2di_1 */
   17746              : 
   17747              :         case 24:
   17748              :           if (!(
   17749              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17750              : ((64 == 64 || TARGET_AVX512VL
   17751              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17752              :    && ix86_pre_reload_split ()
   17753              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17754              :                     STRIP_UNARY (operands[4]))
   17755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17756              :                        STRIP_UNARY (operands[4]))
   17757              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17758              :                        STRIP_UNARY (operands[3]))
   17759              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17760              :                        STRIP_UNARY (operands[3])))) && 
   17761              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17762              : (TARGET_AVX512F)))
   17763              :             return -1;
   17764              :           return 5605; /* *avx512bw_vpternlogv64qi_1 */
   17765              : 
   17766              :         case 25:
   17767              :           if (!(
   17768              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17769              : ((32 == 64 || TARGET_AVX512VL
   17770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17771              :    && ix86_pre_reload_split ()
   17772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17773              :                     STRIP_UNARY (operands[4]))
   17774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17775              :                        STRIP_UNARY (operands[4]))
   17776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17777              :                        STRIP_UNARY (operands[3]))
   17778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17779              :                        STRIP_UNARY (operands[3])))) && 
   17780              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17781              : (TARGET_AVX)))
   17782              :             return -1;
   17783              :           return 5632; /* *avx512vl_vpternlogv32qi_1 */
   17784              : 
   17785              :         case 26:
   17786              :           if (!
   17787              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17788              : ((16 == 64 || TARGET_AVX512VL
   17789              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17790              :    && ix86_pre_reload_split ()
   17791              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17792              :                     STRIP_UNARY (operands[4]))
   17793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17794              :                        STRIP_UNARY (operands[4]))
   17795              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17796              :                        STRIP_UNARY (operands[3]))
   17797              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17798              :                        STRIP_UNARY (operands[3])))))
   17799              :             return -1;
   17800              :           return 5659; /* *avx512vl_vpternlogv16qi_1 */
   17801              : 
   17802              :         case 27:
   17803              :           if (!(
   17804              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17805              : ((64 == 64 || TARGET_AVX512VL
   17806              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17807              :    && ix86_pre_reload_split ()
   17808              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17809              :                     STRIP_UNARY (operands[4]))
   17810              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17811              :                        STRIP_UNARY (operands[4]))
   17812              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17813              :                        STRIP_UNARY (operands[3]))
   17814              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17815              :                        STRIP_UNARY (operands[3])))) && 
   17816              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17817              : (TARGET_AVX512F)))
   17818              :             return -1;
   17819              :           return 5686; /* *avx512bw_vpternlogv32hi_1 */
   17820              : 
   17821              :         case 28:
   17822              :           if (!(
   17823              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17824              : ((32 == 64 || TARGET_AVX512VL
   17825              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17826              :    && ix86_pre_reload_split ()
   17827              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17828              :                     STRIP_UNARY (operands[4]))
   17829              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17830              :                        STRIP_UNARY (operands[4]))
   17831              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17832              :                        STRIP_UNARY (operands[3]))
   17833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17834              :                        STRIP_UNARY (operands[3])))) && 
   17835              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17836              : (TARGET_AVX)))
   17837              :             return -1;
   17838              :           return 5713; /* *avx512vl_vpternlogv16hi_1 */
   17839              : 
   17840              :         case 29:
   17841              :           if (!
   17842              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17843              : ((16 == 64 || TARGET_AVX512VL
   17844              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17845              :    && ix86_pre_reload_split ()
   17846              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17847              :                     STRIP_UNARY (operands[4]))
   17848              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17849              :                        STRIP_UNARY (operands[4]))
   17850              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17851              :                        STRIP_UNARY (operands[3]))
   17852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17853              :                        STRIP_UNARY (operands[3])))))
   17854              :             return -1;
   17855              :           return 5740; /* *avx512vl_vpternlogv8hi_1 */
   17856              : 
   17857              :         case 30:
   17858              :           if (!(
   17859              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17860              : ((64 == 64 || TARGET_AVX512VL
   17861              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17862              :    && ix86_pre_reload_split ()
   17863              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17864              :                     STRIP_UNARY (operands[4]))
   17865              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17866              :                        STRIP_UNARY (operands[4]))
   17867              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17868              :                        STRIP_UNARY (operands[3]))
   17869              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17870              :                        STRIP_UNARY (operands[3])))) && 
   17871              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17872              : (TARGET_AVX512F)))
   17873              :             return -1;
   17874              :           return 5767; /* *avx512f_vpternlogv16si_1 */
   17875              : 
   17876              :         case 31:
   17877              :           if (!(
   17878              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17879              : ((32 == 64 || TARGET_AVX512VL
   17880              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17881              :    && ix86_pre_reload_split ()
   17882              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17883              :                     STRIP_UNARY (operands[4]))
   17884              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17885              :                        STRIP_UNARY (operands[4]))
   17886              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17887              :                        STRIP_UNARY (operands[3]))
   17888              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17889              :                        STRIP_UNARY (operands[3])))) && 
   17890              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17891              : (TARGET_AVX)))
   17892              :             return -1;
   17893              :           return 5794; /* *avx512vl_vpternlogv8si_1 */
   17894              : 
   17895              :         case 32:
   17896              :           if (!
   17897              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17898              : ((16 == 64 || TARGET_AVX512VL
   17899              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17900              :    && ix86_pre_reload_split ()
   17901              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17902              :                     STRIP_UNARY (operands[4]))
   17903              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17904              :                        STRIP_UNARY (operands[4]))
   17905              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17906              :                        STRIP_UNARY (operands[3]))
   17907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17908              :                        STRIP_UNARY (operands[3])))))
   17909              :             return -1;
   17910              :           return 5821; /* *avx512vl_vpternlogv4si_1 */
   17911              : 
   17912              :         case 33:
   17913              :           if (!(
   17914              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17915              : ((64 == 64 || TARGET_AVX512VL
   17916              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17917              :    && ix86_pre_reload_split ()
   17918              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17919              :                     STRIP_UNARY (operands[4]))
   17920              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17921              :                        STRIP_UNARY (operands[4]))
   17922              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17923              :                        STRIP_UNARY (operands[3]))
   17924              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17925              :                        STRIP_UNARY (operands[3])))) && 
   17926              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17927              : (TARGET_AVX512F)))
   17928              :             return -1;
   17929              :           return 5848; /* *avx512f_vpternlogv8di_1 */
   17930              : 
   17931              :         case 34:
   17932              :           if (!(
   17933              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17934              : ((32 == 64 || TARGET_AVX512VL
   17935              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17936              :    && ix86_pre_reload_split ()
   17937              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17938              :                     STRIP_UNARY (operands[4]))
   17939              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17940              :                        STRIP_UNARY (operands[4]))
   17941              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17942              :                        STRIP_UNARY (operands[3]))
   17943              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17944              :                        STRIP_UNARY (operands[3])))) && 
   17945              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17946              : (TARGET_AVX)))
   17947              :             return -1;
   17948              :           return 5875; /* *avx512vl_vpternlogv4di_1 */
   17949              : 
   17950              :         case 35:
   17951              :           if (!
   17952              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17953              : ((16 == 64 || TARGET_AVX512VL
   17954              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17955              :    && ix86_pre_reload_split ()
   17956              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17957              :                     STRIP_UNARY (operands[4]))
   17958              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17959              :                        STRIP_UNARY (operands[4]))
   17960              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17961              :                        STRIP_UNARY (operands[3]))
   17962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17963              :                        STRIP_UNARY (operands[3])))))
   17964              :             return -1;
   17965              :           return 5902; /* *avx512vl_vpternlogv2di_1 */
   17966              : 
   17967              :         case 36:
   17968              :           if (!(
   17969              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17970              : ((64 == 64 || TARGET_AVX512VL
   17971              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17972              :    && ix86_pre_reload_split ()) && 
   17973              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17974              : (TARGET_AVX512F)))
   17975              :             return -1;
   17976              :           return 6889; /* *avx512bw_vpternlogv64qi_3 */
   17977              : 
   17978              :         case 37:
   17979              :           if (!(
   17980              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17981              : ((32 == 64 || TARGET_AVX512VL
   17982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17983              :    && ix86_pre_reload_split ()) && 
   17984              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17985              : (TARGET_AVX)))
   17986              :             return -1;
   17987              :           return 6898; /* *avx512vl_vpternlogv32qi_3 */
   17988              : 
   17989              :         case 38:
   17990              :           if (!
   17991              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17992              : ((16 == 64 || TARGET_AVX512VL
   17993              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17994              :    && ix86_pre_reload_split ()))
   17995              :             return -1;
   17996              :           return 6907; /* *avx512vl_vpternlogv16qi_3 */
   17997              : 
   17998              :         case 39:
   17999              :           if (!(
   18000              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18001              : ((64 == 64 || TARGET_AVX512VL
   18002              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18003              :    && ix86_pre_reload_split ()) && 
   18004              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18005              : (TARGET_AVX512F)))
   18006              :             return -1;
   18007              :           return 6916; /* *avx512bw_vpternlogv32hi_3 */
   18008              : 
   18009              :         case 40:
   18010              :           if (!(
   18011              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18012              : ((32 == 64 || TARGET_AVX512VL
   18013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18014              :    && ix86_pre_reload_split ()) && 
   18015              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18016              : (TARGET_AVX)))
   18017              :             return -1;
   18018              :           return 6925; /* *avx512vl_vpternlogv16hi_3 */
   18019              : 
   18020              :         case 41:
   18021              :           if (!
   18022              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18023              : ((16 == 64 || TARGET_AVX512VL
   18024              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18025              :    && ix86_pre_reload_split ()))
   18026              :             return -1;
   18027              :           return 6934; /* *avx512vl_vpternlogv8hi_3 */
   18028              : 
   18029              :         case 42:
   18030              :           if (!(
   18031              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18032              : ((64 == 64 || TARGET_AVX512VL
   18033              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18034              :    && ix86_pre_reload_split ()) && 
   18035              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18036              : (TARGET_AVX512F)))
   18037              :             return -1;
   18038              :           return 6943; /* *avx512f_vpternlogv16si_3 */
   18039              : 
   18040              :         case 43:
   18041              :           if (!(
   18042              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18043              : ((32 == 64 || TARGET_AVX512VL
   18044              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18045              :    && ix86_pre_reload_split ()) && 
   18046              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18047              : (TARGET_AVX)))
   18048              :             return -1;
   18049              :           return 6952; /* *avx512vl_vpternlogv8si_3 */
   18050              : 
   18051              :         case 44:
   18052              :           if (!
   18053              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18054              : ((16 == 64 || TARGET_AVX512VL
   18055              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18056              :    && ix86_pre_reload_split ()))
   18057              :             return -1;
   18058              :           return 6961; /* *avx512vl_vpternlogv4si_3 */
   18059              : 
   18060              :         case 45:
   18061              :           if (!(
   18062              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18063              : ((64 == 64 || TARGET_AVX512VL
   18064              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18065              :    && ix86_pre_reload_split ()) && 
   18066              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18067              : (TARGET_AVX512F)))
   18068              :             return -1;
   18069              :           return 6970; /* *avx512f_vpternlogv8di_3 */
   18070              : 
   18071              :         case 46:
   18072              :           if (!(
   18073              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18074              : ((32 == 64 || TARGET_AVX512VL
   18075              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18076              :    && ix86_pre_reload_split ()) && 
   18077              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18078              : (TARGET_AVX)))
   18079              :             return -1;
   18080              :           return 6979; /* *avx512vl_vpternlogv4di_3 */
   18081              : 
   18082              :         case 47:
   18083              :           if (!
   18084              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18085              : ((16 == 64 || TARGET_AVX512VL
   18086              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18087              :    && ix86_pre_reload_split ()))
   18088              :             return -1;
   18089              :           return 6988; /* *avx512vl_vpternlogv2di_3 */
   18090              : 
   18091              :         default:
   18092              :           return -1;
   18093              :         }
   18094              : 
   18095              :     case AND:
   18096              :       switch (pattern539 (x2))
   18097              :         {
   18098              :         case 0:
   18099              :           if (!(
   18100              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18101              : ((64 == 64 || TARGET_AVX512VL
   18102              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18103              :    && ix86_pre_reload_split ()
   18104              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18105              :                     STRIP_UNARY (operands[4]))
   18106              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18107              :                        STRIP_UNARY (operands[4]))
   18108              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18109              :                        STRIP_UNARY (operands[3]))
   18110              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18111              :                        STRIP_UNARY (operands[3])))) && 
   18112              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18113              : (TARGET_AVX512F)))
   18114              :             return -1;
   18115              :           return 6247; /* *avx512bw_vpternlogv64qi_2 */
   18116              : 
   18117              :         case 1:
   18118              :           if (!(
   18119              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18120              : ((32 == 64 || TARGET_AVX512VL
   18121              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18122              :    && ix86_pre_reload_split ()
   18123              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18124              :                     STRIP_UNARY (operands[4]))
   18125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18126              :                        STRIP_UNARY (operands[4]))
   18127              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18128              :                        STRIP_UNARY (operands[3]))
   18129              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18130              :                        STRIP_UNARY (operands[3])))) && 
   18131              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18132              : (TARGET_AVX)))
   18133              :             return -1;
   18134              :           return 6274; /* *avx512vl_vpternlogv32qi_2 */
   18135              : 
   18136              :         case 2:
   18137              :           if (!
   18138              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18139              : ((16 == 64 || TARGET_AVX512VL
   18140              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18141              :    && ix86_pre_reload_split ()
   18142              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18143              :                     STRIP_UNARY (operands[4]))
   18144              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18145              :                        STRIP_UNARY (operands[4]))
   18146              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18147              :                        STRIP_UNARY (operands[3]))
   18148              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18149              :                        STRIP_UNARY (operands[3])))))
   18150              :             return -1;
   18151              :           return 6301; /* *avx512vl_vpternlogv16qi_2 */
   18152              : 
   18153              :         case 3:
   18154              :           if (!(
   18155              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18156              : ((64 == 64 || TARGET_AVX512VL
   18157              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18158              :    && ix86_pre_reload_split ()
   18159              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18160              :                     STRIP_UNARY (operands[4]))
   18161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18162              :                        STRIP_UNARY (operands[4]))
   18163              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18164              :                        STRIP_UNARY (operands[3]))
   18165              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18166              :                        STRIP_UNARY (operands[3])))) && 
   18167              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18168              : (TARGET_AVX512F)))
   18169              :             return -1;
   18170              :           return 6328; /* *avx512bw_vpternlogv32hi_2 */
   18171              : 
   18172              :         case 4:
   18173              :           if (!(
   18174              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18175              : ((32 == 64 || TARGET_AVX512VL
   18176              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18177              :    && ix86_pre_reload_split ()
   18178              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18179              :                     STRIP_UNARY (operands[4]))
   18180              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18181              :                        STRIP_UNARY (operands[4]))
   18182              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18183              :                        STRIP_UNARY (operands[3]))
   18184              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18185              :                        STRIP_UNARY (operands[3])))) && 
   18186              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18187              : (TARGET_AVX)))
   18188              :             return -1;
   18189              :           return 6355; /* *avx512vl_vpternlogv16hi_2 */
   18190              : 
   18191              :         case 5:
   18192              :           if (!
   18193              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18194              : ((16 == 64 || TARGET_AVX512VL
   18195              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18196              :    && ix86_pre_reload_split ()
   18197              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18198              :                     STRIP_UNARY (operands[4]))
   18199              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18200              :                        STRIP_UNARY (operands[4]))
   18201              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18202              :                        STRIP_UNARY (operands[3]))
   18203              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18204              :                        STRIP_UNARY (operands[3])))))
   18205              :             return -1;
   18206              :           return 6382; /* *avx512vl_vpternlogv8hi_2 */
   18207              : 
   18208              :         case 6:
   18209              :           if (!(
   18210              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18211              : ((64 == 64 || TARGET_AVX512VL
   18212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18213              :    && ix86_pre_reload_split ()
   18214              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18215              :                     STRIP_UNARY (operands[4]))
   18216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18217              :                        STRIP_UNARY (operands[4]))
   18218              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18219              :                        STRIP_UNARY (operands[3]))
   18220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18221              :                        STRIP_UNARY (operands[3])))) && 
   18222              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18223              : (TARGET_AVX512F)))
   18224              :             return -1;
   18225              :           return 6409; /* *avx512f_vpternlogv16si_2 */
   18226              : 
   18227              :         case 7:
   18228              :           if (!(
   18229              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18230              : ((32 == 64 || TARGET_AVX512VL
   18231              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18232              :    && ix86_pre_reload_split ()
   18233              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18234              :                     STRIP_UNARY (operands[4]))
   18235              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18236              :                        STRIP_UNARY (operands[4]))
   18237              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18238              :                        STRIP_UNARY (operands[3]))
   18239              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18240              :                        STRIP_UNARY (operands[3])))) && 
   18241              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18242              : (TARGET_AVX)))
   18243              :             return -1;
   18244              :           return 6436; /* *avx512vl_vpternlogv8si_2 */
   18245              : 
   18246              :         case 8:
   18247              :           if (!
   18248              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18249              : ((16 == 64 || TARGET_AVX512VL
   18250              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18251              :    && ix86_pre_reload_split ()
   18252              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18253              :                     STRIP_UNARY (operands[4]))
   18254              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18255              :                        STRIP_UNARY (operands[4]))
   18256              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18257              :                        STRIP_UNARY (operands[3]))
   18258              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18259              :                        STRIP_UNARY (operands[3])))))
   18260              :             return -1;
   18261              :           return 6463; /* *avx512vl_vpternlogv4si_2 */
   18262              : 
   18263              :         case 9:
   18264              :           if (!(
   18265              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18266              : ((64 == 64 || TARGET_AVX512VL
   18267              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18268              :    && ix86_pre_reload_split ()
   18269              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18270              :                     STRIP_UNARY (operands[4]))
   18271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18272              :                        STRIP_UNARY (operands[4]))
   18273              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18274              :                        STRIP_UNARY (operands[3]))
   18275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18276              :                        STRIP_UNARY (operands[3])))) && 
   18277              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18278              : (TARGET_AVX512F)))
   18279              :             return -1;
   18280              :           return 6490; /* *avx512f_vpternlogv8di_2 */
   18281              : 
   18282              :         case 10:
   18283              :           if (!(
   18284              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18285              : ((32 == 64 || TARGET_AVX512VL
   18286              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18287              :    && ix86_pre_reload_split ()
   18288              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18289              :                     STRIP_UNARY (operands[4]))
   18290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18291              :                        STRIP_UNARY (operands[4]))
   18292              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18293              :                        STRIP_UNARY (operands[3]))
   18294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18295              :                        STRIP_UNARY (operands[3])))) && 
   18296              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18297              : (TARGET_AVX)))
   18298              :             return -1;
   18299              :           return 6517; /* *avx512vl_vpternlogv4di_2 */
   18300              : 
   18301              :         case 11:
   18302              :           if (!
   18303              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18304              : ((16 == 64 || TARGET_AVX512VL
   18305              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18306              :    && ix86_pre_reload_split ()
   18307              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18308              :                     STRIP_UNARY (operands[4]))
   18309              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18310              :                        STRIP_UNARY (operands[4]))
   18311              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18312              :                        STRIP_UNARY (operands[3]))
   18313              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18314              :                        STRIP_UNARY (operands[3])))))
   18315              :             return -1;
   18316              :           return 6544; /* *avx512vl_vpternlogv2di_2 */
   18317              : 
   18318              :         default:
   18319              :           return -1;
   18320              :         }
   18321              : 
   18322              :     case IOR:
   18323              :       switch (pattern539 (x2))
   18324              :         {
   18325              :         case 0:
   18326              :           if (!(
   18327              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18328              : ((64 == 64 || TARGET_AVX512VL
   18329              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18330              :    && ix86_pre_reload_split ()
   18331              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18332              :                     STRIP_UNARY (operands[4]))
   18333              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18334              :                        STRIP_UNARY (operands[4]))
   18335              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18336              :                        STRIP_UNARY (operands[3]))
   18337              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18338              :                        STRIP_UNARY (operands[3])))) && 
   18339              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18340              : (TARGET_AVX512F)))
   18341              :             return -1;
   18342              :           return 6250; /* *avx512bw_vpternlogv64qi_2 */
   18343              : 
   18344              :         case 1:
   18345              :           if (!(
   18346              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18347              : ((32 == 64 || TARGET_AVX512VL
   18348              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18349              :    && ix86_pre_reload_split ()
   18350              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18351              :                     STRIP_UNARY (operands[4]))
   18352              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18353              :                        STRIP_UNARY (operands[4]))
   18354              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18355              :                        STRIP_UNARY (operands[3]))
   18356              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18357              :                        STRIP_UNARY (operands[3])))) && 
   18358              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18359              : (TARGET_AVX)))
   18360              :             return -1;
   18361              :           return 6277; /* *avx512vl_vpternlogv32qi_2 */
   18362              : 
   18363              :         case 2:
   18364              :           if (!
   18365              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18366              : ((16 == 64 || TARGET_AVX512VL
   18367              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18368              :    && ix86_pre_reload_split ()
   18369              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18370              :                     STRIP_UNARY (operands[4]))
   18371              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18372              :                        STRIP_UNARY (operands[4]))
   18373              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18374              :                        STRIP_UNARY (operands[3]))
   18375              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18376              :                        STRIP_UNARY (operands[3])))))
   18377              :             return -1;
   18378              :           return 6304; /* *avx512vl_vpternlogv16qi_2 */
   18379              : 
   18380              :         case 3:
   18381              :           if (!(
   18382              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18383              : ((64 == 64 || TARGET_AVX512VL
   18384              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18385              :    && ix86_pre_reload_split ()
   18386              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18387              :                     STRIP_UNARY (operands[4]))
   18388              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18389              :                        STRIP_UNARY (operands[4]))
   18390              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18391              :                        STRIP_UNARY (operands[3]))
   18392              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18393              :                        STRIP_UNARY (operands[3])))) && 
   18394              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18395              : (TARGET_AVX512F)))
   18396              :             return -1;
   18397              :           return 6331; /* *avx512bw_vpternlogv32hi_2 */
   18398              : 
   18399              :         case 4:
   18400              :           if (!(
   18401              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18402              : ((32 == 64 || TARGET_AVX512VL
   18403              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18404              :    && ix86_pre_reload_split ()
   18405              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18406              :                     STRIP_UNARY (operands[4]))
   18407              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18408              :                        STRIP_UNARY (operands[4]))
   18409              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18410              :                        STRIP_UNARY (operands[3]))
   18411              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18412              :                        STRIP_UNARY (operands[3])))) && 
   18413              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18414              : (TARGET_AVX)))
   18415              :             return -1;
   18416              :           return 6358; /* *avx512vl_vpternlogv16hi_2 */
   18417              : 
   18418              :         case 5:
   18419              :           if (!
   18420              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18421              : ((16 == 64 || TARGET_AVX512VL
   18422              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18423              :    && ix86_pre_reload_split ()
   18424              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18425              :                     STRIP_UNARY (operands[4]))
   18426              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18427              :                        STRIP_UNARY (operands[4]))
   18428              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18429              :                        STRIP_UNARY (operands[3]))
   18430              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18431              :                        STRIP_UNARY (operands[3])))))
   18432              :             return -1;
   18433              :           return 6385; /* *avx512vl_vpternlogv8hi_2 */
   18434              : 
   18435              :         case 6:
   18436              :           if (!(
   18437              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18438              : ((64 == 64 || TARGET_AVX512VL
   18439              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18440              :    && ix86_pre_reload_split ()
   18441              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18442              :                     STRIP_UNARY (operands[4]))
   18443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18444              :                        STRIP_UNARY (operands[4]))
   18445              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18446              :                        STRIP_UNARY (operands[3]))
   18447              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18448              :                        STRIP_UNARY (operands[3])))) && 
   18449              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18450              : (TARGET_AVX512F)))
   18451              :             return -1;
   18452              :           return 6412; /* *avx512f_vpternlogv16si_2 */
   18453              : 
   18454              :         case 7:
   18455              :           if (!(
   18456              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18457              : ((32 == 64 || TARGET_AVX512VL
   18458              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18459              :    && ix86_pre_reload_split ()
   18460              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18461              :                     STRIP_UNARY (operands[4]))
   18462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18463              :                        STRIP_UNARY (operands[4]))
   18464              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18465              :                        STRIP_UNARY (operands[3]))
   18466              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18467              :                        STRIP_UNARY (operands[3])))) && 
   18468              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18469              : (TARGET_AVX)))
   18470              :             return -1;
   18471              :           return 6439; /* *avx512vl_vpternlogv8si_2 */
   18472              : 
   18473              :         case 8:
   18474              :           if (!
   18475              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18476              : ((16 == 64 || TARGET_AVX512VL
   18477              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18478              :    && ix86_pre_reload_split ()
   18479              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18480              :                     STRIP_UNARY (operands[4]))
   18481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18482              :                        STRIP_UNARY (operands[4]))
   18483              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18484              :                        STRIP_UNARY (operands[3]))
   18485              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18486              :                        STRIP_UNARY (operands[3])))))
   18487              :             return -1;
   18488              :           return 6466; /* *avx512vl_vpternlogv4si_2 */
   18489              : 
   18490              :         case 9:
   18491              :           if (!(
   18492              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18493              : ((64 == 64 || TARGET_AVX512VL
   18494              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18495              :    && ix86_pre_reload_split ()
   18496              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18497              :                     STRIP_UNARY (operands[4]))
   18498              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18499              :                        STRIP_UNARY (operands[4]))
   18500              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18501              :                        STRIP_UNARY (operands[3]))
   18502              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18503              :                        STRIP_UNARY (operands[3])))) && 
   18504              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18505              : (TARGET_AVX512F)))
   18506              :             return -1;
   18507              :           return 6493; /* *avx512f_vpternlogv8di_2 */
   18508              : 
   18509              :         case 10:
   18510              :           if (!(
   18511              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18512              : ((32 == 64 || TARGET_AVX512VL
   18513              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18514              :    && ix86_pre_reload_split ()
   18515              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18516              :                     STRIP_UNARY (operands[4]))
   18517              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18518              :                        STRIP_UNARY (operands[4]))
   18519              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18520              :                        STRIP_UNARY (operands[3]))
   18521              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18522              :                        STRIP_UNARY (operands[3])))) && 
   18523              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18524              : (TARGET_AVX)))
   18525              :             return -1;
   18526              :           return 6520; /* *avx512vl_vpternlogv4di_2 */
   18527              : 
   18528              :         case 11:
   18529              :           if (!
   18530              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18531              : ((16 == 64 || TARGET_AVX512VL
   18532              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18533              :    && ix86_pre_reload_split ()
   18534              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18535              :                     STRIP_UNARY (operands[4]))
   18536              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18537              :                        STRIP_UNARY (operands[4]))
   18538              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18539              :                        STRIP_UNARY (operands[3]))
   18540              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18541              :                        STRIP_UNARY (operands[3])))))
   18542              :             return -1;
   18543              :           return 6547; /* *avx512vl_vpternlogv2di_2 */
   18544              : 
   18545              :         default:
   18546              :           return -1;
   18547              :         }
   18548              : 
   18549              :     case XOR:
   18550              :       switch (pattern539 (x2))
   18551              :         {
   18552              :         case 0:
   18553              :           if (!(
   18554              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18555              : ((64 == 64 || TARGET_AVX512VL
   18556              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18557              :    && ix86_pre_reload_split ()
   18558              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18559              :                     STRIP_UNARY (operands[4]))
   18560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18561              :                        STRIP_UNARY (operands[4]))
   18562              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18563              :                        STRIP_UNARY (operands[3]))
   18564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18565              :                        STRIP_UNARY (operands[3])))) && 
   18566              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18567              : (TARGET_AVX512F)))
   18568              :             return -1;
   18569              :           return 6253; /* *avx512bw_vpternlogv64qi_2 */
   18570              : 
   18571              :         case 1:
   18572              :           if (!(
   18573              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18574              : ((32 == 64 || TARGET_AVX512VL
   18575              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18576              :    && ix86_pre_reload_split ()
   18577              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18578              :                     STRIP_UNARY (operands[4]))
   18579              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18580              :                        STRIP_UNARY (operands[4]))
   18581              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18582              :                        STRIP_UNARY (operands[3]))
   18583              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18584              :                        STRIP_UNARY (operands[3])))) && 
   18585              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18586              : (TARGET_AVX)))
   18587              :             return -1;
   18588              :           return 6280; /* *avx512vl_vpternlogv32qi_2 */
   18589              : 
   18590              :         case 2:
   18591              :           if (!
   18592              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18593              : ((16 == 64 || TARGET_AVX512VL
   18594              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18595              :    && ix86_pre_reload_split ()
   18596              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18597              :                     STRIP_UNARY (operands[4]))
   18598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18599              :                        STRIP_UNARY (operands[4]))
   18600              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18601              :                        STRIP_UNARY (operands[3]))
   18602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18603              :                        STRIP_UNARY (operands[3])))))
   18604              :             return -1;
   18605              :           return 6307; /* *avx512vl_vpternlogv16qi_2 */
   18606              : 
   18607              :         case 3:
   18608              :           if (!(
   18609              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18610              : ((64 == 64 || TARGET_AVX512VL
   18611              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18612              :    && ix86_pre_reload_split ()
   18613              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18614              :                     STRIP_UNARY (operands[4]))
   18615              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18616              :                        STRIP_UNARY (operands[4]))
   18617              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18618              :                        STRIP_UNARY (operands[3]))
   18619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18620              :                        STRIP_UNARY (operands[3])))) && 
   18621              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18622              : (TARGET_AVX512F)))
   18623              :             return -1;
   18624              :           return 6334; /* *avx512bw_vpternlogv32hi_2 */
   18625              : 
   18626              :         case 4:
   18627              :           if (!(
   18628              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18629              : ((32 == 64 || TARGET_AVX512VL
   18630              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18631              :    && ix86_pre_reload_split ()
   18632              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18633              :                     STRIP_UNARY (operands[4]))
   18634              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18635              :                        STRIP_UNARY (operands[4]))
   18636              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18637              :                        STRIP_UNARY (operands[3]))
   18638              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18639              :                        STRIP_UNARY (operands[3])))) && 
   18640              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18641              : (TARGET_AVX)))
   18642              :             return -1;
   18643              :           return 6361; /* *avx512vl_vpternlogv16hi_2 */
   18644              : 
   18645              :         case 5:
   18646              :           if (!
   18647              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18648              : ((16 == 64 || TARGET_AVX512VL
   18649              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18650              :    && ix86_pre_reload_split ()
   18651              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18652              :                     STRIP_UNARY (operands[4]))
   18653              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18654              :                        STRIP_UNARY (operands[4]))
   18655              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18656              :                        STRIP_UNARY (operands[3]))
   18657              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18658              :                        STRIP_UNARY (operands[3])))))
   18659              :             return -1;
   18660              :           return 6388; /* *avx512vl_vpternlogv8hi_2 */
   18661              : 
   18662              :         case 6:
   18663              :           if (!(
   18664              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18665              : ((64 == 64 || TARGET_AVX512VL
   18666              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18667              :    && ix86_pre_reload_split ()
   18668              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18669              :                     STRIP_UNARY (operands[4]))
   18670              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18671              :                        STRIP_UNARY (operands[4]))
   18672              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18673              :                        STRIP_UNARY (operands[3]))
   18674              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18675              :                        STRIP_UNARY (operands[3])))) && 
   18676              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18677              : (TARGET_AVX512F)))
   18678              :             return -1;
   18679              :           return 6415; /* *avx512f_vpternlogv16si_2 */
   18680              : 
   18681              :         case 7:
   18682              :           if (!(
   18683              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18684              : ((32 == 64 || TARGET_AVX512VL
   18685              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18686              :    && ix86_pre_reload_split ()
   18687              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18688              :                     STRIP_UNARY (operands[4]))
   18689              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18690              :                        STRIP_UNARY (operands[4]))
   18691              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18692              :                        STRIP_UNARY (operands[3]))
   18693              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18694              :                        STRIP_UNARY (operands[3])))) && 
   18695              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18696              : (TARGET_AVX)))
   18697              :             return -1;
   18698              :           return 6442; /* *avx512vl_vpternlogv8si_2 */
   18699              : 
   18700              :         case 8:
   18701              :           if (!
   18702              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18703              : ((16 == 64 || TARGET_AVX512VL
   18704              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18705              :    && ix86_pre_reload_split ()
   18706              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18707              :                     STRIP_UNARY (operands[4]))
   18708              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18709              :                        STRIP_UNARY (operands[4]))
   18710              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18711              :                        STRIP_UNARY (operands[3]))
   18712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18713              :                        STRIP_UNARY (operands[3])))))
   18714              :             return -1;
   18715              :           return 6469; /* *avx512vl_vpternlogv4si_2 */
   18716              : 
   18717              :         case 9:
   18718              :           if (!(
   18719              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18720              : ((64 == 64 || TARGET_AVX512VL
   18721              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18722              :    && ix86_pre_reload_split ()
   18723              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18724              :                     STRIP_UNARY (operands[4]))
   18725              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18726              :                        STRIP_UNARY (operands[4]))
   18727              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18728              :                        STRIP_UNARY (operands[3]))
   18729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18730              :                        STRIP_UNARY (operands[3])))) && 
   18731              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18732              : (TARGET_AVX512F)))
   18733              :             return -1;
   18734              :           return 6496; /* *avx512f_vpternlogv8di_2 */
   18735              : 
   18736              :         case 10:
   18737              :           if (!(
   18738              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18739              : ((32 == 64 || TARGET_AVX512VL
   18740              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18741              :    && ix86_pre_reload_split ()
   18742              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18743              :                     STRIP_UNARY (operands[4]))
   18744              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18745              :                        STRIP_UNARY (operands[4]))
   18746              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18747              :                        STRIP_UNARY (operands[3]))
   18748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18749              :                        STRIP_UNARY (operands[3])))) && 
   18750              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18751              : (TARGET_AVX)))
   18752              :             return -1;
   18753              :           return 6523; /* *avx512vl_vpternlogv4di_2 */
   18754              : 
   18755              :         case 11:
   18756              :           if (!
   18757              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18758              : ((16 == 64 || TARGET_AVX512VL
   18759              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18760              :    && ix86_pre_reload_split ()
   18761              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18762              :                     STRIP_UNARY (operands[4]))
   18763              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18764              :                        STRIP_UNARY (operands[4]))
   18765              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18766              :                        STRIP_UNARY (operands[3]))
   18767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18768              :                        STRIP_UNARY (operands[3])))))
   18769              :             return -1;
   18770              :           return 6550; /* *avx512vl_vpternlogv2di_2 */
   18771              : 
   18772              :         default:
   18773              :           return -1;
   18774              :         }
   18775              : 
   18776              :     default:
   18777              :       return -1;
   18778              :     }
   18779              : }
   18780              : 
   18781              :  int
   18782              : recog_323 (rtx x1 ATTRIBUTE_UNUSED,
   18783              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18784              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18785              : {
   18786              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18787              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   18788              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   18789              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   18790              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   18791              :   int res ATTRIBUTE_UNUSED;
   18792              :   x2 = XEXP (x1, 1);
   18793              :   x3 = XEXP (x2, 0);
   18794              :   x4 = XEXP (x3, 0);
   18795              :   x5 = XEXP (x4, 1);
   18796              :   if (GET_CODE (x5) != CONST_VECTOR
   18797              :       || XVECLEN (x5, 0) != 32
   18798              :       || pattern1379 (x5, 
   18799              : E_V32HImode) != 0)
   18800              :     return -1;
   18801              :   x6 = XVECEXP (x5, 0, 8);
   18802              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18803              :     return -1;
   18804              :   x7 = XVECEXP (x5, 0, 9);
   18805              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18806              :     return -1;
   18807              :   x8 = XVECEXP (x5, 0, 10);
   18808              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18809              :     return -1;
   18810              :   x9 = XVECEXP (x5, 0, 11);
   18811              :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18812              :     return -1;
   18813              :   x10 = XVECEXP (x5, 0, 12);
   18814              :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18815              :     return -1;
   18816              :   x11 = XVECEXP (x5, 0, 13);
   18817              :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18818              :     return -1;
   18819              :   x12 = XVECEXP (x5, 0, 14);
   18820              :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18821              :     return -1;
   18822              :   x13 = XVECEXP (x5, 0, 15);
   18823              :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18824              :     return -1;
   18825              :   x14 = XVECEXP (x5, 0, 16);
   18826              :   if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18827              :     return -1;
   18828              :   x15 = XVECEXP (x5, 0, 17);
   18829              :   if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18830              :     return -1;
   18831              :   x16 = XVECEXP (x5, 0, 18);
   18832              :   if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18833              :     return -1;
   18834              :   x17 = XVECEXP (x5, 0, 19);
   18835              :   if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18836              :     return -1;
   18837              :   x18 = XVECEXP (x5, 0, 20);
   18838              :   if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18839              :     return -1;
   18840              :   x19 = XVECEXP (x5, 0, 21);
   18841              :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18842              :     return -1;
   18843              :   x20 = XVECEXP (x5, 0, 22);
   18844              :   if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18845              :     return -1;
   18846              :   x21 = XVECEXP (x5, 0, 23);
   18847              :   if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18848              :     return -1;
   18849              :   x22 = XVECEXP (x5, 0, 24);
   18850              :   if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18851              :     return -1;
   18852              :   x23 = XVECEXP (x5, 0, 25);
   18853              :   if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18854              :     return -1;
   18855              :   x24 = XVECEXP (x5, 0, 26);
   18856              :   if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18857              :     return -1;
   18858              :   x25 = XVECEXP (x5, 0, 27);
   18859              :   if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18860              :     return -1;
   18861              :   x26 = XVECEXP (x5, 0, 28);
   18862              :   if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18863              :     return -1;
   18864              :   x27 = XVECEXP (x5, 0, 29);
   18865              :   if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18866              :     return -1;
   18867              :   x28 = XVECEXP (x5, 0, 30);
   18868              :   if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   18869              :     return -1;
   18870              :   x29 = XVECEXP (x5, 0, 31);
   18871              :   if (x29 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   18872              :       || !register_operand (operands[0], E_V32HImode)
   18873              :       || GET_MODE (x2) != E_V32HImode
   18874              :       || GET_MODE (x3) != E_V32SImode
   18875              :       || pattern1531 (x4, 
   18876              : E_V32SImode) != 0)
   18877              :     return -1;
   18878              :   x30 = XEXP (x4, 0);
   18879              :   x31 = XEXP (x30, 0);
   18880              :   x32 = XEXP (x31, 1);
   18881              :   if (GET_MODE (x32) != E_V32SImode)
   18882              :     return -1;
   18883              :   x33 = XEXP (x32, 0);
   18884              :   operands[2] = x33;
   18885              :   if (!nonimmediate_operand (operands[2], E_V32HImode)
   18886              :       || !
   18887              : #line 23726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18888              : (TARGET_AVX512BW))
   18889              :     return -1;
   18890              :   return 8731; /* avx512bw_umulhrswv32hi3 */
   18891              : }
   18892              : 
   18893              :  int
   18894              : recog_324 (rtx x1 ATTRIBUTE_UNUSED,
   18895              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18896              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18897              : {
   18898              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18899              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   18900              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   18901              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   18902              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   18903              :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
   18904              :   rtx x42, x43, x44, x45, x46, x47;
   18905              :   int res ATTRIBUTE_UNUSED;
   18906              :   x2 = XEXP (x1, 0);
   18907              :   operands[0] = x2;
   18908              :   x3 = XEXP (x1, 1);
   18909              :   x4 = XEXP (x3, 0);
   18910              :   switch (GET_CODE (x4))
   18911              :     {
   18912              :     case REG:
   18913              :     case SUBREG:
   18914              :     case MEM:
   18915              :     case VEC_DUPLICATE:
   18916              :       switch (pattern191 (x3))
   18917              :         {
   18918              :         case 0:
   18919              :           if (!(
   18920              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18921              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V32HFmode, operands)
   18922              :    && 1 && 1) && 
   18923              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18924              : (TARGET_AVX512FP16)))
   18925              :             return -1;
   18926              :           return 2758; /* *addv32hf3 */
   18927              : 
   18928              :         case 1:
   18929              :           if (!(
   18930              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18931              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16HFmode, operands)
   18932              :    && 1 && 1) && 
   18933              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18934              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   18935              :             return -1;
   18936              :           return 2766; /* *addv16hf3 */
   18937              : 
   18938              :         case 2:
   18939              :           if (!(
   18940              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18941              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8HFmode, operands)
   18942              :    && 1 && 1) && 
   18943              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18944              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   18945              :             return -1;
   18946              :           return 2774; /* *addv8hf3 */
   18947              : 
   18948              :         case 3:
   18949              :           if (!(
   18950              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18951              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands)
   18952              :    && 1 && 1) && 
   18953              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18954              : (TARGET_AVX512F)))
   18955              :             return -1;
   18956              :           return 2782; /* *addv16sf3 */
   18957              : 
   18958              :         case 4:
   18959              :           if (!(
   18960              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18961              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands)
   18962              :    && 1 && 1) && 
   18963              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18964              : (TARGET_AVX)))
   18965              :             return -1;
   18966              :           return 2790; /* *addv8sf3 */
   18967              : 
   18968              :         case 5:
   18969              :           if (!
   18970              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18971              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands)
   18972              :    && 1 && 1))
   18973              :             return -1;
   18974              :           return 2798; /* *addv4sf3 */
   18975              : 
   18976              :         case 6:
   18977              :           if (!(
   18978              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18979              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands)
   18980              :    && 1 && 1) && 
   18981              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18982              : (TARGET_AVX512F)))
   18983              :             return -1;
   18984              :           return 2806; /* *addv8df3 */
   18985              : 
   18986              :         case 7:
   18987              :           if (!(
   18988              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18989              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands)
   18990              :    && 1 && 1) && 
   18991              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18992              : (TARGET_AVX)))
   18993              :             return -1;
   18994              :           return 2814; /* *addv4df3 */
   18995              : 
   18996              :         case 8:
   18997              :           if (!(
   18998              : #line 2690 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18999              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands)
   19000              :    && 1 && 1) && 
   19001              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19002              : (TARGET_SSE2)))
   19003              :             return -1;
   19004              :           return 2822; /* *addv2df3 */
   19005              : 
   19006              :         case 9:
   19007              :           if (!(
   19008              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19009              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V64QImode, operands)) && 
   19010              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19011              : (TARGET_AVX512BW)))
   19012              :             return -1;
   19013              :           return 7549; /* *addv64qi3 */
   19014              : 
   19015              :         case 10:
   19016              :           if (!(
   19017              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19018              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
   19019              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19020              : (TARGET_AVX2)))
   19021              :             return -1;
   19022              :           return 7551; /* *addv32qi3 */
   19023              : 
   19024              :         case 11:
   19025              :           if (!
   19026              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19027              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V16QImode, operands)))
   19028              :             return -1;
   19029              :           return 7553; /* *addv16qi3 */
   19030              : 
   19031              :         case 12:
   19032              :           if (!(
   19033              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19034              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V32HImode, operands)) && 
   19035              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19036              : (TARGET_AVX512BW)))
   19037              :             return -1;
   19038              :           return 7555; /* *addv32hi3 */
   19039              : 
   19040              :         case 13:
   19041              :           if (!(
   19042              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19043              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
   19044              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19045              : (TARGET_AVX2)))
   19046              :             return -1;
   19047              :           return 7557; /* *addv16hi3 */
   19048              : 
   19049              :         case 14:
   19050              :           if (!
   19051              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19052              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V8HImode, operands)))
   19053              :             return -1;
   19054              :           return 7559; /* *addv8hi3 */
   19055              : 
   19056              :         case 15:
   19057              :           if (!(
   19058              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19059              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V16SImode, operands)) && 
   19060              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19061              : (TARGET_AVX512F)))
   19062              :             return -1;
   19063              :           return 7561; /* *addv16si3 */
   19064              : 
   19065              :         case 16:
   19066              :           if (!(
   19067              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19068              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V8SImode, operands)) && 
   19069              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19070              : (TARGET_AVX2)))
   19071              :             return -1;
   19072              :           return 7563; /* *addv8si3 */
   19073              : 
   19074              :         case 17:
   19075              :           if (!
   19076              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19077              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V4SImode, operands)))
   19078              :             return -1;
   19079              :           return 7565; /* *addv4si3 */
   19080              : 
   19081              :         case 18:
   19082              :           if (!(
   19083              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19084              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V8DImode, operands)) && 
   19085              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19086              : (TARGET_AVX512F)))
   19087              :             return -1;
   19088              :           return 7567; /* *addv8di3 */
   19089              : 
   19090              :         case 19:
   19091              :           if (!(
   19092              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19093              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V4DImode, operands)) && 
   19094              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19095              : (TARGET_AVX2)))
   19096              :             return -1;
   19097              :           return 7569; /* *addv4di3 */
   19098              : 
   19099              :         case 20:
   19100              :           if (!
   19101              : #line 16994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19102              : (TARGET_SSE2 && ix86_binary_operator_ok (PLUS, V2DImode, operands)))
   19103              :             return -1;
   19104              :           return 7571; /* *addv2di3 */
   19105              : 
   19106              :         case 21:
   19107              :           if (!
   19108              : #line 33564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19109              : (TARGET_AVX10_2))
   19110              :             return -1;
   19111              :           return 10752; /* avx10_2_addbf16_v32bf */
   19112              : 
   19113              :         case 22:
   19114              :           if (!
   19115              : #line 33564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19116              : (TARGET_AVX10_2))
   19117              :             return -1;
   19118              :           return 10760; /* avx10_2_addbf16_v16bf */
   19119              : 
   19120              :         case 23:
   19121              :           if (!
   19122              : #line 33564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19123              : (TARGET_AVX10_2))
   19124              :             return -1;
   19125              :           return 10768; /* avx10_2_addbf16_v8bf */
   19126              : 
   19127              :         case 24:
   19128              :           if (!(
   19129              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19130              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19131              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19132              : (TARGET_AVX512BW)))
   19133              :             return -1;
   19134              :           return 7597; /* *addv64qi3_one */
   19135              : 
   19136              :         case 25:
   19137              :           if (!(
   19138              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19139              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19140              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19141              : (TARGET_AVX2)))
   19142              :             return -1;
   19143              :           return 7598; /* *addv32qi3_one */
   19144              : 
   19145              :         case 26:
   19146              :           if (!
   19147              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19148              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   19149              :             return -1;
   19150              :           return 7599; /* *addv16qi3_one */
   19151              : 
   19152              :         case 27:
   19153              :           if (!(
   19154              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19155              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19156              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19157              : (TARGET_AVX512BW)))
   19158              :             return -1;
   19159              :           return 7600; /* *addv32hi3_one */
   19160              : 
   19161              :         case 28:
   19162              :           if (!(
   19163              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19164              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19165              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19166              : (TARGET_AVX2)))
   19167              :             return -1;
   19168              :           return 7601; /* *addv16hi3_one */
   19169              : 
   19170              :         case 29:
   19171              :           if (!
   19172              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19173              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   19174              :             return -1;
   19175              :           return 7602; /* *addv8hi3_one */
   19176              : 
   19177              :         case 30:
   19178              :           if (!(
   19179              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19180              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19181              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19182              : (TARGET_AVX512F)))
   19183              :             return -1;
   19184              :           return 7603; /* *addv16si3_one */
   19185              : 
   19186              :         case 31:
   19187              :           if (!(
   19188              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19189              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19190              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19191              : (TARGET_AVX2)))
   19192              :             return -1;
   19193              :           return 7604; /* *addv8si3_one */
   19194              : 
   19195              :         case 32:
   19196              :           if (!
   19197              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19198              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   19199              :             return -1;
   19200              :           return 7605; /* *addv4si3_one */
   19201              : 
   19202              :         case 33:
   19203              :           if (!(
   19204              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19205              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19206              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19207              : (TARGET_AVX512F)))
   19208              :             return -1;
   19209              :           return 7606; /* *addv8di3_one */
   19210              : 
   19211              :         case 34:
   19212              :           if (!(
   19213              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19214              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19215              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19216              : (TARGET_AVX2)))
   19217              :             return -1;
   19218              :           return 7607; /* *addv4di3_one */
   19219              : 
   19220              :         case 35:
   19221              :           if (!
   19222              : #line 17038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19223              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   19224              :             return -1;
   19225              :           return 7608; /* *addv2di3_one */
   19226              : 
   19227              :         default:
   19228              :           return -1;
   19229              :         }
   19230              : 
   19231              :     case UNSPEC:
   19232              :       switch (pattern194 (x3))
   19233              :         {
   19234              :         case 0:
   19235              :           if (!
   19236              : #line 7574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19237              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19238              :   && ix86_pre_reload_split ()))
   19239              :             return -1;
   19240              :           return 4390; /* fma_v32hf_fadd_fmul */
   19241              : 
   19242              :         case 1:
   19243              :           if (!(
   19244              : #line 7574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19245              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19246              :   && ix86_pre_reload_split ()) && 
   19247              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19248              : (TARGET_AVX512VL)))
   19249              :             return -1;
   19250              :           return 4391; /* fma_v16hf_fadd_fmul */
   19251              : 
   19252              :         case 2:
   19253              :           if (!(
   19254              : #line 7574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19255              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19256              :   && ix86_pre_reload_split ()) && 
   19257              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19258              : (TARGET_AVX512VL)))
   19259              :             return -1;
   19260              :           return 4392; /* fma_v8hf_fadd_fmul */
   19261              : 
   19262              :         case 3:
   19263              :           if (!
   19264              : #line 7591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19265              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19266              :   && ix86_pre_reload_split ()))
   19267              :             return -1;
   19268              :           return 4393; /* fma_v32hf_fadd_fcmul */
   19269              : 
   19270              :         case 4:
   19271              :           if (!(
   19272              : #line 7591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19273              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19274              :   && ix86_pre_reload_split ()) && 
   19275              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19276              : (TARGET_AVX512VL)))
   19277              :             return -1;
   19278              :           return 4394; /* fma_v16hf_fadd_fcmul */
   19279              : 
   19280              :         case 5:
   19281              :           if (!(
   19282              : #line 7591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19283              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19284              :   && ix86_pre_reload_split ()) && 
   19285              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19286              : (TARGET_AVX512VL)))
   19287              :             return -1;
   19288              :           return 4395; /* fma_v8hf_fadd_fcmul */
   19289              : 
   19290              :         case 6:
   19291              :           if (!
   19292              : #line 7609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19293              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19294              :   && ix86_pre_reload_split ()))
   19295              :             return -1;
   19296              :           return 4396; /* fma_fmaddc_v32hf_fma_zero */
   19297              : 
   19298              :         case 7:
   19299              :           if (!(
   19300              : #line 7609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19301              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19302              :   && ix86_pre_reload_split ()) && 
   19303              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19304              : (TARGET_AVX512VL)))
   19305              :             return -1;
   19306              :           return 4398; /* fma_fmaddc_v16hf_fma_zero */
   19307              : 
   19308              :         case 8:
   19309              :           if (!(
   19310              : #line 7609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19311              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19312              :   && ix86_pre_reload_split ()) && 
   19313              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19314              : (TARGET_AVX512VL)))
   19315              :             return -1;
   19316              :           return 4400; /* fma_fmaddc_v8hf_fma_zero */
   19317              : 
   19318              :         case 9:
   19319              :           if (!
   19320              : #line 7609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19321              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19322              :   && ix86_pre_reload_split ()))
   19323              :             return -1;
   19324              :           return 4397; /* fma_fcmaddc_v32hf_fma_zero */
   19325              : 
   19326              :         case 10:
   19327              :           if (!(
   19328              : #line 7609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19329              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19330              :   && ix86_pre_reload_split ()) && 
   19331              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19332              : (TARGET_AVX512VL)))
   19333              :             return -1;
   19334              :           return 4399; /* fma_fcmaddc_v16hf_fma_zero */
   19335              : 
   19336              :         case 11:
   19337              :           if (!(
   19338              : #line 7609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19339              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   19340              :   && ix86_pre_reload_split ()) && 
   19341              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19342              : (TARGET_AVX512VL)))
   19343              :             return -1;
   19344              :           return 4401; /* fma_fcmaddc_v8hf_fma_zero */
   19345              : 
   19346              :         default:
   19347              :           return -1;
   19348              :         }
   19349              : 
   19350              :     case MULT:
   19351              :       x5 = XEXP (x4, 0);
   19352              :       switch (GET_CODE (x5))
   19353              :         {
   19354              :         case SIGN_EXTEND:
   19355              :           if (pattern334 (x4) != 0)
   19356              :             return -1;
   19357              :           x6 = XEXP (x5, 0);
   19358              :           x7 = XEXP (x6, 1);
   19359              :           switch (XVECLEN (x7, 0))
   19360              :             {
   19361              :             case 8:
   19362              :               if (pattern1331 (x4) != 0)
   19363              :                 return -1;
   19364              :               x8 = XEXP (x3, 1);
   19365              :               if (GET_CODE (x8) != MULT
   19366              :                   || GET_MODE (x8) != E_V8SImode)
   19367              :                 return -1;
   19368              :               x9 = XEXP (x8, 0);
   19369              :               if (GET_CODE (x9) != SIGN_EXTEND
   19370              :                   || GET_MODE (x9) != E_V8SImode)
   19371              :                 return -1;
   19372              :               x10 = XEXP (x9, 0);
   19373              :               if (GET_CODE (x10) != VEC_SELECT
   19374              :                   || GET_MODE (x10) != E_V8HImode)
   19375              :                 return -1;
   19376              :               x11 = XEXP (x10, 1);
   19377              :               if (GET_CODE (x11) != PARALLEL
   19378              :                   || pattern1904 (x11, 
   19379              : 8) != 0)
   19380              :                 return -1;
   19381              :               x12 = XEXP (x8, 1);
   19382              :               if (pattern1884 (x12, 
   19383              : E_V8HImode, 
   19384              : E_V8SImode) != 0)
   19385              :                 return -1;
   19386              :               x13 = XEXP (x12, 0);
   19387              :               x14 = XEXP (x13, 1);
   19388              :               if (pattern1921 (x14, 
   19389              : 8) != 0
   19390              :                   || !register_operand (operands[0], E_V8SImode)
   19391              :                   || GET_MODE (x3) != E_V8SImode
   19392              :                   || GET_MODE (x4) != E_V8SImode
   19393              :                   || GET_MODE (x5) != E_V8SImode
   19394              :                   || GET_MODE (x6) != E_V8HImode
   19395              :                   || !nonimmediate_operand (operands[1], E_V16HImode))
   19396              :                 return -1;
   19397              :               x15 = XEXP (x4, 1);
   19398              :               if (GET_MODE (x15) != E_V8SImode)
   19399              :                 return -1;
   19400              :               x16 = XEXP (x15, 0);
   19401              :               if (GET_MODE (x16) != E_V8HImode
   19402              :                   || !nonimmediate_operand (operands[2], E_V16HImode))
   19403              :                 return -1;
   19404              :               x17 = XEXP (x10, 0);
   19405              :               if (!rtx_equal_p (x17, operands[1]))
   19406              :                 return -1;
   19407              :               x18 = XEXP (x13, 0);
   19408              :               if (!rtx_equal_p (x18, operands[2])
   19409              :                   || !
   19410              : #line 17497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19411              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   19412              :                 return -1;
   19413              :               return 7705; /* *avx2_pmaddwd */
   19414              : 
   19415              :             case 4:
   19416              :               x19 = XVECEXP (x7, 0, 0);
   19417              :               if (GET_CODE (x19) != CONST_INT)
   19418              :                 return -1;
   19419              :               x20 = XVECEXP (x7, 0, 1);
   19420              :               if (GET_CODE (x20) != CONST_INT)
   19421              :                 return -1;
   19422              :               x21 = XVECEXP (x7, 0, 2);
   19423              :               if (GET_CODE (x21) != CONST_INT)
   19424              :                 return -1;
   19425              :               x22 = XVECEXP (x7, 0, 3);
   19426              :               if (GET_CODE (x22) != CONST_INT)
   19427              :                 return -1;
   19428              :               x15 = XEXP (x4, 1);
   19429              :               x16 = XEXP (x15, 0);
   19430              :               x23 = XEXP (x16, 1);
   19431              :               if (XVECLEN (x23, 0) != 4)
   19432              :                 return -1;
   19433              :               x24 = XVECEXP (x23, 0, 0);
   19434              :               if (GET_CODE (x24) != CONST_INT)
   19435              :                 return -1;
   19436              :               x25 = XVECEXP (x23, 0, 1);
   19437              :               if (GET_CODE (x25) != CONST_INT)
   19438              :                 return -1;
   19439              :               x26 = XVECEXP (x23, 0, 2);
   19440              :               if (GET_CODE (x26) != CONST_INT)
   19441              :                 return -1;
   19442              :               x27 = XVECEXP (x23, 0, 3);
   19443              :               if (GET_CODE (x27) != CONST_INT
   19444              :                   || pattern901 (x3, 
   19445              : E_V4HImode, 
   19446              : E_V4SImode) != 0
   19447              :                   || GET_MODE (x15) != E_V4SImode
   19448              :                   || GET_MODE (x16) != E_V4HImode)
   19449              :                 return -1;
   19450              :               switch (XWINT (x19, 0))
   19451              :                 {
   19452              :                 case 0L:
   19453              :                   if (XWINT (x20, 0) != 2L
   19454              :                       || XWINT (x21, 0) != 4L
   19455              :                       || XWINT (x22, 0) != 6L
   19456              :                       || XWINT (x24, 0) != 0L
   19457              :                       || XWINT (x25, 0) != 2L
   19458              :                       || XWINT (x26, 0) != 4L
   19459              :                       || XWINT (x27, 0) != 6L)
   19460              :                     return -1;
   19461              :                   x8 = XEXP (x3, 1);
   19462              :                   if (pattern1818 (x8, 
   19463              : E_V4HImode, 
   19464              : E_V4SImode, 
   19465              : SIGN_EXTEND) != 0
   19466              :                       || !vector_operand (operands[1], E_V8HImode)
   19467              :                       || !vector_operand (operands[2], E_V8HImode))
   19468              :                     return -1;
   19469              :                   x9 = XEXP (x8, 0);
   19470              :                   x10 = XEXP (x9, 0);
   19471              :                   x17 = XEXP (x10, 0);
   19472              :                   if (!rtx_equal_p (x17, operands[1]))
   19473              :                     return -1;
   19474              :                   x12 = XEXP (x8, 1);
   19475              :                   x13 = XEXP (x12, 0);
   19476              :                   x18 = XEXP (x13, 0);
   19477              :                   if (!rtx_equal_p (x18, operands[2])
   19478              :                       || !
   19479              : #line 17553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19480              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   19481              :                     return -1;
   19482              :                   return 7706; /* *sse2_pmaddwd */
   19483              : 
   19484              :                 case 1L:
   19485              :                   if (XWINT (x20, 0) != 3L
   19486              :                       || XWINT (x21, 0) != 5L
   19487              :                       || XWINT (x22, 0) != 7L
   19488              :                       || XWINT (x24, 0) != 1L
   19489              :                       || XWINT (x25, 0) != 3L
   19490              :                       || XWINT (x26, 0) != 5L
   19491              :                       || XWINT (x27, 0) != 7L
   19492              :                       || !nonimmediate_operand (operands[1], E_V8HImode)
   19493              :                       || !nonimmediate_operand (operands[2], E_V8HImode))
   19494              :                     return -1;
   19495              :                   x8 = XEXP (x3, 1);
   19496              :                   operands[3] = x8;
   19497              :                   if (!register_operand (operands[3], E_V4SImode)
   19498              :                       || !
   19499              : #line 27381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19500              : (TARGET_XOP))
   19501              :                     return -1;
   19502              :                   return 9122; /* xop_pmacswd */
   19503              : 
   19504              :                 default:
   19505              :                   return -1;
   19506              :                 }
   19507              : 
   19508              :             case 2:
   19509              :               if (pattern1332 (x3) != 0)
   19510              :                 return -1;
   19511              :               x15 = XEXP (x4, 1);
   19512              :               if (GET_MODE (x15) != E_V2DImode)
   19513              :                 return -1;
   19514              :               x16 = XEXP (x15, 0);
   19515              :               if (GET_MODE (x16) != E_V2SImode
   19516              :                   || !nonimmediate_operand (operands[2], E_V4SImode))
   19517              :                 return -1;
   19518              :               x8 = XEXP (x3, 1);
   19519              :               operands[3] = x8;
   19520              :               switch (pattern1868 (x4))
   19521              :                 {
   19522              :                 case 0:
   19523              :                   if (!
   19524              : #line 27340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19525              : (TARGET_XOP))
   19526              :                     return -1;
   19527              :                   return 9118; /* xop_pmacsdql */
   19528              : 
   19529              :                 case 1:
   19530              :                   if (!
   19531              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19532              : (TARGET_XOP))
   19533              :                     return -1;
   19534              :                   return 9120; /* xop_pmacsdqh */
   19535              : 
   19536              :                 default:
   19537              :                   return -1;
   19538              :                 }
   19539              : 
   19540              :             default:
   19541              :               return -1;
   19542              :             }
   19543              : 
   19544              :         case REG:
   19545              :         case SUBREG:
   19546              :         case MEM:
   19547              :           switch (pattern336 (x3))
   19548              :             {
   19549              :             case 0:
   19550              :               if (!
   19551              : #line 27321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19552              : (TARGET_XOP))
   19553              :                 return -1;
   19554              :               return 9114; /* xop_pmacsww */
   19555              : 
   19556              :             case 1:
   19557              :               if (!
   19558              : #line 27321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19559              : (TARGET_XOP))
   19560              :                 return -1;
   19561              :               return 9116; /* xop_pmacsdd */
   19562              : 
   19563              :             default:
   19564              :               return -1;
   19565              :             }
   19566              : 
   19567              :         default:
   19568              :           return -1;
   19569              :         }
   19570              : 
   19571              :     case VEC_SELECT:
   19572              :       switch (pattern198 (x3))
   19573              :         {
   19574              :         case 0:
   19575              :           if (!
   19576              : #line 23458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19577              : (TARGET_AVX2))
   19578              :             return -1;
   19579              :           return 8706; /* avx2_phaddwv16hi3 */
   19580              : 
   19581              :         case 1:
   19582              :           if (!
   19583              : #line 23482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19584              : (TARGET_SSSE3))
   19585              :             return -1;
   19586              :           return 8710; /* ssse3_phaddwv8hi3 */
   19587              : 
   19588              :         case 2:
   19589              :           if (!
   19590              : #line 23551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19591              : (TARGET_AVX2))
   19592              :             return -1;
   19593              :           return 8718; /* avx2_phadddv8si3 */
   19594              : 
   19595              :         case 3:
   19596              :           if (!
   19597              : #line 23573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19598              : (TARGET_SSSE3))
   19599              :             return -1;
   19600              :           return 8720; /* ssse3_phadddv4si3 */
   19601              : 
   19602              :         default:
   19603              :           return -1;
   19604              :         }
   19605              : 
   19606              :     case PLUS:
   19607              :       x5 = XEXP (x4, 0);
   19608              :       switch (GET_CODE (x5))
   19609              :         {
   19610              :         case MULT:
   19611              :           if (pattern337 (x5) != 0)
   19612              :             return -1;
   19613              :           x28 = XEXP (x5, 1);
   19614              :           if (GET_MODE (x28) != E_V4SImode)
   19615              :             return -1;
   19616              :           x29 = XEXP (x28, 0);
   19617              :           if (GET_CODE (x29) != VEC_SELECT
   19618              :               || GET_MODE (x29) != E_V4HImode)
   19619              :             return -1;
   19620              :           x30 = XEXP (x29, 1);
   19621              :           if (GET_CODE (x30) != PARALLEL
   19622              :               || XVECLEN (x30, 0) != 4)
   19623              :             return -1;
   19624              :           x31 = XVECEXP (x30, 0, 0);
   19625              :           if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   19626              :             return -1;
   19627              :           x32 = XVECEXP (x30, 0, 1);
   19628              :           if (x32 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   19629              :             return -1;
   19630              :           x33 = XVECEXP (x30, 0, 2);
   19631              :           if (x33 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
   19632              :             return -1;
   19633              :           x34 = XVECEXP (x30, 0, 3);
   19634              :           if (x34 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   19635              :             return -1;
   19636              :           x15 = XEXP (x4, 1);
   19637              :           if (GET_CODE (x15) != MULT
   19638              :               || GET_MODE (x15) != E_V4SImode)
   19639              :             return -1;
   19640              :           x16 = XEXP (x15, 0);
   19641              :           if (GET_CODE (x16) != SIGN_EXTEND
   19642              :               || GET_MODE (x16) != E_V4SImode)
   19643              :             return -1;
   19644              :           x35 = XEXP (x16, 0);
   19645              :           if (GET_CODE (x35) != VEC_SELECT
   19646              :               || GET_MODE (x35) != E_V4HImode)
   19647              :             return -1;
   19648              :           x36 = XEXP (x35, 1);
   19649              :           if (GET_CODE (x36) != PARALLEL
   19650              :               || XVECLEN (x36, 0) != 4)
   19651              :             return -1;
   19652              :           x37 = XVECEXP (x36, 0, 0);
   19653              :           if (x37 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   19654              :             return -1;
   19655              :           x38 = XVECEXP (x36, 0, 1);
   19656              :           if (x38 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   19657              :             return -1;
   19658              :           x39 = XVECEXP (x36, 0, 2);
   19659              :           if (x39 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   19660              :             return -1;
   19661              :           x40 = XVECEXP (x36, 0, 3);
   19662              :           if (x40 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
   19663              :             return -1;
   19664              :           x41 = XEXP (x15, 1);
   19665              :           if (GET_CODE (x41) != SIGN_EXTEND
   19666              :               || GET_MODE (x41) != E_V4SImode)
   19667              :             return -1;
   19668              :           x42 = XEXP (x41, 0);
   19669              :           if (GET_CODE (x42) != VEC_SELECT
   19670              :               || GET_MODE (x42) != E_V4HImode)
   19671              :             return -1;
   19672              :           x43 = XEXP (x42, 1);
   19673              :           if (GET_CODE (x43) != PARALLEL
   19674              :               || XVECLEN (x43, 0) != 4)
   19675              :             return -1;
   19676              :           x44 = XVECEXP (x43, 0, 0);
   19677              :           if (x44 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   19678              :             return -1;
   19679              :           x45 = XVECEXP (x43, 0, 1);
   19680              :           if (x45 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   19681              :             return -1;
   19682              :           x46 = XVECEXP (x43, 0, 2);
   19683              :           if (x46 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   19684              :             return -1;
   19685              :           x47 = XVECEXP (x43, 0, 3);
   19686              :           if (x47 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   19687              :               || !register_operand (operands[0], E_V4SImode)
   19688              :               || GET_MODE (x3) != E_V4SImode
   19689              :               || GET_MODE (x4) != E_V4SImode
   19690              :               || pattern1924 (x3) != 0
   19691              :               || !
   19692              : #line 27414 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19693              : (TARGET_XOP))
   19694              :             return -1;
   19695              :           return 9124; /* xop_pmadcswd */
   19696              : 
   19697              :         case SIGN_EXTEND:
   19698              :           switch (pattern340 (x3, 
   19699              : SIGN_EXTEND))
   19700              :             {
   19701              :             case 0:
   19702              :               if (!
   19703              : #line 27509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19704              : (TARGET_XOP))
   19705              :                 return -1;
   19706              :               return 9144; /* xop_phaddbd */
   19707              : 
   19708              :             case 1:
   19709              :               if (!
   19710              : #line 27608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19711              : (TARGET_XOP))
   19712              :                 return -1;
   19713              :               return 9150; /* xop_phaddwq */
   19714              : 
   19715              :             default:
   19716              :               return -1;
   19717              :             }
   19718              : 
   19719              :         case ZERO_EXTEND:
   19720              :           switch (pattern340 (x3, 
   19721              : ZERO_EXTEND))
   19722              :             {
   19723              :             case 0:
   19724              :               if (!
   19725              : #line 27509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19726              : (TARGET_XOP))
   19727              :                 return -1;
   19728              :               return 9145; /* xop_phaddubd */
   19729              : 
   19730              :             case 1:
   19731              :               if (!
   19732              : #line 27608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19733              : (TARGET_XOP))
   19734              :                 return -1;
   19735              :               return 9151; /* xop_phadduwq */
   19736              : 
   19737              :             default:
   19738              :               return -1;
   19739              :             }
   19740              : 
   19741              :         case PLUS:
   19742              :           if (GET_MODE (x5) != E_V2DImode)
   19743              :             return -1;
   19744              :           x15 = XEXP (x4, 1);
   19745              :           if (GET_CODE (x15) != PLUS
   19746              :               || GET_MODE (x15) != E_V2DImode)
   19747              :             return -1;
   19748              :           x8 = XEXP (x3, 1);
   19749              :           if (GET_CODE (x8) != PLUS
   19750              :               || GET_MODE (x8) != E_V2DImode
   19751              :               || pattern1050 (x8, 
   19752              : E_V2DImode, 
   19753              : PLUS) != 0
   19754              :               || !register_operand (operands[0], E_V2DImode)
   19755              :               || GET_MODE (x3) != E_V2DImode
   19756              :               || GET_MODE (x4) != E_V2DImode
   19757              :               || pattern1575 (x3, 
   19758              : E_V2DImode) != 0)
   19759              :             return -1;
   19760              :           x6 = XEXP (x5, 0);
   19761              :           switch (GET_CODE (x6))
   19762              :             {
   19763              :             case SIGN_EXTEND:
   19764              :               if (pattern1855 (x3, 
   19765              : SIGN_EXTEND) != 0
   19766              :                   || !
   19767              : #line 27558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19768              : (TARGET_XOP))
   19769              :                 return -1;
   19770              :               return 9146; /* xop_phaddbq */
   19771              : 
   19772              :             case ZERO_EXTEND:
   19773              :               if (pattern1855 (x3, 
   19774              : ZERO_EXTEND) != 0
   19775              :                   || !
   19776              : #line 27558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19777              : (TARGET_XOP))
   19778              :                 return -1;
   19779              :               return 9147; /* xop_phaddubq */
   19780              : 
   19781              :             default:
   19782              :               return -1;
   19783              :             }
   19784              : 
   19785              :         default:
   19786              :           return -1;
   19787              :         }
   19788              : 
   19789              :     case SIGN_EXTEND:
   19790              :       switch (pattern200 (x3, 
   19791              : SIGN_EXTEND))
   19792              :         {
   19793              :         case 0:
   19794              :           if (!
   19795              : #line 27476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19796              : (TARGET_XOP))
   19797              :             return -1;
   19798              :           return 9142; /* xop_phaddbw */
   19799              : 
   19800              :         case 1:
   19801              :           if (!
   19802              : #line 27579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19803              : (TARGET_XOP))
   19804              :             return -1;
   19805              :           return 9148; /* xop_phaddwd */
   19806              : 
   19807              :         case 2:
   19808              :           if (!
   19809              : #line 27627 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19810              : (TARGET_XOP))
   19811              :             return -1;
   19812              :           return 9152; /* xop_phadddq */
   19813              : 
   19814              :         default:
   19815              :           return -1;
   19816              :         }
   19817              : 
   19818              :     case ZERO_EXTEND:
   19819              :       switch (pattern200 (x3, 
   19820              : ZERO_EXTEND))
   19821              :         {
   19822              :         case 0:
   19823              :           if (!
   19824              : #line 27476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19825              : (TARGET_XOP))
   19826              :             return -1;
   19827              :           return 9143; /* xop_phaddubw */
   19828              : 
   19829              :         case 1:
   19830              :           if (!
   19831              : #line 27579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19832              : (TARGET_XOP))
   19833              :             return -1;
   19834              :           return 9149; /* xop_phadduwd */
   19835              : 
   19836              :         case 2:
   19837              :           if (!
   19838              : #line 27627 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19839              : (TARGET_XOP))
   19840              :             return -1;
   19841              :           return 9153; /* xop_phaddudq */
   19842              : 
   19843              :         default:
   19844              :           return -1;
   19845              :         }
   19846              : 
   19847              :     default:
   19848              :       return -1;
   19849              :     }
   19850              : }
   19851              : 
   19852              :  int
   19853              : recog_329 (rtx x1 ATTRIBUTE_UNUSED,
   19854              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   19855              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   19856              : {
   19857              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   19858              :   rtx x2, x3, x4, x5;
   19859              :   int res ATTRIBUTE_UNUSED;
   19860              :   x2 = XEXP (x1, 0);
   19861              :   operands[0] = x2;
   19862              :   x3 = XEXP (x1, 1);
   19863              :   x4 = XEXP (x3, 0);
   19864              :   switch (GET_CODE (x4))
   19865              :     {
   19866              :     case VEC_SELECT:
   19867              :       return recog_306 (x1, insn, pnum_clobbers);
   19868              : 
   19869              :     case REG:
   19870              :     case SUBREG:
   19871              :     case MEM:
   19872              :       operands[1] = x4;
   19873              :       switch (GET_MODE (operands[0]))
   19874              :         {
   19875              :         case E_V2DFmode:
   19876              :           if (!register_operand (operands[0], E_V2DFmode)
   19877              :               || GET_MODE (x3) != E_V2DFmode
   19878              :               || !nonimmediate_operand (operands[1], E_DFmode))
   19879              :             return -1;
   19880              :           if (
   19881              : #line 15603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19882              : (TARGET_SSE2))
   19883              :             return 7305; /* vec_dupv2df */
   19884              :           if (!(
   19885              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19886              : (TARGET_AVX512F) && 
   19887              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19888              : (TARGET_AVX512VL)))
   19889              :             return -1;
   19890              :           return 9428; /* *avx512vl_vec_dup_gprv2df */
   19891              : 
   19892              :         case E_V16SFmode:
   19893              :           if (!register_operand (operands[0], E_V16SFmode)
   19894              :               || GET_MODE (x3) != E_V16SFmode)
   19895              :             return -1;
   19896              :           switch (GET_MODE (operands[1]))
   19897              :             {
   19898              :             case E_V4SFmode:
   19899              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   19900              :                   || !
   19901              : #line 29052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19902              : (TARGET_AVX512F))
   19903              :                 return -1;
   19904              :               return 9374; /* *avx512f_broadcastv16sf */
   19905              : 
   19906              :             case E_SFmode:
   19907              :               if (!nonimmediate_operand (operands[1], E_SFmode)
   19908              :                   || !
   19909              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19910              : (TARGET_AVX512F))
   19911              :                 return -1;
   19912              :               return 9418; /* *avx512f_vec_dup_gprv16sf */
   19913              : 
   19914              :             case E_V8SFmode:
   19915              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   19916              :                   || !
   19917              : #line 29391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19918              : (TARGET_AVX512DQ))
   19919              :                 return -1;
   19920              :               return 9482; /* *avx512dq_broadcastv16sf_1 */
   19921              : 
   19922              :             default:
   19923              :               return -1;
   19924              :             }
   19925              : 
   19926              :         case E_V16SImode:
   19927              :           if (!register_operand (operands[0], E_V16SImode)
   19928              :               || GET_MODE (x3) != E_V16SImode)
   19929              :             return -1;
   19930              :           switch (GET_MODE (operands[1]))
   19931              :             {
   19932              :             case E_V4SImode:
   19933              :               if (!nonimmediate_operand (operands[1], E_V4SImode)
   19934              :                   || !
   19935              : #line 29052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19936              : (TARGET_AVX512F))
   19937              :                 return -1;
   19938              :               return 9376; /* *avx512f_broadcastv16si */
   19939              : 
   19940              :             case E_SImode:
   19941              :               if (!nonimmediate_operand (operands[1], E_SImode)
   19942              :                   || !
   19943              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19944              : (TARGET_AVX512F))
   19945              :                 return -1;
   19946              :               return 9406; /* *avx512f_vec_dup_gprv16si */
   19947              : 
   19948              :             case E_V8SImode:
   19949              :               if (!nonimmediate_operand (operands[1], E_V8SImode)
   19950              :                   || !
   19951              : #line 29391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19952              : (TARGET_AVX512DQ))
   19953              :                 return -1;
   19954              :               return 9484; /* *avx512dq_broadcastv16si_1 */
   19955              : 
   19956              :             default:
   19957              :               return -1;
   19958              :             }
   19959              : 
   19960              :         case E_V8DFmode:
   19961              :           if (!register_operand (operands[0], E_V8DFmode)
   19962              :               || GET_MODE (x3) != E_V8DFmode)
   19963              :             return -1;
   19964              :           switch (GET_MODE (operands[1]))
   19965              :             {
   19966              :             case E_V4DFmode:
   19967              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   19968              :                   || !
   19969              : #line 29065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19970              : (TARGET_AVX512F))
   19971              :                 return -1;
   19972              :               return 9378; /* *avx512f_broadcastv8df */
   19973              : 
   19974              :             case E_DFmode:
   19975              :               if (!nonimmediate_operand (operands[1], E_DFmode)
   19976              :                   || !
   19977              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19978              : (TARGET_AVX512F))
   19979              :                 return -1;
   19980              :               return 9424; /* *avx512f_vec_dup_gprv8df */
   19981              : 
   19982              :             case E_V2DFmode:
   19983              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   19984              :                   || !
   19985              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19986              : (TARGET_AVX512DQ))
   19987              :                 return -1;
   19988              :               return 9488; /* *avx512dq_broadcastv8df_1 */
   19989              : 
   19990              :             default:
   19991              :               return -1;
   19992              :             }
   19993              : 
   19994              :         case E_V8DImode:
   19995              :           if (!register_operand (operands[0], E_V8DImode)
   19996              :               || GET_MODE (x3) != E_V8DImode)
   19997              :             return -1;
   19998              :           switch (GET_MODE (operands[1]))
   19999              :             {
   20000              :             case E_V4DImode:
   20001              :               if (!nonimmediate_operand (operands[1], E_V4DImode)
   20002              :                   || !
   20003              : #line 29065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20004              : (TARGET_AVX512F))
   20005              :                 return -1;
   20006              :               return 9380; /* *avx512f_broadcastv8di */
   20007              : 
   20008              :             case E_DImode:
   20009              :               if (!nonimmediate_operand (operands[1], E_DImode)
   20010              :                   || !
   20011              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20012              : (TARGET_AVX512F))
   20013              :                 return -1;
   20014              :               return 9412; /* *avx512f_vec_dup_gprv8di */
   20015              : 
   20016              :             case E_V2DImode:
   20017              :               if (!nonimmediate_operand (operands[1], E_V2DImode)
   20018              :                   || !
   20019              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20020              : (TARGET_AVX512DQ))
   20021              :                 return -1;
   20022              :               return 9486; /* *avx512dq_broadcastv8di_1 */
   20023              : 
   20024              :             default:
   20025              :               return -1;
   20026              :             }
   20027              : 
   20028              :         case E_V64QImode:
   20029              :           if (!register_operand (operands[0], E_V64QImode)
   20030              :               || GET_MODE (x3) != E_V64QImode
   20031              :               || !nonimmediate_operand (operands[1], E_QImode)
   20032              :               || !
   20033              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20034              : (TARGET_AVX512BW))
   20035              :             return -1;
   20036              :           return 9382; /* *avx512bw_vec_dup_gprv64qi */
   20037              : 
   20038              :         case E_V16QImode:
   20039              :           if (!register_operand (operands[0], E_V16QImode)
   20040              :               || GET_MODE (x3) != E_V16QImode
   20041              :               || !nonimmediate_operand (operands[1], E_QImode))
   20042              :             return -1;
   20043              :           if ((
   20044              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20045              : (TARGET_AVX512BW) && 
   20046              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20047              : (TARGET_AVX512VL)))
   20048              :             return 9384; /* *avx512vl_vec_dup_gprv16qi */
   20049              :           if (!
   20050              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20051              : (TARGET_AVX2))
   20052              :             return -1;
   20053              :           return 9439; /* *vec_dupv16qi */
   20054              : 
   20055              :         case E_V32QImode:
   20056              :           if (!register_operand (operands[0], E_V32QImode)
   20057              :               || GET_MODE (x3) != E_V32QImode
   20058              :               || !nonimmediate_operand (operands[1], E_QImode))
   20059              :             return -1;
   20060              :           if ((
   20061              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20062              : (TARGET_AVX512BW) && 
   20063              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20064              : (TARGET_AVX512VL)))
   20065              :             return 9386; /* *avx512vl_vec_dup_gprv32qi */
   20066              :           if (!
   20067              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20068              : (TARGET_AVX2))
   20069              :             return -1;
   20070              :           return 9438; /* *vec_dupv32qi */
   20071              : 
   20072              :         case E_V32HImode:
   20073              :           if (!register_operand (operands[0], E_V32HImode)
   20074              :               || GET_MODE (x3) != E_V32HImode
   20075              :               || !nonimmediate_operand (operands[1], E_HImode)
   20076              :               || !
   20077              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20078              : (TARGET_AVX512BW))
   20079              :             return -1;
   20080              :           return 9388; /* *avx512bw_vec_dup_gprv32hi */
   20081              : 
   20082              :         case E_V16HImode:
   20083              :           if (!register_operand (operands[0], E_V16HImode)
   20084              :               || GET_MODE (x3) != E_V16HImode
   20085              :               || !nonimmediate_operand (operands[1], E_HImode))
   20086              :             return -1;
   20087              :           if ((
   20088              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20089              : (TARGET_AVX512BW) && 
   20090              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20091              : (TARGET_AVX512VL)))
   20092              :             return 9390; /* *avx512vl_vec_dup_gprv16hi */
   20093              :           if (!
   20094              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20095              : (TARGET_AVX2))
   20096              :             return -1;
   20097              :           return 9440; /* *vec_dupv16hi */
   20098              : 
   20099              :         case E_V8HImode:
   20100              :           if (!register_operand (operands[0], E_V8HImode)
   20101              :               || GET_MODE (x3) != E_V8HImode
   20102              :               || !nonimmediate_operand (operands[1], E_HImode))
   20103              :             return -1;
   20104              :           if ((
   20105              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20106              : (TARGET_AVX512BW) && 
   20107              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20108              : (TARGET_AVX512VL)))
   20109              :             return 9392; /* *avx512vl_vec_dup_gprv8hi */
   20110              :           if (!
   20111              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20112              : (TARGET_AVX2))
   20113              :             return -1;
   20114              :           return 9441; /* *vec_dupv8hi */
   20115              : 
   20116              :         case E_V32HFmode:
   20117              :           if (!register_operand (operands[0], E_V32HFmode)
   20118              :               || GET_MODE (x3) != E_V32HFmode
   20119              :               || !nonimmediate_operand (operands[1], E_HFmode)
   20120              :               || !
   20121              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20122              : (TARGET_AVX512BW))
   20123              :             return -1;
   20124              :           return 9394; /* *avx512bw_vec_dup_gprv32hf */
   20125              : 
   20126              :         case E_V16HFmode:
   20127              :           if (!register_operand (operands[0], E_V16HFmode)
   20128              :               || GET_MODE (x3) != E_V16HFmode
   20129              :               || !nonimmediate_operand (operands[1], E_HFmode))
   20130              :             return -1;
   20131              :           if ((
   20132              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20133              : (TARGET_AVX512BW) && 
   20134              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20135              : (TARGET_AVX512VL)))
   20136              :             return 9396; /* *avx512vl_vec_dup_gprv16hf */
   20137              :           if (!
   20138              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20139              : (TARGET_AVX2))
   20140              :             return -1;
   20141              :           return 9444; /* *vec_dupv16hf */
   20142              : 
   20143              :         case E_V8HFmode:
   20144              :           if (!register_operand (operands[0], E_V8HFmode)
   20145              :               || GET_MODE (x3) != E_V8HFmode
   20146              :               || !nonimmediate_operand (operands[1], E_HFmode))
   20147              :             return -1;
   20148              :           if ((
   20149              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20150              : (TARGET_AVX512BW) && 
   20151              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20152              : (TARGET_AVX512VL)))
   20153              :             return 9398; /* *avx512fp16_vec_dup_gprv8hf */
   20154              :           if (!
   20155              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20156              : (TARGET_AVX2))
   20157              :             return -1;
   20158              :           return 9445; /* *vec_dupv8hf */
   20159              : 
   20160              :         case E_V32BFmode:
   20161              :           if (!register_operand (operands[0], E_V32BFmode)
   20162              :               || GET_MODE (x3) != E_V32BFmode
   20163              :               || !nonimmediate_operand (operands[1], E_BFmode)
   20164              :               || !
   20165              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20166              : (TARGET_AVX512BW))
   20167              :             return -1;
   20168              :           return 9400; /* *avx512bw_vec_dup_gprv32bf */
   20169              : 
   20170              :         case E_V16BFmode:
   20171              :           if (!register_operand (operands[0], E_V16BFmode)
   20172              :               || GET_MODE (x3) != E_V16BFmode
   20173              :               || !nonimmediate_operand (operands[1], E_BFmode))
   20174              :             return -1;
   20175              :           if ((
   20176              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20177              : (TARGET_AVX512BW) && 
   20178              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20179              : (TARGET_AVX512VL)))
   20180              :             return 9402; /* *avx512vl_vec_dup_gprv16bf */
   20181              :           if (!
   20182              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20183              : (TARGET_AVX2))
   20184              :             return -1;
   20185              :           return 9446; /* *vec_dupv16bf */
   20186              : 
   20187              :         case E_V8BFmode:
   20188              :           if (!register_operand (operands[0], E_V8BFmode)
   20189              :               || GET_MODE (x3) != E_V8BFmode
   20190              :               || !nonimmediate_operand (operands[1], E_BFmode))
   20191              :             return -1;
   20192              :           if ((
   20193              : #line 29078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20194              : (TARGET_AVX512BW) && 
   20195              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20196              : (TARGET_AVX512VL)))
   20197              :             return 9404; /* *avx512vl_vec_dup_gprv8bf */
   20198              :           if (!
   20199              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20200              : (TARGET_AVX2))
   20201              :             return -1;
   20202              :           return 9447; /* *vec_dupv8bf */
   20203              : 
   20204              :         case E_V8SImode:
   20205              :           if (!register_operand (operands[0], E_V8SImode)
   20206              :               || GET_MODE (x3) != E_V8SImode)
   20207              :             return -1;
   20208              :           switch (GET_MODE (operands[1]))
   20209              :             {
   20210              :             case E_SImode:
   20211              :               if (!nonimmediate_operand (operands[1], E_SImode))
   20212              :                 return -1;
   20213              :               if ((
   20214              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20215              : (TARGET_AVX512F) && 
   20216              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20217              : (TARGET_AVX512VL)))
   20218              :                 return 9408; /* *avx512vl_vec_dup_gprv8si */
   20219              :               if (
   20220              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20221              : (TARGET_AVX2))
   20222              :                 return 9442; /* *vec_dupv8si */
   20223              :               if (!
   20224              : #line 29260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20225              : (TARGET_AVX))
   20226              :                 return -1;
   20227              :               return 9448; /* vec_dupv8si */
   20228              : 
   20229              :             case E_V4SImode:
   20230              :               if (!nonimmediate_operand (operands[1], E_V4SImode)
   20231              :                   || !
   20232              : #line 29377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20233              : (TARGET_AVX512VL))
   20234              :                 return -1;
   20235              :               return 9478; /* *avx512vl_broadcastv8si_1 */
   20236              : 
   20237              :             default:
   20238              :               return -1;
   20239              :             }
   20240              : 
   20241              :         case E_V4SImode:
   20242              :           if (!register_operand (operands[0], E_V4SImode)
   20243              :               || GET_MODE (x3) != E_V4SImode
   20244              :               || !nonimmediate_operand (operands[1], E_SImode))
   20245              :             return -1;
   20246              :           if ((
   20247              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20248              : (TARGET_AVX512F) && 
   20249              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20250              : (TARGET_AVX512VL)))
   20251              :             return 9410; /* *avx512vl_vec_dup_gprv4si */
   20252              :           if (
   20253              : #line 29137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20254              : (TARGET_SSE))
   20255              :             return 9431; /* *vec_dupv4si */
   20256              :           if (!
   20257              : #line 29240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20258              : (TARGET_AVX2))
   20259              :             return -1;
   20260              :           return 9443; /* *vec_dupv4si */
   20261              : 
   20262              :         case E_V4DImode:
   20263              :           if (!register_operand (operands[0], E_V4DImode)
   20264              :               || GET_MODE (x3) != E_V4DImode)
   20265              :             return -1;
   20266              :           switch (GET_MODE (operands[1]))
   20267              :             {
   20268              :             case E_DImode:
   20269              :               if (!nonimmediate_operand (operands[1], E_DImode))
   20270              :                 return -1;
   20271              :               if ((
   20272              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20273              : (TARGET_AVX512F) && 
   20274              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20275              : (TARGET_AVX512VL)))
   20276              :                 return 9414; /* *avx512vl_vec_dup_gprv4di */
   20277              :               if (!
   20278              : #line 29260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20279              : (TARGET_AVX))
   20280              :                 return -1;
   20281              :               return 9450; /* vec_dupv4di */
   20282              : 
   20283              :             case E_V2DImode:
   20284              :               if (!nonimmediate_operand (operands[1], E_V2DImode)
   20285              :                   || !(
   20286              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20287              : (TARGET_AVX512DQ) && 
   20288              : #line 29403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20289              : (TARGET_AVX512VL)))
   20290              :                 return -1;
   20291              :               return 9490; /* *avx512dq_broadcastv4di_1 */
   20292              : 
   20293              :             default:
   20294              :               return -1;
   20295              :             }
   20296              : 
   20297              :         case E_V2DImode:
   20298              :           if (!register_operand (operands[0], E_V2DImode)
   20299              :               || GET_MODE (x3) != E_V2DImode
   20300              :               || !nonimmediate_operand (operands[1], E_DImode))
   20301              :             return -1;
   20302              :           if ((
   20303              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20304              : (TARGET_AVX512F) && 
   20305              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20306              : (TARGET_AVX512VL)))
   20307              :             return 9416; /* *avx512vl_vec_dup_gprv2di */
   20308              :           if (!
   20309              : #line 29165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20310              : (TARGET_SSE))
   20311              :             return -1;
   20312              :           return 9432; /* *vec_dupv2di */
   20313              : 
   20314              :         case E_V8SFmode:
   20315              :           if (!register_operand (operands[0], E_V8SFmode)
   20316              :               || GET_MODE (x3) != E_V8SFmode)
   20317              :             return -1;
   20318              :           switch (GET_MODE (operands[1]))
   20319              :             {
   20320              :             case E_SFmode:
   20321              :               if (!nonimmediate_operand (operands[1], E_SFmode))
   20322              :                 return -1;
   20323              :               if ((
   20324              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20325              : (TARGET_AVX512F) && 
   20326              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20327              : (TARGET_AVX512VL)))
   20328              :                 return 9420; /* *avx512vl_vec_dup_gprv8sf */
   20329              :               if (!
   20330              : #line 29260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20331              : (TARGET_AVX))
   20332              :                 return -1;
   20333              :               return 9449; /* vec_dupv8sf */
   20334              : 
   20335              :             case E_V4SFmode:
   20336              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   20337              :                   || !
   20338              : #line 29377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20339              : (TARGET_AVX512VL))
   20340              :                 return -1;
   20341              :               return 9480; /* *avx512vl_broadcastv8sf_1 */
   20342              : 
   20343              :             default:
   20344              :               return -1;
   20345              :             }
   20346              : 
   20347              :         case E_V4SFmode:
   20348              :           if (!register_operand (operands[0], E_V4SFmode)
   20349              :               || GET_MODE (x3) != E_V4SFmode
   20350              :               || !nonimmediate_operand (operands[1], E_SFmode))
   20351              :             return -1;
   20352              :           if ((
   20353              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20354              : (TARGET_AVX512F) && 
   20355              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20356              : (TARGET_AVX512VL)))
   20357              :             return 9422; /* *avx512vl_vec_dup_gprv4sf */
   20358              :           if (!
   20359              : #line 29105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20360              : (TARGET_SSE))
   20361              :             return -1;
   20362              :           return 9430; /* vec_dupv4sf */
   20363              : 
   20364              :         case E_V4DFmode:
   20365              :           if (!register_operand (operands[0], E_V4DFmode)
   20366              :               || GET_MODE (x3) != E_V4DFmode)
   20367              :             return -1;
   20368              :           switch (GET_MODE (operands[1]))
   20369              :             {
   20370              :             case E_DFmode:
   20371              :               if (!nonimmediate_operand (operands[1], E_DFmode))
   20372              :                 return -1;
   20373              :               if ((
   20374              : #line 29090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20375              : (TARGET_AVX512F) && 
   20376              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20377              : (TARGET_AVX512VL)))
   20378              :                 return 9426; /* *avx512vl_vec_dup_gprv4df */
   20379              :               if (!
   20380              : #line 29260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20381              : (TARGET_AVX))
   20382              :                 return -1;
   20383              :               return 9451; /* vec_dupv4df */
   20384              : 
   20385              :             case E_V2DFmode:
   20386              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   20387              :                   || !(
   20388              : #line 29409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20389              : (TARGET_AVX512DQ) && 
   20390              : #line 29403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20391              : (TARGET_AVX512VL)))
   20392              :                 return -1;
   20393              :               return 9492; /* *avx512dq_broadcastv4df_1 */
   20394              : 
   20395              :             default:
   20396              :               return -1;
   20397              :             }
   20398              : 
   20399              :         default:
   20400              :           return -1;
   20401              :         }
   20402              : 
   20403              :     case FLOAT_EXTEND:
   20404              :       if (GET_MODE (x4) != E_SFmode)
   20405              :         return -1;
   20406              :       x5 = XEXP (x4, 0);
   20407              :       operands[1] = x5;
   20408              :       switch (GET_MODE (operands[0]))
   20409              :         {
   20410              :         case E_V8SFmode:
   20411              :           switch (pattern692 (x3, 
   20412              : E_V8SFmode))
   20413              :             {
   20414              :             case 0:
   20415              :               if (!(
   20416              : #line 33073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20417              : (TARGET_AVXNECONVERT) && 
   20418              : #line 444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20419              : (TARGET_AVX)))
   20420              :                 return -1;
   20421              :               return 10573; /* vbcstnebf162ps_v8sf */
   20422              : 
   20423              :             case 1:
   20424              :               if (!(
   20425              : #line 33084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20426              : (TARGET_AVXNECONVERT) && 
   20427              : #line 444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20428              : (TARGET_AVX)))
   20429              :                 return -1;
   20430              :               return 10575; /* vbcstnesh2ps_v8sf */
   20431              : 
   20432              :             default:
   20433              :               return -1;
   20434              :             }
   20435              : 
   20436              :         case E_V4SFmode:
   20437              :           switch (pattern692 (x3, 
   20438              : E_V4SFmode))
   20439              :             {
   20440              :             case 0:
   20441              :               if (!
   20442              : #line 33073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20443              : (TARGET_AVXNECONVERT))
   20444              :                 return -1;
   20445              :               return 10574; /* vbcstnebf162ps_v4sf */
   20446              : 
   20447              :             case 1:
   20448              :               if (!
   20449              : #line 33084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20450              : (TARGET_AVXNECONVERT))
   20451              :                 return -1;
   20452              :               return 10576; /* vbcstnesh2ps_v4sf */
   20453              : 
   20454              :             default:
   20455              :               return -1;
   20456              :             }
   20457              : 
   20458              :         default:
   20459              :           return -1;
   20460              :         }
   20461              : 
   20462              :     default:
   20463              :       return -1;
   20464              :     }
   20465              : }
   20466              : 
   20467              :  int
   20468              : recog_334 (rtx x1 ATTRIBUTE_UNUSED,
   20469              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20470              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20471              : {
   20472              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20473              :   rtx x2, x3, x4, x5;
   20474              :   int res ATTRIBUTE_UNUSED;
   20475              :   x2 = XEXP (x1, 0);
   20476              :   operands[0] = x2;
   20477              :   x3 = XEXP (x1, 1);
   20478              :   x4 = XEXP (x3, 0);
   20479              :   operands[1] = x4;
   20480              :   x5 = XEXP (x3, 1);
   20481              :   operands[2] = x5;
   20482              :   switch (GET_MODE (operands[0]))
   20483              :     {
   20484              :     case E_V16HImode:
   20485              :       if (!register_operand (operands[0], E_V16HImode)
   20486              :           || GET_MODE (x3) != E_V16HImode)
   20487              :         return -1;
   20488              :       if (nonimmediate_operand (operands[1], E_V16HImode)
   20489              :           && nonmemory_operand (operands[2], E_DImode)
   20490              :           && (
   20491              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20492              : (TARGET_AVX512VL) && 
   20493              : #line 781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20494              : (TARGET_AVX512BW)))
   20495              :         return 7719; /* *ashrv16hi3 */
   20496              :       if (!register_operand (operands[1], E_V16HImode))
   20497              :         return -1;
   20498              :       if (nonmemory_operand (operands[2], E_DImode)
   20499              :           && (
   20500              : #line 17865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20501              : (TARGET_SSE2) && 
   20502              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20503              : (TARGET_AVX2)))
   20504              :         return 7729; /* ashrv16hi3 */
   20505              :       if (!nonimmediate_operand (operands[2], E_V16HImode)
   20506              :           || !(
   20507              : #line 30327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20508              : (TARGET_AVX512BW) && 
   20509              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20510              : (TARGET_AVX512VL)))
   20511              :         return -1;
   20512              :       return 9715; /* avx512vl_ashrvv16hi */
   20513              : 
   20514              :     case E_V8HImode:
   20515              :       if (!register_operand (operands[0], E_V8HImode)
   20516              :           || GET_MODE (x3) != E_V8HImode)
   20517              :         return -1;
   20518              :       if (nonimmediate_operand (operands[1], E_V8HImode)
   20519              :           && nonmemory_operand (operands[2], E_DImode)
   20520              :           && (
   20521              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20522              : (TARGET_AVX512VL) && 
   20523              : #line 781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20524              : (TARGET_AVX512BW)))
   20525              :         return 7721; /* *ashrv8hi3 */
   20526              :       if (!register_operand (operands[1], E_V8HImode))
   20527              :         return -1;
   20528              :       if (nonmemory_operand (operands[2], E_DImode)
   20529              :           && 
   20530              : #line 17865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20531              : (TARGET_SSE2))
   20532              :         return 7730; /* ashrv8hi3 */
   20533              :       if (!nonimmediate_operand (operands[2], E_V8HImode)
   20534              :           || !(
   20535              : #line 30327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20536              : (TARGET_AVX512BW) && 
   20537              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20538              : (TARGET_AVX512VL)))
   20539              :         return -1;
   20540              :       return 9713; /* avx512vl_ashrvv8hi */
   20541              : 
   20542              :     case E_V8SImode:
   20543              :       if (!register_operand (operands[0], E_V8SImode)
   20544              :           || GET_MODE (x3) != E_V8SImode)
   20545              :         return -1;
   20546              :       if (nonimmediate_operand (operands[1], E_V8SImode)
   20547              :           && nonmemory_operand (operands[2], E_DImode)
   20548              :           && 
   20549              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20550              : (TARGET_AVX512VL))
   20551              :         return 7723; /* *ashrv8si3 */
   20552              :       if (!register_operand (operands[1], E_V8SImode))
   20553              :         return -1;
   20554              :       if (nonmemory_operand (operands[2], E_DImode)
   20555              :           && (
   20556              : #line 17865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20557              : (TARGET_SSE2) && 
   20558              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20559              : (TARGET_AVX2)))
   20560              :         return 7731; /* ashrv8si3 */
   20561              :       if (!nonimmediate_operand (operands[2], E_V8SImode)
   20562              :           || !
   20563              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20564              : (TARGET_AVX2 && 1))
   20565              :         return -1;
   20566              :       return 9703; /* avx2_ashrvv8si */
   20567              : 
   20568              :     case E_V4SImode:
   20569              :       if (!register_operand (operands[0], E_V4SImode)
   20570              :           || GET_MODE (x3) != E_V4SImode)
   20571              :         return -1;
   20572              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   20573              :           && nonmemory_operand (operands[2], E_DImode)
   20574              :           && 
   20575              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20576              : (TARGET_AVX512VL))
   20577              :         return 7725; /* *ashrv4si3 */
   20578              :       if (!register_operand (operands[1], E_V4SImode))
   20579              :         return -1;
   20580              :       if (nonmemory_operand (operands[2], E_DImode)
   20581              :           && 
   20582              : #line 17865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20583              : (TARGET_SSE2))
   20584              :         return 7732; /* ashrv4si3 */
   20585              :       if (!nonimmediate_operand (operands[2], E_V4SImode)
   20586              :           || !
   20587              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20588              : (TARGET_AVX2 && 1))
   20589              :         return -1;
   20590              :       return 9701; /* avx2_ashrvv4si */
   20591              : 
   20592              :     case E_V2DImode:
   20593              :       if (!register_operand (operands[0], E_V2DImode)
   20594              :           || GET_MODE (x3) != E_V2DImode)
   20595              :         return -1;
   20596              :       if (nonimmediate_operand (operands[1], E_V2DImode)
   20597              :           && nonmemory_operand (operands[2], E_DImode)
   20598              :           && 
   20599              : #line 17851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20600              : (TARGET_AVX512VL))
   20601              :         return 7727; /* *ashrv2di3 */
   20602              :       if (!register_operand (operands[1], E_V2DImode))
   20603              :         return -1;
   20604              :       if (nonmemory_operand (operands[2], E_DImode)
   20605              :           && 
   20606              : #line 28277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20607              : (TARGET_SSE2 && !TARGET_AVX512VL && ix86_pre_reload_split ()))
   20608              :         return 9181; /* *ashrv2di3 */
   20609              :       if (!nonimmediate_operand (operands[2], E_V2DImode)
   20610              :           || !(
   20611              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20612              : (TARGET_AVX2 && 1) && 
   20613              : #line 671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20614              : (TARGET_AVX512VL)))
   20615              :         return -1;
   20616              :       return 9707; /* avx2_ashrvv2di */
   20617              : 
   20618              :     case E_V32HImode:
   20619              :       if (!register_operand (operands[0], E_V32HImode)
   20620              :           || GET_MODE (x3) != E_V32HImode)
   20621              :         return -1;
   20622              :       if (nonimmediate_operand (operands[1], E_V32HImode)
   20623              :           && nonmemory_operand (operands[2], E_DImode)
   20624              :           && (
   20625              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20626              : (TARGET_AVX512F) && 
   20627              : #line 776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20628              : (TARGET_AVX512BW)))
   20629              :         return 7737; /* *ashrv32hi3 */
   20630              :       if (!register_operand (operands[1], E_V32HImode)
   20631              :           || !nonimmediate_operand (operands[2], E_V32HImode)
   20632              :           || !
   20633              : #line 30327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20634              : (TARGET_AVX512BW))
   20635              :         return -1;
   20636              :       return 9717; /* avx512bw_ashrvv32hi */
   20637              : 
   20638              :     case E_V4DImode:
   20639              :       if (!register_operand (operands[0], E_V4DImode)
   20640              :           || GET_MODE (x3) != E_V4DImode)
   20641              :         return -1;
   20642              :       if (nonimmediate_operand (operands[1], E_V4DImode)
   20643              :           && nonmemory_operand (operands[2], E_DImode)
   20644              :           && (
   20645              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20646              : (TARGET_AVX512F) && 
   20647              : #line 777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20648              : (TARGET_AVX512VL)))
   20649              :         return 7739; /* *ashrv4di3 */
   20650              :       if (!register_operand (operands[1], E_V4DImode)
   20651              :           || !nonimmediate_operand (operands[2], E_V4DImode)
   20652              :           || !(
   20653              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20654              : (TARGET_AVX2 && 1) && 
   20655              : #line 671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20656              : (TARGET_AVX512VL)))
   20657              :         return -1;
   20658              :       return 9709; /* avx2_ashrvv4di */
   20659              : 
   20660              :     case E_V16SImode:
   20661              :       if (!register_operand (operands[0], E_V16SImode)
   20662              :           || GET_MODE (x3) != E_V16SImode)
   20663              :         return -1;
   20664              :       if (nonimmediate_operand (operands[1], E_V16SImode)
   20665              :           && nonmemory_operand (operands[2], E_DImode)
   20666              :           && 
   20667              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20668              : (TARGET_AVX512F))
   20669              :         return 7741; /* *ashrv16si3 */
   20670              :       if (!register_operand (operands[1], E_V16SImode)
   20671              :           || !nonimmediate_operand (operands[2], E_V16SImode)
   20672              :           || !(
   20673              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20674              : (TARGET_AVX2 && 1) && 
   20675              : #line 670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20676              : (TARGET_AVX512F)))
   20677              :         return -1;
   20678              :       return 9705; /* avx512f_ashrvv16si */
   20679              : 
   20680              :     case E_V8DImode:
   20681              :       if (!register_operand (operands[0], E_V8DImode)
   20682              :           || GET_MODE (x3) != E_V8DImode)
   20683              :         return -1;
   20684              :       if (nonimmediate_operand (operands[1], E_V8DImode)
   20685              :           && nonmemory_operand (operands[2], E_DImode)
   20686              :           && 
   20687              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20688              : (TARGET_AVX512F))
   20689              :         return 7743; /* *ashrv8di3 */
   20690              :       if (!register_operand (operands[1], E_V8DImode)
   20691              :           || !nonimmediate_operand (operands[2], E_V8DImode)
   20692              :           || !(
   20693              : #line 30316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20694              : (TARGET_AVX2 && 1) && 
   20695              : #line 672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20696              : (TARGET_AVX512F)))
   20697              :         return -1;
   20698              :       return 9711; /* avx512f_ashrvv8di */
   20699              : 
   20700              :     case E_V1TImode:
   20701              :       if (pattern31 (x3) != 0
   20702              :           || !
   20703              : #line 18269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20704              : (TARGET_SSE2 && TARGET_64BIT
   20705              :    && ix86_pre_reload_split ()))
   20706              :         return -1;
   20707              :       return 7808; /* *ashrv1ti3_internal */
   20708              : 
   20709              :     default:
   20710              :       return -1;
   20711              :     }
   20712              : }
   20713              : 
   20714              :  int
   20715              : recog_337 (rtx x1 ATTRIBUTE_UNUSED,
   20716              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20717              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20718              : {
   20719              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20720              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   20721              :   rtx x10, x11;
   20722              :   int res ATTRIBUTE_UNUSED;
   20723              :   x2 = XEXP (x1, 0);
   20724              :   operands[0] = x2;
   20725              :   x3 = XEXP (x1, 1);
   20726              :   x4 = XEXP (x3, 0);
   20727              :   switch (GET_CODE (x4))
   20728              :     {
   20729              :     case REG:
   20730              :     case SUBREG:
   20731              :     case MEM:
   20732              :       operands[3] = x4;
   20733              :       x5 = XEXP (x3, 1);
   20734              :       operands[1] = x5;
   20735              :       x6 = XEXP (x3, 2);
   20736              :       operands[2] = x6;
   20737              :       switch (GET_MODE (operands[0]))
   20738              :         {
   20739              :         case E_V32QImode:
   20740              :           if (pattern825 (x3, 
   20741              : E_V32QImode) != 0
   20742              :               || !
   20743              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20744              : (TARGET_XOP))
   20745              :             return -1;
   20746              :           return 9126; /* xop_pcmov_v32qi256 */
   20747              : 
   20748              :         case E_V16QImode:
   20749              :           if (pattern825 (x3, 
   20750              : E_V16QImode) != 0
   20751              :               || !
   20752              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20753              : (TARGET_XOP))
   20754              :             return -1;
   20755              :           return 9127; /* xop_pcmov_v16qi */
   20756              : 
   20757              :         case E_V16HImode:
   20758              :           if (pattern825 (x3, 
   20759              : E_V16HImode) != 0
   20760              :               || !
   20761              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20762              : (TARGET_XOP))
   20763              :             return -1;
   20764              :           return 9128; /* xop_pcmov_v16hi256 */
   20765              : 
   20766              :         case E_V8HImode:
   20767              :           if (pattern825 (x3, 
   20768              : E_V8HImode) != 0
   20769              :               || !
   20770              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20771              : (TARGET_XOP))
   20772              :             return -1;
   20773              :           return 9129; /* xop_pcmov_v8hi */
   20774              : 
   20775              :         case E_V8SImode:
   20776              :           if (pattern825 (x3, 
   20777              : E_V8SImode) != 0
   20778              :               || !
   20779              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20780              : (TARGET_XOP))
   20781              :             return -1;
   20782              :           return 9130; /* xop_pcmov_v8si256 */
   20783              : 
   20784              :         case E_V4SImode:
   20785              :           if (pattern825 (x3, 
   20786              : E_V4SImode) != 0
   20787              :               || !
   20788              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20789              : (TARGET_XOP))
   20790              :             return -1;
   20791              :           return 9131; /* xop_pcmov_v4si */
   20792              : 
   20793              :         case E_V4DImode:
   20794              :           if (pattern825 (x3, 
   20795              : E_V4DImode) != 0
   20796              :               || !
   20797              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20798              : (TARGET_XOP))
   20799              :             return -1;
   20800              :           return 9132; /* xop_pcmov_v4di256 */
   20801              : 
   20802              :         case E_V2DImode:
   20803              :           if (pattern825 (x3, 
   20804              : E_V2DImode) != 0
   20805              :               || !
   20806              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20807              : (TARGET_XOP))
   20808              :             return -1;
   20809              :           return 9133; /* xop_pcmov_v2di */
   20810              : 
   20811              :         case E_V2TImode:
   20812              :           if (pattern825 (x3, 
   20813              : E_V2TImode) != 0
   20814              :               || !
   20815              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20816              : (TARGET_XOP))
   20817              :             return -1;
   20818              :           return 9134; /* xop_pcmov_v2ti256 */
   20819              : 
   20820              :         case E_V1TImode:
   20821              :           if (pattern825 (x3, 
   20822              : E_V1TImode) != 0
   20823              :               || !
   20824              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20825              : (TARGET_XOP))
   20826              :             return -1;
   20827              :           return 9135; /* xop_pcmov_v1ti */
   20828              : 
   20829              :         case E_V16HFmode:
   20830              :           if (pattern825 (x3, 
   20831              : E_V16HFmode) != 0
   20832              :               || !
   20833              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20834              : (TARGET_XOP))
   20835              :             return -1;
   20836              :           return 9136; /* xop_pcmov_v16hf256 */
   20837              : 
   20838              :         case E_V8HFmode:
   20839              :           if (pattern825 (x3, 
   20840              : E_V8HFmode) != 0
   20841              :               || !
   20842              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20843              : (TARGET_XOP))
   20844              :             return -1;
   20845              :           return 9137; /* xop_pcmov_v8hf */
   20846              : 
   20847              :         case E_V8SFmode:
   20848              :           if (pattern825 (x3, 
   20849              : E_V8SFmode) != 0
   20850              :               || !
   20851              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20852              : (TARGET_XOP))
   20853              :             return -1;
   20854              :           return 9138; /* xop_pcmov_v8sf256 */
   20855              : 
   20856              :         case E_V4SFmode:
   20857              :           if (pattern825 (x3, 
   20858              : E_V4SFmode) != 0
   20859              :               || !
   20860              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20861              : (TARGET_XOP))
   20862              :             return -1;
   20863              :           return 9139; /* xop_pcmov_v4sf */
   20864              : 
   20865              :         case E_V4DFmode:
   20866              :           if (pattern825 (x3, 
   20867              : E_V4DFmode) != 0
   20868              :               || !
   20869              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20870              : (TARGET_XOP))
   20871              :             return -1;
   20872              :           return 9140; /* xop_pcmov_v4df256 */
   20873              : 
   20874              :         case E_V2DFmode:
   20875              :           if (pattern825 (x3, 
   20876              : E_V2DFmode) != 0
   20877              :               || !
   20878              : #line 27427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20879              : (TARGET_XOP))
   20880              :             return -1;
   20881              :           return 9141; /* xop_pcmov_v2df */
   20882              : 
   20883              :         default:
   20884              :           return -1;
   20885              :         }
   20886              : 
   20887              :     case GE:
   20888              :       x7 = XEXP (x4, 1);
   20889              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   20890              :         return -1;
   20891              :       x8 = XEXP (x4, 0);
   20892              :       operands[2] = x8;
   20893              :       x5 = XEXP (x3, 1);
   20894              :       switch (GET_CODE (x5))
   20895              :         {
   20896              :         case ROTATE:
   20897              :           x6 = XEXP (x3, 2);
   20898              :           if (GET_CODE (x6) != ROTATERT)
   20899              :             return -1;
   20900              :           x9 = XEXP (x6, 1);
   20901              :           if (GET_CODE (x9) != NEG)
   20902              :             return -1;
   20903              :           x10 = XEXP (x5, 0);
   20904              :           operands[1] = x10;
   20905              :           x11 = XEXP (x5, 1);
   20906              :           if (!rtx_equal_p (x11, operands[2]))
   20907              :             return -1;
   20908              :           switch (pattern1163 (x3))
   20909              :             {
   20910              :             case 0:
   20911              :               if (!
   20912              : #line 27882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20913              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20914              :                 return -1;
   20915              :               return 9169; /* xop_vrotlv16qi3 */
   20916              : 
   20917              :             case 1:
   20918              :               if (!
   20919              : #line 27882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20920              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20921              :                 return -1;
   20922              :               return 9170; /* xop_vrotlv8hi3 */
   20923              : 
   20924              :             case 2:
   20925              :               if (!
   20926              : #line 27882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20927              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20928              :                 return -1;
   20929              :               return 9171; /* xop_vrotlv4si3 */
   20930              : 
   20931              :             case 3:
   20932              :               if (!
   20933              : #line 27882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20934              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20935              :                 return -1;
   20936              :               return 9172; /* xop_vrotlv2di3 */
   20937              : 
   20938              :             default:
   20939              :               return -1;
   20940              :             }
   20941              : 
   20942              :         case ASHIFT:
   20943              :           x10 = XEXP (x5, 0);
   20944              :           operands[1] = x10;
   20945              :           x11 = XEXP (x5, 1);
   20946              :           if (!rtx_equal_p (x11, operands[2]))
   20947              :             return -1;
   20948              :           x6 = XEXP (x3, 2);
   20949              :           switch (GET_CODE (x6))
   20950              :             {
   20951              :             case ASHIFTRT:
   20952              :               x9 = XEXP (x6, 1);
   20953              :               if (GET_CODE (x9) != NEG)
   20954              :                 return -1;
   20955              :               switch (pattern1163 (x3))
   20956              :                 {
   20957              :                 case 0:
   20958              :                   if (!
   20959              : #line 28119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20960              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20961              :                     return -1;
   20962              :                   return 9173; /* xop_shav16qi3 */
   20963              : 
   20964              :                 case 1:
   20965              :                   if (!
   20966              : #line 28119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20967              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20968              :                     return -1;
   20969              :                   return 9174; /* xop_shav8hi3 */
   20970              : 
   20971              :                 case 2:
   20972              :                   if (!
   20973              : #line 28119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20974              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20975              :                     return -1;
   20976              :                   return 9175; /* xop_shav4si3 */
   20977              : 
   20978              :                 case 3:
   20979              :                   if (!
   20980              : #line 28119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20981              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20982              :                     return -1;
   20983              :                   return 9176; /* xop_shav2di3 */
   20984              : 
   20985              :                 default:
   20986              :                   return -1;
   20987              :                 }
   20988              : 
   20989              :             case LSHIFTRT:
   20990              :               x9 = XEXP (x6, 1);
   20991              :               if (GET_CODE (x9) != NEG)
   20992              :                 return -1;
   20993              :               switch (pattern1163 (x3))
   20994              :                 {
   20995              :                 case 0:
   20996              :                   if (!
   20997              : #line 28138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20998              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   20999              :                     return -1;
   21000              :                   return 9177; /* xop_shlv16qi3 */
   21001              : 
   21002              :                 case 1:
   21003              :                   if (!
   21004              : #line 28138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21005              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21006              :                     return -1;
   21007              :                   return 9178; /* xop_shlv8hi3 */
   21008              : 
   21009              :                 case 2:
   21010              :                   if (!
   21011              : #line 28138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21012              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21013              :                     return -1;
   21014              :                   return 9179; /* xop_shlv4si3 */
   21015              : 
   21016              :                 case 3:
   21017              :                   if (!
   21018              : #line 28138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21019              : (TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21020              :                     return -1;
   21021              :                   return 9180; /* xop_shlv2di3 */
   21022              : 
   21023              :                 default:
   21024              :                   return -1;
   21025              :                 }
   21026              : 
   21027              :             default:
   21028              :               return -1;
   21029              :             }
   21030              : 
   21031              :         default:
   21032              :           return -1;
   21033              :         }
   21034              : 
   21035              :     default:
   21036              :       return -1;
   21037              :     }
   21038              : }
   21039              : 
   21040              :  int
   21041              : recog_344 (rtx x1 ATTRIBUTE_UNUSED,
   21042              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21043              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21044              : {
   21045              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21046              :   rtx x2, x3, x4;
   21047              :   int res ATTRIBUTE_UNUSED;
   21048              :   x2 = XEXP (x1, 0);
   21049              :   operands[0] = x2;
   21050              :   x3 = XEXP (x1, 1);
   21051              :   x4 = XEXP (x3, 0);
   21052              :   operands[1] = x4;
   21053              :   switch (GET_MODE (operands[0]))
   21054              :     {
   21055              :     case E_V32HFmode:
   21056              :       if (!register_operand (operands[0], E_V32HFmode)
   21057              :           || GET_MODE (x3) != E_V32HFmode
   21058              :           || !vector_operand (operands[1], E_V32HFmode)
   21059              :           || !(
   21060              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21061              : (TARGET_SSE && 1 && 1) && 
   21062              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21063              : (TARGET_AVX512FP16)))
   21064              :         return -1;
   21065              :       return 2979; /* avx512fp16_sqrtv32hf2 */
   21066              : 
   21067              :     case E_V16HFmode:
   21068              :       if (!register_operand (operands[0], E_V16HFmode)
   21069              :           || GET_MODE (x3) != E_V16HFmode
   21070              :           || !vector_operand (operands[1], E_V16HFmode)
   21071              :           || !(
   21072              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21073              : (TARGET_SSE && 1 && 1) && 
   21074              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21075              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21076              :         return -1;
   21077              :       return 2983; /* avx512fp16_sqrtv16hf2 */
   21078              : 
   21079              :     case E_V8HFmode:
   21080              :       if (!register_operand (operands[0], E_V8HFmode)
   21081              :           || GET_MODE (x3) != E_V8HFmode
   21082              :           || !vector_operand (operands[1], E_V8HFmode)
   21083              :           || !(
   21084              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21085              : (TARGET_SSE && 1 && 1) && 
   21086              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21087              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21088              :         return -1;
   21089              :       return 2985; /* avx512fp16_sqrtv8hf2 */
   21090              : 
   21091              :     case E_V16SFmode:
   21092              :       if (!register_operand (operands[0], E_V16SFmode)
   21093              :           || GET_MODE (x3) != E_V16SFmode
   21094              :           || !vector_operand (operands[1], E_V16SFmode)
   21095              :           || !(
   21096              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21097              : (TARGET_SSE && 1 && 1) && 
   21098              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21099              : (TARGET_AVX512F)))
   21100              :         return -1;
   21101              :       return 2987; /* avx512f_sqrtv16sf2 */
   21102              : 
   21103              :     case E_V8SFmode:
   21104              :       if (!register_operand (operands[0], E_V8SFmode)
   21105              :           || GET_MODE (x3) != E_V8SFmode
   21106              :           || !vector_operand (operands[1], E_V8SFmode)
   21107              :           || !(
   21108              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21109              : (TARGET_SSE && 1 && 1) && 
   21110              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21111              : (TARGET_AVX)))
   21112              :         return -1;
   21113              :       return 2991; /* avx_sqrtv8sf2 */
   21114              : 
   21115              :     case E_V4SFmode:
   21116              :       if (!register_operand (operands[0], E_V4SFmode)
   21117              :           || GET_MODE (x3) != E_V4SFmode
   21118              :           || !vector_operand (operands[1], E_V4SFmode)
   21119              :           || !
   21120              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21121              : (TARGET_SSE && 1 && 1))
   21122              :         return -1;
   21123              :       return 2993; /* sse_sqrtv4sf2 */
   21124              : 
   21125              :     case E_V8DFmode:
   21126              :       if (!register_operand (operands[0], E_V8DFmode)
   21127              :           || GET_MODE (x3) != E_V8DFmode
   21128              :           || !vector_operand (operands[1], E_V8DFmode)
   21129              :           || !(
   21130              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21131              : (TARGET_SSE && 1 && 1) && 
   21132              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21133              : (TARGET_AVX512F)))
   21134              :         return -1;
   21135              :       return 2995; /* avx512f_sqrtv8df2 */
   21136              : 
   21137              :     case E_V4DFmode:
   21138              :       if (!register_operand (operands[0], E_V4DFmode)
   21139              :           || GET_MODE (x3) != E_V4DFmode
   21140              :           || !vector_operand (operands[1], E_V4DFmode)
   21141              :           || !(
   21142              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21143              : (TARGET_SSE && 1 && 1) && 
   21144              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21145              : (TARGET_AVX)))
   21146              :         return -1;
   21147              :       return 2999; /* avx_sqrtv4df2 */
   21148              : 
   21149              :     case E_V2DFmode:
   21150              :       if (!register_operand (operands[0], E_V2DFmode)
   21151              :           || GET_MODE (x3) != E_V2DFmode
   21152              :           || !vector_operand (operands[1], E_V2DFmode)
   21153              :           || !(
   21154              : #line 3100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21155              : (TARGET_SSE && 1 && 1) && 
   21156              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21157              : (TARGET_SSE2)))
   21158              :         return -1;
   21159              :       return 3001; /* sse2_sqrtv2df2 */
   21160              : 
   21161              :     case E_V32BFmode:
   21162              :       if (!register_operand (operands[0], E_V32BFmode)
   21163              :           || GET_MODE (x3) != E_V32BFmode
   21164              :           || !nonimmediate_operand (operands[1], E_V32BFmode)
   21165              :           || !
   21166              : #line 33841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21167              : (TARGET_AVX10_2))
   21168              :         return -1;
   21169              :       return 10830; /* avx10_2_sqrtbf16_v32bf */
   21170              : 
   21171              :     case E_V16BFmode:
   21172              :       if (!register_operand (operands[0], E_V16BFmode)
   21173              :           || GET_MODE (x3) != E_V16BFmode
   21174              :           || !nonimmediate_operand (operands[1], E_V16BFmode)
   21175              :           || !
   21176              : #line 33841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21177              : (TARGET_AVX10_2))
   21178              :         return -1;
   21179              :       return 10832; /* avx10_2_sqrtbf16_v16bf */
   21180              : 
   21181              :     case E_V8BFmode:
   21182              :       if (!register_operand (operands[0], E_V8BFmode)
   21183              :           || GET_MODE (x3) != E_V8BFmode
   21184              :           || !nonimmediate_operand (operands[1], E_V8BFmode)
   21185              :           || !
   21186              : #line 33841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21187              : (TARGET_AVX10_2))
   21188              :         return -1;
   21189              :       return 10834; /* avx10_2_sqrtbf16_v8bf */
   21190              : 
   21191              :     default:
   21192              :       return -1;
   21193              :     }
   21194              : }
   21195              : 
   21196              :  int
   21197              : recog_350 (rtx x1 ATTRIBUTE_UNUSED,
   21198              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21199              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21200              : {
   21201              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21202              :   rtx x2, x3, x4;
   21203              :   int res ATTRIBUTE_UNUSED;
   21204              :   switch (pattern35 (x1))
   21205              :     {
   21206              :     case 0:
   21207              :       if (!
   21208              : #line 25029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21209              : (TARGET_AVX2 && 1 && 1))
   21210              :         return -1;
   21211              :       return 8872; /* avx2_sign_extendv16qiv16hi2 */
   21212              : 
   21213              :     case 1:
   21214              :       if (!
   21215              : #line 25084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21216              : (TARGET_AVX512BW))
   21217              :         return -1;
   21218              :       return 8880; /* avx512bw_sign_extendv32qiv32hi2 */
   21219              : 
   21220              :     case 2:
   21221              :       if (!
   21222              : #line 25156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21223              : (TARGET_SSE4_1 && 1 && 1))
   21224              :         return -1;
   21225              :       return 8892; /* *sse4_1_sign_extendv8qiv8hi2_1 */
   21226              : 
   21227              :     case 3:
   21228              :       if (!
   21229              : #line 25308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21230              : (TARGET_AVX512F))
   21231              :         return -1;
   21232              :       return 8904; /* *avx512f_sign_extendv16qiv16si2 */
   21233              : 
   21234              :     case 4:
   21235              :       if (!
   21236              : #line 25512 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21237              : (TARGET_AVX512F))
   21238              :         return -1;
   21239              :       return 8934; /* avx512f_sign_extendv16hiv16si2 */
   21240              : 
   21241              :     case 5:
   21242              :       if (!
   21243              : #line 25342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21244              : (TARGET_AVX2 && 1))
   21245              :         return -1;
   21246              :       return 8912; /* *avx2_sign_extendv8qiv8si2_1 */
   21247              : 
   21248              :     case 6:
   21249              :       if (!
   21250              : #line 25566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21251              : (TARGET_AVX2 && 1))
   21252              :         return -1;
   21253              :       return 8942; /* avx2_sign_extendv8hiv8si2 */
   21254              : 
   21255              :     case 7:
   21256              :       if (!
   21257              : #line 25432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21258              : (TARGET_SSE4_1 && 1))
   21259              :         return -1;
   21260              :       return 8924; /* *sse4_1_sign_extendv4qiv4si2_1 */
   21261              : 
   21262              :     case 8:
   21263              :       if (!
   21264              : #line 25638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21265              : (TARGET_SSE4_1 && 1))
   21266              :         return -1;
   21267              :       return 8954; /* *sse4_1_sign_extendv4hiv4si2_1 */
   21268              : 
   21269              :     case 9:
   21270              :       if (!
   21271              : #line 25796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21272              : (TARGET_AVX512F))
   21273              :         return -1;
   21274              :       return 8970; /* *avx512f_sign_extendv8qiv8di2_1 */
   21275              : 
   21276              :     case 10:
   21277              :       if (!
   21278              : #line 26027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21279              : (TARGET_AVX512F))
   21280              :         return -1;
   21281              :       return 9001; /* avx512f_sign_extendv8hiv8di2 */
   21282              : 
   21283              :     case 11:
   21284              :       if (!
   21285              : #line 26222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21286              : (TARGET_AVX512F))
   21287              :         return -1;
   21288              :       return 9029; /* avx512f_sign_extendv8siv8di2 */
   21289              : 
   21290              :     case 12:
   21291              :       if (!
   21292              : #line 25882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21293              : (TARGET_AVX2 && 1))
   21294              :         return -1;
   21295              :       return 8982; /* *avx2_sign_extendv4qiv4di2_1 */
   21296              : 
   21297              :     case 13:
   21298              :       if (!
   21299              : #line 26059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21300              : (TARGET_AVX2 && 1))
   21301              :         return -1;
   21302              :       return 9009; /* *avx2_sign_extendv4hiv4di2_1 */
   21303              : 
   21304              :     case 14:
   21305              :       if (!
   21306              : #line 26274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21307              : (TARGET_AVX2 && 1))
   21308              :         return -1;
   21309              :       return 9035; /* avx2_sign_extendv4siv4di2 */
   21310              : 
   21311              :     case 15:
   21312              :       if (!
   21313              : #line 25975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21314              : (TARGET_SSE4_1 && 1))
   21315              :         return -1;
   21316              :       return 8994; /* *sse4_1_sign_extendv2qiv2di2_1 */
   21317              : 
   21318              :     case 16:
   21319              :       if (!
   21320              : #line 26144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21321              : (TARGET_SSE4_1 && 1))
   21322              :         return -1;
   21323              :       return 9021; /* *sse4_1_sign_extendv2hiv2di2_1 */
   21324              : 
   21325              :     case 17:
   21326              :       if (!
   21327              : #line 26342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21328              : (TARGET_SSE4_1 && 1))
   21329              :         return -1;
   21330              :       return 9045; /* *sse4_1_sign_extendv2siv2di2_1 */
   21331              : 
   21332              :     case 18:
   21333              :       x2 = XEXP (x1, 1);
   21334              :       x3 = XEXP (x2, 0);
   21335              :       x4 = XEXP (x3, 0);
   21336              :       operands[1] = x4;
   21337              :       switch (pattern547 (x2))
   21338              :         {
   21339              :         case 0:
   21340              :           if (
   21341              : #line 25143 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21342              : (TARGET_SSE4_1 && 1 && 1))
   21343              :             return 8888; /* sse4_1_sign_extendv8qiv8hi2 */
   21344              :           break;
   21345              : 
   21346              :         case 1:
   21347              :           if (
   21348              : #line 25330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21349              : (TARGET_AVX2 && 1))
   21350              :             return 8908; /* avx2_sign_extendv8qiv8si2 */
   21351              :           break;
   21352              : 
   21353              :         case 2:
   21354              :           if (
   21355              : #line 25785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21356              : (TARGET_AVX512F))
   21357              :             return 8966; /* avx512f_sign_extendv8qiv8di2 */
   21358              :           break;
   21359              : 
   21360              :         case 3:
   21361              :           if (
   21362              : #line 25419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21363              : (TARGET_SSE4_1 && 1))
   21364              :             return 8920; /* sse4_1_sign_extendv4qiv4si2 */
   21365              :           break;
   21366              : 
   21367              :         case 4:
   21368              :           if (
   21369              : #line 25625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21370              : (TARGET_SSE4_1 && 1))
   21371              :             return 8950; /* sse4_1_sign_extendv4hiv4si2 */
   21372              :           break;
   21373              : 
   21374              :         case 5:
   21375              :           if (
   21376              : #line 25870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21377              : (TARGET_AVX2 && 1))
   21378              :             return 8978; /* avx2_sign_extendv4qiv4di2 */
   21379              :           break;
   21380              : 
   21381              :         case 6:
   21382              :           if (
   21383              : #line 26047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21384              : (TARGET_AVX2 && 1))
   21385              :             return 9005; /* avx2_sign_extendv4hiv4di2 */
   21386              :           break;
   21387              : 
   21388              :         case 7:
   21389              :           if (
   21390              : #line 25962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21391              : (TARGET_SSE4_1 && 1))
   21392              :             return 8990; /* sse4_1_sign_extendv2qiv2di2 */
   21393              :           break;
   21394              : 
   21395              :         case 8:
   21396              :           if (
   21397              : #line 26131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21398              : (TARGET_SSE4_1 && 1))
   21399              :             return 9017; /* sse4_1_sign_extendv2hiv2di2 */
   21400              :           break;
   21401              : 
   21402              :         case 9:
   21403              :           if (
   21404              : #line 26329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21405              : (TARGET_SSE4_1 && 1))
   21406              :             return 9041; /* sse4_1_sign_extendv2siv2di2 */
   21407              :           break;
   21408              : 
   21409              :         default:
   21410              :           break;
   21411              :         }
   21412              :       if (GET_CODE (x4) != SUBREG
   21413              :           || maybe_ne (SUBREG_BYTE (x4), 0))
   21414              :         return -1;
   21415              :       switch (pattern699 (x2))
   21416              :         {
   21417              :         case 0:
   21418              :           if (!
   21419              : #line 25181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21420              : (TARGET_SSE4_1
   21421              :    && ix86_pre_reload_split ()))
   21422              :             return -1;
   21423              :           return 8896; /* *sse4_1_sign_extendv8qiv8hi2_2 */
   21424              : 
   21425              :         case 1:
   21426              :           if (!
   21427              : #line 25362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21428              : (TARGET_AVX2
   21429              :    && ix86_pre_reload_split ()))
   21430              :             return -1;
   21431              :           return 8916; /* *avx2_sign_extendv8qiv8si2_2 */
   21432              : 
   21433              :         case 2:
   21434              :           if (!
   21435              : #line 25815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21436              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   21437              :             return -1;
   21438              :           return 8974; /* *avx512f_sign_extendv8qiv8di2_2 */
   21439              : 
   21440              :         case 3:
   21441              :           if (!
   21442              : #line 25658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21443              : (TARGET_SSE4_1
   21444              :    && ix86_pre_reload_split ()))
   21445              :             return -1;
   21446              :           return 8958; /* *sse4_1_sign_extendv4hiv4si2_2 */
   21447              : 
   21448              :         case 4:
   21449              :           if (!
   21450              : #line 26077 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21451              : (TARGET_AVX2
   21452              :    && ix86_pre_reload_split ()))
   21453              :             return -1;
   21454              :           return 9013; /* *avx2_sign_extendv4hiv4di2_2 */
   21455              : 
   21456              :         case 5:
   21457              :           if (!
   21458              : #line 26361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21459              : (TARGET_SSE4_1
   21460              :    && ix86_pre_reload_split ()))
   21461              :             return -1;
   21462              :           return 9049; /* *sse4_1_sign_extendv2siv2di2_2 */
   21463              : 
   21464              :         case 6:
   21465              :           if (!
   21466              : #line 25456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21467              : (TARGET_SSE4_1 && 1
   21468              :    && ix86_pre_reload_split ()))
   21469              :             return -1;
   21470              :           return 8928; /* *sse4_1_sign_extendv4qiv4si2_2 */
   21471              : 
   21472              :         case 7:
   21473              :           if (!
   21474              : #line 25904 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21475              : (TARGET_AVX2
   21476              :    && ix86_pre_reload_split ()))
   21477              :             return -1;
   21478              :           return 8986; /* *avx2_sign_extendv4qiv4di2_2 */
   21479              : 
   21480              :         case 8:
   21481              :           if (!
   21482              : #line 26167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21483              : (TARGET_SSE4_1
   21484              :    && ix86_pre_reload_split ()))
   21485              :             return -1;
   21486              :           return 9025; /* *sse4_1_sign_extendv2hiv2di2_2 */
   21487              : 
   21488              :         default:
   21489              :           return -1;
   21490              :         }
   21491              : 
   21492              :     default:
   21493              :       return -1;
   21494              :     }
   21495              : }
   21496              : 
   21497              :  int
   21498              : recog_356 (rtx x1 ATTRIBUTE_UNUSED,
   21499              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21500              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21501              : {
   21502              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21503              :   rtx x2, x3, x4;
   21504              :   int res ATTRIBUTE_UNUSED;
   21505              :   x2 = XEXP (x1, 0);
   21506              :   operands[0] = x2;
   21507              :   x3 = XEXP (x1, 1);
   21508              :   x4 = XEXP (x3, 0);
   21509              :   operands[1] = x4;
   21510              :   switch (GET_MODE (operands[0]))
   21511              :     {
   21512              :     case E_V8HFmode:
   21513              :       if (!register_operand (operands[0], E_V8HFmode)
   21514              :           || GET_MODE (x3) != E_V8HFmode)
   21515              :         return -1;
   21516              :       switch (GET_MODE (operands[1]))
   21517              :         {
   21518              :         case E_V8DFmode:
   21519              :           if (!vector_operand (operands[1], E_V8DFmode)
   21520              :               || !
   21521              : #line 8550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21522              : (TARGET_AVX512FP16))
   21523              :             return -1;
   21524              :           return 4802; /* avx512fp16_vcvtpd2ph_v8df */
   21525              : 
   21526              :         case E_V8SFmode:
   21527              :           if (!vector_operand (operands[1], E_V8SFmode)
   21528              :               || !(
   21529              : #line 8550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21530              : (TARGET_AVX512FP16) && 
   21531              : #line 982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21532              : (TARGET_AVX512VL)))
   21533              :             return -1;
   21534              :           return 4810; /* avx512fp16_vcvtps2ph_v8sf */
   21535              : 
   21536              :         default:
   21537              :           return -1;
   21538              :         }
   21539              : 
   21540              :     case E_V16HFmode:
   21541              :       if (!register_operand (operands[0], E_V16HFmode)
   21542              :           || GET_MODE (x3) != E_V16HFmode
   21543              :           || !vector_operand (operands[1], E_V16SFmode)
   21544              :           || !
   21545              : #line 8550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21546              : (TARGET_AVX512FP16))
   21547              :         return -1;
   21548              :       return 4806; /* avx512fp16_vcvtps2ph_v16sf */
   21549              : 
   21550              :     case E_V8SFmode:
   21551              :       if (!register_operand (operands[0], E_V8SFmode)
   21552              :           || GET_MODE (x3) != E_V8SFmode
   21553              :           || !vector_operand (operands[1], E_V8DFmode)
   21554              :           || !
   21555              : #line 10760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21556              : (TARGET_AVX512F))
   21557              :         return -1;
   21558              :       return 5239; /* *avx512f_cvtpd2ps512 */
   21559              : 
   21560              :     case E_V4SFmode:
   21561              :       if (!register_operand (operands[0], E_V4SFmode)
   21562              :           || GET_MODE (x3) != E_V4SFmode
   21563              :           || !nonimmediate_operand (operands[1], E_V4DFmode)
   21564              :           || !
   21565              : #line 10770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21566              : (TARGET_AVX && 1))
   21567              :         return -1;
   21568              :       return 5243; /* avx_cvtpd2ps256 */
   21569              : 
   21570              :     case E_V8BFmode:
   21571              :       if (!register_operand (operands[0], E_V8BFmode)
   21572              :           || GET_MODE (x3) != E_V8BFmode
   21573              :           || !nonimmediate_operand (operands[1], E_V8SFmode))
   21574              :         return -1;
   21575              :       if (
   21576              : #line 32576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21577              : (TARGET_AVXNECONVERT || (TARGET_AVX512BF16 && TARGET_AVX512VL)))
   21578              :         return 10494; /* vcvtneps2bf16_v8sf */
   21579              :       if (!(
   21580              : #line 32614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21581              : (TARGET_AVX512BF16) && 
   21582              : #line 32542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21583              : (TARGET_AVX512VL)))
   21584              :         return -1;
   21585              :       return 10497; /* avx512f_cvtneps2bf16_v8sf */
   21586              : 
   21587              :     case E_V16BFmode:
   21588              :       if (!register_operand (operands[0], E_V16BFmode)
   21589              :           || GET_MODE (x3) != E_V16BFmode
   21590              :           || !nonimmediate_operand (operands[1], E_V16SFmode)
   21591              :           || !
   21592              : #line 32614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21593              : (TARGET_AVX512BF16))
   21594              :         return -1;
   21595              :       return 10495; /* avx512f_cvtneps2bf16_v16sf */
   21596              : 
   21597              :     default:
   21598              :       return -1;
   21599              :     }
   21600              : }
   21601              : 
   21602              :  int
   21603              : recog_359 (rtx x1 ATTRIBUTE_UNUSED,
   21604              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21605              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21606              : {
   21607              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21608              :   int res ATTRIBUTE_UNUSED;
   21609              :   switch (pattern33 (x1))
   21610              :     {
   21611              :     case 0:
   21612              :       if (!
   21613              : #line 18339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21614              : (TARGET_SSE2 && TARGET_64BIT
   21615              :    && ix86_pre_reload_split ()))
   21616              :         return -1;
   21617              :       return 7810; /* *rotrv1ti3_internal */
   21618              : 
   21619              :     case 1:
   21620              :       if (!
   21621              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21622              : (TARGET_AVX512F))
   21623              :         return -1;
   21624              :       return 7847; /* avx512f_rorv16si */
   21625              : 
   21626              :     case 2:
   21627              :       if (!(
   21628              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21629              : (TARGET_AVX512F) && 
   21630              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21631              : (TARGET_AVX512VL)))
   21632              :         return -1;
   21633              :       return 7851; /* avx512vl_rorv8si */
   21634              : 
   21635              :     case 3:
   21636              :       if (const_0_to_255_operand (operands[2], E_SImode)
   21637              :           && (
   21638              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21639              : (TARGET_AVX512F) && 
   21640              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21641              : (TARGET_AVX512VL)))
   21642              :         return 7855; /* avx512vl_rorv4si */
   21643              :       if (!const_0_to_31_operand (operands[2], E_SImode)
   21644              :           || !
   21645              : #line 27836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21646              : (TARGET_XOP))
   21647              :         return -1;
   21648              :       return 9167; /* xop_rotrv4si3 */
   21649              : 
   21650              :     case 4:
   21651              :       if (!
   21652              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21653              : (TARGET_AVX512F))
   21654              :         return -1;
   21655              :       return 7859; /* avx512f_rorv8di */
   21656              : 
   21657              :     case 5:
   21658              :       if (!(
   21659              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21660              : (TARGET_AVX512F) && 
   21661              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21662              : (TARGET_AVX512VL)))
   21663              :         return -1;
   21664              :       return 7863; /* avx512vl_rorv4di */
   21665              : 
   21666              :     case 6:
   21667              :       if (const_0_to_255_operand (operands[2], E_SImode)
   21668              :           && (
   21669              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21670              : (TARGET_AVX512F) && 
   21671              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21672              : (TARGET_AVX512VL)))
   21673              :         return 7867; /* avx512vl_rorv2di */
   21674              :       if (!const_0_to_63_operand (operands[2], E_SImode)
   21675              :           || !
   21676              : #line 27836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21677              : (TARGET_XOP))
   21678              :         return -1;
   21679              :       return 9168; /* xop_rotrv2di3 */
   21680              : 
   21681              :     case 7:
   21682              :       if (!
   21683              : #line 27836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21684              : (TARGET_XOP))
   21685              :         return -1;
   21686              :       return 9165; /* xop_rotrv16qi3 */
   21687              : 
   21688              :     case 8:
   21689              :       if (!
   21690              : #line 27836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21691              : (TARGET_XOP))
   21692              :         return -1;
   21693              :       return 9166; /* xop_rotrv8hi3 */
   21694              : 
   21695              :     case 9:
   21696              :       if (!
   21697              : #line 18396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21698              : (TARGET_AVX512F))
   21699              :         return -1;
   21700              :       return 7823; /* avx512f_rorvv16si */
   21701              : 
   21702              :     case 10:
   21703              :       if (!(
   21704              : #line 18396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21705              : (TARGET_AVX512F) && 
   21706              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21707              : (TARGET_AVX512VL)))
   21708              :         return -1;
   21709              :       return 7827; /* avx512vl_rorvv8si */
   21710              : 
   21711              :     case 11:
   21712              :       if (!(
   21713              : #line 18396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21714              : (TARGET_AVX512F) && 
   21715              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21716              : (TARGET_AVX512VL)))
   21717              :         return -1;
   21718              :       return 7831; /* avx512vl_rorvv4si */
   21719              : 
   21720              :     case 12:
   21721              :       if (!
   21722              : #line 18396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21723              : (TARGET_AVX512F))
   21724              :         return -1;
   21725              :       return 7835; /* avx512f_rorvv8di */
   21726              : 
   21727              :     case 13:
   21728              :       if (!(
   21729              : #line 18396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21730              : (TARGET_AVX512F) && 
   21731              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21732              : (TARGET_AVX512VL)))
   21733              :         return -1;
   21734              :       return 7839; /* avx512vl_rorvv4di */
   21735              : 
   21736              :     case 14:
   21737              :       if (!(
   21738              : #line 18396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21739              : (TARGET_AVX512F) && 
   21740              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21741              : (TARGET_AVX512VL)))
   21742              :         return -1;
   21743              :       return 7843; /* avx512vl_rorvv2di */
   21744              : 
   21745              :     default:
   21746              :       return -1;
   21747              :     }
   21748              : }
   21749              : 
   21750              :  int
   21751              : recog_368 (rtx x1 ATTRIBUTE_UNUSED,
   21752              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21753              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21754              : {
   21755              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21756              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21757              :   rtx x10, x11;
   21758              :   int res ATTRIBUTE_UNUSED;
   21759              :   x2 = XVECEXP (x1, 0, 0);
   21760              :   x3 = XEXP (x2, 0);
   21761              :   switch (GET_CODE (x3))
   21762              :     {
   21763              :     case REG:
   21764              :     case SUBREG:
   21765              :     case MEM:
   21766              :       res = recog_366 (x1, insn, pnum_clobbers);
   21767              :       if (res >= 0)
   21768              :         return res;
   21769              :       break;
   21770              : 
   21771              :     case STRICT_LOW_PART:
   21772              :       x4 = XVECEXP (x1, 0, 1);
   21773              :       if (pattern237 (x4, 
   21774              : E_CCmode, 
   21775              : 17) == 0)
   21776              :         {
   21777              :           x5 = XEXP (x3, 0);
   21778              :           operands[0] = x5;
   21779              :           x6 = XEXP (x2, 1);
   21780              :           operands[1] = x6;
   21781              :           switch (GET_MODE (operands[0]))
   21782              :             {
   21783              :             case E_QImode:
   21784              :               if (register_operand (operands[0], E_QImode)
   21785              :                   && const0_operand (operands[1], E_QImode)
   21786              :                   && 
   21787              : #line 3525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21788              : (reload_completed))
   21789              :                 return 117; /* *movstrictqi_xor */
   21790              :               break;
   21791              : 
   21792              :             case E_HImode:
   21793              :               if (register_operand (operands[0], E_HImode)
   21794              :                   && const0_operand (operands[1], E_HImode)
   21795              :                   && 
   21796              : #line 3525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21797              : (reload_completed))
   21798              :                 return 118; /* *movstricthi_xor */
   21799              :               break;
   21800              : 
   21801              :             default:
   21802              :               break;
   21803              :             }
   21804              :         }
   21805              :       break;
   21806              : 
   21807              :     case PC:
   21808              :       res = recog_367 (x1, insn, pnum_clobbers);
   21809              :       if (res >= 0)
   21810              :         return res;
   21811              :       break;
   21812              : 
   21813              :     default:
   21814              :       break;
   21815              :     }
   21816              :   x4 = XVECEXP (x1, 0, 1);
   21817              :   if (GET_CODE (x4) != CLOBBER)
   21818              :     return -1;
   21819              :   x7 = XEXP (x4, 0);
   21820              :   if (GET_CODE (x7) != REG
   21821              :       || REGNO (x7) != 17
   21822              :       || GET_MODE (x7) != E_CCmode)
   21823              :     return -1;
   21824              :   x6 = XEXP (x2, 1);
   21825              :   switch (GET_CODE (x6))
   21826              :     {
   21827              :     case SUBREG:
   21828              :       if (maybe_ne (SUBREG_BYTE (x6), 0))
   21829              :         return -1;
   21830              :       switch (pattern1057 (x2))
   21831              :         {
   21832              :         case 0:
   21833              :           x8 = XEXP (x6, 0);
   21834              :           x9 = XEXP (x8, 1);
   21835              :           operands[2] = x9;
   21836              :           if (general_operand (operands[2], E_QImode))
   21837              :             {
   21838              :               switch (pattern1055 (x2))
   21839              :                 {
   21840              :                 case 0:
   21841              :                   return 341; /* *addqi_exthi_1 */
   21842              : 
   21843              :                 case 1:
   21844              :                   return 342; /* *addqi_extsi_1 */
   21845              : 
   21846              :                 case 2:
   21847              :                   if (
   21848              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21849              : (TARGET_64BIT))
   21850              :                     return 343; /* *addqi_extdi_1 */
   21851              :                   break;
   21852              : 
   21853              :                 default:
   21854              :                   break;
   21855              :                 }
   21856              :             }
   21857              :           if (GET_CODE (x9) != SUBREG)
   21858              :             return -1;
   21859              :           switch (pattern1824 (x2))
   21860              :             {
   21861              :             case 0:
   21862              :               return 344; /* *addqi_exthi_2 */
   21863              : 
   21864              :             case 1:
   21865              :               return 346; /* *addqi_extsi_2 */
   21866              : 
   21867              :             case 2:
   21868              :               if (!
   21869              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21870              : (TARGET_64BIT))
   21871              :                 return -1;
   21872              :               return 348; /* *addqi_extdi_2 */
   21873              : 
   21874              :             default:
   21875              :               return -1;
   21876              :             }
   21877              : 
   21878              :         case 1:
   21879              :           x8 = XEXP (x6, 0);
   21880              :           x9 = XEXP (x8, 1);
   21881              :           if (GET_CODE (x9) == SUBREG)
   21882              :             {
   21883              :               switch (pattern1824 (x2))
   21884              :                 {
   21885              :                 case 0:
   21886              :                   return 345; /* *subqi_exthi_2 */
   21887              : 
   21888              :                 case 1:
   21889              :                   return 347; /* *subqi_extsi_2 */
   21890              : 
   21891              :                 case 2:
   21892              :                   if (
   21893              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21894              : (TARGET_64BIT))
   21895              :                     return 349; /* *subqi_extdi_2 */
   21896              :                   break;
   21897              : 
   21898              :                 default:
   21899              :                   break;
   21900              :                 }
   21901              :             }
   21902              :           operands[2] = x9;
   21903              :           if (!general_operand (operands[2], E_QImode))
   21904              :             return -1;
   21905              :           switch (pattern1055 (x2))
   21906              :             {
   21907              :             case 0:
   21908              :               return 430; /* *subqi_exthi_1 */
   21909              : 
   21910              :             case 1:
   21911              :               return 431; /* *subqi_extsi_1 */
   21912              : 
   21913              :             case 2:
   21914              :               if (!
   21915              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21916              : (TARGET_64BIT))
   21917              :                 return -1;
   21918              :               return 432; /* *subqi_extdi_1 */
   21919              : 
   21920              :             default:
   21921              :               return -1;
   21922              :             }
   21923              : 
   21924              :         case 2:
   21925              :           x8 = XEXP (x6, 0);
   21926              :           x9 = XEXP (x8, 1);
   21927              :           operands[2] = x9;
   21928              :           if (general_operand (operands[2], E_QImode))
   21929              :             {
   21930              :               switch (pattern1055 (x2))
   21931              :                 {
   21932              :                 case 0:
   21933              :                   return 807; /* *andqi_exthi_1 */
   21934              : 
   21935              :                 case 1:
   21936              :                   return 810; /* *andqi_extsi_1 */
   21937              : 
   21938              :                 case 2:
   21939              :                   if (
   21940              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21941              : (TARGET_64BIT))
   21942              :                     return 813; /* *andqi_extdi_1 */
   21943              :                   break;
   21944              : 
   21945              :                 default:
   21946              :                   break;
   21947              :                 }
   21948              :             }
   21949              :           if (GET_CODE (x9) != SUBREG)
   21950              :             return -1;
   21951              :           switch (pattern1824 (x2))
   21952              :             {
   21953              :             case 0:
   21954              :               return 825; /* *andqi_exthi_2 */
   21955              : 
   21956              :             case 1:
   21957              :               return 828; /* *andqi_extsi_2 */
   21958              : 
   21959              :             case 2:
   21960              :               if (!
   21961              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21962              : (TARGET_64BIT))
   21963              :                 return -1;
   21964              :               return 831; /* *andqi_extdi_2 */
   21965              : 
   21966              :             default:
   21967              :               return -1;
   21968              :             }
   21969              : 
   21970              :         case 3:
   21971              :           x8 = XEXP (x6, 0);
   21972              :           x9 = XEXP (x8, 1);
   21973              :           operands[2] = x9;
   21974              :           if (general_operand (operands[2], E_QImode))
   21975              :             {
   21976              :               switch (pattern1055 (x2))
   21977              :                 {
   21978              :                 case 0:
   21979              :                   return 808; /* *iorqi_exthi_1 */
   21980              : 
   21981              :                 case 1:
   21982              :                   return 811; /* *iorqi_extsi_1 */
   21983              : 
   21984              :                 case 2:
   21985              :                   if (
   21986              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21987              : (TARGET_64BIT))
   21988              :                     return 814; /* *iorqi_extdi_1 */
   21989              :                   break;
   21990              : 
   21991              :                 default:
   21992              :                   break;
   21993              :                 }
   21994              :             }
   21995              :           if (GET_CODE (x9) != SUBREG)
   21996              :             return -1;
   21997              :           switch (pattern1824 (x2))
   21998              :             {
   21999              :             case 0:
   22000              :               return 826; /* *iorqi_exthi_2 */
   22001              : 
   22002              :             case 1:
   22003              :               return 829; /* *iorqi_extsi_2 */
   22004              : 
   22005              :             case 2:
   22006              :               if (!
   22007              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22008              : (TARGET_64BIT))
   22009              :                 return -1;
   22010              :               return 832; /* *iorqi_extdi_2 */
   22011              : 
   22012              :             default:
   22013              :               return -1;
   22014              :             }
   22015              : 
   22016              :         case 4:
   22017              :           x8 = XEXP (x6, 0);
   22018              :           x9 = XEXP (x8, 1);
   22019              :           operands[2] = x9;
   22020              :           if (general_operand (operands[2], E_QImode))
   22021              :             {
   22022              :               switch (pattern1055 (x2))
   22023              :                 {
   22024              :                 case 0:
   22025              :                   return 809; /* *xorqi_exthi_1 */
   22026              : 
   22027              :                 case 1:
   22028              :                   return 812; /* *xorqi_extsi_1 */
   22029              : 
   22030              :                 case 2:
   22031              :                   if (
   22032              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22033              : (TARGET_64BIT))
   22034              :                     return 815; /* *xorqi_extdi_1 */
   22035              :                   break;
   22036              : 
   22037              :                 default:
   22038              :                   break;
   22039              :                 }
   22040              :             }
   22041              :           if (GET_CODE (x9) != SUBREG)
   22042              :             return -1;
   22043              :           switch (pattern1824 (x2))
   22044              :             {
   22045              :             case 0:
   22046              :               return 827; /* *xorqi_exthi_2 */
   22047              : 
   22048              :             case 1:
   22049              :               return 830; /* *xorqi_extsi_2 */
   22050              : 
   22051              :             case 2:
   22052              :               if (!
   22053              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22054              : (TARGET_64BIT))
   22055              :                 return -1;
   22056              :               return 833; /* *xorqi_extdi_2 */
   22057              : 
   22058              :             default:
   22059              :               return -1;
   22060              :             }
   22061              : 
   22062              :         case 5:
   22063              :           return 1026; /* *negqi_exthi_1 */
   22064              : 
   22065              :         case 6:
   22066              :           return 1027; /* *negqi_extsi_1 */
   22067              : 
   22068              :         case 7:
   22069              :           if (!
   22070              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22071              : (TARGET_64BIT))
   22072              :             return -1;
   22073              :           return 1028; /* *negqi_extdi_1 */
   22074              : 
   22075              :         case 8:
   22076              :           return 1157; /* *ashlqi_exthi_1 */
   22077              : 
   22078              :         case 9:
   22079              :           return 1158; /* *ashlqi_extsi_1 */
   22080              : 
   22081              :         case 10:
   22082              :           if (!
   22083              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22084              : (TARGET_64BIT))
   22085              :             return -1;
   22086              :           return 1159; /* *ashlqi_extdi_1 */
   22087              : 
   22088              :         case 11:
   22089              :           operands[0] = x3;
   22090              :           switch (pattern1247 (x6))
   22091              :             {
   22092              :             case 0:
   22093              :               if ((
   22094              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22095              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   22096              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22097              : (!TARGET_64BIT)))
   22098              :                 return 1176; /* lshrdi3_doubleword_lowpart */
   22099              :               break;
   22100              : 
   22101              :             case 1:
   22102              :               if ((
   22103              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22104              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   22105              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22106              : (TARGET_64BIT)))
   22107              :                 return 1178; /* lshrti3_doubleword_lowpart */
   22108              :               break;
   22109              : 
   22110              :             default:
   22111              :               break;
   22112              :             }
   22113              :           x8 = XEXP (x6, 0);
   22114              :           if (GET_MODE (x8) != E_QImode)
   22115              :             return -1;
   22116              :           switch (pattern1056 (x2))
   22117              :             {
   22118              :             case 0:
   22119              :               return 1276; /* *lshrqi_exthi_1 */
   22120              : 
   22121              :             case 1:
   22122              :               return 1278; /* *lshrqi_extsi_1 */
   22123              : 
   22124              :             case 2:
   22125              :               if (!
   22126              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22127              : (TARGET_64BIT))
   22128              :                 return -1;
   22129              :               return 1280; /* *lshrqi_extdi_1 */
   22130              : 
   22131              :             default:
   22132              :               return -1;
   22133              :             }
   22134              : 
   22135              :         case 12:
   22136              :           operands[0] = x3;
   22137              :           switch (pattern1247 (x6))
   22138              :             {
   22139              :             case 0:
   22140              :               if ((
   22141              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22142              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   22143              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22144              : (!TARGET_64BIT)))
   22145              :                 return 1177; /* ashrdi3_doubleword_lowpart */
   22146              :               break;
   22147              : 
   22148              :             case 1:
   22149              :               if ((
   22150              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22151              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   22152              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22153              : (TARGET_64BIT)))
   22154              :                 return 1179; /* ashrti3_doubleword_lowpart */
   22155              :               break;
   22156              : 
   22157              :             default:
   22158              :               break;
   22159              :             }
   22160              :           x8 = XEXP (x6, 0);
   22161              :           if (GET_MODE (x8) != E_QImode)
   22162              :             return -1;
   22163              :           switch (pattern1056 (x2))
   22164              :             {
   22165              :             case 0:
   22166              :               return 1277; /* *ashrqi_exthi_1 */
   22167              : 
   22168              :             case 1:
   22169              :               return 1279; /* *ashrqi_extsi_1 */
   22170              : 
   22171              :             case 2:
   22172              :               if (!
   22173              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22174              : (TARGET_64BIT))
   22175              :                 return -1;
   22176              :               return 1281; /* *ashrqi_extdi_1 */
   22177              : 
   22178              :             default:
   22179              :               return -1;
   22180              :             }
   22181              : 
   22182              :         default:
   22183              :           return -1;
   22184              :         }
   22185              : 
   22186              :     case CONST_INT:
   22187              :       if (GET_CODE (x3) != ZERO_EXTRACT)
   22188              :         return -1;
   22189              :       x10 = XEXP (x3, 1);
   22190              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   22191              :         return -1;
   22192              :       x5 = XEXP (x3, 0);
   22193              :       operands[0] = x5;
   22194              :       x11 = XEXP (x3, 2);
   22195              :       operands[1] = x11;
   22196              :       switch (XWINT (x6, 0))
   22197              :         {
   22198              :         case 0L:
   22199              :           switch (GET_CODE (operands[1]))
   22200              :             {
   22201              :             case REG:
   22202              :             case SUBREG:
   22203              :               if (!register_operand (operands[1], E_QImode)
   22204              :                   || GET_MODE (x3) != E_HImode)
   22205              :                 return -1;
   22206              :               switch (GET_MODE (operands[0]))
   22207              :                 {
   22208              :                 case E_QImode:
   22209              :                   if (!nonimmediate_operand (operands[0], E_QImode)
   22210              :                       || !
   22211              : #line 19963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22212              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   22213              :                     return -1;
   22214              :                   return 1449; /* *btrqi_2 */
   22215              : 
   22216              :                 case E_HImode:
   22217              :                   if (!nonimmediate_operand (operands[0], E_HImode)
   22218              :                       || !
   22219              : #line 19963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22220              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   22221              :                     return -1;
   22222              :                   return 1450; /* *btrhi_2 */
   22223              : 
   22224              :                 default:
   22225              :                   return -1;
   22226              :                 }
   22227              : 
   22228              :             case CONST_INT:
   22229              :               if (!const_0_to_63_operand (operands[1], E_QImode)
   22230              :                   || GET_MODE (x3) != E_DImode
   22231              :                   || !nonimmediate_operand (operands[0], E_DImode)
   22232              :                   || !
   22233              : #line 20028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22234              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
   22235              :                 return -1;
   22236              :               return 1452; /* *btrq_imm */
   22237              : 
   22238              :             default:
   22239              :               return -1;
   22240              :             }
   22241              : 
   22242              :         case 1L:
   22243              :           if (GET_MODE (x3) != E_DImode
   22244              :               || !nonimmediate_operand (operands[0], E_DImode)
   22245              :               || !const_0_to_63_operand (operands[1], E_QImode)
   22246              :               || !
   22247              : #line 20014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22248              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
   22249              :             return -1;
   22250              :           return 1451; /* *btsq_imm */
   22251              : 
   22252              :         default:
   22253              :           return -1;
   22254              :         }
   22255              : 
   22256              :     default:
   22257              :       return -1;
   22258              :     }
   22259              : }
   22260              : 
   22261              :  int
   22262              : recog_383 (rtx x1 ATTRIBUTE_UNUSED,
   22263              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22264              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22265              : {
   22266              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22267              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22268              :   rtx x10, x11, x12;
   22269              :   int res ATTRIBUTE_UNUSED;
   22270              :   if (pattern346 (x1) != 0)
   22271              :     return -1;
   22272              :   x2 = XVECEXP (x1, 0, 0);
   22273              :   x3 = XEXP (x2, 1);
   22274              :   x4 = XEXP (x3, 0);
   22275              :   x5 = XEXP (x4, 0);
   22276              :   switch (GET_CODE (x5))
   22277              :     {
   22278              :     case REG:
   22279              :     case SUBREG:
   22280              :     case MEM:
   22281              :       operands[1] = x5;
   22282              :       x6 = XEXP (x4, 1);
   22283              :       operands[2] = x6;
   22284              :       switch (GET_CODE (operands[2]))
   22285              :         {
   22286              :         case CONST_INT:
   22287              :         case CONST_WIDE_INT:
   22288              :         case CONST_POLY_INT:
   22289              :         case CONST_FIXED:
   22290              :         case CONST_DOUBLE:
   22291              :         case CONST_VECTOR:
   22292              :         case CONST:
   22293              :         case REG:
   22294              :         case SUBREG:
   22295              :         case MEM:
   22296              :         case LABEL_REF:
   22297              :         case SYMBOL_REF:
   22298              :         case HIGH:
   22299              :           switch (pattern1058 (x3))
   22300              :             {
   22301              :             case 0:
   22302              :               if (!
   22303              : #line 8416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22304              : (TARGET_APX_NDD && true
   22305              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22306              :                 return -1;
   22307              :               return 401; /* *subqi_1_zexthi */
   22308              : 
   22309              :             case 1:
   22310              :               if (!
   22311              : #line 8416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22312              : (TARGET_APX_NDD && true
   22313              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22314              :                 return -1;
   22315              :               return 403; /* *subqi_1_zextsi */
   22316              : 
   22317              :             case 2:
   22318              :               if (!
   22319              : #line 8435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22320              : (TARGET_APX_NDD && true
   22321              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22322              :                 return -1;
   22323              :               return 407; /* *subhi_1_zextsi */
   22324              : 
   22325              :             case 3:
   22326              :               if (!
   22327              : #line 8416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22328              : (TARGET_APX_NDD && true
   22329              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22330              :                 return -1;
   22331              :               return 405; /* *subqi_1_zextdi */
   22332              : 
   22333              :             case 4:
   22334              :               if (!
   22335              : #line 8435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22336              : (TARGET_APX_NDD && true
   22337              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22338              :                 return -1;
   22339              :               return 409; /* *subhi_1_zextdi */
   22340              : 
   22341              :             case 5:
   22342              :               if (!
   22343              : #line 8455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22344              : (TARGET_64BIT
   22345              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22346              :                 return -1;
   22347              :               return 410; /* *subsi_1_zext */
   22348              : 
   22349              :             default:
   22350              :               return -1;
   22351              :             }
   22352              : 
   22353              :         case LTU:
   22354              :         case UNLT:
   22355              :           switch (pattern1440 (x3))
   22356              :             {
   22357              :             case 0:
   22358              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22359              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   22360              :                   || !
   22361              : #line 10115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22362              : (TARGET_APX_NDD))
   22363              :                 return -1;
   22364              :               return 537; /* *subqi3_carry_zexthi_0 */
   22365              : 
   22366              :             case 1:
   22367              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22368              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   22369              :                   || !
   22370              : #line 10115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22371              : (TARGET_APX_NDD))
   22372              :                 return -1;
   22373              :               return 538; /* *subqi3_carry_zextsi_0 */
   22374              : 
   22375              :             case 2:
   22376              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22377              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
   22378              :                   || !
   22379              : #line 10134 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22380              : (TARGET_APX_NDD))
   22381              :                 return -1;
   22382              :               return 540; /* *subhi3_carry_zextsi_0 */
   22383              : 
   22384              :             case 3:
   22385              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22386              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   22387              :                   || !
   22388              : #line 10115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22389              : (TARGET_APX_NDD))
   22390              :                 return -1;
   22391              :               return 539; /* *subqi3_carry_zextdi_0 */
   22392              : 
   22393              :             case 4:
   22394              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22395              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
   22396              :                   || !
   22397              : #line 10134 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22398              : (TARGET_APX_NDD))
   22399              :                 return -1;
   22400              :               return 541; /* *subhi3_carry_zextdi_0 */
   22401              : 
   22402              :             case 5:
   22403              :               if (!nonimmediate_operand (operands[1], E_SImode)
   22404              :                   || !ix86_carry_flag_operator (operands[2], E_SImode)
   22405              :                   || !
   22406              : #line 10153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22407              : (TARGET_64BIT))
   22408              :                 return -1;
   22409              :               return 542; /* *subsi3_carry_zext_0 */
   22410              : 
   22411              :             default:
   22412              :               return -1;
   22413              :             }
   22414              : 
   22415              :         case GE:
   22416              :         case GEU:
   22417              :           switch (pattern1440 (x3))
   22418              :             {
   22419              :             case 0:
   22420              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22421              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   22422              :                   || !
   22423              : #line 10176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22424              : (TARGET_APX_NDD))
   22425              :                 return -1;
   22426              :               return 543; /* *subqi3_carry_zexthi_0r */
   22427              : 
   22428              :             case 1:
   22429              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22430              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   22431              :                   || !
   22432              : #line 10176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22433              : (TARGET_APX_NDD))
   22434              :                 return -1;
   22435              :               return 544; /* *subqi3_carry_zextsi_0r */
   22436              : 
   22437              :             case 2:
   22438              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22439              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
   22440              :                   || !
   22441              : #line 10195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22442              : (TARGET_APX_NDD))
   22443              :                 return -1;
   22444              :               return 546; /* *subhi3_carry_zextsi_0r */
   22445              : 
   22446              :             case 3:
   22447              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22448              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   22449              :                   || !
   22450              : #line 10176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22451              : (TARGET_APX_NDD))
   22452              :                 return -1;
   22453              :               return 545; /* *subqi3_carry_zextdi_0r */
   22454              : 
   22455              :             case 4:
   22456              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22457              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
   22458              :                   || !
   22459              : #line 10195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22460              : (TARGET_APX_NDD))
   22461              :                 return -1;
   22462              :               return 547; /* *subhi3_carry_zextdi_0r */
   22463              : 
   22464              :             case 5:
   22465              :               if (!nonimmediate_operand (operands[1], E_SImode)
   22466              :                   || !ix86_carry_flag_unset_operator (operands[2], E_SImode)
   22467              :                   || !
   22468              : #line 10214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22469              : (TARGET_64BIT))
   22470              :                 return -1;
   22471              :               return 548; /* *subsi3_carry_zext_0r */
   22472              : 
   22473              :             default:
   22474              :               return -1;
   22475              :             }
   22476              : 
   22477              :         default:
   22478              :           return -1;
   22479              :         }
   22480              : 
   22481              :     case MINUS:
   22482              :       x7 = XEXP (x5, 1);
   22483              :       switch (GET_CODE (x7))
   22484              :         {
   22485              :         case LTU:
   22486              :         case UNLT:
   22487              :           operands[3] = x7;
   22488              :           x8 = XEXP (x7, 0);
   22489              :           if (GET_CODE (x8) != REG
   22490              :               || REGNO (x8) != 17)
   22491              :             return -1;
   22492              :           x9 = XEXP (x7, 1);
   22493              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22494              :             return -1;
   22495              :           x10 = XEXP (x5, 0);
   22496              :           operands[1] = x10;
   22497              :           x6 = XEXP (x4, 1);
   22498              :           operands[2] = x6;
   22499              :           switch (pattern1169 (x3))
   22500              :             {
   22501              :             case 0:
   22502              :               if (pattern1784 (x5, 
   22503              : E_QImode) != 0
   22504              :                   || !
   22505              : #line 10040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22506              : (TARGET_APX_NDD
   22507              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22508              :                 return -1;
   22509              :               return 531; /* *subqi3_carry_zexthi */
   22510              : 
   22511              :             case 1:
   22512              :               if (pattern1784 (x5, 
   22513              : E_QImode) != 0
   22514              :                   || !
   22515              : #line 10040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22516              : (TARGET_APX_NDD
   22517              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22518              :                 return -1;
   22519              :               return 532; /* *subqi3_carry_zextsi */
   22520              : 
   22521              :             case 2:
   22522              :               if (pattern1784 (x5, 
   22523              : E_HImode) != 0
   22524              :                   || !
   22525              : #line 10065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22526              : (TARGET_APX_NDD
   22527              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22528              :                 return -1;
   22529              :               return 534; /* *subhi3_carry_zextsi */
   22530              : 
   22531              :             case 3:
   22532              :               if (pattern1784 (x5, 
   22533              : E_QImode) != 0
   22534              :                   || !
   22535              : #line 10040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22536              : (TARGET_APX_NDD
   22537              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22538              :                 return -1;
   22539              :               return 533; /* *subqi3_carry_zextdi */
   22540              : 
   22541              :             case 4:
   22542              :               if (pattern1784 (x5, 
   22543              : E_HImode) != 0
   22544              :                   || !
   22545              : #line 10065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22546              : (TARGET_APX_NDD
   22547              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22548              :                 return -1;
   22549              :               return 535; /* *subhi3_carry_zextdi */
   22550              : 
   22551              :             case 5:
   22552              :               if (pattern1784 (x5, 
   22553              : E_SImode) != 0
   22554              :                   || !
   22555              : #line 10090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22556              : (TARGET_64BIT
   22557              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22558              :                 return -1;
   22559              :               return 536; /* *subsi3_carry_zext */
   22560              : 
   22561              :             default:
   22562              :               return -1;
   22563              :             }
   22564              : 
   22565              :         default:
   22566              :           return -1;
   22567              :         }
   22568              : 
   22569              :     case CONST_INT:
   22570              :       if (!register_operand (operands[0], E_DImode)
   22571              :           || GET_MODE (x3) != E_DImode
   22572              :           || GET_MODE (x4) != E_SImode)
   22573              :         return -1;
   22574              :       x6 = XEXP (x4, 1);
   22575              :       if (GET_MODE (x6) != E_SImode)
   22576              :         return -1;
   22577              :       switch (XWINT (x5, 0))
   22578              :         {
   22579              :         case 63L:
   22580              :           if (GET_CODE (x6) != SUBREG
   22581              :               || maybe_ne (SUBREG_BYTE (x6), 0))
   22582              :             return -1;
   22583              :           x11 = XEXP (x6, 0);
   22584              :           if (GET_CODE (x11) != CLZ
   22585              :               || GET_MODE (x11) != E_DImode)
   22586              :             return -1;
   22587              :           x12 = XEXP (x11, 0);
   22588              :           operands[1] = x12;
   22589              :           if (!nonimmediate_operand (operands[1], E_DImode)
   22590              :               || !
   22591              : #line 22309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22592              : (!TARGET_LZCNT && TARGET_64BIT))
   22593              :             return -1;
   22594              :           return 1562; /* bsr_rex64_1_zext */
   22595              : 
   22596              :         case 31L:
   22597              :           if (GET_CODE (x6) != CLZ)
   22598              :             return -1;
   22599              :           x11 = XEXP (x6, 0);
   22600              :           operands[1] = x11;
   22601              :           if (!nonimmediate_operand (operands[1], E_SImode)
   22602              :               || !
   22603              : #line 22352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22604              : (!TARGET_LZCNT && TARGET_64BIT))
   22605              :             return -1;
   22606              :           return 1565; /* bsr_zext_1 */
   22607              : 
   22608              :         default:
   22609              :           return -1;
   22610              :         }
   22611              : 
   22612              :     default:
   22613              :       return -1;
   22614              :     }
   22615              : }
   22616              : 
   22617              :  int
   22618              : recog_392 (rtx x1 ATTRIBUTE_UNUSED,
   22619              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22620              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22621              : {
   22622              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22623              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22624              :   rtx x10, x11;
   22625              :   int res ATTRIBUTE_UNUSED;
   22626              :   x2 = XVECEXP (x1, 0, 0);
   22627              :   x3 = XEXP (x2, 1);
   22628              :   x4 = XEXP (x3, 1);
   22629              :   if (!rtx_equal_p (x4, operands[1]))
   22630              :     return -1;
   22631              :   x5 = XEXP (x2, 0);
   22632              :   if (GET_MODE (x5) != E_CCCmode
   22633              :       || GET_MODE (x3) != E_CCCmode)
   22634              :     return -1;
   22635              :   x6 = XVECEXP (x1, 0, 1);
   22636              :   switch (GET_CODE (x6))
   22637              :     {
   22638              :     case CLOBBER:
   22639              :       x7 = XEXP (x6, 0);
   22640              :       operands[0] = x7;
   22641              :       x8 = XEXP (x3, 0);
   22642              :       switch (pattern1338 (x8))
   22643              :         {
   22644              :         case 0:
   22645              :           if (!
   22646              : #line 10686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22647              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22648              :             return -1;
   22649              :           return 566; /* *addqi3_cconly_overflow_1 */
   22650              : 
   22651              :         case 1:
   22652              :           if (!
   22653              : #line 10686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22654              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22655              :             return -1;
   22656              :           return 567; /* *addhi3_cconly_overflow_1 */
   22657              : 
   22658              :         case 2:
   22659              :           if (!
   22660              : #line 10686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22661              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22662              :             return -1;
   22663              :           return 568; /* *addsi3_cconly_overflow_1 */
   22664              : 
   22665              :         case 3:
   22666              :           if (!(
   22667              : #line 10686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22668              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22669              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22670              : (TARGET_64BIT)))
   22671              :             return -1;
   22672              :           return 569; /* *adddi3_cconly_overflow_1 */
   22673              : 
   22674              :         default:
   22675              :           return -1;
   22676              :         }
   22677              : 
   22678              :     case SET:
   22679              :       x7 = XEXP (x6, 0);
   22680              :       operands[0] = x7;
   22681              :       x9 = XEXP (x6, 1);
   22682              :       switch (GET_CODE (x9))
   22683              :         {
   22684              :         case PLUS:
   22685              :           x10 = XEXP (x9, 0);
   22686              :           if (!rtx_equal_p (x10, operands[1]))
   22687              :             return -1;
   22688              :           x11 = XEXP (x9, 1);
   22689              :           if (!rtx_equal_p (x11, operands[2]))
   22690              :             return -1;
   22691              :           x8 = XEXP (x3, 0);
   22692              :           switch (GET_MODE (x8))
   22693              :             {
   22694              :             case E_QImode:
   22695              :               if (pattern1446 (x9, 
   22696              : E_QImode) != 0
   22697              :                   || !
   22698              : #line 10709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22699              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)))
   22700              :                 return -1;
   22701              :               return 570; /* addqi3_cc_overflow_1 */
   22702              : 
   22703              :             case E_HImode:
   22704              :               if (pattern1446 (x9, 
   22705              : E_HImode) != 0
   22706              :                   || !
   22707              : #line 10709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22708              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)))
   22709              :                 return -1;
   22710              :               return 571; /* addhi3_cc_overflow_1 */
   22711              : 
   22712              :             case E_SImode:
   22713              :               if (pattern1447 (x9, 
   22714              : E_SImode) != 0
   22715              :                   || !
   22716              : #line 10709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22717              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   22718              :                 return -1;
   22719              :               return 572; /* addsi3_cc_overflow_1 */
   22720              : 
   22721              :             case E_DImode:
   22722              :               if (pattern1447 (x9, 
   22723              : E_DImode) != 0
   22724              :                   || !(
   22725              : #line 10709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22726              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   22727              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22728              : (TARGET_64BIT)))
   22729              :                 return -1;
   22730              :               return 573; /* adddi3_cc_overflow_1 */
   22731              : 
   22732              :             case E_TImode:
   22733              :               if (pattern1696 (x9, 
   22734              : E_TImode) != 0
   22735              :                   || !(
   22736              : #line 10868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22737              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
   22738              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22739              : (TARGET_64BIT)))
   22740              :                 return -1;
   22741              :               return 585; /* *addti3_doubleword_cc_overflow_1 */
   22742              : 
   22743              :             default:
   22744              :               return -1;
   22745              :             }
   22746              : 
   22747              :         case ZERO_EXTEND:
   22748              :           if (pattern1444 (x1, 
   22749              : PLUS) != 0
   22750              :               || !
   22751              : #line 10772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22752              : (TARGET_64BIT
   22753              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   22754              :             return -1;
   22755              :           return 574; /* *addsi3_zext_cc_overflow_1 */
   22756              : 
   22757              :         default:
   22758              :           return -1;
   22759              :         }
   22760              : 
   22761              :     default:
   22762              :       return -1;
   22763              :     }
   22764              : }
   22765              : 
   22766              :  int
   22767              : recog_396 (rtx x1 ATTRIBUTE_UNUSED,
   22768              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22769              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22770              : {
   22771              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22772              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22773              :   rtx x10, x11;
   22774              :   int res ATTRIBUTE_UNUSED;
   22775              :   if (pattern588 (x1, 
   22776              : PLUS, 
   22777              : E_CCZmode) != 0)
   22778              :     return -1;
   22779              :   x2 = XVECEXP (x1, 0, 0);
   22780              :   x3 = XEXP (x2, 1);
   22781              :   if (GET_MODE (x3) != E_CCZmode)
   22782              :     return -1;
   22783              :   x4 = XEXP (x3, 0);
   22784              :   x5 = XVECEXP (x4, 0, 0);
   22785              :   operands[0] = x5;
   22786              :   x6 = XVECEXP (x4, 0, 1);
   22787              :   operands[3] = x6;
   22788              :   if (!const_int_operand (operands[3], E_SImode))
   22789              :     return -1;
   22790              :   x7 = XVECEXP (x1, 0, 1);
   22791              :   x8 = XEXP (x7, 1);
   22792              :   x9 = XEXP (x8, 1);
   22793              :   operands[1] = x9;
   22794              :   x10 = XEXP (x8, 0);
   22795              :   if (!rtx_equal_p (x10, operands[0]))
   22796              :     return -1;
   22797              :   x11 = XEXP (x7, 0);
   22798              :   if (!rtx_equal_p (x11, operands[0]))
   22799              :     return -1;
   22800              :   switch (GET_MODE (x4))
   22801              :     {
   22802              :     case E_QImode:
   22803              :       if (pattern1787 (x8, 
   22804              : E_QImode) != 0
   22805              :           || !
   22806              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22807              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22808              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   22809              :         return -1;
   22810              :       return 11166; /* *atomic_fetch_add_cmpqi */
   22811              : 
   22812              :     case E_HImode:
   22813              :       if (pattern1787 (x8, 
   22814              : E_HImode) != 0
   22815              :           || !
   22816              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22817              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22818              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   22819              :         return -1;
   22820              :       return 11167; /* *atomic_fetch_add_cmphi */
   22821              : 
   22822              :     case E_SImode:
   22823              :       if (pattern1787 (x8, 
   22824              : E_SImode) != 0
   22825              :           || !
   22826              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22827              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22828              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   22829              :         return -1;
   22830              :       return 11168; /* *atomic_fetch_add_cmpsi */
   22831              : 
   22832              :     case E_DImode:
   22833              :       if (pattern1787 (x8, 
   22834              : E_DImode) != 0
   22835              :           || !(
   22836              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22837              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22838              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])) && 
   22839              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22840              : (TARGET_64BIT)))
   22841              :         return -1;
   22842              :       return 11169; /* *atomic_fetch_add_cmpdi */
   22843              : 
   22844              :     default:
   22845              :       return -1;
   22846              :     }
   22847              : }
   22848              : 
   22849              :  int
   22850              : recog_400 (rtx x1 ATTRIBUTE_UNUSED,
   22851              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22852              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22853              : {
   22854              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22855              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22856              :   int res ATTRIBUTE_UNUSED;
   22857              :   switch (pattern370 (x1, 
   22858              : IOR))
   22859              :     {
   22860              :     case 0:
   22861              :       if (general_operand (operands[2], E_QImode))
   22862              :         {
   22863              :           switch (pattern961 (x1, 
   22864              : IOR))
   22865              :             {
   22866              :             case 0:
   22867              :               if (
   22868              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22869              : (ix86_match_ccmode (insn, CCNOmode)))
   22870              :                 return 817; /* *iorqi_exthi_1_cc */
   22871              :               break;
   22872              : 
   22873              :             case 1:
   22874              :               if (
   22875              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22876              : (ix86_match_ccmode (insn, CCNOmode)))
   22877              :                 return 820; /* *iorqi_extsi_1_cc */
   22878              :               break;
   22879              : 
   22880              :             case 2:
   22881              :               if ((
   22882              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22883              : (ix86_match_ccmode (insn, CCNOmode)) && 
   22884              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22885              : (TARGET_64BIT)))
   22886              :                 return 823; /* *iorqi_extdi_1_cc */
   22887              :               break;
   22888              : 
   22889              :             default:
   22890              :               break;
   22891              :             }
   22892              :         }
   22893              :       x2 = XVECEXP (x1, 0, 0);
   22894              :       x3 = XEXP (x2, 0);
   22895              :       if (GET_CODE (x3) != REG
   22896              :           || REGNO (x3) != 17)
   22897              :         return -1;
   22898              :       x4 = XEXP (x2, 1);
   22899              :       x5 = XEXP (x4, 0);
   22900              :       x6 = XEXP (x5, 0);
   22901              :       operands[1] = x6;
   22902              :       x7 = XVECEXP (x1, 0, 1);
   22903              :       switch (GET_CODE (x7))
   22904              :         {
   22905              :         case SET:
   22906              :           x8 = XEXP (x7, 0);
   22907              :           operands[0] = x8;
   22908              :           x9 = XEXP (x7, 1);
   22909              :           switch (GET_CODE (x9))
   22910              :             {
   22911              :             case IOR:
   22912              :               switch (pattern1448 (x1))
   22913              :                 {
   22914              :                 case 0:
   22915              :                   if (!
   22916              : #line 14776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22917              : (ix86_match_ccmode (insn, CCNOmode)
   22918              :    && ix86_binary_operator_ok (IOR, QImode, operands, TARGET_APX_NDD)))
   22919              :                     return -1;
   22920              :                   return 906; /* *iorqi_2 */
   22921              : 
   22922              :                 case 1:
   22923              :                   if (!
   22924              : #line 14776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22925              : (ix86_match_ccmode (insn, CCNOmode)
   22926              :    && ix86_binary_operator_ok (IOR, HImode, operands, TARGET_APX_NDD)))
   22927              :                     return -1;
   22928              :                   return 908; /* *iorhi_2 */
   22929              : 
   22930              :                 case 2:
   22931              :                   if (!
   22932              : #line 14776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22933              : (ix86_match_ccmode (insn, CCNOmode)
   22934              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
   22935              :                     return -1;
   22936              :                   return 910; /* *iorsi_2 */
   22937              : 
   22938              :                 case 3:
   22939              :                   if (!(
   22940              : #line 14776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22941              : (ix86_match_ccmode (insn, CCNOmode)
   22942              :    && ix86_binary_operator_ok (IOR, DImode, operands, TARGET_APX_NDD)) && 
   22943              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22944              : (TARGET_64BIT)))
   22945              :                     return -1;
   22946              :                   return 912; /* *iordi_2 */
   22947              : 
   22948              :                 case 4:
   22949              :                   if (!
   22950              : #line 14824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22951              : (TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)
   22952              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
   22953              :                     return -1;
   22954              :                   return 916; /* *iorsi_2_zext_imm */
   22955              : 
   22956              :                 default:
   22957              :                   return -1;
   22958              :                 }
   22959              : 
   22960              :             case ZERO_EXTEND:
   22961              :               if (pattern1444 (x1, 
   22962              : IOR) != 0
   22963              :                   || !
   22964              : #line 14801 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22965              : (TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)
   22966              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
   22967              :                 return -1;
   22968              :               return 914; /* *iorsi_2_zext */
   22969              : 
   22970              :             default:
   22971              :               return -1;
   22972              :             }
   22973              : 
   22974              :         case CLOBBER:
   22975              :           x8 = XEXP (x7, 0);
   22976              :           operands[0] = x8;
   22977              :           if (GET_MODE (x3) == E_CCZmode
   22978              :               && GET_MODE (x4) == E_CCZmode)
   22979              :             {
   22980              :               switch (pattern1338 (x5))
   22981              :                 {
   22982              :                 case 0:
   22983              :                   if ((
   22984              : #line 14847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22985              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22986              : #line 1592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22987              : (TARGET_AVX512DQ)))
   22988              :                     return 918; /* *iorqi_ccz_1 */
   22989              :                   break;
   22990              : 
   22991              :                 case 1:
   22992              :                   if (
   22993              : #line 14847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22994              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22995              :                     return 919; /* *iorhi_ccz_1 */
   22996              :                   break;
   22997              : 
   22998              :                 case 2:
   22999              :                   if ((
   23000              : #line 14847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23001              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23002              : #line 1593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23003              : (TARGET_AVX512BW)))
   23004              :                     return 920; /* *iorsi_ccz_1 */
   23005              :                   break;
   23006              : 
   23007              :                 case 3:
   23008              :                   if ((
   23009              : #line 14847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23010              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23011              : #line 1593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23012              : (TARGET_AVX512BW && TARGET_64BIT)))
   23013              :                     return 921; /* *iordi_ccz_1 */
   23014              :                   break;
   23015              : 
   23016              :                 default:
   23017              :                   break;
   23018              :                 }
   23019              :             }
   23020              :           switch (GET_MODE (x5))
   23021              :             {
   23022              :             case E_QImode:
   23023              :               if (!nonimmediate_operand (operands[1], E_QImode)
   23024              :                   || !general_operand (operands[2], E_QImode)
   23025              :                   || !scratch_operand (operands[0], E_QImode)
   23026              :                   || !
   23027              : #line 14861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23028              : (ix86_match_ccmode (insn, CCNOmode)
   23029              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23030              :                 return -1;
   23031              :               return 922; /* *iorqi_3 */
   23032              : 
   23033              :             case E_HImode:
   23034              :               if (!nonimmediate_operand (operands[1], E_HImode)
   23035              :                   || !general_operand (operands[2], E_HImode)
   23036              :                   || !scratch_operand (operands[0], E_HImode)
   23037              :                   || !
   23038              : #line 14861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23039              : (ix86_match_ccmode (insn, CCNOmode)
   23040              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23041              :                 return -1;
   23042              :               return 924; /* *iorhi_3 */
   23043              : 
   23044              :             case E_SImode:
   23045              :               if (!nonimmediate_operand (operands[1], E_SImode)
   23046              :                   || !x86_64_general_operand (operands[2], E_SImode)
   23047              :                   || !scratch_operand (operands[0], E_SImode)
   23048              :                   || !
   23049              : #line 14861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23050              : (ix86_match_ccmode (insn, CCNOmode)
   23051              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23052              :                 return -1;
   23053              :               return 926; /* *iorsi_3 */
   23054              : 
   23055              :             case E_DImode:
   23056              :               if (!nonimmediate_operand (operands[1], E_DImode)
   23057              :                   || !x86_64_general_operand (operands[2], E_DImode)
   23058              :                   || !scratch_operand (operands[0], E_DImode)
   23059              :                   || !(
   23060              : #line 14861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23061              : (ix86_match_ccmode (insn, CCNOmode)
   23062              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23063              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23064              : (TARGET_64BIT)))
   23065              :                 return -1;
   23066              :               return 928; /* *iordi_3 */
   23067              : 
   23068              :             default:
   23069              :               return -1;
   23070              :             }
   23071              : 
   23072              :         default:
   23073              :           return -1;
   23074              :         }
   23075              : 
   23076              :     case 1:
   23077              :       return 11220; /* atomic_or_fetch_cmp_0qi_1 */
   23078              : 
   23079              :     case 2:
   23080              :       return 11223; /* atomic_or_fetch_cmp_0hi_1 */
   23081              : 
   23082              :     case 3:
   23083              :       return 11226; /* atomic_or_fetch_cmp_0si_1 */
   23084              : 
   23085              :     case 4:
   23086              :       if (!
   23087              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23088              : (TARGET_64BIT))
   23089              :         return -1;
   23090              :       return 11229; /* atomic_or_fetch_cmp_0di_1 */
   23091              : 
   23092              :     default:
   23093              :       return -1;
   23094              :     }
   23095              : }
   23096              : 
   23097              :  int
   23098              : recog_401 (rtx x1 ATTRIBUTE_UNUSED,
   23099              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23100              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23101              : {
   23102              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23103              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23104              :   rtx x10, x11, x12, x13, x14, x15;
   23105              :   int res ATTRIBUTE_UNUSED;
   23106              :   x2 = XVECEXP (x1, 0, 0);
   23107              :   x3 = XEXP (x2, 1);
   23108              :   x4 = XEXP (x3, 1);
   23109              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23110              :     return -1;
   23111              :   x5 = XEXP (x3, 0);
   23112              :   x6 = XEXP (x5, 0);
   23113              :   switch (GET_CODE (x6))
   23114              :     {
   23115              :     case REG:
   23116              :     case SUBREG:
   23117              :     case MEM:
   23118              :       operands[1] = x6;
   23119              :       res = recog_395 (x1, insn, pnum_clobbers);
   23120              :       if (res >= 0)
   23121              :         return res;
   23122              :       if (GET_CODE (x6) != SUBREG)
   23123              :         return -1;
   23124              :       switch (pattern835 (x1))
   23125              :         {
   23126              :         case 0:
   23127              :           if (!
   23128              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23129              : (ix86_match_ccmode (insn, CCNOmode)))
   23130              :             return -1;
   23131              :           return 816; /* *andqi_exthi_1_cc */
   23132              : 
   23133              :         case 1:
   23134              :           if (!
   23135              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23136              : (ix86_match_ccmode (insn, CCNOmode)))
   23137              :             return -1;
   23138              :           return 819; /* *andqi_extsi_1_cc */
   23139              : 
   23140              :         case 2:
   23141              :           if (!(
   23142              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23143              : (ix86_match_ccmode (insn, CCNOmode)) && 
   23144              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23145              : (TARGET_64BIT)))
   23146              :             return -1;
   23147              :           return 822; /* *andqi_extdi_1_cc */
   23148              : 
   23149              :         default:
   23150              :           return -1;
   23151              :         }
   23152              : 
   23153              :     case NOT:
   23154              :       x7 = XEXP (x2, 0);
   23155              :       if (GET_CODE (x7) != REG
   23156              :           || REGNO (x7) != 17)
   23157              :         return -1;
   23158              :       x8 = XVECEXP (x1, 0, 1);
   23159              :       if (GET_CODE (x8) != CLOBBER)
   23160              :         return -1;
   23161              :       x9 = XEXP (x6, 0);
   23162              :       operands[1] = x9;
   23163              :       x10 = XEXP (x5, 1);
   23164              :       operands[2] = x10;
   23165              :       x11 = XEXP (x8, 0);
   23166              :       operands[0] = x11;
   23167              :       switch (GET_MODE (x5))
   23168              :         {
   23169              :         case E_SImode:
   23170              :           if (pattern1445 (x6, 
   23171              : E_SImode) != 0
   23172              :               || !
   23173              : #line 14241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23174              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
   23175              :             return -1;
   23176              :           return 851; /* *andn_si_ccno */
   23177              : 
   23178              :         case E_DImode:
   23179              :           if (pattern1445 (x6, 
   23180              : E_DImode) != 0
   23181              :               || !(
   23182              : #line 14241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23183              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
   23184              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23185              : (TARGET_64BIT)))
   23186              :             return -1;
   23187              :           return 852; /* *andn_di_ccno */
   23188              : 
   23189              :         default:
   23190              :           return -1;
   23191              :         }
   23192              : 
   23193              :     case NEG:
   23194              :       x7 = XEXP (x2, 0);
   23195              :       if (GET_CODE (x7) != REG
   23196              :           || REGNO (x7) != 17)
   23197              :         return -1;
   23198              :       x9 = XEXP (x6, 0);
   23199              :       operands[1] = x9;
   23200              :       x10 = XEXP (x5, 1);
   23201              :       if (!rtx_equal_p (x10, operands[1]))
   23202              :         return -1;
   23203              :       x8 = XVECEXP (x1, 0, 1);
   23204              :       switch (GET_CODE (x8))
   23205              :         {
   23206              :         case SET:
   23207              :           x12 = XEXP (x8, 1);
   23208              :           if (GET_CODE (x12) != AND)
   23209              :             return -1;
   23210              :           x13 = XEXP (x12, 0);
   23211              :           if (GET_CODE (x13) != NEG)
   23212              :             return -1;
   23213              :           x11 = XEXP (x8, 0);
   23214              :           operands[0] = x11;
   23215              :           switch (pattern1511 (x1))
   23216              :             {
   23217              :             case 0:
   23218              :               if (!
   23219              : #line 22856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23220              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
   23221              :                 return -1;
   23222              :               return 1610; /* *bmi_blsi_si_cmp */
   23223              : 
   23224              :             case 1:
   23225              :               if (!(
   23226              : #line 22856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23227              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
   23228              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23229              : (TARGET_64BIT)))
   23230              :                 return -1;
   23231              :               return 1611; /* *bmi_blsi_di_cmp */
   23232              : 
   23233              :             default:
   23234              :               return -1;
   23235              :             }
   23236              : 
   23237              :         case CLOBBER:
   23238              :           switch (pattern1255 (x1))
   23239              :             {
   23240              :             case 0:
   23241              :               if (!
   23242              : #line 22915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23243              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
   23244              :                 return -1;
   23245              :               return 1614; /* *bmi_blsi_si_ccno */
   23246              : 
   23247              :             case 1:
   23248              :               if (!(
   23249              : #line 22915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23250              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
   23251              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23252              : (TARGET_64BIT)))
   23253              :                 return -1;
   23254              :               return 1615; /* *bmi_blsi_di_ccno */
   23255              : 
   23256              :             default:
   23257              :               return -1;
   23258              :             }
   23259              : 
   23260              :         default:
   23261              :           return -1;
   23262              :         }
   23263              : 
   23264              :     case PLUS:
   23265              :       x14 = XEXP (x6, 1);
   23266              :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + -1]
   23267              :           || pattern834 (x2, 
   23268              : E_CCZmode) != 0)
   23269              :         return -1;
   23270              :       x9 = XEXP (x6, 0);
   23271              :       operands[1] = x9;
   23272              :       x10 = XEXP (x5, 1);
   23273              :       if (!rtx_equal_p (x10, operands[1]))
   23274              :         return -1;
   23275              :       x8 = XVECEXP (x1, 0, 1);
   23276              :       switch (GET_CODE (x8))
   23277              :         {
   23278              :         case SET:
   23279              :           x12 = XEXP (x8, 1);
   23280              :           if (GET_CODE (x12) != AND)
   23281              :             return -1;
   23282              :           x13 = XEXP (x12, 0);
   23283              :           if (GET_CODE (x13) != PLUS)
   23284              :             return -1;
   23285              :           x15 = XEXP (x13, 1);
   23286              :           if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   23287              :             return -1;
   23288              :           x11 = XEXP (x8, 0);
   23289              :           operands[0] = x11;
   23290              :           switch (pattern1511 (x1))
   23291              :             {
   23292              :             case 0:
   23293              :               if (!
   23294              : #line 23008 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23295              : (TARGET_BMI))
   23296              :                 return -1;
   23297              :               return 1622; /* *bmi_blsr_si_cmp */
   23298              : 
   23299              :             case 1:
   23300              :               if (!(
   23301              : #line 23008 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23302              : (TARGET_BMI) && 
   23303              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23304              : (TARGET_64BIT)))
   23305              :                 return -1;
   23306              :               return 1623; /* *bmi_blsr_di_cmp */
   23307              : 
   23308              :             default:
   23309              :               return -1;
   23310              :             }
   23311              : 
   23312              :         case CLOBBER:
   23313              :           switch (pattern1255 (x1))
   23314              :             {
   23315              :             case 0:
   23316              :               if (!
   23317              : #line 23065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23318              : (TARGET_BMI))
   23319              :                 return -1;
   23320              :               return 1626; /* *bmi_blsr_si_ccz */
   23321              : 
   23322              :             case 1:
   23323              :               if (!(
   23324              : #line 23065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23325              : (TARGET_BMI) && 
   23326              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23327              : (TARGET_64BIT)))
   23328              :                 return -1;
   23329              :               return 1627; /* *bmi_blsr_di_ccz */
   23330              : 
   23331              :             default:
   23332              :               return -1;
   23333              :             }
   23334              : 
   23335              :         default:
   23336              :           return -1;
   23337              :         }
   23338              : 
   23339              :     case UNSPEC_VOLATILE:
   23340              :       switch (pattern369 (x1, 
   23341              : AND))
   23342              :         {
   23343              :         case 0:
   23344              :           return 11219; /* atomic_and_fetch_cmp_0qi_1 */
   23345              : 
   23346              :         case 1:
   23347              :           return 11222; /* atomic_and_fetch_cmp_0hi_1 */
   23348              : 
   23349              :         case 2:
   23350              :           return 11225; /* atomic_and_fetch_cmp_0si_1 */
   23351              : 
   23352              :         case 3:
   23353              :           if (!
   23354              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23355              : (TARGET_64BIT))
   23356              :             return -1;
   23357              :           return 11228; /* atomic_and_fetch_cmp_0di_1 */
   23358              : 
   23359              :         default:
   23360              :           return -1;
   23361              :         }
   23362              : 
   23363              :     default:
   23364              :       return -1;
   23365              :     }
   23366              : }
   23367              : 
   23368              :  int
   23369              : recog_409 (rtx x1 ATTRIBUTE_UNUSED,
   23370              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23371              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23372              : {
   23373              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23374              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23375              :   rtx x10;
   23376              :   int res ATTRIBUTE_UNUSED;
   23377              :   x2 = XVECEXP (x1, 0, 0);
   23378              :   x3 = XEXP (x2, 0);
   23379              :   operands[0] = x3;
   23380              :   x4 = XEXP (x2, 1);
   23381              :   x5 = XEXP (x4, 0);
   23382              :   switch (GET_CODE (x5))
   23383              :     {
   23384              :     case REG:
   23385              :     case SUBREG:
   23386              :     case MEM:
   23387              :       x6 = XVECEXP (x1, 0, 1);
   23388              :       switch (GET_CODE (x6))
   23389              :         {
   23390              :         case CLOBBER:
   23391              :           x7 = XEXP (x6, 0);
   23392              :           if (GET_CODE (x7) != REG
   23393              :               || REGNO (x7) != 17
   23394              :               || GET_MODE (x7) != E_CCmode)
   23395              :             return -1;
   23396              :           operands[1] = x5;
   23397              :           x8 = XEXP (x4, 1);
   23398              :           operands[2] = x8;
   23399              :           switch (GET_MODE (operands[0]))
   23400              :             {
   23401              :             case E_HImode:
   23402              :               if (!register_operand (operands[0], E_HImode)
   23403              :                   || GET_MODE (x4) != E_HImode
   23404              :                   || !nonimmediate_operand (operands[1], E_HImode)
   23405              :                   || !general_operand (operands[2], E_HImode)
   23406              :                   || !(
   23407              : #line 11395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23408              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23409              :    && true) && 
   23410              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23411              : (TARGET_HIMODE_MATH)))
   23412              :                 return -1;
   23413              :               return 623; /* *mulhi3_1 */
   23414              : 
   23415              :             case E_SImode:
   23416              :               if (pattern1344 (x4, 
   23417              : E_SImode) != 0
   23418              :                   || !
   23419              : #line 11395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23420              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23421              :    && true))
   23422              :                 return -1;
   23423              :               return 625; /* *mulsi3_1 */
   23424              : 
   23425              :             case E_DImode:
   23426              :               if (pattern1344 (x4, 
   23427              : E_DImode) != 0
   23428              :                   || !(
   23429              : #line 11395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23430              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23431              :    && true) && 
   23432              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23433              : (TARGET_64BIT)))
   23434              :                 return -1;
   23435              :               return 627; /* *muldi3_1 */
   23436              : 
   23437              :             case E_QImode:
   23438              :               if (pattern214 (x4, 
   23439              : E_QImode) != 0
   23440              :                   || !
   23441              : #line 11492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23442              : (TARGET_QIMODE_MATH
   23443              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   23444              :    && true))
   23445              :                 return -1;
   23446              :               return 635; /* *mulqi3_1 */
   23447              : 
   23448              :             default:
   23449              :               return -1;
   23450              :             }
   23451              : 
   23452              :         case SET:
   23453              :           x9 = XEXP (x6, 1);
   23454              :           if (GET_CODE (x9) != UMUL_HIGHPART)
   23455              :             return -1;
   23456              :           switch (pattern596 (x1))
   23457              :             {
   23458              :             case 0:
   23459              :               if (!(
   23460              : #line 11766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23461              : (TARGET_BMI2) && 
   23462              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23463              : (!TARGET_64BIT)))
   23464              :                 return -1;
   23465              :               return 647; /* *bmi2_umulsidi3_1 */
   23466              : 
   23467              :             case 1:
   23468              :               if (!(
   23469              : #line 11766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23470              : (TARGET_BMI2) && 
   23471              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23472              : (TARGET_64BIT)))
   23473              :                 return -1;
   23474              :               return 648; /* *bmi2_umulditi3_1 */
   23475              : 
   23476              :             default:
   23477              :               return -1;
   23478              :             }
   23479              : 
   23480              :         case UNSPEC:
   23481              :           if (XVECLEN (x6, 0) != 1
   23482              :               || XINT (x6, 1) != 111)
   23483              :             return -1;
   23484              :           x10 = XVECEXP (x6, 0, 0);
   23485              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   23486              :               || !register_operand (operands[0], E_V2SFmode)
   23487              :               || GET_MODE (x4) != E_V2SFmode)
   23488              :             return -1;
   23489              :           operands[1] = x5;
   23490              :           if (!nonimmediate_operand (operands[1], E_V2SFmode))
   23491              :             return -1;
   23492              :           x8 = XEXP (x4, 1);
   23493              :           operands[2] = x8;
   23494              :           if (!nonimmediate_operand (operands[2], E_V2SFmode)
   23495              :               || !
   23496              : #line 819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23497              : (TARGET_3DNOW && ix86_binary_operator_ok (MULT, V2SFmode, operands)))
   23498              :             return -1;
   23499              :           return 2114; /* *mmx_mulv2sf3 */
   23500              : 
   23501              :         default:
   23502              :           return -1;
   23503              :         }
   23504              : 
   23505              :     case ZERO_EXTEND:
   23506              :       switch (pattern567 (x1, 
   23507              : ZERO_EXTEND))
   23508              :         {
   23509              :         case 0:
   23510              :           if (!(
   23511              : #line 11805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23512              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23513              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23514              : (!TARGET_64BIT)))
   23515              :             return -1;
   23516              :           return 649; /* *umulsidi3_1 */
   23517              : 
   23518              :         case 1:
   23519              :           if (!(
   23520              : #line 11805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23521              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23522              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23523              : (TARGET_64BIT)))
   23524              :             return -1;
   23525              :           return 650; /* *umulditi3_1 */
   23526              : 
   23527              :         case 2:
   23528              :           if (!
   23529              : #line 11871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23530              : (TARGET_QIMODE_MATH
   23531              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   23532              :    && true))
   23533              :             return -1;
   23534              :           return 658; /* *umulqihi3_1 */
   23535              : 
   23536              :         default:
   23537              :           return -1;
   23538              :         }
   23539              : 
   23540              :     case SIGN_EXTEND:
   23541              :       switch (pattern567 (x1, 
   23542              : SIGN_EXTEND))
   23543              :         {
   23544              :         case 0:
   23545              :           if (!(
   23546              : #line 11851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23547              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23548              :    && true) && 
   23549              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23550              : (!TARGET_64BIT)))
   23551              :             return -1;
   23552              :           return 652; /* *mulsidi3_1 */
   23553              : 
   23554              :         case 1:
   23555              :           if (!(
   23556              : #line 1234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23557              : (TARGET_64BIT) && (
   23558              : #line 11851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23559              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23560              :    && true) && 
   23561              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23562              : (TARGET_64BIT))))
   23563              :             return -1;
   23564              :           return 654; /* *mulditi3_1 */
   23565              : 
   23566              :         case 2:
   23567              :           if (!
   23568              : #line 11871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23569              : (TARGET_QIMODE_MATH
   23570              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   23571              :    && true))
   23572              :             return -1;
   23573              :           return 656; /* *mulqihi3_1 */
   23574              : 
   23575              :         default:
   23576              :           return -1;
   23577              :         }
   23578              : 
   23579              :     default:
   23580              :       return -1;
   23581              :     }
   23582              : }
   23583              : 
   23584              :  int
   23585              : recog_416 (rtx x1 ATTRIBUTE_UNUSED,
   23586              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23587              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23588              : {
   23589              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23590              :   rtx x2, x3, x4, x5, x6, x7;
   23591              :   int res ATTRIBUTE_UNUSED;
   23592              :   x2 = XVECEXP (x1, 0, 0);
   23593              :   x3 = XEXP (x2, 1);
   23594              :   x4 = XEXP (x3, 0);
   23595              :   x5 = XEXP (x4, 0);
   23596              :   switch (GET_CODE (x5))
   23597              :     {
   23598              :     case ASHIFTRT:
   23599              :     case LSHIFTRT:
   23600              :     case SIGN_EXTRACT:
   23601              :     case ZERO_EXTRACT:
   23602              :       operands[3] = x5;
   23603              :       x6 = XEXP (x5, 0);
   23604              :       operands[2] = x6;
   23605              :       switch (pattern1543 (x2))
   23606              :         {
   23607              :         case 0:
   23608              :           if (
   23609              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23610              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23611              :             return 767; /* *xorqi_exthi_1_slp */
   23612              :           break;
   23613              : 
   23614              :         case 1:
   23615              :           if (
   23616              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23617              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23618              :             return 770; /* *xorqi_extsi_1_slp */
   23619              :           break;
   23620              : 
   23621              :         case 2:
   23622              :           if ((
   23623              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23624              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   23625              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23626              : (TARGET_64BIT)))
   23627              :             return 773; /* *xorqi_extdi_1_slp */
   23628              :           break;
   23629              : 
   23630              :         case 3:
   23631              :           return 791; /* *xorqi_exthi_0 */
   23632              : 
   23633              :         case 4:
   23634              :           return 794; /* *xorqi_extsi_0 */
   23635              : 
   23636              :         case 5:
   23637              :           if (
   23638              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23639              : (TARGET_64BIT))
   23640              :             return 797; /* *xorqi_extdi_0 */
   23641              :           break;
   23642              : 
   23643              :         default:
   23644              :           break;
   23645              :         }
   23646              :       x7 = XEXP (x3, 1);
   23647              :       if (GET_CODE (x7) != SUBREG)
   23648              :         return -1;
   23649              :       switch (pattern1544 (x2))
   23650              :         {
   23651              :         case 0:
   23652              :           if (!
   23653              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23654              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23655              :             return -1;
   23656              :           return 776; /* *xorqi_exthi_2_slp */
   23657              : 
   23658              :         case 1:
   23659              :           if (!
   23660              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23661              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23662              :             return -1;
   23663              :           return 779; /* *xorqi_extsi_2_slp */
   23664              : 
   23665              :         case 2:
   23666              :           if (!(
   23667              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23668              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   23669              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23670              : (TARGET_64BIT)))
   23671              :             return -1;
   23672              :           return 782; /* *xorqi_extdi_2_slp */
   23673              : 
   23674              :         case 3:
   23675              :           return 800; /* *xorqi_ext2hi_0 */
   23676              : 
   23677              :         case 4:
   23678              :           return 803; /* *xorqi_ext2si_0 */
   23679              : 
   23680              :         case 5:
   23681              :           if (!
   23682              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23683              : (TARGET_64BIT))
   23684              :             return -1;
   23685              :           return 806; /* *xorqi_ext2di_0 */
   23686              : 
   23687              :         default:
   23688              :           return -1;
   23689              :         }
   23690              : 
   23691              :     default:
   23692              :       return -1;
   23693              :     }
   23694              : }
   23695              : 
   23696              :  int
   23697              : recog_418 (rtx x1 ATTRIBUTE_UNUSED,
   23698              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23699              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23700              : {
   23701              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23702              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23703              :   rtx x10;
   23704              :   int res ATTRIBUTE_UNUSED;
   23705              :   x2 = XVECEXP (x1, 0, 0);
   23706              :   x3 = XEXP (x2, 1);
   23707              :   x4 = XEXP (x3, 0);
   23708              :   switch (GET_CODE (x4))
   23709              :     {
   23710              :     case XOR:
   23711              :       x5 = XEXP (x2, 0);
   23712              :       operands[0] = x5;
   23713              :       x6 = XEXP (x4, 0);
   23714              :       operands[1] = x6;
   23715              :       x7 = XEXP (x4, 1);
   23716              :       operands[2] = x7;
   23717              :       x8 = XVECEXP (x1, 0, 1);
   23718              :       switch (pattern838 (x8))
   23719              :         {
   23720              :         case 0:
   23721              :           switch (GET_MODE (operands[0]))
   23722              :             {
   23723              :             case E_HImode:
   23724              :               if (!nonimmediate_operand (operands[0], E_HImode)
   23725              :                   || pattern218 (x3, 
   23726              : E_HImode) != 0
   23727              :                   || !
   23728              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23729              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)))
   23730              :                 return -1;
   23731              :               return 869; /* *notxorhi_1 */
   23732              : 
   23733              :             case E_SImode:
   23734              :               if (!nonimmediate_operand (operands[0], E_SImode)
   23735              :                   || pattern219 (x3, 
   23736              : E_SImode) != 0
   23737              :                   || !
   23738              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23739              : (ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   23740              :                 return -1;
   23741              :               return 870; /* *notxorsi_1 */
   23742              : 
   23743              :             case E_DImode:
   23744              :               if (!nonimmediate_operand (operands[0], E_DImode)
   23745              :                   || pattern219 (x3, 
   23746              : E_DImode) != 0
   23747              :                   || !(
   23748              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23749              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   23750              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23751              : (TARGET_64BIT)))
   23752              :                 return -1;
   23753              :               return 871; /* *notxordi_1 */
   23754              : 
   23755              :             case E_QImode:
   23756              :               if (!nonimmediate_operand (operands[0], E_QImode)
   23757              :                   || pattern218 (x3, 
   23758              : E_QImode) != 0
   23759              :                   || !
   23760              : #line 14700 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23761              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)))
   23762              :                 return -1;
   23763              :               return 905; /* *notxorqi_1 */
   23764              : 
   23765              :             default:
   23766              :               return -1;
   23767              :             }
   23768              : 
   23769              :         case 1:
   23770              :           if (pattern1348 (x3, 
   23771              : E_QImode) != 0
   23772              :               || !
   23773              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23774              : (TARGET_AVX512F))
   23775              :             return -1;
   23776              :           return 2663; /* kxnorqi */
   23777              : 
   23778              :         case 2:
   23779              :           if (pattern1348 (x3, 
   23780              : E_HImode) != 0
   23781              :               || !
   23782              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23783              : (TARGET_AVX512F))
   23784              :             return -1;
   23785              :           return 2664; /* kxnorhi */
   23786              : 
   23787              :         case 3:
   23788              :           if (pattern1348 (x3, 
   23789              : E_SImode) != 0
   23790              :               || !(
   23791              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23792              : (TARGET_AVX512F) && 
   23793              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23794              : (TARGET_AVX512BW)))
   23795              :             return -1;
   23796              :           return 2665; /* kxnorsi */
   23797              : 
   23798              :         case 4:
   23799              :           if (pattern1348 (x3, 
   23800              : E_DImode) != 0
   23801              :               || !(
   23802              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23803              : (TARGET_AVX512F) && 
   23804              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23805              : (TARGET_AVX512BW)))
   23806              :             return -1;
   23807              :           return 2666; /* kxnordi */
   23808              : 
   23809              :         default:
   23810              :           return -1;
   23811              :         }
   23812              : 
   23813              :     case ZERO_EXTRACT:
   23814              :       if (pattern378 (x1) != 0
   23815              :           || GET_MODE (x3) != E_DImode)
   23816              :         return -1;
   23817              :       x6 = XEXP (x4, 0);
   23818              :       if (!rtx_equal_p (x6, operands[0]))
   23819              :         return -1;
   23820              :       x9 = XEXP (x4, 2);
   23821              :       if (!rtx_equal_p (x9, operands[1])
   23822              :           || !
   23823              : #line 20042 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23824              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
   23825              :         return -1;
   23826              :       return 1453; /* *btcq_imm */
   23827              : 
   23828              :     case REG:
   23829              :     case SUBREG:
   23830              :       operands[1] = x4;
   23831              :       x8 = XVECEXP (x1, 0, 1);
   23832              :       if (GET_CODE (x8) != UNSPEC
   23833              :           || XVECLEN (x8, 0) != 1
   23834              :           || XINT (x8, 1) != 175)
   23835              :         return -1;
   23836              :       x10 = XVECEXP (x8, 0, 0);
   23837              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23838              :         return -1;
   23839              :       x5 = XEXP (x2, 0);
   23840              :       operands[0] = x5;
   23841              :       switch (pattern827 (x3))
   23842              :         {
   23843              :         case 0:
   23844              :           if (!
   23845              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23846              : (TARGET_AVX512F))
   23847              :             return -1;
   23848              :           return 2667; /* knotqi */
   23849              : 
   23850              :         case 1:
   23851              :           if (!
   23852              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23853              : (TARGET_AVX512F))
   23854              :             return -1;
   23855              :           return 2668; /* knothi */
   23856              : 
   23857              :         case 2:
   23858              :           if (!(
   23859              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23860              : (TARGET_AVX512F) && 
   23861              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23862              : (TARGET_AVX512BW)))
   23863              :             return -1;
   23864              :           return 2669; /* knotsi */
   23865              : 
   23866              :         case 3:
   23867              :           if (!(
   23868              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23869              : (TARGET_AVX512F) && 
   23870              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23871              : (TARGET_AVX512BW)))
   23872              :             return -1;
   23873              :           return 2670; /* knotdi */
   23874              : 
   23875              :         default:
   23876              :           return -1;
   23877              :         }
   23878              : 
   23879              :     default:
   23880              :       return -1;
   23881              :     }
   23882              : }
   23883              : 
   23884              :  int
   23885              : recog_421 (rtx x1 ATTRIBUTE_UNUSED,
   23886              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23887              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23888              : {
   23889              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23890              :   rtx x2, x3, x4, x5, x6, x7, x8;
   23891              :   int res ATTRIBUTE_UNUSED;
   23892              :   x2 = XVECEXP (x1, 0, 0);
   23893              :   x3 = XEXP (x2, 1);
   23894              :   x4 = XEXP (x3, 0);
   23895              :   switch (GET_CODE (x4))
   23896              :     {
   23897              :     case CONST_INT:
   23898              :     case REG:
   23899              :     case SUBREG:
   23900              :     case MEM:
   23901              :       switch (pattern345 (x1))
   23902              :         {
   23903              :         case 0:
   23904              :           x5 = XEXP (x2, 0);
   23905              :           operands[0] = x5;
   23906              :           switch (pattern828 (x1))
   23907              :             {
   23908              :             case 0:
   23909              :               if ((
   23910              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23911              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   23912              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   23913              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   23914              :    && ix86_pre_reload_split ()) && 
   23915              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23916              : (!TARGET_64BIT)))
   23917              :                 return 1090; /* *ashldi3_doubleword_mask */
   23918              :               break;
   23919              : 
   23920              :             case 1:
   23921              :               if ((
   23922              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23923              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   23924              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   23925              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   23926              :    && ix86_pre_reload_split ()) && 
   23927              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23928              : (TARGET_64BIT)))
   23929              :                 return 1091; /* *ashlti3_doubleword_mask */
   23930              :               break;
   23931              : 
   23932              :             case 2:
   23933              :               if ((
   23934              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23935              : (TARGET_AVX512F) && 
   23936              : #line 2093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23937              : (TARGET_AVX512DQ)))
   23938              :                 return 2676; /* kashiftqi */
   23939              :               break;
   23940              : 
   23941              :             case 3:
   23942              :               if (
   23943              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23944              : (TARGET_AVX512F))
   23945              :                 return 2678; /* kashifthi */
   23946              :               break;
   23947              : 
   23948              :             case 4:
   23949              :               if ((
   23950              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23951              : (TARGET_AVX512F) && 
   23952              : #line 2093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23953              : (TARGET_AVX512BW)))
   23954              :                 return 2680; /* kashiftsi */
   23955              :               break;
   23956              : 
   23957              :             case 5:
   23958              :               if ((
   23959              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23960              : (TARGET_AVX512F) && 
   23961              : #line 2093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23962              : (TARGET_AVX512BW)))
   23963              :                 return 2682; /* kashiftdi */
   23964              :               break;
   23965              : 
   23966              :             default:
   23967              :               break;
   23968              :             }
   23969              :           x6 = XEXP (x3, 1);
   23970              :           operands[2] = x6;
   23971              :           switch (pattern829 (x1))
   23972              :             {
   23973              :             case 0:
   23974              :               operands[0] = x5;
   23975              :               switch (GET_MODE (operands[0]))
   23976              :                 {
   23977              :                 case E_DImode:
   23978              :                   if (GET_MODE (x3) == E_DImode)
   23979              :                     {
   23980              :                       if (register_operand (operands[0], E_DImode)
   23981              :                           && reg_or_pm1_operand (operands[1], E_DImode)
   23982              :                           && 
   23983              : #line 1230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23984              : (!TARGET_64BIT))
   23985              :                         return 1094; /* ashldi3_doubleword */
   23986              :                       if (nonimmediate_operand (operands[0], E_DImode)
   23987              :                           && nonimmediate_operand (operands[1], E_DImode)
   23988              :                           && (
   23989              : #line 16933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23990              : (ix86_binary_operator_ok (ASHIFT, DImode, operands, TARGET_APX_NDD)
   23991              :    && true) && 
   23992              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23993              : (TARGET_64BIT)))
   23994              :                         return 1129; /* *ashldi3_1 */
   23995              :                     }
   23996              :                   break;
   23997              : 
   23998              :                 case E_TImode:
   23999              :                   if (register_operand (operands[0], E_TImode)
   24000              :                       && GET_MODE (x3) == E_TImode
   24001              :                       && reg_or_pm1_operand (operands[1], E_TImode)
   24002              :                       && 
   24003              : #line 1231 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24004              : (TARGET_64BIT))
   24005              :                     return 1095; /* ashlti3_doubleword */
   24006              :                   break;
   24007              : 
   24008              :                 case E_SImode:
   24009              :                   if (nonimmediate_operand (operands[0], E_SImode)
   24010              :                       && GET_MODE (x3) == E_SImode
   24011              :                       && nonimmediate_operand (operands[1], E_SImode)
   24012              :                       && 
   24013              : #line 16933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24014              : (ix86_binary_operator_ok (ASHIFT, SImode, operands, TARGET_APX_NDD)
   24015              :    && true))
   24016              :                     return 1127; /* *ashlsi3_1 */
   24017              :                   break;
   24018              : 
   24019              :                 case E_HImode:
   24020              :                   if (nonimmediate_operand (operands[0], E_HImode)
   24021              :                       && GET_MODE (x3) == E_HImode
   24022              :                       && nonimmediate_operand (operands[1], E_HImode)
   24023              :                       && 
   24024              : #line 17118 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24025              : (ix86_binary_operator_ok (ASHIFT, HImode, operands, TARGET_APX_NDD)
   24026              :    && true))
   24027              :                     return 1143; /* *ashlhi3_1 */
   24028              :                   break;
   24029              : 
   24030              :                 case E_QImode:
   24031              :                   if (nonimmediate_operand (operands[0], E_QImode)
   24032              :                       && GET_MODE (x3) == E_QImode
   24033              :                       && nonimmediate_operand (operands[1], E_QImode)
   24034              :                       && 
   24035              : #line 17174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24036              : (ix86_binary_operator_ok (ASHIFT, QImode, operands, TARGET_APX_NDD)
   24037              :    && true))
   24038              :                     return 1145; /* *ashlqi3_1 */
   24039              :                   break;
   24040              : 
   24041              :                 case E_V2QImode:
   24042              :                   if (register_operand (operands[0], E_V2QImode)
   24043              :                       && GET_MODE (x3) == E_V2QImode
   24044              :                       && register_operand (operands[1], E_V2QImode)
   24045              :                       && 
   24046              : #line 4039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24047              : (!TARGET_PARTIAL_REG_STALL || optimize_size))
   24048              :                     return 2274; /* ashlv2qi3 */
   24049              :                   break;
   24050              : 
   24051              :                 default:
   24052              :                   break;
   24053              :                 }
   24054              :               break;
   24055              : 
   24056              :             case 1:
   24057              :               x7 = XEXP (x5, 0);
   24058              :               operands[0] = x7;
   24059              :               switch (pattern379 (x3))
   24060              :                 {
   24061              :                 case 0:
   24062              :                   if (
   24063              : #line 17241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24064              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24065              :                     return 1146; /* *ashlqi3_1_slp */
   24066              :                   break;
   24067              : 
   24068              :                 case 1:
   24069              :                   if (
   24070              : #line 17241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24071              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24072              :                     return 1147; /* *ashlhi3_1_slp */
   24073              :                   break;
   24074              : 
   24075              :                 default:
   24076              :                   break;
   24077              :                 }
   24078              :               break;
   24079              : 
   24080              :             default:
   24081              :               break;
   24082              :             }
   24083              :           if (GET_CODE (x6) != SUBREG
   24084              :               || maybe_ne (SUBREG_BYTE (x6), 0)
   24085              :               || GET_MODE (x6) != E_QImode)
   24086              :             return -1;
   24087              :           x8 = XVECEXP (x1, 0, 1);
   24088              :           if (pattern377 (x8) != 0)
   24089              :             return -1;
   24090              :           switch (pattern1455 (x2))
   24091              :             {
   24092              :             case 0:
   24093              :               if (!
   24094              : #line 18811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24095              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   24096              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   24097              :       == 4 * BITS_PER_UNIT - 1
   24098              :    && ix86_pre_reload_split ()))
   24099              :                 return -1;
   24100              :               return 1282; /* *ashlsi3_mask */
   24101              : 
   24102              :             case 1:
   24103              :               if (!(
   24104              : #line 18811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24105              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   24106              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24107              :       == 8 * BITS_PER_UNIT - 1
   24108              :    && ix86_pre_reload_split ()) && 
   24109              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24110              : (TARGET_64BIT)))
   24111              :                 return -1;
   24112              :               return 1285; /* *ashldi3_mask */
   24113              : 
   24114              :             case 2:
   24115              :               if (!
   24116              : #line 18859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24117              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   24118              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24119              :    && ix86_pre_reload_split ()))
   24120              :                 return -1;
   24121              :               return 1294; /* *ashlsi3_add */
   24122              : 
   24123              :             case 3:
   24124              :               if (!(
   24125              : #line 18859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24126              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   24127              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24128              :    && ix86_pre_reload_split ()) && 
   24129              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24130              : (TARGET_64BIT)))
   24131              :                 return -1;
   24132              :               return 1297; /* *ashldi3_add */
   24133              : 
   24134              :             case 4:
   24135              :               if (!
   24136              : #line 18905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24137              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   24138              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24139              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   24140              :           == 4 * BITS_PER_UNIT - 1)
   24141              :    && ix86_pre_reload_split ()))
   24142              :                 return -1;
   24143              :               return 1306; /* *ashlsi3_sub */
   24144              : 
   24145              :             case 5:
   24146              :               if (!(
   24147              : #line 18905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24148              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   24149              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24150              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24151              :           == 8 * BITS_PER_UNIT - 1)
   24152              :    && ix86_pre_reload_split ()) && 
   24153              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24154              : (TARGET_64BIT)))
   24155              :                 return -1;
   24156              :               return 1309; /* *ashldi3_sub */
   24157              : 
   24158              :             default:
   24159              :               return -1;
   24160              :             }
   24161              : 
   24162              :         case 1:
   24163              :           if (register_operand (operands[0], E_DImode)
   24164              :               && register_operand (operands[1], E_DImode)
   24165              :               && (
   24166              : #line 16267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24167              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   24168              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   24169              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   24170              :    && ix86_pre_reload_split ()) && 
   24171              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24172              : (!TARGET_64BIT)))
   24173              :             return 1092; /* *ashldi3_doubleword_mask_1 */
   24174              :           if (!nonimmediate_operand (operands[0], E_DImode)
   24175              :               || !nonimmediate_operand (operands[1], E_DImode)
   24176              :               || !(
   24177              : #line 18836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24178              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   24179              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24180              :       == 8 * BITS_PER_UNIT - 1
   24181              :    && ix86_pre_reload_split ()) && 
   24182              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24183              : (TARGET_64BIT)))
   24184              :             return -1;
   24185              :           return 1291; /* *ashldi3_mask_1 */
   24186              : 
   24187              :         case 2:
   24188              :           if (!(
   24189              : #line 16267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24190              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   24191              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   24192              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   24193              :    && ix86_pre_reload_split ()) && 
   24194              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24195              : (TARGET_64BIT)))
   24196              :             return -1;
   24197              :           return 1093; /* *ashlti3_doubleword_mask_1 */
   24198              : 
   24199              :         case 3:
   24200              :           if (!
   24201              : #line 18836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24202              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   24203              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   24204              :       == 4 * BITS_PER_UNIT - 1
   24205              :    && ix86_pre_reload_split ()))
   24206              :             return -1;
   24207              :           return 1288; /* *ashlsi3_mask_1 */
   24208              : 
   24209              :         case 4:
   24210              :           if (!
   24211              : #line 18883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24212              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   24213              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24214              :    && ix86_pre_reload_split ()))
   24215              :             return -1;
   24216              :           return 1300; /* *ashlsi3_add_1 */
   24217              : 
   24218              :         case 5:
   24219              :           if (!(
   24220              : #line 18883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24221              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   24222              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24223              :    && ix86_pre_reload_split ()) && 
   24224              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24225              : (TARGET_64BIT)))
   24226              :             return -1;
   24227              :           return 1303; /* *ashldi3_add_1 */
   24228              : 
   24229              :         case 6:
   24230              :           if (!
   24231              : #line 18938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24232              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   24233              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24234              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   24235              :           == 4 * BITS_PER_UNIT - 1)
   24236              :    && ix86_pre_reload_split ()))
   24237              :             return -1;
   24238              :           return 1312; /* *ashlsi3_sub_1 */
   24239              : 
   24240              :         case 7:
   24241              :           if (!(
   24242              : #line 18938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24243              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   24244              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24245              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24246              :           == 8 * BITS_PER_UNIT - 1)
   24247              :    && ix86_pre_reload_split ()) && 
   24248              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24249              : (TARGET_64BIT)))
   24250              :             return -1;
   24251              :           return 1315; /* *ashldi3_sub_1 */
   24252              : 
   24253              :         default:
   24254              :           return -1;
   24255              :         }
   24256              : 
   24257              :     case SIGN_EXTEND:
   24258              :       switch (pattern385 (x1))
   24259              :         {
   24260              :         case 0:
   24261              :           if (!(
   24262              : #line 16368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24263              : (INTVAL (operands[2]) >= 4 * BITS_PER_UNIT
   24264              :    && INTVAL (operands[2]) < 4 * BITS_PER_UNIT * 2) && 
   24265              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24266              : (!TARGET_64BIT)))
   24267              :             return -1;
   24268              :           return 1096; /* *ashldi3_doubleword_highpart */
   24269              : 
   24270              :         case 1:
   24271              :           if (!(
   24272              : #line 16368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24273              : (INTVAL (operands[2]) >= 8 * BITS_PER_UNIT
   24274              :    && INTVAL (operands[2]) < 8 * BITS_PER_UNIT * 2) && 
   24275              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24276              : (TARGET_64BIT)))
   24277              :             return -1;
   24278              :           return 1098; /* *ashlti3_doubleword_highpart */
   24279              : 
   24280              :         default:
   24281              :           return -1;
   24282              :         }
   24283              : 
   24284              :     case ZERO_EXTEND:
   24285              :       switch (pattern385 (x1))
   24286              :         {
   24287              :         case 0:
   24288              :           if (!(
   24289              : #line 16368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24290              : (INTVAL (operands[2]) >= 4 * BITS_PER_UNIT
   24291              :    && INTVAL (operands[2]) < 4 * BITS_PER_UNIT * 2) && 
   24292              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24293              : (!TARGET_64BIT)))
   24294              :             return -1;
   24295              :           return 1097; /* *ashldi3_doubleword_highpart */
   24296              : 
   24297              :         case 1:
   24298              :           if (!(
   24299              : #line 16368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24300              : (INTVAL (operands[2]) >= 8 * BITS_PER_UNIT
   24301              :    && INTVAL (operands[2]) < 8 * BITS_PER_UNIT * 2) && 
   24302              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24303              : (TARGET_64BIT)))
   24304              :             return -1;
   24305              :           return 1099; /* *ashlti3_doubleword_highpart */
   24306              : 
   24307              :         default:
   24308              :           return -1;
   24309              :         }
   24310              : 
   24311              :     default:
   24312              :       return -1;
   24313              :     }
   24314              : }
   24315              : 
   24316              :  int
   24317              : recog_438 (rtx x1 ATTRIBUTE_UNUSED,
   24318              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   24319              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   24320              : {
   24321              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24322              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   24323              :   rtx x10, x11, x12, x13, x14;
   24324              :   int res ATTRIBUTE_UNUSED;
   24325              :   if (pattern232 (x1) != 0)
   24326              :     return -1;
   24327              :   x2 = XVECEXP (x1, 0, 2);
   24328              :   if (GET_CODE (x2) != UNSPEC
   24329              :       || XVECLEN (x2, 0) != 1
   24330              :       || XINT (x2, 1) != 39)
   24331              :     return -1;
   24332              :   x3 = XVECEXP (x1, 0, 1);
   24333              :   x4 = XEXP (x3, 0);
   24334              :   operands[0] = x4;
   24335              :   x5 = XVECEXP (x2, 0, 0);
   24336              :   operands[2] = x5;
   24337              :   x6 = XVECEXP (x1, 0, 0);
   24338              :   x7 = XEXP (x6, 1);
   24339              :   x8 = XEXP (x7, 0);
   24340              :   switch (GET_CODE (x8))
   24341              :     {
   24342              :     case REG:
   24343              :     case SUBREG:
   24344              :     case MEM:
   24345              :       operands[1] = x8;
   24346              :       x9 = XEXP (x3, 1);
   24347              :       if (GET_CODE (x9) != CTZ)
   24348              :         return -1;
   24349              :       x10 = XEXP (x6, 0);
   24350              :       if (GET_MODE (x10) != E_CCCmode
   24351              :           || GET_MODE (x7) != E_CCCmode)
   24352              :         return -1;
   24353              :       x11 = XEXP (x9, 0);
   24354              :       if (!rtx_equal_p (x11, operands[1]))
   24355              :         return -1;
   24356              :       switch (GET_MODE (operands[1]))
   24357              :         {
   24358              :         case E_SImode:
   24359              :           if (pattern1719 (x9, 
   24360              : E_SImode) != 0
   24361              :               || !
   24362              : #line 22076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24363              : (TARGET_BMI))
   24364              :             return -1;
   24365              :           return 1546; /* *tzcntsi_1_falsedep */
   24366              : 
   24367              :         case E_DImode:
   24368              :           if (pattern1719 (x9, 
   24369              : E_DImode) != 0
   24370              :               || !(
   24371              : #line 22076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24372              : (TARGET_BMI) && 
   24373              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24374              : (TARGET_64BIT)))
   24375              :             return -1;
   24376              :           return 1547; /* *tzcntdi_1_falsedep */
   24377              : 
   24378              :         default:
   24379              :           return -1;
   24380              :         }
   24381              : 
   24382              :     case AND:
   24383              :       x9 = XEXP (x3, 1);
   24384              :       if (GET_CODE (x9) != AND)
   24385              :         return -1;
   24386              :       x12 = XEXP (x8, 0);
   24387              :       switch (GET_CODE (x12))
   24388              :         {
   24389              :         case NEG:
   24390              :           x11 = XEXP (x9, 0);
   24391              :           if (GET_CODE (x11) != NEG)
   24392              :             return -1;
   24393              :           switch (pattern1596 (x1))
   24394              :             {
   24395              :             case 0:
   24396              :               if (!
   24397              : #line 22899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24398              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
   24399              :                 return -1;
   24400              :               return 1612; /* *bmi_blsi_si_falsedep */
   24401              : 
   24402              :             case 1:
   24403              :               if (!(
   24404              : #line 22899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24405              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
   24406              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24407              : (TARGET_64BIT)))
   24408              :                 return -1;
   24409              :               return 1613; /* *bmi_blsi_di_falsedep */
   24410              : 
   24411              :             default:
   24412              :               return -1;
   24413              :             }
   24414              : 
   24415              :         case PLUS:
   24416              :           x13 = XEXP (x12, 1);
   24417              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   24418              :             return -1;
   24419              :           x11 = XEXP (x9, 0);
   24420              :           if (GET_CODE (x11) != PLUS)
   24421              :             return -1;
   24422              :           x14 = XEXP (x11, 1);
   24423              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   24424              :             return -1;
   24425              :           x10 = XEXP (x6, 0);
   24426              :           if (GET_MODE (x10) != E_CCZmode
   24427              :               || GET_MODE (x7) != E_CCZmode)
   24428              :             return -1;
   24429              :           switch (pattern1596 (x1))
   24430              :             {
   24431              :             case 0:
   24432              :               if (!
   24433              : #line 23047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24434              : (TARGET_BMI))
   24435              :                 return -1;
   24436              :               return 1624; /* *bmi_blsr_si_cmp_falsedep */
   24437              : 
   24438              :             case 1:
   24439              :               if (!(
   24440              : #line 23047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24441              : (TARGET_BMI) && 
   24442              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24443              : (TARGET_64BIT)))
   24444              :                 return -1;
   24445              :               return 1625; /* *bmi_blsr_di_cmp_falsedep */
   24446              : 
   24447              :             default:
   24448              :               return -1;
   24449              :             }
   24450              : 
   24451              :         default:
   24452              :           return -1;
   24453              :         }
   24454              : 
   24455              :     default:
   24456              :       return -1;
   24457              :     }
   24458              : }
   24459              : 
   24460              :  int
   24461              : recog_441 (rtx x1 ATTRIBUTE_UNUSED,
   24462              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   24463              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   24464              : {
   24465              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24466              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   24467              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   24468              :   rtx x18, x19;
   24469              :   int res ATTRIBUTE_UNUSED;
   24470              :   x2 = XVECEXP (x1, 0, 0);
   24471              :   switch (GET_CODE (x2))
   24472              :     {
   24473              :     case SET:
   24474              :       x3 = XEXP (x2, 1);
   24475              :       switch (GET_CODE (x3))
   24476              :         {
   24477              :         case UNSPEC:
   24478              :           return recog_434 (x1, insn, pnum_clobbers);
   24479              : 
   24480              :         case SIGN_EXTEND:
   24481              :           x4 = XVECEXP (x1, 0, 2);
   24482              :           if (GET_CODE (x4) != CLOBBER)
   24483              :             return -1;
   24484              :           x5 = XEXP (x2, 0);
   24485              :           operands[0] = x5;
   24486              :           x6 = XEXP (x3, 0);
   24487              :           switch (GET_CODE (x6))
   24488              :             {
   24489              :             case REG:
   24490              :             case SUBREG:
   24491              :               operands[1] = x6;
   24492              :               x7 = XVECEXP (x1, 0, 1);
   24493              :               if (pattern237 (x7, 
   24494              : E_CCmode, 
   24495              : 17) != 0)
   24496              :                 return -1;
   24497              :               x8 = XEXP (x4, 0);
   24498              :               operands[2] = x8;
   24499              :               switch (GET_MODE (operands[0]))
   24500              :                 {
   24501              :                 case E_DImode:
   24502              :                   if (pattern1459 (x3, 
   24503              : E_SImode, 
   24504              : E_DImode) != 0
   24505              :                       || !
   24506              : #line 5098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24507              : (!TARGET_64BIT))
   24508              :                     return -1;
   24509              :                   return 189; /* extendsidi2_1 */
   24510              : 
   24511              :                 case E_TImode:
   24512              :                   if (pattern1459 (x3, 
   24513              : E_DImode, 
   24514              : E_TImode) != 0
   24515              :                       || !
   24516              : #line 5106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24517              : (TARGET_64BIT))
   24518              :                     return -1;
   24519              :                   return 190; /* extendditi2 */
   24520              : 
   24521              :                 default:
   24522              :                   return -1;
   24523              :                 }
   24524              : 
   24525              :             case CTZ:
   24526              :               if (GET_MODE (x6) != E_SImode)
   24527              :                 return -1;
   24528              :               x7 = XVECEXP (x1, 0, 1);
   24529              :               if (GET_CODE (x7) != UNSPEC
   24530              :                   || XVECLEN (x7, 0) != 1
   24531              :                   || XINT (x7, 1) != 39)
   24532              :                 return -1;
   24533              :               x8 = XEXP (x4, 0);
   24534              :               if (GET_CODE (x8) != REG
   24535              :                   || REGNO (x8) != 17
   24536              :                   || GET_MODE (x8) != E_CCmode
   24537              :                   || !register_operand (operands[0], E_DImode)
   24538              :                   || GET_MODE (x3) != E_DImode)
   24539              :                 return -1;
   24540              :               x9 = XEXP (x6, 0);
   24541              :               operands[1] = x9;
   24542              :               if (!nonimmediate_operand (operands[1], E_SImode))
   24543              :                 return -1;
   24544              :               x10 = XVECEXP (x7, 0, 0);
   24545              :               operands[2] = x10;
   24546              :               if (!register_operand (operands[2], E_DImode)
   24547              :                   || !
   24548              : #line 22258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24549              : (TARGET_64BIT))
   24550              :                 return -1;
   24551              :               return 1558; /* *ctzsidi2_sext_falsedep */
   24552              : 
   24553              :             default:
   24554              :               return -1;
   24555              :             }
   24556              : 
   24557              :         case FIX:
   24558              :           x7 = XVECEXP (x1, 0, 1);
   24559              :           if (GET_CODE (x7) != USE)
   24560              :             return -1;
   24561              :           x4 = XVECEXP (x1, 0, 2);
   24562              :           if (GET_CODE (x4) != USE)
   24563              :             return -1;
   24564              :           x5 = XEXP (x2, 0);
   24565              :           operands[0] = x5;
   24566              :           x6 = XEXP (x3, 0);
   24567              :           operands[1] = x6;
   24568              :           if (!register_operand (operands[1], E_VOIDmode))
   24569              :             return -1;
   24570              :           switch (pattern841 (x1, pnum_clobbers))
   24571              :             {
   24572              :             case 0:
   24573              :               if (!
   24574              : #line 6169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24575              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   24576              :    && !TARGET_FISTTP
   24577              :    && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1])))))
   24578              :                 return -1;
   24579              :               *pnum_clobbers = 1;
   24580              :               return 243; /* fix_truncdi_i387 */
   24581              : 
   24582              :             case 1:
   24583              :               if (!
   24584              : #line 6182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24585              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   24586              :    && !TARGET_FISTTP
   24587              :    && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
   24588              :                 return -1;
   24589              :               return 244; /* fix_trunchi_i387 */
   24590              : 
   24591              :             case 2:
   24592              :               if (!
   24593              : #line 6182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24594              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   24595              :    && !TARGET_FISTTP
   24596              :    && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
   24597              :                 return -1;
   24598              :               return 245; /* fix_truncsi_i387 */
   24599              : 
   24600              :             default:
   24601              :               return -1;
   24602              :             }
   24603              : 
   24604              :         case UNSIGNED_FLOAT:
   24605              :           x7 = XVECEXP (x1, 0, 1);
   24606              :           if (GET_CODE (x7) != CLOBBER)
   24607              :             return -1;
   24608              :           x4 = XVECEXP (x1, 0, 2);
   24609              :           if (GET_CODE (x4) != CLOBBER)
   24610              :             return -1;
   24611              :           switch (pattern578 (x1))
   24612              :             {
   24613              :             case 0:
   24614              :               if (!
   24615              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24616              : (!TARGET_64BIT
   24617              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   24618              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   24619              :                 return -1;
   24620              :               return 269; /* floatunssisf2_i387_with_xmm */
   24621              : 
   24622              :             case 1:
   24623              :               if (!
   24624              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24625              : (!TARGET_64BIT
   24626              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   24627              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   24628              :                 return -1;
   24629              :               return 270; /* floatunssidf2_i387_with_xmm */
   24630              : 
   24631              :             case 2:
   24632              :               if (!
   24633              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24634              : (!TARGET_64BIT
   24635              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   24636              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   24637              :                 return -1;
   24638              :               return 271; /* floatunssixf2_i387_with_xmm */
   24639              : 
   24640              :             default:
   24641              :               return -1;
   24642              :             }
   24643              : 
   24644              :         case EQ:
   24645              :           return recog_440 (x1, insn, pnum_clobbers);
   24646              : 
   24647              :         case SMUL_HIGHPART:
   24648              :           switch (pattern224 (x1))
   24649              :             {
   24650              :             case 0:
   24651              :               if (!
   24652              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24653              : (!TARGET_64BIT))
   24654              :                 return -1;
   24655              :               return 661; /* smulsi3_highpart */
   24656              : 
   24657              :             case 1:
   24658              :               if (!
   24659              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24660              : (TARGET_64BIT))
   24661              :                 return -1;
   24662              :               return 663; /* smuldi3_highpart */
   24663              : 
   24664              :             default:
   24665              :               return -1;
   24666              :             }
   24667              : 
   24668              :         case UMUL_HIGHPART:
   24669              :           switch (pattern224 (x1))
   24670              :             {
   24671              :             case 0:
   24672              :               if (!
   24673              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24674              : (!TARGET_64BIT))
   24675              :                 return -1;
   24676              :               return 662; /* umulsi3_highpart */
   24677              : 
   24678              :             case 1:
   24679              :               if (!
   24680              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24681              : (TARGET_64BIT))
   24682              :                 return -1;
   24683              :               return 664; /* umuldi3_highpart */
   24684              : 
   24685              :             default:
   24686              :               return -1;
   24687              :             }
   24688              : 
   24689              :         case ZERO_EXTEND:
   24690              :           return recog_435 (x1, insn, pnum_clobbers);
   24691              : 
   24692              :         case TRUNCATE:
   24693              :           x6 = XEXP (x3, 0);
   24694              :           if (GET_CODE (x6) != LSHIFTRT)
   24695              :             return -1;
   24696              :           x9 = XEXP (x6, 0);
   24697              :           if (GET_CODE (x9) != MULT)
   24698              :             return -1;
   24699              :           x11 = XEXP (x6, 1);
   24700              :           if (GET_CODE (x11) != CONST_INT)
   24701              :             return -1;
   24702              :           x7 = XVECEXP (x1, 0, 1);
   24703              :           if (GET_CODE (x7) != CLOBBER
   24704              :               || pattern845 (x1) != 0)
   24705              :             return -1;
   24706              :           x12 = XEXP (x7, 0);
   24707              :           operands[3] = x12;
   24708              :           x13 = XEXP (x9, 0);
   24709              :           switch (GET_CODE (x13))
   24710              :             {
   24711              :             case SIGN_EXTEND:
   24712              :               switch (pattern1516 (x3, 
   24713              : SIGN_EXTEND))
   24714              :                 {
   24715              :                 case 0:
   24716              :                   if (!
   24717              : #line 12000 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24718              : (TARGET_64BIT
   24719              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   24720              :                     return -1;
   24721              :                   return 667; /* *smuldi3_highpart_1 */
   24722              : 
   24723              :                 case 1:
   24724              :                   if (!
   24725              : #line 12049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24726              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   24727              :                     return -1;
   24728              :                   return 671; /* *smulsi3_highpart_1 */
   24729              : 
   24730              :                 default:
   24731              :                   return -1;
   24732              :                 }
   24733              : 
   24734              :             case ZERO_EXTEND:
   24735              :               switch (pattern1516 (x3, 
   24736              : ZERO_EXTEND))
   24737              :                 {
   24738              :                 case 0:
   24739              :                   if (!
   24740              : #line 12000 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24741              : (TARGET_64BIT
   24742              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   24743              :                     return -1;
   24744              :                   return 668; /* *umuldi3_highpart_1 */
   24745              : 
   24746              :                 case 1:
   24747              :                   if (!
   24748              : #line 12049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24749              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   24750              :                     return -1;
   24751              :                   return 672; /* *umulsi3_highpart_1 */
   24752              : 
   24753              :                 default:
   24754              :                   return -1;
   24755              :                 }
   24756              : 
   24757              :             default:
   24758              :               return -1;
   24759              :             }
   24760              : 
   24761              :         case DIV:
   24762              :           switch (pattern225 (x1))
   24763              :             {
   24764              :             case 0:
   24765              :               switch (pattern1351 (x1, pnum_clobbers))
   24766              :                 {
   24767              :                 case 0:
   24768              :                   *pnum_clobbers = 1;
   24769              :                   return 673; /* divmodsi4_1 */
   24770              : 
   24771              :                 case 1:
   24772              :                   if (!
   24773              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24774              : (TARGET_64BIT))
   24775              :                     return -1;
   24776              :                   *pnum_clobbers = 1;
   24777              :                   return 674; /* divmoddi4_1 */
   24778              : 
   24779              :                 case 2:
   24780              :                   if (!
   24781              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24782              : (TARGET_HIMODE_MATH))
   24783              :                     return -1;
   24784              :                   return 681; /* *divmodhi4 */
   24785              : 
   24786              :                 case 3:
   24787              :                   return 682; /* *divmodsi4 */
   24788              : 
   24789              :                 case 4:
   24790              :                   if (!
   24791              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24792              : (TARGET_64BIT))
   24793              :                     return -1;
   24794              :                   return 683; /* *divmoddi4 */
   24795              : 
   24796              :                 case 5:
   24797              :                   if ((
   24798              : #line 12677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24799              : (TARGET_APX_NF) && 
   24800              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24801              : (TARGET_HIMODE_MATH)))
   24802              :                     return 695; /* *divmodhi4_noext_nf */
   24803              :                   if (pnum_clobbers == NULL
   24804              :                       || !
   24805              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24806              : (TARGET_HIMODE_MATH))
   24807              :                     return -1;
   24808              :                   *pnum_clobbers = 1;
   24809              :                   return 701; /* *divmodhi4_noext */
   24810              : 
   24811              :                 case 6:
   24812              :                   if (
   24813              : #line 12677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24814              : (TARGET_APX_NF))
   24815              :                     return 697; /* *divmodsi4_noext_nf */
   24816              :                   if (pnum_clobbers == NULL)
   24817              :                     return -1;
   24818              :                   *pnum_clobbers = 1;
   24819              :                   return 703; /* *divmodsi4_noext */
   24820              : 
   24821              :                 case 7:
   24822              :                   if ((
   24823              : #line 12677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24824              : (TARGET_APX_NF) && 
   24825              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24826              : (TARGET_64BIT)))
   24827              :                     return 699; /* *divmoddi4_noext_nf */
   24828              :                   if (pnum_clobbers == NULL
   24829              :                       || !
   24830              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24831              : (TARGET_64BIT))
   24832              :                     return -1;
   24833              :                   *pnum_clobbers = 1;
   24834              :                   return 705; /* *divmoddi4_noext */
   24835              : 
   24836              :                 default:
   24837              :                   return -1;
   24838              :                 }
   24839              : 
   24840              :             case 1:
   24841              :               if (!const_int_operand (operands[2], E_SImode))
   24842              :                 return -1;
   24843              :               x4 = XVECEXP (x1, 0, 2);
   24844              :               if (pattern963 (x4, 
   24845              : E_CCmode, 
   24846              : 17) != 0
   24847              :                   || pattern1512 (x1) != 0
   24848              :                   || !
   24849              : #line 12733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24850              : (!optimize_function_for_size_p (cfun)))
   24851              :                 return -1;
   24852              :               return 711; /* *divmodsi4_const */
   24853              : 
   24854              :             default:
   24855              :               return -1;
   24856              :             }
   24857              : 
   24858              :         case UDIV:
   24859              :           switch (pattern226 (x1))
   24860              :             {
   24861              :             case 0:
   24862              :               switch (pattern1351 (x1, pnum_clobbers))
   24863              :                 {
   24864              :                 case 0:
   24865              :                   *pnum_clobbers = 1;
   24866              :                   return 675; /* udivmodsi4_1 */
   24867              : 
   24868              :                 case 1:
   24869              :                   if (!
   24870              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24871              : (TARGET_64BIT))
   24872              :                     return -1;
   24873              :                   *pnum_clobbers = 1;
   24874              :                   return 676; /* udivmoddi4_1 */
   24875              : 
   24876              :                 case 2:
   24877              :                   if (!
   24878              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24879              : (TARGET_HIMODE_MATH))
   24880              :                     return -1;
   24881              :                   return 684; /* *udivmodhi4 */
   24882              : 
   24883              :                 case 3:
   24884              :                   return 685; /* *udivmodsi4 */
   24885              : 
   24886              :                 case 4:
   24887              :                   if (!
   24888              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24889              : (TARGET_64BIT))
   24890              :                     return -1;
   24891              :                   return 686; /* *udivmoddi4 */
   24892              : 
   24893              :                 case 5:
   24894              :                   if ((
   24895              : #line 12677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24896              : (TARGET_APX_NF) && 
   24897              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24898              : (TARGET_HIMODE_MATH)))
   24899              :                     return 696; /* *udivmodhi4_noext_nf */
   24900              :                   if (pnum_clobbers == NULL
   24901              :                       || !
   24902              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24903              : (TARGET_HIMODE_MATH))
   24904              :                     return -1;
   24905              :                   *pnum_clobbers = 1;
   24906              :                   return 702; /* *udivmodhi4_noext */
   24907              : 
   24908              :                 case 6:
   24909              :                   if (
   24910              : #line 12677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24911              : (TARGET_APX_NF))
   24912              :                     return 698; /* *udivmodsi4_noext_nf */
   24913              :                   if (pnum_clobbers == NULL)
   24914              :                     return -1;
   24915              :                   *pnum_clobbers = 1;
   24916              :                   return 704; /* *udivmodsi4_noext */
   24917              : 
   24918              :                 case 7:
   24919              :                   if ((
   24920              : #line 12677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24921              : (TARGET_APX_NF) && 
   24922              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24923              : (TARGET_64BIT)))
   24924              :                     return 700; /* *udivmoddi4_noext_nf */
   24925              :                   if (pnum_clobbers == NULL
   24926              :                       || !
   24927              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24928              : (TARGET_64BIT))
   24929              :                     return -1;
   24930              :                   *pnum_clobbers = 1;
   24931              :                   return 706; /* *udivmoddi4_noext */
   24932              : 
   24933              :                 default:
   24934              :                   return -1;
   24935              :                 }
   24936              : 
   24937              :             case 1:
   24938              :               x4 = XVECEXP (x1, 0, 2);
   24939              :               if (pattern963 (x4, 
   24940              : E_CCmode, 
   24941              : 17) != 0)
   24942              :                 return -1;
   24943              :               switch (GET_MODE (operands[0]))
   24944              :                 {
   24945              :                 case E_SImode:
   24946              :                   if (pattern1513 (x1, 
   24947              : E_SImode) != 0
   24948              :                       || !
   24949              : #line 12486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24950              : (IN_RANGE (exact_log2 (UINTVAL (operands[3])), 1, 31)))
   24951              :                     return -1;
   24952              :                   return 687; /* *udivmodsi4_pow2 */
   24953              : 
   24954              :                 case E_DImode:
   24955              :                   if (pattern1513 (x1, 
   24956              : E_DImode) != 0
   24957              :                       || !(
   24958              : #line 12486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24959              : (IN_RANGE (exact_log2 (UINTVAL (operands[3])), 1, 31)) && 
   24960              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24961              : (TARGET_64BIT)))
   24962              :                     return -1;
   24963              :                   return 688; /* *udivmoddi4_pow2 */
   24964              : 
   24965              :                 default:
   24966              :                   return -1;
   24967              :                 }
   24968              : 
   24969              :             default:
   24970              :               return -1;
   24971              :             }
   24972              : 
   24973              :         case ABS:
   24974              :           switch (pattern228 (x1))
   24975              :             {
   24976              :             case 0:
   24977              :               if (!
   24978              : #line 15811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24979              : (TARGET_AVX512FP16))
   24980              :                 return -1;
   24981              :               return 1054; /* *abshf2_1 */
   24982              : 
   24983              :             case 1:
   24984              :               if (!
   24985              : #line 15827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24986              : (TARGET_80387 || (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   24987              :                 return -1;
   24988              :               return 1056; /* *abssf2_1 */
   24989              : 
   24990              :             case 2:
   24991              :               if (!
   24992              : #line 15827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24993              : (TARGET_80387 || (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   24994              :                 return -1;
   24995              :               return 1058; /* *absdf2_1 */
   24996              : 
   24997              :             default:
   24998              :               return -1;
   24999              :             }
   25000              : 
   25001              :         case NEG:
   25002              :           switch (pattern228 (x1))
   25003              :             {
   25004              :             case 0:
   25005              :               if (!
   25006              : #line 15811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25007              : (TARGET_AVX512FP16))
   25008              :                 return -1;
   25009              :               return 1055; /* *neghf2_1 */
   25010              : 
   25011              :             case 1:
   25012              :               if (!
   25013              : #line 15827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25014              : (TARGET_80387 || (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   25015              :                 return -1;
   25016              :               return 1057; /* *negsf2_1 */
   25017              : 
   25018              :             case 2:
   25019              :               if (!
   25020              : #line 15827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25021              : (TARGET_80387 || (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   25022              :                 return -1;
   25023              :               return 1059; /* *negdf2_1 */
   25024              : 
   25025              :             default:
   25026              :               return -1;
   25027              :             }
   25028              : 
   25029              :         case ROTATE:
   25030              :           switch (pattern230 (x1))
   25031              :             {
   25032              :             case 0:
   25033              :               if (!
   25034              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25035              : (!TARGET_64BIT))
   25036              :                 return -1;
   25037              :               return 1370; /* ix86_rotldi3_doubleword */
   25038              : 
   25039              :             case 1:
   25040              :               if (!
   25041              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25042              : (TARGET_64BIT))
   25043              :                 return -1;
   25044              :               return 1371; /* ix86_rotlti3_doubleword */
   25045              : 
   25046              :             default:
   25047              :               return -1;
   25048              :             }
   25049              : 
   25050              :         case ROTATERT:
   25051              :           switch (pattern230 (x1))
   25052              :             {
   25053              :             case 0:
   25054              :               if (!
   25055              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25056              : (!TARGET_64BIT))
   25057              :                 return -1;
   25058              :               return 1372; /* ix86_rotrdi3_doubleword */
   25059              : 
   25060              :             case 1:
   25061              :               if (!
   25062              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25063              : (TARGET_64BIT))
   25064              :                 return -1;
   25065              :               return 1373; /* ix86_rotrti3_doubleword */
   25066              : 
   25067              :             default:
   25068              :               return -1;
   25069              :             }
   25070              : 
   25071              :         case CALL:
   25072              :           return recog_437 (x1, insn, pnum_clobbers);
   25073              : 
   25074              :         case PLUS:
   25075              :           x4 = XVECEXP (x1, 0, 2);
   25076              :           if (pattern231 (x4) != 0)
   25077              :             return -1;
   25078              :           x6 = XEXP (x3, 0);
   25079              :           if (GET_CODE (x6) == REG
   25080              :               && REGNO (x6) == 6)
   25081              :             {
   25082              :               x14 = XEXP (x3, 1);
   25083              :               if (GET_CODE (x14) == CONST_INT)
   25084              :                 {
   25085              :                   x5 = XEXP (x2, 0);
   25086              :                   if (GET_CODE (x5) == REG
   25087              :                       && REGNO (x5) == 7)
   25088              :                     {
   25089              :                       x7 = XVECEXP (x1, 0, 1);
   25090              :                       if (pattern728 (x7, 
   25091              : 6, 
   25092              : MEM) == 0)
   25093              :                         {
   25094              :                           switch (XWINT (x14, 0))
   25095              :                             {
   25096              :                             case 4L:
   25097              :                               if (pattern1718 (x1, 
   25098              : E_SImode) == 0
   25099              :                                   && 
   25100              : #line 21913 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25101              : (!TARGET_64BIT))
   25102              :                                 return 1540; /* *leave */
   25103              :                               break;
   25104              : 
   25105              :                             case 8L:
   25106              :                               if (pattern1718 (x1, 
   25107              : E_DImode) == 0
   25108              :                                   && 
   25109              : #line 21921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25110              : (TARGET_64BIT))
   25111              :                                 return 1541; /* *leave_rex64 */
   25112              :                               break;
   25113              : 
   25114              :                             default:
   25115              :                               break;
   25116              :                             }
   25117              :                         }
   25118              :                     }
   25119              :                 }
   25120              :             }
   25121              :           x7 = XVECEXP (x1, 0, 1);
   25122              :           if (GET_CODE (x7) != CLOBBER)
   25123              :             return -1;
   25124              :           x12 = XEXP (x7, 0);
   25125              :           if (GET_CODE (x12) != REG
   25126              :               || REGNO (x12) != 17
   25127              :               || GET_MODE (x12) != E_CCmode)
   25128              :             return -1;
   25129              :           x5 = XEXP (x2, 0);
   25130              :           operands[0] = x5;
   25131              :           operands[1] = x6;
   25132              :           x14 = XEXP (x3, 1);
   25133              :           operands[2] = x14;
   25134              :           switch (GET_MODE (operands[0]))
   25135              :             {
   25136              :             case E_SImode:
   25137              :               if (pattern1442 (x3, 
   25138              : E_SImode) != 0
   25139              :                   || !
   25140              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25141              : (Pmode == SImode))
   25142              :                 return -1;
   25143              :               return 1911; /* pro_epilogue_adjust_stack_add_si */
   25144              : 
   25145              :             case E_DImode:
   25146              :               if (pattern1442 (x3, 
   25147              : E_DImode) != 0
   25148              :                   || !
   25149              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25150              : (Pmode == DImode))
   25151              :                 return -1;
   25152              :               return 1912; /* pro_epilogue_adjust_stack_add_di */
   25153              : 
   25154              :             default:
   25155              :               return -1;
   25156              :             }
   25157              : 
   25158              :         case FFS:
   25159              :           if (GET_MODE (x3) != E_SImode)
   25160              :             return -1;
   25161              :           x7 = XVECEXP (x1, 0, 1);
   25162              :           if (GET_CODE (x7) != CLOBBER)
   25163              :             return -1;
   25164              :           x4 = XVECEXP (x1, 0, 2);
   25165              :           if (GET_CODE (x4) != CLOBBER
   25166              :               || pattern727 (x1) != 0
   25167              :               || !
   25168              : #line 22016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25169              : (!TARGET_CMOVE))
   25170              :             return -1;
   25171              :           return 1543; /* ffssi2_no_cmove */
   25172              : 
   25173              :         case COMPARE:
   25174              :           return recog_438 (x1, insn, pnum_clobbers);
   25175              : 
   25176              :         case CTZ:
   25177              :           switch (pattern235 (x1))
   25178              :             {
   25179              :             case 0:
   25180              :               return 1552; /* *ctzsi2_falsedep */
   25181              : 
   25182              :             case 1:
   25183              :               if (!
   25184              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25185              : (TARGET_64BIT))
   25186              :                 return -1;
   25187              :               return 1553; /* *ctzdi2_falsedep */
   25188              : 
   25189              :             default:
   25190              :               return -1;
   25191              :             }
   25192              : 
   25193              :         case AND:
   25194              :           if (GET_MODE (x3) != E_DImode)
   25195              :             return -1;
   25196              :           x6 = XEXP (x3, 0);
   25197              :           if (GET_CODE (x6) != SUBREG
   25198              :               || maybe_ne (SUBREG_BYTE (x6), 0)
   25199              :               || GET_MODE (x6) != E_DImode)
   25200              :             return -1;
   25201              :           x14 = XEXP (x3, 1);
   25202              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   25203              :             return -1;
   25204              :           x7 = XVECEXP (x1, 0, 1);
   25205              :           if (GET_CODE (x7) != UNSPEC
   25206              :               || XVECLEN (x7, 0) != 1
   25207              :               || XINT (x7, 1) != 39
   25208              :               || pattern845 (x1) != 0
   25209              :               || !register_operand (operands[0], E_DImode))
   25210              :             return -1;
   25211              :           x9 = XEXP (x6, 0);
   25212              :           if (GET_MODE (x9) != E_SImode)
   25213              :             return -1;
   25214              :           x10 = XVECEXP (x7, 0, 0);
   25215              :           operands[2] = x10;
   25216              :           if (!register_operand (operands[2], E_DImode))
   25217              :             return -1;
   25218              :           switch (GET_CODE (x9))
   25219              :             {
   25220              :             case CTZ:
   25221              :               x13 = XEXP (x9, 0);
   25222              :               operands[1] = x13;
   25223              :               if (!nonimmediate_operand (operands[1], E_SImode)
   25224              :                   || !
   25225              : #line 22204 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25226              : (TARGET_BMI && TARGET_64BIT))
   25227              :                 return -1;
   25228              :               return 1555; /* *ctzsi2_zext_falsedep */
   25229              : 
   25230              :             case CLZ:
   25231              :               x13 = XEXP (x9, 0);
   25232              :               operands[1] = x13;
   25233              :               switch (GET_MODE (operands[1]))
   25234              :                 {
   25235              :                 case E_SImode:
   25236              :                   if (!nonimmediate_operand (operands[1], E_SImode)
   25237              :                       || !
   25238              : #line 22650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25239              : (TARGET_LZCNT))
   25240              :                     return -1;
   25241              :                   return 1579; /* *clzsi2_lzcnt_zext_falsedep */
   25242              : 
   25243              :                 case E_DImode:
   25244              :                   if (!nonimmediate_operand (operands[1], E_DImode)
   25245              :                       || !(
   25246              : #line 22650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25247              : (TARGET_LZCNT) && 
   25248              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25249              : (TARGET_64BIT)))
   25250              :                     return -1;
   25251              :                   return 1580; /* *clzsi2_lzcnt_zext_falsedep */
   25252              : 
   25253              :                 default:
   25254              :                   return -1;
   25255              :                 }
   25256              : 
   25257              :             case POPCOUNT:
   25258              :               x13 = XEXP (x9, 0);
   25259              :               operands[1] = x13;
   25260              :               if (!nonimmediate_operand (operands[1], E_SImode)
   25261              :                   || !
   25262              : #line 23483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25263              : (TARGET_POPCNT && TARGET_64BIT))
   25264              :                 return -1;
   25265              :               return 1671; /* *popcountsi2_zext_falsedep */
   25266              : 
   25267              :             default:
   25268              :               return -1;
   25269              :             }
   25270              : 
   25271              :         case CLZ:
   25272              :           switch (pattern235 (x1))
   25273              :             {
   25274              :             case 0:
   25275              :               if (!
   25276              : #line 22607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25277              : (TARGET_LZCNT))
   25278              :                 return -1;
   25279              :               return 1576; /* *clzsi2_lzcnt_falsedep */
   25280              : 
   25281              :             case 1:
   25282              :               if (!(
   25283              : #line 22607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25284              : (TARGET_LZCNT) && 
   25285              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25286              : (TARGET_64BIT)))
   25287              :                 return -1;
   25288              :               return 1577; /* *clzdi2_lzcnt_falsedep */
   25289              : 
   25290              :             default:
   25291              :               return -1;
   25292              :             }
   25293              : 
   25294              :         case XOR:
   25295              :           x6 = XEXP (x3, 0);
   25296              :           if (GET_CODE (x6) != PLUS)
   25297              :             return -1;
   25298              :           x11 = XEXP (x6, 1);
   25299              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   25300              :             return -1;
   25301              :           x7 = XVECEXP (x1, 0, 1);
   25302              :           if (pattern237 (x7, 
   25303              : E_CCmode, 
   25304              : 17) != 0)
   25305              :             return -1;
   25306              :           x4 = XVECEXP (x1, 0, 2);
   25307              :           if (GET_CODE (x4) != UNSPEC
   25308              :               || XVECLEN (x4, 0) != 1
   25309              :               || XINT (x4, 1) != 39)
   25310              :             return -1;
   25311              :           x5 = XEXP (x2, 0);
   25312              :           operands[0] = x5;
   25313              :           x9 = XEXP (x6, 0);
   25314              :           operands[1] = x9;
   25315              :           x15 = XVECEXP (x4, 0, 0);
   25316              :           operands[2] = x15;
   25317              :           x14 = XEXP (x3, 1);
   25318              :           if (!rtx_equal_p (x14, operands[1]))
   25319              :             return -1;
   25320              :           switch (GET_MODE (operands[0]))
   25321              :             {
   25322              :             case E_SImode:
   25323              :               if (pattern1657 (x3, 
   25324              : E_SImode) != 0
   25325              :                   || !
   25326              : #line 22958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25327              : (TARGET_BMI))
   25328              :                 return -1;
   25329              :               return 1618; /* *bmi_blsmsk_si_falsedep */
   25330              : 
   25331              :             case E_DImode:
   25332              :               if (pattern1657 (x3, 
   25333              : E_DImode) != 0
   25334              :                   || !(
   25335              : #line 22958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25336              : (TARGET_BMI) && 
   25337              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25338              : (TARGET_64BIT)))
   25339              :                 return -1;
   25340              :               return 1619; /* *bmi_blsmsk_di_falsedep */
   25341              : 
   25342              :             default:
   25343              :               return -1;
   25344              :             }
   25345              : 
   25346              :         case POPCOUNT:
   25347              :           switch (pattern235 (x1))
   25348              :             {
   25349              :             case 0:
   25350              :               if (!
   25351              : #line 23428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25352              : (TARGET_POPCNT))
   25353              :                 return -1;
   25354              :               return 1668; /* *popcountsi2_falsedep */
   25355              : 
   25356              :             case 1:
   25357              :               if (!(
   25358              : #line 23428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25359              : (TARGET_POPCNT) && 
   25360              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25361              : (TARGET_64BIT)))
   25362              :                 return -1;
   25363              :               return 1669; /* *popcountdi2_falsedep */
   25364              : 
   25365              :             default:
   25366              :               return -1;
   25367              :             }
   25368              : 
   25369              :         case MEM:
   25370              :           return recog_439 (x1, insn, pnum_clobbers);
   25371              : 
   25372              :         case REG:
   25373              :         case SUBREG:
   25374              :           operands[2] = x3;
   25375              :           if (pattern236 (x1) != 0)
   25376              :             return -1;
   25377              :           x4 = XVECEXP (x1, 0, 2);
   25378              :           if (pattern387 (x4, 
   25379              : 37) != 0)
   25380              :             return -1;
   25381              :           x5 = XEXP (x2, 0);
   25382              :           x16 = XEXP (x5, 0);
   25383              :           operands[1] = x16;
   25384              :           x7 = XVECEXP (x1, 0, 1);
   25385              :           x12 = XEXP (x7, 0);
   25386              :           operands[0] = x12;
   25387              :           x17 = XEXP (x7, 1);
   25388              :           x18 = XEXP (x17, 0);
   25389              :           if (!rtx_equal_p (x18, operands[1]))
   25390              :             return -1;
   25391              :           x19 = XEXP (x17, 1);
   25392              :           switch (XWINT (x19, 0))
   25393              :             {
   25394              :             case 8L:
   25395              :               switch (pattern1597 (x1, 
   25396              : E_DImode))
   25397              :                 {
   25398              :                 case 0:
   25399              :                   if (!(
   25400              : #line 26981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25401              : (TARGET_64BIT
   25402              :    && !(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25403              :    && ADDR_SPACE_GENERIC_P
   25404              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25405              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25406              : (Pmode == SImode)))
   25407              :                     return -1;
   25408              :                   return 1813; /* *strsetdi_rex_1 */
   25409              : 
   25410              :                 case 1:
   25411              :                   if (!(
   25412              : #line 26981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25413              : (TARGET_64BIT
   25414              :    && !(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25415              :    && ADDR_SPACE_GENERIC_P
   25416              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25417              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25418              : (Pmode == DImode)))
   25419              :                     return -1;
   25420              :                   return 1814; /* *strsetdi_rex_1 */
   25421              : 
   25422              :                 default:
   25423              :                   return -1;
   25424              :                 }
   25425              : 
   25426              :             case 4L:
   25427              :               switch (pattern1597 (x1, 
   25428              : E_SImode))
   25429              :                 {
   25430              :                 case 0:
   25431              :                   if (!(
   25432              : #line 26997 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25433              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25434              :    && ADDR_SPACE_GENERIC_P
   25435              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25436              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25437              : (Pmode == SImode)))
   25438              :                     return -1;
   25439              :                   return 1815; /* *strsetsi_1 */
   25440              : 
   25441              :                 case 1:
   25442              :                   if (!(
   25443              : #line 26997 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25444              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25445              :    && ADDR_SPACE_GENERIC_P
   25446              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25447              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25448              : (Pmode == DImode)))
   25449              :                     return -1;
   25450              :                   return 1816; /* *strsetsi_1 */
   25451              : 
   25452              :                 default:
   25453              :                   return -1;
   25454              :                 }
   25455              : 
   25456              :             case 2L:
   25457              :               switch (pattern1597 (x1, 
   25458              : E_HImode))
   25459              :                 {
   25460              :                 case 0:
   25461              :                   if (!(
   25462              : #line 27012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25463              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25464              :    && ADDR_SPACE_GENERIC_P
   25465              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25466              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25467              : (Pmode == SImode)))
   25468              :                     return -1;
   25469              :                   return 1817; /* *strsethi_1 */
   25470              : 
   25471              :                 case 1:
   25472              :                   if (!(
   25473              : #line 27012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25474              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25475              :    && ADDR_SPACE_GENERIC_P
   25476              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25477              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25478              : (Pmode == DImode)))
   25479              :                     return -1;
   25480              :                   return 1818; /* *strsethi_1 */
   25481              : 
   25482              :                 default:
   25483              :                   return -1;
   25484              :                 }
   25485              : 
   25486              :             case 1L:
   25487              :               switch (pattern1597 (x1, 
   25488              : E_QImode))
   25489              :                 {
   25490              :                 case 0:
   25491              :                   if (!(
   25492              : #line 27027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25493              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25494              :    && ADDR_SPACE_GENERIC_P
   25495              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25496              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25497              : (Pmode == SImode)))
   25498              :                     return -1;
   25499              :                   return 1819; /* *strsetqi_1 */
   25500              : 
   25501              :                 case 1:
   25502              :                   if (!(
   25503              : #line 27027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25504              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   25505              :    && ADDR_SPACE_GENERIC_P
   25506              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   25507              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25508              : (Pmode == DImode)))
   25509              :                     return -1;
   25510              :                   return 1820; /* *strsetqi_1 */
   25511              : 
   25512              :                 default:
   25513              :                   return -1;
   25514              :                 }
   25515              : 
   25516              :             default:
   25517              :               return -1;
   25518              :             }
   25519              : 
   25520              :         case MINUS:
   25521              :           x7 = XVECEXP (x1, 0, 1);
   25522              :           if (pattern237 (x7, 
   25523              : E_CCmode, 
   25524              : 17) != 0)
   25525              :             return -1;
   25526              :           x4 = XVECEXP (x1, 0, 2);
   25527              :           if (pattern231 (x4) != 0)
   25528              :             return -1;
   25529              :           x5 = XEXP (x2, 0);
   25530              :           operands[0] = x5;
   25531              :           x6 = XEXP (x3, 0);
   25532              :           operands[1] = x6;
   25533              :           x14 = XEXP (x3, 1);
   25534              :           operands[2] = x14;
   25535              :           switch (GET_MODE (operands[0]))
   25536              :             {
   25537              :             case E_SImode:
   25538              :               if (pattern572 (x3, 
   25539              : E_SImode) != 0
   25540              :                   || !
   25541              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25542              : (Pmode == SImode))
   25543              :                 return -1;
   25544              :               return 1915; /* pro_epilogue_adjust_stack_sub_si */
   25545              : 
   25546              :             case E_DImode:
   25547              :               if (pattern572 (x3, 
   25548              : E_DImode) != 0
   25549              :                   || !
   25550              : #line 1433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25551              : (Pmode == DImode))
   25552              :                 return -1;
   25553              :               return 1916; /* pro_epilogue_adjust_stack_sub_di */
   25554              : 
   25555              :             default:
   25556              :               return -1;
   25557              :             }
   25558              : 
   25559              :         case UNSPEC_VOLATILE:
   25560              :           return recog_436 (x1, insn, pnum_clobbers);
   25561              : 
   25562              :         default:
   25563              :           return -1;
   25564              :         }
   25565              : 
   25566              :     case CALL:
   25567              :       x5 = XEXP (x2, 0);
   25568              :       if (GET_CODE (x5) != MEM
   25569              :           || GET_MODE (x5) != E_QImode
   25570              :           || pattern388 (x1) != 0)
   25571              :         return -1;
   25572              :       x16 = XEXP (x5, 0);
   25573              :       operands[0] = x16;
   25574              :       if (!memory_operand (operands[0], E_SImode))
   25575              :         return -1;
   25576              :       x3 = XEXP (x2, 1);
   25577              :       operands[1] = x3;
   25578              :       x7 = XVECEXP (x1, 0, 1);
   25579              :       x17 = XEXP (x7, 1);
   25580              :       x19 = XEXP (x17, 1);
   25581              :       operands[2] = x19;
   25582              :       if (!immediate_operand (operands[2], E_SImode)
   25583              :           || !
   25584              : #line 21295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25585              : (!TARGET_64BIT && !TARGET_INDIRECT_BRANCH_REGISTER))
   25586              :         return -1;
   25587              :       return 1510; /* *sibcall_pop_memory */
   25588              : 
   25589              :     default:
   25590              :       return -1;
   25591              :     }
   25592              : }
   25593              : 
   25594              :  rtx_insn *
   25595              : split_22 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25596              : {
   25597              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25598              :   rtx x2, x3, x4, x5, x6, x7, x8;
   25599              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25600              :   x2 = XVECEXP (x1, 0, 0);
   25601              :   x3 = XEXP (x2, 1);
   25602              :   x4 = XEXP (x3, 0);
   25603              :   x5 = XEXP (x4, 0);
   25604              :   switch (GET_CODE (x5))
   25605              :     {
   25606              :     case REG:
   25607              :     case SUBREG:
   25608              :       operands[1] = x5;
   25609              :       if (!register_operand (operands[1], E_SImode))
   25610              :         return NULL;
   25611              :       x6 = XEXP (x2, 0);
   25612              :       operands[0] = x6;
   25613              :       if (!register_operand (operands[0], E_DImode)
   25614              :           || GET_MODE (x3) != E_DImode
   25615              :           || GET_MODE (x4) != E_DImode)
   25616              :         return NULL;
   25617              :       x7 = XEXP (x3, 1);
   25618              :       operands[2] = x7;
   25619              :       if (!x86_64_zext_immediate_operand (operands[2], E_DImode)
   25620              :           || !
   25621              : #line 13434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25622              : (TARGET_64BIT))
   25623              :         return NULL;
   25624              :       return gen_split_292 (insn, operands);
   25625              : 
   25626              :     case ASHIFTRT:
   25627              :     case LSHIFTRT:
   25628              :     case SIGN_EXTRACT:
   25629              :     case ZERO_EXTRACT:
   25630              :       operands[3] = x5;
   25631              :       if (GET_MODE (x3) != E_QImode
   25632              :           || GET_MODE (x4) != E_QImode)
   25633              :         return NULL;
   25634              :       x8 = XEXP (x5, 0);
   25635              :       if (!int248_register_operand (x8, E_VOIDmode))
   25636              :         return NULL;
   25637              :       operands[2] = x8;
   25638              :       switch (pattern1658 (x2))
   25639              :         {
   25640              :         case 0:
   25641              :           if ((
   25642              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25643              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25644              : #line 13630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25645              : ( reload_completed
   25646              :    && !rtx_equal_p (operands[0], operands[1]))))
   25647              :             return gen_split_299 (insn, operands);
   25648              :           break;
   25649              : 
   25650              :         case 1:
   25651              :           if ((
   25652              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25653              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25654              : #line 13630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25655              : ( reload_completed
   25656              :    && !rtx_equal_p (operands[0], operands[1]))))
   25657              :             return gen_split_302 (insn, operands);
   25658              :           break;
   25659              : 
   25660              :         case 2:
   25661              :           if (((
   25662              : #line 13626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25663              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25664              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25665              : (TARGET_64BIT)) && 
   25666              : #line 13630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25667              : ( reload_completed
   25668              :    && !rtx_equal_p (operands[0], operands[1]))))
   25669              :             return gen_split_305 (insn, operands);
   25670              :           break;
   25671              : 
   25672              :         default:
   25673              :           break;
   25674              :         }
   25675              :       operands[1] = x8;
   25676              :       switch (pattern1659 (x2))
   25677              :         {
   25678              :         case 0:
   25679              :           if (!(
   25680              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25681              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25682              : #line 13657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25683              : ( reload_completed)))
   25684              :             return NULL;
   25685              :           return gen_split_308 (insn, operands);
   25686              : 
   25687              :         case 1:
   25688              :           if (!(
   25689              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25690              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25691              : #line 13657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25692              : ( reload_completed)))
   25693              :             return NULL;
   25694              :           return gen_split_311 (insn, operands);
   25695              : 
   25696              :         case 2:
   25697              :           if (!((
   25698              : #line 13655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25699              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25700              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25701              : (TARGET_64BIT)) && 
   25702              : #line 13657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25703              : ( reload_completed)))
   25704              :             return NULL;
   25705              :           return gen_split_314 (insn, operands);
   25706              : 
   25707              :         case 3:
   25708              :           if (!
   25709              : #line 13909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25710              : ( reload_completed))
   25711              :             return NULL;
   25712              :           return gen_split_328 (insn, operands);
   25713              : 
   25714              :         case 4:
   25715              :           if (!
   25716              : #line 13909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25717              : ( reload_completed))
   25718              :             return NULL;
   25719              :           return gen_split_331 (insn, operands);
   25720              : 
   25721              :         case 5:
   25722              :           if (!(
   25723              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25724              : (TARGET_64BIT) && 
   25725              : #line 13909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25726              : ( reload_completed)))
   25727              :             return NULL;
   25728              :           return gen_split_334 (insn, operands);
   25729              : 
   25730              :         default:
   25731              :           return NULL;
   25732              :         }
   25733              : 
   25734              :     case ROTATE:
   25735              :       if (GET_MODE (x5) != E_SImode)
   25736              :         return NULL;
   25737              :       x8 = XEXP (x5, 0);
   25738              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
   25739              :         return NULL;
   25740              :       switch (pattern1451 (x2))
   25741              :         {
   25742              :         case 0:
   25743              :           if (!(
   25744              : #line 19942 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25745              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25746              : #line 19944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25747              : ( 1)))
   25748              :             return NULL;
   25749              :           return gen_split_814 (insn, operands);
   25750              : 
   25751              :         case 1:
   25752              :           if (!(
   25753              : #line 19942 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25754              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25755              : #line 19944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25756              : ( 1)))
   25757              :             return NULL;
   25758              :           return gen_split_815 (insn, operands);
   25759              : 
   25760              :         default:
   25761              :           return NULL;
   25762              :         }
   25763              : 
   25764              :     default:
   25765              :       return NULL;
   25766              :     }
   25767              : }
   25768              : 
   25769              :  rtx_insn *
   25770              : split_28 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25771              : {
   25772              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25773              :   rtx x2, x3, x4, x5, x6, x7;
   25774              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25775              :   x2 = XVECEXP (x1, 0, 0);
   25776              :   x3 = XEXP (x2, 1);
   25777              :   if (maybe_ne (SUBREG_BYTE (x3), 0))
   25778              :     return NULL;
   25779              :   x4 = XVECEXP (x1, 0, 1);
   25780              :   if (pattern237 (x4, 
   25781              : E_CCmode, 
   25782              : 17) != 0)
   25783              :     return NULL;
   25784              :   switch (pattern1057 (x2))
   25785              :     {
   25786              :     case 0:
   25787              :       x5 = XEXP (x3, 0);
   25788              :       x6 = XEXP (x5, 1);
   25789              :       operands[2] = x6;
   25790              :       if (general_operand (operands[2], E_QImode))
   25791              :         {
   25792              :           switch (pattern1055 (x2))
   25793              :             {
   25794              :             case 0:
   25795              :               if (
   25796              : #line 7784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25797              : (reload_completed
   25798              :    && !rtx_equal_p (operands[0], operands[1])))
   25799              :                 return gen_split_143 (insn, operands);
   25800              :               break;
   25801              : 
   25802              :             case 1:
   25803              :               if (
   25804              : #line 7784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25805              : (reload_completed
   25806              :    && !rtx_equal_p (operands[0], operands[1])))
   25807              :                 return gen_split_144 (insn, operands);
   25808              :               break;
   25809              : 
   25810              :             case 2:
   25811              :               if ((
   25812              : #line 7784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25813              : (reload_completed
   25814              :    && !rtx_equal_p (operands[0], operands[1])) && 
   25815              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25816              : (TARGET_64BIT)))
   25817              :                 return gen_split_145 (insn, operands);
   25818              :               break;
   25819              : 
   25820              :             default:
   25821              :               break;
   25822              :             }
   25823              :         }
   25824              :       if (GET_CODE (x6) != SUBREG)
   25825              :         return NULL;
   25826              :       switch (pattern1824 (x2))
   25827              :         {
   25828              :         case 0:
   25829              :           if (!
   25830              : #line 7827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25831              : (reload_completed
   25832              :    && !(rtx_equal_p (operands[0], operands[1])
   25833              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   25834              :             return NULL;
   25835              :           return gen_split_146 (insn, operands);
   25836              : 
   25837              :         case 1:
   25838              :           if (!
   25839              : #line 7827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25840              : (reload_completed
   25841              :    && !(rtx_equal_p (operands[0], operands[1])
   25842              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   25843              :             return NULL;
   25844              :           return gen_split_148 (insn, operands);
   25845              : 
   25846              :         case 2:
   25847              :           if (!(
   25848              : #line 7827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25849              : (reload_completed
   25850              :    && !(rtx_equal_p (operands[0], operands[1])
   25851              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))) && 
   25852              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25853              : (TARGET_64BIT)))
   25854              :             return NULL;
   25855              :           return gen_split_150 (insn, operands);
   25856              : 
   25857              :         default:
   25858              :           return NULL;
   25859              :         }
   25860              : 
   25861              :     case 1:
   25862              :       x5 = XEXP (x3, 0);
   25863              :       x6 = XEXP (x5, 1);
   25864              :       if (GET_CODE (x6) == SUBREG)
   25865              :         {
   25866              :           switch (pattern1824 (x2))
   25867              :             {
   25868              :             case 0:
   25869              :               if (
   25870              : #line 7827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25871              : (reload_completed
   25872              :    && !(rtx_equal_p (operands[0], operands[1])
   25873              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   25874              :                 return gen_split_147 (insn, operands);
   25875              :               break;
   25876              : 
   25877              :             case 1:
   25878              :               if (
   25879              : #line 7827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25880              : (reload_completed
   25881              :    && !(rtx_equal_p (operands[0], operands[1])
   25882              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   25883              :                 return gen_split_149 (insn, operands);
   25884              :               break;
   25885              : 
   25886              :             case 2:
   25887              :               if ((
   25888              : #line 7827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25889              : (reload_completed
   25890              :    && !(rtx_equal_p (operands[0], operands[1])
   25891              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))) && 
   25892              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25893              : (TARGET_64BIT)))
   25894              :                 return gen_split_151 (insn, operands);
   25895              :               break;
   25896              : 
   25897              :             default:
   25898              :               break;
   25899              :             }
   25900              :         }
   25901              :       operands[2] = x6;
   25902              :       if (!general_operand (operands[2], E_QImode))
   25903              :         return NULL;
   25904              :       switch (pattern1055 (x2))
   25905              :         {
   25906              :         case 0:
   25907              :           if (!
   25908              : #line 8658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25909              : (reload_completed
   25910              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25911              :             return NULL;
   25912              :           return gen_split_189 (insn, operands);
   25913              : 
   25914              :         case 1:
   25915              :           if (!
   25916              : #line 8658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25917              : (reload_completed
   25918              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25919              :             return NULL;
   25920              :           return gen_split_190 (insn, operands);
   25921              : 
   25922              :         case 2:
   25923              :           if (!(
   25924              : #line 8658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25925              : (reload_completed
   25926              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25927              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25928              : (TARGET_64BIT)))
   25929              :             return NULL;
   25930              :           return gen_split_191 (insn, operands);
   25931              : 
   25932              :         default:
   25933              :           return NULL;
   25934              :         }
   25935              : 
   25936              :     case 2:
   25937              :       x5 = XEXP (x3, 0);
   25938              :       x6 = XEXP (x5, 1);
   25939              :       operands[2] = x6;
   25940              :       if (general_operand (operands[2], E_QImode))
   25941              :         {
   25942              :           switch (pattern1055 (x2))
   25943              :             {
   25944              :             case 0:
   25945              :               if (
   25946              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25947              : (reload_completed
   25948              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25949              :                 return gen_split_337 (insn, operands);
   25950              :               break;
   25951              : 
   25952              :             case 1:
   25953              :               if (
   25954              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25955              : (reload_completed
   25956              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25957              :                 return gen_split_340 (insn, operands);
   25958              :               break;
   25959              : 
   25960              :             case 2:
   25961              :               if ((
   25962              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25963              : (reload_completed
   25964              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25965              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25966              : (TARGET_64BIT)))
   25967              :                 return gen_split_343 (insn, operands);
   25968              :               break;
   25969              : 
   25970              :             default:
   25971              :               break;
   25972              :             }
   25973              :         }
   25974              :       if (GET_CODE (x6) != SUBREG)
   25975              :         return NULL;
   25976              :       switch (pattern1824 (x2))
   25977              :         {
   25978              :         case 0:
   25979              :           if (!
   25980              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25981              : (reload_completed
   25982              :    && !(rtx_equal_p (operands[0], operands[1])
   25983              :         || rtx_equal_p (operands[0], operands[2]))))
   25984              :             return NULL;
   25985              :           return gen_split_355 (insn, operands);
   25986              : 
   25987              :         case 1:
   25988              :           if (!
   25989              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25990              : (reload_completed
   25991              :    && !(rtx_equal_p (operands[0], operands[1])
   25992              :         || rtx_equal_p (operands[0], operands[2]))))
   25993              :             return NULL;
   25994              :           return gen_split_358 (insn, operands);
   25995              : 
   25996              :         case 2:
   25997              :           if (!(
   25998              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25999              : (reload_completed
   26000              :    && !(rtx_equal_p (operands[0], operands[1])
   26001              :         || rtx_equal_p (operands[0], operands[2]))) && 
   26002              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26003              : (TARGET_64BIT)))
   26004              :             return NULL;
   26005              :           return gen_split_361 (insn, operands);
   26006              : 
   26007              :         default:
   26008              :           return NULL;
   26009              :         }
   26010              : 
   26011              :     case 3:
   26012              :       x5 = XEXP (x3, 0);
   26013              :       x6 = XEXP (x5, 1);
   26014              :       operands[2] = x6;
   26015              :       if (general_operand (operands[2], E_QImode))
   26016              :         {
   26017              :           switch (pattern1055 (x2))
   26018              :             {
   26019              :             case 0:
   26020              :               if (
   26021              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26022              : (reload_completed
   26023              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26024              :                 return gen_split_338 (insn, operands);
   26025              :               break;
   26026              : 
   26027              :             case 1:
   26028              :               if (
   26029              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26030              : (reload_completed
   26031              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26032              :                 return gen_split_341 (insn, operands);
   26033              :               break;
   26034              : 
   26035              :             case 2:
   26036              :               if ((
   26037              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26038              : (reload_completed
   26039              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   26040              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26041              : (TARGET_64BIT)))
   26042              :                 return gen_split_344 (insn, operands);
   26043              :               break;
   26044              : 
   26045              :             default:
   26046              :               break;
   26047              :             }
   26048              :         }
   26049              :       if (GET_CODE (x6) != SUBREG)
   26050              :         return NULL;
   26051              :       switch (pattern1824 (x2))
   26052              :         {
   26053              :         case 0:
   26054              :           if (!
   26055              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26056              : (reload_completed
   26057              :    && !(rtx_equal_p (operands[0], operands[1])
   26058              :         || rtx_equal_p (operands[0], operands[2]))))
   26059              :             return NULL;
   26060              :           return gen_split_356 (insn, operands);
   26061              : 
   26062              :         case 1:
   26063              :           if (!
   26064              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26065              : (reload_completed
   26066              :    && !(rtx_equal_p (operands[0], operands[1])
   26067              :         || rtx_equal_p (operands[0], operands[2]))))
   26068              :             return NULL;
   26069              :           return gen_split_359 (insn, operands);
   26070              : 
   26071              :         case 2:
   26072              :           if (!(
   26073              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26074              : (reload_completed
   26075              :    && !(rtx_equal_p (operands[0], operands[1])
   26076              :         || rtx_equal_p (operands[0], operands[2]))) && 
   26077              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26078              : (TARGET_64BIT)))
   26079              :             return NULL;
   26080              :           return gen_split_362 (insn, operands);
   26081              : 
   26082              :         default:
   26083              :           return NULL;
   26084              :         }
   26085              : 
   26086              :     case 4:
   26087              :       x5 = XEXP (x3, 0);
   26088              :       x6 = XEXP (x5, 1);
   26089              :       operands[2] = x6;
   26090              :       if (general_operand (operands[2], E_QImode))
   26091              :         {
   26092              :           switch (pattern1055 (x2))
   26093              :             {
   26094              :             case 0:
   26095              :               if (
   26096              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26097              : (reload_completed
   26098              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26099              :                 return gen_split_339 (insn, operands);
   26100              :               break;
   26101              : 
   26102              :             case 1:
   26103              :               if (
   26104              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26105              : (reload_completed
   26106              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26107              :                 return gen_split_342 (insn, operands);
   26108              :               break;
   26109              : 
   26110              :             case 2:
   26111              :               if ((
   26112              : #line 13957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26113              : (reload_completed
   26114              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   26115              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26116              : (TARGET_64BIT)))
   26117              :                 return gen_split_345 (insn, operands);
   26118              :               break;
   26119              : 
   26120              :             default:
   26121              :               break;
   26122              :             }
   26123              :         }
   26124              :       if (GET_CODE (x6) != SUBREG)
   26125              :         return NULL;
   26126              :       switch (pattern1824 (x2))
   26127              :         {
   26128              :         case 0:
   26129              :           if (!
   26130              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26131              : (reload_completed
   26132              :    && !(rtx_equal_p (operands[0], operands[1])
   26133              :         || rtx_equal_p (operands[0], operands[2]))))
   26134              :             return NULL;
   26135              :           return gen_split_357 (insn, operands);
   26136              : 
   26137              :         case 1:
   26138              :           if (!
   26139              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26140              : (reload_completed
   26141              :    && !(rtx_equal_p (operands[0], operands[1])
   26142              :         || rtx_equal_p (operands[0], operands[2]))))
   26143              :             return NULL;
   26144              :           return gen_split_360 (insn, operands);
   26145              : 
   26146              :         case 2:
   26147              :           if (!(
   26148              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26149              : (reload_completed
   26150              :    && !(rtx_equal_p (operands[0], operands[1])
   26151              :         || rtx_equal_p (operands[0], operands[2]))) && 
   26152              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26153              : (TARGET_64BIT)))
   26154              :             return NULL;
   26155              :           return gen_split_363 (insn, operands);
   26156              : 
   26157              :         default:
   26158              :           return NULL;
   26159              :         }
   26160              : 
   26161              :     case 5:
   26162              :       if (!
   26163              : #line 15464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26164              : (reload_completed
   26165              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26166              :         return NULL;
   26167              :       return gen_split_500 (insn, operands);
   26168              : 
   26169              :     case 6:
   26170              :       if (!
   26171              : #line 15464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26172              : (reload_completed
   26173              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26174              :         return NULL;
   26175              :       return gen_split_501 (insn, operands);
   26176              : 
   26177              :     case 7:
   26178              :       if (!(
   26179              : #line 15464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26180              : (reload_completed
   26181              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   26182              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26183              : (TARGET_64BIT)))
   26184              :         return NULL;
   26185              :       return gen_split_502 (insn, operands);
   26186              : 
   26187              :     case 8:
   26188              :       if (!
   26189              : #line 17508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26190              : (reload_completed
   26191              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26192              :         return NULL;
   26193              :       return gen_split_592 (insn, operands);
   26194              : 
   26195              :     case 9:
   26196              :       if (!
   26197              : #line 17508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26198              : (reload_completed
   26199              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26200              :         return NULL;
   26201              :       return gen_split_593 (insn, operands);
   26202              : 
   26203              :     case 10:
   26204              :       if (!(
   26205              : #line 17508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26206              : (reload_completed
   26207              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   26208              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26209              : (TARGET_64BIT)))
   26210              :         return NULL;
   26211              :       return gen_split_594 (insn, operands);
   26212              : 
   26213              :     case 11:
   26214              :       x7 = XEXP (x2, 0);
   26215              :       operands[0] = x7;
   26216              :       switch (pattern1247 (x3))
   26217              :         {
   26218              :         case 0:
   26219              :           if (((
   26220              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26221              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   26222              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26223              : (!TARGET_64BIT)) && 
   26224              : #line 17738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26225              : ( reload_completed)))
   26226              :             return gen_split_611 (insn, operands);
   26227              :           break;
   26228              : 
   26229              :         case 1:
   26230              :           if (((
   26231              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26232              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   26233              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26234              : (TARGET_64BIT)) && 
   26235              : #line 17738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26236              : ( reload_completed)))
   26237              :             return gen_split_613 (insn, operands);
   26238              :           break;
   26239              : 
   26240              :         default:
   26241              :           break;
   26242              :         }
   26243              :       x5 = XEXP (x3, 0);
   26244              :       if (GET_MODE (x5) != E_QImode)
   26245              :         return NULL;
   26246              :       switch (pattern1056 (x2))
   26247              :         {
   26248              :         case 0:
   26249              :           if (!
   26250              : #line 18776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26251              : (reload_completed
   26252              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26253              :             return NULL;
   26254              :           return gen_split_638 (insn, operands);
   26255              : 
   26256              :         case 1:
   26257              :           if (!
   26258              : #line 18776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26259              : (reload_completed
   26260              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26261              :             return NULL;
   26262              :           return gen_split_640 (insn, operands);
   26263              : 
   26264              :         case 2:
   26265              :           if (!(
   26266              : #line 18776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26267              : (reload_completed
   26268              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   26269              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26270              : (TARGET_64BIT)))
   26271              :             return NULL;
   26272              :           return gen_split_642 (insn, operands);
   26273              : 
   26274              :         default:
   26275              :           return NULL;
   26276              :         }
   26277              : 
   26278              :     case 12:
   26279              :       x7 = XEXP (x2, 0);
   26280              :       operands[0] = x7;
   26281              :       switch (pattern1247 (x3))
   26282              :         {
   26283              :         case 0:
   26284              :           if (((
   26285              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26286              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   26287              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26288              : (!TARGET_64BIT)) && 
   26289              : #line 17738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26290              : ( reload_completed)))
   26291              :             return gen_split_612 (insn, operands);
   26292              :           break;
   26293              : 
   26294              :         case 1:
   26295              :           if (((
   26296              : #line 17736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26297              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   26298              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26299              : (TARGET_64BIT)) && 
   26300              : #line 17738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26301              : ( reload_completed)))
   26302              :             return gen_split_614 (insn, operands);
   26303              :           break;
   26304              : 
   26305              :         default:
   26306              :           break;
   26307              :         }
   26308              :       x5 = XEXP (x3, 0);
   26309              :       if (GET_MODE (x5) != E_QImode)
   26310              :         return NULL;
   26311              :       switch (pattern1056 (x2))
   26312              :         {
   26313              :         case 0:
   26314              :           if (!
   26315              : #line 18776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26316              : (reload_completed
   26317              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26318              :             return NULL;
   26319              :           return gen_split_639 (insn, operands);
   26320              : 
   26321              :         case 1:
   26322              :           if (!
   26323              : #line 18776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26324              : (reload_completed
   26325              :    && !(rtx_equal_p (operands[0], operands[1]))))
   26326              :             return NULL;
   26327              :           return gen_split_641 (insn, operands);
   26328              : 
   26329              :         case 2:
   26330              :           if (!(
   26331              : #line 18776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26332              : (reload_completed
   26333              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   26334              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26335              : (TARGET_64BIT)))
   26336              :             return NULL;
   26337              :           return gen_split_643 (insn, operands);
   26338              : 
   26339              :         default:
   26340              :           return NULL;
   26341              :         }
   26342              : 
   26343              :     default:
   26344              :       return NULL;
   26345              :     }
   26346              : }
   26347              : 
   26348              :  rtx_insn *
   26349              : split_36 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26350              : {
   26351              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26352              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   26353              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   26354              :   rtx x18, x19, x20, x21;
   26355              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26356              :   x2 = XVECEXP (x1, 0, 0);
   26357              :   switch (GET_CODE (x2))
   26358              :     {
   26359              :     case SET:
   26360              :       x3 = XEXP (x2, 1);
   26361              :       switch (GET_CODE (x3))
   26362              :         {
   26363              :         case CONST_INT:
   26364              :         case CONST_DOUBLE:
   26365              :         case CONST_VECTOR:
   26366              :           operands[1] = x3;
   26367              :           if (pattern346 (x1) == 0)
   26368              :             {
   26369              :               switch (GET_MODE (operands[0]))
   26370              :                 {
   26371              :                 case E_HImode:
   26372              :                   if (memory_operand (operands[0], E_HImode)
   26373              :                       && const0_operand (operands[1], E_HImode)
   26374              :                       && (
   26375              : #line 2479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26376              : (reload_completed) && 
   26377              : #line 2481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26378              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   26379              :                     return gen_split_14 (insn, operands);
   26380              :                   if (nonimmediate_operand (operands[0], E_HImode)
   26381              :                       && constm1_operand (operands[1], E_HImode)
   26382              :                       && (
   26383              : #line 2494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26384              : (reload_completed) && 
   26385              : #line 2496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26386              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   26387              :                     return gen_split_17 (insn, operands);
   26388              :                   break;
   26389              : 
   26390              :                 case E_SImode:
   26391              :                   if (memory_operand (operands[0], E_SImode)
   26392              :                       && const0_operand (operands[1], E_SImode)
   26393              :                       && (
   26394              : #line 2479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26395              : (reload_completed) && 
   26396              : #line 2481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26397              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   26398              :                     return gen_split_15 (insn, operands);
   26399              :                   if (nonimmediate_operand (operands[0], E_SImode)
   26400              :                       && constm1_operand (operands[1], E_SImode)
   26401              :                       && (
   26402              : #line 2494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26403              : (reload_completed) && 
   26404              : #line 2496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26405              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   26406              :                     return gen_split_18 (insn, operands);
   26407              :                   break;
   26408              : 
   26409              :                 case E_DImode:
   26410              :                   if (memory_operand (operands[0], E_DImode)
   26411              :                       && const0_operand (operands[1], E_DImode)
   26412              :                       && ((
   26413              : #line 2479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26414              : (reload_completed) && 
   26415              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26416              : (TARGET_64BIT)) && 
   26417              : #line 2481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26418              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   26419              :                     return gen_split_16 (insn, operands);
   26420              :                   if (nonimmediate_operand (operands[0], E_DImode)
   26421              :                       && constm1_operand (operands[1], E_DImode)
   26422              :                       && ((
   26423              : #line 2494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26424              : (reload_completed) && 
   26425              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26426              : (TARGET_64BIT)) && 
   26427              : #line 2496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26428              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   26429              :                     return gen_split_19 (insn, operands);
   26430              :                   break;
   26431              : 
   26432              :                 default:
   26433              :                   break;
   26434              :                 }
   26435              :             }
   26436              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   26437              :             return NULL;
   26438              :           x4 = XEXP (x2, 0);
   26439              :           if (GET_CODE (x4) != ZERO_EXTRACT
   26440              :               || GET_MODE (x4) != E_HImode)
   26441              :             return NULL;
   26442              :           x5 = XEXP (x4, 1);
   26443              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   26444              :             return NULL;
   26445              :           x6 = XVECEXP (x1, 0, 1);
   26446              :           if (pattern237 (x6, 
   26447              : E_CCmode, 
   26448              : 17) != 0)
   26449              :             return NULL;
   26450              :           x7 = XEXP (x4, 0);
   26451              :           operands[0] = x7;
   26452              :           x8 = XEXP (x4, 2);
   26453              :           operands[1] = x8;
   26454              :           if (!register_operand (operands[1], E_QImode))
   26455              :             return NULL;
   26456              :           switch (GET_MODE (operands[0]))
   26457              :             {
   26458              :             case E_QImode:
   26459              :               if (nonimmediate_operand (operands[0], E_QImode)
   26460              :                   && (
   26461              : #line 19963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26462              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   26463              : #line 19965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26464              : ( MEM_P (operands[0]))))
   26465              :                 return gen_split_816 (insn, operands);
   26466              :               if (!register_operand (operands[0], E_QImode)
   26467              :                   || !
   26468              : #line 19987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26469              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   26470              :                 return NULL;
   26471              :               return gen_split_818 (insn, operands);
   26472              : 
   26473              :             case E_HImode:
   26474              :               if (nonimmediate_operand (operands[0], E_HImode)
   26475              :                   && (
   26476              : #line 19963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26477              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   26478              : #line 19965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26479              : ( MEM_P (operands[0]))))
   26480              :                 return gen_split_817 (insn, operands);
   26481              :               if (!register_operand (operands[0], E_HImode)
   26482              :                   || !
   26483              : #line 19987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26484              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   26485              :                 return NULL;
   26486              :               return gen_split_819 (insn, operands);
   26487              : 
   26488              :             default:
   26489              :               return NULL;
   26490              :             }
   26491              : 
   26492              :         case ASHIFTRT:
   26493              :         case LSHIFTRT:
   26494              :         case SIGN_EXTRACT:
   26495              :         case ZERO_EXTRACT:
   26496              :           x6 = XVECEXP (x1, 0, 1);
   26497              :           if (pattern237 (x6, 
   26498              : E_CCmode, 
   26499              : 17) != 0)
   26500              :             return NULL;
   26501              :           switch (GET_CODE (x3))
   26502              :             {
   26503              :             case SIGN_EXTRACT:
   26504              :               res = split_15 (x1, insn);
   26505              :               if (res != NULL_RTX)
   26506              :                 return res;
   26507              :               break;
   26508              : 
   26509              :             case LSHIFTRT:
   26510              :               res = split_16 (x1, insn);
   26511              :               if (res != NULL_RTX)
   26512              :                 return res;
   26513              :               break;
   26514              : 
   26515              :             case ASHIFTRT:
   26516              :               res = split_17 (x1, insn);
   26517              :               if (res != NULL_RTX)
   26518              :                 return res;
   26519              :               break;
   26520              : 
   26521              :             case ZERO_EXTRACT:
   26522              :               res = split_18 (x1, insn);
   26523              :               if (res != NULL_RTX)
   26524              :                 return res;
   26525              :               break;
   26526              : 
   26527              :             default:
   26528              :               break;
   26529              :             }
   26530              :           x4 = XEXP (x2, 0);
   26531              :           if (GET_CODE (x4) != ZERO_EXTRACT)
   26532              :             return NULL;
   26533              :           x5 = XEXP (x4, 1);
   26534              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   26535              :             return NULL;
   26536              :           x8 = XEXP (x4, 2);
   26537              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   26538              :             return NULL;
   26539              :           x7 = XEXP (x4, 0);
   26540              :           operands[0] = x7;
   26541              :           if (!int248_register_operand (operands[0], E_VOIDmode))
   26542              :             return NULL;
   26543              :           operands[3] = x3;
   26544              :           x9 = XEXP (x3, 0);
   26545              :           switch (GET_CODE (x9))
   26546              :             {
   26547              :             case AND:
   26548              :               switch (pattern1505 (x2))
   26549              :                 {
   26550              :                 case 0:
   26551              :                   if (!(
   26552              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26553              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26554              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26555              : ( reload_completed
   26556              :    && !(rtx_equal_p (operands[0], operands[1])
   26557              :         || rtx_equal_p (operands[0], operands[2])))))
   26558              :                     return NULL;
   26559              :                   return gen_split_364 (insn, operands);
   26560              : 
   26561              :                 case 1:
   26562              :                   if (!(
   26563              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26564              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26565              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26566              : ( reload_completed
   26567              :    && !(rtx_equal_p (operands[0], operands[1])
   26568              :         || rtx_equal_p (operands[0], operands[2])))))
   26569              :                     return NULL;
   26570              :                   return gen_split_367 (insn, operands);
   26571              : 
   26572              :                 case 2:
   26573              :                   if (!((
   26574              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26575              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26576              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26577              : (TARGET_64BIT)) && 
   26578              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26579              : ( reload_completed
   26580              :    && !(rtx_equal_p (operands[0], operands[1])
   26581              :         || rtx_equal_p (operands[0], operands[2])))))
   26582              :                     return NULL;
   26583              :                   return gen_split_370 (insn, operands);
   26584              : 
   26585              :                 default:
   26586              :                   return NULL;
   26587              :                 }
   26588              : 
   26589              :             case IOR:
   26590              :               switch (pattern1505 (x2))
   26591              :                 {
   26592              :                 case 0:
   26593              :                   if (!(
   26594              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26595              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26596              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26597              : ( reload_completed
   26598              :    && !(rtx_equal_p (operands[0], operands[1])
   26599              :         || rtx_equal_p (operands[0], operands[2])))))
   26600              :                     return NULL;
   26601              :                   return gen_split_365 (insn, operands);
   26602              : 
   26603              :                 case 1:
   26604              :                   if (!(
   26605              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26606              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26607              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26608              : ( reload_completed
   26609              :    && !(rtx_equal_p (operands[0], operands[1])
   26610              :         || rtx_equal_p (operands[0], operands[2])))))
   26611              :                     return NULL;
   26612              :                   return gen_split_368 (insn, operands);
   26613              : 
   26614              :                 case 2:
   26615              :                   if (!((
   26616              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26617              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26618              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26619              : (TARGET_64BIT)) && 
   26620              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26621              : ( reload_completed
   26622              :    && !(rtx_equal_p (operands[0], operands[1])
   26623              :         || rtx_equal_p (operands[0], operands[2])))))
   26624              :                     return NULL;
   26625              :                   return gen_split_371 (insn, operands);
   26626              : 
   26627              :                 default:
   26628              :                   return NULL;
   26629              :                 }
   26630              : 
   26631              :             case XOR:
   26632              :               switch (pattern1505 (x2))
   26633              :                 {
   26634              :                 case 0:
   26635              :                   if (!(
   26636              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26637              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26638              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26639              : ( reload_completed
   26640              :    && !(rtx_equal_p (operands[0], operands[1])
   26641              :         || rtx_equal_p (operands[0], operands[2])))))
   26642              :                     return NULL;
   26643              :                   return gen_split_366 (insn, operands);
   26644              : 
   26645              :                 case 1:
   26646              :                   if (!(
   26647              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26648              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26649              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26650              : ( reload_completed
   26651              :    && !(rtx_equal_p (operands[0], operands[1])
   26652              :         || rtx_equal_p (operands[0], operands[2])))))
   26653              :                     return NULL;
   26654              :                   return gen_split_369 (insn, operands);
   26655              : 
   26656              :                 case 2:
   26657              :                   if (!((
   26658              : #line 14083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26659              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26660              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26661              : (TARGET_64BIT)) && 
   26662              : #line 14087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26663              : ( reload_completed
   26664              :    && !(rtx_equal_p (operands[0], operands[1])
   26665              :         || rtx_equal_p (operands[0], operands[2])))))
   26666              :                     return NULL;
   26667              :                   return gen_split_372 (insn, operands);
   26668              : 
   26669              :                 default:
   26670              :                   return NULL;
   26671              :                 }
   26672              : 
   26673              :             default:
   26674              :               return NULL;
   26675              :             }
   26676              : 
   26677              :         case ZERO_EXTEND:
   26678              :           return split_32 (x1, insn);
   26679              : 
   26680              :         case FIX:
   26681              :           x6 = XVECEXP (x1, 0, 1);
   26682              :           if (pattern357 (x6) != 0)
   26683              :             return NULL;
   26684              :           x4 = XEXP (x2, 0);
   26685              :           operands[0] = x4;
   26686              :           x9 = XEXP (x3, 0);
   26687              :           operands[1] = x9;
   26688              :           if (!register_operand (operands[1], E_VOIDmode))
   26689              :             return NULL;
   26690              :           switch (pattern554 (x3))
   26691              :             {
   26692              :             case 0:
   26693              :               if (!(
   26694              : #line 6141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26695              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   26696              :    && !TARGET_FISTTP
   26697              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
   26698              :          && (TARGET_64BIT || HImode != DImode))
   26699              :    && ix86_pre_reload_split ()) && 
   26700              : #line 6147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26701              : ( 1)))
   26702              :                 return NULL;
   26703              :               return gen_split_82 (insn, operands);
   26704              : 
   26705              :             case 1:
   26706              :               if (!(
   26707              : #line 6141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26708              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   26709              :    && !TARGET_FISTTP
   26710              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
   26711              :          && (TARGET_64BIT || SImode != DImode))
   26712              :    && ix86_pre_reload_split ()) && 
   26713              : #line 6147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26714              : ( 1)))
   26715              :                 return NULL;
   26716              :               return gen_split_83 (insn, operands);
   26717              : 
   26718              :             case 2:
   26719              :               if (!(
   26720              : #line 6141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26721              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   26722              :    && !TARGET_FISTTP
   26723              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
   26724              :          && (TARGET_64BIT || DImode != DImode))
   26725              :    && ix86_pre_reload_split ()) && 
   26726              : #line 6147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26727              : ( 1)))
   26728              :                 return NULL;
   26729              :               return gen_split_84 (insn, operands);
   26730              : 
   26731              :             default:
   26732              :               return NULL;
   26733              :             }
   26734              : 
   26735              :         case MULT:
   26736              :           if (pattern346 (x1) != 0)
   26737              :             return NULL;
   26738              :           x9 = XEXP (x3, 0);
   26739              :           switch (GET_CODE (x9))
   26740              :             {
   26741              :             case REG:
   26742              :               if (!rtx_equal_p (x9, operands[0]))
   26743              :                 return NULL;
   26744              :               x10 = XEXP (x3, 1);
   26745              :               operands[1] = x10;
   26746              :               switch (GET_MODE (operands[0]))
   26747              :                 {
   26748              :                 case E_SImode:
   26749              :                   if (!general_reg_operand (operands[0], E_SImode)
   26750              :                       || GET_MODE (x3) != E_SImode
   26751              :                       || !const1248_operand (operands[1], E_SImode)
   26752              :                       || !
   26753              : #line 6572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26754              : (reload_completed))
   26755              :                     return NULL;
   26756              :                   return gen_split_100 (insn, operands);
   26757              : 
   26758              :                 case E_DImode:
   26759              :                   if (!general_reg_operand (operands[0], E_DImode)
   26760              :                       || GET_MODE (x3) != E_DImode
   26761              :                       || !const1248_operand (operands[1], E_DImode)
   26762              :                       || !(
   26763              : #line 6572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26764              : (reload_completed) && 
   26765              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26766              : (TARGET_64BIT)))
   26767              :                     return NULL;
   26768              :                   return gen_split_101 (insn, operands);
   26769              : 
   26770              :                 default:
   26771              :                   return NULL;
   26772              :                 }
   26773              : 
   26774              :             case ZERO_EXTEND:
   26775              :               x10 = XEXP (x3, 1);
   26776              :               if (GET_CODE (x10) != ZERO_EXTEND)
   26777              :                 return NULL;
   26778              :               x11 = XEXP (x9, 0);
   26779              :               operands[1] = x11;
   26780              :               x12 = XEXP (x10, 0);
   26781              :               operands[2] = x12;
   26782              :               switch (GET_MODE (operands[0]))
   26783              :                 {
   26784              :                 case E_DImode:
   26785              :                   if (pattern566 (x3, 
   26786              : E_SImode, 
   26787              : E_DImode) != 0
   26788              :                       || !(
   26789              : #line 11832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26790              : (TARGET_BMI2 && reload_completed
   26791              :   && REGNO (operands[1]) == DX_REG) && 
   26792              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26793              : (!TARGET_64BIT)))
   26794              :                     return NULL;
   26795              :                   return gen_split_244 (insn, operands);
   26796              : 
   26797              :                 case E_TImode:
   26798              :                   if (pattern566 (x3, 
   26799              : E_DImode, 
   26800              : E_TImode) != 0
   26801              :                       || !(
   26802              : #line 11832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26803              : (TARGET_BMI2 && reload_completed
   26804              :   && REGNO (operands[1]) == DX_REG) && 
   26805              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26806              : (TARGET_64BIT)))
   26807              :                     return NULL;
   26808              :                   return gen_split_245 (insn, operands);
   26809              : 
   26810              :                 default:
   26811              :                   return NULL;
   26812              :                 }
   26813              : 
   26814              :             default:
   26815              :               return NULL;
   26816              :             }
   26817              : 
   26818              :         case PLUS:
   26819              :           return split_29 (x1, insn);
   26820              : 
   26821              :         case SUBREG:
   26822              :           return split_28 (x1, insn);
   26823              : 
   26824              :         case NE:
   26825              :         case EQ:
   26826              :         case GE:
   26827              :         case GT:
   26828              :         case LE:
   26829              :         case LT:
   26830              :         case LTGT:
   26831              :         case GEU:
   26832              :         case GTU:
   26833              :         case LEU:
   26834              :         case LTU:
   26835              :         case UNORDERED:
   26836              :         case ORDERED:
   26837              :         case UNEQ:
   26838              :         case UNGE:
   26839              :         case UNGT:
   26840              :         case UNLE:
   26841              :         case UNLT:
   26842              :           if (GET_CODE (x3) == EQ)
   26843              :             {
   26844              :               x9 = XEXP (x3, 0);
   26845              :               switch (GET_CODE (x9))
   26846              :                 {
   26847              :                 case PLUS:
   26848              :                   switch (pattern736 (x1, 
   26849              : PLUS))
   26850              :                     {
   26851              :                     case 0:
   26852              :                       if (((
   26853              : #line 7954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26854              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   26855              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26856              : (!TARGET_64BIT)) && 
   26857              : #line 7956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26858              : ( reload_completed)))
   26859              :                         return gen_split_152 (insn, operands);
   26860              :                       break;
   26861              : 
   26862              :                     case 1:
   26863              :                       if (((
   26864              : #line 7954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26865              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
   26866              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26867              : (TARGET_64BIT)) && 
   26868              : #line 7956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26869              : ( reload_completed)))
   26870              :                         return gen_split_153 (insn, operands);
   26871              :                       break;
   26872              : 
   26873              :                     case 2:
   26874              :                       if (((
   26875              : #line 8004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26876              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   26877              :    && CONST_SCALAR_INT_P (operands[2])
   26878              :    && rtx_equal_p (operands[2], operands[3])) && 
   26879              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26880              : (!TARGET_64BIT)) && 
   26881              : #line 8008 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26882              : ( reload_completed)))
   26883              :                         return gen_split_154 (insn, operands);
   26884              :                       break;
   26885              : 
   26886              :                     case 3:
   26887              :                       if (((
   26888              : #line 8004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26889              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)
   26890              :    && CONST_SCALAR_INT_P (operands[2])
   26891              :    && rtx_equal_p (operands[2], operands[3])) && 
   26892              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26893              : (TARGET_64BIT)) && 
   26894              : #line 8008 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26895              : ( reload_completed)))
   26896              :                         return gen_split_155 (insn, operands);
   26897              :                       break;
   26898              : 
   26899              :                     default:
   26900              :                       break;
   26901              :                     }
   26902              :                   break;
   26903              : 
   26904              :                 case MINUS:
   26905              :                   switch (pattern736 (x1, 
   26906              : MINUS))
   26907              :                     {
   26908              :                     case 0:
   26909              :                       if (((
   26910              : #line 8778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26911              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)) && 
   26912              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26913              : (!TARGET_64BIT)) && 
   26914              : #line 8780 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26915              : ( reload_completed)))
   26916              :                         return gen_split_192 (insn, operands);
   26917              :                       break;
   26918              : 
   26919              :                     case 1:
   26920              :                       if (((
   26921              : #line 8778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26922              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   26923              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26924              : (TARGET_64BIT)) && 
   26925              : #line 8780 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26926              : ( reload_completed)))
   26927              :                         return gen_split_193 (insn, operands);
   26928              :                       break;
   26929              : 
   26930              :                     case 2:
   26931              :                       if (((
   26932              : #line 8826 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26933              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   26934              :    && CONST_SCALAR_INT_P (operands[2])
   26935              :    && rtx_equal_p (operands[2], operands[3])) && 
   26936              : #line 1270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26937              : (!TARGET_64BIT)) && 
   26938              : #line 8830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26939              : ( reload_completed)))
   26940              :                         return gen_split_194 (insn, operands);
   26941              :                       break;
   26942              : 
   26943              :                     case 3:
   26944              :                       if (((
   26945              : #line 8826 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26946              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   26947              :    && CONST_SCALAR_INT_P (operands[2])
   26948              :    && rtx_equal_p (operands[2], operands[3])) && 
   26949              : #line 1271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26950              : (TARGET_64BIT)) && 
   26951              : #line 8830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26952              : ( reload_completed)))
   26953              :                         return gen_split_195 (insn, operands);
   26954              :                       break;
   26955              : 
   26956              :                     default:
   26957              :                       break;
   26958              :                     }
   26959              :                   break;
   26960              : 
   26961              :                 case ZERO_EXTRACT:
   26962              :                   switch (pattern705 (x1))
   26963              :                     {
   26964              :                     case 0:
   26965              :                       if ((
   26966              : #line 20422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26967              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   26968              : #line 20424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26969              : ( 1)))
   26970              :                         return gen_split_846 (insn, operands);
   26971              :                       break;
   26972              : 
   26973              :                     case 1:
   26974              :                       if (((
   26975              : #line 20422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26976              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   26977              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26978              : (TARGET_64BIT)) && 
   26979              : #line 20424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26980              : ( 1)))
   26981              :                         return gen_split_847 (insn, operands);
   26982              :                       break;
   26983              : 
   26984              :                     default:
   26985              :                       break;
   26986              :                     }
   26987              :                   break;
   26988              : 
   26989              :                 default:
   26990              :                   break;
   26991              :                 }
   26992              :             }
   26993              :           operands[1] = x3;
   26994              :           switch (pattern373 (x1))
   26995              :             {
   26996              :             case 0:
   26997              :               if (!(
   26998              : #line 20536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26999              : (!TARGET_PARTIAL_REG_STALL
   27000              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   27001              : #line 20539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27002              : ( reload_completed)))
   27003              :                 return NULL;
   27004              :               return gen_split_856 (insn, operands);
   27005              : 
   27006              :             case 1:
   27007              :               if (!(
   27008              : #line 20536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27009              : (!TARGET_PARTIAL_REG_STALL
   27010              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   27011              : #line 20539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27012              : ( reload_completed)))
   27013              :                 return NULL;
   27014              :               return gen_split_857 (insn, operands);
   27015              : 
   27016              :             default:
   27017              :               return NULL;
   27018              :             }
   27019              : 
   27020              :         case MINUS:
   27021              :           x6 = XVECEXP (x1, 0, 1);
   27022              :           if (pattern237 (x6, 
   27023              : E_CCmode, 
   27024              : 17) != 0)
   27025              :             return NULL;
   27026              :           x9 = XEXP (x3, 0);
   27027              :           switch (GET_CODE (x9))
   27028              :             {
   27029              :             case CONST_INT:
   27030              :             case CONST_WIDE_INT:
   27031              :             case CONST_POLY_INT:
   27032              :             case CONST_FIXED:
   27033              :             case CONST_DOUBLE:
   27034              :             case CONST_VECTOR:
   27035              :             case CONST:
   27036              :             case REG:
   27037              :             case SUBREG:
   27038              :             case MEM:
   27039              :             case LABEL_REF:
   27040              :             case SYMBOL_REF:
   27041              :             case HIGH:
   27042              :               operands[1] = x9;
   27043              :               res = split_20 (x1, insn);
   27044              :               if (res != NULL_RTX)
   27045              :                 return res;
   27046              :               if (GET_CODE (x9) != SUBREG)
   27047              :                 return NULL;
   27048              :               switch (pattern1066 (x2))
   27049              :                 {
   27050              :                 case 0:
   27051              :                   if (!(
   27052              : #line 8529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27053              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   27054              : #line 8531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27055              : ( reload_completed)))
   27056              :                     return NULL;
   27057              :                   return gen_split_183 (insn, operands);
   27058              : 
   27059              :                 case 1:
   27060              :                   if (!(
   27061              : #line 8529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27062              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   27063              : #line 8531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27064              : ( reload_completed)))
   27065              :                     return NULL;
   27066              :                   return gen_split_184 (insn, operands);
   27067              : 
   27068              :                 case 2:
   27069              :                   if (!((
   27070              : #line 8529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27071              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   27072              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27073              : (TARGET_64BIT)) && 
   27074              : #line 8531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27075              : ( reload_completed)))
   27076              :                     return NULL;
   27077              :                   return gen_split_185 (insn, operands);
   27078              : 
   27079              :                 case 3:
   27080              :                   if (!
   27081              : #line 8624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27082              : ( reload_completed))
   27083              :                     return NULL;
   27084              :                   return gen_split_186 (insn, operands);
   27085              : 
   27086              :                 case 4:
   27087              :                   if (!
   27088              : #line 8624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27089              : ( reload_completed))
   27090              :                     return NULL;
   27091              :                   return gen_split_187 (insn, operands);
   27092              : 
   27093              :                 case 5:
   27094              :                   if (!(
   27095              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27096              : (TARGET_64BIT) && 
   27097              : #line 8624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27098              : ( reload_completed)))
   27099              :                     return NULL;
   27100              :                   return gen_split_188 (insn, operands);
   27101              : 
   27102              :                 default:
   27103              :                   return NULL;
   27104              :                 }
   27105              : 
   27106              :             case MINUS:
   27107              :               x13 = XEXP (x9, 1);
   27108              :               if (GET_CODE (x13) != EQ)
   27109              :                 return NULL;
   27110              :               x14 = XEXP (x13, 1);
   27111              :               if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   27112              :                 return NULL;
   27113              :               x4 = XEXP (x2, 0);
   27114              :               operands[0] = x4;
   27115              :               x11 = XEXP (x9, 0);
   27116              :               operands[1] = x11;
   27117              :               x15 = XEXP (x13, 0);
   27118              :               operands[3] = x15;
   27119              :               if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
   27120              :                 return NULL;
   27121              :               x10 = XEXP (x3, 1);
   27122              :               operands[2] = x10;
   27123              :               switch (GET_MODE (operands[0]))
   27124              :                 {
   27125              :                 case E_QImode:
   27126              :                   if (pattern1588 (x3, 
   27127              : E_QImode) != 0
   27128              :                       || !(
   27129              : #line 11021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27130              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   27131              :    && ix86_pre_reload_split ()) && 
   27132              : #line 11024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27133              : ( 1)))
   27134              :                     return NULL;
   27135              :                   return gen_split_224 (insn, operands);
   27136              : 
   27137              :                 case E_HImode:
   27138              :                   if (pattern1588 (x3, 
   27139              : E_HImode) != 0
   27140              :                       || !(
   27141              : #line 11021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27142              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   27143              :    && ix86_pre_reload_split ()) && 
   27144              : #line 11024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27145              : ( 1)))
   27146              :                     return NULL;
   27147              :                   return gen_split_225 (insn, operands);
   27148              : 
   27149              :                 case E_SImode:
   27150              :                   if (pattern1589 (x3, 
   27151              : E_SImode) != 0
   27152              :                       || !(
   27153              : #line 11021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27154              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   27155              :    && ix86_pre_reload_split ()) && 
   27156              : #line 11024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27157              : ( 1)))
   27158              :                     return NULL;
   27159              :                   return gen_split_226 (insn, operands);
   27160              : 
   27161              :                 case E_DImode:
   27162              :                   if (pattern1589 (x3, 
   27163              : E_DImode) != 0
   27164              :                       || !((
   27165              : #line 11021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27166              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   27167              :    && ix86_pre_reload_split ()) && 
   27168              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27169              : (TARGET_64BIT)) && 
   27170              : #line 11024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27171              : ( 1)))
   27172              :                     return NULL;
   27173              :                   return gen_split_227 (insn, operands);
   27174              : 
   27175              :                 default:
   27176              :                   return NULL;
   27177              :                 }
   27178              : 
   27179              :             default:
   27180              :               return NULL;
   27181              :             }
   27182              : 
   27183              :         case IF_THEN_ELSE:
   27184              :           x9 = XEXP (x3, 0);
   27185              :           if (!bt_comparison_operator (x9, E_VOIDmode))
   27186              :             return NULL;
   27187              :           x13 = XEXP (x9, 1);
   27188              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   27189              :             return NULL;
   27190              :           switch (pattern711 (x1))
   27191              :             {
   27192              :             case 0:
   27193              :               x11 = XEXP (x9, 0);
   27194              :               operands[2] = x11;
   27195              :               x10 = XEXP (x3, 1);
   27196              :               if (GET_CODE (x10) != PLUS)
   27197              :                 return NULL;
   27198              :               x16 = XEXP (x10, 1);
   27199              :               if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   27200              :                 return NULL;
   27201              :               x4 = XEXP (x2, 0);
   27202              :               operands[0] = x4;
   27203              :               operands[1] = x9;
   27204              :               switch (pattern1599 (x3))
   27205              :                 {
   27206              :                 case 0:
   27207              :                   if (!(
   27208              : #line 9094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27209              : (TARGET_CMOVE) && 
   27210              : #line 9096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27211              : ( reload_completed)))
   27212              :                     return NULL;
   27213              :                   return gen_split_196 (insn, operands);
   27214              : 
   27215              :                 case 1:
   27216              :                   if (!(
   27217              : #line 9094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27218              : (TARGET_CMOVE) && 
   27219              : #line 9096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27220              : ( reload_completed)))
   27221              :                     return NULL;
   27222              :                   return gen_split_197 (insn, operands);
   27223              : 
   27224              :                 case 2:
   27225              :                   if (!((
   27226              : #line 9094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27227              : (TARGET_CMOVE) && 
   27228              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27229              : (TARGET_64BIT)) && 
   27230              : #line 9096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27231              : ( reload_completed)))
   27232              :                     return NULL;
   27233              :                   return gen_split_198 (insn, operands);
   27234              : 
   27235              :                 default:
   27236              :                   return NULL;
   27237              :                 }
   27238              : 
   27239              :             case 1:
   27240              :               x11 = XEXP (x9, 0);
   27241              :               x17 = XEXP (x11, 1);
   27242              :               if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   27243              :                 return NULL;
   27244              :               switch (pattern1355 (x2))
   27245              :                 {
   27246              :                 case 0:
   27247              :                   x18 = XEXP (x11, 2);
   27248              :                   operands[2] = x18;
   27249              :                   switch (pattern1551 (x2))
   27250              :                     {
   27251              :                     case 0:
   27252              :                       if ((
   27253              : #line 20192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27254              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   27255              :    && (CONST_INT_P (operands[2])
   27256              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (SImode)
   27257              :           && INTVAL (operands[2])
   27258              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   27259              :        : !memory_operand (operands[1], SImode))
   27260              :    && ix86_pre_reload_split ()) && 
   27261              : #line 20200 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27262              : ( 1)))
   27263              :                         return gen_split_822 (insn, operands);
   27264              :                       break;
   27265              : 
   27266              :                     case 1:
   27267              :                       if (((
   27268              : #line 20192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27269              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   27270              :    && (CONST_INT_P (operands[2])
   27271              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (DImode)
   27272              :           && INTVAL (operands[2])
   27273              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   27274              :        : !memory_operand (operands[1], DImode))
   27275              :    && ix86_pre_reload_split ()) && 
   27276              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27277              : (TARGET_64BIT)) && 
   27278              : #line 20200 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27279              : ( 1)))
   27280              :                         return gen_split_823 (insn, operands);
   27281              :                       break;
   27282              : 
   27283              :                     case 2:
   27284              :                       if ((
   27285              : #line 20335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27286              : (TARGET_USE_BT && TARGET_CMOVE
   27287              :    && ix86_pre_reload_split ()) && 
   27288              : #line 20338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27289              : ( 1)))
   27290              :                         return gen_split_834 (insn, operands);
   27291              :                       break;
   27292              : 
   27293              :                     case 3:
   27294              :                       if (((
   27295              : #line 20335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27296              : (TARGET_USE_BT && TARGET_CMOVE
   27297              :    && ix86_pre_reload_split ()) && 
   27298              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27299              : (TARGET_64BIT)) && 
   27300              : #line 20338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27301              : ( 1)))
   27302              :                         return gen_split_835 (insn, operands);
   27303              :                       break;
   27304              : 
   27305              :                     case 4:
   27306              :                       if ((
   27307              : #line 20335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27308              : (TARGET_USE_BT && TARGET_CMOVE
   27309              :    && ix86_pre_reload_split ()) && 
   27310              : #line 20338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27311              : ( 1)))
   27312              :                         return gen_split_836 (insn, operands);
   27313              :                       break;
   27314              : 
   27315              :                     case 5:
   27316              :                       if (((
   27317              : #line 20335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27318              : (TARGET_USE_BT && TARGET_CMOVE
   27319              :    && ix86_pre_reload_split ()) && 
   27320              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27321              : (TARGET_64BIT)) && 
   27322              : #line 20338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27323              : ( 1)))
   27324              :                         return gen_split_837 (insn, operands);
   27325              :                       break;
   27326              : 
   27327              :                     case 6:
   27328              :                       if (((
   27329              : #line 20335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27330              : (TARGET_USE_BT && TARGET_CMOVE
   27331              :    && ix86_pre_reload_split ()) && 
   27332              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27333              : (TARGET_64BIT)) && 
   27334              : #line 20338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27335              : ( 1)))
   27336              :                         return gen_split_838 (insn, operands);
   27337              :                       break;
   27338              : 
   27339              :                     case 7:
   27340              :                       if (((
   27341              : #line 20335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27342              : (TARGET_USE_BT && TARGET_CMOVE
   27343              :    && ix86_pre_reload_split ()) && 
   27344              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27345              : (TARGET_64BIT)) && 
   27346              : #line 20338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27347              : ( 1)))
   27348              :                         return gen_split_839 (insn, operands);
   27349              :                       break;
   27350              : 
   27351              :                     default:
   27352              :                       break;
   27353              :                     }
   27354              :                   if (GET_CODE (x18) != SUBREG)
   27355              :                     return NULL;
   27356              :                   switch (pattern1552 (x2))
   27357              :                     {
   27358              :                     case 0:
   27359              :                       if (!(
   27360              : #line 20268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27361              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   27362              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   27363              :       == GET_MODE_BITSIZE (SImode)-1
   27364              :    && ix86_pre_reload_split ()) && 
   27365              : #line 20273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27366              : ( 1)))
   27367              :                         return NULL;
   27368              :                       return gen_split_826 (insn, operands);
   27369              : 
   27370              :                     case 1:
   27371              :                       if (!((
   27372              : #line 20268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27373              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   27374              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   27375              :       == GET_MODE_BITSIZE (DImode)-1
   27376              :    && ix86_pre_reload_split ()) && 
   27377              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27378              : (TARGET_64BIT)) && 
   27379              : #line 20273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27380              : ( 1)))
   27381              :                         return NULL;
   27382              :                       return gen_split_827 (insn, operands);
   27383              : 
   27384              :                     default:
   27385              :                       return NULL;
   27386              :                     }
   27387              : 
   27388              :                 case 1:
   27389              :                   if (!(
   27390              : #line 20231 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27391              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   27392              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   27393              :       == GET_MODE_BITSIZE (SImode)-1
   27394              :    && ix86_pre_reload_split ()) && 
   27395              : #line 20236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27396              : ( 1)))
   27397              :                     return NULL;
   27398              :                   return gen_split_824 (insn, operands);
   27399              : 
   27400              :                 case 2:
   27401              :                   if (!((
   27402              : #line 20231 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27403              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   27404              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   27405              :       == GET_MODE_BITSIZE (DImode)-1
   27406              :    && ix86_pre_reload_split ()) && 
   27407              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27408              : (TARGET_64BIT)) && 
   27409              : #line 20236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27410              : ( 1)))
   27411              :                     return NULL;
   27412              :                   return gen_split_825 (insn, operands);
   27413              : 
   27414              :                 default:
   27415              :                   return NULL;
   27416              :                 }
   27417              : 
   27418              :             default:
   27419              :               return NULL;
   27420              :             }
   27421              : 
   27422              :         case COMPARE:
   27423              :           return split_27 (x1, insn);
   27424              : 
   27425              :         case AND:
   27426              :           return split_25 (x1, insn);
   27427              : 
   27428              :         case IOR:
   27429              :           return split_26 (x1, insn);
   27430              : 
   27431              :         case XOR:
   27432              :           return split_24 (x1, insn);
   27433              : 
   27434              :         case NOT:
   27435              :           x9 = XEXP (x3, 0);
   27436              :           if (GET_CODE (x9) != XOR
   27437              :               || pattern347 (x1) != 0)
   27438              :             return NULL;
   27439              :           switch (GET_MODE (operands[0]))
   27440              :             {
   27441              :             case E_HImode:
   27442              :               if (!nonimmediate_operand (operands[0], E_HImode)
   27443              :                   || pattern218 (x3, 
   27444              : E_HImode) != 0
   27445              :                   || !(
   27446              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27447              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)) && 
   27448              : #line 14473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27449              : ( reload_completed)))
   27450              :                 return NULL;
   27451              :               return gen_split_397 (insn, operands);
   27452              : 
   27453              :             case E_SImode:
   27454              :               if (!nonimmediate_operand (operands[0], E_SImode)
   27455              :                   || pattern219 (x3, 
   27456              : E_SImode) != 0
   27457              :                   || !(
   27458              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27459              : (ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)) && 
   27460              : #line 14473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27461              : ( reload_completed)))
   27462              :                 return NULL;
   27463              :               return gen_split_398 (insn, operands);
   27464              : 
   27465              :             case E_DImode:
   27466              :               if (!nonimmediate_operand (operands[0], E_DImode)
   27467              :                   || pattern219 (x3, 
   27468              : E_DImode) != 0
   27469              :                   || !((
   27470              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27471              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   27472              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27473              : (TARGET_64BIT)) && 
   27474              : #line 14473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27475              : ( reload_completed)))
   27476              :                 return NULL;
   27477              :               return gen_split_399 (insn, operands);
   27478              : 
   27479              :             case E_QImode:
   27480              :               if (!nonimmediate_operand (operands[0], E_QImode)
   27481              :                   || pattern218 (x3, 
   27482              : E_QImode) != 0
   27483              :                   || !(
   27484              : #line 14700 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27485              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)) && 
   27486              : #line 14702 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27487              : ( reload_completed)))
   27488              :                 return NULL;
   27489              :               return gen_split_405 (insn, operands);
   27490              : 
   27491              :             default:
   27492              :               return NULL;
   27493              :             }
   27494              : 
   27495              :         case NEG:
   27496              :           return split_31 (x1, insn);
   27497              : 
   27498              :         case ABS:
   27499              :           return split_33 (x1, insn);
   27500              : 
   27501              :         case ASHIFT:
   27502              :           return split_30 (x1, insn);
   27503              : 
   27504              :         case ROTATE:
   27505              :           return split_35 (x1, insn);
   27506              : 
   27507              :         case ROTATERT:
   27508              :           return split_34 (x1, insn);
   27509              : 
   27510              :         case CTZ:
   27511              :           switch (pattern411 (x1))
   27512              :             {
   27513              :             case 0:
   27514              :               if (!
   27515              : #line 22117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27516              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   27517              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   27518              :    && epilogue_completed
   27519              :    && optimize_function_for_speed_p (cfun)
   27520              :    && !reg_mentioned_p (operands[0], operands[1])))
   27521              :                 return NULL;
   27522              :               return gen_split_877 (insn, operands);
   27523              : 
   27524              :             case 1:
   27525              :               if (!(
   27526              : #line 22117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27527              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   27528              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   27529              :    && epilogue_completed
   27530              :    && optimize_function_for_speed_p (cfun)
   27531              :    && !reg_mentioned_p (operands[0], operands[1])) && 
   27532              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27533              : (TARGET_64BIT)))
   27534              :                 return NULL;
   27535              :               return gen_split_878 (insn, operands);
   27536              : 
   27537              :             default:
   27538              :               return NULL;
   27539              :             }
   27540              : 
   27541              :         case SIGN_EXTEND:
   27542              :           if (GET_MODE (x3) != E_DImode)
   27543              :             return NULL;
   27544              :           x6 = XVECEXP (x1, 0, 1);
   27545              :           if (pattern357 (x6) != 0)
   27546              :             return NULL;
   27547              :           x4 = XEXP (x2, 0);
   27548              :           operands[0] = x4;
   27549              :           if (!register_operand (operands[0], E_DImode))
   27550              :             return NULL;
   27551              :           x9 = XEXP (x3, 0);
   27552              :           if (GET_MODE (x9) != E_SImode)
   27553              :             return NULL;
   27554              :           switch (GET_CODE (x9))
   27555              :             {
   27556              :             case CTZ:
   27557              :               x11 = XEXP (x9, 0);
   27558              :               operands[1] = x11;
   27559              :               if (!nonimmediate_operand (operands[1], E_SImode)
   27560              :                   || !
   27561              : #line 22228 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27562              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   27563              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   27564              :    && epilogue_completed
   27565              :    && optimize_function_for_speed_p (cfun)
   27566              :    && !reg_mentioned_p (operands[0], operands[1])))
   27567              :                 return NULL;
   27568              :               return gen_split_880 (insn, operands);
   27569              : 
   27570              :             case XOR:
   27571              :               x11 = XEXP (x9, 0);
   27572              :               if (GET_CODE (x11) != MINUS
   27573              :                   || pattern1172 (x9) != 0)
   27574              :                 return NULL;
   27575              :               x17 = XEXP (x11, 1);
   27576              :               x19 = XEXP (x17, 0);
   27577              :               operands[1] = x19;
   27578              :               if (!nonimmediate_operand (operands[1], E_SImode)
   27579              :                   || !(
   27580              : #line 22397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27581              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()) && 
   27582              : #line 22399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27583              : ( 1)))
   27584              :                 return NULL;
   27585              :               return gen_split_884 (insn, operands);
   27586              : 
   27587              :             default:
   27588              :               return NULL;
   27589              :             }
   27590              : 
   27591              :         case CLZ:
   27592              :           switch (pattern411 (x1))
   27593              :             {
   27594              :             case 0:
   27595              :               if (!(
   27596              : #line 22569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27597              : (TARGET_LZCNT) && 
   27598              : #line 22571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27599              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27600              :    && optimize_function_for_speed_p (cfun)
   27601              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27602              :                 return NULL;
   27603              :               return gen_split_894 (insn, operands);
   27604              : 
   27605              :             case 1:
   27606              :               if (!((
   27607              : #line 22569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27608              : (TARGET_LZCNT) && 
   27609              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27610              : (TARGET_64BIT)) && 
   27611              : #line 22571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27612              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27613              :    && optimize_function_for_speed_p (cfun)
   27614              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27615              :                 return NULL;
   27616              :               return gen_split_895 (insn, operands);
   27617              : 
   27618              :             default:
   27619              :               return NULL;
   27620              :             }
   27621              : 
   27622              :         case UNSPEC:
   27623              :           if (XVECLEN (x3, 0) != 1)
   27624              :             return NULL;
   27625              :           x6 = XVECEXP (x1, 0, 1);
   27626              :           if (pattern237 (x6, 
   27627              : E_CCmode, 
   27628              : 17) != 0)
   27629              :             return NULL;
   27630              :           x4 = XEXP (x2, 0);
   27631              :           operands[0] = x4;
   27632              :           x20 = XVECEXP (x3, 0, 0);
   27633              :           operands[1] = x20;
   27634              :           switch (XINT (x3, 1))
   27635              :             {
   27636              :             case 98:
   27637              :               switch (pattern1357 (x3))
   27638              :                 {
   27639              :                 case 0:
   27640              :                   if (!(
   27641              : #line 22693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27642              : (TARGET_BMI) && 
   27643              : #line 22734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27644              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27645              :    && optimize_function_for_speed_p (cfun)
   27646              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27647              :                     return NULL;
   27648              :                   return gen_split_902 (insn, operands);
   27649              : 
   27650              :                 case 1:
   27651              :                   if (!((((
   27652              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27653              : (TARGET_64BIT) && 
   27654              : #line 22693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27655              : (TARGET_BMI)) && 
   27656              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27657              : (TARGET_64BIT)) && 
   27658              : #line 22693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27659              : (TARGET_BMI)) && 
   27660              : #line 22734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27661              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27662              :    && optimize_function_for_speed_p (cfun)
   27663              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27664              :                     return NULL;
   27665              :                   return gen_split_904 (insn, operands);
   27666              : 
   27667              :                 default:
   27668              :                   return NULL;
   27669              :                 }
   27670              : 
   27671              :             case 97:
   27672              :               switch (pattern1357 (x3))
   27673              :                 {
   27674              :                 case 0:
   27675              :                   if (!(
   27676              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27677              : (TARGET_LZCNT) && 
   27678              : #line 22734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27679              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27680              :    && optimize_function_for_speed_p (cfun)
   27681              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27682              :                     return NULL;
   27683              :                   return gen_split_903 (insn, operands);
   27684              : 
   27685              :                 case 1:
   27686              :                   if (!((((
   27687              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27688              : (TARGET_64BIT) && 
   27689              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27690              : (TARGET_LZCNT)) && 
   27691              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27692              : (TARGET_64BIT)) && 
   27693              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27694              : (TARGET_LZCNT)) && 
   27695              : #line 22734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27696              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27697              :    && optimize_function_for_speed_p (cfun)
   27698              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27699              :                     return NULL;
   27700              :                   return gen_split_905 (insn, operands);
   27701              : 
   27702              :                 default:
   27703              :                   return NULL;
   27704              :                 }
   27705              : 
   27706              :             default:
   27707              :               return NULL;
   27708              :             }
   27709              : 
   27710              :         case POPCOUNT:
   27711              :           x6 = XVECEXP (x1, 0, 1);
   27712              :           if (pattern357 (x6) != 0)
   27713              :             return NULL;
   27714              :           x4 = XEXP (x2, 0);
   27715              :           operands[0] = x4;
   27716              :           x9 = XEXP (x3, 0);
   27717              :           switch (GET_CODE (x9))
   27718              :             {
   27719              :             case REG:
   27720              :             case SUBREG:
   27721              :             case MEM:
   27722              :               operands[1] = x9;
   27723              :               switch (pattern410 (x3))
   27724              :                 {
   27725              :                 case 0:
   27726              :                   if (!(
   27727              : #line 23378 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27728              : (TARGET_POPCNT) && 
   27729              : #line 23386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27730              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27731              :    && optimize_function_for_speed_p (cfun)
   27732              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27733              :                     return NULL;
   27734              :                   return gen_split_918 (insn, operands);
   27735              : 
   27736              :                 case 1:
   27737              :                   if (!((
   27738              : #line 23378 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27739              : (TARGET_POPCNT) && 
   27740              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27741              : (TARGET_64BIT)) && 
   27742              : #line 23386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27743              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27744              :    && optimize_function_for_speed_p (cfun)
   27745              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27746              :                     return NULL;
   27747              :                   return gen_split_919 (insn, operands);
   27748              : 
   27749              :                 default:
   27750              :                   return NULL;
   27751              :                 }
   27752              : 
   27753              :             case ZERO_EXTEND:
   27754              :               if (pattern1191 (x3, 
   27755              : E_HImode, 
   27756              : E_SImode) != 0
   27757              :                   || !(
   27758              : #line 23548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27759              : (TARGET_POPCNT
   27760              :    && ix86_pre_reload_split ()) && 
   27761              : #line 23551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27762              : ( 1)))
   27763              :                 return NULL;
   27764              :               return gen_split_922 (insn, operands);
   27765              : 
   27766              :             default:
   27767              :               return NULL;
   27768              :             }
   27769              : 
   27770              :         default:
   27771              :           return NULL;
   27772              :         }
   27773              : 
   27774              :     case SIMPLE_RETURN:
   27775              :       x6 = XVECEXP (x1, 0, 1);
   27776              :       if (GET_CODE (x6) != USE)
   27777              :         return NULL;
   27778              :       x21 = XEXP (x6, 0);
   27779              :       operands[0] = x21;
   27780              :       if (!const_int_operand (operands[0], E_SImode)
   27781              :           || !(
   27782              : #line 21708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27783              : (reload_completed) && 
   27784              : #line 21710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27785              : ( cfun->machine->function_return_type != indirect_branch_keep)))
   27786              :         return NULL;
   27787              :       return gen_split_872 (insn, operands);
   27788              : 
   27789              :     default:
   27790              :       return NULL;
   27791              :     }
   27792              : }
   27793              : 
   27794              :  rtx_insn *
   27795              : split_66 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   27796              : {
   27797              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   27798              :   rtx x2, x3, x4, x5, x6, x7, x8;
   27799              :   rtx_insn *res ATTRIBUTE_UNUSED;
   27800              :   x2 = XEXP (x1, 1);
   27801              :   x3 = XEXP (x2, 0);
   27802              :   x4 = XEXP (x3, 0);
   27803              :   switch (GET_CODE (x4))
   27804              :     {
   27805              :     case REG:
   27806              :     case SUBREG:
   27807              :     case MEM:
   27808              :     case NOT:
   27809              :       switch (pattern537 (x2))
   27810              :         {
   27811              :         case 0:
   27812              :           if (!((
   27813              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27814              : ((64 == 64 || TARGET_AVX512VL
   27815              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27816              :    && ix86_pre_reload_split ()
   27817              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27818              :                     STRIP_UNARY (operands[4]))
   27819              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27820              :                        STRIP_UNARY (operands[4]))
   27821              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27822              :                        STRIP_UNARY (operands[3]))
   27823              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27824              :                        STRIP_UNARY (operands[3])))) && 
   27825              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27826              : (TARGET_AVX512F)) && 
   27827              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27828              : ( 1)))
   27829              :             return NULL;
   27830              :           return gen_split_1741 (insn, operands);
   27831              : 
   27832              :         case 1:
   27833              :           if (!((
   27834              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27835              : ((32 == 64 || TARGET_AVX512VL
   27836              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27837              :    && ix86_pre_reload_split ()
   27838              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27839              :                     STRIP_UNARY (operands[4]))
   27840              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27841              :                        STRIP_UNARY (operands[4]))
   27842              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27843              :                        STRIP_UNARY (operands[3]))
   27844              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27845              :                        STRIP_UNARY (operands[3])))) && 
   27846              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27847              : (TARGET_AVX)) && 
   27848              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27849              : ( 1)))
   27850              :             return NULL;
   27851              :           return gen_split_1768 (insn, operands);
   27852              : 
   27853              :         case 2:
   27854              :           if (!(
   27855              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27856              : ((16 == 64 || TARGET_AVX512VL
   27857              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27858              :    && ix86_pre_reload_split ()
   27859              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27860              :                     STRIP_UNARY (operands[4]))
   27861              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27862              :                        STRIP_UNARY (operands[4]))
   27863              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27864              :                        STRIP_UNARY (operands[3]))
   27865              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27866              :                        STRIP_UNARY (operands[3])))) && 
   27867              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27868              : ( 1)))
   27869              :             return NULL;
   27870              :           return gen_split_1795 (insn, operands);
   27871              : 
   27872              :         case 3:
   27873              :           if (!((
   27874              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27875              : ((64 == 64 || TARGET_AVX512VL
   27876              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27877              :    && ix86_pre_reload_split ()
   27878              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27879              :                     STRIP_UNARY (operands[4]))
   27880              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27881              :                        STRIP_UNARY (operands[4]))
   27882              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27883              :                        STRIP_UNARY (operands[3]))
   27884              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27885              :                        STRIP_UNARY (operands[3])))) && 
   27886              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27887              : (TARGET_AVX512F)) && 
   27888              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27889              : ( 1)))
   27890              :             return NULL;
   27891              :           return gen_split_1822 (insn, operands);
   27892              : 
   27893              :         case 4:
   27894              :           if (!((
   27895              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27896              : ((32 == 64 || TARGET_AVX512VL
   27897              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27898              :    && ix86_pre_reload_split ()
   27899              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27900              :                     STRIP_UNARY (operands[4]))
   27901              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27902              :                        STRIP_UNARY (operands[4]))
   27903              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27904              :                        STRIP_UNARY (operands[3]))
   27905              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27906              :                        STRIP_UNARY (operands[3])))) && 
   27907              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27908              : (TARGET_AVX)) && 
   27909              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27910              : ( 1)))
   27911              :             return NULL;
   27912              :           return gen_split_1849 (insn, operands);
   27913              : 
   27914              :         case 5:
   27915              :           if (!(
   27916              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27917              : ((16 == 64 || TARGET_AVX512VL
   27918              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27919              :    && ix86_pre_reload_split ()
   27920              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27921              :                     STRIP_UNARY (operands[4]))
   27922              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27923              :                        STRIP_UNARY (operands[4]))
   27924              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27925              :                        STRIP_UNARY (operands[3]))
   27926              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27927              :                        STRIP_UNARY (operands[3])))) && 
   27928              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27929              : ( 1)))
   27930              :             return NULL;
   27931              :           return gen_split_1876 (insn, operands);
   27932              : 
   27933              :         case 6:
   27934              :           if (!((
   27935              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27936              : ((64 == 64 || TARGET_AVX512VL
   27937              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27938              :    && ix86_pre_reload_split ()
   27939              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27940              :                     STRIP_UNARY (operands[4]))
   27941              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27942              :                        STRIP_UNARY (operands[4]))
   27943              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27944              :                        STRIP_UNARY (operands[3]))
   27945              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27946              :                        STRIP_UNARY (operands[3])))) && 
   27947              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27948              : (TARGET_AVX512F)) && 
   27949              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27950              : ( 1)))
   27951              :             return NULL;
   27952              :           return gen_split_1903 (insn, operands);
   27953              : 
   27954              :         case 7:
   27955              :           if (!((
   27956              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27957              : ((32 == 64 || TARGET_AVX512VL
   27958              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27959              :    && ix86_pre_reload_split ()
   27960              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27961              :                     STRIP_UNARY (operands[4]))
   27962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27963              :                        STRIP_UNARY (operands[4]))
   27964              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27965              :                        STRIP_UNARY (operands[3]))
   27966              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27967              :                        STRIP_UNARY (operands[3])))) && 
   27968              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27969              : (TARGET_AVX)) && 
   27970              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27971              : ( 1)))
   27972              :             return NULL;
   27973              :           return gen_split_1930 (insn, operands);
   27974              : 
   27975              :         case 8:
   27976              :           if (!(
   27977              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27978              : ((16 == 64 || TARGET_AVX512VL
   27979              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27980              :    && ix86_pre_reload_split ()
   27981              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27982              :                     STRIP_UNARY (operands[4]))
   27983              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27984              :                        STRIP_UNARY (operands[4]))
   27985              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27986              :                        STRIP_UNARY (operands[3]))
   27987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27988              :                        STRIP_UNARY (operands[3])))) && 
   27989              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27990              : ( 1)))
   27991              :             return NULL;
   27992              :           return gen_split_1957 (insn, operands);
   27993              : 
   27994              :         case 9:
   27995              :           if (!((
   27996              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27997              : ((64 == 64 || TARGET_AVX512VL
   27998              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27999              :    && ix86_pre_reload_split ()
   28000              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28001              :                     STRIP_UNARY (operands[4]))
   28002              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28003              :                        STRIP_UNARY (operands[4]))
   28004              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28005              :                        STRIP_UNARY (operands[3]))
   28006              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28007              :                        STRIP_UNARY (operands[3])))) && 
   28008              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28009              : (TARGET_AVX512F)) && 
   28010              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28011              : ( 1)))
   28012              :             return NULL;
   28013              :           return gen_split_1984 (insn, operands);
   28014              : 
   28015              :         case 10:
   28016              :           if (!((
   28017              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28018              : ((32 == 64 || TARGET_AVX512VL
   28019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28020              :    && ix86_pre_reload_split ()
   28021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28022              :                     STRIP_UNARY (operands[4]))
   28023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28024              :                        STRIP_UNARY (operands[4]))
   28025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28026              :                        STRIP_UNARY (operands[3]))
   28027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28028              :                        STRIP_UNARY (operands[3])))) && 
   28029              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28030              : (TARGET_AVX)) && 
   28031              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28032              : ( 1)))
   28033              :             return NULL;
   28034              :           return gen_split_2011 (insn, operands);
   28035              : 
   28036              :         case 11:
   28037              :           if (!(
   28038              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28039              : ((16 == 64 || TARGET_AVX512VL
   28040              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28041              :    && ix86_pre_reload_split ()
   28042              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28043              :                     STRIP_UNARY (operands[4]))
   28044              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28045              :                        STRIP_UNARY (operands[4]))
   28046              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28047              :                        STRIP_UNARY (operands[3]))
   28048              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28049              :                        STRIP_UNARY (operands[3])))) && 
   28050              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28051              : ( 1)))
   28052              :             return NULL;
   28053              :           return gen_split_2038 (insn, operands);
   28054              : 
   28055              :         case 12:
   28056              :           if (!((
   28057              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28058              : ((64 == 64 || TARGET_AVX512VL
   28059              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28060              :    && ix86_pre_reload_split ()
   28061              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28062              :                     STRIP_UNARY (operands[4]))
   28063              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28064              :                        STRIP_UNARY (operands[4]))
   28065              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28066              :                        STRIP_UNARY (operands[3]))
   28067              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28068              :                        STRIP_UNARY (operands[3])))) && 
   28069              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28070              : (TARGET_AVX512F)) && 
   28071              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28072              : ( 1)))
   28073              :             return NULL;
   28074              :           return gen_split_1744 (insn, operands);
   28075              : 
   28076              :         case 13:
   28077              :           if (!((
   28078              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28079              : ((32 == 64 || TARGET_AVX512VL
   28080              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28081              :    && ix86_pre_reload_split ()
   28082              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28083              :                     STRIP_UNARY (operands[4]))
   28084              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28085              :                        STRIP_UNARY (operands[4]))
   28086              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28087              :                        STRIP_UNARY (operands[3]))
   28088              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28089              :                        STRIP_UNARY (operands[3])))) && 
   28090              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28091              : (TARGET_AVX)) && 
   28092              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28093              : ( 1)))
   28094              :             return NULL;
   28095              :           return gen_split_1771 (insn, operands);
   28096              : 
   28097              :         case 14:
   28098              :           if (!(
   28099              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28100              : ((16 == 64 || TARGET_AVX512VL
   28101              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28102              :    && ix86_pre_reload_split ()
   28103              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28104              :                     STRIP_UNARY (operands[4]))
   28105              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28106              :                        STRIP_UNARY (operands[4]))
   28107              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28108              :                        STRIP_UNARY (operands[3]))
   28109              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28110              :                        STRIP_UNARY (operands[3])))) && 
   28111              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28112              : ( 1)))
   28113              :             return NULL;
   28114              :           return gen_split_1798 (insn, operands);
   28115              : 
   28116              :         case 15:
   28117              :           if (!((
   28118              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28119              : ((64 == 64 || TARGET_AVX512VL
   28120              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28121              :    && ix86_pre_reload_split ()
   28122              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28123              :                     STRIP_UNARY (operands[4]))
   28124              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28125              :                        STRIP_UNARY (operands[4]))
   28126              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28127              :                        STRIP_UNARY (operands[3]))
   28128              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28129              :                        STRIP_UNARY (operands[3])))) && 
   28130              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28131              : (TARGET_AVX512F)) && 
   28132              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28133              : ( 1)))
   28134              :             return NULL;
   28135              :           return gen_split_1825 (insn, operands);
   28136              : 
   28137              :         case 16:
   28138              :           if (!((
   28139              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28140              : ((32 == 64 || TARGET_AVX512VL
   28141              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28142              :    && ix86_pre_reload_split ()
   28143              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28144              :                     STRIP_UNARY (operands[4]))
   28145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28146              :                        STRIP_UNARY (operands[4]))
   28147              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28148              :                        STRIP_UNARY (operands[3]))
   28149              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28150              :                        STRIP_UNARY (operands[3])))) && 
   28151              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28152              : (TARGET_AVX)) && 
   28153              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28154              : ( 1)))
   28155              :             return NULL;
   28156              :           return gen_split_1852 (insn, operands);
   28157              : 
   28158              :         case 17:
   28159              :           if (!(
   28160              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28161              : ((16 == 64 || TARGET_AVX512VL
   28162              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28163              :    && ix86_pre_reload_split ()
   28164              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28165              :                     STRIP_UNARY (operands[4]))
   28166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28167              :                        STRIP_UNARY (operands[4]))
   28168              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28169              :                        STRIP_UNARY (operands[3]))
   28170              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28171              :                        STRIP_UNARY (operands[3])))) && 
   28172              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28173              : ( 1)))
   28174              :             return NULL;
   28175              :           return gen_split_1879 (insn, operands);
   28176              : 
   28177              :         case 18:
   28178              :           if (!((
   28179              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28180              : ((64 == 64 || TARGET_AVX512VL
   28181              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28182              :    && ix86_pre_reload_split ()
   28183              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28184              :                     STRIP_UNARY (operands[4]))
   28185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28186              :                        STRIP_UNARY (operands[4]))
   28187              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28188              :                        STRIP_UNARY (operands[3]))
   28189              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28190              :                        STRIP_UNARY (operands[3])))) && 
   28191              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28192              : (TARGET_AVX512F)) && 
   28193              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28194              : ( 1)))
   28195              :             return NULL;
   28196              :           return gen_split_1906 (insn, operands);
   28197              : 
   28198              :         case 19:
   28199              :           if (!((
   28200              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28201              : ((32 == 64 || TARGET_AVX512VL
   28202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28203              :    && ix86_pre_reload_split ()
   28204              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28205              :                     STRIP_UNARY (operands[4]))
   28206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28207              :                        STRIP_UNARY (operands[4]))
   28208              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28209              :                        STRIP_UNARY (operands[3]))
   28210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28211              :                        STRIP_UNARY (operands[3])))) && 
   28212              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28213              : (TARGET_AVX)) && 
   28214              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28215              : ( 1)))
   28216              :             return NULL;
   28217              :           return gen_split_1933 (insn, operands);
   28218              : 
   28219              :         case 20:
   28220              :           if (!(
   28221              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28222              : ((16 == 64 || TARGET_AVX512VL
   28223              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28224              :    && ix86_pre_reload_split ()
   28225              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28226              :                     STRIP_UNARY (operands[4]))
   28227              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28228              :                        STRIP_UNARY (operands[4]))
   28229              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28230              :                        STRIP_UNARY (operands[3]))
   28231              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28232              :                        STRIP_UNARY (operands[3])))) && 
   28233              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28234              : ( 1)))
   28235              :             return NULL;
   28236              :           return gen_split_1960 (insn, operands);
   28237              : 
   28238              :         case 21:
   28239              :           if (!((
   28240              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28241              : ((64 == 64 || TARGET_AVX512VL
   28242              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28243              :    && ix86_pre_reload_split ()
   28244              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28245              :                     STRIP_UNARY (operands[4]))
   28246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28247              :                        STRIP_UNARY (operands[4]))
   28248              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28249              :                        STRIP_UNARY (operands[3]))
   28250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28251              :                        STRIP_UNARY (operands[3])))) && 
   28252              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28253              : (TARGET_AVX512F)) && 
   28254              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28255              : ( 1)))
   28256              :             return NULL;
   28257              :           return gen_split_1987 (insn, operands);
   28258              : 
   28259              :         case 22:
   28260              :           if (!((
   28261              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28262              : ((32 == 64 || TARGET_AVX512VL
   28263              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28264              :    && ix86_pre_reload_split ()
   28265              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28266              :                     STRIP_UNARY (operands[4]))
   28267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28268              :                        STRIP_UNARY (operands[4]))
   28269              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28270              :                        STRIP_UNARY (operands[3]))
   28271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28272              :                        STRIP_UNARY (operands[3])))) && 
   28273              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28274              : (TARGET_AVX)) && 
   28275              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28276              : ( 1)))
   28277              :             return NULL;
   28278              :           return gen_split_2014 (insn, operands);
   28279              : 
   28280              :         case 23:
   28281              :           if (!(
   28282              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28283              : ((16 == 64 || TARGET_AVX512VL
   28284              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28285              :    && ix86_pre_reload_split ()
   28286              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28287              :                     STRIP_UNARY (operands[4]))
   28288              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28289              :                        STRIP_UNARY (operands[4]))
   28290              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28291              :                        STRIP_UNARY (operands[3]))
   28292              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28293              :                        STRIP_UNARY (operands[3])))) && 
   28294              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28295              : ( 1)))
   28296              :             return NULL;
   28297              :           return gen_split_2041 (insn, operands);
   28298              : 
   28299              :         case 24:
   28300              :           if (!((
   28301              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28302              : ((64 == 64 || TARGET_AVX512VL
   28303              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28304              :    && ix86_pre_reload_split ()
   28305              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28306              :                     STRIP_UNARY (operands[4]))
   28307              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28308              :                        STRIP_UNARY (operands[4]))
   28309              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28310              :                        STRIP_UNARY (operands[3]))
   28311              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28312              :                        STRIP_UNARY (operands[3])))) && 
   28313              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28314              : (TARGET_AVX512F)) && 
   28315              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28316              : ( 1)))
   28317              :             return NULL;
   28318              :           return gen_split_1747 (insn, operands);
   28319              : 
   28320              :         case 25:
   28321              :           if (!((
   28322              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28323              : ((32 == 64 || TARGET_AVX512VL
   28324              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28325              :    && ix86_pre_reload_split ()
   28326              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28327              :                     STRIP_UNARY (operands[4]))
   28328              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28329              :                        STRIP_UNARY (operands[4]))
   28330              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28331              :                        STRIP_UNARY (operands[3]))
   28332              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28333              :                        STRIP_UNARY (operands[3])))) && 
   28334              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28335              : (TARGET_AVX)) && 
   28336              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28337              : ( 1)))
   28338              :             return NULL;
   28339              :           return gen_split_1774 (insn, operands);
   28340              : 
   28341              :         case 26:
   28342              :           if (!(
   28343              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28344              : ((16 == 64 || TARGET_AVX512VL
   28345              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28346              :    && ix86_pre_reload_split ()
   28347              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28348              :                     STRIP_UNARY (operands[4]))
   28349              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28350              :                        STRIP_UNARY (operands[4]))
   28351              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28352              :                        STRIP_UNARY (operands[3]))
   28353              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28354              :                        STRIP_UNARY (operands[3])))) && 
   28355              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28356              : ( 1)))
   28357              :             return NULL;
   28358              :           return gen_split_1801 (insn, operands);
   28359              : 
   28360              :         case 27:
   28361              :           if (!((
   28362              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28363              : ((64 == 64 || TARGET_AVX512VL
   28364              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28365              :    && ix86_pre_reload_split ()
   28366              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28367              :                     STRIP_UNARY (operands[4]))
   28368              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28369              :                        STRIP_UNARY (operands[4]))
   28370              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28371              :                        STRIP_UNARY (operands[3]))
   28372              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28373              :                        STRIP_UNARY (operands[3])))) && 
   28374              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28375              : (TARGET_AVX512F)) && 
   28376              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28377              : ( 1)))
   28378              :             return NULL;
   28379              :           return gen_split_1828 (insn, operands);
   28380              : 
   28381              :         case 28:
   28382              :           if (!((
   28383              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28384              : ((32 == 64 || TARGET_AVX512VL
   28385              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28386              :    && ix86_pre_reload_split ()
   28387              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28388              :                     STRIP_UNARY (operands[4]))
   28389              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28390              :                        STRIP_UNARY (operands[4]))
   28391              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28392              :                        STRIP_UNARY (operands[3]))
   28393              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28394              :                        STRIP_UNARY (operands[3])))) && 
   28395              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28396              : (TARGET_AVX)) && 
   28397              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28398              : ( 1)))
   28399              :             return NULL;
   28400              :           return gen_split_1855 (insn, operands);
   28401              : 
   28402              :         case 29:
   28403              :           if (!(
   28404              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28405              : ((16 == 64 || TARGET_AVX512VL
   28406              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28407              :    && ix86_pre_reload_split ()
   28408              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28409              :                     STRIP_UNARY (operands[4]))
   28410              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28411              :                        STRIP_UNARY (operands[4]))
   28412              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28413              :                        STRIP_UNARY (operands[3]))
   28414              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28415              :                        STRIP_UNARY (operands[3])))) && 
   28416              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28417              : ( 1)))
   28418              :             return NULL;
   28419              :           return gen_split_1882 (insn, operands);
   28420              : 
   28421              :         case 30:
   28422              :           if (!((
   28423              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28424              : ((64 == 64 || TARGET_AVX512VL
   28425              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28426              :    && ix86_pre_reload_split ()
   28427              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28428              :                     STRIP_UNARY (operands[4]))
   28429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28430              :                        STRIP_UNARY (operands[4]))
   28431              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28432              :                        STRIP_UNARY (operands[3]))
   28433              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28434              :                        STRIP_UNARY (operands[3])))) && 
   28435              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28436              : (TARGET_AVX512F)) && 
   28437              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28438              : ( 1)))
   28439              :             return NULL;
   28440              :           return gen_split_1909 (insn, operands);
   28441              : 
   28442              :         case 31:
   28443              :           if (!((
   28444              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28445              : ((32 == 64 || TARGET_AVX512VL
   28446              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28447              :    && ix86_pre_reload_split ()
   28448              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28449              :                     STRIP_UNARY (operands[4]))
   28450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28451              :                        STRIP_UNARY (operands[4]))
   28452              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28453              :                        STRIP_UNARY (operands[3]))
   28454              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28455              :                        STRIP_UNARY (operands[3])))) && 
   28456              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28457              : (TARGET_AVX)) && 
   28458              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28459              : ( 1)))
   28460              :             return NULL;
   28461              :           return gen_split_1936 (insn, operands);
   28462              : 
   28463              :         case 32:
   28464              :           if (!(
   28465              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28466              : ((16 == 64 || TARGET_AVX512VL
   28467              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28468              :    && ix86_pre_reload_split ()
   28469              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28470              :                     STRIP_UNARY (operands[4]))
   28471              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28472              :                        STRIP_UNARY (operands[4]))
   28473              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28474              :                        STRIP_UNARY (operands[3]))
   28475              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28476              :                        STRIP_UNARY (operands[3])))) && 
   28477              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28478              : ( 1)))
   28479              :             return NULL;
   28480              :           return gen_split_1963 (insn, operands);
   28481              : 
   28482              :         case 33:
   28483              :           if (!((
   28484              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28485              : ((64 == 64 || TARGET_AVX512VL
   28486              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28487              :    && ix86_pre_reload_split ()
   28488              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28489              :                     STRIP_UNARY (operands[4]))
   28490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28491              :                        STRIP_UNARY (operands[4]))
   28492              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28493              :                        STRIP_UNARY (operands[3]))
   28494              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28495              :                        STRIP_UNARY (operands[3])))) && 
   28496              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28497              : (TARGET_AVX512F)) && 
   28498              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28499              : ( 1)))
   28500              :             return NULL;
   28501              :           return gen_split_1990 (insn, operands);
   28502              : 
   28503              :         case 34:
   28504              :           if (!((
   28505              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28506              : ((32 == 64 || TARGET_AVX512VL
   28507              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28508              :    && ix86_pre_reload_split ()
   28509              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28510              :                     STRIP_UNARY (operands[4]))
   28511              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28512              :                        STRIP_UNARY (operands[4]))
   28513              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28514              :                        STRIP_UNARY (operands[3]))
   28515              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28516              :                        STRIP_UNARY (operands[3])))) && 
   28517              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28518              : (TARGET_AVX)) && 
   28519              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28520              : ( 1)))
   28521              :             return NULL;
   28522              :           return gen_split_2017 (insn, operands);
   28523              : 
   28524              :         case 35:
   28525              :           if (!(
   28526              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28527              : ((16 == 64 || TARGET_AVX512VL
   28528              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28529              :    && ix86_pre_reload_split ()
   28530              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28531              :                     STRIP_UNARY (operands[4]))
   28532              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28533              :                        STRIP_UNARY (operands[4]))
   28534              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28535              :                        STRIP_UNARY (operands[3]))
   28536              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28537              :                        STRIP_UNARY (operands[3])))) && 
   28538              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28539              : ( 1)))
   28540              :             return NULL;
   28541              :           return gen_split_2044 (insn, operands);
   28542              : 
   28543              :         case 36:
   28544              :           if (!((
   28545              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28546              : ((64 == 64 || TARGET_AVX512VL
   28547              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28548              :    && ix86_pre_reload_split ()) && 
   28549              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28550              : (TARGET_AVX512F)) && 
   28551              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28552              : ( 1)))
   28553              :             return NULL;
   28554              :           return gen_split_3037 (insn, operands);
   28555              : 
   28556              :         case 37:
   28557              :           if (!((
   28558              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28559              : ((32 == 64 || TARGET_AVX512VL
   28560              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28561              :    && ix86_pre_reload_split ()) && 
   28562              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28563              : (TARGET_AVX)) && 
   28564              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28565              : ( 1)))
   28566              :             return NULL;
   28567              :           return gen_split_3046 (insn, operands);
   28568              : 
   28569              :         case 38:
   28570              :           if (!(
   28571              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28572              : ((16 == 64 || TARGET_AVX512VL
   28573              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28574              :    && ix86_pre_reload_split ()) && 
   28575              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28576              : ( 1)))
   28577              :             return NULL;
   28578              :           return gen_split_3055 (insn, operands);
   28579              : 
   28580              :         case 39:
   28581              :           if (!((
   28582              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28583              : ((64 == 64 || TARGET_AVX512VL
   28584              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28585              :    && ix86_pre_reload_split ()) && 
   28586              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28587              : (TARGET_AVX512F)) && 
   28588              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28589              : ( 1)))
   28590              :             return NULL;
   28591              :           return gen_split_3064 (insn, operands);
   28592              : 
   28593              :         case 40:
   28594              :           if (!((
   28595              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28596              : ((32 == 64 || TARGET_AVX512VL
   28597              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28598              :    && ix86_pre_reload_split ()) && 
   28599              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28600              : (TARGET_AVX)) && 
   28601              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28602              : ( 1)))
   28603              :             return NULL;
   28604              :           return gen_split_3073 (insn, operands);
   28605              : 
   28606              :         case 41:
   28607              :           if (!(
   28608              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28609              : ((16 == 64 || TARGET_AVX512VL
   28610              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28611              :    && ix86_pre_reload_split ()) && 
   28612              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28613              : ( 1)))
   28614              :             return NULL;
   28615              :           return gen_split_3082 (insn, operands);
   28616              : 
   28617              :         case 42:
   28618              :           if (!((
   28619              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28620              : ((64 == 64 || TARGET_AVX512VL
   28621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28622              :    && ix86_pre_reload_split ()) && 
   28623              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28624              : (TARGET_AVX512F)) && 
   28625              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28626              : ( 1)))
   28627              :             return NULL;
   28628              :           return gen_split_3091 (insn, operands);
   28629              : 
   28630              :         case 43:
   28631              :           if (!((
   28632              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28633              : ((32 == 64 || TARGET_AVX512VL
   28634              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28635              :    && ix86_pre_reload_split ()) && 
   28636              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28637              : (TARGET_AVX)) && 
   28638              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28639              : ( 1)))
   28640              :             return NULL;
   28641              :           return gen_split_3100 (insn, operands);
   28642              : 
   28643              :         case 44:
   28644              :           if (!(
   28645              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28646              : ((16 == 64 || TARGET_AVX512VL
   28647              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28648              :    && ix86_pre_reload_split ()) && 
   28649              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28650              : ( 1)))
   28651              :             return NULL;
   28652              :           return gen_split_3109 (insn, operands);
   28653              : 
   28654              :         case 45:
   28655              :           if (!((
   28656              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28657              : ((64 == 64 || TARGET_AVX512VL
   28658              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28659              :    && ix86_pre_reload_split ()) && 
   28660              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28661              : (TARGET_AVX512F)) && 
   28662              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28663              : ( 1)))
   28664              :             return NULL;
   28665              :           return gen_split_3118 (insn, operands);
   28666              : 
   28667              :         case 46:
   28668              :           if (!((
   28669              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28670              : ((32 == 64 || TARGET_AVX512VL
   28671              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28672              :    && ix86_pre_reload_split ()) && 
   28673              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28674              : (TARGET_AVX)) && 
   28675              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28676              : ( 1)))
   28677              :             return NULL;
   28678              :           return gen_split_3127 (insn, operands);
   28679              : 
   28680              :         case 47:
   28681              :           if (!(
   28682              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28683              : ((16 == 64 || TARGET_AVX512VL
   28684              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28685              :    && ix86_pre_reload_split ()) && 
   28686              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28687              : ( 1)))
   28688              :             return NULL;
   28689              :           return gen_split_3136 (insn, operands);
   28690              : 
   28691              :         default:
   28692              :           return NULL;
   28693              :         }
   28694              : 
   28695              :     case AND:
   28696              :       switch (pattern539 (x2))
   28697              :         {
   28698              :         case 0:
   28699              :           if (!((
   28700              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28701              : ((64 == 64 || TARGET_AVX512VL
   28702              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28703              :    && ix86_pre_reload_split ()
   28704              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28705              :                     STRIP_UNARY (operands[4]))
   28706              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28707              :                        STRIP_UNARY (operands[4]))
   28708              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28709              :                        STRIP_UNARY (operands[3]))
   28710              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28711              :                        STRIP_UNARY (operands[3])))) && 
   28712              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28713              : (TARGET_AVX512F)) && 
   28714              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28715              : ( 1)))
   28716              :             return NULL;
   28717              :           return gen_split_2389 (insn, operands);
   28718              : 
   28719              :         case 1:
   28720              :           if (!((
   28721              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28722              : ((32 == 64 || TARGET_AVX512VL
   28723              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28724              :    && ix86_pre_reload_split ()
   28725              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28726              :                     STRIP_UNARY (operands[4]))
   28727              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28728              :                        STRIP_UNARY (operands[4]))
   28729              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28730              :                        STRIP_UNARY (operands[3]))
   28731              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28732              :                        STRIP_UNARY (operands[3])))) && 
   28733              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28734              : (TARGET_AVX)) && 
   28735              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28736              : ( 1)))
   28737              :             return NULL;
   28738              :           return gen_split_2416 (insn, operands);
   28739              : 
   28740              :         case 2:
   28741              :           if (!(
   28742              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28743              : ((16 == 64 || TARGET_AVX512VL
   28744              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28745              :    && ix86_pre_reload_split ()
   28746              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28747              :                     STRIP_UNARY (operands[4]))
   28748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28749              :                        STRIP_UNARY (operands[4]))
   28750              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28751              :                        STRIP_UNARY (operands[3]))
   28752              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28753              :                        STRIP_UNARY (operands[3])))) && 
   28754              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28755              : ( 1)))
   28756              :             return NULL;
   28757              :           return gen_split_2443 (insn, operands);
   28758              : 
   28759              :         case 3:
   28760              :           if (!((
   28761              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28762              : ((64 == 64 || TARGET_AVX512VL
   28763              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28764              :    && ix86_pre_reload_split ()
   28765              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28766              :                     STRIP_UNARY (operands[4]))
   28767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28768              :                        STRIP_UNARY (operands[4]))
   28769              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28770              :                        STRIP_UNARY (operands[3]))
   28771              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28772              :                        STRIP_UNARY (operands[3])))) && 
   28773              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28774              : (TARGET_AVX512F)) && 
   28775              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28776              : ( 1)))
   28777              :             return NULL;
   28778              :           return gen_split_2470 (insn, operands);
   28779              : 
   28780              :         case 4:
   28781              :           if (!((
   28782              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28783              : ((32 == 64 || TARGET_AVX512VL
   28784              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28785              :    && ix86_pre_reload_split ()
   28786              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28787              :                     STRIP_UNARY (operands[4]))
   28788              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28789              :                        STRIP_UNARY (operands[4]))
   28790              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28791              :                        STRIP_UNARY (operands[3]))
   28792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28793              :                        STRIP_UNARY (operands[3])))) && 
   28794              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28795              : (TARGET_AVX)) && 
   28796              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28797              : ( 1)))
   28798              :             return NULL;
   28799              :           return gen_split_2497 (insn, operands);
   28800              : 
   28801              :         case 5:
   28802              :           if (!(
   28803              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28804              : ((16 == 64 || TARGET_AVX512VL
   28805              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28806              :    && ix86_pre_reload_split ()
   28807              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28808              :                     STRIP_UNARY (operands[4]))
   28809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28810              :                        STRIP_UNARY (operands[4]))
   28811              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28812              :                        STRIP_UNARY (operands[3]))
   28813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28814              :                        STRIP_UNARY (operands[3])))) && 
   28815              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28816              : ( 1)))
   28817              :             return NULL;
   28818              :           return gen_split_2524 (insn, operands);
   28819              : 
   28820              :         case 6:
   28821              :           if (!((
   28822              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28823              : ((64 == 64 || TARGET_AVX512VL
   28824              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28825              :    && ix86_pre_reload_split ()
   28826              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28827              :                     STRIP_UNARY (operands[4]))
   28828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28829              :                        STRIP_UNARY (operands[4]))
   28830              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28831              :                        STRIP_UNARY (operands[3]))
   28832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28833              :                        STRIP_UNARY (operands[3])))) && 
   28834              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28835              : (TARGET_AVX512F)) && 
   28836              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28837              : ( 1)))
   28838              :             return NULL;
   28839              :           return gen_split_2551 (insn, operands);
   28840              : 
   28841              :         case 7:
   28842              :           if (!((
   28843              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28844              : ((32 == 64 || TARGET_AVX512VL
   28845              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28846              :    && ix86_pre_reload_split ()
   28847              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28848              :                     STRIP_UNARY (operands[4]))
   28849              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28850              :                        STRIP_UNARY (operands[4]))
   28851              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28852              :                        STRIP_UNARY (operands[3]))
   28853              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28854              :                        STRIP_UNARY (operands[3])))) && 
   28855              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28856              : (TARGET_AVX)) && 
   28857              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28858              : ( 1)))
   28859              :             return NULL;
   28860              :           return gen_split_2578 (insn, operands);
   28861              : 
   28862              :         case 8:
   28863              :           if (!(
   28864              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28865              : ((16 == 64 || TARGET_AVX512VL
   28866              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28867              :    && ix86_pre_reload_split ()
   28868              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28869              :                     STRIP_UNARY (operands[4]))
   28870              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28871              :                        STRIP_UNARY (operands[4]))
   28872              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28873              :                        STRIP_UNARY (operands[3]))
   28874              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28875              :                        STRIP_UNARY (operands[3])))) && 
   28876              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28877              : ( 1)))
   28878              :             return NULL;
   28879              :           return gen_split_2605 (insn, operands);
   28880              : 
   28881              :         case 9:
   28882              :           if (!((
   28883              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28884              : ((64 == 64 || TARGET_AVX512VL
   28885              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28886              :    && ix86_pre_reload_split ()
   28887              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28888              :                     STRIP_UNARY (operands[4]))
   28889              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28890              :                        STRIP_UNARY (operands[4]))
   28891              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28892              :                        STRIP_UNARY (operands[3]))
   28893              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28894              :                        STRIP_UNARY (operands[3])))) && 
   28895              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28896              : (TARGET_AVX512F)) && 
   28897              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28898              : ( 1)))
   28899              :             return NULL;
   28900              :           return gen_split_2632 (insn, operands);
   28901              : 
   28902              :         case 10:
   28903              :           if (!((
   28904              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28905              : ((32 == 64 || TARGET_AVX512VL
   28906              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28907              :    && ix86_pre_reload_split ()
   28908              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28909              :                     STRIP_UNARY (operands[4]))
   28910              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28911              :                        STRIP_UNARY (operands[4]))
   28912              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28913              :                        STRIP_UNARY (operands[3]))
   28914              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28915              :                        STRIP_UNARY (operands[3])))) && 
   28916              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28917              : (TARGET_AVX)) && 
   28918              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28919              : ( 1)))
   28920              :             return NULL;
   28921              :           return gen_split_2659 (insn, operands);
   28922              : 
   28923              :         case 11:
   28924              :           if (!(
   28925              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28926              : ((16 == 64 || TARGET_AVX512VL
   28927              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28928              :    && ix86_pre_reload_split ()
   28929              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28930              :                     STRIP_UNARY (operands[4]))
   28931              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28932              :                        STRIP_UNARY (operands[4]))
   28933              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28934              :                        STRIP_UNARY (operands[3]))
   28935              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28936              :                        STRIP_UNARY (operands[3])))) && 
   28937              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28938              : ( 1)))
   28939              :             return NULL;
   28940              :           return gen_split_2686 (insn, operands);
   28941              : 
   28942              :         default:
   28943              :           return NULL;
   28944              :         }
   28945              : 
   28946              :     case IOR:
   28947              :       switch (pattern539 (x2))
   28948              :         {
   28949              :         case 0:
   28950              :           if (!((
   28951              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28952              : ((64 == 64 || TARGET_AVX512VL
   28953              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28954              :    && ix86_pre_reload_split ()
   28955              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28956              :                     STRIP_UNARY (operands[4]))
   28957              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28958              :                        STRIP_UNARY (operands[4]))
   28959              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28960              :                        STRIP_UNARY (operands[3]))
   28961              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28962              :                        STRIP_UNARY (operands[3])))) && 
   28963              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28964              : (TARGET_AVX512F)) && 
   28965              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28966              : ( 1)))
   28967              :             return NULL;
   28968              :           return gen_split_2392 (insn, operands);
   28969              : 
   28970              :         case 1:
   28971              :           if (!((
   28972              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28973              : ((32 == 64 || TARGET_AVX512VL
   28974              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28975              :    && ix86_pre_reload_split ()
   28976              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28977              :                     STRIP_UNARY (operands[4]))
   28978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28979              :                        STRIP_UNARY (operands[4]))
   28980              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28981              :                        STRIP_UNARY (operands[3]))
   28982              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28983              :                        STRIP_UNARY (operands[3])))) && 
   28984              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28985              : (TARGET_AVX)) && 
   28986              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28987              : ( 1)))
   28988              :             return NULL;
   28989              :           return gen_split_2419 (insn, operands);
   28990              : 
   28991              :         case 2:
   28992              :           if (!(
   28993              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28994              : ((16 == 64 || TARGET_AVX512VL
   28995              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28996              :    && ix86_pre_reload_split ()
   28997              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28998              :                     STRIP_UNARY (operands[4]))
   28999              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29000              :                        STRIP_UNARY (operands[4]))
   29001              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29002              :                        STRIP_UNARY (operands[3]))
   29003              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29004              :                        STRIP_UNARY (operands[3])))) && 
   29005              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29006              : ( 1)))
   29007              :             return NULL;
   29008              :           return gen_split_2446 (insn, operands);
   29009              : 
   29010              :         case 3:
   29011              :           if (!((
   29012              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29013              : ((64 == 64 || TARGET_AVX512VL
   29014              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29015              :    && ix86_pre_reload_split ()
   29016              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29017              :                     STRIP_UNARY (operands[4]))
   29018              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29019              :                        STRIP_UNARY (operands[4]))
   29020              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29021              :                        STRIP_UNARY (operands[3]))
   29022              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29023              :                        STRIP_UNARY (operands[3])))) && 
   29024              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29025              : (TARGET_AVX512F)) && 
   29026              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29027              : ( 1)))
   29028              :             return NULL;
   29029              :           return gen_split_2473 (insn, operands);
   29030              : 
   29031              :         case 4:
   29032              :           if (!((
   29033              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29034              : ((32 == 64 || TARGET_AVX512VL
   29035              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29036              :    && ix86_pre_reload_split ()
   29037              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29038              :                     STRIP_UNARY (operands[4]))
   29039              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29040              :                        STRIP_UNARY (operands[4]))
   29041              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29042              :                        STRIP_UNARY (operands[3]))
   29043              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29044              :                        STRIP_UNARY (operands[3])))) && 
   29045              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29046              : (TARGET_AVX)) && 
   29047              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29048              : ( 1)))
   29049              :             return NULL;
   29050              :           return gen_split_2500 (insn, operands);
   29051              : 
   29052              :         case 5:
   29053              :           if (!(
   29054              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29055              : ((16 == 64 || TARGET_AVX512VL
   29056              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29057              :    && ix86_pre_reload_split ()
   29058              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29059              :                     STRIP_UNARY (operands[4]))
   29060              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29061              :                        STRIP_UNARY (operands[4]))
   29062              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29063              :                        STRIP_UNARY (operands[3]))
   29064              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29065              :                        STRIP_UNARY (operands[3])))) && 
   29066              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29067              : ( 1)))
   29068              :             return NULL;
   29069              :           return gen_split_2527 (insn, operands);
   29070              : 
   29071              :         case 6:
   29072              :           if (!((
   29073              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29074              : ((64 == 64 || TARGET_AVX512VL
   29075              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29076              :    && ix86_pre_reload_split ()
   29077              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29078              :                     STRIP_UNARY (operands[4]))
   29079              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29080              :                        STRIP_UNARY (operands[4]))
   29081              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29082              :                        STRIP_UNARY (operands[3]))
   29083              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29084              :                        STRIP_UNARY (operands[3])))) && 
   29085              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29086              : (TARGET_AVX512F)) && 
   29087              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29088              : ( 1)))
   29089              :             return NULL;
   29090              :           return gen_split_2554 (insn, operands);
   29091              : 
   29092              :         case 7:
   29093              :           if (!((
   29094              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29095              : ((32 == 64 || TARGET_AVX512VL
   29096              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29097              :    && ix86_pre_reload_split ()
   29098              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29099              :                     STRIP_UNARY (operands[4]))
   29100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29101              :                        STRIP_UNARY (operands[4]))
   29102              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29103              :                        STRIP_UNARY (operands[3]))
   29104              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29105              :                        STRIP_UNARY (operands[3])))) && 
   29106              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29107              : (TARGET_AVX)) && 
   29108              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29109              : ( 1)))
   29110              :             return NULL;
   29111              :           return gen_split_2581 (insn, operands);
   29112              : 
   29113              :         case 8:
   29114              :           if (!(
   29115              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29116              : ((16 == 64 || TARGET_AVX512VL
   29117              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29118              :    && ix86_pre_reload_split ()
   29119              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29120              :                     STRIP_UNARY (operands[4]))
   29121              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29122              :                        STRIP_UNARY (operands[4]))
   29123              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29124              :                        STRIP_UNARY (operands[3]))
   29125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29126              :                        STRIP_UNARY (operands[3])))) && 
   29127              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29128              : ( 1)))
   29129              :             return NULL;
   29130              :           return gen_split_2608 (insn, operands);
   29131              : 
   29132              :         case 9:
   29133              :           if (!((
   29134              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29135              : ((64 == 64 || TARGET_AVX512VL
   29136              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29137              :    && ix86_pre_reload_split ()
   29138              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29139              :                     STRIP_UNARY (operands[4]))
   29140              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29141              :                        STRIP_UNARY (operands[4]))
   29142              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29143              :                        STRIP_UNARY (operands[3]))
   29144              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29145              :                        STRIP_UNARY (operands[3])))) && 
   29146              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29147              : (TARGET_AVX512F)) && 
   29148              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29149              : ( 1)))
   29150              :             return NULL;
   29151              :           return gen_split_2635 (insn, operands);
   29152              : 
   29153              :         case 10:
   29154              :           if (!((
   29155              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29156              : ((32 == 64 || TARGET_AVX512VL
   29157              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29158              :    && ix86_pre_reload_split ()
   29159              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29160              :                     STRIP_UNARY (operands[4]))
   29161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29162              :                        STRIP_UNARY (operands[4]))
   29163              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29164              :                        STRIP_UNARY (operands[3]))
   29165              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29166              :                        STRIP_UNARY (operands[3])))) && 
   29167              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29168              : (TARGET_AVX)) && 
   29169              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29170              : ( 1)))
   29171              :             return NULL;
   29172              :           return gen_split_2662 (insn, operands);
   29173              : 
   29174              :         case 11:
   29175              :           if (!(
   29176              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29177              : ((16 == 64 || TARGET_AVX512VL
   29178              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29179              :    && ix86_pre_reload_split ()
   29180              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29181              :                     STRIP_UNARY (operands[4]))
   29182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29183              :                        STRIP_UNARY (operands[4]))
   29184              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29185              :                        STRIP_UNARY (operands[3]))
   29186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29187              :                        STRIP_UNARY (operands[3])))) && 
   29188              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29189              : ( 1)))
   29190              :             return NULL;
   29191              :           return gen_split_2689 (insn, operands);
   29192              : 
   29193              :         default:
   29194              :           return NULL;
   29195              :         }
   29196              : 
   29197              :     case XOR:
   29198              :       x5 = XEXP (x4, 0);
   29199              :       operands[1] = x5;
   29200              :       x6 = XEXP (x4, 1);
   29201              :       operands[2] = x6;
   29202              :       x7 = XEXP (x3, 1);
   29203              :       operands[3] = x7;
   29204              :       switch (GET_MODE (operands[0]))
   29205              :         {
   29206              :         case E_V64QImode:
   29207              :           if (pattern1203 (x2, 
   29208              : E_V64QImode) != 0
   29209              :               || !((
   29210              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29211              : ((64 == 64 || TARGET_AVX512VL
   29212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29213              :    && ix86_pre_reload_split ()
   29214              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29215              :                     STRIP_UNARY (operands[4]))
   29216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29217              :                        STRIP_UNARY (operands[4]))
   29218              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29219              :                        STRIP_UNARY (operands[3]))
   29220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29221              :                        STRIP_UNARY (operands[3])))) && 
   29222              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29223              : (TARGET_AVX512F)) && 
   29224              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29225              : ( 1)))
   29226              :             return NULL;
   29227              :           return gen_split_2395 (insn, operands);
   29228              : 
   29229              :         case E_V32QImode:
   29230              :           if (pattern1017 (x2, 
   29231              : E_V32QImode) != 0)
   29232              :             return NULL;
   29233              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V32QImode)
   29234              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V32QImode)
   29235              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V32QImode))
   29236              :             {
   29237              :               x8 = XEXP (x2, 1);
   29238              :               operands[4] = x8;
   29239              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V32QImode)
   29240              :                   && ((
   29241              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29242              : ((32 == 64 || TARGET_AVX512VL
   29243              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29244              :    && ix86_pre_reload_split ()
   29245              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29246              :                     STRIP_UNARY (operands[4]))
   29247              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29248              :                        STRIP_UNARY (operands[4]))
   29249              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29250              :                        STRIP_UNARY (operands[3]))
   29251              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29252              :                        STRIP_UNARY (operands[3])))) && 
   29253              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29254              : (TARGET_AVX)) && 
   29255              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29256              : ( 1)))
   29257              :                 return gen_split_2422 (insn, operands);
   29258              :             }
   29259              :           if (!register_operand (operands[1], E_V32QImode)
   29260              :               || !register_operand (operands[2], E_V32QImode)
   29261              :               || !nonimmediate_operand (operands[3], E_V32QImode))
   29262              :             return NULL;
   29263              :           x8 = XEXP (x2, 1);
   29264              :           if (rtx_equal_p (x8, operands[1])
   29265              :               && 
   29266              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29267              : (TARGET_XOP))
   29268              :             return gen_split_3817 (insn, operands);
   29269              :           if (!rtx_equal_p (x8, operands[2])
   29270              :               || !
   29271              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29272              : (TARGET_XOP))
   29273              :             return NULL;
   29274              :           return gen_split_3833 (insn, operands);
   29275              : 
   29276              :         case E_V16QImode:
   29277              :           if (pattern1017 (x2, 
   29278              : E_V16QImode) != 0)
   29279              :             return NULL;
   29280              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V16QImode)
   29281              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V16QImode)
   29282              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V16QImode))
   29283              :             {
   29284              :               x8 = XEXP (x2, 1);
   29285              :               operands[4] = x8;
   29286              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V16QImode)
   29287              :                   && (
   29288              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29289              : ((16 == 64 || TARGET_AVX512VL
   29290              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29291              :    && ix86_pre_reload_split ()
   29292              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29293              :                     STRIP_UNARY (operands[4]))
   29294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29295              :                        STRIP_UNARY (operands[4]))
   29296              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29297              :                        STRIP_UNARY (operands[3]))
   29298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29299              :                        STRIP_UNARY (operands[3])))) && 
   29300              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29301              : ( 1)))
   29302              :                 return gen_split_2449 (insn, operands);
   29303              :             }
   29304              :           if (!register_operand (operands[1], E_V16QImode)
   29305              :               || !register_operand (operands[2], E_V16QImode)
   29306              :               || !nonimmediate_operand (operands[3], E_V16QImode))
   29307              :             return NULL;
   29308              :           x8 = XEXP (x2, 1);
   29309              :           if (rtx_equal_p (x8, operands[1])
   29310              :               && 
   29311              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29312              : (TARGET_XOP))
   29313              :             return gen_split_3818 (insn, operands);
   29314              :           if (!rtx_equal_p (x8, operands[2])
   29315              :               || !
   29316              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29317              : (TARGET_XOP))
   29318              :             return NULL;
   29319              :           return gen_split_3834 (insn, operands);
   29320              : 
   29321              :         case E_V32HImode:
   29322              :           if (pattern1203 (x2, 
   29323              : E_V32HImode) != 0
   29324              :               || !((
   29325              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29326              : ((64 == 64 || TARGET_AVX512VL
   29327              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29328              :    && ix86_pre_reload_split ()
   29329              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29330              :                     STRIP_UNARY (operands[4]))
   29331              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29332              :                        STRIP_UNARY (operands[4]))
   29333              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29334              :                        STRIP_UNARY (operands[3]))
   29335              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29336              :                        STRIP_UNARY (operands[3])))) && 
   29337              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29338              : (TARGET_AVX512F)) && 
   29339              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29340              : ( 1)))
   29341              :             return NULL;
   29342              :           return gen_split_2476 (insn, operands);
   29343              : 
   29344              :         case E_V16HImode:
   29345              :           if (pattern1017 (x2, 
   29346              : E_V16HImode) != 0)
   29347              :             return NULL;
   29348              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V16HImode)
   29349              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V16HImode)
   29350              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V16HImode))
   29351              :             {
   29352              :               x8 = XEXP (x2, 1);
   29353              :               operands[4] = x8;
   29354              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V16HImode)
   29355              :                   && ((
   29356              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29357              : ((32 == 64 || TARGET_AVX512VL
   29358              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29359              :    && ix86_pre_reload_split ()
   29360              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29361              :                     STRIP_UNARY (operands[4]))
   29362              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29363              :                        STRIP_UNARY (operands[4]))
   29364              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29365              :                        STRIP_UNARY (operands[3]))
   29366              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29367              :                        STRIP_UNARY (operands[3])))) && 
   29368              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29369              : (TARGET_AVX)) && 
   29370              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29371              : ( 1)))
   29372              :                 return gen_split_2503 (insn, operands);
   29373              :             }
   29374              :           if (!register_operand (operands[1], E_V16HImode)
   29375              :               || !register_operand (operands[2], E_V16HImode)
   29376              :               || !nonimmediate_operand (operands[3], E_V16HImode))
   29377              :             return NULL;
   29378              :           x8 = XEXP (x2, 1);
   29379              :           if (rtx_equal_p (x8, operands[1])
   29380              :               && 
   29381              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29382              : (TARGET_XOP))
   29383              :             return gen_split_3819 (insn, operands);
   29384              :           if (!rtx_equal_p (x8, operands[2])
   29385              :               || !
   29386              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29387              : (TARGET_XOP))
   29388              :             return NULL;
   29389              :           return gen_split_3835 (insn, operands);
   29390              : 
   29391              :         case E_V8HImode:
   29392              :           if (pattern1017 (x2, 
   29393              : E_V8HImode) != 0)
   29394              :             return NULL;
   29395              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V8HImode)
   29396              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V8HImode)
   29397              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V8HImode))
   29398              :             {
   29399              :               x8 = XEXP (x2, 1);
   29400              :               operands[4] = x8;
   29401              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V8HImode)
   29402              :                   && (
   29403              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29404              : ((16 == 64 || TARGET_AVX512VL
   29405              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29406              :    && ix86_pre_reload_split ()
   29407              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29408              :                     STRIP_UNARY (operands[4]))
   29409              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29410              :                        STRIP_UNARY (operands[4]))
   29411              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29412              :                        STRIP_UNARY (operands[3]))
   29413              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29414              :                        STRIP_UNARY (operands[3])))) && 
   29415              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29416              : ( 1)))
   29417              :                 return gen_split_2530 (insn, operands);
   29418              :             }
   29419              :           if (!register_operand (operands[1], E_V8HImode)
   29420              :               || !register_operand (operands[2], E_V8HImode)
   29421              :               || !nonimmediate_operand (operands[3], E_V8HImode))
   29422              :             return NULL;
   29423              :           x8 = XEXP (x2, 1);
   29424              :           if (rtx_equal_p (x8, operands[1])
   29425              :               && 
   29426              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29427              : (TARGET_XOP))
   29428              :             return gen_split_3820 (insn, operands);
   29429              :           if (!rtx_equal_p (x8, operands[2])
   29430              :               || !
   29431              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29432              : (TARGET_XOP))
   29433              :             return NULL;
   29434              :           return gen_split_3836 (insn, operands);
   29435              : 
   29436              :         case E_V16SImode:
   29437              :           if (pattern1203 (x2, 
   29438              : E_V16SImode) != 0
   29439              :               || !((
   29440              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29441              : ((64 == 64 || TARGET_AVX512VL
   29442              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29443              :    && ix86_pre_reload_split ()
   29444              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29445              :                     STRIP_UNARY (operands[4]))
   29446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29447              :                        STRIP_UNARY (operands[4]))
   29448              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29449              :                        STRIP_UNARY (operands[3]))
   29450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29451              :                        STRIP_UNARY (operands[3])))) && 
   29452              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29453              : (TARGET_AVX512F)) && 
   29454              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29455              : ( 1)))
   29456              :             return NULL;
   29457              :           return gen_split_2557 (insn, operands);
   29458              : 
   29459              :         case E_V8SImode:
   29460              :           if (pattern1017 (x2, 
   29461              : E_V8SImode) != 0)
   29462              :             return NULL;
   29463              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V8SImode)
   29464              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V8SImode)
   29465              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V8SImode))
   29466              :             {
   29467              :               x8 = XEXP (x2, 1);
   29468              :               operands[4] = x8;
   29469              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V8SImode)
   29470              :                   && ((
   29471              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29472              : ((32 == 64 || TARGET_AVX512VL
   29473              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29474              :    && ix86_pre_reload_split ()
   29475              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29476              :                     STRIP_UNARY (operands[4]))
   29477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29478              :                        STRIP_UNARY (operands[4]))
   29479              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29480              :                        STRIP_UNARY (operands[3]))
   29481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29482              :                        STRIP_UNARY (operands[3])))) && 
   29483              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29484              : (TARGET_AVX)) && 
   29485              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29486              : ( 1)))
   29487              :                 return gen_split_2584 (insn, operands);
   29488              :             }
   29489              :           if (!register_operand (operands[1], E_V8SImode)
   29490              :               || !register_operand (operands[2], E_V8SImode)
   29491              :               || !nonimmediate_operand (operands[3], E_V8SImode))
   29492              :             return NULL;
   29493              :           x8 = XEXP (x2, 1);
   29494              :           if (rtx_equal_p (x8, operands[1])
   29495              :               && 
   29496              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29497              : (TARGET_XOP))
   29498              :             return gen_split_3821 (insn, operands);
   29499              :           if (!rtx_equal_p (x8, operands[2])
   29500              :               || !
   29501              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29502              : (TARGET_XOP))
   29503              :             return NULL;
   29504              :           return gen_split_3837 (insn, operands);
   29505              : 
   29506              :         case E_V4SImode:
   29507              :           if (pattern1017 (x2, 
   29508              : E_V4SImode) != 0)
   29509              :             return NULL;
   29510              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V4SImode)
   29511              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V4SImode)
   29512              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V4SImode))
   29513              :             {
   29514              :               x8 = XEXP (x2, 1);
   29515              :               operands[4] = x8;
   29516              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V4SImode)
   29517              :                   && (
   29518              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29519              : ((16 == 64 || TARGET_AVX512VL
   29520              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29521              :    && ix86_pre_reload_split ()
   29522              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29523              :                     STRIP_UNARY (operands[4]))
   29524              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29525              :                        STRIP_UNARY (operands[4]))
   29526              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29527              :                        STRIP_UNARY (operands[3]))
   29528              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29529              :                        STRIP_UNARY (operands[3])))) && 
   29530              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29531              : ( 1)))
   29532              :                 return gen_split_2611 (insn, operands);
   29533              :             }
   29534              :           if (!register_operand (operands[1], E_V4SImode)
   29535              :               || !register_operand (operands[2], E_V4SImode)
   29536              :               || !nonimmediate_operand (operands[3], E_V4SImode))
   29537              :             return NULL;
   29538              :           x8 = XEXP (x2, 1);
   29539              :           if (rtx_equal_p (x8, operands[1])
   29540              :               && 
   29541              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29542              : (TARGET_XOP))
   29543              :             return gen_split_3822 (insn, operands);
   29544              :           if (!rtx_equal_p (x8, operands[2])
   29545              :               || !
   29546              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29547              : (TARGET_XOP))
   29548              :             return NULL;
   29549              :           return gen_split_3838 (insn, operands);
   29550              : 
   29551              :         case E_V8DImode:
   29552              :           if (pattern1203 (x2, 
   29553              : E_V8DImode) != 0
   29554              :               || !((
   29555              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29556              : ((64 == 64 || TARGET_AVX512VL
   29557              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29558              :    && ix86_pre_reload_split ()
   29559              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29560              :                     STRIP_UNARY (operands[4]))
   29561              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29562              :                        STRIP_UNARY (operands[4]))
   29563              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29564              :                        STRIP_UNARY (operands[3]))
   29565              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29566              :                        STRIP_UNARY (operands[3])))) && 
   29567              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29568              : (TARGET_AVX512F)) && 
   29569              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29570              : ( 1)))
   29571              :             return NULL;
   29572              :           return gen_split_2638 (insn, operands);
   29573              : 
   29574              :         case E_V4DImode:
   29575              :           if (pattern1017 (x2, 
   29576              : E_V4DImode) != 0)
   29577              :             return NULL;
   29578              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V4DImode)
   29579              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V4DImode)
   29580              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V4DImode))
   29581              :             {
   29582              :               x8 = XEXP (x2, 1);
   29583              :               operands[4] = x8;
   29584              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V4DImode)
   29585              :                   && ((
   29586              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29587              : ((32 == 64 || TARGET_AVX512VL
   29588              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29589              :    && ix86_pre_reload_split ()
   29590              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29591              :                     STRIP_UNARY (operands[4]))
   29592              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29593              :                        STRIP_UNARY (operands[4]))
   29594              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29595              :                        STRIP_UNARY (operands[3]))
   29596              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29597              :                        STRIP_UNARY (operands[3])))) && 
   29598              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29599              : (TARGET_AVX)) && 
   29600              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29601              : ( 1)))
   29602              :                 return gen_split_2665 (insn, operands);
   29603              :             }
   29604              :           if (!register_operand (operands[1], E_V4DImode)
   29605              :               || !register_operand (operands[2], E_V4DImode)
   29606              :               || !nonimmediate_operand (operands[3], E_V4DImode))
   29607              :             return NULL;
   29608              :           x8 = XEXP (x2, 1);
   29609              :           if (rtx_equal_p (x8, operands[1])
   29610              :               && 
   29611              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29612              : (TARGET_XOP))
   29613              :             return gen_split_3823 (insn, operands);
   29614              :           if (!rtx_equal_p (x8, operands[2])
   29615              :               || !
   29616              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29617              : (TARGET_XOP))
   29618              :             return NULL;
   29619              :           return gen_split_3839 (insn, operands);
   29620              : 
   29621              :         case E_V2DImode:
   29622              :           if (pattern1017 (x2, 
   29623              : E_V2DImode) != 0)
   29624              :             return NULL;
   29625              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V2DImode)
   29626              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V2DImode)
   29627              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V2DImode))
   29628              :             {
   29629              :               x8 = XEXP (x2, 1);
   29630              :               operands[4] = x8;
   29631              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V2DImode)
   29632              :                   && (
   29633              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29634              : ((16 == 64 || TARGET_AVX512VL
   29635              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29636              :    && ix86_pre_reload_split ()
   29637              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29638              :                     STRIP_UNARY (operands[4]))
   29639              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29640              :                        STRIP_UNARY (operands[4]))
   29641              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29642              :                        STRIP_UNARY (operands[3]))
   29643              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29644              :                        STRIP_UNARY (operands[3])))) && 
   29645              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29646              : ( 1)))
   29647              :                 return gen_split_2692 (insn, operands);
   29648              :             }
   29649              :           if (!register_operand (operands[1], E_V2DImode)
   29650              :               || !register_operand (operands[2], E_V2DImode)
   29651              :               || !nonimmediate_operand (operands[3], E_V2DImode))
   29652              :             return NULL;
   29653              :           x8 = XEXP (x2, 1);
   29654              :           if (rtx_equal_p (x8, operands[1])
   29655              :               && 
   29656              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29657              : (TARGET_XOP))
   29658              :             return gen_split_3824 (insn, operands);
   29659              :           if (!rtx_equal_p (x8, operands[2])
   29660              :               || !
   29661              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29662              : (TARGET_XOP))
   29663              :             return NULL;
   29664              :           return gen_split_3840 (insn, operands);
   29665              : 
   29666              :         case E_V2TImode:
   29667              :           if (pattern1204 (x2, 
   29668              : E_V2TImode) != 0)
   29669              :             return NULL;
   29670              :           x8 = XEXP (x2, 1);
   29671              :           if (rtx_equal_p (x8, operands[1])
   29672              :               && 
   29673              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29674              : (TARGET_XOP))
   29675              :             return gen_split_3825 (insn, operands);
   29676              :           if (!rtx_equal_p (x8, operands[2])
   29677              :               || !
   29678              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29679              : (TARGET_XOP))
   29680              :             return NULL;
   29681              :           return gen_split_3841 (insn, operands);
   29682              : 
   29683              :         case E_V1TImode:
   29684              :           if (pattern1204 (x2, 
   29685              : E_V1TImode) != 0)
   29686              :             return NULL;
   29687              :           x8 = XEXP (x2, 1);
   29688              :           if (rtx_equal_p (x8, operands[1])
   29689              :               && 
   29690              : #line 27441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29691              : (TARGET_XOP))
   29692              :             return gen_split_3826 (insn, operands);
   29693              :           if (!rtx_equal_p (x8, operands[2])
   29694              :               || !
   29695              : #line 27453 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29696              : (TARGET_XOP))
   29697              :             return NULL;
   29698              :           return gen_split_3842 (insn, operands);
   29699              : 
   29700              :         default:
   29701              :           return NULL;
   29702              :         }
   29703              : 
   29704              :     default:
   29705              :       return NULL;
   29706              :     }
   29707              : }
   29708              : 
   29709              :  rtx_insn *
   29710              : split_82 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29711              : {
   29712              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29713              :   rtx x2, x3, x4, x5;
   29714              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29715              :   x2 = XEXP (x1, 1);
   29716              :   switch (GET_CODE (x2))
   29717              :     {
   29718              :     case AND:
   29719              :       res = split_64 (x1, insn);
   29720              :       if (res != NULL_RTX)
   29721              :         return res;
   29722              :       break;
   29723              : 
   29724              :     case IOR:
   29725              :       res = split_71 (x1, insn);
   29726              :       if (res != NULL_RTX)
   29727              :         return res;
   29728              :       break;
   29729              : 
   29730              :     case XOR:
   29731              :       x3 = XEXP (x2, 0);
   29732              :       switch (GET_CODE (x3))
   29733              :         {
   29734              :         case AND:
   29735              :           res = split_66 (x1, insn);
   29736              :           if (res != NULL_RTX)
   29737              :             return res;
   29738              :           break;
   29739              : 
   29740              :         case IOR:
   29741              :           res = split_67 (x1, insn);
   29742              :           if (res != NULL_RTX)
   29743              :             return res;
   29744              :           break;
   29745              : 
   29746              :         case XOR:
   29747              :           x4 = XEXP (x3, 0);
   29748              :           switch (GET_CODE (x4))
   29749              :             {
   29750              :             case REG:
   29751              :             case SUBREG:
   29752              :             case MEM:
   29753              :             case NOT:
   29754              :               switch (pattern537 (x2))
   29755              :                 {
   29756              :                 case 0:
   29757              :                   if (((
   29758              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29759              : ((64 == 64 || TARGET_AVX512VL
   29760              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29761              :    && ix86_pre_reload_split ()
   29762              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29763              :                     STRIP_UNARY (operands[4]))
   29764              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29765              :                        STRIP_UNARY (operands[4]))
   29766              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29767              :                        STRIP_UNARY (operands[3]))
   29768              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29769              :                        STRIP_UNARY (operands[3])))) && 
   29770              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29771              : (TARGET_AVX512F)) && 
   29772              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29773              : ( 1)))
   29774              :                     return gen_split_1759 (insn, operands);
   29775              :                   break;
   29776              : 
   29777              :                 case 1:
   29778              :                   if (((
   29779              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29780              : ((32 == 64 || TARGET_AVX512VL
   29781              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29782              :    && ix86_pre_reload_split ()
   29783              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29784              :                     STRIP_UNARY (operands[4]))
   29785              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29786              :                        STRIP_UNARY (operands[4]))
   29787              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29788              :                        STRIP_UNARY (operands[3]))
   29789              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29790              :                        STRIP_UNARY (operands[3])))) && 
   29791              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29792              : (TARGET_AVX)) && 
   29793              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29794              : ( 1)))
   29795              :                     return gen_split_1786 (insn, operands);
   29796              :                   break;
   29797              : 
   29798              :                 case 2:
   29799              :                   if ((
   29800              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29801              : ((16 == 64 || TARGET_AVX512VL
   29802              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29803              :    && ix86_pre_reload_split ()
   29804              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29805              :                     STRIP_UNARY (operands[4]))
   29806              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29807              :                        STRIP_UNARY (operands[4]))
   29808              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29809              :                        STRIP_UNARY (operands[3]))
   29810              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29811              :                        STRIP_UNARY (operands[3])))) && 
   29812              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29813              : ( 1)))
   29814              :                     return gen_split_1813 (insn, operands);
   29815              :                   break;
   29816              : 
   29817              :                 case 3:
   29818              :                   if (((
   29819              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29820              : ((64 == 64 || TARGET_AVX512VL
   29821              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29822              :    && ix86_pre_reload_split ()
   29823              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29824              :                     STRIP_UNARY (operands[4]))
   29825              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29826              :                        STRIP_UNARY (operands[4]))
   29827              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29828              :                        STRIP_UNARY (operands[3]))
   29829              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29830              :                        STRIP_UNARY (operands[3])))) && 
   29831              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29832              : (TARGET_AVX512F)) && 
   29833              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29834              : ( 1)))
   29835              :                     return gen_split_1840 (insn, operands);
   29836              :                   break;
   29837              : 
   29838              :                 case 4:
   29839              :                   if (((
   29840              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29841              : ((32 == 64 || TARGET_AVX512VL
   29842              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29843              :    && ix86_pre_reload_split ()
   29844              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29845              :                     STRIP_UNARY (operands[4]))
   29846              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29847              :                        STRIP_UNARY (operands[4]))
   29848              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29849              :                        STRIP_UNARY (operands[3]))
   29850              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29851              :                        STRIP_UNARY (operands[3])))) && 
   29852              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29853              : (TARGET_AVX)) && 
   29854              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29855              : ( 1)))
   29856              :                     return gen_split_1867 (insn, operands);
   29857              :                   break;
   29858              : 
   29859              :                 case 5:
   29860              :                   if ((
   29861              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29862              : ((16 == 64 || TARGET_AVX512VL
   29863              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29864              :    && ix86_pre_reload_split ()
   29865              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29866              :                     STRIP_UNARY (operands[4]))
   29867              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29868              :                        STRIP_UNARY (operands[4]))
   29869              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29870              :                        STRIP_UNARY (operands[3]))
   29871              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29872              :                        STRIP_UNARY (operands[3])))) && 
   29873              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29874              : ( 1)))
   29875              :                     return gen_split_1894 (insn, operands);
   29876              :                   break;
   29877              : 
   29878              :                 case 6:
   29879              :                   if (((
   29880              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29881              : ((64 == 64 || TARGET_AVX512VL
   29882              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29883              :    && ix86_pre_reload_split ()
   29884              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29885              :                     STRIP_UNARY (operands[4]))
   29886              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29887              :                        STRIP_UNARY (operands[4]))
   29888              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29889              :                        STRIP_UNARY (operands[3]))
   29890              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29891              :                        STRIP_UNARY (operands[3])))) && 
   29892              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29893              : (TARGET_AVX512F)) && 
   29894              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29895              : ( 1)))
   29896              :                     return gen_split_1921 (insn, operands);
   29897              :                   break;
   29898              : 
   29899              :                 case 7:
   29900              :                   if (((
   29901              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29902              : ((32 == 64 || TARGET_AVX512VL
   29903              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29904              :    && ix86_pre_reload_split ()
   29905              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29906              :                     STRIP_UNARY (operands[4]))
   29907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29908              :                        STRIP_UNARY (operands[4]))
   29909              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29910              :                        STRIP_UNARY (operands[3]))
   29911              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29912              :                        STRIP_UNARY (operands[3])))) && 
   29913              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29914              : (TARGET_AVX)) && 
   29915              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29916              : ( 1)))
   29917              :                     return gen_split_1948 (insn, operands);
   29918              :                   break;
   29919              : 
   29920              :                 case 8:
   29921              :                   if ((
   29922              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29923              : ((16 == 64 || TARGET_AVX512VL
   29924              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29925              :    && ix86_pre_reload_split ()
   29926              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29927              :                     STRIP_UNARY (operands[4]))
   29928              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29929              :                        STRIP_UNARY (operands[4]))
   29930              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29931              :                        STRIP_UNARY (operands[3]))
   29932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29933              :                        STRIP_UNARY (operands[3])))) && 
   29934              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29935              : ( 1)))
   29936              :                     return gen_split_1975 (insn, operands);
   29937              :                   break;
   29938              : 
   29939              :                 case 9:
   29940              :                   if (((
   29941              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29942              : ((64 == 64 || TARGET_AVX512VL
   29943              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29944              :    && ix86_pre_reload_split ()
   29945              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29946              :                     STRIP_UNARY (operands[4]))
   29947              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29948              :                        STRIP_UNARY (operands[4]))
   29949              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29950              :                        STRIP_UNARY (operands[3]))
   29951              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29952              :                        STRIP_UNARY (operands[3])))) && 
   29953              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29954              : (TARGET_AVX512F)) && 
   29955              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29956              : ( 1)))
   29957              :                     return gen_split_2002 (insn, operands);
   29958              :                   break;
   29959              : 
   29960              :                 case 10:
   29961              :                   if (((
   29962              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29963              : ((32 == 64 || TARGET_AVX512VL
   29964              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29965              :    && ix86_pre_reload_split ()
   29966              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29967              :                     STRIP_UNARY (operands[4]))
   29968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29969              :                        STRIP_UNARY (operands[4]))
   29970              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29971              :                        STRIP_UNARY (operands[3]))
   29972              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29973              :                        STRIP_UNARY (operands[3])))) && 
   29974              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29975              : (TARGET_AVX)) && 
   29976              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29977              : ( 1)))
   29978              :                     return gen_split_2029 (insn, operands);
   29979              :                   break;
   29980              : 
   29981              :                 case 11:
   29982              :                   if ((
   29983              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29984              : ((16 == 64 || TARGET_AVX512VL
   29985              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29986              :    && ix86_pre_reload_split ()
   29987              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29988              :                     STRIP_UNARY (operands[4]))
   29989              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29990              :                        STRIP_UNARY (operands[4]))
   29991              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29992              :                        STRIP_UNARY (operands[3]))
   29993              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29994              :                        STRIP_UNARY (operands[3])))) && 
   29995              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29996              : ( 1)))
   29997              :                     return gen_split_2056 (insn, operands);
   29998              :                   break;
   29999              : 
   30000              :                 case 12:
   30001              :                   if (((
   30002              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30003              : ((64 == 64 || TARGET_AVX512VL
   30004              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30005              :    && ix86_pre_reload_split ()
   30006              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30007              :                     STRIP_UNARY (operands[4]))
   30008              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30009              :                        STRIP_UNARY (operands[4]))
   30010              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30011              :                        STRIP_UNARY (operands[3]))
   30012              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30013              :                        STRIP_UNARY (operands[3])))) && 
   30014              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30015              : (TARGET_AVX512F)) && 
   30016              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30017              : ( 1)))
   30018              :                     return gen_split_1762 (insn, operands);
   30019              :                   break;
   30020              : 
   30021              :                 case 13:
   30022              :                   if (((
   30023              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30024              : ((32 == 64 || TARGET_AVX512VL
   30025              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30026              :    && ix86_pre_reload_split ()
   30027              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30028              :                     STRIP_UNARY (operands[4]))
   30029              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30030              :                        STRIP_UNARY (operands[4]))
   30031              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30032              :                        STRIP_UNARY (operands[3]))
   30033              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30034              :                        STRIP_UNARY (operands[3])))) && 
   30035              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30036              : (TARGET_AVX)) && 
   30037              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30038              : ( 1)))
   30039              :                     return gen_split_1789 (insn, operands);
   30040              :                   break;
   30041              : 
   30042              :                 case 14:
   30043              :                   if ((
   30044              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30045              : ((16 == 64 || TARGET_AVX512VL
   30046              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30047              :    && ix86_pre_reload_split ()
   30048              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30049              :                     STRIP_UNARY (operands[4]))
   30050              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30051              :                        STRIP_UNARY (operands[4]))
   30052              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30053              :                        STRIP_UNARY (operands[3]))
   30054              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30055              :                        STRIP_UNARY (operands[3])))) && 
   30056              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30057              : ( 1)))
   30058              :                     return gen_split_1816 (insn, operands);
   30059              :                   break;
   30060              : 
   30061              :                 case 15:
   30062              :                   if (((
   30063              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30064              : ((64 == 64 || TARGET_AVX512VL
   30065              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30066              :    && ix86_pre_reload_split ()
   30067              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30068              :                     STRIP_UNARY (operands[4]))
   30069              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30070              :                        STRIP_UNARY (operands[4]))
   30071              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30072              :                        STRIP_UNARY (operands[3]))
   30073              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30074              :                        STRIP_UNARY (operands[3])))) && 
   30075              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30076              : (TARGET_AVX512F)) && 
   30077              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30078              : ( 1)))
   30079              :                     return gen_split_1843 (insn, operands);
   30080              :                   break;
   30081              : 
   30082              :                 case 16:
   30083              :                   if (((
   30084              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30085              : ((32 == 64 || TARGET_AVX512VL
   30086              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30087              :    && ix86_pre_reload_split ()
   30088              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30089              :                     STRIP_UNARY (operands[4]))
   30090              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30091              :                        STRIP_UNARY (operands[4]))
   30092              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30093              :                        STRIP_UNARY (operands[3]))
   30094              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30095              :                        STRIP_UNARY (operands[3])))) && 
   30096              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30097              : (TARGET_AVX)) && 
   30098              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30099              : ( 1)))
   30100              :                     return gen_split_1870 (insn, operands);
   30101              :                   break;
   30102              : 
   30103              :                 case 17:
   30104              :                   if ((
   30105              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30106              : ((16 == 64 || TARGET_AVX512VL
   30107              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30108              :    && ix86_pre_reload_split ()
   30109              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30110              :                     STRIP_UNARY (operands[4]))
   30111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30112              :                        STRIP_UNARY (operands[4]))
   30113              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30114              :                        STRIP_UNARY (operands[3]))
   30115              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30116              :                        STRIP_UNARY (operands[3])))) && 
   30117              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30118              : ( 1)))
   30119              :                     return gen_split_1897 (insn, operands);
   30120              :                   break;
   30121              : 
   30122              :                 case 18:
   30123              :                   if (((
   30124              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30125              : ((64 == 64 || TARGET_AVX512VL
   30126              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30127              :    && ix86_pre_reload_split ()
   30128              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30129              :                     STRIP_UNARY (operands[4]))
   30130              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30131              :                        STRIP_UNARY (operands[4]))
   30132              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30133              :                        STRIP_UNARY (operands[3]))
   30134              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30135              :                        STRIP_UNARY (operands[3])))) && 
   30136              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30137              : (TARGET_AVX512F)) && 
   30138              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30139              : ( 1)))
   30140              :                     return gen_split_1924 (insn, operands);
   30141              :                   break;
   30142              : 
   30143              :                 case 19:
   30144              :                   if (((
   30145              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30146              : ((32 == 64 || TARGET_AVX512VL
   30147              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30148              :    && ix86_pre_reload_split ()
   30149              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30150              :                     STRIP_UNARY (operands[4]))
   30151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30152              :                        STRIP_UNARY (operands[4]))
   30153              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30154              :                        STRIP_UNARY (operands[3]))
   30155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30156              :                        STRIP_UNARY (operands[3])))) && 
   30157              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30158              : (TARGET_AVX)) && 
   30159              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30160              : ( 1)))
   30161              :                     return gen_split_1951 (insn, operands);
   30162              :                   break;
   30163              : 
   30164              :                 case 20:
   30165              :                   if ((
   30166              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30167              : ((16 == 64 || TARGET_AVX512VL
   30168              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30169              :    && ix86_pre_reload_split ()
   30170              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30171              :                     STRIP_UNARY (operands[4]))
   30172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30173              :                        STRIP_UNARY (operands[4]))
   30174              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30175              :                        STRIP_UNARY (operands[3]))
   30176              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30177              :                        STRIP_UNARY (operands[3])))) && 
   30178              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30179              : ( 1)))
   30180              :                     return gen_split_1978 (insn, operands);
   30181              :                   break;
   30182              : 
   30183              :                 case 21:
   30184              :                   if (((
   30185              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30186              : ((64 == 64 || TARGET_AVX512VL
   30187              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30188              :    && ix86_pre_reload_split ()
   30189              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30190              :                     STRIP_UNARY (operands[4]))
   30191              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30192              :                        STRIP_UNARY (operands[4]))
   30193              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30194              :                        STRIP_UNARY (operands[3]))
   30195              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30196              :                        STRIP_UNARY (operands[3])))) && 
   30197              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30198              : (TARGET_AVX512F)) && 
   30199              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30200              : ( 1)))
   30201              :                     return gen_split_2005 (insn, operands);
   30202              :                   break;
   30203              : 
   30204              :                 case 22:
   30205              :                   if (((
   30206              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30207              : ((32 == 64 || TARGET_AVX512VL
   30208              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30209              :    && ix86_pre_reload_split ()
   30210              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30211              :                     STRIP_UNARY (operands[4]))
   30212              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30213              :                        STRIP_UNARY (operands[4]))
   30214              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30215              :                        STRIP_UNARY (operands[3]))
   30216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30217              :                        STRIP_UNARY (operands[3])))) && 
   30218              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30219              : (TARGET_AVX)) && 
   30220              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30221              : ( 1)))
   30222              :                     return gen_split_2032 (insn, operands);
   30223              :                   break;
   30224              : 
   30225              :                 case 23:
   30226              :                   if ((
   30227              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30228              : ((16 == 64 || TARGET_AVX512VL
   30229              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30230              :    && ix86_pre_reload_split ()
   30231              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30232              :                     STRIP_UNARY (operands[4]))
   30233              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30234              :                        STRIP_UNARY (operands[4]))
   30235              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30236              :                        STRIP_UNARY (operands[3]))
   30237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30238              :                        STRIP_UNARY (operands[3])))) && 
   30239              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30240              : ( 1)))
   30241              :                     return gen_split_2059 (insn, operands);
   30242              :                   break;
   30243              : 
   30244              :                 case 24:
   30245              :                   if (((
   30246              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30247              : ((64 == 64 || TARGET_AVX512VL
   30248              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30249              :    && ix86_pre_reload_split ()
   30250              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30251              :                     STRIP_UNARY (operands[4]))
   30252              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30253              :                        STRIP_UNARY (operands[4]))
   30254              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30255              :                        STRIP_UNARY (operands[3]))
   30256              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30257              :                        STRIP_UNARY (operands[3])))) && 
   30258              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30259              : (TARGET_AVX512F)) && 
   30260              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30261              : ( 1)))
   30262              :                     return gen_split_1765 (insn, operands);
   30263              :                   break;
   30264              : 
   30265              :                 case 25:
   30266              :                   if (((
   30267              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30268              : ((32 == 64 || TARGET_AVX512VL
   30269              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30270              :    && ix86_pre_reload_split ()
   30271              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30272              :                     STRIP_UNARY (operands[4]))
   30273              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30274              :                        STRIP_UNARY (operands[4]))
   30275              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30276              :                        STRIP_UNARY (operands[3]))
   30277              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30278              :                        STRIP_UNARY (operands[3])))) && 
   30279              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30280              : (TARGET_AVX)) && 
   30281              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30282              : ( 1)))
   30283              :                     return gen_split_1792 (insn, operands);
   30284              :                   break;
   30285              : 
   30286              :                 case 26:
   30287              :                   if ((
   30288              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30289              : ((16 == 64 || TARGET_AVX512VL
   30290              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30291              :    && ix86_pre_reload_split ()
   30292              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30293              :                     STRIP_UNARY (operands[4]))
   30294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30295              :                        STRIP_UNARY (operands[4]))
   30296              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30297              :                        STRIP_UNARY (operands[3]))
   30298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30299              :                        STRIP_UNARY (operands[3])))) && 
   30300              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30301              : ( 1)))
   30302              :                     return gen_split_1819 (insn, operands);
   30303              :                   break;
   30304              : 
   30305              :                 case 27:
   30306              :                   if (((
   30307              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30308              : ((64 == 64 || TARGET_AVX512VL
   30309              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30310              :    && ix86_pre_reload_split ()
   30311              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30312              :                     STRIP_UNARY (operands[4]))
   30313              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30314              :                        STRIP_UNARY (operands[4]))
   30315              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30316              :                        STRIP_UNARY (operands[3]))
   30317              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30318              :                        STRIP_UNARY (operands[3])))) && 
   30319              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30320              : (TARGET_AVX512F)) && 
   30321              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30322              : ( 1)))
   30323              :                     return gen_split_1846 (insn, operands);
   30324              :                   break;
   30325              : 
   30326              :                 case 28:
   30327              :                   if (((
   30328              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30329              : ((32 == 64 || TARGET_AVX512VL
   30330              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30331              :    && ix86_pre_reload_split ()
   30332              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30333              :                     STRIP_UNARY (operands[4]))
   30334              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30335              :                        STRIP_UNARY (operands[4]))
   30336              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30337              :                        STRIP_UNARY (operands[3]))
   30338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30339              :                        STRIP_UNARY (operands[3])))) && 
   30340              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30341              : (TARGET_AVX)) && 
   30342              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30343              : ( 1)))
   30344              :                     return gen_split_1873 (insn, operands);
   30345              :                   break;
   30346              : 
   30347              :                 case 29:
   30348              :                   if ((
   30349              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30350              : ((16 == 64 || TARGET_AVX512VL
   30351              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30352              :    && ix86_pre_reload_split ()
   30353              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30354              :                     STRIP_UNARY (operands[4]))
   30355              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30356              :                        STRIP_UNARY (operands[4]))
   30357              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30358              :                        STRIP_UNARY (operands[3]))
   30359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30360              :                        STRIP_UNARY (operands[3])))) && 
   30361              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30362              : ( 1)))
   30363              :                     return gen_split_1900 (insn, operands);
   30364              :                   break;
   30365              : 
   30366              :                 case 30:
   30367              :                   if (((
   30368              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30369              : ((64 == 64 || TARGET_AVX512VL
   30370              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30371              :    && ix86_pre_reload_split ()
   30372              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30373              :                     STRIP_UNARY (operands[4]))
   30374              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30375              :                        STRIP_UNARY (operands[4]))
   30376              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30377              :                        STRIP_UNARY (operands[3]))
   30378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30379              :                        STRIP_UNARY (operands[3])))) && 
   30380              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30381              : (TARGET_AVX512F)) && 
   30382              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30383              : ( 1)))
   30384              :                     return gen_split_1927 (insn, operands);
   30385              :                   break;
   30386              : 
   30387              :                 case 31:
   30388              :                   if (((
   30389              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30390              : ((32 == 64 || TARGET_AVX512VL
   30391              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30392              :    && ix86_pre_reload_split ()
   30393              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30394              :                     STRIP_UNARY (operands[4]))
   30395              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30396              :                        STRIP_UNARY (operands[4]))
   30397              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30398              :                        STRIP_UNARY (operands[3]))
   30399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30400              :                        STRIP_UNARY (operands[3])))) && 
   30401              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30402              : (TARGET_AVX)) && 
   30403              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30404              : ( 1)))
   30405              :                     return gen_split_1954 (insn, operands);
   30406              :                   break;
   30407              : 
   30408              :                 case 32:
   30409              :                   if ((
   30410              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30411              : ((16 == 64 || TARGET_AVX512VL
   30412              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30413              :    && ix86_pre_reload_split ()
   30414              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30415              :                     STRIP_UNARY (operands[4]))
   30416              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30417              :                        STRIP_UNARY (operands[4]))
   30418              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30419              :                        STRIP_UNARY (operands[3]))
   30420              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30421              :                        STRIP_UNARY (operands[3])))) && 
   30422              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30423              : ( 1)))
   30424              :                     return gen_split_1981 (insn, operands);
   30425              :                   break;
   30426              : 
   30427              :                 case 33:
   30428              :                   if (((
   30429              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30430              : ((64 == 64 || TARGET_AVX512VL
   30431              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30432              :    && ix86_pre_reload_split ()
   30433              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30434              :                     STRIP_UNARY (operands[4]))
   30435              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30436              :                        STRIP_UNARY (operands[4]))
   30437              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30438              :                        STRIP_UNARY (operands[3]))
   30439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30440              :                        STRIP_UNARY (operands[3])))) && 
   30441              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30442              : (TARGET_AVX512F)) && 
   30443              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30444              : ( 1)))
   30445              :                     return gen_split_2008 (insn, operands);
   30446              :                   break;
   30447              : 
   30448              :                 case 34:
   30449              :                   if (((
   30450              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30451              : ((32 == 64 || TARGET_AVX512VL
   30452              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30453              :    && ix86_pre_reload_split ()
   30454              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30455              :                     STRIP_UNARY (operands[4]))
   30456              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30457              :                        STRIP_UNARY (operands[4]))
   30458              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30459              :                        STRIP_UNARY (operands[3]))
   30460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30461              :                        STRIP_UNARY (operands[3])))) && 
   30462              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30463              : (TARGET_AVX)) && 
   30464              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30465              : ( 1)))
   30466              :                     return gen_split_2035 (insn, operands);
   30467              :                   break;
   30468              : 
   30469              :                 case 35:
   30470              :                   if ((
   30471              : #line 14493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30472              : ((16 == 64 || TARGET_AVX512VL
   30473              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30474              :    && ix86_pre_reload_split ()
   30475              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30476              :                     STRIP_UNARY (operands[4]))
   30477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30478              :                        STRIP_UNARY (operands[4]))
   30479              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30480              :                        STRIP_UNARY (operands[3]))
   30481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30482              :                        STRIP_UNARY (operands[3])))) && 
   30483              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30484              : ( 1)))
   30485              :                     return gen_split_2062 (insn, operands);
   30486              :                   break;
   30487              : 
   30488              :                 case 36:
   30489              :                   if (((
   30490              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30491              : ((64 == 64 || TARGET_AVX512VL
   30492              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30493              :    && ix86_pre_reload_split ()) && 
   30494              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30495              : (TARGET_AVX512F)) && 
   30496              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30497              : ( 1)))
   30498              :                     return gen_split_3043 (insn, operands);
   30499              :                   break;
   30500              : 
   30501              :                 case 37:
   30502              :                   if (((
   30503              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30504              : ((32 == 64 || TARGET_AVX512VL
   30505              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30506              :    && ix86_pre_reload_split ()) && 
   30507              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30508              : (TARGET_AVX)) && 
   30509              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30510              : ( 1)))
   30511              :                     return gen_split_3052 (insn, operands);
   30512              :                   break;
   30513              : 
   30514              :                 case 38:
   30515              :                   if ((
   30516              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30517              : ((16 == 64 || TARGET_AVX512VL
   30518              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30519              :    && ix86_pre_reload_split ()) && 
   30520              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30521              : ( 1)))
   30522              :                     return gen_split_3061 (insn, operands);
   30523              :                   break;
   30524              : 
   30525              :                 case 39:
   30526              :                   if (((
   30527              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30528              : ((64 == 64 || TARGET_AVX512VL
   30529              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30530              :    && ix86_pre_reload_split ()) && 
   30531              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30532              : (TARGET_AVX512F)) && 
   30533              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30534              : ( 1)))
   30535              :                     return gen_split_3070 (insn, operands);
   30536              :                   break;
   30537              : 
   30538              :                 case 40:
   30539              :                   if (((
   30540              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30541              : ((32 == 64 || TARGET_AVX512VL
   30542              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30543              :    && ix86_pre_reload_split ()) && 
   30544              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30545              : (TARGET_AVX)) && 
   30546              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30547              : ( 1)))
   30548              :                     return gen_split_3079 (insn, operands);
   30549              :                   break;
   30550              : 
   30551              :                 case 41:
   30552              :                   if ((
   30553              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30554              : ((16 == 64 || TARGET_AVX512VL
   30555              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30556              :    && ix86_pre_reload_split ()) && 
   30557              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30558              : ( 1)))
   30559              :                     return gen_split_3088 (insn, operands);
   30560              :                   break;
   30561              : 
   30562              :                 case 42:
   30563              :                   if (((
   30564              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30565              : ((64 == 64 || TARGET_AVX512VL
   30566              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30567              :    && ix86_pre_reload_split ()) && 
   30568              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30569              : (TARGET_AVX512F)) && 
   30570              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30571              : ( 1)))
   30572              :                     return gen_split_3097 (insn, operands);
   30573              :                   break;
   30574              : 
   30575              :                 case 43:
   30576              :                   if (((
   30577              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30578              : ((32 == 64 || TARGET_AVX512VL
   30579              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30580              :    && ix86_pre_reload_split ()) && 
   30581              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30582              : (TARGET_AVX)) && 
   30583              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30584              : ( 1)))
   30585              :                     return gen_split_3106 (insn, operands);
   30586              :                   break;
   30587              : 
   30588              :                 case 44:
   30589              :                   if ((
   30590              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30591              : ((16 == 64 || TARGET_AVX512VL
   30592              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30593              :    && ix86_pre_reload_split ()) && 
   30594              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30595              : ( 1)))
   30596              :                     return gen_split_3115 (insn, operands);
   30597              :                   break;
   30598              : 
   30599              :                 case 45:
   30600              :                   if (((
   30601              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30602              : ((64 == 64 || TARGET_AVX512VL
   30603              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30604              :    && ix86_pre_reload_split ()) && 
   30605              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30606              : (TARGET_AVX512F)) && 
   30607              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30608              : ( 1)))
   30609              :                     return gen_split_3124 (insn, operands);
   30610              :                   break;
   30611              : 
   30612              :                 case 46:
   30613              :                   if (((
   30614              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30615              : ((32 == 64 || TARGET_AVX512VL
   30616              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30617              :    && ix86_pre_reload_split ()) && 
   30618              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30619              : (TARGET_AVX)) && 
   30620              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30621              : ( 1)))
   30622              :                     return gen_split_3133 (insn, operands);
   30623              :                   break;
   30624              : 
   30625              :                 case 47:
   30626              :                   if ((
   30627              : #line 14662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30628              : ((16 == 64 || TARGET_AVX512VL
   30629              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30630              :    && ix86_pre_reload_split ()) && 
   30631              : #line 14666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30632              : ( 1)))
   30633              :                     return gen_split_3142 (insn, operands);
   30634              :                   break;
   30635              : 
   30636              :                 default:
   30637              :                   break;
   30638              :                 }
   30639              :               break;
   30640              : 
   30641              :             case AND:
   30642              :               switch (pattern539 (x2))
   30643              :                 {
   30644              :                 case 0:
   30645              :                   if (((
   30646              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30647              : ((64 == 64 || TARGET_AVX512VL
   30648              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30649              :    && ix86_pre_reload_split ()
   30650              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30651              :                     STRIP_UNARY (operands[4]))
   30652              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30653              :                        STRIP_UNARY (operands[4]))
   30654              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30655              :                        STRIP_UNARY (operands[3]))
   30656              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30657              :                        STRIP_UNARY (operands[3])))) && 
   30658              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30659              : (TARGET_AVX512F)) && 
   30660              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30661              : ( 1)))
   30662              :                     return gen_split_2407 (insn, operands);
   30663              :                   break;
   30664              : 
   30665              :                 case 1:
   30666              :                   if (((
   30667              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30668              : ((32 == 64 || TARGET_AVX512VL
   30669              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30670              :    && ix86_pre_reload_split ()
   30671              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30672              :                     STRIP_UNARY (operands[4]))
   30673              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30674              :                        STRIP_UNARY (operands[4]))
   30675              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30676              :                        STRIP_UNARY (operands[3]))
   30677              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30678              :                        STRIP_UNARY (operands[3])))) && 
   30679              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30680              : (TARGET_AVX)) && 
   30681              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30682              : ( 1)))
   30683              :                     return gen_split_2434 (insn, operands);
   30684              :                   break;
   30685              : 
   30686              :                 case 2:
   30687              :                   if ((
   30688              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30689              : ((16 == 64 || TARGET_AVX512VL
   30690              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30691              :    && ix86_pre_reload_split ()
   30692              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30693              :                     STRIP_UNARY (operands[4]))
   30694              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30695              :                        STRIP_UNARY (operands[4]))
   30696              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30697              :                        STRIP_UNARY (operands[3]))
   30698              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30699              :                        STRIP_UNARY (operands[3])))) && 
   30700              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30701              : ( 1)))
   30702              :                     return gen_split_2461 (insn, operands);
   30703              :                   break;
   30704              : 
   30705              :                 case 3:
   30706              :                   if (((
   30707              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30708              : ((64 == 64 || TARGET_AVX512VL
   30709              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30710              :    && ix86_pre_reload_split ()
   30711              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30712              :                     STRIP_UNARY (operands[4]))
   30713              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30714              :                        STRIP_UNARY (operands[4]))
   30715              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30716              :                        STRIP_UNARY (operands[3]))
   30717              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30718              :                        STRIP_UNARY (operands[3])))) && 
   30719              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30720              : (TARGET_AVX512F)) && 
   30721              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30722              : ( 1)))
   30723              :                     return gen_split_2488 (insn, operands);
   30724              :                   break;
   30725              : 
   30726              :                 case 4:
   30727              :                   if (((
   30728              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30729              : ((32 == 64 || TARGET_AVX512VL
   30730              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30731              :    && ix86_pre_reload_split ()
   30732              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30733              :                     STRIP_UNARY (operands[4]))
   30734              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30735              :                        STRIP_UNARY (operands[4]))
   30736              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30737              :                        STRIP_UNARY (operands[3]))
   30738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30739              :                        STRIP_UNARY (operands[3])))) && 
   30740              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30741              : (TARGET_AVX)) && 
   30742              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30743              : ( 1)))
   30744              :                     return gen_split_2515 (insn, operands);
   30745              :                   break;
   30746              : 
   30747              :                 case 5:
   30748              :                   if ((
   30749              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30750              : ((16 == 64 || TARGET_AVX512VL
   30751              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30752              :    && ix86_pre_reload_split ()
   30753              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30754              :                     STRIP_UNARY (operands[4]))
   30755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30756              :                        STRIP_UNARY (operands[4]))
   30757              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30758              :                        STRIP_UNARY (operands[3]))
   30759              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30760              :                        STRIP_UNARY (operands[3])))) && 
   30761              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30762              : ( 1)))
   30763              :                     return gen_split_2542 (insn, operands);
   30764              :                   break;
   30765              : 
   30766              :                 case 6:
   30767              :                   if (((
   30768              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30769              : ((64 == 64 || TARGET_AVX512VL
   30770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30771              :    && ix86_pre_reload_split ()
   30772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30773              :                     STRIP_UNARY (operands[4]))
   30774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30775              :                        STRIP_UNARY (operands[4]))
   30776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30777              :                        STRIP_UNARY (operands[3]))
   30778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30779              :                        STRIP_UNARY (operands[3])))) && 
   30780              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30781              : (TARGET_AVX512F)) && 
   30782              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30783              : ( 1)))
   30784              :                     return gen_split_2569 (insn, operands);
   30785              :                   break;
   30786              : 
   30787              :                 case 7:
   30788              :                   if (((
   30789              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30790              : ((32 == 64 || TARGET_AVX512VL
   30791              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30792              :    && ix86_pre_reload_split ()
   30793              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30794              :                     STRIP_UNARY (operands[4]))
   30795              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30796              :                        STRIP_UNARY (operands[4]))
   30797              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30798              :                        STRIP_UNARY (operands[3]))
   30799              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30800              :                        STRIP_UNARY (operands[3])))) && 
   30801              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30802              : (TARGET_AVX)) && 
   30803              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30804              : ( 1)))
   30805              :                     return gen_split_2596 (insn, operands);
   30806              :                   break;
   30807              : 
   30808              :                 case 8:
   30809              :                   if ((
   30810              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30811              : ((16 == 64 || TARGET_AVX512VL
   30812              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30813              :    && ix86_pre_reload_split ()
   30814              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30815              :                     STRIP_UNARY (operands[4]))
   30816              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30817              :                        STRIP_UNARY (operands[4]))
   30818              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30819              :                        STRIP_UNARY (operands[3]))
   30820              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30821              :                        STRIP_UNARY (operands[3])))) && 
   30822              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30823              : ( 1)))
   30824              :                     return gen_split_2623 (insn, operands);
   30825              :                   break;
   30826              : 
   30827              :                 case 9:
   30828              :                   if (((
   30829              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30830              : ((64 == 64 || TARGET_AVX512VL
   30831              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30832              :    && ix86_pre_reload_split ()
   30833              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30834              :                     STRIP_UNARY (operands[4]))
   30835              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30836              :                        STRIP_UNARY (operands[4]))
   30837              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30838              :                        STRIP_UNARY (operands[3]))
   30839              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30840              :                        STRIP_UNARY (operands[3])))) && 
   30841              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30842              : (TARGET_AVX512F)) && 
   30843              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30844              : ( 1)))
   30845              :                     return gen_split_2650 (insn, operands);
   30846              :                   break;
   30847              : 
   30848              :                 case 10:
   30849              :                   if (((
   30850              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30851              : ((32 == 64 || TARGET_AVX512VL
   30852              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30853              :    && ix86_pre_reload_split ()
   30854              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30855              :                     STRIP_UNARY (operands[4]))
   30856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30857              :                        STRIP_UNARY (operands[4]))
   30858              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30859              :                        STRIP_UNARY (operands[3]))
   30860              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30861              :                        STRIP_UNARY (operands[3])))) && 
   30862              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30863              : (TARGET_AVX)) && 
   30864              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30865              : ( 1)))
   30866              :                     return gen_split_2677 (insn, operands);
   30867              :                   break;
   30868              : 
   30869              :                 case 11:
   30870              :                   if ((
   30871              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30872              : ((16 == 64 || TARGET_AVX512VL
   30873              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30874              :    && ix86_pre_reload_split ()
   30875              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30876              :                     STRIP_UNARY (operands[4]))
   30877              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30878              :                        STRIP_UNARY (operands[4]))
   30879              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30880              :                        STRIP_UNARY (operands[3]))
   30881              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30882              :                        STRIP_UNARY (operands[3])))) && 
   30883              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30884              : ( 1)))
   30885              :                     return gen_split_2704 (insn, operands);
   30886              :                   break;
   30887              : 
   30888              :                 default:
   30889              :                   break;
   30890              :                 }
   30891              :               break;
   30892              : 
   30893              :             case IOR:
   30894              :               switch (pattern539 (x2))
   30895              :                 {
   30896              :                 case 0:
   30897              :                   if (((
   30898              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30899              : ((64 == 64 || TARGET_AVX512VL
   30900              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30901              :    && ix86_pre_reload_split ()
   30902              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30903              :                     STRIP_UNARY (operands[4]))
   30904              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30905              :                        STRIP_UNARY (operands[4]))
   30906              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30907              :                        STRIP_UNARY (operands[3]))
   30908              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30909              :                        STRIP_UNARY (operands[3])))) && 
   30910              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30911              : (TARGET_AVX512F)) && 
   30912              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30913              : ( 1)))
   30914              :                     return gen_split_2410 (insn, operands);
   30915              :                   break;
   30916              : 
   30917              :                 case 1:
   30918              :                   if (((
   30919              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30920              : ((32 == 64 || TARGET_AVX512VL
   30921              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30922              :    && ix86_pre_reload_split ()
   30923              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30924              :                     STRIP_UNARY (operands[4]))
   30925              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30926              :                        STRIP_UNARY (operands[4]))
   30927              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30928              :                        STRIP_UNARY (operands[3]))
   30929              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30930              :                        STRIP_UNARY (operands[3])))) && 
   30931              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30932              : (TARGET_AVX)) && 
   30933              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30934              : ( 1)))
   30935              :                     return gen_split_2437 (insn, operands);
   30936              :                   break;
   30937              : 
   30938              :                 case 2:
   30939              :                   if ((
   30940              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30941              : ((16 == 64 || TARGET_AVX512VL
   30942              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30943              :    && ix86_pre_reload_split ()
   30944              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30945              :                     STRIP_UNARY (operands[4]))
   30946              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30947              :                        STRIP_UNARY (operands[4]))
   30948              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30949              :                        STRIP_UNARY (operands[3]))
   30950              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30951              :                        STRIP_UNARY (operands[3])))) && 
   30952              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30953              : ( 1)))
   30954              :                     return gen_split_2464 (insn, operands);
   30955              :                   break;
   30956              : 
   30957              :                 case 3:
   30958              :                   if (((
   30959              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30960              : ((64 == 64 || TARGET_AVX512VL
   30961              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30962              :    && ix86_pre_reload_split ()
   30963              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30964              :                     STRIP_UNARY (operands[4]))
   30965              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30966              :                        STRIP_UNARY (operands[4]))
   30967              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30968              :                        STRIP_UNARY (operands[3]))
   30969              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30970              :                        STRIP_UNARY (operands[3])))) && 
   30971              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30972              : (TARGET_AVX512F)) && 
   30973              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30974              : ( 1)))
   30975              :                     return gen_split_2491 (insn, operands);
   30976              :                   break;
   30977              : 
   30978              :                 case 4:
   30979              :                   if (((
   30980              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30981              : ((32 == 64 || TARGET_AVX512VL
   30982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30983              :    && ix86_pre_reload_split ()
   30984              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30985              :                     STRIP_UNARY (operands[4]))
   30986              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30987              :                        STRIP_UNARY (operands[4]))
   30988              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30989              :                        STRIP_UNARY (operands[3]))
   30990              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30991              :                        STRIP_UNARY (operands[3])))) && 
   30992              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30993              : (TARGET_AVX)) && 
   30994              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30995              : ( 1)))
   30996              :                     return gen_split_2518 (insn, operands);
   30997              :                   break;
   30998              : 
   30999              :                 case 5:
   31000              :                   if ((
   31001              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31002              : ((16 == 64 || TARGET_AVX512VL
   31003              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31004              :    && ix86_pre_reload_split ()
   31005              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31006              :                     STRIP_UNARY (operands[4]))
   31007              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31008              :                        STRIP_UNARY (operands[4]))
   31009              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31010              :                        STRIP_UNARY (operands[3]))
   31011              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31012              :                        STRIP_UNARY (operands[3])))) && 
   31013              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31014              : ( 1)))
   31015              :                     return gen_split_2545 (insn, operands);
   31016              :                   break;
   31017              : 
   31018              :                 case 6:
   31019              :                   if (((
   31020              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31021              : ((64 == 64 || TARGET_AVX512VL
   31022              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31023              :    && ix86_pre_reload_split ()
   31024              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31025              :                     STRIP_UNARY (operands[4]))
   31026              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31027              :                        STRIP_UNARY (operands[4]))
   31028              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31029              :                        STRIP_UNARY (operands[3]))
   31030              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31031              :                        STRIP_UNARY (operands[3])))) && 
   31032              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31033              : (TARGET_AVX512F)) && 
   31034              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31035              : ( 1)))
   31036              :                     return gen_split_2572 (insn, operands);
   31037              :                   break;
   31038              : 
   31039              :                 case 7:
   31040              :                   if (((
   31041              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31042              : ((32 == 64 || TARGET_AVX512VL
   31043              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31044              :    && ix86_pre_reload_split ()
   31045              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31046              :                     STRIP_UNARY (operands[4]))
   31047              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31048              :                        STRIP_UNARY (operands[4]))
   31049              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31050              :                        STRIP_UNARY (operands[3]))
   31051              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31052              :                        STRIP_UNARY (operands[3])))) && 
   31053              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31054              : (TARGET_AVX)) && 
   31055              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31056              : ( 1)))
   31057              :                     return gen_split_2599 (insn, operands);
   31058              :                   break;
   31059              : 
   31060              :                 case 8:
   31061              :                   if ((
   31062              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31063              : ((16 == 64 || TARGET_AVX512VL
   31064              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31065              :    && ix86_pre_reload_split ()
   31066              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31067              :                     STRIP_UNARY (operands[4]))
   31068              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31069              :                        STRIP_UNARY (operands[4]))
   31070              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31071              :                        STRIP_UNARY (operands[3]))
   31072              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31073              :                        STRIP_UNARY (operands[3])))) && 
   31074              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31075              : ( 1)))
   31076              :                     return gen_split_2626 (insn, operands);
   31077              :                   break;
   31078              : 
   31079              :                 case 9:
   31080              :                   if (((
   31081              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31082              : ((64 == 64 || TARGET_AVX512VL
   31083              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31084              :    && ix86_pre_reload_split ()
   31085              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31086              :                     STRIP_UNARY (operands[4]))
   31087              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31088              :                        STRIP_UNARY (operands[4]))
   31089              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31090              :                        STRIP_UNARY (operands[3]))
   31091              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31092              :                        STRIP_UNARY (operands[3])))) && 
   31093              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31094              : (TARGET_AVX512F)) && 
   31095              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31096              : ( 1)))
   31097              :                     return gen_split_2653 (insn, operands);
   31098              :                   break;
   31099              : 
   31100              :                 case 10:
   31101              :                   if (((
   31102              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31103              : ((32 == 64 || TARGET_AVX512VL
   31104              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31105              :    && ix86_pre_reload_split ()
   31106              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31107              :                     STRIP_UNARY (operands[4]))
   31108              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31109              :                        STRIP_UNARY (operands[4]))
   31110              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31111              :                        STRIP_UNARY (operands[3]))
   31112              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31113              :                        STRIP_UNARY (operands[3])))) && 
   31114              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31115              : (TARGET_AVX)) && 
   31116              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31117              : ( 1)))
   31118              :                     return gen_split_2680 (insn, operands);
   31119              :                   break;
   31120              : 
   31121              :                 case 11:
   31122              :                   if ((
   31123              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31124              : ((16 == 64 || TARGET_AVX512VL
   31125              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31126              :    && ix86_pre_reload_split ()
   31127              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31128              :                     STRIP_UNARY (operands[4]))
   31129              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31130              :                        STRIP_UNARY (operands[4]))
   31131              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31132              :                        STRIP_UNARY (operands[3]))
   31133              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31134              :                        STRIP_UNARY (operands[3])))) && 
   31135              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31136              : ( 1)))
   31137              :                     return gen_split_2707 (insn, operands);
   31138              :                   break;
   31139              : 
   31140              :                 default:
   31141              :                   break;
   31142              :                 }
   31143              :               break;
   31144              : 
   31145              :             case XOR:
   31146              :               switch (pattern539 (x2))
   31147              :                 {
   31148              :                 case 0:
   31149              :                   if (((
   31150              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31151              : ((64 == 64 || TARGET_AVX512VL
   31152              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31153              :    && ix86_pre_reload_split ()
   31154              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31155              :                     STRIP_UNARY (operands[4]))
   31156              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31157              :                        STRIP_UNARY (operands[4]))
   31158              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31159              :                        STRIP_UNARY (operands[3]))
   31160              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31161              :                        STRIP_UNARY (operands[3])))) && 
   31162              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31163              : (TARGET_AVX512F)) && 
   31164              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31165              : ( 1)))
   31166              :                     return gen_split_2413 (insn, operands);
   31167              :                   break;
   31168              : 
   31169              :                 case 1:
   31170              :                   if (((
   31171              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31172              : ((32 == 64 || TARGET_AVX512VL
   31173              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31174              :    && ix86_pre_reload_split ()
   31175              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31176              :                     STRIP_UNARY (operands[4]))
   31177              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31178              :                        STRIP_UNARY (operands[4]))
   31179              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31180              :                        STRIP_UNARY (operands[3]))
   31181              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31182              :                        STRIP_UNARY (operands[3])))) && 
   31183              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31184              : (TARGET_AVX)) && 
   31185              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31186              : ( 1)))
   31187              :                     return gen_split_2440 (insn, operands);
   31188              :                   break;
   31189              : 
   31190              :                 case 2:
   31191              :                   if ((
   31192              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31193              : ((16 == 64 || TARGET_AVX512VL
   31194              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31195              :    && ix86_pre_reload_split ()
   31196              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31197              :                     STRIP_UNARY (operands[4]))
   31198              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31199              :                        STRIP_UNARY (operands[4]))
   31200              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31201              :                        STRIP_UNARY (operands[3]))
   31202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31203              :                        STRIP_UNARY (operands[3])))) && 
   31204              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31205              : ( 1)))
   31206              :                     return gen_split_2467 (insn, operands);
   31207              :                   break;
   31208              : 
   31209              :                 case 3:
   31210              :                   if (((
   31211              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31212              : ((64 == 64 || TARGET_AVX512VL
   31213              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31214              :    && ix86_pre_reload_split ()
   31215              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31216              :                     STRIP_UNARY (operands[4]))
   31217              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31218              :                        STRIP_UNARY (operands[4]))
   31219              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31220              :                        STRIP_UNARY (operands[3]))
   31221              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31222              :                        STRIP_UNARY (operands[3])))) && 
   31223              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31224              : (TARGET_AVX512F)) && 
   31225              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31226              : ( 1)))
   31227              :                     return gen_split_2494 (insn, operands);
   31228              :                   break;
   31229              : 
   31230              :                 case 4:
   31231              :                   if (((
   31232              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31233              : ((32 == 64 || TARGET_AVX512VL
   31234              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31235              :    && ix86_pre_reload_split ()
   31236              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31237              :                     STRIP_UNARY (operands[4]))
   31238              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31239              :                        STRIP_UNARY (operands[4]))
   31240              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31241              :                        STRIP_UNARY (operands[3]))
   31242              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31243              :                        STRIP_UNARY (operands[3])))) && 
   31244              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31245              : (TARGET_AVX)) && 
   31246              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31247              : ( 1)))
   31248              :                     return gen_split_2521 (insn, operands);
   31249              :                   break;
   31250              : 
   31251              :                 case 5:
   31252              :                   if ((
   31253              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31254              : ((16 == 64 || TARGET_AVX512VL
   31255              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31256              :    && ix86_pre_reload_split ()
   31257              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31258              :                     STRIP_UNARY (operands[4]))
   31259              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31260              :                        STRIP_UNARY (operands[4]))
   31261              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31262              :                        STRIP_UNARY (operands[3]))
   31263              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31264              :                        STRIP_UNARY (operands[3])))) && 
   31265              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31266              : ( 1)))
   31267              :                     return gen_split_2548 (insn, operands);
   31268              :                   break;
   31269              : 
   31270              :                 case 6:
   31271              :                   if (((
   31272              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31273              : ((64 == 64 || TARGET_AVX512VL
   31274              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31275              :    && ix86_pre_reload_split ()
   31276              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31277              :                     STRIP_UNARY (operands[4]))
   31278              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31279              :                        STRIP_UNARY (operands[4]))
   31280              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31281              :                        STRIP_UNARY (operands[3]))
   31282              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31283              :                        STRIP_UNARY (operands[3])))) && 
   31284              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31285              : (TARGET_AVX512F)) && 
   31286              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31287              : ( 1)))
   31288              :                     return gen_split_2575 (insn, operands);
   31289              :                   break;
   31290              : 
   31291              :                 case 7:
   31292              :                   if (((
   31293              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31294              : ((32 == 64 || TARGET_AVX512VL
   31295              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31296              :    && ix86_pre_reload_split ()
   31297              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31298              :                     STRIP_UNARY (operands[4]))
   31299              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31300              :                        STRIP_UNARY (operands[4]))
   31301              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31302              :                        STRIP_UNARY (operands[3]))
   31303              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31304              :                        STRIP_UNARY (operands[3])))) && 
   31305              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31306              : (TARGET_AVX)) && 
   31307              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31308              : ( 1)))
   31309              :                     return gen_split_2602 (insn, operands);
   31310              :                   break;
   31311              : 
   31312              :                 case 8:
   31313              :                   if ((
   31314              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31315              : ((16 == 64 || TARGET_AVX512VL
   31316              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31317              :    && ix86_pre_reload_split ()
   31318              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31319              :                     STRIP_UNARY (operands[4]))
   31320              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31321              :                        STRIP_UNARY (operands[4]))
   31322              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31323              :                        STRIP_UNARY (operands[3]))
   31324              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31325              :                        STRIP_UNARY (operands[3])))) && 
   31326              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31327              : ( 1)))
   31328              :                     return gen_split_2629 (insn, operands);
   31329              :                   break;
   31330              : 
   31331              :                 case 9:
   31332              :                   if (((
   31333              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31334              : ((64 == 64 || TARGET_AVX512VL
   31335              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31336              :    && ix86_pre_reload_split ()
   31337              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31338              :                     STRIP_UNARY (operands[4]))
   31339              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31340              :                        STRIP_UNARY (operands[4]))
   31341              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31342              :                        STRIP_UNARY (operands[3]))
   31343              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31344              :                        STRIP_UNARY (operands[3])))) && 
   31345              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31346              : (TARGET_AVX512F)) && 
   31347              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31348              : ( 1)))
   31349              :                     return gen_split_2656 (insn, operands);
   31350              :                   break;
   31351              : 
   31352              :                 case 10:
   31353              :                   if (((
   31354              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31355              : ((32 == 64 || TARGET_AVX512VL
   31356              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31357              :    && ix86_pre_reload_split ()
   31358              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31359              :                     STRIP_UNARY (operands[4]))
   31360              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31361              :                        STRIP_UNARY (operands[4]))
   31362              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31363              :                        STRIP_UNARY (operands[3]))
   31364              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31365              :                        STRIP_UNARY (operands[3])))) && 
   31366              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31367              : (TARGET_AVX)) && 
   31368              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31369              : ( 1)))
   31370              :                     return gen_split_2683 (insn, operands);
   31371              :                   break;
   31372              : 
   31373              :                 case 11:
   31374              :                   if ((
   31375              : #line 14578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31376              : ((16 == 64 || TARGET_AVX512VL
   31377              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31378              :    && ix86_pre_reload_split ()
   31379              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31380              :                     STRIP_UNARY (operands[4]))
   31381              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31382              :                        STRIP_UNARY (operands[4]))
   31383              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31384              :                        STRIP_UNARY (operands[3]))
   31385              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31386              :                        STRIP_UNARY (operands[3])))) && 
   31387              : #line 14590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31388              : ( 1)))
   31389              :                     return gen_split_2710 (insn, operands);
   31390              :                   break;
   31391              : 
   31392              :                 default:
   31393              :                   break;
   31394              :                 }
   31395              :               break;
   31396              : 
   31397              :             default:
   31398              :               break;
   31399              :             }
   31400              :           break;
   31401              : 
   31402              :         case REG:
   31403              :         case SUBREG:
   31404              :         case MEM:
   31405              :         case VEC_DUPLICATE:
   31406              :           operands[1] = x3;
   31407              :           x5 = XEXP (x2, 1);
   31408              :           operands[2] = x5;
   31409              :           switch (GET_MODE (operands[0]))
   31410              :             {
   31411              :             case E_V16SImode:
   31412              :               if (pattern944 (x2, 
   31413              : E_V16SImode) == 0
   31414              :                   && ((
   31415              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31416              : (TARGET_AVX512F
   31417              :    && (!false
   31418              :        || SImode == SImode
   31419              :        || SImode == DImode)) && 
   31420              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31421              : (TARGET_AVX512F)) && 
   31422              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31423              : ( reload_completed && !REG_P (operands[1]) && !false
   31424              :    && optimize_insn_for_speed_p ())))
   31425              :                 return gen_split_3440 (insn, operands);
   31426              :               break;
   31427              : 
   31428              :             case E_V8DImode:
   31429              :               if (pattern944 (x2, 
   31430              : E_V8DImode) == 0
   31431              :                   && ((
   31432              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31433              : (TARGET_AVX512F
   31434              :    && (!false
   31435              :        || DImode == SImode
   31436              :        || DImode == DImode)) && 
   31437              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31438              : (TARGET_AVX512F)) && 
   31439              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31440              : ( reload_completed && !REG_P (operands[1]) && !false
   31441              :    && optimize_insn_for_speed_p ())))
   31442              :                 return gen_split_3441 (insn, operands);
   31443              :               break;
   31444              : 
   31445              :             case E_V64QImode:
   31446              :               if (pattern944 (x2, 
   31447              : E_V64QImode) == 0
   31448              :                   && ((
   31449              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31450              : (TARGET_AVX512F
   31451              :    && (!false
   31452              :        || QImode == SImode
   31453              :        || QImode == DImode)) && 
   31454              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31455              : (TARGET_AVX512BW)) && 
   31456              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31457              : ( reload_completed && !REG_P (operands[1]) && !false
   31458              :    && optimize_insn_for_speed_p ())))
   31459              :                 return gen_split_3442 (insn, operands);
   31460              :               break;
   31461              : 
   31462              :             case E_V32QImode:
   31463              :               if (pattern944 (x2, 
   31464              : E_V32QImode) == 0
   31465              :                   && ((
   31466              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31467              : (TARGET_AVX512F
   31468              :    && (!false
   31469              :        || QImode == SImode
   31470              :        || QImode == DImode)) && 
   31471              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31472              : (TARGET_AVX)) && 
   31473              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31474              : ( reload_completed && !REG_P (operands[1]) && !false
   31475              :    && optimize_insn_for_speed_p ())))
   31476              :                 return gen_split_3443 (insn, operands);
   31477              :               break;
   31478              : 
   31479              :             case E_V16QImode:
   31480              :               if (pattern944 (x2, 
   31481              : E_V16QImode) == 0
   31482              :                   && (
   31483              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31484              : (TARGET_AVX512F
   31485              :    && (!false
   31486              :        || QImode == SImode
   31487              :        || QImode == DImode)) && 
   31488              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31489              : ( reload_completed && !REG_P (operands[1]) && !false
   31490              :    && optimize_insn_for_speed_p ())))
   31491              :                 return gen_split_3444 (insn, operands);
   31492              :               break;
   31493              : 
   31494              :             case E_V32HImode:
   31495              :               if (pattern944 (x2, 
   31496              : E_V32HImode) == 0
   31497              :                   && ((
   31498              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31499              : (TARGET_AVX512F
   31500              :    && (!false
   31501              :        || HImode == SImode
   31502              :        || HImode == DImode)) && 
   31503              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31504              : (TARGET_AVX512BW)) && 
   31505              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31506              : ( reload_completed && !REG_P (operands[1]) && !false
   31507              :    && optimize_insn_for_speed_p ())))
   31508              :                 return gen_split_3445 (insn, operands);
   31509              :               break;
   31510              : 
   31511              :             case E_V16HImode:
   31512              :               if (pattern944 (x2, 
   31513              : E_V16HImode) == 0
   31514              :                   && ((
   31515              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31516              : (TARGET_AVX512F
   31517              :    && (!false
   31518              :        || HImode == SImode
   31519              :        || HImode == DImode)) && 
   31520              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31521              : (TARGET_AVX)) && 
   31522              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31523              : ( reload_completed && !REG_P (operands[1]) && !false
   31524              :    && optimize_insn_for_speed_p ())))
   31525              :                 return gen_split_3446 (insn, operands);
   31526              :               break;
   31527              : 
   31528              :             case E_V8HImode:
   31529              :               if (pattern944 (x2, 
   31530              : E_V8HImode) == 0
   31531              :                   && (
   31532              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31533              : (TARGET_AVX512F
   31534              :    && (!false
   31535              :        || HImode == SImode
   31536              :        || HImode == DImode)) && 
   31537              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31538              : ( reload_completed && !REG_P (operands[1]) && !false
   31539              :    && optimize_insn_for_speed_p ())))
   31540              :                 return gen_split_3447 (insn, operands);
   31541              :               break;
   31542              : 
   31543              :             case E_V8SImode:
   31544              :               if (pattern944 (x2, 
   31545              : E_V8SImode) == 0
   31546              :                   && ((
   31547              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31548              : (TARGET_AVX512F
   31549              :    && (!false
   31550              :        || SImode == SImode
   31551              :        || SImode == DImode)) && 
   31552              : #line 559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31553              : (TARGET_AVX)) && 
   31554              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31555              : ( reload_completed && !REG_P (operands[1]) && !false
   31556              :    && optimize_insn_for_speed_p ())))
   31557              :                 return gen_split_3448 (insn, operands);
   31558              :               break;
   31559              : 
   31560              :             case E_V4SImode:
   31561              :               if (pattern944 (x2, 
   31562              : E_V4SImode) == 0
   31563              :                   && (
   31564              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31565              : (TARGET_AVX512F
   31566              :    && (!false
   31567              :        || SImode == SImode
   31568              :        || SImode == DImode)) && 
   31569              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31570              : ( reload_completed && !REG_P (operands[1]) && !false
   31571              :    && optimize_insn_for_speed_p ())))
   31572              :                 return gen_split_3449 (insn, operands);
   31573              :               break;
   31574              : 
   31575              :             case E_V4DImode:
   31576              :               if (pattern944 (x2, 
   31577              : E_V4DImode) == 0
   31578              :                   && ((
   31579              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31580              : (TARGET_AVX512F
   31581              :    && (!false
   31582              :        || DImode == SImode
   31583              :        || DImode == DImode)) && 
   31584              : #line 560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31585              : (TARGET_AVX)) && 
   31586              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31587              : ( reload_completed && !REG_P (operands[1]) && !false
   31588              :    && optimize_insn_for_speed_p ())))
   31589              :                 return gen_split_3450 (insn, operands);
   31590              :               break;
   31591              : 
   31592              :             case E_V2DImode:
   31593              :               if (pattern944 (x2, 
   31594              : E_V2DImode) == 0
   31595              :                   && (
   31596              : #line 19137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31597              : (TARGET_AVX512F
   31598              :    && (!false
   31599              :        || DImode == SImode
   31600              :        || DImode == DImode)) && 
   31601              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31602              : ( reload_completed && !REG_P (operands[1]) && !false
   31603              :    && optimize_insn_for_speed_p ())))
   31604              :                 return gen_split_3451 (insn, operands);
   31605              :               break;
   31606              : 
   31607              :             default:
   31608              :               break;
   31609              :             }
   31610              :           if (GET_CODE (x3) == VEC_DUPLICATE)
   31611              :             {
   31612              :               switch (pattern607 (x2))
   31613              :                 {
   31614              :                 case 0:
   31615              :                   if ((
   31616              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31617              : (64 == 64 || TARGET_AVX512VL
   31618              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31619              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31620              : (TARGET_AVX512F)))
   31621              :                     return gen_split_3484 (insn, operands);
   31622              :                   break;
   31623              : 
   31624              :                 case 1:
   31625              :                   if ((
   31626              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31627              : (64 == 64 || TARGET_AVX512VL
   31628              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31629              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31630              : (TARGET_AVX512F)))
   31631              :                     return gen_split_3485 (insn, operands);
   31632              :                   break;
   31633              : 
   31634              :                 case 2:
   31635              :                   if ((
   31636              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31637              : (64 == 64 || TARGET_AVX512VL
   31638              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31639              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31640              : (TARGET_AVX512BW)))
   31641              :                     return gen_split_3486 (insn, operands);
   31642              :                   break;
   31643              : 
   31644              :                 case 3:
   31645              :                   if ((
   31646              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31647              : (32 == 64 || TARGET_AVX512VL
   31648              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31649              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31650              : (TARGET_AVX)))
   31651              :                     return gen_split_3487 (insn, operands);
   31652              :                   break;
   31653              : 
   31654              :                 case 4:
   31655              :                   if (
   31656              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31657              : (16 == 64 || TARGET_AVX512VL
   31658              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31659              :                     return gen_split_3488 (insn, operands);
   31660              :                   break;
   31661              : 
   31662              :                 case 5:
   31663              :                   if ((
   31664              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31665              : (64 == 64 || TARGET_AVX512VL
   31666              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31667              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31668              : (TARGET_AVX512BW)))
   31669              :                     return gen_split_3489 (insn, operands);
   31670              :                   break;
   31671              : 
   31672              :                 case 6:
   31673              :                   if ((
   31674              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31675              : (32 == 64 || TARGET_AVX512VL
   31676              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31677              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31678              : (TARGET_AVX)))
   31679              :                     return gen_split_3490 (insn, operands);
   31680              :                   break;
   31681              : 
   31682              :                 case 7:
   31683              :                   if (
   31684              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31685              : (16 == 64 || TARGET_AVX512VL
   31686              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31687              :                     return gen_split_3491 (insn, operands);
   31688              :                   break;
   31689              : 
   31690              :                 case 8:
   31691              :                   if ((
   31692              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31693              : (32 == 64 || TARGET_AVX512VL
   31694              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31695              : #line 559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31696              : (TARGET_AVX)))
   31697              :                     return gen_split_3492 (insn, operands);
   31698              :                   break;
   31699              : 
   31700              :                 case 9:
   31701              :                   if (
   31702              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31703              : (16 == 64 || TARGET_AVX512VL
   31704              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31705              :                     return gen_split_3493 (insn, operands);
   31706              :                   break;
   31707              : 
   31708              :                 case 10:
   31709              :                   if ((
   31710              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31711              : (32 == 64 || TARGET_AVX512VL
   31712              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31713              : #line 560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31714              : (TARGET_AVX)))
   31715              :                     return gen_split_3494 (insn, operands);
   31716              :                   break;
   31717              : 
   31718              :                 case 11:
   31719              :                   if (
   31720              : #line 19441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31721              : (16 == 64 || TARGET_AVX512VL
   31722              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31723              :                     return gen_split_3495 (insn, operands);
   31724              :                   break;
   31725              : 
   31726              :                 default:
   31727              :                   break;
   31728              :                 }
   31729              :             }
   31730              :           break;
   31731              : 
   31732              :         default:
   31733              :           break;
   31734              :         }
   31735              :       break;
   31736              : 
   31737              :     default:
   31738              :       break;
   31739              :     }
   31740              :   operands[1] = x2;
   31741              :   switch (pattern205 ())
   31742              :     {
   31743              :     case 0:
   31744              :       if (((
   31745              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31746              : ((64 == 64 || TARGET_AVX512VL
   31747              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31748              :    && ix86_pre_reload_split ()) && 
   31749              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31750              : (TARGET_AVX512F)) && 
   31751              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31752              : ( 1)))
   31753              :         return gen_split_1727 (insn, operands);
   31754              :       break;
   31755              : 
   31756              :     case 1:
   31757              :       if (((
   31758              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31759              : ((32 == 64 || TARGET_AVX512VL
   31760              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31761              :    && ix86_pre_reload_split ()) && 
   31762              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31763              : (TARGET_AVX)) && 
   31764              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31765              : ( 1)))
   31766              :         return gen_split_1728 (insn, operands);
   31767              :       break;
   31768              : 
   31769              :     case 2:
   31770              :       if ((
   31771              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31772              : ((16 == 64 || TARGET_AVX512VL
   31773              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31774              :    && ix86_pre_reload_split ()) && 
   31775              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31776              : ( 1)))
   31777              :         return gen_split_1729 (insn, operands);
   31778              :       break;
   31779              : 
   31780              :     case 3:
   31781              :       if (((
   31782              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31783              : ((64 == 64 || TARGET_AVX512VL
   31784              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31785              :    && ix86_pre_reload_split ()) && 
   31786              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31787              : (TARGET_AVX512F)) && 
   31788              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31789              : ( 1)))
   31790              :         return gen_split_1730 (insn, operands);
   31791              :       break;
   31792              : 
   31793              :     case 4:
   31794              :       if (((
   31795              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31796              : ((32 == 64 || TARGET_AVX512VL
   31797              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31798              :    && ix86_pre_reload_split ()) && 
   31799              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31800              : (TARGET_AVX)) && 
   31801              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31802              : ( 1)))
   31803              :         return gen_split_1731 (insn, operands);
   31804              :       break;
   31805              : 
   31806              :     case 5:
   31807              :       if ((
   31808              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31809              : ((16 == 64 || TARGET_AVX512VL
   31810              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31811              :    && ix86_pre_reload_split ()) && 
   31812              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31813              : ( 1)))
   31814              :         return gen_split_1732 (insn, operands);
   31815              :       break;
   31816              : 
   31817              :     case 6:
   31818              :       if (((
   31819              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31820              : ((64 == 64 || TARGET_AVX512VL
   31821              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31822              :    && ix86_pre_reload_split ()) && 
   31823              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31824              : (TARGET_AVX512F)) && 
   31825              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31826              : ( 1)))
   31827              :         return gen_split_1733 (insn, operands);
   31828              :       break;
   31829              : 
   31830              :     case 7:
   31831              :       if (((
   31832              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31833              : ((32 == 64 || TARGET_AVX512VL
   31834              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31835              :    && ix86_pre_reload_split ()) && 
   31836              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31837              : (TARGET_AVX)) && 
   31838              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31839              : ( 1)))
   31840              :         return gen_split_1734 (insn, operands);
   31841              :       break;
   31842              : 
   31843              :     case 8:
   31844              :       if ((
   31845              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31846              : ((16 == 64 || TARGET_AVX512VL
   31847              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31848              :    && ix86_pre_reload_split ()) && 
   31849              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31850              : ( 1)))
   31851              :         return gen_split_1735 (insn, operands);
   31852              :       break;
   31853              : 
   31854              :     case 9:
   31855              :       if (((
   31856              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31857              : ((64 == 64 || TARGET_AVX512VL
   31858              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31859              :    && ix86_pre_reload_split ()) && 
   31860              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31861              : (TARGET_AVX512F)) && 
   31862              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31863              : ( 1)))
   31864              :         return gen_split_1736 (insn, operands);
   31865              :       break;
   31866              : 
   31867              :     case 10:
   31868              :       if (((
   31869              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31870              : ((32 == 64 || TARGET_AVX512VL
   31871              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31872              :    && ix86_pre_reload_split ()) && 
   31873              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31874              : (TARGET_AVX)) && 
   31875              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31876              : ( 1)))
   31877              :         return gen_split_1737 (insn, operands);
   31878              :       break;
   31879              : 
   31880              :     case 11:
   31881              :       if (((
   31882              : #line 14463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31883              : ((16 == 64 || TARGET_AVX512VL
   31884              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31885              :    && ix86_pre_reload_split ()) && 
   31886              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31887              : (TARGET_SSE2)) && 
   31888              : #line 14467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31889              : ( 1)))
   31890              :         return gen_split_1738 (insn, operands);
   31891              :       break;
   31892              : 
   31893              :     default:
   31894              :       break;
   31895              :     }
   31896              :   switch (GET_CODE (x2))
   31897              :     {
   31898              :     case AND:
   31899              :       return split_74 (x1, insn);
   31900              : 
   31901              :     case IOR:
   31902              :       return split_73 (x1, insn);
   31903              : 
   31904              :     case XOR:
   31905              :       return split_72 (x1, insn);
   31906              : 
   31907              :     default:
   31908              :       return NULL;
   31909              :     }
   31910              : }
   31911              : 
   31912              :  rtx_insn *
   31913              : peephole2_29 (rtx x1 ATTRIBUTE_UNUSED,
   31914              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31915              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31916              : {
   31917              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31918              :   rtx x2, x3, x4, x5, x6, x7;
   31919              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31920              :   x2 = XEXP (x1, 1);
   31921              :   x3 = XEXP (x2, 0);
   31922              :   switch (GET_CODE (x3))
   31923              :     {
   31924              :     case NE:
   31925              :     case EQ:
   31926              :     case GE:
   31927              :     case GT:
   31928              :     case LE:
   31929              :     case LT:
   31930              :     case LTGT:
   31931              :     case GEU:
   31932              :     case GTU:
   31933              :     case LEU:
   31934              :     case LTU:
   31935              :     case UNORDERED:
   31936              :     case ORDERED:
   31937              :     case UNEQ:
   31938              :     case UNGE:
   31939              :     case UNGT:
   31940              :     case UNLE:
   31941              :     case UNLT:
   31942              :       operands[1] = x3;
   31943              :       switch (pattern249 (x1))
   31944              :         {
   31945              :         case 0:
   31946              :           switch (GET_MODE (operands[0]))
   31947              :             {
   31948              :             case E_HImode:
   31949              :               if (pattern1214 (x2, 
   31950              : E_HImode) != 0
   31951              :                   || !
   31952              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31953              : (TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31954              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31955              :    && optimize_insn_for_speed_p ()))
   31956              :                 return NULL;
   31957              :               *pmatch_len_ = 0;
   31958              :               return gen_peephole2_220 (insn, operands);
   31959              : 
   31960              :             case E_SImode:
   31961              :               if (pattern1214 (x2, 
   31962              : E_SImode) != 0
   31963              :                   || !
   31964              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31965              : (TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31966              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31967              :    && optimize_insn_for_speed_p ()))
   31968              :                 return NULL;
   31969              :               *pmatch_len_ = 0;
   31970              :               return gen_peephole2_221 (insn, operands);
   31971              : 
   31972              :             case E_DImode:
   31973              :               if (pattern1214 (x2, 
   31974              : E_DImode) != 0
   31975              :                   || !(
   31976              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31977              : (TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31978              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31979              :    && optimize_insn_for_speed_p ()) && 
   31980              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31981              : (TARGET_64BIT)))
   31982              :                 return NULL;
   31983              :               *pmatch_len_ = 0;
   31984              :               return gen_peephole2_222 (insn, operands);
   31985              : 
   31986              :             case E_SFmode:
   31987              :               if (!general_reg_operand (operands[0], E_SFmode)
   31988              :                   || pattern1276 (x2, 
   31989              : E_SFmode) != 0
   31990              :                   || !
   31991              : #line 27853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31992              : ((SFmode != DFmode || TARGET_64BIT)
   31993              :    && TARGET_80387 && TARGET_CMOVE
   31994              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31995              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31996              :    && optimize_insn_for_speed_p ()))
   31997              :                 return NULL;
   31998              :               *pmatch_len_ = 0;
   31999              :               return gen_peephole2_230 (insn, operands);
   32000              : 
   32001              :             case E_DFmode:
   32002              :               if (!general_reg_operand (operands[0], E_DFmode)
   32003              :                   || pattern1276 (x2, 
   32004              : E_DFmode) != 0
   32005              :                   || !
   32006              : #line 27853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32007              : ((DFmode != DFmode || TARGET_64BIT)
   32008              :    && TARGET_80387 && TARGET_CMOVE
   32009              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   32010              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   32011              :    && optimize_insn_for_speed_p ()))
   32012              :                 return NULL;
   32013              :               *pmatch_len_ = 0;
   32014              :               return gen_peephole2_231 (insn, operands);
   32015              : 
   32016              :             default:
   32017              :               return NULL;
   32018              :             }
   32019              : 
   32020              :         case 1:
   32021              :           if (!register_operand (operands[0], E_DImode)
   32022              :               || GET_MODE (x2) != E_DImode
   32023              :               || !ix86_comparison_operator (operands[1], E_VOIDmode))
   32024              :             return NULL;
   32025              :           x4 = XEXP (x2, 1);
   32026              :           x5 = XEXP (x4, 0);
   32027              :           operands[2] = x5;
   32028              :           if (!nonimmediate_operand (operands[2], E_SImode))
   32029              :             return NULL;
   32030              :           x6 = XEXP (x2, 2);
   32031              :           x7 = XEXP (x6, 0);
   32032              :           operands[3] = x7;
   32033              :           if (!nonimmediate_operand (operands[3], E_SImode)
   32034              :               || !
   32035              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32036              : (TARGET_64BIT
   32037              :    && TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   32038              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   32039              :    && optimize_insn_for_speed_p ()))
   32040              :             return NULL;
   32041              :           *pmatch_len_ = 0;
   32042              :           return gen_peephole2_223 (insn, operands);
   32043              : 
   32044              :         default:
   32045              :           return NULL;
   32046              :         }
   32047              : 
   32048              :     default:
   32049              :       return NULL;
   32050              :     }
   32051              : }
   32052              : 
   32053              :  rtx_insn *
   32054              : peephole2_35 (rtx x1 ATTRIBUTE_UNUSED,
   32055              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   32056              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   32057              : {
   32058              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   32059              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   32060              :   rtx x10, x11, x12;
   32061              :   rtx_insn *res ATTRIBUTE_UNUSED;
   32062              :   if (peep2_current_count < 3)
   32063              :     return NULL;
   32064              :   x2 = XEXP (x1, 0);
   32065              :   operands[0] = x2;
   32066              :   if (!register_operand (operands[0], E_QImode))
   32067              :     return NULL;
   32068              :   x3 = PATTERN (peep2_next_insn (1));
   32069              :   if (pattern423 (x3, 
   32070              : UNSPEC_VOLATILE, 
   32071              : 3) != 0)
   32072              :     return NULL;
   32073              :   x4 = XVECEXP (x3, 0, 0);
   32074              :   x5 = XEXP (x4, 1);
   32075              :   if (XVECLEN (x5, 0) == 4
   32076              :       && XINT (x5, 1) == 109
   32077              :       && GET_MODE (x5) == E_QImode)
   32078              :     {
   32079              :       res = peephole2_34 (x1, insn, pmatch_len_);
   32080              :       if (res != NULL_RTX)
   32081              :         return res;
   32082              :     }
   32083              :   if (XVECLEN (x5, 0) != 2
   32084              :       || XINT (x5, 1) != 110
   32085              :       || GET_MODE (x5) != E_QImode)
   32086              :     return NULL;
   32087              :   x6 = XEXP (x1, 1);
   32088              :   operands[2] = x6;
   32089              :   if (!const_int_operand (operands[2], E_QImode))
   32090              :     return NULL;
   32091              :   x7 = XVECEXP (x3, 0, 1);
   32092              :   if (GET_CODE (x7) != SET)
   32093              :     return NULL;
   32094              :   x8 = XEXP (x7, 1);
   32095              :   if (GET_CODE (x8) != PLUS
   32096              :       || GET_MODE (x8) != E_QImode
   32097              :       || pattern1527 (x3) != 0
   32098              :       || !memory_operand (operands[1], E_QImode)
   32099              :       || pattern1723 (x3) != 0)
   32100              :     return NULL;
   32101              :   x9 = PATTERN (peep2_next_insn (2));
   32102              :   x10 = XEXP (x9, 1);
   32103              :   x11 = XEXP (x10, 1);
   32104              :   operands[3] = x11;
   32105              :   if (!const_int_operand (operands[3], E_QImode))
   32106              :     return NULL;
   32107              :   x12 = XEXP (x10, 0);
   32108              :   if (!rtx_equal_p (x12, operands[0])
   32109              :       || !
   32110              : #line 724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   32111              : (peep2_reg_dead_p (3, operands[0])
   32112              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   32113              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   32114              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   32115              :     return NULL;
   32116              :   *pmatch_len_ = 2;
   32117              :   return gen_peephole2_448 (insn, operands);
   32118              : }
   32119              : 
   32120              :  rtx_insn *
   32121              : peephole2_41 (rtx x1 ATTRIBUTE_UNUSED,
   32122              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   32123              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   32124              : {
   32125              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   32126              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   32127              :   rtx x10, x11, x12, x13, x14, x15, x16;
   32128              :   rtx_insn *res ATTRIBUTE_UNUSED;
   32129              :   if (peep2_current_count < 2)
   32130              :     return NULL;
   32131              :   x2 = XVECEXP (x1, 0, 1);
   32132              :   if (GET_CODE (x2) != CLOBBER)
   32133              :     return NULL;
   32134              :   x3 = XEXP (x2, 0);
   32135              :   if (GET_CODE (x3) != REG
   32136              :       || REGNO (x3) != 17)
   32137              :     return NULL;
   32138              :   x4 = XVECEXP (x1, 0, 0);
   32139              :   x5 = XEXP (x4, 0);
   32140              :   operands[0] = x5;
   32141              :   x6 = XEXP (x4, 1);
   32142              :   x7 = XEXP (x6, 0);
   32143              :   if (!rtx_equal_p (x7, operands[0]))
   32144              :     return NULL;
   32145              :   x8 = XEXP (x6, 1);
   32146              :   switch (GET_CODE (x8))
   32147              :     {
   32148              :     case REG:
   32149              :     case SUBREG:
   32150              :       operands[1] = x8;
   32151              :       if (!register_operand (operands[1], E_VOIDmode)
   32152              :           || GET_MODE (x3) != E_CCmode)
   32153              :         return NULL;
   32154              :       switch (GET_MODE (operands[0]))
   32155              :         {
   32156              :         case E_SImode:
   32157              :           switch (pattern1528 (x6, 
   32158              : E_SImode))
   32159              :             {
   32160              :             case 0:
   32161              :               x9 = PATTERN (peep2_next_insn (1));
   32162              :               x10 = XVECEXP (x9, 0, 0);
   32163              :               x11 = XEXP (x10, 0);
   32164              :               if (rtx_equal_p (x11, operands[0])
   32165              :                   && 
   32166              : #line 6594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32167              : (!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun)))
   32168              :                 {
   32169              :                   *pmatch_len_ = 1;
   32170              :                   res = gen_peephole2_66 (insn, operands);
   32171              :                   if (res != NULL_RTX)
   32172              :                     return res;
   32173              :                 }
   32174              :               operands[3] = x11;
   32175              :               if (!register_operand (operands[3], E_SImode)
   32176              :                   || !
   32177              : #line 6621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32178              : ((!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun))
   32179              :    && peep2_reg_dead_p (2, operands[0])))
   32180              :                 return NULL;
   32181              :               *pmatch_len_ = 1;
   32182              :               return gen_peephole2_70 (insn, operands);
   32183              : 
   32184              :             case 1:
   32185              :               x9 = PATTERN (peep2_next_insn (1));
   32186              :               x12 = XEXP (x9, 0);
   32187              :               if (rtx_equal_p (x12, operands[0])
   32188              :                   && 
   32189              : #line 6607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32190              : (!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun)))
   32191              :                 {
   32192              :                   *pmatch_len_ = 1;
   32193              :                   res = gen_peephole2_68 (insn, operands);
   32194              :                   if (res != NULL_RTX)
   32195              :                     return res;
   32196              :                 }
   32197              :               operands[3] = x12;
   32198              :               if (!register_operand (operands[3], E_SImode)
   32199              :                   || !
   32200              : #line 6635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32201              : ((!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun))
   32202              :    && peep2_reg_dead_p (2, operands[0])))
   32203              :                 return NULL;
   32204              :               *pmatch_len_ = 1;
   32205              :               return gen_peephole2_72 (insn, operands);
   32206              : 
   32207              :             default:
   32208              :               return NULL;
   32209              :             }
   32210              : 
   32211              :         case E_DImode:
   32212              :           switch (pattern1528 (x6, 
   32213              : E_DImode))
   32214              :             {
   32215              :             case 0:
   32216              :               x9 = PATTERN (peep2_next_insn (1));
   32217              :               x10 = XVECEXP (x9, 0, 0);
   32218              :               x11 = XEXP (x10, 0);
   32219              :               if (rtx_equal_p (x11, operands[0])
   32220              :                   && (
   32221              : #line 6594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32222              : (!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun)) && 
   32223              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32224              : (TARGET_64BIT)))
   32225              :                 {
   32226              :                   *pmatch_len_ = 1;
   32227              :                   res = gen_peephole2_67 (insn, operands);
   32228              :                   if (res != NULL_RTX)
   32229              :                     return res;
   32230              :                 }
   32231              :               operands[3] = x11;
   32232              :               if (!register_operand (operands[3], E_DImode)
   32233              :                   || !(
   32234              : #line 6621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32235              : ((!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun))
   32236              :    && peep2_reg_dead_p (2, operands[0])) && 
   32237              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32238              : (TARGET_64BIT)))
   32239              :                 return NULL;
   32240              :               *pmatch_len_ = 1;
   32241              :               return gen_peephole2_71 (insn, operands);
   32242              : 
   32243              :             case 1:
   32244              :               x9 = PATTERN (peep2_next_insn (1));
   32245              :               x12 = XEXP (x9, 0);
   32246              :               if (rtx_equal_p (x12, operands[0])
   32247              :                   && (
   32248              : #line 6607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32249              : (!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun)) && 
   32250              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32251              : (TARGET_64BIT)))
   32252              :                 {
   32253              :                   *pmatch_len_ = 1;
   32254              :                   res = gen_peephole2_69 (insn, operands);
   32255              :                   if (res != NULL_RTX)
   32256              :                     return res;
   32257              :                 }
   32258              :               operands[3] = x12;
   32259              :               if (!register_operand (operands[3], E_DImode)
   32260              :                   || !(
   32261              : #line 6635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32262              : ((!TARGET_AVOID_LEA_FOR_ADDR || optimize_function_for_size_p (cfun))
   32263              :    && peep2_reg_dead_p (2, operands[0])) && 
   32264              : #line 1202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32265              : (TARGET_64BIT)))
   32266              :                 return NULL;
   32267              :               *pmatch_len_ = 1;
   32268              :               return gen_peephole2_73 (insn, operands);
   32269              : 
   32270              :             default:
   32271              :               return NULL;
   32272              :             }
   32273              : 
   32274              :         default:
   32275              :           return NULL;
   32276              :         }
   32277              : 
   32278              :     case CONST_INT:
   32279              :       if (peep2_current_count < 3
   32280              :           || XWINT (x8, 0) != -1L)
   32281              :         return NULL;
   32282              :       x9 = PATTERN (peep2_next_insn (1));
   32283              :       if (pattern1272 (x9, 
   32284              : -1) != 0)
   32285              :         return NULL;
   32286              :       x13 = PATTERN (peep2_next_insn (2));
   32287              :       x14 = XEXP (x13, 1);
   32288              :       x15 = XEXP (x14, 0);
   32289              :       operands[1] = x15;
   32290              :       if (pattern1815 (x13) != 0)
   32291              :         return NULL;
   32292              :       x16 = XEXP (x14, 1);
   32293              :       operands[2] = x16;
   32294              :       switch (GET_MODE (operands[0]))
   32295              :         {
   32296              :         case E_QImode:
   32297              :           if (!general_reg_operand (operands[0], E_QImode)
   32298              :               || GET_MODE (x6) != E_QImode
   32299              :               || !
   32300              : #line 9069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32301              : (peep2_regno_dead_p (3, FLAGS_REG)))
   32302              :             return NULL;
   32303              :           *pmatch_len_ = 2;
   32304              :           return gen_peephole2_86 (insn, operands);
   32305              : 
   32306              :         case E_HImode:
   32307              :           if (!general_reg_operand (operands[0], E_HImode)
   32308              :               || GET_MODE (x6) != E_HImode
   32309              :               || !
   32310              : #line 9069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32311              : (peep2_regno_dead_p (3, FLAGS_REG)))
   32312              :             return NULL;
   32313              :           *pmatch_len_ = 2;
   32314              :           return gen_peephole2_87 (insn, operands);
   32315              : 
   32316              :         case E_SImode:
   32317              :           if (!general_reg_operand (operands[0], E_SImode)
   32318              :               || GET_MODE (x6) != E_SImode
   32319              :               || !
   32320              : #line 9069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32321              : (peep2_regno_dead_p (3, FLAGS_REG)))
   32322              :             return NULL;
   32323              :           *pmatch_len_ = 2;
   32324              :           return gen_peephole2_88 (insn, operands);
   32325              : 
   32326              :         case E_DImode:
   32327              :           if (!general_reg_operand (operands[0], E_DImode)
   32328              :               || GET_MODE (x6) != E_DImode
   32329              :               || !(
   32330              : #line 9069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32331              : (peep2_regno_dead_p (3, FLAGS_REG)) && 
   32332              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32333              : (TARGET_64BIT)))
   32334              :             return NULL;
   32335              :           *pmatch_len_ = 2;
   32336              :           return gen_peephole2_89 (insn, operands);
   32337              : 
   32338              :         default:
   32339              :           return NULL;
   32340              :         }
   32341              : 
   32342              :     default:
   32343              :       return NULL;
   32344              :     }
   32345              : }
   32346              : 
   32347              :  rtx_insn *
   32348              : peephole2_49 (rtx x1 ATTRIBUTE_UNUSED,
   32349              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   32350              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   32351              : {
   32352              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   32353              :   rtx x2, x3, x4, x5, x6, x7;
   32354              :   rtx_insn *res ATTRIBUTE_UNUSED;
   32355              :   x2 = XVECEXP (x1, 0, 0);
   32356              :   x3 = XEXP (x2, 1);
   32357              :   if (GET_CODE (x3) == PLUS)
   32358              :     {
   32359              :       res = peephole2_48 (x1, insn, pmatch_len_);
   32360              :       if (res != NULL_RTX)
   32361              :         return res;
   32362              :     }
   32363              :   x4 = XVECEXP (x1, 0, 1);
   32364              :   x5 = XEXP (x4, 0);
   32365              :   if (GET_CODE (x5) != REG
   32366              :       || REGNO (x5) != 17
   32367              :       || GET_MODE (x5) != E_CCmode)
   32368              :     return NULL;
   32369              :   operands[3] = x3;
   32370              :   switch (GET_MODE (operands[0]))
   32371              :     {
   32372              :     case E_QImode:
   32373              :       if (!arith_or_logical_operator (operands[3], E_QImode))
   32374              :         return NULL;
   32375              :       if (register_operand (operands[0], E_QImode))
   32376              :         {
   32377              :           x6 = XEXP (x3, 1);
   32378              :           operands[1] = x6;
   32379              :           if (memory_operand (operands[1], E_QImode))
   32380              :             {
   32381              :               x7 = XEXP (x3, 0);
   32382              :               if (rtx_equal_p (x7, operands[0])
   32383              :                   && 
   32384              : #line 29238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32385              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
   32386              :                 {
   32387              :                   *pmatch_len_ = 0;
   32388              :                   res = gen_peephole2_294 (insn, operands);
   32389              :                   if (res != NULL_RTX)
   32390              :                     return res;
   32391              :                 }
   32392              :             }
   32393              :           x7 = XEXP (x3, 0);
   32394              :           operands[1] = x7;
   32395              :           if (memory_operand (operands[1], E_QImode)
   32396              :               && rtx_equal_p (x6, operands[0])
   32397              :               && 
   32398              : #line 29251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32399              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
   32400              :             {
   32401              :               *pmatch_len_ = 0;
   32402              :               res = gen_peephole2_298 (insn, operands);
   32403              :               if (res != NULL_RTX)
   32404              :                 return res;
   32405              :             }
   32406              :         }
   32407              :       if (!memory_operand (operands[0], E_QImode))
   32408              :         return NULL;
   32409              :       x6 = XEXP (x3, 1);
   32410              :       operands[1] = x6;
   32411              :       if (nonmemory_operand (operands[1], E_QImode))
   32412              :         {
   32413              :           x7 = XEXP (x3, 0);
   32414              :           if (rtx_equal_p (x7, operands[0])
   32415              :               && 
   32416              : #line 29326 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32417              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   32418              :             {
   32419              :               *pmatch_len_ = 0;
   32420              :               res = gen_peephole2_308 (insn, operands);
   32421              :               if (res != NULL_RTX)
   32422              :                 return res;
   32423              :             }
   32424              :         }
   32425              :       x7 = XEXP (x3, 0);
   32426              :       operands[1] = x7;
   32427              :       if (!nonmemory_operand (operands[1], E_QImode)
   32428              :           || !rtx_equal_p (x6, operands[0])
   32429              :           || !
   32430              : #line 29340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32431              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   32432              :         return NULL;
   32433              :       *pmatch_len_ = 0;
   32434              :       return gen_peephole2_312 (insn, operands);
   32435              : 
   32436              :     case E_HImode:
   32437              :       if (!arith_or_logical_operator (operands[3], E_HImode))
   32438              :         return NULL;
   32439              :       if (register_operand (operands[0], E_HImode))
   32440              :         {
   32441              :           x6 = XEXP (x3, 1);
   32442              :           operands[1] = x6;
   32443              :           if (memory_operand (operands[1], E_HImode))
   32444              :             {
   32445              :               x7 = XEXP (x3, 0);
   32446              :               if (rtx_equal_p (x7, operands[0])
   32447              :                   && 
   32448              : #line 29238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32449              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
   32450              :                 {
   32451              :                   *pmatch_len_ = 0;
   32452              :                   res = gen_peephole2_295 (insn, operands);
   32453              :                   if (res != NULL_RTX)
   32454              :                     return res;
   32455              :                 }
   32456              :             }
   32457              :           x7 = XEXP (x3, 0);
   32458              :           operands[1] = x7;
   32459              :           if (memory_operand (operands[1], E_HImode)
   32460              :               && rtx_equal_p (x6, operands[0])
   32461              :               && 
   32462              : #line 29251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32463              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
   32464              :             {
   32465              :               *pmatch_len_ = 0;
   32466              :               res = gen_peephole2_299 (insn, operands);
   32467              :               if (res != NULL_RTX)
   32468              :                 return res;
   32469              :             }
   32470              :         }
   32471              :       if (!memory_operand (operands[0], E_HImode))
   32472              :         return NULL;
   32473              :       x6 = XEXP (x3, 1);
   32474              :       operands[1] = x6;
   32475              :       if (nonmemory_operand (operands[1], E_HImode))
   32476              :         {
   32477              :           x7 = XEXP (x3, 0);
   32478              :           if (rtx_equal_p (x7, operands[0])
   32479              :               && 
   32480              : #line 29326 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32481              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   32482              :             {
   32483              :               *pmatch_len_ = 0;
   32484              :               res = gen_peephole2_309 (insn, operands);
   32485              :               if (res != NULL_RTX)
   32486              :                 return res;
   32487              :             }
   32488              :         }
   32489              :       x7 = XEXP (x3, 0);
   32490              :       operands[1] = x7;
   32491              :       if (!nonmemory_operand (operands[1], E_HImode)
   32492              :           || !rtx_equal_p (x6, operands[0])
   32493              :           || !
   32494              : #line 29340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32495              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   32496              :         return NULL;
   32497              :       *pmatch_len_ = 0;
   32498              :       return gen_peephole2_313 (insn, operands);
   32499              : 
   32500              :     case E_SImode:
   32501              :       if (!arith_or_logical_operator (operands[3], E_SImode))
   32502              :         return NULL;
   32503              :       if (register_operand (operands[0], E_SImode))
   32504              :         {
   32505              :           x6 = XEXP (x3, 1);
   32506              :           operands[1] = x6;
   32507              :           if (memory_operand (operands[1], E_SImode))
   32508              :             {
   32509              :               x7 = XEXP (x3, 0);
   32510              :               if (rtx_equal_p (x7, operands[0])
   32511              :                   && 
   32512              : #line 29238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32513              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
   32514              :                 {
   32515              :                   *pmatch_len_ = 0;
   32516              :                   res = gen_peephole2_296 (insn, operands);
   32517              :                   if (res != NULL_RTX)
   32518              :                     return res;
   32519              :                 }
   32520              :             }
   32521              :           x7 = XEXP (x3, 0);
   32522              :           operands[1] = x7;
   32523              :           if (memory_operand (operands[1], E_SImode)
   32524              :               && rtx_equal_p (x6, operands[0])
   32525              :               && 
   32526              : #line 29251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32527              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
   32528              :             {
   32529              :               *pmatch_len_ = 0;
   32530              :               res = gen_peephole2_300 (insn, operands);
   32531              :               if (res != NULL_RTX)
   32532              :                 return res;
   32533              :             }
   32534              :         }
   32535              :       if (!memory_operand (operands[0], E_SImode))
   32536              :         return NULL;
   32537              :       x6 = XEXP (x3, 1);
   32538              :       operands[1] = x6;
   32539              :       if (x86_64_nonmemory_operand (operands[1], E_SImode))
   32540              :         {
   32541              :           x7 = XEXP (x3, 0);
   32542              :           if (rtx_equal_p (x7, operands[0])
   32543              :               && 
   32544              : #line 29326 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32545              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   32546              :             {
   32547              :               *pmatch_len_ = 0;
   32548              :               res = gen_peephole2_310 (insn, operands);
   32549              :               if (res != NULL_RTX)
   32550              :                 return res;
   32551              :             }
   32552              :         }
   32553              :       x7 = XEXP (x3, 0);
   32554              :       operands[1] = x7;
   32555              :       if (!x86_64_nonmemory_operand (operands[1], E_SImode)
   32556              :           || !rtx_equal_p (x6, operands[0])
   32557              :           || !
   32558              : #line 29340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32559              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   32560              :         return NULL;
   32561              :       *pmatch_len_ = 0;
   32562              :       return gen_peephole2_314 (insn, operands);
   32563              : 
   32564              :     case E_DImode:
   32565              :       if (!arith_or_logical_operator (operands[3], E_DImode))
   32566              :         return NULL;
   32567              :       if (register_operand (operands[0], E_DImode))
   32568              :         {
   32569              :           x6 = XEXP (x3, 1);
   32570              :           operands[1] = x6;
   32571              :           if (memory_operand (operands[1], E_DImode))
   32572              :             {
   32573              :               x7 = XEXP (x3, 0);
   32574              :               if (rtx_equal_p (x7, operands[0])
   32575              :                   && (
   32576              : #line 29238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32577              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())) && 
   32578              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32579              : (TARGET_64BIT)))
   32580              :                 {
   32581              :                   *pmatch_len_ = 0;
   32582              :                   res = gen_peephole2_297 (insn, operands);
   32583              :                   if (res != NULL_RTX)
   32584              :                     return res;
   32585              :                 }
   32586              :             }
   32587              :           x7 = XEXP (x3, 0);
   32588              :           operands[1] = x7;
   32589              :           if (memory_operand (operands[1], E_DImode)
   32590              :               && rtx_equal_p (x6, operands[0])
   32591              :               && (
   32592              : #line 29251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32593              : (!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())) && 
   32594              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32595              : (TARGET_64BIT)))
   32596              :             {
   32597              :               *pmatch_len_ = 0;
   32598              :               res = gen_peephole2_301 (insn, operands);
   32599              :               if (res != NULL_RTX)
   32600              :                 return res;
   32601              :             }
   32602              :         }
   32603              :       if (!memory_operand (operands[0], E_DImode))
   32604              :         return NULL;
   32605              :       x6 = XEXP (x3, 1);
   32606              :       operands[1] = x6;
   32607              :       if (x86_64_nonmemory_operand (operands[1], E_DImode))
   32608              :         {
   32609              :           x7 = XEXP (x3, 0);
   32610              :           if (rtx_equal_p (x7, operands[0])
   32611              :               && (
   32612              : #line 29326 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32613              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())) && 
   32614              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32615              : (TARGET_64BIT)))
   32616              :             {
   32617              :               *pmatch_len_ = 0;
   32618              :               res = gen_peephole2_311 (insn, operands);
   32619              :               if (res != NULL_RTX)
   32620              :                 return res;
   32621              :             }
   32622              :         }
   32623              :       x7 = XEXP (x3, 0);
   32624              :       operands[1] = x7;
   32625              :       if (!x86_64_nonmemory_operand (operands[1], E_DImode)
   32626              :           || !rtx_equal_p (x6, operands[0])
   32627              :           || !(
   32628              : #line 29340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32629              : (!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())) && 
   32630              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32631              : (TARGET_64BIT)))
   32632              :         return NULL;
   32633              :       *pmatch_len_ = 0;
   32634              :       return gen_peephole2_315 (insn, operands);
   32635              : 
   32636              :     default:
   32637              :       return NULL;
   32638              :     }
   32639              : }
        

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.