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: 90.3 % 3855 3481
Test Date: 2026-02-28 14:20:25 Functions: 94.5 % 199 188
Legend: Lines:     hit not hit

            Line data    Source code
       1              : /* Generated automatically by the program `genrecog' from the target
       2              :    machine description file.  */
       3              : 
       4              : #define IN_TARGET_CODE 1
       5              : 
       6              : #include "config.h"
       7              : #include "system.h"
       8              : #include "coretypes.h"
       9              : #include "backend.h"
      10              : #include "predict.h"
      11              : #include "rtl.h"
      12              : #include "memmodel.h"
      13              : #include "tm_p.h"
      14              : #include "emit-rtl.h"
      15              : #include "insn-config.h"
      16              : #include "recog.h"
      17              : #include "output.h"
      18              : #include "flags.h"
      19              : #include "df.h"
      20              : #include "resource.h"
      21              : #include "diagnostic-core.h"
      22              : #include "reload.h"
      23              : #include "regs.h"
      24              : #include "tm-constrs.h"
      25              : #include "insn-recog.h"
      26              : 
      27              : 
      28              : /* `recog' contains a decision tree that recognizes whether the rtx
      29              :    X0 is a valid instruction.
      30              : 
      31              :    recog returns -1 if the rtx is not valid.  If the rtx is valid, recog
      32              :    returns a nonnegative number which is the insn code number for the
      33              :    pattern that matched.  This is the same as the order in the machine
      34              :    description of the entry that matched.  This number can be used as an
      35              :    index into `insn_data' and other tables.
      36              :    The third parameter to recog is an optional pointer to an int.  If
      37              :    present, recog will accept a pattern if it matches except for missing
      38              :    CLOBBER expressions at the end.  In that case, the value pointed to by
      39              :    the optional pointer will be set to the number of CLOBBERs that need
      40              :    to be added (it should be initialized to zero by the caller).  If it   is set nonzero, the caller should allocate a PARALLEL of the
      41              :    appropriate size, copy the initial entries, and call add_clobbers
      42              :    (found in insn-emit.cc) to fill in the CLOBBERs.
      43              : 
      44              :    The function split_insns returns 0 if the rtl could not
      45              :    be split or the split rtl as an INSN list if it can be.
      46              : 
      47              :    The function peephole2_insns returns 0 if the rtl could not
      48              :    be matched. If there was a match, the new rtl is returned in an INSN list,
      49              :    and LAST_INSN will point to the last recognized insn in the old sequence.
      50              : */
      51              : 
      52              : 
      53              : 
      54              : 
      55              : int
      56        39193 : pattern2 (rtx x1, int *pnum_clobbers)
      57              : {
      58        39193 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59        39193 :   rtx x2, x3, x4, x5, x6, x7;
      60        39193 :   int res ATTRIBUTE_UNUSED;
      61        39193 :   x2 = XEXP (x1, 1);
      62        39193 :   x3 = XEXP (x2, 0);
      63        39193 :   operands[1] = x3;
      64        39193 :   x4 = XEXP (x2, 1);
      65        39193 :   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           48 :     case PLUS:
      80           48 :       if (pnum_clobbers == NULL
      81           48 :           || GET_MODE (x4) != E_QImode)
      82              :         return -1;
      83           48 :       x5 = XEXP (x1, 0);
      84           48 :       operands[0] = x5;
      85           48 :       x6 = XEXP (x4, 0);
      86           48 :       operands[2] = x6;
      87           48 :       if (!nonimmediate_operand (operands[2], E_QImode))
      88              :         return -1;
      89           48 :       res = pattern1 (x2);
      90           48 :       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       139112 : pattern34 (rtx x1)
     147              : {
     148       139112 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     149       139112 :   rtx x2, x3, x4, x5;
     150       139112 :   int res ATTRIBUTE_UNUSED;
     151       139112 :   x2 = XEXP (x1, 0);
     152       139112 :   operands[0] = x2;
     153       139112 :   x3 = XEXP (x1, 1);
     154       139112 :   x4 = XEXP (x3, 0);
     155       139112 :   operands[1] = x4;
     156       139112 :   x5 = XEXP (x3, 1);
     157       139112 :   operands[2] = x5;
     158       139112 :   switch (GET_MODE (operands[0]))
     159              :     {
     160          437 :     case E_V32QImode:
     161          437 :       return pattern3 (x3, 
     162          437 : E_V32QImode); /* [-1, 0] */
     163              : 
     164          821 :     case E_V16HImode:
     165          821 :       if (pattern3 (x3, 
     166              : E_V16HImode) != 0)
     167              :         return -1;
     168              :       return 1;
     169              : 
     170          858 :     case E_V8SImode:
     171          858 :       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         2337 :     case E_V4SImode:
     183         2337 :       if (!register_operand (operands[0], E_V4SImode)
     184         2337 :           || 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        10056 :     case E_V16QImode:
     213        10056 :       if (!register_operand (operands[0], E_V16QImode)
     214        10056 :           || 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         5435 :     case E_V8HImode:
     225         5435 :       if (!register_operand (operands[0], E_V8HImode)
     226         5435 :           || GET_MODE (x3) != E_V8HImode)
     227              :         return -1;
     228              :       return 11;
     229              : 
     230              :     default:
     231              :       return -1;
     232              :     }
     233              : }
     234              : 
     235              : int
     236       178120 : pattern43 (rtx x1, machine_mode i1, machine_mode i2)
     237              : {
     238       178120 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     239       178120 :   rtx x2, x3, x4;
     240       178120 :   int res ATTRIBUTE_UNUSED;
     241       178120 :   if (!register_operand (operands[0], i2)
     242       178120 :       || GET_MODE (x1) != i2)
     243              :     return -1;
     244       177875 :   x2 = XEXP (x1, 0);
     245       177875 :   x3 = XEXP (x2, 0);
     246       177875 :   operands[1] = x3;
     247       177875 :   if (!nonimmediate_operand (operands[1], i1))
     248              :     return -1;
     249       141086 :   x4 = XEXP (x1, 1);
     250       141086 :   operands[2] = x4;
     251       141086 :   if (!const_int_operand (operands[2], E_QImode))
     252              :     return -1;
     253              :   return 0;
     254              : }
     255              : 
     256              : int
     257       256274 : pattern49 (rtx x1)
     258              : {
     259       256274 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     260       256274 :   int res ATTRIBUTE_UNUSED;
     261       256274 :   switch (GET_MODE (x1))
     262              :     {
     263        82131 :     case E_QImode:
     264        82131 :       if (!nonimmediate_operand (operands[1], E_QImode)
     265        82131 :           || !general_operand (operands[2], E_QImode))
     266        50090 :         return -1;
     267              :       return 0;
     268              : 
     269         1365 :     case E_HImode:
     270         1365 :       if (!nonimmediate_operand (operands[1], E_HImode)
     271         1365 :           || !general_operand (operands[2], E_HImode))
     272          457 :         return -1;
     273              :       return 1;
     274              : 
     275        79958 :     case E_SImode:
     276        79958 :       if (!nonimmediate_operand (operands[1], E_SImode)
     277        79958 :           || !x86_64_general_operand (operands[2], E_SImode))
     278        41366 :         return -1;
     279              :       return 2;
     280              : 
     281        88510 :     case E_DImode:
     282        88510 :       if (!nonimmediate_operand (operands[1], E_DImode)
     283        88510 :           || !x86_64_general_operand (operands[2], E_DImode))
     284        48335 :         return -1;
     285              :       return 3;
     286              : 
     287              :     default:
     288              :       return -1;
     289              :     }
     290              : }
     291              : 
     292              : int
     293         2497 : pattern58 (rtx x1, machine_mode i1)
     294              : {
     295         2497 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     296         2497 :   rtx x2, x3, x4;
     297         2497 :   int res ATTRIBUTE_UNUSED;
     298         2497 :   x2 = XEXP (x1, 1);
     299         2497 :   if (GET_MODE (x2) != E_CCmode)
     300              :     return -1;
     301         2497 :   x3 = XEXP (x1, 0);
     302         2497 :   if (GET_CODE (x3) != REG
     303         2497 :       || REGNO (x3) != 17
     304         4992 :       || GET_MODE (x3) != E_CCmode)
     305              :     return -1;
     306         2495 :   x4 = XVECEXP (x2, 0, 0);
     307         2495 :   operands[0] = x4;
     308         2495 :   if (!register_operand (operands[0], i1))
     309              :     return -1;
     310              :   return 0;
     311              : }
     312              : 
     313              : int
     314          565 : pattern62 (rtx x1, int *pnum_clobbers, machine_mode i1)
     315              : {
     316          565 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     317          565 :   rtx x2, x3, x4;
     318          565 :   int res ATTRIBUTE_UNUSED;
     319          565 :   if (pnum_clobbers == NULL)
     320              :     return -1;
     321          565 :   x2 = XEXP (x1, 1);
     322          565 :   if (GET_MODE (x2) != i1)
     323              :     return -1;
     324          565 :   x3 = XEXP (x1, 0);
     325          565 :   operands[0] = x3;
     326          565 :   if (!register_operand (operands[0], i1))
     327              :     return -1;
     328          548 :   x4 = XVECEXP (x2, 0, 0);
     329          548 :   operands[1] = x4;
     330          548 :   if (!register_operand (operands[1], i1))
     331              :     return -1;
     332              :   return 0;
     333              : }
     334              : 
     335              : int
     336        47346 : pattern66 (rtx x1, machine_mode i1)
     337              : {
     338        47346 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     339        47346 :   rtx x2, x3, x4, x5;
     340        47346 :   int res ATTRIBUTE_UNUSED;
     341        47346 :   x2 = XEXP (x1, 1);
     342        47346 :   if (GET_MODE (x2) != i1)
     343              :     return -1;
     344        47293 :   x3 = XEXP (x1, 0);
     345        47293 :   operands[0] = x3;
     346        47293 :   if (!register_operand (operands[0], i1))
     347              :     return -1;
     348        47179 :   x4 = XVECEXP (x2, 0, 0);
     349        47179 :   operands[1] = x4;
     350        47179 :   if (!register_operand (operands[1], i1))
     351              :     return -1;
     352        30293 :   x5 = XVECEXP (x2, 0, 1);
     353        30293 :   operands[2] = x5;
     354        30293 :   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       673918 : pattern80 (rtx x1, machine_mode i1)
     379              : {
     380       673918 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     381       673918 :   int res ATTRIBUTE_UNUSED;
     382       673918 :   if (!nonimmediate_operand (operands[0], i1)
     383       669159 :       || GET_MODE (x1) != i1
     384       669159 :       || !nonimmediate_operand (operands[1], i1)
     385      1243317 :       || !general_operand (operands[2], i1))
     386       108280 :     return -1;
     387              :   return 0;
     388              : }
     389              : 
     390              : int
     391        10673 : pattern85 (rtx x1)
     392              : {
     393        10673 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     394        10673 :   rtx x2, x3, x4;
     395        10673 :   int res ATTRIBUTE_UNUSED;
     396        10673 :   x2 = XEXP (x1, 0);
     397        10673 :   if (GET_MODE (x2) != E_QImode
     398         6965 :       || !register_operand (operands[0], E_HImode)
     399        11077 :       || GET_MODE (x1) != E_HImode)
     400        10269 :     return -1;
     401          404 :   x3 = XEXP (x2, 0);
     402          404 :   operands[1] = x3;
     403          404 :   if (!nonimmediate_operand (operands[1], E_QImode))
     404              :     return -1;
     405          255 :   x4 = XEXP (x2, 1);
     406          255 :   operands[2] = x4;
     407          255 :   if (!x86_64_general_operand (operands[2], E_QImode))
     408              :     return -1;
     409              :   return 0;
     410              : }
     411              : 
     412              : int
     413        11013 : pattern92 (rtx x1, machine_mode i1, machine_mode i2)
     414              : {
     415        11013 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     416        11013 :   int res ATTRIBUTE_UNUSED;
     417        11013 :   if (!register_operand (operands[0], i1)
     418        11013 :       || GET_MODE (x1) != i1)
     419              :     return -1;
     420        11007 :   return pattern91 (x1, 
     421              : i1, 
     422        11007 : i2); /* [-1, 1] */
     423              : }
     424              : 
     425              : int
     426       256380 : pattern97 (rtx x1)
     427              : {
     428       256380 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     429       256380 :   rtx x2, x3, x4, x5, x6, x7, x8;
     430       256380 :   int res ATTRIBUTE_UNUSED;
     431       256380 :   x2 = XEXP (x1, 1);
     432       256380 :   x3 = XEXP (x2, 0);
     433       256380 :   x4 = XEXP (x3, 1);
     434       256380 :   if (GET_CODE (x4) != PARALLEL)
     435              :     return -1;
     436       256380 :   x5 = XEXP (x2, 1);
     437       256380 :   if (GET_CODE (x5) != VEC_SELECT)
     438              :     return -1;
     439        15083 :   x6 = XEXP (x5, 1);
     440        15083 :   if (GET_CODE (x6) != PARALLEL)
     441              :     return -1;
     442        15083 :   x7 = XEXP (x1, 0);
     443        15083 :   operands[0] = x7;
     444        15083 :   x8 = XEXP (x3, 0);
     445        15083 :   switch (GET_CODE (x8))
     446              :     {
     447              :     case REG:
     448              :     case SUBREG:
     449              :     case MEM:
     450              :       return 0;
     451              : 
     452         2365 :     case VEC_CONCAT:
     453         2365 :       return 1;
     454              : 
     455              :     default:
     456              :       return -1;
     457              :     }
     458              : }
     459              : 
     460              : int
     461       122859 : pattern102 (rtx x1, machine_mode i1, machine_mode i2)
     462              : {
     463       122859 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     464       122859 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     465       122859 :   rtx x10, x11, x12, x13, x14;
     466       122859 :   int res ATTRIBUTE_UNUSED;
     467       122859 :   x2 = XEXP (x1, 0);
     468       122859 :   if (GET_MODE (x2) != i2)
     469              :     return -1;
     470         1243 :   x3 = XEXP (x2, 0);
     471         1243 :   if (GET_CODE (x3) != VEC_SELECT
     472          323 :       || GET_MODE (x3) != i2)
     473              :     return -1;
     474          323 :   x4 = XEXP (x3, 1);
     475          323 :   if (GET_CODE (x4) != PARALLEL
     476          323 :       || XVECLEN (x4, 0) != 1)
     477              :     return -1;
     478          323 :   x5 = XEXP (x2, 1);
     479          323 :   if (GET_CODE (x5) != VEC_SELECT
     480          194 :       || GET_MODE (x5) != i2)
     481              :     return -1;
     482          194 :   x6 = XEXP (x5, 1);
     483          194 :   if (GET_CODE (x6) != PARALLEL
     484          194 :       || XVECLEN (x6, 0) != 1)
     485              :     return -1;
     486          194 :   x7 = XEXP (x1, 1);
     487          194 :   if (GET_CODE (x7) != PLUS
     488          190 :       || GET_MODE (x7) != i2)
     489              :     return -1;
     490          190 :   x8 = XEXP (x7, 0);
     491          190 :   if (GET_CODE (x8) != VEC_SELECT
     492          190 :       || GET_MODE (x8) != i2)
     493              :     return -1;
     494          190 :   x9 = XEXP (x8, 1);
     495          190 :   if (GET_CODE (x9) != PARALLEL
     496          190 :       || XVECLEN (x9, 0) != 1)
     497              :     return -1;
     498          190 :   x10 = XEXP (x7, 1);
     499          190 :   if (GET_CODE (x10) != VEC_SELECT
     500          190 :       || GET_MODE (x10) != i2)
     501              :     return -1;
     502          190 :   x11 = XEXP (x10, 1);
     503          190 :   if (GET_CODE (x11) != PARALLEL
     504          190 :       || XVECLEN (x11, 0) != 1
     505          190 :       || !register_operand (operands[0], i1)
     506          380 :       || GET_MODE (x1) != i1)
     507            0 :     return -1;
     508          190 :   x12 = XEXP (x3, 0);
     509          190 :   operands[1] = x12;
     510          190 :   if (!register_operand (operands[1], i1))
     511              :     return -1;
     512          173 :   x13 = XVECEXP (x4, 0, 0);
     513          173 :   operands[3] = x13;
     514          173 :   if (!const_0_to_1_operand (operands[3], E_SImode))
     515              :     return -1;
     516          173 :   x14 = XVECEXP (x6, 0, 0);
     517          173 :   operands[4] = x14;
     518          173 :   if (!const_0_to_1_operand (operands[4], E_SImode))
     519              :     return -1;
     520              :   return 0;
     521              : }
     522              : 
     523              : int
     524      1467898 : pattern124 (rtx x1, int *pnum_clobbers)
     525              : {
     526      1467898 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     527      1467898 :   rtx x2, x3;
     528      1467898 :   int res ATTRIBUTE_UNUSED;
     529      1467898 :   x2 = XEXP (x1, 0);
     530      1467898 :   operands[1] = x2;
     531      1467898 :   x3 = XEXP (x1, 1);
     532      1467898 :   switch (GET_CODE (x3))
     533              :     {
     534              :     case CONST_INT:
     535              :     case CONST_WIDE_INT:
     536              :     case CONST_POLY_INT:
     537              :     case CONST_FIXED:
     538              :     case CONST_DOUBLE:
     539              :     case CONST_VECTOR:
     540              :     case CONST:
     541              :     case REG:
     542              :     case SUBREG:
     543              :     case LABEL_REF:
     544              :     case SYMBOL_REF:
     545              :     case HIGH:
     546              :       return 0;
     547              : 
     548         2444 :     case AND:
     549         2444 :       if (pnum_clobbers == NULL
     550         2444 :           || GET_MODE (x3) != E_QImode)
     551              :         return -1;
     552         2199 :       res = pattern122 (x1);
     553         2199 :       if (res >= 0)
     554         1148 :         return res + 1; /* [1, 2] */
     555              :       return -1;
     556              : 
     557        16559 :     case PLUS:
     558        16559 :       res = pattern17 (x1, pnum_clobbers);
     559        16559 :       if (res >= 0)
     560        12194 :         return res + 3; /* [3, 4] */
     561              :       return -1;
     562              : 
     563         8037 :     case MINUS:
     564         8037 :       if (pnum_clobbers == NULL
     565         8037 :           || GET_MODE (x3) != E_QImode)
     566              :         return -1;
     567         7974 :       res = pattern123 (x1);
     568         7974 :       if (res >= 0)
     569         1007 :         return res + 5; /* [5, 6] */
     570              :       return -1;
     571              : 
     572              :     default:
     573              :       return -1;
     574              :     }
     575              : }
     576              : 
     577              : int
     578         6217 : pattern140 (rtx x1)
     579              : {
     580         6217 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     581         6217 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     582         6217 :   int res ATTRIBUTE_UNUSED;
     583         6217 :   x2 = XEXP (x1, 1);
     584         6217 :   operands[2] = x2;
     585         6217 :   x3 = XEXP (x1, 2);
     586         6217 :   operands[3] = x3;
     587         6217 :   x4 = XEXP (x1, 0);
     588         6217 :   x5 = XEXP (x4, 0);
     589         6217 :   switch (GET_CODE (x5))
     590              :     {
     591         5818 :     case REG:
     592         5818 :     case SUBREG:
     593         5818 :     case MEM:
     594         5818 :       operands[1] = x5;
     595         5818 :       switch (GET_MODE (operands[0]))
     596              :         {
     597              :         case E_V8HFmode:
     598              :           return 0;
     599              : 
     600          654 :         case E_V16HFmode:
     601          654 :           return 1;
     602              : 
     603          198 :         case E_V32HFmode:
     604          198 :           return 2;
     605              : 
     606          208 :         case E_V16SFmode:
     607          208 :           return 3;
     608              : 
     609          706 :         case E_V8SFmode:
     610          706 :           return 4;
     611              : 
     612          825 :         case E_V4SFmode:
     613          825 :           return 5;
     614              : 
     615          710 :         case E_V8DFmode:
     616          710 :           return 6;
     617              : 
     618          979 :         case E_V4DFmode:
     619          979 :           return 7;
     620              : 
     621          434 :         case E_V2DFmode:
     622          434 :           return 8;
     623              : 
     624              :         default:
     625              :           return -1;
     626              :         }
     627              : 
     628          381 :     case VEC_SELECT:
     629          381 :       if (GET_MODE (x5) != E_V2SImode)
     630              :         return -1;
     631          380 :       x6 = XEXP (x5, 1);
     632          380 :       if (GET_CODE (x6) != PARALLEL
     633          380 :           || XVECLEN (x6, 0) != 2)
     634              :         return -1;
     635          380 :       x7 = XVECEXP (x6, 0, 0);
     636          380 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     637              :         return -1;
     638          380 :       x8 = XVECEXP (x6, 0, 1);
     639          380 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
     640          380 :           || !register_operand (operands[0], E_V2DFmode)
     641          370 :           || GET_MODE (x1) != E_V2DFmode
     642          750 :           || GET_MODE (x4) != E_V2DFmode)
     643           10 :         return -1;
     644          370 :       x9 = XEXP (x5, 0);
     645          370 :       operands[1] = x9;
     646          370 :       if (!nonimmediate_operand (operands[1], E_V4SImode)
     647          370 :           || !nonimm_or_0_operand (operands[2], E_V2DFmode)
     648          740 :           || !register_operand (operands[3], E_QImode))
     649            8 :         return -1;
     650              :       return 9;
     651              : 
     652              :     default:
     653              :       return -1;
     654              :     }
     655              : }
     656              : 
     657              : int
     658         8729 : pattern157 (rtx x1)
     659              : {
     660         8729 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     661         8729 :   rtx x2, x3, x4, x5, x6;
     662         8729 :   int res ATTRIBUTE_UNUSED;
     663         8729 :   x2 = XEXP (x1, 1);
     664         8729 :   operands[2] = x2;
     665         8729 :   x3 = XEXP (x1, 2);
     666         8729 :   operands[3] = x3;
     667         8729 :   x4 = XEXP (x1, 0);
     668         8729 :   x5 = XEXP (x4, 0);
     669         8729 :   switch (GET_CODE (x5))
     670              :     {
     671         4105 :     case REG:
     672         4105 :     case SUBREG:
     673         4105 :     case MEM:
     674         4105 :       operands[1] = x5;
     675         4105 :       switch (GET_MODE (operands[0]))
     676              :         {
     677          488 :         case E_V16HImode:
     678          488 :           return pattern155 (x1, 
     679              : E_V16HImode, 
     680              : E_V16QImode, 
     681          488 : E_HImode); /* [-1, 0] */
     682              : 
     683          566 :         case E_V32HImode:
     684          566 :           if (pattern155 (x1, 
     685              : E_V32HImode, 
     686              : E_V32QImode, 
     687              : E_SImode) != 0)
     688              :             return -1;
     689              :           return 1;
     690              : 
     691            9 :         case E_V8HImode:
     692            9 :           if (pattern156 (x1, 
     693              : E_V8HImode, 
     694              : E_V8QImode) != 0)
     695              :             return -1;
     696              :           return 2;
     697              : 
     698         1016 :         case E_V16SImode:
     699         1016 :           if (!register_operand (operands[0], E_V16SImode)
     700          976 :               || GET_MODE (x1) != E_V16SImode
     701          976 :               || GET_MODE (x4) != E_V16SImode
     702          976 :               || !nonimm_or_0_operand (operands[2], E_V16SImode)
     703         1960 :               || !register_operand (operands[3], E_HImode))
     704          145 :             return -1;
     705          871 :           switch (GET_MODE (operands[1]))
     706              :             {
     707          382 :             case E_V16QImode:
     708          382 :               if (!nonimmediate_operand (operands[1], E_V16QImode))
     709              :                 return -1;
     710              :               return 3;
     711              : 
     712          489 :             case E_V16HImode:
     713          489 :               if (!nonimmediate_operand (operands[1], E_V16HImode))
     714              :                 return -1;
     715              :               return 4;
     716              : 
     717              :             default:
     718              :               return -1;
     719              :             }
     720              : 
     721          504 :         case E_V8SImode:
     722          504 :           if (!register_operand (operands[0], E_V8SImode)
     723          479 :               || GET_MODE (x1) != E_V8SImode
     724          479 :               || GET_MODE (x4) != E_V8SImode
     725          479 :               || !nonimm_or_0_operand (operands[2], E_V8SImode)
     726          971 :               || !register_operand (operands[3], E_QImode))
     727           80 :             return -1;
     728          424 :           switch (GET_MODE (operands[1]))
     729              :             {
     730            9 :             case E_V8QImode:
     731            9 :               if (!memory_operand (operands[1], E_V8QImode))
     732              :                 return -1;
     733              :               return 5;
     734              : 
     735          415 :             case E_V8HImode:
     736          415 :               if (!nonimmediate_operand (operands[1], E_V8HImode))
     737              :                 return -1;
     738              :               return 6;
     739              : 
     740              :             default:
     741              :               return -1;
     742              :             }
     743              : 
     744           18 :         case E_V4SImode:
     745           18 :           if (!register_operand (operands[0], E_V4SImode)
     746           12 :               || GET_MODE (x1) != E_V4SImode
     747           12 :               || GET_MODE (x4) != E_V4SImode
     748           12 :               || !nonimm_or_0_operand (operands[2], E_V4SImode)
     749           30 :               || !register_operand (operands[3], E_QImode))
     750            6 :             return -1;
     751           12 :           switch (GET_MODE (operands[1]))
     752              :             {
     753            6 :             case E_V4QImode:
     754            6 :               if (!memory_operand (operands[1], E_V4QImode))
     755              :                 return -1;
     756              :               return 7;
     757              : 
     758            6 :             case E_V4HImode:
     759            6 :               if (!memory_operand (operands[1], E_V4HImode))
     760              :                 return -1;
     761              :               return 8;
     762              : 
     763              :             default:
     764              :               return -1;
     765              :             }
     766              : 
     767         1002 :         case E_V8DImode:
     768         1002 :           if (!register_operand (operands[0], E_V8DImode)
     769          927 :               || GET_MODE (x1) != E_V8DImode
     770          927 :               || GET_MODE (x4) != E_V8DImode
     771          927 :               || !nonimm_or_0_operand (operands[2], E_V8DImode)
     772         1893 :               || !register_operand (operands[3], E_QImode))
     773          193 :             return -1;
     774          809 :           switch (GET_MODE (operands[1]))
     775              :             {
     776            9 :             case E_V8QImode:
     777            9 :               if (!memory_operand (operands[1], E_V8QImode))
     778              :                 return -1;
     779              :               return 9;
     780              : 
     781          400 :             case E_V8HImode:
     782          400 :               if (!nonimmediate_operand (operands[1], E_V8HImode))
     783              :                 return -1;
     784              :               return 10;
     785              : 
     786          400 :             case E_V8SImode:
     787          400 :               if (!nonimmediate_operand (operands[1], E_V8SImode))
     788              :                 return -1;
     789              :               return 11;
     790              : 
     791              :             default:
     792              :               return -1;
     793              :             }
     794              : 
     795          484 :         case E_V4DImode:
     796          484 :           if (!register_operand (operands[0], E_V4DImode)
     797          442 :               || GET_MODE (x1) != E_V4DImode
     798          442 :               || GET_MODE (x4) != E_V4DImode
     799          442 :               || !nonimm_or_0_operand (operands[2], E_V4DImode)
     800          914 :               || !register_operand (operands[3], E_QImode))
     801          104 :             return -1;
     802          380 :           switch (GET_MODE (operands[1]))
     803              :             {
     804            9 :             case E_V4QImode:
     805            9 :               if (!memory_operand (operands[1], E_V4QImode))
     806              :                 return -1;
     807              :               return 12;
     808              : 
     809            9 :             case E_V4HImode:
     810            9 :               if (!memory_operand (operands[1], E_V4HImode))
     811              :                 return -1;
     812              :               return 13;
     813              : 
     814          362 :             case E_V4SImode:
     815          362 :               if (!nonimmediate_operand (operands[1], E_V4SImode))
     816              :                 return -1;
     817              :               return 14;
     818              : 
     819              :             default:
     820              :               return -1;
     821              :             }
     822              : 
     823           18 :         case E_V2DImode:
     824           18 :           if (!register_operand (operands[0], E_V2DImode)
     825           12 :               || GET_MODE (x1) != E_V2DImode
     826           12 :               || GET_MODE (x4) != E_V2DImode
     827           12 :               || !nonimm_or_0_operand (operands[2], E_V2DImode)
     828           30 :               || !register_operand (operands[3], E_QImode))
     829            6 :             return -1;
     830           12 :           switch (GET_MODE (operands[1]))
     831              :             {
     832            0 :             case E_V2QImode:
     833            0 :               if (!memory_operand (operands[1], E_V2QImode))
     834              :                 return -1;
     835              :               return 15;
     836              : 
     837            6 :             case E_V2HImode:
     838            6 :               if (!memory_operand (operands[1], E_V2HImode))
     839              :                 return -1;
     840              :               return 16;
     841              : 
     842            6 :             case E_V2SImode:
     843            6 :               if (!memory_operand (operands[1], E_V2SImode))
     844              :                 return -1;
     845              :               return 17;
     846              : 
     847              :             default:
     848              :               return -1;
     849              :             }
     850              : 
     851              :         default:
     852              :           return -1;
     853              :         }
     854              : 
     855         4624 :     case VEC_SELECT:
     856         4624 :       x6 = XEXP (x5, 1);
     857         4624 :       if (GET_CODE (x6) != PARALLEL)
     858              :         return -1;
     859              :       return 18;
     860              : 
     861              :     default:
     862              :       return -1;
     863              :     }
     864              : }
     865              : 
     866              : int
     867          271 : pattern207 (rtx x1)
     868              : {
     869          271 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     870          271 :   rtx x2, x3;
     871          271 :   int res ATTRIBUTE_UNUSED;
     872          271 :   x2 = XEXP (x1, 1);
     873          271 :   x3 = XEXP (x2, 1);
     874          271 :   operands[3] = x3;
     875          271 :   if (!const_int_operand (operands[3], E_QImode))
     876              :     return -1;
     877          271 :   return pattern206 (x1); /* [-1, 3] */
     878              : }
     879              : 
     880              : int
     881           87 : pattern209 (rtx x1)
     882              : {
     883           87 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     884           87 :   rtx x2, x3;
     885           87 :   int res ATTRIBUTE_UNUSED;
     886           87 :   x2 = XEXP (x1, 1);
     887           87 :   x3 = XEXP (x2, 0);
     888           87 :   operands[2] = x3;
     889           87 :   if (!nonimmediate_operand (operands[2], E_QImode))
     890              :     return -1;
     891           87 :   return pattern207 (x1); /* [-1, 3] */
     892              : }
     893              : 
     894              : int
     895        43346 : pattern213 (rtx x1, machine_mode i1)
     896              : {
     897        43346 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     898        43346 :   int res ATTRIBUTE_UNUSED;
     899        43346 :   if (!register_operand (operands[0], i1)
     900        43238 :       || GET_MODE (x1) != i1
     901        43238 :       || !nonimmediate_operand (operands[1], i1)
     902        86281 :       || !nonimmediate_operand (operands[2], i1))
     903         3924 :     return -1;
     904              :   return 0;
     905              : }
     906              : 
     907              : int
     908       505524 : pattern216 (rtx x1)
     909              : {
     910       505524 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     911       505524 :   rtx x2, x3;
     912       505524 :   int res ATTRIBUTE_UNUSED;
     913       505524 :   x2 = XEXP (x1, 0);
     914       505524 :   operands[1] = x2;
     915       505524 :   x3 = XEXP (x1, 1);
     916       505524 :   operands[2] = x3;
     917       505524 :   switch (GET_MODE (operands[0]))
     918              :     {
     919       425325 :     case E_DImode:
     920       425325 :       return pattern212 (x1, 
     921       425325 : E_DImode); /* [-1, 0] */
     922              : 
     923          166 :     case E_TImode:
     924          166 :       if (pattern212 (x1, 
     925              : E_TImode) != 0)
     926              :         return -1;
     927              :       return 1;
     928              : 
     929         9337 :     case E_QImode:
     930         9337 :       if (pattern212 (x1, 
     931              : E_QImode) != 0)
     932              :         return -1;
     933              :       return 2;
     934              : 
     935         1254 :     case E_HImode:
     936         1254 :       if (pattern212 (x1, 
     937              : E_HImode) != 0)
     938              :         return -1;
     939              :       return 3;
     940              : 
     941        69442 :     case E_SImode:
     942        69442 :       if (pattern212 (x1, 
     943              : E_SImode) != 0)
     944              :         return -1;
     945              :       return 4;
     946              : 
     947              :     default:
     948              :       return -1;
     949              :     }
     950              : }
     951              : 
     952              : int
     953       312410 : pattern222 (rtx x1, machine_mode i1)
     954              : {
     955       312410 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     956       312410 :   int res ATTRIBUTE_UNUSED;
     957       312410 :   if (!register_operand (operands[0], i1)
     958       312409 :       || GET_MODE (x1) != i1
     959       312409 :       || !register_operand (operands[1], i1)
     960       274676 :       || !nonimmediate_operand (operands[2], i1)
     961       487606 :       || !scratch_operand (operands[3], i1))
     962       137243 :     return -1;
     963              :   return 0;
     964              : }
     965              : 
     966              : int
     967       524425 : pattern224 (rtx x1)
     968              : {
     969       524425 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     970       524425 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     971       524425 :   rtx x10, x11;
     972       524425 :   int res ATTRIBUTE_UNUSED;
     973       524425 :   x2 = XVECEXP (x1, 0, 1);
     974       524425 :   if (GET_CODE (x2) != SET)
     975              :     return -1;
     976       524074 :   x3 = XEXP (x2, 1);
     977       524074 :   if (GET_CODE (x3) != MOD)
     978              :     return -1;
     979       500833 :   x4 = XVECEXP (x1, 0, 0);
     980       500833 :   x5 = XEXP (x4, 0);
     981       500833 :   operands[0] = x5;
     982       500833 :   x6 = XEXP (x4, 1);
     983       500833 :   x7 = XEXP (x6, 0);
     984       500833 :   operands[2] = x7;
     985       500833 :   x8 = XEXP (x6, 1);
     986       500833 :   operands[3] = x8;
     987       500833 :   x9 = XEXP (x2, 0);
     988       500833 :   operands[1] = x9;
     989       500833 :   x10 = XEXP (x3, 0);
     990       500833 :   if (!rtx_equal_p (x10, operands[2]))
     991              :     return -1;
     992       468187 :   x11 = XEXP (x3, 1);
     993       468187 :   if (!rtx_equal_p (x11, operands[3]))
     994              :     return -1;
     995       445177 :   switch (GET_CODE (operands[2]))
     996              :     {
     997              :     case REG:
     998              :     case SUBREG:
     999              :       return 0;
    1000              : 
    1001        29716 :     case CONST_INT:
    1002        29716 :       return 1;
    1003              : 
    1004              :     default:
    1005              :       return -1;
    1006              :     }
    1007              : }
    1008              : 
    1009              : int
    1010          830 : pattern234 (rtx x1)
    1011              : {
    1012          830 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1013          830 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1014          830 :   int res ATTRIBUTE_UNUSED;
    1015          830 :   x2 = XVECEXP (x1, 0, 1);
    1016          830 :   if (GET_CODE (x2) != UNSPEC
    1017          655 :       || XVECLEN (x2, 0) != 1
    1018          655 :       || XINT (x2, 1) != 39)
    1019              :     return -1;
    1020          655 :   x3 = XVECEXP (x1, 0, 2);
    1021          655 :   if (GET_CODE (x3) != CLOBBER)
    1022              :     return -1;
    1023          655 :   x4 = XEXP (x3, 0);
    1024          655 :   if (GET_CODE (x4) != REG
    1025          655 :       || REGNO (x4) != 17
    1026         1310 :       || GET_MODE (x4) != E_CCmode)
    1027              :     return -1;
    1028          655 :   x5 = XVECEXP (x1, 0, 0);
    1029          655 :   x6 = XEXP (x5, 0);
    1030          655 :   operands[0] = x6;
    1031          655 :   x7 = XEXP (x5, 1);
    1032          655 :   x8 = XEXP (x7, 0);
    1033          655 :   operands[1] = x8;
    1034          655 :   return pattern233 (x1); /* [-1, 1] */
    1035              : }
    1036              : 
    1037              : int
    1038       275442 : pattern248 (rtx x1)
    1039              : {
    1040       275442 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1041       275442 :   rtx x2, x3, x4, x5, x6, x7;
    1042       275442 :   int res ATTRIBUTE_UNUSED;
    1043       275442 :   x2 = XVECEXP (x1, 0, 1);
    1044       275442 :   if (GET_CODE (x2) != CLOBBER)
    1045              :     return -1;
    1046       274476 :   x3 = XEXP (x2, 0);
    1047       274476 :   if (GET_CODE (x3) != REG
    1048       274476 :       || REGNO (x3) != 17
    1049       548952 :       || GET_MODE (x3) != E_CCmode)
    1050              :     return -1;
    1051       274476 :   x4 = XVECEXP (x1, 0, 0);
    1052       274476 :   x5 = XEXP (x4, 0);
    1053       274476 :   operands[0] = x5;
    1054       274476 :   x6 = XEXP (x4, 1);
    1055       274476 :   x7 = XEXP (x6, 0);
    1056       274476 :   operands[1] = x7;
    1057       274476 :   return 0;
    1058              : }
    1059              : 
    1060              : int
    1061         1933 : pattern254 (rtx x1)
    1062              : {
    1063         1933 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1064         1933 :   rtx x2, x3, x4;
    1065         1933 :   int res ATTRIBUTE_UNUSED;
    1066         1933 :   x2 = XEXP (x1, 1);
    1067         1933 :   x3 = XVECEXP (x2, 0, 1);
    1068         1933 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1069              :     return -1;
    1070         1933 :   x4 = XEXP (x1, 0);
    1071         1933 :   if (GET_CODE (x4) != REG
    1072         1933 :       || REGNO (x4) != 17
    1073         3866 :       || GET_MODE (x4) != E_CCCmode)
    1074            0 :     return -1;
    1075              :   return 0;
    1076              : }
    1077              : 
    1078              : int
    1079         1959 : pattern264 (rtx x1, machine_mode i1)
    1080              : {
    1081         1959 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1082         1959 :   int res ATTRIBUTE_UNUSED;
    1083         1959 :   if (!register_operand (operands[0], i1)
    1084         1959 :       || GET_MODE (x1) != i1)
    1085              :     return -1;
    1086         1868 :   switch (GET_MODE (operands[1]))
    1087              :     {
    1088         1454 :     case E_SImode:
    1089         1454 :       if (!nonimmediate_operand (operands[1], E_SImode))
    1090              :         return -1;
    1091              :       return 0;
    1092              : 
    1093          218 :     case E_DImode:
    1094          218 :       if (!nonimmediate_operand (operands[1], E_DImode))
    1095              :         return -1;
    1096              :       return 1;
    1097              : 
    1098              :     default:
    1099              :       return -1;
    1100              :     }
    1101              : }
    1102              : 
    1103              : int
    1104        78553 : pattern273 (rtx x1, machine_mode i1, machine_mode i2)
    1105              : {
    1106        78553 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1107        78553 :   rtx x2;
    1108        78553 :   int res ATTRIBUTE_UNUSED;
    1109        78553 :   if (!register_operand (operands[0], i1)
    1110        78553 :       || GET_MODE (x1) != i1)
    1111              :     return -1;
    1112        77547 :   x2 = XEXP (x1, 0);
    1113        77547 :   if (GET_MODE (x2) != i2
    1114        77547 :       || !register_operand (operands[1], i1)
    1115       147478 :       || !register_mmxmem_operand (operands[2], i1))
    1116        20731 :     return -1;
    1117              :   return 0;
    1118              : }
    1119              : 
    1120              : int
    1121        48974 : pattern279 (rtx x1)
    1122              : {
    1123        48974 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1124        48974 :   rtx x2;
    1125        48974 :   int res ATTRIBUTE_UNUSED;
    1126        48974 :   switch (GET_MODE (operands[0]))
    1127              :     {
    1128         8341 :     case E_SImode:
    1129         8341 :       if (!register_operand (operands[0], E_SImode)
    1130         8341 :           || GET_MODE (x1) != E_SImode)
    1131              :         return -1;
    1132         8222 :       x2 = XEXP (x1, 0);
    1133         8222 :       switch (GET_MODE (x2))
    1134              :         {
    1135              :         case E_QImode:
    1136              :           return 0;
    1137              : 
    1138         3836 :         case E_HImode:
    1139         3836 :           return 1;
    1140              : 
    1141              :         default:
    1142              :           return -1;
    1143              :         }
    1144              : 
    1145        18255 :     case E_DImode:
    1146        18255 :       if (!register_operand (operands[0], E_DImode)
    1147        18255 :           || GET_MODE (x1) != E_DImode)
    1148              :         return -1;
    1149        16856 :       x2 = XEXP (x1, 0);
    1150        16856 :       switch (GET_MODE (x2))
    1151              :         {
    1152              :         case E_QImode:
    1153              :           return 2;
    1154              : 
    1155              :         case E_HImode:
    1156              :           return 3;
    1157              : 
    1158              :         case E_SImode:
    1159              :           return 4;
    1160              : 
    1161              :         default:
    1162              :           return -1;
    1163              :         }
    1164              : 
    1165              :     default:
    1166              :       return -1;
    1167              :     }
    1168              : }
    1169              : 
    1170              : int
    1171        26830 : pattern293 (rtx x1, machine_mode i1)
    1172              : {
    1173        26830 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1174        26830 :   rtx x2, x3, x4, x5;
    1175        26830 :   int res ATTRIBUTE_UNUSED;
    1176        26830 :   x2 = XEXP (x1, 0);
    1177        26830 :   if (GET_MODE (x2) != i1
    1178        12170 :       || !register_operand (operands[0], i1)
    1179        38963 :       || GET_MODE (x1) != i1)
    1180        14697 :     return -1;
    1181        12133 :   x3 = XEXP (x2, 0);
    1182        12133 :   operands[1] = x3;
    1183        12133 :   if (!nonimmediate_operand (operands[1], i1))
    1184              :     return -1;
    1185        12120 :   x4 = XEXP (x2, 1);
    1186        12120 :   operands[2] = x4;
    1187        12120 :   if (!const_int_operand (operands[2], E_QImode))
    1188              :     return -1;
    1189        11917 :   x5 = XEXP (x1, 1);
    1190        11917 :   operands[3] = x5;
    1191        11917 :   if (!const_int_operand (operands[3], E_QImode))
    1192              :     return -1;
    1193              :   return 0;
    1194              : }
    1195              : 
    1196              : int
    1197         4627 : pattern301 (rtx x1)
    1198              : {
    1199         4627 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1200         4627 :   int res ATTRIBUTE_UNUSED;
    1201         4627 :   switch (GET_MODE (operands[0]))
    1202              :     {
    1203         1156 :     case E_DImode:
    1204         1156 :       return pattern169 (x1, 
    1205              : E_DImode, 
    1206         1156 : E_V64QImode); /* [-1, 0] */
    1207              : 
    1208         2249 :     case E_SImode:
    1209         2249 :       if (!register_operand (operands[0], E_SImode)
    1210         2249 :           || GET_MODE (x1) != E_SImode)
    1211              :         return -1;
    1212         2213 :       switch (GET_MODE (operands[1]))
    1213              :         {
    1214          994 :         case E_V32QImode:
    1215          994 :           if (!register_operand (operands[1], E_V32QImode)
    1216          994 :               || !nonimmediate_operand (operands[2], E_V32QImode))
    1217           89 :             return -1;
    1218              :           return 1;
    1219              : 
    1220         1219 :         case E_V32HImode:
    1221         1219 :           if (!register_operand (operands[1], E_V32HImode)
    1222         1219 :               || !nonimmediate_operand (operands[2], E_V32HImode))
    1223          132 :             return -1;
    1224              :           return 2;
    1225              : 
    1226              :         default:
    1227              :           return -1;
    1228              :         }
    1229              : 
    1230              :     default:
    1231              :       return -1;
    1232              :     }
    1233              : }
    1234              : 
    1235              : int
    1236         3467 : pattern312 (rtx x1)
    1237              : {
    1238         3467 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1239         3467 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1240         3467 :   rtx x10;
    1241         3467 :   int res ATTRIBUTE_UNUSED;
    1242         3467 :   x2 = XEXP (x1, 0);
    1243         3467 :   x3 = XEXP (x2, 0);
    1244         3467 :   x4 = XEXP (x3, 0);
    1245         3467 :   if (GET_CODE (x4) != VEC_SELECT)
    1246              :     return -1;
    1247          261 :   x5 = XEXP (x4, 1);
    1248          261 :   if (GET_CODE (x5) != PARALLEL
    1249          261 :       || XVECLEN (x5, 0) != 1)
    1250              :     return -1;
    1251          261 :   x6 = XVECEXP (x5, 0, 0);
    1252          261 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1253              :     return -1;
    1254          261 :   x7 = XEXP (x1, 2);
    1255          261 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1256              :     return -1;
    1257          261 :   x8 = XEXP (x4, 0);
    1258          261 :   operands[1] = x8;
    1259          261 :   x9 = XEXP (x3, 1);
    1260          261 :   operands[2] = x9;
    1261          261 :   x10 = XEXP (x1, 1);
    1262          261 :   if (!rtx_equal_p (x10, operands[1]))
    1263              :     return -1;
    1264          261 :   switch (GET_MODE (operands[0]))
    1265              :     {
    1266          197 :     case E_V8HFmode:
    1267          197 :       return pattern311 (x1, 
    1268              : E_HFmode, 
    1269          197 : E_V8HFmode); /* [-1, 0] */
    1270              : 
    1271            8 :     case E_V4SFmode:
    1272            8 :       if (pattern311 (x1, 
    1273              : E_SFmode, 
    1274              : E_V4SFmode) != 0)
    1275              :         return -1;
    1276              :       return 1;
    1277              : 
    1278           56 :     case E_V2DFmode:
    1279           56 :       if (pattern311 (x1, 
    1280              : E_DFmode, 
    1281              : E_V2DFmode) != 0)
    1282              :         return -1;
    1283              :       return 2;
    1284              : 
    1285              :     default:
    1286              :       return -1;
    1287              :     }
    1288              : }
    1289              : 
    1290              : int
    1291         2378 : pattern326 (rtx x1)
    1292              : {
    1293         2378 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1294         2378 :   rtx x2, x3, x4, x5, x6;
    1295         2378 :   int res ATTRIBUTE_UNUSED;
    1296         2378 :   x2 = XVECEXP (x1, 0, 0);
    1297         2378 :   switch (GET_CODE (x2))
    1298              :     {
    1299         2104 :     case REG:
    1300         2104 :     case SUBREG:
    1301         2104 :     case MEM:
    1302         2104 :       operands[1] = x2;
    1303         2104 :       switch (GET_MODE (operands[0]))
    1304              :         {
    1305              :         case E_V32HImode:
    1306              :           return 0;
    1307              : 
    1308          114 :         case E_V16SImode:
    1309          114 :           return 1;
    1310              : 
    1311          160 :         case E_V8DImode:
    1312          160 :           return 2;
    1313              : 
    1314          114 :         case E_V16HImode:
    1315          114 :           return 3;
    1316              : 
    1317          356 :         case E_V8SImode:
    1318          356 :           return 4;
    1319              : 
    1320          374 :         case E_V4DImode:
    1321          374 :           return 5;
    1322              : 
    1323          114 :         case E_V8HImode:
    1324          114 :           return 6;
    1325              : 
    1326          557 :         case E_V4SImode:
    1327          557 :           return 7;
    1328              : 
    1329          244 :         case E_V2DImode:
    1330          244 :           return 8;
    1331              : 
    1332              :         default:
    1333              :           return -1;
    1334              :         }
    1335              : 
    1336          186 :     case VEC_SELECT:
    1337          186 :       if (GET_MODE (x2) != E_V2SFmode)
    1338              :         return -1;
    1339          126 :       x3 = XEXP (x2, 1);
    1340          126 :       if (GET_CODE (x3) != PARALLEL
    1341          126 :           || XVECLEN (x3, 0) != 2)
    1342              :         return -1;
    1343          126 :       x4 = XVECEXP (x3, 0, 0);
    1344          126 :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1345              :         return -1;
    1346          126 :       x5 = XVECEXP (x3, 0, 1);
    1347          126 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    1348          126 :           || !register_operand (operands[0], E_V2DImode)
    1349          240 :           || GET_MODE (x1) != E_V2DImode)
    1350           12 :         return -1;
    1351          114 :       x6 = XEXP (x2, 0);
    1352          114 :       operands[1] = x6;
    1353          114 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    1354              :         return -1;
    1355              :       return 9;
    1356              : 
    1357              :     default:
    1358              :       return -1;
    1359              :     }
    1360              : }
    1361              : 
    1362              : int
    1363          398 : pattern336 (rtx x1, machine_mode i1, machine_mode i2)
    1364              : {
    1365          398 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1366          398 :   rtx x2, x3, x4, x5;
    1367          398 :   int res ATTRIBUTE_UNUSED;
    1368          398 :   if (GET_MODE (x1) != i2)
    1369              :     return -1;
    1370          398 :   x2 = XEXP (x1, 0);
    1371          398 :   if (GET_MODE (x2) != i2)
    1372              :     return -1;
    1373          398 :   x3 = XEXP (x2, 0);
    1374          398 :   if (GET_MODE (x3) != i1)
    1375              :     return -1;
    1376          398 :   x4 = XEXP (x1, 1);
    1377          398 :   if (GET_MODE (x4) != i2)
    1378              :     return -1;
    1379          398 :   x5 = XEXP (x4, 0);
    1380          398 :   if (GET_MODE (x5) != i1)
    1381            0 :     return -1;
    1382              :   return 0;
    1383              : }
    1384              : 
    1385              : int
    1386         5661 : pattern339 (rtx x1)
    1387              : {
    1388         5661 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1389         5661 :   rtx x2, x3, x4, x5, x6;
    1390         5661 :   int res ATTRIBUTE_UNUSED;
    1391         5661 :   x2 = XEXP (x1, 0);
    1392         5661 :   operands[0] = x2;
    1393         5661 :   x3 = XEXP (x1, 1);
    1394         5661 :   x4 = XEXP (x3, 1);
    1395         5661 :   x5 = XEXP (x4, 0);
    1396         5661 :   operands[2] = x5;
    1397         5661 :   if (!register_operand (operands[2], E_QImode))
    1398              :     return -1;
    1399         4591 :   x6 = XEXP (x4, 1);
    1400         4591 :   operands[3] = x6;
    1401         4591 :   if (!const_int_operand (operands[3], E_QImode))
    1402              :     return -1;
    1403         4591 :   switch (GET_MODE (operands[0]))
    1404              :     {
    1405         3450 :     case E_DImode:
    1406         3450 :       if (GET_MODE (x3) != E_DImode)
    1407              :         return -1;
    1408              :       return 0;
    1409              : 
    1410            6 :     case E_TImode:
    1411            6 :       if (!register_operand (operands[0], E_TImode)
    1412            6 :           || GET_MODE (x3) != E_TImode
    1413           12 :           || !register_operand (operands[1], E_TImode))
    1414            0 :         return -1;
    1415              :       return 1;
    1416              : 
    1417         1005 :     case E_SImode:
    1418         1005 :       if (!nonimmediate_operand (operands[0], E_SImode)
    1419         1005 :           || GET_MODE (x3) != E_SImode
    1420         2010 :           || !nonimmediate_operand (operands[1], E_SImode))
    1421          264 :         return -1;
    1422              :       return 2;
    1423              : 
    1424              :     default:
    1425              :       return -1;
    1426              :     }
    1427              : }
    1428              : 
    1429              : int
    1430          570 : pattern346 (rtx x1, int *pnum_clobbers, rtx_code i1)
    1431              : {
    1432          570 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1433          570 :   rtx x2, x3, x4, x5, x6, x7;
    1434          570 :   int res ATTRIBUTE_UNUSED;
    1435          570 :   if (pnum_clobbers == NULL)
    1436              :     return -1;
    1437          569 :   x2 = XVECEXP (x1, 0, 0);
    1438          569 :   x3 = XEXP (x2, 1);
    1439          569 :   x4 = XEXP (x3, 0);
    1440          569 :   if (GET_MODE (x4) != E_SImode)
    1441              :     return -1;
    1442          427 :   x5 = XVECEXP (x1, 0, 1);
    1443          427 :   if (GET_CODE (x5) != SET)
    1444              :     return -1;
    1445          427 :   x6 = XEXP (x5, 1);
    1446          427 :   if (GET_CODE (x6) != i1
    1447          413 :       || GET_MODE (x6) != E_SImode)
    1448              :     return -1;
    1449          413 :   x7 = XEXP (x2, 0);
    1450          413 :   operands[0] = x7;
    1451          413 :   if (!register_operand (operands[0], E_DImode)
    1452          413 :       || GET_MODE (x3) != E_DImode)
    1453              :     return -1;
    1454              :   return 0;
    1455              : }
    1456              : 
    1457              : int
    1458          113 : pattern350 (rtx x1, machine_mode i1, machine_mode i2)
    1459              : {
    1460          113 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1461          113 :   rtx x2;
    1462          113 :   int res ATTRIBUTE_UNUSED;
    1463          113 :   if (!register_operand (operands[0], i2)
    1464          113 :       || GET_MODE (x1) != i2)
    1465              :     return -1;
    1466          113 :   x2 = XEXP (x1, 0);
    1467          113 :   if (GET_MODE (x2) != i1
    1468          113 :       || !nonimmediate_operand (operands[1], i1))
    1469           28 :     return -1;
    1470              :   return 0;
    1471              : }
    1472              : 
    1473              : int
    1474       790915 : pattern355 (rtx x1)
    1475              : {
    1476       790915 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1477       790915 :   rtx x2;
    1478       790915 :   int res ATTRIBUTE_UNUSED;
    1479       790915 :   if (GET_CODE (x1) != CLOBBER)
    1480              :     return -1;
    1481       666071 :   x2 = XEXP (x1, 0);
    1482       666071 :   if (GET_CODE (x2) != REG
    1483       666070 :       || REGNO (x2) != 17
    1484      1297745 :       || GET_MODE (x2) != E_CCmode)
    1485        34397 :     return -1;
    1486              :   return 0;
    1487              : }
    1488              : 
    1489              : int
    1490           39 : pattern357 (rtx x1, machine_mode i1, machine_mode i2)
    1491              : {
    1492           39 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1493           39 :   rtx x2, x3, x4, x5, x6;
    1494           39 :   int res ATTRIBUTE_UNUSED;
    1495           39 :   if (!register_operand (operands[0], i2)
    1496           39 :       || GET_MODE (x1) != i2)
    1497              :     return -1;
    1498           36 :   x2 = XEXP (x1, 0);
    1499           36 :   if (GET_MODE (x2) != i2)
    1500              :     return -1;
    1501           36 :   x3 = XEXP (x2, 0);
    1502           36 :   if (GET_MODE (x3) != i2)
    1503              :     return -1;
    1504           36 :   x4 = XEXP (x3, 0);
    1505           36 :   if (GET_MODE (x4) != i2
    1506           36 :       || !nonimmediate_operand (operands[2], i1))
    1507            0 :     return -1;
    1508           36 :   x5 = XEXP (x2, 1);
    1509           36 :   if (GET_MODE (x5) != i2
    1510           36 :       || !nonimmediate_operand (operands[4], i1))
    1511            0 :     return -1;
    1512           36 :   x6 = XEXP (x1, 1);
    1513           36 :   if (GET_MODE (x6) != i2
    1514           36 :       || !nonimmediate_operand (operands[1], i1))
    1515           10 :     return -1;
    1516              :   return 0;
    1517              : }
    1518              : 
    1519              : int
    1520         4250 : pattern362 (rtx x1, machine_mode i1)
    1521              : {
    1522         4250 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1523         4250 :   rtx x2;
    1524         4250 :   int res ATTRIBUTE_UNUSED;
    1525         4250 :   if (!nonimmediate_operand (operands[0], i1)
    1526         4250 :       || GET_MODE (x1) != i1)
    1527              :     return -1;
    1528         4250 :   x2 = XEXP (x1, 0);
    1529         4250 :   if (GET_MODE (x2) != i1
    1530         4250 :       || !x86_64_general_operand (operands[1], i1))
    1531          212 :     return -1;
    1532              :   return 0;
    1533              : }
    1534              : 
    1535              : int
    1536         4384 : pattern367 (rtx x1, rtx_code i1)
    1537              : {
    1538         4384 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1539         4384 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1540         4384 :   int res ATTRIBUTE_UNUSED;
    1541         4384 :   x2 = XVECEXP (x1, 0, 0);
    1542         4384 :   x3 = XEXP (x2, 1);
    1543         4384 :   x4 = XEXP (x3, 0);
    1544         4384 :   x5 = XEXP (x4, 0);
    1545         4384 :   if (XVECLEN (x5, 0) != 2
    1546         4384 :       || XINT (x5, 1) != 110)
    1547              :     return -1;
    1548         4384 :   x6 = XEXP (x2, 0);
    1549         4384 :   if (GET_CODE (x6) != REG
    1550         4384 :       || REGNO (x6) != 17
    1551         8768 :       || GET_MODE (x6) != E_CCNOmode)
    1552              :     return -1;
    1553         3968 :   x7 = XVECEXP (x1, 0, 1);
    1554         3968 :   if (GET_CODE (x7) != SET)
    1555              :     return -1;
    1556         3968 :   x8 = XEXP (x7, 1);
    1557         3968 :   if (GET_CODE (x8) != i1)
    1558              :     return -1;
    1559         3968 :   return pattern366 (x1, 
    1560         3968 : E_CCNOmode); /* [-1, 3] */
    1561              : }
    1562              : 
    1563              : int
    1564         1089 : pattern373 (rtx x1)
    1565              : {
    1566         1089 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1567         1089 :   rtx x2, x3, x4, x5, x6;
    1568         1089 :   int res ATTRIBUTE_UNUSED;
    1569         1089 :   x2 = XEXP (x1, 0);
    1570         1089 :   x3 = XEXP (x2, 1);
    1571         1089 :   switch (GET_CODE (x3))
    1572              :     {
    1573              :     case REG:
    1574              :     case SUBREG:
    1575              :       return 0;
    1576              : 
    1577            3 :     case AND:
    1578            3 :       if (GET_MODE (x3) != E_QImode)
    1579              :         return -1;
    1580            3 :       x4 = XEXP (x3, 0);
    1581            3 :       operands[1] = x4;
    1582            3 :       if (!register_operand (operands[1], E_QImode))
    1583              :         return -1;
    1584            3 :       x5 = XEXP (x3, 1);
    1585            3 :       operands[2] = x5;
    1586            3 :       if (!const_int_operand (operands[2], E_QImode))
    1587              :         return -1;
    1588            3 :       x6 = XEXP (x1, 1);
    1589            3 :       operands[3] = x6;
    1590            3 :       switch (GET_MODE (operands[0]))
    1591              :         {
    1592            3 :         case E_SImode:
    1593            3 :           if (pattern372 (x1, 
    1594              : E_SImode) != 0)
    1595              :             return -1;
    1596              :           return 1;
    1597              : 
    1598            0 :         case E_DImode:
    1599            0 :           if (pattern372 (x1, 
    1600              : E_DImode) != 0)
    1601              :             return -1;
    1602              :           return 2;
    1603              : 
    1604              :         default:
    1605              :           return -1;
    1606              :         }
    1607              : 
    1608              :     default:
    1609              :       return -1;
    1610              :     }
    1611              : }
    1612              : 
    1613              : int
    1614           90 : pattern386 (rtx x1)
    1615              : {
    1616           90 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1617           90 :   rtx x2, x3, x4, x5, x6;
    1618           90 :   int res ATTRIBUTE_UNUSED;
    1619           90 :   x2 = XVECEXP (x1, 0, 1);
    1620           90 :   if (GET_CODE (x2) != SET)
    1621              :     return -1;
    1622           90 :   x3 = XEXP (x2, 1);
    1623           90 :   if (GET_CODE (x3) != PLUS
    1624           90 :       || GET_MODE (x3) != E_SImode)
    1625              :     return -1;
    1626           90 :   x4 = XEXP (x3, 0);
    1627           90 :   if (GET_CODE (x4) != REG
    1628           90 :       || REGNO (x4) != 7
    1629          180 :       || GET_MODE (x4) != E_SImode)
    1630              :     return -1;
    1631           90 :   x5 = XEXP (x2, 0);
    1632           90 :   if (GET_CODE (x5) != REG
    1633           90 :       || REGNO (x5) != 7
    1634          180 :       || GET_MODE (x5) != E_SImode)
    1635              :     return -1;
    1636           90 :   x6 = XVECEXP (x1, 0, 2);
    1637           90 :   return pattern385 (x6, 
    1638           90 : 38); /* [-1, 0] */
    1639              : }
    1640              : 
    1641              : int
    1642           48 : pattern396 (rtx x1)
    1643              : {
    1644           48 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1645           48 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1646           48 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    1647           48 :   int res ATTRIBUTE_UNUSED;
    1648           48 :   x2 = XVECEXP (x1, 0, 0);
    1649           48 :   x3 = XEXP (x2, 1);
    1650           48 :   if (GET_MODE (x3) != E_SImode)
    1651              :     return -1;
    1652           48 :   x4 = XEXP (x3, 0);
    1653           48 :   if (GET_CODE (x4) != UNSPEC
    1654           48 :       || XVECLEN (x4, 0) != 3
    1655           48 :       || XINT (x4, 1) != 22
    1656           48 :       || GET_MODE (x4) != E_SImode)
    1657              :     return -1;
    1658           48 :   x5 = XVECEXP (x4, 0, 2);
    1659           48 :   if (GET_CODE (x5) != REG
    1660           48 :       || REGNO (x5) != 7
    1661           96 :       || GET_MODE (x5) != E_SImode)
    1662              :     return -1;
    1663           48 :   x6 = XEXP (x3, 1);
    1664           48 :   if (GET_CODE (x6) != CONST
    1665           48 :       || GET_MODE (x6) != E_SImode)
    1666              :     return -1;
    1667           48 :   x7 = XEXP (x6, 0);
    1668           48 :   if (GET_CODE (x7) != UNSPEC
    1669           48 :       || XVECLEN (x7, 0) != 1
    1670           48 :       || XINT (x7, 1) != 6
    1671           48 :       || GET_MODE (x7) != E_SImode)
    1672              :     return -1;
    1673           48 :   x8 = XVECEXP (x1, 0, 1);
    1674           48 :   if (GET_CODE (x8) != CLOBBER)
    1675              :     return -1;
    1676           48 :   x9 = XVECEXP (x1, 0, 2);
    1677           48 :   if (GET_CODE (x9) != CLOBBER)
    1678              :     return -1;
    1679           48 :   x10 = XVECEXP (x1, 0, 3);
    1680           48 :   x11 = XEXP (x10, 0);
    1681           48 :   if (GET_CODE (x11) != REG
    1682           48 :       || REGNO (x11) != 17
    1683           96 :       || GET_MODE (x11) != E_CCmode)
    1684              :     return -1;
    1685           48 :   x12 = XEXP (x2, 0);
    1686           48 :   operands[0] = x12;
    1687           48 :   if (!register_operand (operands[0], E_SImode))
    1688              :     return -1;
    1689           48 :   x13 = XVECEXP (x4, 0, 0);
    1690           48 :   operands[1] = x13;
    1691           48 :   if (!register_operand (operands[1], E_SImode))
    1692              :     return -1;
    1693           48 :   x14 = XVECEXP (x4, 0, 1);
    1694           48 :   operands[2] = x14;
    1695           48 :   if (!constant_call_address_operand (operands[2], E_VOIDmode))
    1696              :     return -1;
    1697           48 :   x15 = XVECEXP (x7, 0, 0);
    1698           48 :   operands[3] = x15;
    1699           48 :   if (!tls_symbolic_operand (operands[3], E_VOIDmode))
    1700              :     return -1;
    1701           48 :   x16 = XEXP (x8, 0);
    1702           48 :   operands[4] = x16;
    1703           48 :   if (!scratch_operand (operands[4], E_SImode))
    1704              :     return -1;
    1705           48 :   x17 = XEXP (x9, 0);
    1706           48 :   operands[5] = x17;
    1707           48 :   if (!scratch_operand (operands[5], E_SImode))
    1708              :     return -1;
    1709              :   return 0;
    1710              : }
    1711              : 
    1712              : int
    1713     22634137 : pattern418 (rtx x1, machine_mode i1)
    1714              : {
    1715     22634137 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1716     22634137 :   rtx x2, x3, x4, x5, x6, x7;
    1717     22634137 :   int res ATTRIBUTE_UNUSED;
    1718     22634137 :   if (!memory_operand (operands[3], i1))
    1719              :     return -1;
    1720      4673427 :   operands[0] = x1;
    1721      4673427 :   if (!general_reg_operand (operands[0], i1))
    1722              :     return -1;
    1723      3158458 :   x2 = PATTERN (peep2_next_insn (1));
    1724      3158458 :   if (GET_CODE (x2) != SET)
    1725              :     return -1;
    1726      2850018 :   x3 = XEXP (x2, 1);
    1727      2850018 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1728              :     return -1;
    1729       127573 :   x4 = XEXP (x2, 0);
    1730       127573 :   operands[1] = x4;
    1731       127573 :   if (!memory_operand (operands[1], i1))
    1732              :     return -1;
    1733        54446 :   x5 = PATTERN (peep2_next_insn (2));
    1734        54446 :   if (GET_CODE (x5) != SET)
    1735              :     return -1;
    1736        51562 :   x6 = XEXP (x5, 1);
    1737        51562 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1738              :     return -1;
    1739        19455 :   x7 = XEXP (x5, 0);
    1740        19455 :   operands[2] = x7;
    1741        19455 :   if (!memory_operand (operands[2], i1))
    1742              :     return -1;
    1743              :   return 0;
    1744              : }
    1745              : 
    1746              : int
    1747       903162 : pattern429 (rtx x1, machine_mode i1)
    1748              : {
    1749       903162 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1750       903162 :   int res ATTRIBUTE_UNUSED;
    1751       903162 :   if (!register_operand (operands[0], i1)
    1752       903162 :       || GET_MODE (x1) != i1)
    1753              :     return -1;
    1754       868797 :   switch (GET_MODE (operands[1]))
    1755              :     {
    1756        10859 :     case E_HImode:
    1757        10859 :       if (!nonimmediate_operand (operands[1], E_HImode))
    1758              :         return -1;
    1759              :       return 0;
    1760              : 
    1761       522203 :     case E_SImode:
    1762       522203 :       if (!nonimmediate_operand (operands[1], E_SImode))
    1763              :         return -1;
    1764              :       return 1;
    1765              : 
    1766       331187 :     case E_DImode:
    1767       331187 :       if (!nonimmediate_operand (operands[1], E_DImode))
    1768              :         return -1;
    1769              :       return 2;
    1770              : 
    1771              :     default:
    1772              :       return -1;
    1773              :     }
    1774              : }
    1775              : 
    1776              : int
    1777     12747833 : pattern439 (rtx x1)
    1778              : {
    1779     12747833 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1780     12747833 :   int res ATTRIBUTE_UNUSED;
    1781     12747833 :   switch (GET_MODE (operands[0]))
    1782              :     {
    1783      5275965 :     case E_DImode:
    1784      5275965 :       if (!nonimmediate_operand (operands[0], E_DImode)
    1785      5183581 :           || GET_MODE (x1) != E_DImode
    1786     10459546 :           || !nonimmediate_operand (operands[1], E_DImode))
    1787       399596 :         return -1;
    1788              :       return 0;
    1789              : 
    1790      3442753 :     case E_SImode:
    1791      3442753 :       if (!nonimmediate_operand (operands[0], E_SImode)
    1792      2145325 :           || GET_MODE (x1) != E_SImode
    1793      2145325 :           || !nonimmediate_operand (operands[1], E_SImode)
    1794      5106554 :           || !x86_64_general_operand (operands[2], E_SImode))
    1795      1856800 :         return -1;
    1796              :       return 1;
    1797              : 
    1798              :     default:
    1799              :       return -1;
    1800              :     }
    1801              : }
    1802              : 
    1803              : int
    1804         9336 : pattern450 (rtx x1, int *pnum_clobbers)
    1805              : {
    1806         9336 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1807         9336 :   rtx x2, x3, x4;
    1808         9336 :   int res ATTRIBUTE_UNUSED;
    1809         9336 :   if (pnum_clobbers == NULL)
    1810              :     return -1;
    1811         9336 :   x2 = XEXP (x1, 1);
    1812         9336 :   x3 = XEXP (x2, 1);
    1813         9336 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1814              :     return -1;
    1815         7699 :   x4 = XEXP (x2, 0);
    1816         7699 :   operands[2] = x4;
    1817         7699 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    1818              :     return -1;
    1819         3877 :   switch (GET_MODE (operands[0]))
    1820              :     {
    1821          208 :     case E_SImode:
    1822          208 :       return pattern449 (x1, 
    1823          208 : E_SImode); /* [-1, 0] */
    1824              : 
    1825         3524 :     case E_DImode:
    1826         3524 :       if (pattern449 (x1, 
    1827              : E_DImode) != 0)
    1828              :         return -1;
    1829              :       return 1;
    1830              : 
    1831              :     default:
    1832              :       return -1;
    1833              :     }
    1834              : }
    1835              : 
    1836              : int
    1837         4989 : pattern459 (rtx x1, machine_mode i1)
    1838              : {
    1839         4989 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1840         4989 :   rtx x2;
    1841         4989 :   int res ATTRIBUTE_UNUSED;
    1842         4989 :   if (!register_operand (operands[0], i1)
    1843         4989 :       || GET_MODE (x1) != i1)
    1844              :     return -1;
    1845         4494 :   x2 = XEXP (x1, 0);
    1846         4494 :   if (GET_MODE (x2) != i1
    1847         4494 :       || !register_operand (operands[1], i1)
    1848         8812 :       || !nonimmediate_operand (operands[2], i1))
    1849          527 :     return -1;
    1850              :   return 0;
    1851              : }
    1852              : 
    1853              : int
    1854         1523 : pattern463 (rtx x1)
    1855              : {
    1856         1523 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1857         1523 :   rtx x2, x3, x4, x5, x6, x7;
    1858         1523 :   int res ATTRIBUTE_UNUSED;
    1859         1523 :   x2 = XEXP (x1, 0);
    1860         1523 :   x3 = XVECEXP (x2, 0, 0);
    1861         1523 :   operands[1] = x3;
    1862         1523 :   x4 = XVECEXP (x2, 0, 1);
    1863         1523 :   operands[2] = x4;
    1864         1523 :   x5 = XEXP (x1, 2);
    1865         1523 :   switch (GET_CODE (x5))
    1866              :     {
    1867         1436 :     case UNSPEC:
    1868         1436 :       if (XVECLEN (x5, 0) != 1
    1869         1436 :           || XINT (x5, 1) != 224)
    1870              :         return -1;
    1871         1436 :       x6 = XEXP (x1, 1);
    1872         1436 :       operands[3] = x6;
    1873         1436 :       x7 = XVECEXP (x5, 0, 0);
    1874         1436 :       operands[4] = x7;
    1875         1436 :       switch (GET_MODE (operands[0]))
    1876              :         {
    1877          296 :         case E_V32HFmode:
    1878          296 :           if (!register_operand (operands[0], E_V32HFmode)
    1879          250 :               || GET_MODE (x1) != E_V32HFmode
    1880          250 :               || GET_MODE (x2) != E_V32HFmode
    1881          250 :               || !vector_operand (operands[1], E_V32HFmode)
    1882          250 :               || !vector_operand (operands[2], E_V32HFmode)
    1883          250 :               || !nonimm_or_0_operand (operands[3], E_V32HFmode)
    1884          246 :               || GET_MODE (x5) != E_SImode
    1885          542 :               || !register_operand (operands[4], E_HImode))
    1886          114 :             return -1;
    1887              :           return 0;
    1888              : 
    1889          573 :         case E_V16HFmode:
    1890          573 :           if (pattern462 (x1, 
    1891              : E_HImode, 
    1892              : E_V16HFmode) != 0)
    1893              :             return -1;
    1894              :           return 1;
    1895              : 
    1896          567 :         case E_V8HFmode:
    1897          567 :           if (pattern462 (x1, 
    1898              : E_QImode, 
    1899              : E_V8HFmode) != 0)
    1900              :             return -1;
    1901              :           return 2;
    1902              : 
    1903              :         default:
    1904              :           return -1;
    1905              :         }
    1906              : 
    1907           87 :     case CONST_INT:
    1908           87 :       if (XWINT (x5, 0) != 3L
    1909           87 :           || !register_operand (operands[0], E_V8HFmode)
    1910           67 :           || GET_MODE (x1) != E_V8HFmode
    1911           67 :           || GET_MODE (x2) != E_V8HFmode
    1912           67 :           || !nonimmediate_operand (operands[1], E_V8HFmode)
    1913          154 :           || !vector_operand (operands[2], E_V8HFmode))
    1914           20 :         return -1;
    1915           67 :       x6 = XEXP (x1, 1);
    1916           67 :       if (!rtx_equal_p (x6, operands[1]))
    1917              :         return -1;
    1918              :       return 3;
    1919              : 
    1920              :     default:
    1921              :       return -1;
    1922              :     }
    1923              : }
    1924              : 
    1925              : int
    1926         3876 : pattern487 (rtx x1, machine_mode i1, machine_mode i2)
    1927              : {
    1928         3876 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1929         3876 :   rtx x2;
    1930         3876 :   int res ATTRIBUTE_UNUSED;
    1931         3876 :   if (!register_operand (operands[0], i1)
    1932         3876 :       || GET_MODE (x1) != i1)
    1933              :     return -1;
    1934         3660 :   x2 = XEXP (x1, 0);
    1935         3660 :   if (GET_MODE (x2) != i1
    1936         3660 :       || !register_operand (operands[1], i1)
    1937         3600 :       || !register_operand (operands[2], i1)
    1938         3600 :       || !nonimmediate_operand (operands[3], i1)
    1939         3600 :       || !const0_operand (operands[5], i1)
    1940         7260 :       || !register_operand (operands[4], i2))
    1941          276 :     return -1;
    1942              :   return 0;
    1943              : }
    1944              : 
    1945              : int
    1946          379 : pattern494 (rtx x1, machine_mode i1, machine_mode i2)
    1947              : {
    1948          379 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1949          379 :   rtx x2;
    1950          379 :   int res ATTRIBUTE_UNUSED;
    1951          379 :   if (!register_operand (operands[0], i2)
    1952          379 :       || GET_MODE (x1) != i2)
    1953              :     return -1;
    1954          366 :   x2 = XVECEXP (x1, 0, 0);
    1955          366 :   if (GET_MODE (x2) != i2
    1956          366 :       || !register_operand (operands[1], i1))
    1957           21 :     return -1;
    1958              :   return 0;
    1959              : }
    1960              : 
    1961              : int
    1962            0 : pattern495 (rtx x1)
    1963              : {
    1964            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1965            0 :   rtx x2, x3, x4;
    1966            0 :   int res ATTRIBUTE_UNUSED;
    1967            0 :   x2 = XVECEXP (x1, 0, 0);
    1968            0 :   x3 = XEXP (x2, 0);
    1969            0 :   operands[1] = x3;
    1970            0 :   x4 = XVECEXP (x1, 0, 1);
    1971            0 :   operands[2] = x4;
    1972            0 :   if (!const48_operand (operands[2], E_SImode))
    1973              :     return -1;
    1974            0 :   switch (GET_MODE (operands[0]))
    1975              :     {
    1976            0 :     case E_V8HImode:
    1977            0 :       return pattern494 (x1, 
    1978              : E_V8HFmode, 
    1979            0 : E_V8HImode); /* [-1, 0] */
    1980              : 
    1981            0 :     case E_V16HImode:
    1982            0 :       if (pattern494 (x1, 
    1983              : E_V16HFmode, 
    1984              : E_V16HImode) != 0)
    1985              :         return -1;
    1986              :       return 1;
    1987              : 
    1988            0 :     case E_V32HImode:
    1989            0 :       if (pattern494 (x1, 
    1990              : E_V32HFmode, 
    1991              : E_V32HImode) != 0)
    1992              :         return -1;
    1993              :       return 2;
    1994              : 
    1995            0 :     case E_V8SImode:
    1996            0 :       if (!register_operand (operands[0], E_V8SImode)
    1997            0 :           || GET_MODE (x1) != E_V8SImode
    1998            0 :           || GET_MODE (x2) != E_V8SImode)
    1999              :         return -1;
    2000            0 :       switch (GET_MODE (operands[1]))
    2001              :         {
    2002            0 :         case E_V8HFmode:
    2003            0 :           if (!register_operand (operands[1], E_V8HFmode))
    2004              :             return -1;
    2005              :           return 3;
    2006              : 
    2007            0 :         case E_V8DFmode:
    2008            0 :           if (!register_operand (operands[1], E_V8DFmode))
    2009              :             return -1;
    2010              :           return 4;
    2011              : 
    2012              :         default:
    2013              :           return -1;
    2014              :         }
    2015              : 
    2016            0 :     case E_V16SImode:
    2017            0 :       if (!register_operand (operands[0], E_V16SImode)
    2018            0 :           || GET_MODE (x1) != E_V16SImode
    2019            0 :           || GET_MODE (x2) != E_V16SImode)
    2020              :         return -1;
    2021            0 :       switch (GET_MODE (operands[1]))
    2022              :         {
    2023            0 :         case E_V16HFmode:
    2024            0 :           if (!register_operand (operands[1], E_V16HFmode))
    2025              :             return -1;
    2026              :           return 5;
    2027              : 
    2028            0 :         case E_V16SFmode:
    2029            0 :           if (!register_operand (operands[1], E_V16SFmode))
    2030              :             return -1;
    2031              :           return 6;
    2032              : 
    2033              :         default:
    2034              :           return -1;
    2035              :         }
    2036              : 
    2037            0 :     case E_V8DImode:
    2038            0 :       if (!register_operand (operands[0], E_V8DImode)
    2039            0 :           || GET_MODE (x1) != E_V8DImode
    2040            0 :           || GET_MODE (x2) != E_V8DImode)
    2041              :         return -1;
    2042            0 :       switch (GET_MODE (operands[1]))
    2043              :         {
    2044            0 :         case E_V8HFmode:
    2045            0 :           if (!register_operand (operands[1], E_V8HFmode))
    2046              :             return -1;
    2047              :           return 7;
    2048              : 
    2049            0 :         case E_V8DFmode:
    2050            0 :           if (!register_operand (operands[1], E_V8DFmode))
    2051              :             return -1;
    2052              :           return 8;
    2053              : 
    2054            0 :         case E_V8SFmode:
    2055            0 :           if (!register_operand (operands[1], E_V8SFmode))
    2056              :             return -1;
    2057              :           return 9;
    2058              : 
    2059              :         default:
    2060              :           return -1;
    2061              :         }
    2062              : 
    2063              :     default:
    2064              :       return -1;
    2065              :     }
    2066              : }
    2067              : 
    2068              : int
    2069        22347 : pattern516 (rtx x1, machine_mode i1)
    2070              : {
    2071        22347 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2072        22347 :   int res ATTRIBUTE_UNUSED;
    2073        22347 :   if (!register_operand (operands[0], i1)
    2074        19255 :       || GET_MODE (x1) != i1
    2075        19255 :       || !register_operand (operands[1], i1)
    2076        36712 :       || !bcst_vector_operand (operands[2], i1))
    2077         9916 :     return -1;
    2078              :   return 0;
    2079              : }
    2080              : 
    2081              : int
    2082          840 : pattern521 (rtx x1, machine_mode i1)
    2083              : {
    2084          840 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2085          840 :   int res ATTRIBUTE_UNUSED;
    2086          840 :   if (!register_operand (operands[0], i1)
    2087          840 :       || GET_MODE (x1) != i1)
    2088              :     return -1;
    2089          758 :   switch (GET_MODE (operands[1]))
    2090              :     {
    2091          589 :     case E_V4SImode:
    2092          589 :       if (!nonimmediate_operand (operands[1], E_V4SImode))
    2093              :         return -1;
    2094              :       return 0;
    2095              : 
    2096          167 :     case E_V4DImode:
    2097          167 :       if (!nonimmediate_operand (operands[1], E_V4DImode))
    2098              :         return -1;
    2099              :       return 1;
    2100              : 
    2101              :     default:
    2102              :       return -1;
    2103              :     }
    2104              : }
    2105              : 
    2106              : int
    2107           51 : pattern526 (rtx x1, machine_mode i1, machine_mode i2)
    2108              : {
    2109           51 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2110           51 :   rtx x2;
    2111           51 :   int res ATTRIBUTE_UNUSED;
    2112           51 :   if (!nonimmediate_operand (operands[0], i2)
    2113           51 :       || GET_MODE (x1) != i2)
    2114              :     return -1;
    2115           51 :   x2 = XEXP (x1, 0);
    2116           51 :   if (GET_MODE (x2) != i1
    2117           51 :       || !register_operand (operands[1], i1)
    2118           94 :       || !permvar_truncate_operand (operands[2], i1))
    2119           39 :     return -1;
    2120              :   return 0;
    2121              : }
    2122              : 
    2123              : int
    2124          125 : pattern530 (rtx x1, machine_mode i1)
    2125              : {
    2126          125 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2127          125 :   rtx x2;
    2128          125 :   int res ATTRIBUTE_UNUSED;
    2129          125 :   if (!register_operand (operands[0], i1)
    2130          125 :       || GET_MODE (x1) != i1)
    2131              :     return -1;
    2132          125 :   x2 = XEXP (x1, 0);
    2133          125 :   if (GET_MODE (x2) != i1
    2134          125 :       || !register_operand (operands[1], i1)
    2135          105 :       || !register_operand (operands[2], i1)
    2136          230 :       || !const1_operand (operands[3], i1))
    2137          125 :     return -1;
    2138              :   return 0;
    2139              : }
    2140              : 
    2141              : int
    2142       248029 : pattern534 (rtx x1, machine_mode i1)
    2143              : {
    2144       248029 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2145       248029 :   rtx x2;
    2146       248029 :   int res ATTRIBUTE_UNUSED;
    2147       248029 :   if (!register_operand (operands[0], i1)
    2148       248029 :       || GET_MODE (x1) != i1)
    2149              :     return -1;
    2150       244659 :   x2 = XEXP (x1, 0);
    2151       244659 :   if (GET_MODE (x2) != i1
    2152       244659 :       || !regmem_or_bitnot_regmem_operand (operands[1], i1)
    2153       165012 :       || !regmem_or_bitnot_regmem_operand (operands[2], i1)
    2154       394672 :       || !regmem_or_bitnot_regmem_operand (operands[3], i1))
    2155        95298 :     return -1;
    2156              :   return 0;
    2157              : }
    2158              : 
    2159              : int
    2160        81655 : pattern540 (rtx x1)
    2161              : {
    2162        81655 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2163        81655 :   rtx x2, x3, x4;
    2164        81655 :   int res ATTRIBUTE_UNUSED;
    2165        81655 :   x2 = XEXP (x1, 1);
    2166        81655 :   x3 = XEXP (x2, 0);
    2167        81655 :   operands[3] = x3;
    2168        81655 :   x4 = XEXP (x2, 1);
    2169        81655 :   operands[4] = x4;
    2170        81655 :   switch (GET_MODE (operands[0]))
    2171              :     {
    2172            1 :     case E_V32HFmode:
    2173            1 :       return pattern532 (x1, 
    2174            1 : E_V32HFmode); /* [-1, 0] */
    2175              : 
    2176            1 :     case E_V16HFmode:
    2177            1 :       if (pattern532 (x1, 
    2178              : E_V16HFmode) != 0)
    2179              :         return -1;
    2180              :       return 1;
    2181              : 
    2182           52 :     case E_V8HFmode:
    2183           52 :       if (pattern532 (x1, 
    2184              : E_V8HFmode) != 0)
    2185              :         return -1;
    2186              :       return 2;
    2187              : 
    2188            0 :     case E_V32BFmode:
    2189            0 :       if (pattern532 (x1, 
    2190              : E_V32BFmode) != 0)
    2191              :         return -1;
    2192              :       return 3;
    2193              : 
    2194            0 :     case E_V16BFmode:
    2195            0 :       if (pattern532 (x1, 
    2196              : E_V16BFmode) != 0)
    2197              :         return -1;
    2198              :       return 4;
    2199              : 
    2200            0 :     case E_V8BFmode:
    2201            0 :       if (pattern532 (x1, 
    2202              : E_V8BFmode) != 0)
    2203              :         return -1;
    2204              :       return 5;
    2205              : 
    2206            2 :     case E_V16SFmode:
    2207            2 :       if (pattern532 (x1, 
    2208              : E_V16SFmode) != 0)
    2209              :         return -1;
    2210              :       return 6;
    2211              : 
    2212            4 :     case E_V8SFmode:
    2213            4 :       if (pattern532 (x1, 
    2214              : E_V8SFmode) != 0)
    2215              :         return -1;
    2216              :       return 7;
    2217              : 
    2218         5437 :     case E_V4SFmode:
    2219         5437 :       if (pattern532 (x1, 
    2220              : E_V4SFmode) != 0)
    2221              :         return -1;
    2222              :       return 8;
    2223              : 
    2224            0 :     case E_V8DFmode:
    2225            0 :       if (pattern532 (x1, 
    2226              : E_V8DFmode) != 0)
    2227              :         return -1;
    2228              :       return 9;
    2229              : 
    2230            9 :     case E_V4DFmode:
    2231            9 :       if (pattern532 (x1, 
    2232              : E_V4DFmode) != 0)
    2233              :         return -1;
    2234              :       return 10;
    2235              : 
    2236         5411 :     case E_V2DFmode:
    2237         5411 :       if (pattern532 (x1, 
    2238              : E_V2DFmode) != 0)
    2239              :         return -1;
    2240              :       return 11;
    2241              : 
    2242              :     default:
    2243              :       return -1;
    2244              :     }
    2245              : }
    2246              : 
    2247              : int
    2248        78905 : pattern545 (rtx x1)
    2249              : {
    2250        78905 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2251        78905 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2252        78905 :   rtx x10, x11;
    2253        78905 :   int res ATTRIBUTE_UNUSED;
    2254        78905 :   x2 = XEXP (x1, 0);
    2255        78905 :   x3 = XEXP (x2, 1);
    2256        78905 :   switch (XVECLEN (x3, 0))
    2257              :     {
    2258        24552 :     case 8:
    2259        24552 :       x4 = XVECEXP (x3, 0, 0);
    2260        24552 :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2261              :         return -1;
    2262        23062 :       x5 = XVECEXP (x3, 0, 1);
    2263        23062 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2264              :         return -1;
    2265        23062 :       x6 = XVECEXP (x3, 0, 2);
    2266        23062 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2267              :         return -1;
    2268        23062 :       x7 = XVECEXP (x3, 0, 3);
    2269        23062 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2270              :         return -1;
    2271        23062 :       x8 = XVECEXP (x3, 0, 4);
    2272        23062 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2273              :         return -1;
    2274        23062 :       x9 = XVECEXP (x3, 0, 5);
    2275        23062 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2276              :         return -1;
    2277        23062 :       x10 = XVECEXP (x3, 0, 6);
    2278        23062 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2279              :         return -1;
    2280        23062 :       x11 = XVECEXP (x3, 0, 7);
    2281        23062 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
    2282        23062 :           || GET_MODE (x2) != E_V8QImode
    2283        44680 :           || !register_operand (operands[1], E_V16QImode))
    2284         4787 :         return -1;
    2285        18275 :       return pattern543 (x1); /* [-1, 2] */
    2286              : 
    2287        13576 :     case 4:
    2288        13576 :       x4 = XVECEXP (x3, 0, 0);
    2289        13576 :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2290              :         return -1;
    2291        12471 :       x5 = XVECEXP (x3, 0, 1);
    2292        12471 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2293              :         return -1;
    2294        12471 :       x6 = XVECEXP (x3, 0, 2);
    2295        12471 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2296              :         return -1;
    2297        12471 :       x7 = XVECEXP (x3, 0, 3);
    2298        12471 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2299              :         return -1;
    2300        12471 :       switch (GET_MODE (operands[0]))
    2301              :         {
    2302        10531 :         case E_V4SImode:
    2303        10531 :           res = pattern544 (x1, 
    2304              : E_V4SImode);
    2305        10531 :           if (res >= 0)
    2306         7435 :             return res + 3; /* [3, 4] */
    2307              :           return -1;
    2308              : 
    2309         1554 :         case E_V4DImode:
    2310         1554 :           res = pattern544 (x1, 
    2311              : E_V4DImode);
    2312         1554 :           if (res >= 0)
    2313          380 :             return res + 5; /* [5, 6] */
    2314              :           return -1;
    2315              : 
    2316              :         default:
    2317              :           return -1;
    2318              :         }
    2319              : 
    2320         9291 :     case 2:
    2321         9291 :       x4 = XVECEXP (x3, 0, 0);
    2322         9291 :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2323              :         return -1;
    2324         9289 :       x5 = XVECEXP (x3, 0, 1);
    2325         9289 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    2326         9140 :           || !register_operand (operands[0], E_V2DImode)
    2327        15865 :           || GET_MODE (x1) != E_V2DImode)
    2328         2713 :         return -1;
    2329         6576 :       switch (GET_MODE (x2))
    2330              :         {
    2331          284 :         case E_V2QImode:
    2332          284 :           if (!register_operand (operands[1], E_V16QImode))
    2333              :             return -1;
    2334              :           return 7;
    2335              : 
    2336          232 :         case E_V2HImode:
    2337          232 :           if (!register_operand (operands[1], E_V8HImode))
    2338              :             return -1;
    2339              :           return 8;
    2340              : 
    2341         6060 :         case E_V2SImode:
    2342         6060 :           if (!register_operand (operands[1], E_V4SImode))
    2343              :             return -1;
    2344              :           return 9;
    2345              : 
    2346              :         default:
    2347              :           return -1;
    2348              :         }
    2349              : 
    2350              :     default:
    2351              :       return -1;
    2352              :     }
    2353              : }
    2354              : 
    2355              : int
    2356          258 : pattern578 (rtx x1)
    2357              : {
    2358          258 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2359          258 :   int res ATTRIBUTE_UNUSED;
    2360          258 :   if (GET_MODE (x1) != E_SImode
    2361          258 :       || !register_operand (operands[0], E_SImode)
    2362          255 :       || !register_operand (operands[1], E_SImode)
    2363          447 :       || !register_operand (operands[2], E_SImode))
    2364          152 :     return -1;
    2365              :   return 0;
    2366              : }
    2367              : 
    2368              : int
    2369           18 : pattern583 (rtx x1)
    2370              : {
    2371           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2372           18 :   rtx x2, x3, x4;
    2373           18 :   int res ATTRIBUTE_UNUSED;
    2374           18 :   x2 = XEXP (x1, 1);
    2375           18 :   x3 = XEXP (x2, 0);
    2376           18 :   operands[2] = x3;
    2377           18 :   if (!register_operand (operands[2], E_QImode))
    2378              :     return -1;
    2379           15 :   x4 = XEXP (x2, 1);
    2380           15 :   operands[3] = x4;
    2381           15 :   if (!const_int_operand (operands[3], E_QImode))
    2382              :     return -1;
    2383           15 :   return pattern581 (x1); /* [-1, 3] */
    2384              : }
    2385              : 
    2386              : int
    2387          836 : pattern588 (rtx x1)
    2388              : {
    2389          836 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2390          836 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2391          836 :   int res ATTRIBUTE_UNUSED;
    2392          836 :   x2 = XEXP (x1, 0);
    2393          836 :   x3 = XEXP (x2, 0);
    2394          836 :   operands[0] = x3;
    2395          836 :   if (!int248_register_operand (operands[0], E_VOIDmode))
    2396              :     return -1;
    2397          836 :   x4 = XEXP (x1, 1);
    2398          836 :   x5 = XEXP (x4, 0);
    2399          836 :   x6 = XEXP (x5, 0);
    2400          836 :   x7 = XEXP (x6, 0);
    2401          836 :   x8 = XEXP (x7, 0);
    2402          836 :   if (!rtx_equal_p (x8, operands[0]))
    2403              :     return -1;
    2404          836 :   x9 = XEXP (x5, 1);
    2405          836 :   if (!rtx_equal_p (x9, operands[2]))
    2406              :     return -1;
    2407          836 :   switch (GET_MODE (operands[3]))
    2408              :     {
    2409          836 :     case E_HImode:
    2410          836 :       return pattern587 (x1, 
    2411          836 : E_HImode); /* [-1, 0] */
    2412              : 
    2413            0 :     case E_SImode:
    2414            0 :       if (pattern587 (x1, 
    2415              : E_SImode) != 0)
    2416              :         return -1;
    2417              :       return 1;
    2418              : 
    2419            0 :     case E_DImode:
    2420            0 :       if (pattern587 (x1, 
    2421              : E_DImode) != 0)
    2422              :         return -1;
    2423              :       return 2;
    2424              : 
    2425              :     default:
    2426              :       return -1;
    2427              :     }
    2428              : }
    2429              : 
    2430              : int
    2431         4420 : pattern597 (rtx x1)
    2432              : {
    2433         4420 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2434         4420 :   int res ATTRIBUTE_UNUSED;
    2435         4420 :   if (!register_operand (operands[0], E_SImode)
    2436         4420 :       || GET_MODE (x1) != E_SImode)
    2437              :     return -1;
    2438         4390 :   switch (GET_MODE (operands[1]))
    2439              :     {
    2440         1732 :     case E_V32QImode:
    2441         1732 :       if (!general_operand (operands[1], E_V32QImode)
    2442         1732 :           || !general_operand (operands[2], E_V32QImode))
    2443           22 :         return -1;
    2444              :       return 0;
    2445              : 
    2446         2457 :     case E_V32HImode:
    2447         2457 :       if (!general_operand (operands[1], E_V32HImode)
    2448         2457 :           || !general_operand (operands[2], E_V32HImode))
    2449           34 :         return -1;
    2450              :       return 1;
    2451              : 
    2452              :     default:
    2453              :       return -1;
    2454              :     }
    2455              : }
    2456              : 
    2457              : int
    2458           18 : pattern604 (rtx x1, machine_mode i1, machine_mode i2)
    2459              : {
    2460           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2461           18 :   rtx x2, x3;
    2462           18 :   int res ATTRIBUTE_UNUSED;
    2463           18 :   if (!register_operand (operands[0], i1)
    2464           18 :       || GET_MODE (x1) != i1)
    2465              :     return -1;
    2466           18 :   x2 = XEXP (x1, 0);
    2467           18 :   if (GET_MODE (x2) != i1)
    2468              :     return -1;
    2469           18 :   x3 = XEXP (x2, 0);
    2470           18 :   if (GET_MODE (x3) != i2
    2471           18 :       || !nonimmediate_operand (operands[1], i2)
    2472           36 :       || !vector_operand (operands[2], i1))
    2473            0 :     return -1;
    2474              :   return 0;
    2475              : }
    2476              : 
    2477              : int
    2478        19411 : pattern609 (rtx x1)
    2479              : {
    2480        19411 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2481        19411 :   rtx x2;
    2482        19411 :   int res ATTRIBUTE_UNUSED;
    2483        19411 :   if (GET_CODE (x1) != SUBREG
    2484         6250 :       || maybe_ne (SUBREG_BYTE (x1), 0)
    2485        25661 :       || GET_MODE (x1) != E_QImode)
    2486              :     return -1;
    2487         6250 :   x2 = XEXP (x1, 0);
    2488         6250 :   switch (GET_CODE (x2))
    2489              :     {
    2490              :     case ASHIFTRT:
    2491              :     case LSHIFTRT:
    2492              :     case SIGN_EXTRACT:
    2493              :     case ZERO_EXTRACT:
    2494              :       return 0;
    2495              : 
    2496              :     default:
    2497              :       return -1;
    2498              :     }
    2499              : }
    2500              : 
    2501              : int
    2502        18407 : pattern614 (rtx x1, machine_mode i1)
    2503              : {
    2504        18407 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2505        18407 :   rtx x2;
    2506        18407 :   int res ATTRIBUTE_UNUSED;
    2507        18407 :   if (!register_operand (operands[0], i1)
    2508        18407 :       || GET_MODE (x1) != i1)
    2509              :     return -1;
    2510        14542 :   x2 = XEXP (x1, 0);
    2511        14542 :   if (GET_MODE (x2) != i1
    2512        14542 :       || !register_no_SP_operand (operands[1], i1)
    2513        11193 :       || !const_0_to_3_operand (operands[2], E_VOIDmode)
    2514        19287 :       || !const_int_operand (operands[3], E_VOIDmode))
    2515         9797 :     return -1;
    2516              :   return 0;
    2517              : }
    2518              : 
    2519              : int
    2520        14055 : pattern618 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2521              : {
    2522        14055 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2523        14055 :   rtx x2;
    2524        14055 :   int res ATTRIBUTE_UNUSED;
    2525        14055 :   if (!register_operand (operands[0], i3)
    2526        14055 :       || GET_MODE (x1) != i3)
    2527              :     return -1;
    2528         1936 :   x2 = XEXP (x1, 0);
    2529         1936 :   if (GET_MODE (x2) != i2
    2530         1936 :       || !register_operand (operands[1], i1))
    2531          459 :     return -1;
    2532              :   return 0;
    2533              : }
    2534              : 
    2535              : int
    2536         3893 : pattern622 (rtx x1, machine_mode i1)
    2537              : {
    2538         3893 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2539         3893 :   rtx x2;
    2540         3893 :   int res ATTRIBUTE_UNUSED;
    2541         3893 :   if (!register_operand (operands[0], i1)
    2542         3893 :       || GET_MODE (x1) != i1)
    2543              :     return -1;
    2544         3864 :   x2 = XEXP (x1, 0);
    2545         3864 :   if (GET_MODE (x2) != i1
    2546         3864 :       || !register_operand (operands[1], i1)
    2547         7407 :       || !register_mmxmem_operand (operands[2], i1))
    2548         1179 :     return -1;
    2549              :   return 0;
    2550              : }
    2551              : 
    2552              : int
    2553          909 : pattern627 (rtx x1)
    2554              : {
    2555          909 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2556          909 :   rtx x2, x3, x4, x5;
    2557          909 :   int res ATTRIBUTE_UNUSED;
    2558          909 :   x2 = XEXP (x1, 0);
    2559          909 :   if (GET_CODE (x2) != MULT)
    2560              :     return -1;
    2561          909 :   x3 = XEXP (x2, 0);
    2562          909 :   if (GET_CODE (x3) != SIGN_EXTEND)
    2563              :     return -1;
    2564          909 :   x4 = XEXP (x2, 1);
    2565          909 :   if (GET_CODE (x4) != SIGN_EXTEND)
    2566              :     return -1;
    2567          899 :   x5 = XEXP (x1, 1);
    2568          899 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    2569            0 :     return -1;
    2570              :   return 0;
    2571              : }
    2572              : 
    2573              : int
    2574       863735 : pattern635 (rtx x1, machine_mode i1)
    2575              : {
    2576       863735 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2577       863735 :   int res ATTRIBUTE_UNUSED;
    2578       863735 :   if (!nonimmediate_operand (operands[0], i1)
    2579       851894 :       || GET_MODE (x1) != i1
    2580       851894 :       || !nonimmediate_operand (operands[1], i1)
    2581      1411182 :       || !nonmemory_operand (operands[2], E_QImode))
    2582       336082 :     return -1;
    2583              :   return 0;
    2584              : }
    2585              : 
    2586              : int
    2587         7706 : pattern641 (rtx x1)
    2588              : {
    2589         7706 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2590         7706 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2591         7706 :   int res ATTRIBUTE_UNUSED;
    2592         7706 :   x2 = XEXP (x1, 2);
    2593         7706 :   operands[3] = x2;
    2594         7706 :   x3 = XEXP (x1, 0);
    2595         7706 :   x4 = XVECEXP (x3, 0, 0);
    2596         7706 :   switch (GET_CODE (x4))
    2597              :     {
    2598         7182 :     case REG:
    2599         7182 :     case SUBREG:
    2600         7182 :     case MEM:
    2601         7182 :       operands[1] = x4;
    2602         7182 :       switch (GET_MODE (operands[0]))
    2603              :         {
    2604              :         case E_V32HImode:
    2605              :           return 0;
    2606              : 
    2607          366 :         case E_V16SImode:
    2608          366 :           return 1;
    2609              : 
    2610          662 :         case E_V8DImode:
    2611          662 :           return 2;
    2612              : 
    2613          486 :         case E_V16HImode:
    2614          486 :           return 3;
    2615              : 
    2616         1154 :         case E_V8SImode:
    2617         1154 :           return 4;
    2618              : 
    2619         1536 :         case E_V4DImode:
    2620         1536 :           return 5;
    2621              : 
    2622          486 :         case E_V8HImode:
    2623          486 :           return 6;
    2624              : 
    2625         1376 :         case E_V4SImode:
    2626         1376 :           return 7;
    2627              : 
    2628          936 :         case E_V2DImode:
    2629          936 :           return 8;
    2630              : 
    2631              :         default:
    2632              :           return -1;
    2633              :         }
    2634              : 
    2635          492 :     case VEC_SELECT:
    2636          492 :       if (GET_MODE (x4) != E_V2SFmode)
    2637              :         return -1;
    2638          492 :       x5 = XEXP (x4, 1);
    2639          492 :       if (GET_CODE (x5) != PARALLEL
    2640          492 :           || XVECLEN (x5, 0) != 2)
    2641              :         return -1;
    2642          492 :       x6 = XVECEXP (x5, 0, 0);
    2643          492 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2644              :         return -1;
    2645          492 :       x7 = XVECEXP (x5, 0, 1);
    2646          492 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    2647          492 :           || !register_operand (operands[0], E_V2DImode)
    2648          472 :           || GET_MODE (x1) != E_V2DImode
    2649          964 :           || GET_MODE (x3) != E_V2DImode)
    2650           20 :         return -1;
    2651          472 :       x8 = XEXP (x4, 0);
    2652          472 :       operands[1] = x8;
    2653          472 :       if (!nonimmediate_operand (operands[1], E_V4SFmode)
    2654          468 :           || !nonimm_or_0_operand (operands[2], E_V2DImode)
    2655          928 :           || !register_operand (operands[3], E_QImode))
    2656           34 :         return -1;
    2657              :       return 9;
    2658              : 
    2659              :     default:
    2660              :       return -1;
    2661              :     }
    2662              : }
    2663              : 
    2664              : int
    2665         2052 : pattern658 (rtx x1, machine_mode i1)
    2666              : {
    2667         2052 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2668         2052 :   rtx x2, x3;
    2669         2052 :   int res ATTRIBUTE_UNUSED;
    2670         2052 :   if (!register_operand (operands[0], i1)
    2671         2052 :       || GET_MODE (x1) != i1)
    2672              :     return -1;
    2673         1988 :   x2 = XVECEXP (x1, 0, 0);
    2674         1988 :   if (GET_MODE (x2) != i1)
    2675              :     return -1;
    2676         1988 :   x3 = XEXP (x2, 0);
    2677         1988 :   if (GET_MODE (x3) != i1
    2678         1988 :       || !register_operand (operands[1], i1)
    2679         3896 :       || !nonimmediate_operand (operands[2], i1))
    2680          100 :     return -1;
    2681              :   return 0;
    2682              : }
    2683              : 
    2684              : int
    2685         2643 : pattern663 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2686              : {
    2687         2643 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2688         2643 :   rtx x2, x3;
    2689         2643 :   int res ATTRIBUTE_UNUSED;
    2690         2643 :   if (!register_operand (operands[0], i2)
    2691         2643 :       || GET_MODE (x1) != i2)
    2692              :     return -1;
    2693         2575 :   x2 = XVECEXP (x1, 0, 0);
    2694         2575 :   if (GET_MODE (x2) != i2)
    2695              :     return -1;
    2696         2575 :   x3 = XEXP (x2, 0);
    2697         2575 :   if (GET_MODE (x3) != i2
    2698         2575 :       || !register_operand (operands[1], i3)
    2699         2549 :       || !nonimm_or_0_operand (operands[2], i2)
    2700         5122 :       || !register_operand (operands[3], i1))
    2701           82 :     return -1;
    2702              :   return 0;
    2703              : }
    2704              : 
    2705              : int
    2706         2397 : pattern668 (rtx x1)
    2707              : {
    2708         2397 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2709         2397 :   rtx x2, x3, x4, x5;
    2710         2397 :   int res ATTRIBUTE_UNUSED;
    2711         2397 :   x2 = XVECEXP (x1, 0, 1);
    2712         2397 :   operands[2] = x2;
    2713         2397 :   x3 = XVECEXP (x1, 0, 2);
    2714         2397 :   x4 = XEXP (x3, 0);
    2715         2397 :   operands[3] = x4;
    2716         2397 :   x5 = XEXP (x3, 1);
    2717         2397 :   operands[4] = x5;
    2718         2397 :   switch (GET_CODE (operands[4]))
    2719              :     {
    2720         1759 :     case REG:
    2721         1759 :     case SUBREG:
    2722         1759 :     case MEM:
    2723         1759 :       switch (GET_MODE (operands[0]))
    2724              :         {
    2725          308 :         case E_V8SFmode:
    2726          308 :           return pattern665 (x1, 
    2727          308 : E_V8SFmode); /* [-1, 0] */
    2728              : 
    2729          967 :         case E_V4SFmode:
    2730          967 :           if (pattern665 (x1, 
    2731              : E_V4SFmode) != 0)
    2732              :             return -1;
    2733              :           return 1;
    2734              : 
    2735          233 :         case E_V4DFmode:
    2736          233 :           if (pattern665 (x1, 
    2737              : E_V4DFmode) != 0)
    2738              :             return -1;
    2739              :           return 2;
    2740              : 
    2741          224 :         case E_V2DFmode:
    2742          224 :           if (pattern665 (x1, 
    2743              : E_V2DFmode) != 0)
    2744              :             return -1;
    2745              :           return 3;
    2746              : 
    2747              :         default:
    2748              :           return -1;
    2749              :         }
    2750              : 
    2751          447 :     case CONST_INT:
    2752          447 :     case CONST_DOUBLE:
    2753          447 :     case CONST_VECTOR:
    2754          447 :       switch (GET_MODE (operands[0]))
    2755              :         {
    2756           57 :         case E_V8SFmode:
    2757           57 :           if (pattern666 (x1, 
    2758              : E_V8SImode, 
    2759              : E_V8SFmode) != 0)
    2760              :             return -1;
    2761              :           return 4;
    2762              : 
    2763           92 :         case E_V4SFmode:
    2764           92 :           if (pattern666 (x1, 
    2765              : E_V4SImode, 
    2766              : E_V4SFmode) != 0)
    2767              :             return -1;
    2768              :           return 5;
    2769              : 
    2770           61 :         case E_V4DFmode:
    2771           61 :           if (pattern666 (x1, 
    2772              : E_V4DImode, 
    2773              : E_V4DFmode) != 0)
    2774              :             return -1;
    2775              :           return 6;
    2776              : 
    2777           65 :         case E_V2DFmode:
    2778           65 :           if (pattern666 (x1, 
    2779              : E_V2DImode, 
    2780              : E_V2DFmode) != 0)
    2781              :             return -1;
    2782              :           return 7;
    2783              : 
    2784           53 :         case E_V32QImode:
    2785           53 :           if (pattern667 (x1, 
    2786              : E_V32QImode) != 0)
    2787              :             return -1;
    2788              :           return 8;
    2789              : 
    2790          119 :         case E_V16QImode:
    2791          119 :           if (pattern667 (x1, 
    2792              : E_V16QImode) != 0)
    2793              :             return -1;
    2794              :           return 9;
    2795              : 
    2796              :         default:
    2797              :           return -1;
    2798              :         }
    2799              : 
    2800              :     default:
    2801              :       return -1;
    2802              :     }
    2803              : }
    2804              : 
    2805              : int
    2806           12 : pattern688 (rtx x1, machine_mode i1, machine_mode i2)
    2807              : {
    2808           12 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2809           12 :   rtx x2, x3, x4, x5, x6;
    2810           12 :   int res ATTRIBUTE_UNUSED;
    2811           12 :   x2 = XEXP (x1, 0);
    2812           12 :   x3 = XEXP (x2, 1);
    2813           12 :   x4 = XVECEXP (x3, 0, 0);
    2814           12 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2815              :     return -1;
    2816           12 :   x5 = XVECEXP (x3, 0, 1);
    2817           12 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    2818           12 :       || !register_operand (operands[0], E_V2DImode)
    2819           10 :       || GET_MODE (x1) != E_V2DImode
    2820           22 :       || GET_MODE (x2) != i1)
    2821            2 :     return -1;
    2822           10 :   x6 = XEXP (x2, 0);
    2823           10 :   if (GET_MODE (x6) != i2)
    2824              :     return -1;
    2825              :   return 0;
    2826              : }
    2827              : 
    2828              : int
    2829            6 : pattern694 (rtx x1)
    2830              : {
    2831            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2832            6 :   rtx x2, x3, x4, x5, x6;
    2833            6 :   int res ATTRIBUTE_UNUSED;
    2834            6 :   x2 = XVECEXP (x1, 0, 0);
    2835            6 :   x3 = XEXP (x2, 1);
    2836            6 :   x4 = XEXP (x3, 1);
    2837            6 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2838              :     return -1;
    2839            6 :   x5 = XEXP (x2, 0);
    2840            6 :   if (GET_CODE (x5) != REG
    2841            6 :       || REGNO (x5) != 17
    2842           12 :       || GET_MODE (x5) != E_CCZmode)
    2843              :     return -1;
    2844            6 :   x6 = XVECEXP (x1, 0, 1);
    2845            6 :   if (GET_CODE (x6) != CLOBBER
    2846            2 :       || GET_MODE (x3) != E_CCZmode)
    2847            4 :     return -1;
    2848              :   return 0;
    2849              : }
    2850              : 
    2851              : int
    2852        13218 : pattern701 (rtx x1)
    2853              : {
    2854        13218 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2855        13218 :   rtx x2, x3, x4, x5;
    2856        13218 :   int res ATTRIBUTE_UNUSED;
    2857        13218 :   x2 = XEXP (x1, 0);
    2858        13218 :   operands[0] = x2;
    2859        13218 :   x3 = XEXP (x1, 1);
    2860        13218 :   x4 = XEXP (x3, 1);
    2861        13218 :   x5 = XEXP (x4, 0);
    2862        13218 :   operands[2] = x5;
    2863        13218 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    2864              :     return -1;
    2865         9621 :   switch (GET_MODE (operands[0]))
    2866              :     {
    2867          236 :     case E_QImode:
    2868          236 :       return pattern699 (x3, 
    2869          236 : E_QImode); /* [-1, 0] */
    2870              : 
    2871           11 :     case E_HImode:
    2872           11 :       if (pattern699 (x3, 
    2873              : E_HImode) != 0)
    2874              :         return -1;
    2875              :       return 1;
    2876              : 
    2877          494 :     case E_SImode:
    2878          494 :       if (pattern700 (x3, 
    2879              : E_SImode) != 0)
    2880              :         return -1;
    2881              :       return 2;
    2882              : 
    2883         8832 :     case E_DImode:
    2884         8832 :       if (pattern700 (x3, 
    2885              : E_DImode) != 0)
    2886              :         return -1;
    2887              :       return 3;
    2888              : 
    2889              :     default:
    2890              :       return -1;
    2891              :     }
    2892              : }
    2893              : 
    2894              : int
    2895          242 : pattern712 (rtx x1, int i1)
    2896              : {
    2897          242 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2898          242 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2899          242 :   int res ATTRIBUTE_UNUSED;
    2900          242 :   x2 = XVECEXP (x1, 0, 0);
    2901          242 :   x3 = XEXP (x2, 1);
    2902          242 :   if (GET_MODE (x3) != E_DImode)
    2903              :     return -1;
    2904          242 :   x4 = XVECEXP (x1, 0, 1);
    2905          242 :   if (GET_CODE (x4) != SET)
    2906              :     return -1;
    2907          242 :   x5 = XEXP (x4, 1);
    2908          242 :   if (GET_CODE (x5) != UNSPEC_VOLATILE
    2909          242 :       || XVECLEN (x5, 0) != 1
    2910          242 :       || XINT (x5, 1) != i1
    2911          242 :       || GET_MODE (x5) != E_DImode
    2912          484 :       || !register_operand (operands[0], E_DImode))
    2913            0 :     return -1;
    2914          242 :   x6 = XVECEXP (x3, 0, 0);
    2915          242 :   operands[2] = x6;
    2916          242 :   if (!register_operand (operands[2], E_SImode))
    2917              :     return -1;
    2918          237 :   x7 = XEXP (x4, 0);
    2919          237 :   operands[1] = x7;
    2920          237 :   if (!register_operand (operands[1], E_DImode))
    2921              :     return -1;
    2922          237 :   x8 = XVECEXP (x5, 0, 0);
    2923          237 :   if (!rtx_equal_p (x8, operands[2]))
    2924              :     return -1;
    2925              :   return 0;
    2926              : }
    2927              : 
    2928              : int
    2929       263502 : pattern720 (rtx x1, unsigned int i1, rtx_code i2)
    2930              : {
    2931       263502 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2932       263502 :   rtx x2, x3, x4;
    2933       263502 :   int res ATTRIBUTE_UNUSED;
    2934       263502 :   if (GET_CODE (x1) != SET)
    2935              :     return -1;
    2936       235900 :   x2 = XEXP (x1, 1);
    2937       235900 :   if (GET_CODE (x2) != i2)
    2938              :     return -1;
    2939       235900 :   x3 = XEXP (x2, 0);
    2940       235900 :   if (GET_CODE (x3) != REG
    2941       235900 :       || REGNO (x3) != i1)
    2942              :     return -1;
    2943       235900 :   x4 = XEXP (x1, 0);
    2944       235900 :   if (GET_CODE (x4) != REG
    2945       235900 :       || REGNO (x4) != i1)
    2946            0 :     return -1;
    2947              :   return 0;
    2948              : }
    2949              : 
    2950              : int
    2951        17392 : pattern727 (rtx x1, machine_mode i1, machine_mode i2)
    2952              : {
    2953        17392 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2954        17392 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2955        17392 :   int res ATTRIBUTE_UNUSED;
    2956        17392 :   x2 = XVECEXP (x1, 0, 0);
    2957        17392 :   x3 = XEXP (x2, 1);
    2958        17392 :   x4 = XEXP (x3, 0);
    2959        17392 :   x5 = XEXP (x4, 0);
    2960        17392 :   if (GET_MODE (x5) != i2
    2961        17392 :       || !nonimmediate_operand (operands[1], i1)
    2962        31746 :       || !const_scalar_int_operand (operands[3], i2))
    2963         8042 :     return -1;
    2964         9350 :   x6 = XEXP (x3, 1);
    2965         9350 :   if (GET_MODE (x6) != i2)
    2966              :     return -1;
    2967         9350 :   x7 = XEXP (x6, 0);
    2968         9350 :   if (GET_MODE (x7) != i1
    2969         9350 :       || !x86_64_hilo_general_operand (operands[2], i1)
    2970        18316 :       || !nonimmediate_operand (operands[0], i1))
    2971          384 :     return -1;
    2972         8966 :   x8 = XVECEXP (x1, 0, 1);
    2973         8966 :   x9 = XEXP (x8, 1);
    2974         8966 :   if (GET_MODE (x9) != i1)
    2975              :     return -1;
    2976              :   return 0;
    2977              : }
    2978              : 
    2979              : int
    2980       224806 : pattern736 (rtx x1, machine_mode i1)
    2981              : {
    2982       224806 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2983       224806 :   rtx x2, x3, x4, x5, x6;
    2984       224806 :   int res ATTRIBUTE_UNUSED;
    2985       224806 :   if (!register_operand (operands[0], i1)
    2986       224806 :       || GET_CODE (x1) != SET)
    2987              :     return -1;
    2988       182451 :   x2 = XEXP (x1, 1);
    2989       182451 :   if (GET_CODE (x2) != PLUS
    2990         5189 :       || GET_MODE (x2) != E_SImode)
    2991              :     return -1;
    2992         3966 :   x3 = XEXP (x1, 0);
    2993         3966 :   operands[3] = x3;
    2994         3966 :   if (!register_operand (operands[3], E_SImode))
    2995              :     return -1;
    2996         3966 :   x4 = XEXP (x2, 0);
    2997         3966 :   operands[4] = x4;
    2998         3966 :   if (!register_operand (operands[4], E_SImode))
    2999              :     return -1;
    3000         3895 :   x5 = XEXP (x2, 1);
    3001         3895 :   operands[2] = x5;
    3002         3895 :   if (!nonmemory_operand (operands[2], E_SImode))
    3003              :     return -1;
    3004         3888 :   x6 = PATTERN (peep2_next_insn (2));
    3005         3888 :   return pattern735 (x6, 
    3006         3888 : i1); /* [-1, 0] */
    3007              : }
    3008              : 
    3009              : int
    3010         3541 : pattern748 (rtx x1)
    3011              : {
    3012         3541 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3013         3541 :   rtx x2, x3;
    3014         3541 :   int res ATTRIBUTE_UNUSED;
    3015         3541 :   x2 = XEXP (x1, 1);
    3016         3541 :   operands[3] = x2;
    3017         3541 :   switch (GET_MODE (operands[0]))
    3018              :     {
    3019          873 :     case E_HImode:
    3020          873 :       if (!register_operand (operands[0], E_HImode)
    3021          873 :           || GET_MODE (x1) != E_HImode)
    3022              :         return -1;
    3023          849 :       x3 = XEXP (x1, 0);
    3024          849 :       if (GET_MODE (x3) != E_HImode
    3025          849 :           || !register_operand (operands[3], E_HImode))
    3026          144 :         return -1;
    3027          705 :       return pattern746 (); /* [-1, 2] */
    3028              : 
    3029         1808 :     case E_QImode:
    3030         1808 :       if (!register_operand (operands[0], E_QImode)
    3031         1808 :           || GET_MODE (x1) != E_QImode)
    3032              :         return -1;
    3033         1754 :       x3 = XEXP (x1, 0);
    3034         1754 :       if (GET_MODE (x3) != E_QImode
    3035         1754 :           || !register_operand (operands[3], E_QImode))
    3036          304 :         return -1;
    3037         1450 :       res = pattern747 ();
    3038         1450 :       if (res >= 0)
    3039         1444 :         return res + 3; /* [3, 8] */
    3040              :       return -1;
    3041              : 
    3042              :     default:
    3043              :       return -1;
    3044              :     }
    3045              : }
    3046              : 
    3047              : int
    3048           49 : pattern760 (rtx x1, int *pnum_clobbers)
    3049              : {
    3050           49 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3051           49 :   rtx x2, x3, x4, x5;
    3052           49 :   int res ATTRIBUTE_UNUSED;
    3053           49 :   if (pnum_clobbers == NULL)
    3054              :     return -1;
    3055           49 :   x2 = XEXP (x1, 0);
    3056           49 :   x3 = XEXP (x2, 1);
    3057           49 :   x4 = XEXP (x3, 0);
    3058           49 :   if (GET_CODE (x4) != REG
    3059           49 :       || REGNO (x4) != 17)
    3060              :     return -1;
    3061           25 :   x5 = XEXP (x3, 1);
    3062           25 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3063              :     return -1;
    3064           25 :   return pattern279 (x1); /* [-1, 4] */
    3065              : }
    3066              : 
    3067              : int
    3068           30 : pattern769 (rtx x1)
    3069              : {
    3070           30 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3071           30 :   rtx x2, x3;
    3072           30 :   int res ATTRIBUTE_UNUSED;
    3073           30 :   x2 = XEXP (x1, 0);
    3074           30 :   operands[1] = x2;
    3075           30 :   x3 = XEXP (x1, 1);
    3076           30 :   operands[2] = x3;
    3077           30 :   switch (GET_MODE (x1))
    3078              :     {
    3079            0 :     case E_V8SFmode:
    3080            0 :       if (!register_operand (operands[1], E_V8SImode)
    3081            0 :           || !const0_operand (operands[2], E_V8SImode))
    3082            0 :         return -1;
    3083              :       return 0;
    3084              : 
    3085            0 :     case E_V4SFmode:
    3086            0 :       if (!register_operand (operands[1], E_V4SImode)
    3087            0 :           || !const0_operand (operands[2], E_V4SImode))
    3088            0 :         return -1;
    3089              :       return 1;
    3090              : 
    3091           10 :     case E_V4DFmode:
    3092           10 :       if (!register_operand (operands[1], E_V4DImode)
    3093           10 :           || !const0_operand (operands[2], E_V4DImode))
    3094            0 :         return -1;
    3095              :       return 2;
    3096              : 
    3097            0 :     case E_V2DFmode:
    3098            0 :       if (!register_operand (operands[1], E_V2DImode)
    3099            0 :           || !const0_operand (operands[2], E_V2DImode))
    3100            0 :         return -1;
    3101              :       return 3;
    3102              : 
    3103           11 :     case E_V32QImode:
    3104           11 :       if (!register_operand (operands[1], E_V32QImode)
    3105           11 :           || !const0_operand (operands[2], E_V32QImode))
    3106            0 :         return -1;
    3107              :       return 4;
    3108              : 
    3109            9 :     case E_V16QImode:
    3110            9 :       if (!register_operand (operands[1], E_V16QImode)
    3111            9 :           || !const0_operand (operands[2], E_V16QImode))
    3112            0 :         return -1;
    3113              :       return 5;
    3114              : 
    3115              :     default:
    3116              :       return -1;
    3117              :     }
    3118              : }
    3119              : 
    3120              : int
    3121            0 : pattern784 (rtx x1)
    3122              : {
    3123            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3124            0 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3125            0 :   rtx x10;
    3126            0 :   int res ATTRIBUTE_UNUSED;
    3127            0 :   x2 = XVECEXP (x1, 0, 0);
    3128            0 :   x3 = XEXP (x2, 2);
    3129            0 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3130              :     return -1;
    3131            0 :   x4 = XEXP (x2, 0);
    3132            0 :   x5 = XEXP (x4, 0);
    3133            0 :   x6 = XEXP (x5, 0);
    3134            0 :   operands[1] = x6;
    3135            0 :   x7 = XEXP (x5, 1);
    3136            0 :   operands[2] = x7;
    3137            0 :   x8 = XEXP (x4, 1);
    3138            0 :   operands[3] = x8;
    3139            0 :   x9 = XEXP (x4, 2);
    3140            0 :   operands[4] = x9;
    3141            0 :   if (!register_operand (operands[4], E_QImode))
    3142              :     return -1;
    3143            0 :   x10 = XVECEXP (x1, 0, 1);
    3144            0 :   operands[5] = x10;
    3145            0 :   if (!const48_operand (operands[5], E_SImode))
    3146              :     return -1;
    3147            0 :   return pattern782 (x1); /* [-1, 2] */
    3148              : }
    3149              : 
    3150              : int
    3151       182882 : pattern801 (rtx x1, machine_mode i1, machine_mode i2)
    3152              : {
    3153       182882 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3154       182882 :   int res ATTRIBUTE_UNUSED;
    3155       182882 :   if (!register_operand (operands[0], i2)
    3156       176125 :       || GET_MODE (x1) != i2
    3157       176125 :       || !nonimmediate_operand (operands[1], i1)
    3158       350872 :       || !nonimm_or_0_operand (operands[2], i1))
    3159        21266 :     return -1;
    3160              :   return 0;
    3161              : }
    3162              : 
    3163              : int
    3164          748 : pattern808 (rtx x1, machine_mode i1, machine_mode i2)
    3165              : {
    3166          748 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3167          748 :   rtx x2;
    3168          748 :   int res ATTRIBUTE_UNUSED;
    3169          748 :   if (!register_operand (operands[0], i1)
    3170          748 :       || GET_MODE (x1) != i1)
    3171              :     return -1;
    3172          745 :   x2 = XEXP (x1, 0);
    3173          745 :   if (GET_MODE (x2) != i2
    3174          745 :       || !nonimmediate_operand (operands[1], i1)
    3175         1466 :       || !const0_operand (operands[2], i1))
    3176          226 :     return -1;
    3177              :   return 0;
    3178              : }
    3179              : 
    3180              : int
    3181            9 : pattern815 (rtx x1, machine_mode i1)
    3182              : {
    3183            9 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3184            9 :   rtx x2;
    3185            9 :   int res ATTRIBUTE_UNUSED;
    3186            9 :   if (!register_operand (operands[0], i1)
    3187            9 :       || GET_MODE (x1) != i1)
    3188              :     return -1;
    3189            9 :   x2 = XEXP (x1, 0);
    3190            9 :   if (GET_MODE (x2) != i1
    3191            9 :       || !bcst_vector_operand (operands[1], i1)
    3192           10 :       || !bcst_vector_operand (operands[2], i1))
    3193            8 :     return -1;
    3194              :   return 0;
    3195              : }
    3196              : 
    3197              : int
    3198        13904 : pattern820 (rtx x1)
    3199              : {
    3200        13904 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3201        13904 :   int res ATTRIBUTE_UNUSED;
    3202        13904 :   switch (GET_MODE (operands[0]))
    3203              :     {
    3204         1573 :     case E_QImode:
    3205         1573 :       if (!register_operand (operands[0], E_QImode)
    3206         1553 :           || GET_MODE (x1) != E_QImode
    3207         3126 :           || !register_operand (operands[1], E_QImode))
    3208           46 :         return -1;
    3209              :       return 0;
    3210              : 
    3211         9394 :     case E_HImode:
    3212         9394 :       if (!register_operand (operands[0], E_HImode)
    3213         9374 :           || GET_MODE (x1) != E_HImode
    3214        18768 :           || !register_operand (operands[1], E_HImode))
    3215         2969 :         return -1;
    3216              :       return 1;
    3217              : 
    3218         1959 :     case E_SImode:
    3219         1959 :       if (!register_operand (operands[0], E_SImode)
    3220         1939 :           || GET_MODE (x1) != E_SImode
    3221         3898 :           || !register_operand (operands[1], E_SImode))
    3222           52 :         return -1;
    3223              :       return 2;
    3224              : 
    3225          978 :     case E_DImode:
    3226          978 :       if (!register_operand (operands[0], E_DImode)
    3227          958 :           || GET_MODE (x1) != E_DImode
    3228         1936 :           || !register_operand (operands[1], E_DImode))
    3229           87 :         return -1;
    3230              :       return 3;
    3231              : 
    3232              :     default:
    3233              :       return -1;
    3234              :     }
    3235              : }
    3236              : 
    3237              : int
    3238           63 : pattern830 (rtx x1, int *pnum_clobbers)
    3239              : {
    3240           63 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3241           63 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3242           63 :   int res ATTRIBUTE_UNUSED;
    3243           63 :   x2 = XVECEXP (x1, 0, 0);
    3244           63 :   x3 = XEXP (x2, 1);
    3245           63 :   x4 = XEXP (x3, 0);
    3246           63 :   x5 = XEXP (x4, 0);
    3247           63 :   if (GET_MODE (x5) != E_SImode)
    3248              :     return -1;
    3249           41 :   x6 = XEXP (x3, 1);
    3250           41 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
    3251              :     return -1;
    3252            0 :   x7 = XEXP (x2, 0);
    3253            0 :   operands[0] = x7;
    3254            0 :   if (!register_operand (operands[0], E_DImode)
    3255            0 :       || GET_MODE (x3) != E_DImode
    3256            0 :       || GET_MODE (x4) != E_DImode)
    3257              :     return -1;
    3258            0 :   x8 = XEXP (x5, 0);
    3259            0 :   operands[1] = x8;
    3260            0 :   if (!nonimmediate_operand (operands[1], E_SImode))
    3261              :     return -1;
    3262            0 :   x9 = XVECEXP (x1, 0, 1);
    3263            0 :   return pattern829 (x9, pnum_clobbers); /* [-1, 1] */
    3264              : }
    3265              : 
    3266              : int
    3267            8 : pattern838 (rtx x1)
    3268              : {
    3269            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3270            8 :   rtx x2, x3, x4, x5;
    3271            8 :   int res ATTRIBUTE_UNUSED;
    3272            8 :   x2 = XVECEXP (x1, 0, 2);
    3273            8 :   if (GET_CODE (x2) != CLOBBER)
    3274              :     return -1;
    3275            8 :   x3 = XEXP (x2, 0);
    3276            8 :   if (GET_CODE (x3) != REG
    3277            8 :       || REGNO (x3) != 17
    3278           16 :       || GET_MODE (x3) != E_CCmode)
    3279              :     return -1;
    3280            8 :   x4 = XVECEXP (x1, 0, 0);
    3281            8 :   x5 = XEXP (x4, 0);
    3282            8 :   operands[0] = x5;
    3283            8 :   return 0;
    3284              : }
    3285              : 
    3286              : int
    3287           54 : pattern842 (rtx x1)
    3288              : {
    3289           54 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3290           54 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3291           54 :   int res ATTRIBUTE_UNUSED;
    3292           54 :   x2 = XEXP (x1, 1);
    3293           54 :   x3 = XEXP (x2, 0);
    3294           54 :   if (GET_MODE (x3) != E_DImode)
    3295              :     return -1;
    3296           54 :   x4 = XEXP (x3, 0);
    3297           54 :   if (GET_CODE (x4) != MINUS
    3298           54 :       || GET_MODE (x4) != E_SImode)
    3299              :     return -1;
    3300           54 :   x5 = XEXP (x4, 0);
    3301           54 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
    3302              :     return -1;
    3303           54 :   x6 = XEXP (x4, 1);
    3304           54 :   if (GET_CODE (x6) != SUBREG
    3305           54 :       || maybe_ne (SUBREG_BYTE (x6), 0)
    3306          108 :       || GET_MODE (x6) != E_SImode)
    3307              :     return -1;
    3308           54 :   x7 = XEXP (x6, 0);
    3309           54 :   if (GET_CODE (x7) != CLZ
    3310           54 :       || GET_MODE (x7) != E_DImode)
    3311              :     return -1;
    3312           54 :   x8 = XEXP (x2, 1);
    3313           54 :   if (XWINT (x8, 0) != 63L
    3314           54 :       || !register_operand (operands[0], E_DImode)
    3315           54 :       || GET_MODE (x1) != E_DImode
    3316           54 :       || !const_int_operand (operands[2], E_DImode)
    3317           92 :       || GET_MODE (x2) != E_DImode)
    3318           16 :     return -1;
    3319           38 :   x9 = XEXP (x7, 0);
    3320           38 :   operands[1] = x9;
    3321           38 :   if (!nonimmediate_operand (operands[1], E_DImode))
    3322              :     return -1;
    3323              :   return 0;
    3324              : }
    3325              : 
    3326              : int
    3327          176 : pattern855 (rtx x1)
    3328              : {
    3329          176 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3330          176 :   rtx x2, x3, x4, x5, x6, x7;
    3331          176 :   int res ATTRIBUTE_UNUSED;
    3332          176 :   x2 = XVECEXP (x1, 0, 0);
    3333          176 :   if (GET_CODE (x2) != VEC_SELECT)
    3334              :     return -1;
    3335          176 :   x3 = XEXP (x2, 1);
    3336          176 :   if (GET_CODE (x3) != PARALLEL
    3337          176 :       || XVECLEN (x3, 0) != 1)
    3338              :     return -1;
    3339          176 :   x4 = XVECEXP (x3, 0, 0);
    3340          176 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3341              :     return -1;
    3342          176 :   x5 = XVECEXP (x1, 0, 1);
    3343          176 :   if (GET_CODE (x5) != VEC_SELECT)
    3344              :     return -1;
    3345          176 :   x6 = XEXP (x5, 1);
    3346          176 :   if (GET_CODE (x6) != PARALLEL
    3347          176 :       || XVECLEN (x6, 0) != 1)
    3348              :     return -1;
    3349          176 :   x7 = XVECEXP (x6, 0, 0);
    3350          176 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3351            0 :     return -1;
    3352              :   return 0;
    3353              : }
    3354              : 
    3355              : int
    3356         1051 : pattern863 (rtx x1, machine_mode i1, machine_mode i2)
    3357              : {
    3358         1051 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3359         1051 :   rtx x2, x3, x4, x5;
    3360         1051 :   int res ATTRIBUTE_UNUSED;
    3361         1051 :   if (!register_operand (operands[0], i2)
    3362         1051 :       || GET_MODE (x1) != i2)
    3363              :     return -1;
    3364          674 :   x2 = XEXP (x1, 0);
    3365          674 :   if (GET_MODE (x2) != i2)
    3366              :     return -1;
    3367          674 :   x3 = XEXP (x2, 0);
    3368          674 :   if (GET_MODE (x3) != i1
    3369          674 :       || !register_operand (operands[1], i2)
    3370         1300 :       || !register_mmxmem_operand (operands[2], i2))
    3371           80 :     return -1;
    3372          594 :   x4 = XEXP (x1, 1);
    3373          594 :   if (GET_MODE (x4) != i2)
    3374              :     return -1;
    3375          594 :   x5 = XEXP (x4, 0);
    3376          594 :   if (GET_MODE (x5) != i1)
    3377              :     return -1;
    3378              :   return 0;
    3379              : }
    3380              : 
    3381              : int
    3382         5678 : pattern869 (rtx x1)
    3383              : {
    3384         5678 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3385         5678 :   rtx x2, x3, x4;
    3386         5678 :   int res ATTRIBUTE_UNUSED;
    3387         5678 :   x2 = XVECEXP (x1, 0, 0);
    3388         5678 :   x3 = XEXP (x2, 1);
    3389         5678 :   operands[1] = x3;
    3390         5678 :   x4 = XEXP (x2, 0);
    3391         5678 :   if (!rtx_equal_p (x4, operands[0]))
    3392              :     return -1;
    3393         3555 :   switch (GET_MODE (operands[0]))
    3394              :     {
    3395          405 :     case E_QImode:
    3396          405 :       return pattern868 (x1, 
    3397          405 : E_QImode); /* [-1, 0] */
    3398              : 
    3399          139 :     case E_HImode:
    3400          139 :       if (pattern868 (x1, 
    3401              : E_HImode) != 0)
    3402              :         return -1;
    3403              :       return 1;
    3404              : 
    3405              :     default:
    3406              :       return -1;
    3407              :     }
    3408              : }
    3409              : 
    3410              : int
    3411         5796 : pattern876 (rtx x1, machine_mode i1)
    3412              : {
    3413         5796 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3414         5796 :   rtx x2;
    3415         5796 :   int res ATTRIBUTE_UNUSED;
    3416         5796 :   if (!register_operand (operands[0], i1)
    3417         5796 :       || GET_MODE (x1) != i1)
    3418              :     return -1;
    3419         5626 :   x2 = XEXP (x1, 0);
    3420         5626 :   if (GET_MODE (x2) != i1
    3421         5626 :       || !bcst_vector_operand (operands[1], i1)
    3422         4974 :       || !bcst_vector_operand (operands[2], i1)
    3423        10083 :       || !bcst_vector_operand (operands[3], i1))
    3424         1187 :     return -1;
    3425              :   return 0;
    3426              : }
    3427              : 
    3428              : int
    3429         2300 : pattern885 (rtx x1)
    3430              : {
    3431         2300 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3432         2300 :   rtx x2, x3, x4, x5, x6;
    3433         2300 :   int res ATTRIBUTE_UNUSED;
    3434         2300 :   x2 = XVECEXP (x1, 0, 0);
    3435         2300 :   x3 = XVECEXP (x2, 0, 0);
    3436         2300 :   if (GET_CODE (x3) != VEC_SELECT)
    3437              :     return -1;
    3438         1392 :   x4 = XEXP (x3, 1);
    3439         1392 :   if (GET_CODE (x4) != PARALLEL
    3440         1392 :       || XVECLEN (x4, 0) != 1)
    3441              :     return -1;
    3442         1392 :   x5 = XVECEXP (x4, 0, 0);
    3443         1392 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3444              :     return -1;
    3445         1392 :   x6 = XEXP (x3, 0);
    3446         1392 :   operands[1] = x6;
    3447         1392 :   if (!const_4_or_8_to_11_operand (operands[2], E_SImode))
    3448              :     return -1;
    3449         1392 :   switch (GET_MODE (operands[0]))
    3450              :     {
    3451          702 :     case E_SImode:
    3452          702 :       return pattern884 (x1, 
    3453          702 : E_SImode); /* [-1, 2] */
    3454              : 
    3455          690 :     case E_DImode:
    3456          690 :       res = pattern884 (x1, 
    3457              : E_DImode);
    3458          690 :       if (res >= 0)
    3459          642 :         return res + 3; /* [3, 5] */
    3460              :       return -1;
    3461              : 
    3462              :     default:
    3463              :       return -1;
    3464              :     }
    3465              : }
    3466              : 
    3467              : int
    3468         1535 : pattern898 (rtx x1, machine_mode i1, machine_mode i2)
    3469              : {
    3470         1535 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3471         1535 :   rtx x2;
    3472         1535 :   int res ATTRIBUTE_UNUSED;
    3473         1535 :   if (!register_operand (operands[0], i1)
    3474         1535 :       || GET_MODE (x1) != i1)
    3475              :     return -1;
    3476         1468 :   x2 = XEXP (x1, 0);
    3477         1468 :   if (GET_MODE (x2) != i1
    3478         1468 :       || !vector_operand (operands[1], i1)
    3479         1468 :       || !nonimm_or_0_operand (operands[2], i1)
    3480         2909 :       || !register_operand (operands[3], i2))
    3481           27 :     return -1;
    3482              :   return 0;
    3483              : }
    3484              : 
    3485              : int
    3486         4624 : pattern907 (rtx x1)
    3487              : {
    3488         4624 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3489         4624 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3490         4624 :   rtx x10, x11, x12;
    3491         4624 :   int res ATTRIBUTE_UNUSED;
    3492         4624 :   if (!register_operand (operands[3], E_QImode))
    3493              :     return -1;
    3494         4280 :   x2 = XEXP (x1, 0);
    3495         4280 :   x3 = XEXP (x2, 0);
    3496         4280 :   x4 = XEXP (x3, 1);
    3497         4280 :   switch (XVECLEN (x4, 0))
    3498              :     {
    3499         1336 :     case 8:
    3500         1336 :       x5 = XVECEXP (x4, 0, 0);
    3501         1336 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3502              :         return -1;
    3503         1336 :       x6 = XVECEXP (x4, 0, 1);
    3504         1336 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3505              :         return -1;
    3506         1336 :       x7 = XVECEXP (x4, 0, 2);
    3507         1336 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    3508              :         return -1;
    3509         1336 :       x8 = XVECEXP (x4, 0, 3);
    3510         1336 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    3511              :         return -1;
    3512         1336 :       x9 = XVECEXP (x4, 0, 4);
    3513         1336 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    3514              :         return -1;
    3515         1336 :       x10 = XVECEXP (x4, 0, 5);
    3516         1336 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    3517              :         return -1;
    3518         1336 :       x11 = XVECEXP (x4, 0, 6);
    3519         1336 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    3520              :         return -1;
    3521         1336 :       x12 = XVECEXP (x4, 0, 7);
    3522         1336 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
    3523         1336 :           || GET_MODE (x3) != E_V8QImode
    3524         2672 :           || !register_operand (operands[1], E_V16QImode))
    3525           32 :         return -1;
    3526         1304 :       switch (GET_MODE (operands[0]))
    3527              :         {
    3528          402 :         case E_V8HImode:
    3529          402 :           return pattern143 (x1, 
    3530          402 : E_V8HImode); /* [-1, 0] */
    3531              : 
    3532          425 :         case E_V8SImode:
    3533          425 :           if (pattern143 (x1, 
    3534              : E_V8SImode) != 0)
    3535              :             return -1;
    3536              :           return 1;
    3537              : 
    3538          477 :         case E_V8DImode:
    3539          477 :           if (pattern143 (x1, 
    3540              : E_V8DImode) != 0)
    3541              :             return -1;
    3542              :           return 2;
    3543              : 
    3544              :         default:
    3545              :           return -1;
    3546              :         }
    3547              : 
    3548         1707 :     case 4:
    3549         1707 :       x5 = XVECEXP (x4, 0, 0);
    3550         1707 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3551              :         return -1;
    3552         1707 :       x6 = XVECEXP (x4, 0, 1);
    3553         1707 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3554              :         return -1;
    3555         1707 :       x7 = XVECEXP (x4, 0, 2);
    3556         1707 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    3557              :         return -1;
    3558         1707 :       x8 = XVECEXP (x4, 0, 3);
    3559         1707 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    3560              :         return -1;
    3561         1707 :       switch (GET_MODE (operands[0]))
    3562              :         {
    3563          828 :         case E_V4SImode:
    3564          828 :           res = pattern906 (x1, 
    3565              : E_V4SImode);
    3566          828 :           if (res >= 0)
    3567          788 :             return res + 3; /* [3, 4] */
    3568              :           return -1;
    3569              : 
    3570          879 :         case E_V4DImode:
    3571          879 :           res = pattern906 (x1, 
    3572              : E_V4DImode);
    3573          879 :           if (res >= 0)
    3574          779 :             return res + 5; /* [5, 6] */
    3575              :           return -1;
    3576              : 
    3577              :         default:
    3578              :           return -1;
    3579              :         }
    3580              : 
    3581         1237 :     case 2:
    3582         1237 :       x5 = XVECEXP (x4, 0, 0);
    3583         1237 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3584              :         return -1;
    3585         1237 :       x6 = XVECEXP (x4, 0, 1);
    3586         1237 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    3587         1237 :           || !register_operand (operands[0], E_V2DImode)
    3588         1183 :           || GET_MODE (x1) != E_V2DImode
    3589         1183 :           || GET_MODE (x2) != E_V2DImode
    3590         2420 :           || !nonimm_or_0_operand (operands[2], E_V2DImode))
    3591           91 :         return -1;
    3592         1146 :       switch (GET_MODE (x3))
    3593              :         {
    3594          390 :         case E_V2QImode:
    3595          390 :           if (!register_operand (operands[1], E_V16QImode))
    3596              :             return -1;
    3597              :           return 7;
    3598              : 
    3599          378 :         case E_V2HImode:
    3600          378 :           if (!register_operand (operands[1], E_V8HImode))
    3601              :             return -1;
    3602              :           return 8;
    3603              : 
    3604          378 :         case E_V2SImode:
    3605          378 :           if (!register_operand (operands[1], E_V4SImode))
    3606              :             return -1;
    3607              :           return 9;
    3608              : 
    3609              :         default:
    3610              :           return -1;
    3611              :         }
    3612              : 
    3613              :     default:
    3614              :       return -1;
    3615              :     }
    3616              : }
    3617              : 
    3618              : int
    3619         8017 : pattern948 (rtx x1)
    3620              : {
    3621         8017 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3622         8017 :   rtx x2;
    3623         8017 :   int res ATTRIBUTE_UNUSED;
    3624         8017 :   x2 = XEXP (x1, 1);
    3625         8017 :   operands[1] = x2;
    3626         8017 :   switch (GET_MODE (operands[0]))
    3627              :     {
    3628          619 :     case E_SImode:
    3629          619 :       return pattern947 (x1, 
    3630          619 : E_SImode); /* [-1, 0] */
    3631              : 
    3632         7244 :     case E_DImode:
    3633         7244 :       if (pattern947 (x1, 
    3634              : E_DImode) != 0)
    3635              :         return -1;
    3636              :       return 1;
    3637              : 
    3638              :     default:
    3639              :       return -1;
    3640              :     }
    3641              : }
    3642              : 
    3643              : int
    3644       137608 : pattern957 (rtx x1, machine_mode i1)
    3645              : {
    3646       137608 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3647       137608 :   int res ATTRIBUTE_UNUSED;
    3648       137608 :   if (!nonimmediate_operand (operands[0], i1)
    3649       137608 :       || GET_MODE (x1) != i1
    3650       137608 :       || !nonimmediate_operand (operands[1], i1)
    3651       274007 :       || !float_vector_all_ones_operand (operands[2], i1))
    3652       137601 :     return -1;
    3653              :   return 0;
    3654              : }
    3655              : 
    3656              : int
    3657        12486 : pattern963 (rtx x1, machine_mode i1)
    3658              : {
    3659        12486 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3660        12486 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3661        12486 :   int res ATTRIBUTE_UNUSED;
    3662        12486 :   if (GET_CODE (x1) != SET)
    3663              :     return -1;
    3664        11216 :   x2 = XEXP (x1, 1);
    3665        11216 :   if (GET_CODE (x2) != IF_THEN_ELSE
    3666         9501 :       || GET_MODE (x2) != i1)
    3667              :     return -1;
    3668         1078 :   x3 = XEXP (x2, 0);
    3669         1078 :   if (!ix86_comparison_operator (x3, E_VOIDmode))
    3670              :     return -1;
    3671         1078 :   operands[4] = x3;
    3672         1078 :   x4 = XEXP (x3, 0);
    3673         1078 :   if (GET_CODE (x4) != REG
    3674         1078 :       || REGNO (x4) != 17)
    3675              :     return -1;
    3676         1078 :   x5 = XEXP (x3, 1);
    3677         1078 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3678              :     return -1;
    3679         1078 :   x6 = XEXP (x2, 1);
    3680         1078 :   if (!rtx_equal_p (x6, operands[0]))
    3681              :     return -1;
    3682          958 :   x7 = XEXP (x2, 2);
    3683          958 :   if (!rtx_equal_p (x7, operands[2]))
    3684              :     return -1;
    3685          901 :   x8 = XEXP (x1, 0);
    3686          901 :   if (!rtx_equal_p (x8, operands[0]))
    3687              :     return -1;
    3688              :   return 0;
    3689              : }
    3690              : 
    3691              : int
    3692         8439 : pattern970 (rtx x1, machine_mode i1)
    3693              : {
    3694         8439 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3695         8439 :   int res ATTRIBUTE_UNUSED;
    3696         8439 :   if (!register_operand (operands[0], i1)
    3697         8087 :       || GET_MODE (x1) != i1
    3698         8087 :       || !nonimmediate_operand (operands[2], i1)
    3699        16416 :       || !register_operand (operands[1], i1))
    3700          945 :     return -1;
    3701              :   return 0;
    3702              : }
    3703              : 
    3704              : int
    3705           57 : pattern974 (rtx x1)
    3706              : {
    3707           57 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3708           57 :   rtx x2;
    3709           57 :   int res ATTRIBUTE_UNUSED;
    3710           57 :   if (!register_operand (operands[0], E_HImode)
    3711           57 :       || GET_MODE (x1) != E_HImode)
    3712              :     return -1;
    3713           57 :   x2 = XEXP (x1, 0);
    3714           57 :   if (GET_MODE (x2) != E_HImode)
    3715              :     return -1;
    3716           57 :   switch (GET_MODE (operands[1]))
    3717              :     {
    3718           21 :     case E_V16SImode:
    3719           21 :       if (!register_operand (operands[1], E_V16SImode)
    3720           21 :           || !nonimmediate_operand (operands[2], E_V16SImode)
    3721           42 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3722            0 :         return -1;
    3723              :       return 0;
    3724              : 
    3725            0 :     case E_V16HFmode:
    3726            0 :       if (!register_operand (operands[1], E_V16HFmode)
    3727            0 :           || !nonimmediate_operand (operands[2], E_V16HFmode)
    3728            0 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3729            0 :         return -1;
    3730              :       return 1;
    3731              : 
    3732           30 :     case E_V16SFmode:
    3733           30 :       if (!register_operand (operands[1], E_V16SFmode)
    3734           30 :           || !nonimmediate_operand (operands[2], E_V16SFmode)
    3735           60 :           || !const_0_to_31_operand (operands[3], E_SImode))
    3736            0 :         return -1;
    3737              :       return 2;
    3738              : 
    3739            3 :     case E_V16QImode:
    3740            3 :       if (!register_operand (operands[1], E_V16QImode)
    3741            3 :           || !nonimmediate_operand (operands[2], E_V16QImode)
    3742            6 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3743            0 :         return -1;
    3744              :       return 3;
    3745              : 
    3746            3 :     case E_V16HImode:
    3747            3 :       if (!register_operand (operands[1], E_V16HImode)
    3748            3 :           || !nonimmediate_operand (operands[2], E_V16HImode)
    3749            6 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3750            0 :         return -1;
    3751              :       return 4;
    3752              : 
    3753              :     default:
    3754              :       return -1;
    3755              :     }
    3756              : }
    3757              : 
    3758              : int
    3759           11 : pattern983 (rtx x1)
    3760              : {
    3761           11 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3762           11 :   rtx x2, x3;
    3763           11 :   int res ATTRIBUTE_UNUSED;
    3764           11 :   x2 = XEXP (x1, 0);
    3765           11 :   operands[1] = x2;
    3766           11 :   x3 = XEXP (x1, 1);
    3767           11 :   operands[2] = x3;
    3768           11 :   switch (GET_MODE (x1))
    3769              :     {
    3770            0 :     case E_V8SFmode:
    3771            0 :       if (!register_operand (operands[1], E_V8SImode)
    3772            0 :           || !const0_operand (operands[2], E_V8SImode))
    3773            0 :         return -1;
    3774              :       return 0;
    3775              : 
    3776            0 :     case E_V4SFmode:
    3777            0 :       if (!register_operand (operands[1], E_V4SImode)
    3778            0 :           || !const0_operand (operands[2], E_V4SImode))
    3779            0 :         return -1;
    3780              :       return 1;
    3781              : 
    3782            3 :     case E_V4DFmode:
    3783            3 :       if (!register_operand (operands[1], E_V4DImode)
    3784            3 :           || !const0_operand (operands[2], E_V4DImode))
    3785            0 :         return -1;
    3786              :       return 2;
    3787              : 
    3788            0 :     case E_V2DFmode:
    3789            0 :       if (!register_operand (operands[1], E_V2DImode)
    3790            0 :           || !const0_operand (operands[2], E_V2DImode))
    3791            0 :         return -1;
    3792              :       return 3;
    3793              : 
    3794            2 :     case E_V32QImode:
    3795            2 :       if (!register_operand (operands[1], E_V32QImode)
    3796            2 :           || !const0_operand (operands[2], E_V32QImode))
    3797            0 :         return -1;
    3798              :       return 4;
    3799              : 
    3800            6 :     case E_V16QImode:
    3801            6 :       if (!register_operand (operands[1], E_V16QImode)
    3802            6 :           || !const0_operand (operands[2], E_V16QImode))
    3803            0 :         return -1;
    3804              :       return 5;
    3805              : 
    3806              :     default:
    3807              :       return -1;
    3808              :     }
    3809              : }
    3810              : 
    3811              : int
    3812            0 : pattern995 (rtx x1)
    3813              : {
    3814            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3815            0 :   rtx x2, x3;
    3816            0 :   int res ATTRIBUTE_UNUSED;
    3817            0 :   x2 = XEXP (x1, 0);
    3818            0 :   operands[1] = x2;
    3819            0 :   x3 = XEXP (x1, 1);
    3820            0 :   operands[2] = x3;
    3821            0 :   switch (GET_MODE (x1))
    3822              :     {
    3823            0 :     case E_V8SFmode:
    3824            0 :       if (!register_operand (operands[1], E_V8SImode)
    3825            0 :           || !const0_operand (operands[2], E_V8SImode))
    3826            0 :         return -1;
    3827              :       return 0;
    3828              : 
    3829            0 :     case E_V4SFmode:
    3830            0 :       if (!register_operand (operands[1], E_V4SImode)
    3831            0 :           || !const0_operand (operands[2], E_V4SImode))
    3832            0 :         return -1;
    3833              :       return 1;
    3834              : 
    3835            0 :     case E_V4DFmode:
    3836            0 :       if (!register_operand (operands[1], E_V4DImode)
    3837            0 :           || !const0_operand (operands[2], E_V4DImode))
    3838            0 :         return -1;
    3839              :       return 2;
    3840              : 
    3841            0 :     case E_V2DFmode:
    3842            0 :       if (!register_operand (operands[1], E_V2DImode)
    3843            0 :           || !const0_operand (operands[2], E_V2DImode))
    3844            0 :         return -1;
    3845              :       return 3;
    3846              : 
    3847            0 :     case E_V16QImode:
    3848            0 :       if (!register_operand (operands[1], E_V16QImode)
    3849            0 :           || !const0_operand (operands[2], E_V16QImode))
    3850            0 :         return -1;
    3851              :       return 4;
    3852              : 
    3853              :     default:
    3854              :       return -1;
    3855              :     }
    3856              : }
    3857              : 
    3858              : int
    3859         1171 : pattern1005 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    3860              : {
    3861         1171 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3862         1171 :   rtx x2, x3;
    3863         1171 :   int res ATTRIBUTE_UNUSED;
    3864         1171 :   if (GET_MODE (x1) != i3)
    3865              :     return -1;
    3866         1171 :   x2 = XEXP (x1, 0);
    3867         1171 :   if (GET_MODE (x2) != i3
    3868         1171 :       || !register_operand (operands[1], i2))
    3869            9 :     return -1;
    3870         1162 :   x3 = XEXP (x1, 2);
    3871         1162 :   if (!register_operand (x3, i1))
    3872              :     return -1;
    3873              :   return 0;
    3874              : }
    3875              : 
    3876              : int
    3877           32 : pattern1013 (rtx x1, machine_mode i1, machine_mode i2)
    3878              : {
    3879           32 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3880           32 :   rtx x2, x3;
    3881           32 :   int res ATTRIBUTE_UNUSED;
    3882           32 :   if (!register_operand (operands[0], i1)
    3883           32 :       || GET_MODE (x1) != i1)
    3884              :     return -1;
    3885           32 :   x2 = XEXP (x1, 0);
    3886           32 :   if (GET_MODE (x2) != i1)
    3887              :     return -1;
    3888           32 :   x3 = XEXP (x2, 0);
    3889           32 :   if (GET_MODE (x3) != i2
    3890           32 :       || !nonimmediate_operand (operands[2], i1)
    3891           64 :       || !reg_or_0_operand (operands[1], i1))
    3892            0 :     return -1;
    3893              :   return 0;
    3894              : }
    3895              : 
    3896              : int
    3897          136 : pattern1021 (rtx x1, machine_mode i1, machine_mode i2)
    3898              : {
    3899          136 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3900          136 :   rtx x2;
    3901          136 :   int res ATTRIBUTE_UNUSED;
    3902          136 :   if (!register_operand (operands[0], i1)
    3903          136 :       || GET_MODE (x1) != i1)
    3904              :     return -1;
    3905          136 :   x2 = XEXP (x1, 0);
    3906          136 :   if (GET_MODE (x2) != i1
    3907          136 :       || !bcst_vector_operand (operands[1], i1)
    3908          136 :       || !vector_all_ones_operand (operands[2], i1)
    3909            0 :       || !nonimm_or_0_operand (operands[3], i1)
    3910          136 :       || !register_operand (operands[4], i2))
    3911          136 :     return -1;
    3912              :   return 0;
    3913              : }
    3914              : 
    3915              : int
    3916         1006 : pattern1028 (rtx x1)
    3917              : {
    3918         1006 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3919         1006 :   rtx x2;
    3920         1006 :   int res ATTRIBUTE_UNUSED;
    3921         1006 :   if (!const48_operand (operands[2], E_SImode))
    3922              :     return -1;
    3923         1006 :   switch (GET_MODE (operands[0]))
    3924              :     {
    3925            0 :     case E_V8HImode:
    3926            0 :       return pattern1025 (x1, 
    3927              : E_V8HFmode, 
    3928            0 : E_V8HImode); /* [-1, 0] */
    3929              : 
    3930            0 :     case E_V16HImode:
    3931            0 :       if (pattern1025 (x1, 
    3932              : E_V16HFmode, 
    3933              : E_V16HImode) != 0)
    3934              :         return -1;
    3935              :       return 1;
    3936              : 
    3937          150 :     case E_V32HImode:
    3938          150 :       if (pattern1025 (x1, 
    3939              : E_V32HFmode, 
    3940              : E_V32HImode) != 0)
    3941              :         return -1;
    3942              :       return 2;
    3943              : 
    3944          130 :     case E_V8SImode:
    3945          130 :       res = pattern1026 (x1);
    3946          130 :       if (res >= 0)
    3947          128 :         return res + 3; /* [3, 4] */
    3948              :       return -1;
    3949              : 
    3950          280 :     case E_V16SImode:
    3951          280 :       res = pattern1027 (x1);
    3952          280 :       if (res >= 0)
    3953          260 :         return res + 5; /* [5, 6] */
    3954              :       return -1;
    3955              : 
    3956          350 :     case E_V8DImode:
    3957          350 :       if (!register_operand (operands[0], E_V8DImode)
    3958          350 :           || GET_MODE (x1) != E_V8DImode)
    3959              :         return -1;
    3960          326 :       x2 = XVECEXP (x1, 0, 0);
    3961          326 :       if (GET_MODE (x2) != E_V8DImode)
    3962              :         return -1;
    3963          326 :       switch (GET_MODE (operands[1]))
    3964              :         {
    3965          118 :         case E_V8HFmode:
    3966          118 :           if (!register_operand (operands[1], E_V8HFmode))
    3967              :             return -1;
    3968              :           return 7;
    3969              : 
    3970          104 :         case E_V8DFmode:
    3971          104 :           if (!register_operand (operands[1], E_V8DFmode))
    3972              :             return -1;
    3973              :           return 8;
    3974              : 
    3975          104 :         case E_V8SFmode:
    3976          104 :           if (!register_operand (operands[1], E_V8SFmode))
    3977              :             return -1;
    3978              :           return 9;
    3979              : 
    3980              :         default:
    3981              :           return -1;
    3982              :         }
    3983              : 
    3984              :     default:
    3985              :       return -1;
    3986              :     }
    3987              : }
    3988              : 
    3989              : int
    3990          177 : pattern1051 (rtx x1, machine_mode i1)
    3991              : {
    3992          177 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3993          177 :   rtx x2, x3, x4, x5, x6;
    3994          177 :   int res ATTRIBUTE_UNUSED;
    3995          177 :   if (!register_operand (operands[0], i1))
    3996              :     return -1;
    3997          177 :   x2 = XVECEXP (x1, 0, 0);
    3998          177 :   x3 = XEXP (x2, 1);
    3999          177 :   if (GET_MODE (x3) != i1)
    4000              :     return -1;
    4001          177 :   x4 = XEXP (x3, 0);
    4002          177 :   switch (GET_MODE (x4))
    4003              :     {
    4004            0 :     case E_DImode:
    4005            0 :       if (!nonimmediate_operand (operands[1], E_V64QImode)
    4006            0 :           || !nonimmediate_operand (operands[2], E_V64QImode)
    4007            0 :           || !register_operand (operands[4], E_DImode))
    4008            0 :         return -1;
    4009            0 :       x5 = XVECEXP (x1, 0, 1);
    4010            0 :       x6 = XEXP (x5, 1);
    4011            0 :       if (GET_MODE (x6) != E_DImode)
    4012              :         return -1;
    4013              :       return 0;
    4014              : 
    4015           46 :     case E_HImode:
    4016           46 :       if (!register_operand (operands[4], E_HImode))
    4017              :         return -1;
    4018           46 :       x5 = XVECEXP (x1, 0, 1);
    4019           46 :       x6 = XEXP (x5, 1);
    4020           46 :       if (GET_MODE (x6) != E_HImode)
    4021              :         return -1;
    4022           46 :       switch (GET_MODE (operands[1]))
    4023              :         {
    4024           14 :         case E_V16QImode:
    4025           14 :           if (!nonimmediate_operand (operands[1], E_V16QImode)
    4026           14 :               || !nonimmediate_operand (operands[2], E_V16QImode))
    4027            2 :             return -1;
    4028              :           return 1;
    4029              : 
    4030           14 :         case E_V16HImode:
    4031           14 :           if (!nonimmediate_operand (operands[1], E_V16HImode)
    4032           14 :               || !nonimmediate_operand (operands[2], E_V16HImode))
    4033            2 :             return -1;
    4034              :           return 2;
    4035              : 
    4036           18 :         case E_V16SImode:
    4037           18 :           if (!nonimmediate_operand (operands[1], E_V16SImode)
    4038           18 :               || !nonimmediate_operand (operands[2], E_V16SImode))
    4039            4 :             return -1;
    4040              :           return 3;
    4041              : 
    4042              :         default:
    4043              :           return -1;
    4044              :         }
    4045              : 
    4046           14 :     case E_SImode:
    4047           14 :       if (!register_operand (operands[4], E_SImode))
    4048              :         return -1;
    4049           14 :       x5 = XVECEXP (x1, 0, 1);
    4050           14 :       x6 = XEXP (x5, 1);
    4051           14 :       if (GET_MODE (x6) != E_SImode)
    4052              :         return -1;
    4053           14 :       switch (GET_MODE (operands[1]))
    4054              :         {
    4055            7 :         case E_V32QImode:
    4056            7 :           if (!nonimmediate_operand (operands[1], E_V32QImode)
    4057            7 :               || !nonimmediate_operand (operands[2], E_V32QImode))
    4058            1 :             return -1;
    4059              :           return 4;
    4060              : 
    4061            7 :         case E_V32HImode:
    4062            7 :           if (!nonimmediate_operand (operands[1], E_V32HImode)
    4063            7 :               || !nonimmediate_operand (operands[2], E_V32HImode))
    4064            1 :             return -1;
    4065              :           return 5;
    4066              : 
    4067              :         default:
    4068              :           return -1;
    4069              :         }
    4070              : 
    4071          117 :     case E_QImode:
    4072          117 :       if (!register_operand (operands[4], E_QImode))
    4073              :         return -1;
    4074          117 :       x5 = XVECEXP (x1, 0, 1);
    4075          117 :       x6 = XEXP (x5, 1);
    4076          117 :       if (GET_MODE (x6) != E_QImode)
    4077              :         return -1;
    4078          117 :       switch (GET_MODE (operands[1]))
    4079              :         {
    4080           12 :         case E_V8HImode:
    4081           12 :           if (!nonimmediate_operand (operands[1], E_V8HImode)
    4082           12 :               || !nonimmediate_operand (operands[2], E_V8HImode))
    4083            0 :             return -1;
    4084              :           return 6;
    4085              : 
    4086           21 :         case E_V8SImode:
    4087           21 :           if (!nonimmediate_operand (operands[1], E_V8SImode)
    4088           21 :               || !nonimmediate_operand (operands[2], E_V8SImode))
    4089            3 :             return -1;
    4090              :           return 7;
    4091              : 
    4092           21 :         case E_V4SImode:
    4093           21 :           if (!nonimmediate_operand (operands[1], E_V4SImode)
    4094           21 :               || !nonimmediate_operand (operands[2], E_V4SImode))
    4095            3 :             return -1;
    4096              :           return 8;
    4097              : 
    4098           21 :         case E_V8DImode:
    4099           21 :           if (!nonimmediate_operand (operands[1], E_V8DImode)
    4100           21 :               || !nonimmediate_operand (operands[2], E_V8DImode))
    4101            3 :             return -1;
    4102              :           return 9;
    4103              : 
    4104           21 :         case E_V4DImode:
    4105           21 :           if (!nonimmediate_operand (operands[1], E_V4DImode)
    4106           21 :               || !nonimmediate_operand (operands[2], E_V4DImode))
    4107            3 :             return -1;
    4108              :           return 10;
    4109              : 
    4110           21 :         case E_V2DImode:
    4111           21 :           if (!nonimmediate_operand (operands[1], E_V2DImode)
    4112           21 :               || !nonimmediate_operand (operands[2], E_V2DImode))
    4113            3 :             return -1;
    4114              :           return 11;
    4115              : 
    4116              :         default:
    4117              :           return -1;
    4118              :         }
    4119              : 
    4120              :     default:
    4121              :       return -1;
    4122              :     }
    4123              : }
    4124              : 
    4125              : int
    4126            0 : pattern1088 (rtx x1)
    4127              : {
    4128            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4129            0 :   rtx x2;
    4130            0 :   int res ATTRIBUTE_UNUSED;
    4131            0 :   if (!register_operand (operands[0], E_HImode)
    4132            0 :       || GET_MODE (x1) != E_HImode)
    4133              :     return -1;
    4134            0 :   x2 = XEXP (x1, 0);
    4135            0 :   if (GET_MODE (x2) != E_HImode)
    4136              :     return -1;
    4137            0 :   return pattern746 (); /* [-1, 2] */
    4138              : }
    4139              : 
    4140              : int
    4141            0 : pattern1096 (rtx x1, machine_mode i1)
    4142              : {
    4143            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4144            0 :   rtx x2;
    4145            0 :   int res ATTRIBUTE_UNUSED;
    4146            0 :   if (!register_operand (operands[0], i1)
    4147            0 :       || GET_MODE (x1) != i1)
    4148              :     return -1;
    4149            0 :   x2 = XEXP (x1, 0);
    4150            0 :   return pattern1095 (x2); /* [-1, 11] */
    4151              : }
    4152              : 
    4153              : int
    4154         1056 : pattern1103 (rtx x1, machine_mode i1, machine_mode i2)
    4155              : {
    4156         1056 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4157         1056 :   rtx x2;
    4158         1056 :   int res ATTRIBUTE_UNUSED;
    4159         1056 :   if (!register_operand (operands[0], i2)
    4160         1056 :       || GET_MODE (x1) != i2)
    4161              :     return -1;
    4162         1030 :   x2 = XEXP (x1, 0);
    4163         1030 :   if (GET_MODE (x2) != i2
    4164         1030 :       || !register_operand (operands[1], i1)
    4165         2060 :       || !nonimmediate_operand (operands[2], i1))
    4166            0 :     return -1;
    4167              :   return 0;
    4168              : }
    4169              : 
    4170              : int
    4171          138 : pattern1108 (rtx x1, machine_mode i1)
    4172              : {
    4173          138 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4174          138 :   rtx x2;
    4175          138 :   int res ATTRIBUTE_UNUSED;
    4176          138 :   if (!register_operand (operands[0], i1)
    4177          138 :       || GET_MODE (x1) != i1)
    4178              :     return -1;
    4179          114 :   x2 = XVECEXP (x1, 0, 0);
    4180          114 :   switch (GET_MODE (x2))
    4181              :     {
    4182           22 :     case E_HFmode:
    4183           22 :       if (!register_operand (operands[1], E_V8HFmode))
    4184              :         return -1;
    4185              :       return 0;
    4186              : 
    4187           46 :     case E_SFmode:
    4188           46 :       if (!vector_operand (operands[1], E_V4SFmode))
    4189              :         return -1;
    4190              :       return 1;
    4191              : 
    4192           46 :     case E_DFmode:
    4193           46 :       if (!vector_operand (operands[1], E_V2DFmode))
    4194              :         return -1;
    4195              :       return 2;
    4196              : 
    4197              :     default:
    4198              :       return -1;
    4199              :     }
    4200              : }
    4201              : 
    4202              : int
    4203         1485 : pattern1113 (rtx x1, machine_mode i1)
    4204              : {
    4205         1485 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4206         1485 :   rtx x2;
    4207         1485 :   int res ATTRIBUTE_UNUSED;
    4208         1485 :   if (!register_operand (operands[0], i1)
    4209         1485 :       || GET_MODE (x1) != i1)
    4210              :     return -1;
    4211         1422 :   x2 = XEXP (x1, 0);
    4212         1422 :   if (GET_MODE (x2) != i1
    4213         1422 :       || !nonimm_or_0_operand (operands[2], i1)
    4214         2817 :       || !register_operand (operands[3], E_QImode))
    4215           94 :     return -1;
    4216         1328 :   switch (GET_MODE (operands[1]))
    4217              :     {
    4218          439 :     case E_V8HFmode:
    4219          439 :       if (!vector_operand (operands[1], E_V8HFmode))
    4220              :         return -1;
    4221              :       return 0;
    4222              : 
    4223          443 :     case E_V4SFmode:
    4224          443 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    4225              :         return -1;
    4226              :       return 1;
    4227              : 
    4228          446 :     case E_V4DFmode:
    4229          446 :       if (!nonimmediate_operand (operands[1], E_V4DFmode))
    4230              :         return -1;
    4231              :       return 2;
    4232              : 
    4233              :     default:
    4234              :       return -1;
    4235              :     }
    4236              : }
    4237              : 
    4238              : int
    4239         1743 : pattern1121 (rtx x1)
    4240              : {
    4241         1743 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4242         1743 :   rtx x2;
    4243         1743 :   int res ATTRIBUTE_UNUSED;
    4244         1743 :   x2 = XEXP (x1, 1);
    4245         1743 :   if (!rtx_equal_p (x2, operands[1]))
    4246              :     return -1;
    4247         1743 :   switch (GET_MODE (operands[0]))
    4248              :     {
    4249          901 :     case E_V4SFmode:
    4250          901 :       return pattern459 (x1, 
    4251          901 : E_V4SFmode); /* [-1, 0] */
    4252              : 
    4253          842 :     case E_V2DFmode:
    4254          842 :       if (pattern459 (x1, 
    4255              : E_V2DFmode) != 0)
    4256              :         return -1;
    4257              :       return 1;
    4258              : 
    4259              :     default:
    4260              :       return -1;
    4261              :     }
    4262              : }
    4263              : 
    4264              : int
    4265           68 : pattern1127 (rtx x1, machine_mode i1, machine_mode i2)
    4266              : {
    4267           68 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4268           68 :   rtx x2, x3;
    4269           68 :   int res ATTRIBUTE_UNUSED;
    4270           68 :   if (!register_operand (operands[0], i1)
    4271           68 :       || GET_MODE (x1) != i1)
    4272              :     return -1;
    4273           68 :   x2 = XEXP (x1, 0);
    4274           68 :   if (GET_MODE (x2) != i1)
    4275              :     return -1;
    4276           68 :   x3 = XEXP (x2, 0);
    4277           68 :   if (GET_MODE (x3) != i2
    4278           68 :       || !nonimmediate_operand (operands[1], i2)
    4279          132 :       || !register_operand (operands[2], i1))
    4280            8 :     return -1;
    4281              :   return 0;
    4282              : }
    4283              : 
    4284              : int
    4285          558 : pattern1137 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3, machine_mode i4)
    4286              : {
    4287          558 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4288          558 :   rtx x2, x3, x4;
    4289          558 :   int res ATTRIBUTE_UNUSED;
    4290          558 :   if (!register_operand (operands[0], i2)
    4291          558 :       || GET_MODE (x1) != i2)
    4292              :     return -1;
    4293          543 :   x2 = XEXP (x1, 0);
    4294          543 :   if (GET_MODE (x2) != i2)
    4295              :     return -1;
    4296          543 :   x3 = XEXP (x2, 0);
    4297          543 :   if (GET_MODE (x3) != i4
    4298          543 :       || !nonimmediate_operand (operands[2], i3))
    4299            0 :     return -1;
    4300          543 :   x4 = XEXP (x2, 1);
    4301          543 :   return pattern1136 (x4, 
    4302              : i1, 
    4303              : i2, 
    4304              : i3, 
    4305          543 : i4); /* [-1, 0] */
    4306              : }
    4307              : 
    4308              : int
    4309          486 : pattern1144 (rtx x1)
    4310              : {
    4311          486 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4312          486 :   int res ATTRIBUTE_UNUSED;
    4313          486 :   if (!const48_operand (operands[3], E_SImode))
    4314              :     return -1;
    4315          486 :   switch (GET_MODE (operands[0]))
    4316              :     {
    4317          114 :     case E_V32HFmode:
    4318          114 :       return pattern1143 (x1, 
    4319          114 : E_V32HFmode); /* [-1, 0] */
    4320              : 
    4321          186 :     case E_V16SFmode:
    4322          186 :       if (pattern1143 (x1, 
    4323              : E_V16SFmode) != 0)
    4324              :         return -1;
    4325              :       return 1;
    4326              : 
    4327          186 :     case E_V8DFmode:
    4328          186 :       if (pattern1143 (x1, 
    4329              : E_V8DFmode) != 0)
    4330              :         return -1;
    4331              :       return 2;
    4332              : 
    4333              :     default:
    4334              :       return -1;
    4335              :     }
    4336              : }
    4337              : 
    4338              : int
    4339           92 : pattern1153 (rtx x1, machine_mode i1)
    4340              : {
    4341           92 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4342           92 :   rtx x2, x3;
    4343           92 :   int res ATTRIBUTE_UNUSED;
    4344           92 :   if (!register_operand (operands[0], i1)
    4345           92 :       || GET_MODE (x1) != i1)
    4346              :     return -1;
    4347           92 :   x2 = XEXP (x1, 0);
    4348           92 :   if (GET_MODE (x2) != i1)
    4349              :     return -1;
    4350           92 :   x3 = XEXP (x2, 0);
    4351           92 :   if (GET_MODE (x3) != i1
    4352           92 :       || !nonimmediate_operand (operands[1], i1)
    4353           92 :       || !general_operand (operands[2], i1)
    4354           92 :       || !const0_operand (operands[3], i1)
    4355          100 :       || !const0_operand (operands[4], i1))
    4356           84 :     return -1;
    4357              :   return 0;
    4358              : }
    4359              : 
    4360              : int
    4361           53 : pattern1163 (rtx x1)
    4362              : {
    4363           53 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4364           53 :   rtx x2;
    4365           53 :   int res ATTRIBUTE_UNUSED;
    4366           53 :   switch (GET_MODE (operands[0]))
    4367              :     {
    4368            0 :     case E_HImode:
    4369            0 :       if (!register_operand (operands[0], E_HImode)
    4370            0 :           || GET_MODE (x1) != E_HImode)
    4371              :         return -1;
    4372            0 :       x2 = XEXP (x1, 0);
    4373            0 :       if (GET_MODE (x2) != E_QImode)
    4374              :         return -1;
    4375              :       return 0;
    4376              : 
    4377            1 :     case E_SImode:
    4378            1 :       if (!register_operand (operands[0], E_SImode)
    4379            1 :           || GET_MODE (x1) != E_SImode)
    4380              :         return -1;
    4381            1 :       x2 = XEXP (x1, 0);
    4382            1 :       switch (GET_MODE (x2))
    4383              :         {
    4384              :         case E_QImode:
    4385              :           return 1;
    4386              : 
    4387            0 :         case E_HImode:
    4388            0 :           return 2;
    4389              : 
    4390              :         default:
    4391              :           return -1;
    4392              :         }
    4393              : 
    4394           52 :     case E_DImode:
    4395           52 :       if (!register_operand (operands[0], E_DImode)
    4396           52 :           || GET_MODE (x1) != E_DImode)
    4397              :         return -1;
    4398           52 :       x2 = XEXP (x1, 0);
    4399           52 :       switch (GET_MODE (x2))
    4400              :         {
    4401              :         case E_QImode:
    4402              :           return 3;
    4403              : 
    4404              :         case E_HImode:
    4405              :           return 4;
    4406              : 
    4407              :         case E_SImode:
    4408              :           return 5;
    4409              : 
    4410              :         default:
    4411              :           return -1;
    4412              :         }
    4413              : 
    4414              :     default:
    4415              :       return -1;
    4416              :     }
    4417              : }
    4418              : 
    4419              : int
    4420        14878 : pattern1180 (rtx x1)
    4421              : {
    4422        14878 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4423        14878 :   rtx x2, x3;
    4424        14878 :   int res ATTRIBUTE_UNUSED;
    4425        14878 :   switch (XVECLEN (x1, 0))
    4426              :     {
    4427        13977 :     case 2:
    4428        13977 :       if (XINT (x1, 1) != 21)
    4429              :         return -1;
    4430        13977 :       x2 = XVECEXP (x1, 0, 1);
    4431        13977 :       if (GET_CODE (x2) != REG
    4432        13977 :           || REGNO (x2) != 7)
    4433            0 :         return -1;
    4434              :       return 0;
    4435              : 
    4436          901 :     case 1:
    4437          901 :       if (XINT (x1, 1) != 22)
    4438              :         return -1;
    4439          901 :       x3 = XVECEXP (x1, 0, 0);
    4440          901 :       if (GET_CODE (x3) != REG
    4441          901 :           || REGNO (x3) != 7)
    4442            0 :         return -1;
    4443              :       return 1;
    4444              : 
    4445              :     default:
    4446              :       return -1;
    4447              :     }
    4448              : }
    4449              : 
    4450              : int
    4451        24628 : pattern1190 (rtx x1)
    4452              : {
    4453        24628 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4454        24628 :   rtx x2, x3, x4, x5;
    4455        24628 :   int res ATTRIBUTE_UNUSED;
    4456        24628 :   if (!nonmemory_operand (operands[2], E_QImode))
    4457              :     return -1;
    4458        24617 :   x2 = XEXP (x1, 0);
    4459        24617 :   if (GET_CODE (x2) != STRICT_LOW_PART)
    4460              :     return -1;
    4461           12 :   x3 = XEXP (x2, 0);
    4462           12 :   operands[0] = x3;
    4463           12 :   x4 = XEXP (x1, 1);
    4464           12 :   x5 = XEXP (x4, 0);
    4465           12 :   operands[1] = x5;
    4466           12 :   return pattern377 (x4); /* [-1, 1] */
    4467              : }
    4468              : 
    4469              : int
    4470            0 : pattern1197 (rtx x1, machine_mode i1)
    4471              : {
    4472            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4473            0 :   rtx x2, x3, x4;
    4474            0 :   int res ATTRIBUTE_UNUSED;
    4475            0 :   if (!register_operand (operands[0], i1)
    4476            0 :       || GET_MODE (x1) != i1)
    4477              :     return -1;
    4478            0 :   x2 = XEXP (x1, 0);
    4479            0 :   if (GET_MODE (x2) != i1)
    4480              :     return -1;
    4481            0 :   x3 = XEXP (x2, 0);
    4482            0 :   if (GET_MODE (x3) != i1
    4483            0 :       || !regmem_or_bitnot_regmem_operand (operands[1], i1)
    4484            0 :       || !regmem_or_bitnot_regmem_operand (operands[2], i1)
    4485            0 :       || !regmem_or_bitnot_regmem_operand (operands[3], i1))
    4486            0 :     return -1;
    4487            0 :   x4 = XEXP (x1, 1);
    4488            0 :   operands[4] = x4;
    4489            0 :   if (!regmem_or_bitnot_regmem_operand (operands[4], i1))
    4490              :     return -1;
    4491              :   return 0;
    4492              : }
    4493              : 
    4494              : int
    4495         1432 : pattern1206 (rtx x1, machine_mode i1)
    4496              : {
    4497         1432 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4498         1432 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4499         1432 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    4500         1432 :   rtx x18, x19;
    4501         1432 :   int res ATTRIBUTE_UNUSED;
    4502         1432 :   if (GET_CODE (x1) != PARALLEL
    4503         1253 :       || XVECLEN (x1, 0) != 2)
    4504              :     return -1;
    4505         1253 :   x2 = XVECEXP (x1, 0, 0);
    4506         1253 :   if (GET_CODE (x2) != SET)
    4507              :     return -1;
    4508         1253 :   x3 = XEXP (x2, 1);
    4509         1253 :   if (GET_CODE (x3) != PLUS
    4510          682 :       || GET_MODE (x3) != i1)
    4511              :     return -1;
    4512          682 :   x4 = XEXP (x3, 0);
    4513          682 :   if (GET_CODE (x4) != PLUS
    4514          682 :       || GET_MODE (x4) != i1)
    4515              :     return -1;
    4516          682 :   x5 = XEXP (x4, 0);
    4517          682 :   if (GET_CODE (x5) != LTU
    4518          682 :       || GET_MODE (x5) != i1)
    4519              :     return -1;
    4520          682 :   x6 = XEXP (x5, 0);
    4521          682 :   if (GET_CODE (x6) != REG
    4522          682 :       || REGNO (x6) != 17
    4523         1364 :       || GET_MODE (x6) != E_CCmode)
    4524              :     return -1;
    4525          682 :   x7 = XEXP (x5, 1);
    4526          682 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4527              :     return -1;
    4528          682 :   x8 = XEXP (x3, 1);
    4529          682 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4530              :     return -1;
    4531          682 :   x9 = XVECEXP (x1, 0, 1);
    4532          682 :   if (GET_CODE (x9) != CLOBBER)
    4533              :     return -1;
    4534          682 :   x10 = XEXP (x9, 0);
    4535          682 :   if (GET_CODE (x10) != REG
    4536          682 :       || REGNO (x10) != 17
    4537         1364 :       || GET_MODE (x10) != E_CCmode)
    4538              :     return -1;
    4539          682 :   x11 = XEXP (x4, 1);
    4540          682 :   if (!rtx_equal_p (x11, operands[0]))
    4541              :     return -1;
    4542          658 :   x12 = XEXP (x2, 0);
    4543          658 :   if (!rtx_equal_p (x12, operands[0]))
    4544              :     return -1;
    4545          658 :   x13 = PATTERN (peep2_next_insn (3));
    4546          658 :   if (GET_CODE (x13) != PARALLEL
    4547          658 :       || XVECLEN (x13, 0) != 2)
    4548              :     return -1;
    4549          658 :   x14 = XVECEXP (x13, 0, 0);
    4550          658 :   if (GET_CODE (x14) != SET)
    4551              :     return -1;
    4552          658 :   x15 = XEXP (x14, 1);
    4553          658 :   if (GET_CODE (x15) != NEG
    4554          649 :       || GET_MODE (x15) != i1)
    4555              :     return -1;
    4556          649 :   x16 = XVECEXP (x13, 0, 1);
    4557          649 :   if (GET_CODE (x16) != CLOBBER)
    4558              :     return -1;
    4559          649 :   x17 = XEXP (x16, 0);
    4560          649 :   if (GET_CODE (x17) != REG
    4561          649 :       || REGNO (x17) != 17
    4562         1298 :       || GET_MODE (x17) != E_CCmode)
    4563              :     return -1;
    4564          649 :   x18 = XEXP (x15, 0);
    4565          649 :   if (!rtx_equal_p (x18, operands[0]))
    4566              :     return -1;
    4567          649 :   x19 = XEXP (x14, 0);
    4568          649 :   if (!rtx_equal_p (x19, operands[0]))
    4569              :     return -1;
    4570              :   return 0;
    4571              : }
    4572              : 
    4573              : int
    4574          444 : pattern1232 (rtx x1, machine_mode i1)
    4575              : {
    4576          444 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4577          444 :   rtx x2;
    4578          444 :   int res ATTRIBUTE_UNUSED;
    4579          444 :   if (!register_operand (operands[0], i1)
    4580          444 :       || GET_MODE (x1) != i1)
    4581              :     return -1;
    4582          410 :   x2 = XVECEXP (x1, 0, 0);
    4583          410 :   if (GET_MODE (x2) != i1
    4584          410 :       || !register_operand (operands[1], i1))
    4585           56 :     return -1;
    4586              :   return 0;
    4587              : }
    4588              : 
    4589              : int
    4590          326 : pattern1237 (rtx x1, machine_mode i1, machine_mode i2)
    4591              : {
    4592          326 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4593          326 :   rtx x2;
    4594          326 :   int res ATTRIBUTE_UNUSED;
    4595          326 :   if (!register_operand (operands[0], i1)
    4596          317 :       || GET_MODE (x1) != i1
    4597          643 :       || !nonimmediate_operand (operands[2], i2))
    4598            9 :     return -1;
    4599          317 :   x2 = XEXP (x1, 1);
    4600          317 :   if (GET_MODE (x2) != i2
    4601          317 :       || !register_operand (operands[1], i1))
    4602           18 :     return -1;
    4603              :   return 0;
    4604              : }
    4605              : 
    4606              : int
    4607      2094671 : pattern1241 (rtx x1)
    4608              : {
    4609      2094671 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4610      2094671 :   rtx x2, x3, x4, x5;
    4611      2094671 :   int res ATTRIBUTE_UNUSED;
    4612      2094671 :   x2 = XEXP (x1, 1);
    4613      2094671 :   x3 = XEXP (x2, 1);
    4614      2094671 :   if (XWINT (x3, 0) != 32L)
    4615              :     return -1;
    4616       318729 :   x4 = XEXP (x1, 0);
    4617       318729 :   if (GET_CODE (x4) != SUBREG
    4618         9566 :       || maybe_ne (SUBREG_BYTE (x4), 0)
    4619       328295 :       || GET_MODE (x4) != E_DImode)
    4620              :     return -1;
    4621         9566 :   x5 = XEXP (x4, 0);
    4622         9566 :   operands[0] = x5;
    4623         9566 :   if (!register_operand (operands[0], E_SImode))
    4624              :     return -1;
    4625              :   return 0;
    4626              : }
    4627              : 
    4628              : int
    4629          123 : pattern1245 (rtx x1, machine_mode i1)
    4630              : {
    4631          123 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4632          123 :   int res ATTRIBUTE_UNUSED;
    4633          123 :   if (!memory_operand (operands[0], i1)
    4634          123 :       || GET_MODE (x1) != i1
    4635          246 :       || !memory_operand (operands[3], i1))
    4636            0 :     return -1;
    4637          123 :   switch (GET_MODE (operands[1]))
    4638              :     {
    4639            2 :     case E_SImode:
    4640            2 :       if (!register_operand (operands[1], E_SImode))
    4641              :         return -1;
    4642              :       return 0;
    4643              : 
    4644          121 :     case E_DImode:
    4645          121 :       if (!register_operand (operands[1], E_DImode))
    4646              :         return -1;
    4647              :       return 1;
    4648              : 
    4649              :     default:
    4650              :       return -1;
    4651              :     }
    4652              : }
    4653              : 
    4654              : int
    4655            0 : pattern1250 (rtx x1, rtx_code i1)
    4656              : {
    4657            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4658            0 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4659            0 :   int res ATTRIBUTE_UNUSED;
    4660            0 :   x2 = XVECEXP (x1, 0, 1);
    4661            0 :   x3 = XEXP (x2, 1);
    4662            0 :   if (GET_MODE (x3) != E_DImode)
    4663              :     return -1;
    4664            0 :   x4 = XEXP (x3, 0);
    4665            0 :   if (GET_CODE (x4) != i1
    4666            0 :       || GET_MODE (x4) != E_SImode)
    4667              :     return -1;
    4668            0 :   x5 = XVECEXP (x1, 0, 0);
    4669            0 :   x6 = XEXP (x5, 1);
    4670            0 :   x7 = XEXP (x6, 0);
    4671            0 :   if (GET_MODE (x7) != E_SImode
    4672            0 :       || !nonimmediate_operand (operands[1], E_SImode)
    4673            0 :       || !register_operand (operands[0], E_DImode))
    4674            0 :     return -1;
    4675            0 :   x8 = XEXP (x4, 0);
    4676            0 :   if (!rtx_equal_p (x8, operands[1]))
    4677              :     return -1;
    4678              :   return 0;
    4679              : }
    4680              : 
    4681              : int
    4682        12491 : pattern1260 (rtx x1)
    4683              : {
    4684        12491 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4685        12491 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4686        12491 :   int res ATTRIBUTE_UNUSED;
    4687        12491 :   x2 = XVECEXP (x1, 0, 1);
    4688        12491 :   if (GET_CODE (x2) != CLOBBER)
    4689              :     return -1;
    4690        12491 :   x3 = XVECEXP (x1, 0, 2);
    4691        12491 :   if (GET_CODE (x3) != CLOBBER)
    4692              :     return -1;
    4693        12491 :   x4 = XVECEXP (x1, 0, 3);
    4694        12491 :   x5 = XEXP (x4, 0);
    4695        12491 :   if (GET_CODE (x5) != REG
    4696        12491 :       || REGNO (x5) != 17
    4697        12491 :       || GET_MODE (x5) != E_CCmode
    4698        24982 :       || !register_operand (operands[0], E_SImode))
    4699            0 :     return -1;
    4700        12491 :   x6 = XVECEXP (x1, 0, 0);
    4701        12491 :   x7 = XEXP (x6, 1);
    4702        12491 :   x8 = XVECEXP (x7, 0, 0);
    4703        12491 :   operands[1] = x8;
    4704        12491 :   if (!register_operand (operands[1], E_SImode))
    4705              :     return -1;
    4706        12036 :   x9 = XVECEXP (x7, 0, 1);
    4707        12036 :   operands[2] = x9;
    4708        12036 :   return 0;
    4709              : }
    4710              : 
    4711              : int
    4712         5097 : pattern1269 (rtx x1, machine_mode i1)
    4713              : {
    4714         5097 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4715         5097 :   int res ATTRIBUTE_UNUSED;
    4716         5097 :   if (GET_MODE (x1) != i1
    4717         5097 :       || !fcmov_comparison_operator (operands[1], E_VOIDmode)
    4718         5040 :       || !nonimmediate_operand (operands[2], i1)
    4719        10137 :       || !nonimmediate_operand (operands[3], i1))
    4720          164 :     return -1;
    4721              :   return 0;
    4722              : }
    4723              : 
    4724              : int
    4725            3 : pattern1273 (rtx x1, machine_mode i1)
    4726              : {
    4727            3 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4728            3 :   rtx x2, x3;
    4729            3 :   int res ATTRIBUTE_UNUSED;
    4730            3 :   if (!nonimmediate_operand (operands[0], i1)
    4731            3 :       || GET_MODE (x1) != i1)
    4732              :     return -1;
    4733            3 :   x2 = XEXP (x1, 0);
    4734            3 :   if (GET_MODE (x2) != i1)
    4735              :     return -1;
    4736            3 :   x3 = XEXP (x2, 0);
    4737            3 :   if (GET_MODE (x3) != i1
    4738            3 :       || !nonimmediate_operand (operands[1], i1)
    4739            6 :       || !general_operand (operands[2], i1))
    4740            0 :     return -1;
    4741              :   return 0;
    4742              : }
    4743              : 
    4744              : int
    4745         2118 : pattern1280 (rtx x1, machine_mode i1, machine_mode i2)
    4746              : {
    4747         2118 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4748         2118 :   rtx x2;
    4749         2118 :   int res ATTRIBUTE_UNUSED;
    4750         2118 :   if (!register_operand (operands[0], i1)
    4751         2118 :       || GET_MODE (x1) != i1)
    4752              :     return -1;
    4753         1987 :   x2 = XEXP (x1, 0);
    4754         1987 :   if (GET_MODE (x2) != i1
    4755         1987 :       || !vector_operand (operands[2], i1)
    4756         3972 :       || !register_operand (operands[4], i2))
    4757          115 :     return -1;
    4758              :   return 0;
    4759              : }
    4760              : 
    4761              : int
    4762          518 : pattern1288 (rtx x1, machine_mode i1, machine_mode i2)
    4763              : {
    4764          518 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4765          518 :   rtx x2, x3;
    4766          518 :   int res ATTRIBUTE_UNUSED;
    4767          518 :   if (!register_operand (operands[0], i1)
    4768          518 :       || GET_MODE (x1) != i1)
    4769              :     return -1;
    4770          512 :   x2 = XEXP (x1, 0);
    4771          512 :   if (GET_MODE (x2) != i1)
    4772              :     return -1;
    4773          512 :   x3 = XEXP (x2, 0);
    4774          512 :   if (GET_MODE (x3) != i1
    4775          512 :       || !memory_operand (operands[1], i2)
    4776          510 :       || !nonimm_or_0_operand (operands[2], i1)
    4777         1020 :       || !const0_operand (operands[4], i1))
    4778            4 :     return -1;
    4779              :   return 0;
    4780              : }
    4781              : 
    4782              : int
    4783         2116 : pattern1296 (rtx x1, machine_mode i1, machine_mode i2)
    4784              : {
    4785         2116 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4786         2116 :   rtx x2;
    4787         2116 :   int res ATTRIBUTE_UNUSED;
    4788         2116 :   if (!register_operand (operands[0], i1)
    4789         2116 :       || GET_MODE (x1) != i1)
    4790              :     return -1;
    4791         1995 :   x2 = XEXP (x1, 0);
    4792         1995 :   if (GET_MODE (x2) != i1
    4793         1995 :       || !vector_operand (operands[2], i1)
    4794         3982 :       || !register_operand (operands[4], i2))
    4795            8 :     return -1;
    4796              :   return 0;
    4797              : }
    4798              : 
    4799              : int
    4800         1952 : pattern1303 (rtx x1, machine_mode i1, machine_mode i2)
    4801              : {
    4802         1952 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4803         1952 :   rtx x2, x3, x4;
    4804         1952 :   int res ATTRIBUTE_UNUSED;
    4805         1952 :   if (!register_operand (operands[0], i1)
    4806         1952 :       || GET_MODE (x1) != i1)
    4807              :     return -1;
    4808         1821 :   x2 = XEXP (x1, 0);
    4809         1821 :   if (GET_MODE (x2) != i1)
    4810              :     return -1;
    4811         1821 :   x3 = XEXP (x2, 0);
    4812         1821 :   if (GET_MODE (x3) != i1
    4813         1821 :       || !vector_operand (operands[2], i1))
    4814            0 :     return -1;
    4815         1821 :   x4 = XEXP (x2, 2);
    4816         1821 :   if (GET_MODE (x4) != i1
    4817         1821 :       || !register_operand (operands[4], i2))
    4818            0 :     return -1;
    4819              :   return 0;
    4820              : }
    4821              : 
    4822              : int
    4823         5692 : pattern1311 (rtx x1)
    4824              : {
    4825         5692 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4826         5692 :   rtx x2, x3;
    4827         5692 :   int res ATTRIBUTE_UNUSED;
    4828         5692 :   if (!const48_operand (operands[4], E_SImode))
    4829              :     return -1;
    4830         5692 :   switch (GET_MODE (operands[0]))
    4831              :     {
    4832            0 :     case E_V8HImode:
    4833            0 :       return pattern1308 (x1, 
    4834              : E_QImode, 
    4835              : E_V8HImode, 
    4836            0 : E_V8HFmode); /* [-1, 0] */
    4837              : 
    4838            0 :     case E_V16HImode:
    4839            0 :       if (pattern1308 (x1, 
    4840              : E_HImode, 
    4841              : E_V16HImode, 
    4842              : E_V16HFmode) != 0)
    4843              :         return -1;
    4844              :       return 1;
    4845              : 
    4846          882 :     case E_V32HImode:
    4847          882 :       if (pattern1308 (x1, 
    4848              : E_SImode, 
    4849              : E_V32HImode, 
    4850              : E_V32HFmode) != 0)
    4851              :         return -1;
    4852              :       return 2;
    4853              : 
    4854          754 :     case E_V8SImode:
    4855          754 :       res = pattern1309 (x1);
    4856          754 :       if (res >= 0)
    4857          752 :         return res + 3; /* [3, 4] */
    4858              :       return -1;
    4859              : 
    4860         1636 :     case E_V16SImode:
    4861         1636 :       res = pattern1310 (x1);
    4862         1636 :       if (res >= 0)
    4863         1576 :         return res + 5; /* [5, 6] */
    4864              :       return -1;
    4865              : 
    4866         2420 :     case E_V8DImode:
    4867         2420 :       if (!register_operand (operands[0], E_V8DImode)
    4868         2420 :           || GET_MODE (x1) != E_V8DImode)
    4869              :         return -1;
    4870         2348 :       x2 = XVECEXP (x1, 0, 0);
    4871         2348 :       if (GET_MODE (x2) != E_V8DImode)
    4872              :         return -1;
    4873         2348 :       x3 = XEXP (x2, 0);
    4874         2348 :       if (GET_MODE (x3) != E_V8DImode
    4875         2348 :           || !nonimm_or_0_operand (operands[2], E_V8DImode)
    4876         4692 :           || !register_operand (operands[3], E_QImode))
    4877           28 :         return -1;
    4878         2320 :       switch (GET_MODE (operands[1]))
    4879              :         {
    4880          846 :         case E_V8HFmode:
    4881          846 :           if (!register_operand (operands[1], E_V8HFmode))
    4882              :             return -1;
    4883              :           return 7;
    4884              : 
    4885          738 :         case E_V8DFmode:
    4886          738 :           if (!register_operand (operands[1], E_V8DFmode))
    4887              :             return -1;
    4888              :           return 8;
    4889              : 
    4890          736 :         case E_V8SFmode:
    4891          736 :           if (!register_operand (operands[1], E_V8SFmode))
    4892              :             return -1;
    4893              :           return 9;
    4894              : 
    4895              :         default:
    4896              :           return -1;
    4897              :         }
    4898              : 
    4899              :     default:
    4900              :       return -1;
    4901              :     }
    4902              : }
    4903              : 
    4904              : int
    4905           24 : pattern1332 (rtx x1, rtx_code i1)
    4906              : {
    4907           24 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4908           24 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4909           24 :   int res ATTRIBUTE_UNUSED;
    4910           24 :   x2 = XVECEXP (x1, 0, 1);
    4911           24 :   x3 = XEXP (x2, 1);
    4912           24 :   if (GET_MODE (x3) != E_DImode)
    4913              :     return -1;
    4914           14 :   x4 = XEXP (x3, 0);
    4915           14 :   if (GET_CODE (x4) != i1
    4916            8 :       || GET_MODE (x4) != E_SImode)
    4917              :     return -1;
    4918            8 :   x5 = XVECEXP (x1, 0, 0);
    4919            8 :   x6 = XEXP (x5, 1);
    4920            8 :   x7 = XEXP (x6, 0);
    4921            8 :   if (GET_MODE (x7) != E_SImode
    4922            8 :       || !nonimmediate_operand (operands[1], E_SImode)
    4923            8 :       || !const_1_to_31_operand (operands[2], E_QImode)
    4924           16 :       || !register_operand (operands[0], E_DImode))
    4925            0 :     return -1;
    4926            8 :   x8 = XEXP (x4, 0);
    4927            8 :   if (!rtx_equal_p (x8, operands[1]))
    4928              :     return -1;
    4929            8 :   x9 = XEXP (x4, 1);
    4930            8 :   if (!rtx_equal_p (x9, operands[2]))
    4931              :     return -1;
    4932              :   return 0;
    4933              : }
    4934              : 
    4935              : int
    4936        15949 : pattern1347 (rtx x1)
    4937              : {
    4938        15949 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4939        15949 :   rtx x2;
    4940        15949 :   int res ATTRIBUTE_UNUSED;
    4941        15949 :   if (!const_int_operand (operands[2], E_QImode))
    4942              :     return -1;
    4943        15949 :   x2 = XEXP (x1, 0);
    4944        15949 :   operands[1] = x2;
    4945        15949 :   return pattern408 (x1); /* [-1, 1] */
    4946              : }
    4947              : 
    4948              : int
    4949        26341 : pattern1353 (rtx x1)
    4950              : {
    4951        26341 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4952        26341 :   rtx x2, x3, x4, x5, x6, x7;
    4953        26341 :   int res ATTRIBUTE_UNUSED;
    4954        26341 :   x2 = XVECEXP (x1, 0, 1);
    4955        26341 :   if (GET_CODE (x2) != CLOBBER)
    4956              :     return -1;
    4957        26341 :   x3 = XEXP (x2, 0);
    4958        26341 :   if (GET_CODE (x3) != REG
    4959        26341 :       || REGNO (x3) != 17
    4960        52682 :       || GET_MODE (x3) != E_CCmode)
    4961              :     return -1;
    4962        26341 :   x4 = XVECEXP (x1, 0, 0);
    4963        26341 :   x5 = XEXP (x4, 1);
    4964        26341 :   x6 = XEXP (x5, 0);
    4965        26341 :   if (!rtx_equal_p (x6, operands[0]))
    4966              :     return -1;
    4967        25088 :   x7 = XEXP (x4, 0);
    4968        25088 :   if (!rtx_equal_p (x7, operands[0]))
    4969              :     return -1;
    4970              :   return 0;
    4971              : }
    4972              : 
    4973              : int
    4974        21859 : pattern1362 (rtx x1, machine_mode i1)
    4975              : {
    4976        21859 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4977        21859 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4978        21859 :   int res ATTRIBUTE_UNUSED;
    4979        21859 :   x2 = XVECEXP (x1, 0, 0);
    4980        21859 :   x3 = XEXP (x2, 1);
    4981        21859 :   if (GET_MODE (x3) != i1)
    4982              :     return -1;
    4983        21795 :   x4 = XVECEXP (x1, 0, 1);
    4984        21795 :   if (GET_CODE (x4) != CLOBBER)
    4985              :     return -1;
    4986        21795 :   x5 = XEXP (x4, 0);
    4987        21795 :   if (GET_CODE (x5) != REG
    4988        21795 :       || REGNO (x5) != 17
    4989        43590 :       || GET_MODE (x5) != E_CCmode)
    4990              :     return -1;
    4991        21795 :   x6 = XEXP (x2, 0);
    4992        21795 :   operands[4] = x6;
    4993        21795 :   if (!register_operand (operands[4], i1))
    4994              :     return -1;
    4995        21758 :   x7 = XEXP (x3, 0);
    4996        21758 :   operands[3] = x7;
    4997        21758 :   if (!register_operand (operands[3], i1))
    4998              :     return -1;
    4999        21749 :   x8 = XEXP (x3, 1);
    5000        21749 :   operands[2] = x8;
    5001        21749 :   if (!x86_64_nonmemory_operand (operands[2], i1))
    5002              :     return -1;
    5003              :   return 0;
    5004              : }
    5005              : 
    5006              : int
    5007          782 : pattern1372 (rtx x1)
    5008              : {
    5009          782 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5010          782 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5011          782 :   int res ATTRIBUTE_UNUSED;
    5012          782 :   if (!register_operand (operands[0], E_DImode))
    5013              :     return -1;
    5014          560 :   x2 = XEXP (x1, 0);
    5015          560 :   x3 = XEXP (x2, 0);
    5016          560 :   operands[1] = x3;
    5017          560 :   if (!nonimmediate_operand (operands[1], E_DImode))
    5018              :     return -1;
    5019          560 :   x4 = XEXP (x1, 1);
    5020          560 :   if (GET_MODE (x4) != E_DImode)
    5021              :     return -1;
    5022          560 :   x5 = XEXP (x4, 0);
    5023          560 :   if (GET_MODE (x5) != E_TImode)
    5024              :     return -1;
    5025          560 :   x6 = XEXP (x5, 0);
    5026          560 :   if (GET_MODE (x6) != E_TImode)
    5027              :     return -1;
    5028          560 :   x7 = XEXP (x6, 0);
    5029          560 :   operands[2] = x7;
    5030          560 :   if (!register_operand (operands[2], E_DImode))
    5031              :     return -1;
    5032          560 :   x8 = XEXP (x5, 1);
    5033          560 :   operands[4] = x8;
    5034          560 :   if (!const_0_to_255_operand (operands[4], E_QImode))
    5035              :     return -1;
    5036              :   return 0;
    5037              : }
    5038              : 
    5039              : int
    5040          849 : pattern1382 (rtx x1, machine_mode i1)
    5041              : {
    5042          849 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5043          849 :   rtx x2, x3;
    5044          849 :   int res ATTRIBUTE_UNUSED;
    5045          849 :   if (!register_operand (operands[0], i1)
    5046          849 :       || GET_MODE (x1) != i1)
    5047              :     return -1;
    5048          816 :   x2 = XEXP (x1, 0);
    5049          816 :   if (GET_MODE (x2) != i1)
    5050              :     return -1;
    5051          816 :   x3 = XEXP (x2, 0);
    5052          816 :   if (GET_MODE (x3) != i1
    5053          816 :       || !nonimmediate_operand (operands[1], i1)
    5054          798 :       || !nonimm_or_0_operand (operands[3], i1)
    5055         1614 :       || !register_operand (operands[2], i1))
    5056           39 :     return -1;
    5057              :   return 0;
    5058              : }
    5059              : 
    5060              : int
    5061          279 : pattern1392 (rtx x1, machine_mode i1, machine_mode i2)
    5062              : {
    5063          279 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5064          279 :   rtx x2, x3;
    5065          279 :   int res ATTRIBUTE_UNUSED;
    5066          279 :   if (!register_operand (operands[0], i2)
    5067          279 :       || GET_MODE (x1) != i2)
    5068              :     return -1;
    5069          273 :   x2 = XEXP (x1, 0);
    5070          273 :   if (GET_MODE (x2) != i2
    5071          273 :       || !nonimmediate_operand (operands[1], i2))
    5072            0 :     return -1;
    5073          273 :   x3 = XEXP (x2, 2);
    5074          273 :   return pattern1391 (x3, 
    5075              : i1, 
    5076          273 : i2); /* [-1, 0] */
    5077              : }
    5078              : 
    5079              : int
    5080          279 : pattern1402 (rtx x1, machine_mode i1, machine_mode i2)
    5081              : {
    5082          279 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5083          279 :   rtx x2, x3, x4;
    5084          279 :   int res ATTRIBUTE_UNUSED;
    5085          279 :   if (!register_operand (operands[0], i2)
    5086          279 :       || GET_MODE (x1) != i2)
    5087              :     return -1;
    5088          273 :   x2 = XEXP (x1, 0);
    5089          273 :   if (GET_MODE (x2) != i2)
    5090              :     return -1;
    5091          273 :   x3 = XEXP (x2, 0);
    5092          273 :   if (GET_MODE (x3) != i2
    5093          273 :       || !nonimmediate_operand (operands[1], i2))
    5094            0 :     return -1;
    5095          273 :   x4 = XEXP (x2, 2);
    5096          273 :   return pattern1391 (x4, 
    5097              : i1, 
    5098          273 : i2); /* [-1, 0] */
    5099              : }
    5100              : 
    5101              : int
    5102         1561 : pattern1411 (rtx x1)
    5103              : {
    5104         1561 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5105         1561 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5106         1561 :   rtx x10, x11;
    5107         1561 :   int res ATTRIBUTE_UNUSED;
    5108         1561 :   x2 = XVECEXP (x1, 0, 0);
    5109         1561 :   x3 = XEXP (x2, 0);
    5110         1561 :   x4 = XEXP (x3, 1);
    5111         1561 :   switch (GET_CODE (x4))
    5112              :     {
    5113         1126 :     case REG:
    5114         1126 :     case SUBREG:
    5115         1126 :     case MEM:
    5116         1126 :       x5 = XEXP (x3, 2);
    5117         1126 :       operands[4] = x5;
    5118         1126 :       x6 = XVECEXP (x1, 0, 1);
    5119         1126 :       operands[5] = x6;
    5120         1126 :       switch (GET_MODE (operands[0]))
    5121              :         {
    5122          572 :         case E_V8HFmode:
    5123          572 :           return pattern1410 (x1, 
    5124          572 : E_V8HFmode); /* [-1, 0] */
    5125              : 
    5126          277 :         case E_V4SFmode:
    5127          277 :           if (pattern1410 (x1, 
    5128              : E_V4SFmode) != 0)
    5129              :             return -1;
    5130              :           return 1;
    5131              : 
    5132          277 :         case E_V2DFmode:
    5133          277 :           if (pattern1410 (x1, 
    5134              : E_V2DFmode) != 0)
    5135              :             return -1;
    5136              :           return 2;
    5137              : 
    5138              :         default:
    5139              :           return -1;
    5140              :         }
    5141              : 
    5142          435 :     case CONST_INT:
    5143          435 :     case CONST_DOUBLE:
    5144          435 :     case CONST_VECTOR:
    5145          435 :       operands[4] = x4;
    5146          435 :       x7 = XEXP (x3, 0);
    5147          435 :       x8 = XEXP (x7, 0);
    5148          435 :       x9 = XEXP (x8, 0);
    5149          435 :       operands[2] = x9;
    5150          435 :       x10 = XEXP (x7, 1);
    5151          435 :       operands[1] = x10;
    5152          435 :       x5 = XEXP (x3, 2);
    5153          435 :       operands[5] = x5;
    5154          435 :       x6 = XVECEXP (x1, 0, 1);
    5155          435 :       operands[6] = x6;
    5156          435 :       x11 = XEXP (x2, 1);
    5157          435 :       if (!rtx_equal_p (x11, operands[1]))
    5158              :         return -1;
    5159          435 :       switch (GET_MODE (operands[0]))
    5160              :         {
    5161              :         case E_V8HFmode:
    5162              :           return 3;
    5163              : 
    5164              :         case E_V4SFmode:
    5165              :           return 4;
    5166              : 
    5167              :         case E_V2DFmode:
    5168              :           return 5;
    5169              : 
    5170              :         default:
    5171              :           return -1;
    5172              :         }
    5173              : 
    5174              :     default:
    5175              :       return -1;
    5176              :     }
    5177              : }
    5178              : 
    5179              : int
    5180            0 : pattern1433 (rtx x1)
    5181              : {
    5182            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5183            0 :   int res ATTRIBUTE_UNUSED;
    5184            0 :   operands[2] = x1;
    5185            0 :   if (!register_operand (operands[2], E_DImode))
    5186              :     return -1;
    5187            0 :   switch (GET_MODE (operands[1]))
    5188              :     {
    5189            0 :     case E_SImode:
    5190            0 :       if (!nonimmediate_operand (operands[1], E_SImode))
    5191              :         return -1;
    5192              :       return 0;
    5193              : 
    5194            0 :     case E_DImode:
    5195            0 :       if (!nonimmediate_operand (operands[1], E_DImode))
    5196              :         return -1;
    5197              :       return 1;
    5198              : 
    5199              :     default:
    5200              :       return -1;
    5201              :     }
    5202              : }
    5203              : 
    5204              : int
    5205        45578 : pattern1444 (rtx x1, machine_mode i1)
    5206              : {
    5207        45578 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5208        45578 :   rtx x2;
    5209        45578 :   int res ATTRIBUTE_UNUSED;
    5210        45578 :   if (!register_operand (operands[0], i1)
    5211        45578 :       || GET_MODE (x1) != i1)
    5212              :     return -1;
    5213        43494 :   x2 = XEXP (x1, 0);
    5214        43494 :   if (GET_MODE (x2) != i1
    5215        43494 :       || !register_operand (operands[1], i1)
    5216        86368 :       || !nonimmediate_operand (operands[2], i1))
    5217         6915 :     return -1;
    5218              :   return 0;
    5219              : }
    5220              : 
    5221              : int
    5222        87800 : pattern1450 (rtx x1)
    5223              : {
    5224        87800 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5225        87800 :   rtx x2, x3, x4;
    5226        87800 :   int res ATTRIBUTE_UNUSED;
    5227        87800 :   x2 = XVECEXP (x1, 0, 0);
    5228        87800 :   x3 = XEXP (x2, 1);
    5229        87800 :   operands[1] = x3;
    5230        87800 :   x4 = XEXP (x2, 0);
    5231        87800 :   if (!rtx_equal_p (x4, operands[0]))
    5232              :     return -1;
    5233        85860 :   switch (GET_MODE (operands[0]))
    5234              :     {
    5235         5462 :     case E_QImode:
    5236         5462 :       return pattern1449 (x1, 
    5237         5462 : E_QImode); /* [-1, 0] */
    5238              : 
    5239         4047 :     case E_HImode:
    5240         4047 :       if (pattern1449 (x1, 
    5241              : E_HImode) != 0)
    5242              :         return -1;
    5243              :       return 1;
    5244              : 
    5245        54064 :     case E_SImode:
    5246        54064 :       if (pattern1449 (x1, 
    5247              : E_SImode) != 0)
    5248              :         return -1;
    5249              :       return 2;
    5250              : 
    5251        22287 :     case E_DImode:
    5252        22287 :       if (pattern1449 (x1, 
    5253              : E_DImode) != 0)
    5254              :         return -1;
    5255              :       return 3;
    5256              : 
    5257              :     default:
    5258              :       return -1;
    5259              :     }
    5260              : }
    5261              : 
    5262              : int
    5263            0 : pattern1462 (rtx x1)
    5264              : {
    5265            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5266            0 :   rtx x2, x3, x4, x5;
    5267            0 :   int res ATTRIBUTE_UNUSED;
    5268            0 :   x2 = XEXP (x1, 2);
    5269            0 :   x3 = XEXP (x2, 0);
    5270            0 :   x4 = XEXP (x3, 0);
    5271            0 :   operands[1] = x4;
    5272            0 :   x5 = XEXP (x3, 1);
    5273            0 :   operands[2] = x5;
    5274            0 :   if (!const_int_operand (operands[2], E_VOIDmode))
    5275              :     return -1;
    5276            0 :   switch (GET_MODE (x1))
    5277              :     {
    5278            0 :     case E_SImode:
    5279            0 :       return pattern1461 (x3, 
    5280            0 : E_SImode); /* [-1, 2] */
    5281              : 
    5282            0 :     case E_DImode:
    5283            0 :       res = pattern1461 (x3, 
    5284              : E_DImode);
    5285            0 :       if (res >= 0)
    5286            0 :         return res + 3; /* [3, 5] */
    5287              :       return -1;
    5288              : 
    5289              :     default:
    5290              :       return -1;
    5291              :     }
    5292              : }
    5293              : 
    5294              : int
    5295          114 : pattern1473 (rtx x1, machine_mode i1, machine_mode i2)
    5296              : {
    5297          114 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5298          114 :   rtx x2, x3;
    5299          114 :   int res ATTRIBUTE_UNUSED;
    5300          114 :   if (!register_operand (operands[0], i1)
    5301          114 :       || GET_MODE (x1) != i1)
    5302              :     return -1;
    5303          108 :   x2 = XEXP (x1, 0);
    5304          108 :   if (GET_MODE (x2) != i1)
    5305              :     return -1;
    5306          108 :   x3 = XEXP (x2, 0);
    5307          108 :   if (GET_MODE (x3) != i2
    5308          108 :       || !register_operand (operands[2], i1))
    5309            2 :     return -1;
    5310              :   return 0;
    5311              : }
    5312              : 
    5313              : int
    5314           27 : pattern1478 (rtx x1, machine_mode i1, machine_mode i2)
    5315              : {
    5316           27 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5317           27 :   rtx x2, x3;
    5318           27 :   int res ATTRIBUTE_UNUSED;
    5319           27 :   if (!register_operand (operands[0], i1)
    5320           27 :       || GET_MODE (x1) != i1
    5321           27 :       || !vector_operand (operands[1], i1)
    5322           54 :       || !vector_operand (operands[2], i1))
    5323            0 :     return -1;
    5324           27 :   x2 = XEXP (x1, 2);
    5325           27 :   if (GET_MODE (x2) != i2)
    5326              :     return -1;
    5327           27 :   x3 = XVECEXP (x2, 0, 0);
    5328           27 :   if (GET_MODE (x3) != i1
    5329           27 :       || !register_operand (operands[3], E_VOIDmode)
    5330           48 :       || !const0_operand (operands[4], i1))
    5331           14 :     return -1;
    5332              :   return 0;
    5333              : }
    5334              : 
    5335              : int
    5336          493 : pattern1488 (rtx x1, machine_mode i1)
    5337              : {
    5338          493 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5339          493 :   rtx x2;
    5340          493 :   int res ATTRIBUTE_UNUSED;
    5341          493 :   if (!register_operand (operands[0], i1)
    5342          493 :       || GET_MODE (x1) != i1)
    5343              :     return -1;
    5344          474 :   x2 = XVECEXP (x1, 0, 0);
    5345          474 :   if (GET_MODE (x2) != i1
    5346          474 :       || !register_operand (operands[1], i1)
    5347          463 :       || !register_operand (operands[2], i1)
    5348          933 :       || !register_operand (operands[3], i1))
    5349           15 :     return -1;
    5350              :   return 0;
    5351              : }
    5352              : 
    5353              : int
    5354       460732 : pattern1494 (rtx x1, machine_mode i1, machine_mode i2)
    5355              : {
    5356       460732 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5357       460732 :   rtx x2;
    5358       460732 :   int res ATTRIBUTE_UNUSED;
    5359       460732 :   if (!register_operand (operands[0], i1)
    5360       460732 :       || GET_MODE (x1) != i1)
    5361              :     return -1;
    5362       440866 :   x2 = XEXP (x1, 0);
    5363       440866 :   if (GET_MODE (x2) != i2
    5364       440866 :       || !register_operand (operands[1], i1)
    5365       818706 :       || !vector_operand (operands[2], i1))
    5366        94811 :     return -1;
    5367              :   return 0;
    5368              : }
    5369              : 
    5370              : int
    5371          379 : pattern1503 (rtx x1)
    5372              : {
    5373          379 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5374          379 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5375          379 :   int res ATTRIBUTE_UNUSED;
    5376          379 :   x2 = XVECEXP (x1, 0, 1);
    5377          379 :   x3 = XEXP (x2, 1);
    5378          379 :   x4 = XEXP (x3, 0);
    5379          379 :   x5 = XEXP (x4, 0);
    5380          379 :   if (!rtx_equal_p (x5, operands[1]))
    5381              :     return -1;
    5382          379 :   x6 = XEXP (x3, 1);
    5383          379 :   if (!rtx_equal_p (x6, operands[1]))
    5384              :     return -1;
    5385          379 :   x7 = XVECEXP (x1, 0, 0);
    5386          379 :   x8 = XEXP (x7, 1);
    5387          379 :   x9 = XEXP (x8, 0);
    5388          379 :   switch (GET_MODE (x9))
    5389              :     {
    5390          108 :     case E_SImode:
    5391          108 :       return pattern1502 (x1, 
    5392          108 : E_SImode); /* [-1, 0] */
    5393              : 
    5394          136 :     case E_DImode:
    5395          136 :       if (pattern1502 (x1, 
    5396              : E_DImode) != 0)
    5397              :         return -1;
    5398              :       return 1;
    5399              : 
    5400              :     default:
    5401              :       return -1;
    5402              :     }
    5403              : }
    5404              : 
    5405              : int
    5406         6344 : pattern1513 (rtx x1, machine_mode i1)
    5407              : {
    5408         6344 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5409         6344 :   rtx x2;
    5410         6344 :   int res ATTRIBUTE_UNUSED;
    5411         6344 :   if (!mask_reg_operand (operands[0], i1)
    5412         6344 :       || GET_MODE (x1) != i1)
    5413              :     return -1;
    5414            0 :   x2 = XEXP (x1, 0);
    5415            0 :   if (GET_MODE (x2) != i1
    5416            0 :       || !mask_reg_operand (operands[1], i1)
    5417            0 :       || !mask_reg_operand (operands[2], i1))
    5418            0 :     return -1;
    5419              :   return 0;
    5420              : }
    5421              : 
    5422              : int
    5423         4423 : pattern1518 (rtx x1)
    5424              : {
    5425         4423 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5426         4423 :   rtx x2, x3, x4, x5, x6;
    5427         4423 :   int res ATTRIBUTE_UNUSED;
    5428         4423 :   x2 = XVECEXP (x1, 0, 2);
    5429         4423 :   if (GET_CODE (x2) != CLOBBER)
    5430              :     return -1;
    5431         4423 :   x3 = XEXP (x2, 0);
    5432         4423 :   if (GET_CODE (x3) != REG
    5433         4423 :       || REGNO (x3) != 17
    5434         8846 :       || GET_MODE (x3) != E_CCmode)
    5435              :     return -1;
    5436         4423 :   x4 = XVECEXP (x1, 0, 0);
    5437         4423 :   x5 = XEXP (x4, 1);
    5438         4423 :   x6 = XVECEXP (x5, 0, 0);
    5439         4423 :   operands[1] = x6;
    5440         4423 :   return 0;
    5441              : }
    5442              : 
    5443              : int
    5444          155 : pattern1526 (rtx x1, machine_mode i1, machine_mode i2)
    5445              : {
    5446          155 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5447          155 :   rtx x2;
    5448          155 :   int res ATTRIBUTE_UNUSED;
    5449          155 :   if (!register_operand (operands[0], i2)
    5450          155 :       || GET_MODE (x1) != i2)
    5451              :     return -1;
    5452          139 :   x2 = XEXP (x1, 0);
    5453          139 :   if (GET_MODE (x2) != i2
    5454          139 :       || !register_operand (operands[1], i2)
    5455          127 :       || !register_operand (operands[2], i2)
    5456          266 :       || !nonimmediate_operand (operands[3], i1))
    5457           24 :     return -1;
    5458              :   return 0;
    5459              : }
    5460              : 
    5461              : int
    5462       283352 : pattern1533 (rtx x1, machine_mode i1)
    5463              : {
    5464       283352 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5465       283352 :   int res ATTRIBUTE_UNUSED;
    5466       283352 :   if (!nonimmediate_operand (operands[0], i1)
    5467       283169 :       || GET_MODE (x1) != i1
    5468       283169 :       || !nonimmediate_operand (operands[1], i1)
    5469       564108 :       || !nonmemory_operand (operands[2], E_QImode))
    5470         6620 :     return -1;
    5471              :   return 0;
    5472              : }
    5473              : 
    5474              : int
    5475          156 : pattern1540 (rtx x1, machine_mode i1)
    5476              : {
    5477          156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5478          156 :   rtx x2, x3;
    5479          156 :   int res ATTRIBUTE_UNUSED;
    5480          156 :   if (!register_operand (operands[0], i1)
    5481          156 :       || GET_MODE (x1) != i1
    5482          156 :       || !nonimmediate_operand (operands[3], i1)
    5483          217 :       || !nonimmediate_operand (operands[4], i1))
    5484          100 :     return -1;
    5485           56 :   x2 = XEXP (x1, 0);
    5486           56 :   x3 = XEXP (x2, 0);
    5487           56 :   switch (GET_MODE (x3))
    5488              :     {
    5489           46 :     case E_SImode:
    5490           46 :       if (!register_operand (operands[1], E_SImode))
    5491              :         return -1;
    5492              :       return 0;
    5493              : 
    5494           10 :     case E_DImode:
    5495           10 :       if (!register_operand (operands[1], E_DImode))
    5496              :         return -1;
    5497              :       return 1;
    5498              : 
    5499              :     default:
    5500              :       return -1;
    5501              :     }
    5502              : }
    5503              : 
    5504              : int
    5505            3 : pattern1550 (rtx x1, machine_mode i1)
    5506              : {
    5507            3 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5508            3 :   int res ATTRIBUTE_UNUSED;
    5509            3 :   if (GET_MODE (x1) != i1
    5510            3 :       || !nonimmediate_operand (operands[1], i1)
    5511            3 :       || !ix86_carry_flag_operator (operands[3], i1)
    5512            6 :       || !x86_64_general_operand (operands[2], i1))
    5513            0 :     return -1;
    5514              :   return 0;
    5515              : }
    5516              : 
    5517              : int
    5518          937 : pattern1556 (rtx x1, machine_mode i1, machine_mode i2)
    5519              : {
    5520          937 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5521          937 :   rtx x2;
    5522          937 :   int res ATTRIBUTE_UNUSED;
    5523          937 :   if (!nonimmediate_operand (operands[0], i1)
    5524          937 :       || GET_MODE (x1) != i1)
    5525              :     return -1;
    5526          913 :   x2 = XEXP (x1, 0);
    5527          913 :   if (GET_MODE (x2) != i1
    5528          913 :       || !register_operand (operands[1], i2)
    5529         1288 :       || !nonimm_or_0_operand (operands[4], i1))
    5530          541 :     return -1;
    5531              :   return 0;
    5532              : }
    5533              : 
    5534              : int
    5535         2799 : pattern1563 (rtx x1, machine_mode i1, machine_mode i2)
    5536              : {
    5537         2799 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5538         2799 :   rtx x2, x3;
    5539         2799 :   int res ATTRIBUTE_UNUSED;
    5540         2799 :   if (!register_operand (operands[0], i1)
    5541         2799 :       || GET_MODE (x1) != i1)
    5542              :     return -1;
    5543         2739 :   x2 = XVECEXP (x1, 0, 0);
    5544         2739 :   if (GET_MODE (x2) != i1)
    5545              :     return -1;
    5546         2739 :   x3 = XEXP (x2, 0);
    5547         2739 :   if (GET_MODE (x3) != i1
    5548         2739 :       || !nonimmediate_operand (operands[1], i1)
    5549         2737 :       || !nonimm_or_0_operand (operands[3], i1)
    5550         5474 :       || !register_operand (operands[4], i2))
    5551           43 :     return -1;
    5552              :   return 0;
    5553              : }
    5554              : 
    5555              : int
    5556           66 : pattern1571 (rtx x1)
    5557              : {
    5558           66 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5559           66 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5560           66 :   rtx x10;
    5561           66 :   int res ATTRIBUTE_UNUSED;
    5562           66 :   x2 = XVECEXP (x1, 0, 1);
    5563           66 :   x3 = XEXP (x2, 1);
    5564           66 :   x4 = XEXP (x3, 1);
    5565           66 :   if (!rtx_equal_p (x4, operands[2]))
    5566              :     return -1;
    5567           66 :   x5 = XVECEXP (x1, 0, 0);
    5568           66 :   x6 = XEXP (x5, 1);
    5569           66 :   x7 = XEXP (x6, 0);
    5570           66 :   x8 = XEXP (x7, 1);
    5571           66 :   x9 = XEXP (x8, 0);
    5572           66 :   operands[3] = x9;
    5573           66 :   if (!flags_reg_operand (operands[3], E_VOIDmode))
    5574              :     return -1;
    5575           66 :   x10 = XEXP (x3, 0);
    5576           66 :   if (!rtx_equal_p (x10, operands[1]))
    5577              :     return -1;
    5578           66 :   switch (GET_MODE (x7))
    5579              :     {
    5580              :     case E_QImode:
    5581              :       return 0;
    5582              : 
    5583              :     case E_HImode:
    5584              :       return 1;
    5585              : 
    5586              :     case E_SImode:
    5587              :       return 2;
    5588              : 
    5589              :     case E_DImode:
    5590              :       return 3;
    5591              : 
    5592              :     default:
    5593              :       return -1;
    5594              :     }
    5595              : }
    5596              : 
    5597              : int
    5598            4 : pattern1585 (rtx x1)
    5599              : {
    5600            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5601            4 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5602            4 :   rtx x10, x11, x12;
    5603            4 :   int res ATTRIBUTE_UNUSED;
    5604            4 :   x2 = XVECEXP (x1, 0, 0);
    5605            4 :   x3 = XEXP (x2, 1);
    5606            4 :   x4 = XEXP (x3, 0);
    5607            4 :   x5 = XEXP (x4, 0);
    5608            4 :   x6 = XEXP (x5, 0);
    5609            4 :   operands[1] = x6;
    5610            4 :   x7 = XEXP (x4, 1);
    5611            4 :   if (!rtx_equal_p (x7, operands[1]))
    5612              :     return -1;
    5613            4 :   x8 = XVECEXP (x1, 0, 1);
    5614            4 :   x9 = XEXP (x8, 1);
    5615            4 :   x10 = XEXP (x9, 0);
    5616            4 :   x11 = XEXP (x10, 0);
    5617            4 :   if (!rtx_equal_p (x11, operands[1]))
    5618              :     return -1;
    5619            4 :   x12 = XEXP (x9, 1);
    5620            4 :   if (!rtx_equal_p (x12, operands[1]))
    5621              :     return -1;
    5622            4 :   switch (GET_MODE (x4))
    5623              :     {
    5624            4 :     case E_SImode:
    5625            4 :       return pattern1584 (x1, 
    5626            4 : E_SImode); /* [-1, 0] */
    5627              : 
    5628            0 :     case E_DImode:
    5629            0 :       if (pattern1584 (x1, 
    5630              : E_DImode) != 0)
    5631              :         return -1;
    5632              :       return 1;
    5633              : 
    5634              :     default:
    5635              :       return -1;
    5636              :     }
    5637              : }
    5638              : 
    5639              : int
    5640         1535 : pattern1598 (rtx x1, machine_mode i1, machine_mode i2)
    5641              : {
    5642         1535 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5643         1535 :   rtx x2, x3;
    5644         1535 :   int res ATTRIBUTE_UNUSED;
    5645         1535 :   if (!register_operand (operands[0], i1)
    5646         1535 :       || GET_MODE (x1) != i1)
    5647              :     return -1;
    5648         1502 :   x2 = XVECEXP (x1, 0, 0);
    5649         1502 :   if (GET_MODE (x2) != i1)
    5650              :     return -1;
    5651         1502 :   x3 = XEXP (x2, 0);
    5652         1502 :   if (GET_MODE (x3) != i1
    5653         1502 :       || !register_operand (operands[2], i1)
    5654         2992 :       || !register_operand (operands[4], i2))
    5655           22 :     return -1;
    5656              :   return 0;
    5657              : }
    5658              : 
    5659              : int
    5660            0 : pattern1607 (rtx x1, machine_mode i1, machine_mode i2)
    5661              : {
    5662            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5663            0 :   rtx x2, x3, x4, x5;
    5664            0 :   int res ATTRIBUTE_UNUSED;
    5665            0 :   if (!register_operand (operands[0], i1)
    5666            0 :       || GET_MODE (x1) != i1)
    5667              :     return -1;
    5668            0 :   x2 = XVECEXP (x1, 0, 0);
    5669            0 :   if (GET_MODE (x2) != i1)
    5670              :     return -1;
    5671            0 :   x3 = XEXP (x2, 0);
    5672            0 :   if (GET_MODE (x3) != i1
    5673            0 :       || !nonimmediate_operand (operands[1], i1)
    5674            0 :       || !register_operand (operands[2], i1))
    5675            0 :     return -1;
    5676            0 :   x4 = XEXP (x3, 2);
    5677            0 :   if (GET_MODE (x4) != i1
    5678            0 :       || !register_operand (operands[3], i1)
    5679            0 :       || !register_operand (operands[4], i2))
    5680            0 :     return -1;
    5681            0 :   x5 = XEXP (x2, 1);
    5682            0 :   if (!rtx_equal_p (x5, operands[1]))
    5683              :     return -1;
    5684              :   return 0;
    5685              : }
    5686              : 
    5687              : int
    5688          270 : pattern1618 (rtx x1, machine_mode i1)
    5689              : {
    5690          270 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5691          270 :   rtx x2, x3, x4;
    5692          270 :   int res ATTRIBUTE_UNUSED;
    5693          270 :   if (!vsib_mem_operator (operands[5], i1)
    5694          270 :       || !register_operand (operands[6], E_QImode))
    5695          114 :     return -1;
    5696          156 :   x2 = XEXP (x1, 1);
    5697          156 :   if (GET_MODE (x2) != i1
    5698          156 :       || !register_operand (operands[3], i1))
    5699            0 :     return -1;
    5700          156 :   x3 = XEXP (x1, 0);
    5701          156 :   x4 = XEXP (x3, 0);
    5702          156 :   switch (GET_MODE (x4))
    5703              :     {
    5704            0 :     case E_SImode:
    5705            0 :       return pattern1617 (
    5706            0 : E_SImode); /* [-1, 1] */
    5707              : 
    5708          156 :     case E_DImode:
    5709          156 :       res = pattern1617 (
    5710              : E_DImode);
    5711          156 :       if (res >= 0)
    5712           88 :         return res + 2; /* [2, 3] */
    5713              :       return -1;
    5714              : 
    5715              :     default:
    5716              :       return -1;
    5717              :     }
    5718              : }
    5719              : 
    5720              : int
    5721           36 : pattern1629 (machine_mode i1)
    5722              : {
    5723           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5724           36 :   int res ATTRIBUTE_UNUSED;
    5725           36 :   if (!vsib_address_operand (operands[3], i1))
    5726              :     return -1;
    5727           36 :   switch (GET_MODE (operands[2]))
    5728              :     {
    5729            9 :     case E_V4SImode:
    5730            9 :       if (!register_operand (operands[2], E_V4SImode))
    5731              :         return -1;
    5732              :       return 0;
    5733              : 
    5734           27 :     case E_V2DImode:
    5735           27 :       if (!register_operand (operands[2], E_V2DImode))
    5736              :         return -1;
    5737              :       return 1;
    5738              : 
    5739              :     default:
    5740              :       return -1;
    5741              :     }
    5742              : }
    5743              : 
    5744              : int
    5745        46003 : pattern1637 (rtx x1, machine_mode i1)
    5746              : {
    5747        46003 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5748        46003 :   rtx x2;
    5749        46003 :   int res ATTRIBUTE_UNUSED;
    5750        46003 :   if (!nonimmediate_operand (operands[0], i1)
    5751        46003 :       || GET_MODE (x1) != i1)
    5752              :     return -1;
    5753        46003 :   x2 = XEXP (x1, 0);
    5754        46003 :   if (GET_MODE (x2) != i1
    5755        46003 :       || !ix86_carry_flag_operator (operands[4], i1)
    5756        46003 :       || !nonimmediate_operand (operands[1], i1)
    5757        91975 :       || !x86_64_general_operand (operands[2], i1))
    5758           37 :     return -1;
    5759              :   return 0;
    5760              : }
    5761              : 
    5762              : int
    5763         1987 : pattern1645 (rtx x1)
    5764              : {
    5765         1987 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5766         1987 :   rtx x2, x3, x4;
    5767         1987 :   int res ATTRIBUTE_UNUSED;
    5768         1987 :   x2 = XEXP (x1, 1);
    5769         1987 :   x3 = XEXP (x2, 1);
    5770         1987 :   if (GET_CODE (x3) != SUBREG
    5771          890 :       || maybe_ne (SUBREG_BYTE (x3), 0)
    5772         2877 :       || GET_MODE (x3) != E_QImode)
    5773              :     return -1;
    5774          890 :   x4 = XEXP (x3, 0);
    5775          890 :   switch (GET_CODE (x4))
    5776              :     {
    5777          239 :     case ASHIFTRT:
    5778          239 :     case LSHIFTRT:
    5779          239 :     case SIGN_EXTRACT:
    5780          239 :     case ZERO_EXTRACT:
    5781          239 :       operands[4] = x4;
    5782          239 :       return pattern1054 (x1); /* [-1, 5] */
    5783              : 
    5784              :     default:
    5785              :       return -1;
    5786              :     }
    5787              : }
    5788              : 
    5789              : int
    5790          125 : pattern1655 (rtx x1, machine_mode i1, machine_mode i2)
    5791              : {
    5792          125 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5793          125 :   rtx x2, x3;
    5794          125 :   int res ATTRIBUTE_UNUSED;
    5795          125 :   if (!register_operand (operands[0], i2)
    5796          125 :       || GET_MODE (x1) != i2)
    5797              :     return -1;
    5798          113 :   x2 = XEXP (x1, 0);
    5799          113 :   if (GET_MODE (x2) != i2)
    5800              :     return -1;
    5801          113 :   x3 = XEXP (x2, 0);
    5802          113 :   if (GET_MODE (x3) != i2
    5803          113 :       || !register_operand (operands[1], i2)
    5804          107 :       || !register_operand (operands[2], i2)
    5805          220 :       || !nonimmediate_operand (operands[3], i1))
    5806           14 :     return -1;
    5807              :   return 0;
    5808              : }
    5809              : 
    5810              : int
    5811          850 : pattern1665 (rtx x1, machine_mode i1, machine_mode i2)
    5812              : {
    5813          850 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5814          850 :   rtx x2, x3;
    5815          850 :   int res ATTRIBUTE_UNUSED;
    5816          850 :   if (!register_operand (operands[0], i1)
    5817          850 :       || GET_MODE (x1) != i1)
    5818              :     return -1;
    5819          836 :   x2 = XVECEXP (x1, 0, 0);
    5820          836 :   if (GET_MODE (x2) != i1)
    5821              :     return -1;
    5822          836 :   x3 = XEXP (x2, 0);
    5823          836 :   if (GET_MODE (x3) != i1
    5824          836 :       || !register_operand (operands[1], i1)
    5825          836 :       || !register_operand (operands[2], i1)
    5826          836 :       || !nonimm_or_0_operand (operands[4], i1)
    5827         1672 :       || !register_operand (operands[5], i2))
    5828            0 :     return -1;
    5829              :   return 0;
    5830              : }
    5831              : 
    5832              : int
    5833          190 : pattern1672 (rtx x1, machine_mode i1, machine_mode i2)
    5834              : {
    5835          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5836          190 :   int res ATTRIBUTE_UNUSED;
    5837          190 :   if (!register_operand (operands[0], i2)
    5838          189 :       || GET_MODE (x1) != i2
    5839          189 :       || !register_operand (operands[7], E_QImode)
    5840          342 :       || !vsib_mem_operator (operands[6], i1))
    5841           38 :     return -1;
    5842              :   return 0;
    5843              : }
    5844              : 
    5845              : int
    5846         6950 : pattern1678 (rtx x1, machine_mode i1)
    5847              : {
    5848         6950 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5849         6950 :   int res ATTRIBUTE_UNUSED;
    5850         6950 :   if (!nonimmediate_operand (operands[1], i1)
    5851         6950 :       || !const_int_operand (operands[2], i1)
    5852         6950 :       || !nonimmediate_operand (operands[0], i1)
    5853        13900 :       || GET_MODE (x1) != i1)
    5854            0 :     return -1;
    5855              :   return 0;
    5856              : }
    5857              : 
    5858              : int
    5859           64 : pattern1685 (rtx x1)
    5860              : {
    5861           64 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5862           64 :   rtx x2, x3, x4, x5, x6, x7;
    5863           64 :   int res ATTRIBUTE_UNUSED;
    5864           64 :   x2 = XEXP (x1, 1);
    5865           64 :   x3 = XEXP (x2, 0);
    5866           64 :   x4 = XEXP (x3, 1);
    5867           64 :   if (maybe_ne (SUBREG_BYTE (x4), 0)
    5868           64 :       || GET_MODE (x4) != E_QImode)
    5869              :     return -1;
    5870           64 :   x5 = XEXP (x4, 0);
    5871           64 :   switch (GET_CODE (x5))
    5872              :     {
    5873           64 :     case ASHIFTRT:
    5874           64 :     case LSHIFTRT:
    5875           64 :     case SIGN_EXTRACT:
    5876           64 :     case ZERO_EXTRACT:
    5877           64 :       operands[4] = x5;
    5878           64 :       x6 = XEXP (x5, 0);
    5879           64 :       operands[2] = x6;
    5880           64 :       if (!int248_register_operand (operands[2], E_VOIDmode))
    5881              :         return -1;
    5882           43 :       x7 = XEXP (x1, 0);
    5883           43 :       switch (GET_MODE (x7))
    5884              :         {
    5885            8 :         case E_HImode:
    5886            8 :           if (GET_MODE (x2) != E_HImode
    5887            8 :               || !extract_high_operator (operands[3], E_HImode)
    5888           16 :               || !extract_high_operator (operands[4], E_HImode))
    5889            0 :             return -1;
    5890              :           return 0;
    5891              : 
    5892           31 :         case E_SImode:
    5893           31 :           if (GET_MODE (x2) != E_SImode
    5894           31 :               || !extract_high_operator (operands[3], E_SImode)
    5895           62 :               || !extract_high_operator (operands[4], E_SImode))
    5896            0 :             return -1;
    5897              :           return 1;
    5898              : 
    5899            4 :         case E_DImode:
    5900            4 :           if (GET_MODE (x2) != E_DImode
    5901            4 :               || !extract_high_operator (operands[3], E_DImode)
    5902            8 :               || !extract_high_operator (operands[4], E_DImode))
    5903            0 :             return -1;
    5904              :           return 2;
    5905              : 
    5906              :         default:
    5907              :           return -1;
    5908              :         }
    5909              : 
    5910              :     default:
    5911              :       return -1;
    5912              :     }
    5913              : }
    5914              : 
    5915              : int
    5916           18 : pattern1709 (rtx x1, machine_mode i1)
    5917              : {
    5918           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5919           18 :   rtx x2, x3, x4, x5;
    5920           18 :   int res ATTRIBUTE_UNUSED;
    5921           18 :   x2 = XVECEXP (x1, 0, 0);
    5922           18 :   x3 = XEXP (x2, 0);
    5923           18 :   if (GET_MODE (x3) != i1
    5924           18 :       || !register_operand (operands[1], i1)
    5925           36 :       || !register_operand (operands[2], i1))
    5926            0 :     return -1;
    5927           18 :   x4 = XVECEXP (x1, 0, 1);
    5928           18 :   if (GET_MODE (x4) != i1)
    5929              :     return -1;
    5930           18 :   x5 = XEXP (x4, 0);
    5931           18 :   if (GET_MODE (x5) != i1)
    5932              :     return -1;
    5933              :   return 0;
    5934              : }
    5935              : 
    5936              : int
    5937          447 : pattern1718 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5938              : {
    5939          447 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5940          447 :   rtx x2, x3;
    5941          447 :   int res ATTRIBUTE_UNUSED;
    5942          447 :   if (!register_operand (operands[0], i2)
    5943          447 :       || GET_MODE (x1) != i2)
    5944              :     return -1;
    5945          441 :   x2 = XVECEXP (x1, 0, 0);
    5946          441 :   if (GET_MODE (x2) != i2)
    5947              :     return -1;
    5948          441 :   x3 = XEXP (x2, 0);
    5949          441 :   if (GET_MODE (x3) != i2
    5950          441 :       || !register_operand (operands[1], i2)
    5951          441 :       || !register_operand (operands[2], i2)
    5952          441 :       || !nonimmediate_operand (operands[3], i1)
    5953          882 :       || !register_operand (operands[5], i3))
    5954            0 :     return -1;
    5955              :   return 0;
    5956              : }
    5957              : 
    5958              : int
    5959        96369 : pattern1727 (rtx x1)
    5960              : {
    5961        96369 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5962        96369 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5963        96369 :   int res ATTRIBUTE_UNUSED;
    5964        96369 :   x2 = XEXP (x1, 1);
    5965        96369 :   x3 = XVECEXP (x2, 0, 4);
    5966        96369 :   if (XWINT (x3, 0) != 6L)
    5967              :     return -1;
    5968        96369 :   x4 = XVECEXP (x2, 0, 5);
    5969        96369 :   if (XWINT (x4, 0) != 14L)
    5970              :     return -1;
    5971        96369 :   x5 = XVECEXP (x2, 0, 6);
    5972        96369 :   if (XWINT (x5, 0) != 7L)
    5973              :     return -1;
    5974        96369 :   x6 = XVECEXP (x2, 0, 7);
    5975        96369 :   if (XWINT (x6, 0) != 15L)
    5976              :     return -1;
    5977        96369 :   x7 = XEXP (x1, 0);
    5978        96369 :   x8 = XEXP (x7, 1);
    5979        96369 :   operands[2] = x8;
    5980        96369 :   return 0;
    5981              : }
    5982              : 
    5983              : int
    5984         1786 : pattern1735 (rtx x1, machine_mode i1)
    5985              : {
    5986         1786 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5987         1786 :   rtx x2, x3, x4;
    5988         1786 :   int res ATTRIBUTE_UNUSED;
    5989         1786 :   if (!vsib_mem_operator (operands[5], i1)
    5990         1786 :       || !register_operand (operands[6], E_QImode))
    5991          166 :     return -1;
    5992         1620 :   x2 = XEXP (x1, 1);
    5993         1620 :   if (GET_MODE (x2) != i1
    5994         1620 :       || !register_operand (operands[3], i1)
    5995         3190 :       || !scratch_operand (operands[1], E_QImode))
    5996           50 :     return -1;
    5997         1570 :   x3 = XEXP (x1, 0);
    5998         1570 :   x4 = XEXP (x3, 0);
    5999         1570 :   switch (GET_MODE (x4))
    6000              :     {
    6001            0 :     case E_SImode:
    6002            0 :       return pattern1734 (
    6003            0 : E_SImode); /* [-1, 1] */
    6004              : 
    6005         1570 :     case E_DImode:
    6006         1570 :       res = pattern1734 (
    6007              : E_DImode);
    6008         1570 :       if (res >= 0)
    6009         1460 :         return res + 2; /* [2, 3] */
    6010              :       return -1;
    6011              : 
    6012              :     default:
    6013              :       return -1;
    6014              :     }
    6015              : }
    6016              : 
    6017              : int
    6018            2 : pattern1747 (rtx x1, machine_mode i1)
    6019              : {
    6020            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6021            2 :   int res ATTRIBUTE_UNUSED;
    6022            2 :   if (!ix86_carry_flag_unset_operator (operands[2], i1)
    6023            2 :       || !nonimmediate_operand (operands[1], i1)
    6024            2 :       || !nonimmediate_operand (operands[0], i1)
    6025            4 :       || GET_MODE (x1) != i1)
    6026            0 :     return -1;
    6027              :   return 0;
    6028              : }
    6029              : 
    6030              : int
    6031          768 : pattern1753 (rtx x1, machine_mode i1)
    6032              : {
    6033          768 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6034          768 :   rtx x2;
    6035          768 :   int res ATTRIBUTE_UNUSED;
    6036          768 :   if (!register_operand (operands[0], i1)
    6037          768 :       || GET_MODE (x1) != i1)
    6038              :     return -1;
    6039          718 :   x2 = XEXP (x1, 0);
    6040          718 :   if (GET_MODE (x2) != i1
    6041          718 :       || !register_operand (operands[1], i1)
    6042          637 :       || !const_0_to_7_operand (operands[2], E_VOIDmode)
    6043          637 :       || !const_0_to_7_operand (operands[3], E_VOIDmode)
    6044          637 :       || !const_0_to_7_operand (operands[4], E_VOIDmode)
    6045          637 :       || !const_0_to_7_operand (operands[5], E_VOIDmode)
    6046          637 :       || !const_0_to_7_operand (operands[6], E_VOIDmode)
    6047          637 :       || !const_0_to_7_operand (operands[7], E_VOIDmode)
    6048          637 :       || !const_0_to_7_operand (operands[8], E_VOIDmode)
    6049          637 :       || !const_0_to_7_operand (operands[9], E_VOIDmode)
    6050         1355 :       || !nonimm_or_0_operand (operands[10], i1))
    6051          105 :     return -1;
    6052              :   return 0;
    6053              : }
    6054              : 
    6055              : int
    6056          200 : pattern1763 (machine_mode i1)
    6057              : {
    6058          200 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6059          200 :   int res ATTRIBUTE_UNUSED;
    6060          200 :   if (!vsib_address_operand (operands[3], i1))
    6061              :     return -1;
    6062          180 :   switch (GET_MODE (operands[4]))
    6063              :     {
    6064           90 :     case E_V4SImode:
    6065           90 :       if (!register_operand (operands[4], E_V4SImode))
    6066              :         return -1;
    6067              :       return 0;
    6068              : 
    6069           90 :     case E_V4DImode:
    6070           90 :       if (!register_operand (operands[4], E_V4DImode))
    6071              :         return -1;
    6072              :       return 1;
    6073              : 
    6074              :     default:
    6075              :       return -1;
    6076              :     }
    6077              : }
    6078              : 
    6079              : int
    6080         1299 : pattern1771 (rtx x1, machine_mode i1, machine_mode i2)
    6081              : {
    6082         1299 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6083         1299 :   rtx x2, x3;
    6084         1299 :   int res ATTRIBUTE_UNUSED;
    6085         1299 :   if (!register_operand (operands[0], i2)
    6086         1299 :       || GET_MODE (x1) != i2
    6087         1299 :       || !register_operand (operands[1], i2)
    6088         1299 :       || !register_operand (operands[7], E_QImode)
    6089         1295 :       || !vsib_mem_operator (operands[6], i1)
    6090         2594 :       || !scratch_operand (operands[2], E_QImode))
    6091            4 :     return -1;
    6092         1295 :   x2 = XVECEXP (x1, 0, 2);
    6093         1295 :   x3 = XEXP (x2, 0);
    6094         1295 :   switch (GET_MODE (x3))
    6095              :     {
    6096            0 :     case E_SImode:
    6097            0 :       return pattern1770 (
    6098            0 : E_SImode); /* [-1, 1] */
    6099              : 
    6100         1295 :     case E_DImode:
    6101         1295 :       res = pattern1770 (
    6102              : E_DImode);
    6103         1295 :       if (res >= 0)
    6104         1236 :         return res + 2; /* [2, 3] */
    6105              :       return -1;
    6106              : 
    6107              :     default:
    6108              :       return -1;
    6109              :     }
    6110              : }
    6111              : 
    6112              : int
    6113           53 : pattern1786 (rtx x1, machine_mode i1)
    6114              : {
    6115           53 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6116           53 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6117           53 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6118           53 :   int res ATTRIBUTE_UNUSED;
    6119           53 :   if (!constm1_operand (operands[2], i1))
    6120              :     return -1;
    6121           49 :   x2 = XVECEXP (x1, 0, 0);
    6122           49 :   x3 = XEXP (x2, 1);
    6123           49 :   if (XVECLEN (x3, 0) != 2
    6124           49 :       || XINT (x3, 1) != 110
    6125           49 :       || GET_MODE (x3) != i1)
    6126              :     return -1;
    6127           35 :   x4 = XVECEXP (x1, 0, 1);
    6128           35 :   x5 = XEXP (x4, 1);
    6129           35 :   if (GET_CODE (x5) != PLUS
    6130           35 :       || GET_MODE (x5) != i1)
    6131              :     return -1;
    6132           35 :   x6 = XVECEXP (x1, 0, 2);
    6133           35 :   if (GET_CODE (x6) != CLOBBER)
    6134              :     return -1;
    6135           35 :   x7 = XEXP (x6, 0);
    6136           35 :   if (GET_CODE (x7) != REG
    6137           35 :       || REGNO (x7) != 17
    6138           70 :       || GET_MODE (x7) != E_CCmode)
    6139              :     return -1;
    6140           35 :   x8 = XVECEXP (x3, 0, 0);
    6141           35 :   operands[1] = x8;
    6142           35 :   if (!memory_operand (operands[1], i1))
    6143              :     return -1;
    6144           35 :   x9 = XVECEXP (x3, 0, 1);
    6145           35 :   operands[4] = x9;
    6146           35 :   if (!const_int_operand (operands[4], E_SImode))
    6147              :     return -1;
    6148           35 :   x10 = XEXP (x2, 0);
    6149           35 :   if (!rtx_equal_p (x10, operands[0]))
    6150              :     return -1;
    6151           35 :   x11 = XEXP (x5, 0);
    6152           35 :   if (!rtx_equal_p (x11, operands[1]))
    6153              :     return -1;
    6154           35 :   x12 = XEXP (x5, 1);
    6155           35 :   if (!rtx_equal_p (x12, operands[0]))
    6156              :     return -1;
    6157           35 :   x13 = XEXP (x4, 0);
    6158           35 :   if (!rtx_equal_p (x13, operands[1]))
    6159              :     return -1;
    6160           35 :   x14 = PATTERN (peep2_next_insn (2));
    6161           35 :   x15 = XEXP (x14, 1);
    6162           35 :   x16 = XEXP (x15, 1);
    6163           35 :   operands[3] = x16;
    6164           35 :   if (!const_int_operand (operands[3], i1))
    6165              :     return -1;
    6166           33 :   x17 = XEXP (x15, 0);
    6167           33 :   if (!rtx_equal_p (x17, operands[0]))
    6168              :     return -1;
    6169              :   return 0;
    6170              : }
    6171              : 
    6172              : int
    6173         4876 : pattern1808 (rtx x1, machine_mode i1, machine_mode i2, rtx_code i3)
    6174              : {
    6175         4876 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6176         4876 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6177         4876 :   rtx x10, x11, x12, x13, x14, x15;
    6178         4876 :   int res ATTRIBUTE_UNUSED;
    6179         4876 :   if (GET_CODE (x1) != MULT
    6180         4876 :       || GET_MODE (x1) != i2)
    6181              :     return -1;
    6182         4876 :   x2 = XEXP (x1, 0);
    6183         4876 :   if (GET_CODE (x2) != i3
    6184         4876 :       || GET_MODE (x2) != i2)
    6185              :     return -1;
    6186         4876 :   x3 = XEXP (x2, 0);
    6187         4876 :   if (GET_CODE (x3) != VEC_SELECT
    6188         4876 :       || GET_MODE (x3) != i1)
    6189              :     return -1;
    6190         4876 :   x4 = XEXP (x3, 1);
    6191         4876 :   if (GET_CODE (x4) != PARALLEL
    6192         4876 :       || XVECLEN (x4, 0) != 4)
    6193              :     return -1;
    6194         4876 :   x5 = XVECEXP (x4, 0, 0);
    6195         4876 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6196              :     return -1;
    6197         4876 :   x6 = XVECEXP (x4, 0, 1);
    6198         4876 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6199              :     return -1;
    6200         4876 :   x7 = XVECEXP (x4, 0, 2);
    6201         4876 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6202              :     return -1;
    6203         4876 :   x8 = XVECEXP (x4, 0, 3);
    6204         4876 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6205              :     return -1;
    6206         4876 :   x9 = XEXP (x1, 1);
    6207         4876 :   if (GET_CODE (x9) != SIGN_EXTEND
    6208         4876 :       || GET_MODE (x9) != i2)
    6209              :     return -1;
    6210         4876 :   x10 = XEXP (x9, 0);
    6211         4876 :   if (GET_CODE (x10) != VEC_SELECT
    6212         4876 :       || GET_MODE (x10) != i1)
    6213              :     return -1;
    6214         4876 :   x11 = XEXP (x10, 1);
    6215         4876 :   if (GET_CODE (x11) != PARALLEL
    6216         4876 :       || XVECLEN (x11, 0) != 4)
    6217              :     return -1;
    6218         4876 :   x12 = XVECEXP (x11, 0, 0);
    6219         4876 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6220              :     return -1;
    6221         4876 :   x13 = XVECEXP (x11, 0, 1);
    6222         4876 :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6223              :     return -1;
    6224         4876 :   x14 = XVECEXP (x11, 0, 2);
    6225         4876 :   if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6226              :     return -1;
    6227         4876 :   x15 = XVECEXP (x11, 0, 3);
    6228         4876 :   if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6229            0 :     return -1;
    6230              :   return 0;
    6231              : }
    6232              : 
    6233              : int
    6234           63 : pattern1835 (rtx x1, machine_mode i1)
    6235              : {
    6236           63 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6237           63 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6238           63 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6239           63 :   rtx x18, x19, x20;
    6240           63 :   int res ATTRIBUTE_UNUSED;
    6241           63 :   if (!const_int_operand (operands[1], i1))
    6242              :     return -1;
    6243           63 :   x2 = XVECEXP (x1, 0, 0);
    6244           63 :   x3 = XEXP (x2, 1);
    6245           63 :   if (XVECLEN (x3, 0) != 4
    6246           10 :       || XINT (x3, 1) != 109)
    6247              :     return -1;
    6248           10 :   x4 = XVECEXP (x1, 0, 1);
    6249           10 :   x5 = XEXP (x4, 1);
    6250           10 :   if (GET_CODE (x5) != UNSPEC_VOLATILE
    6251           10 :       || XVECLEN (x5, 0) != 1
    6252           10 :       || XINT (x5, 1) != 109)
    6253              :     return -1;
    6254           10 :   x6 = XVECEXP (x5, 0, 0);
    6255           10 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6256              :     return -1;
    6257           10 :   x7 = XVECEXP (x1, 0, 2);
    6258           10 :   if (GET_CODE (x7) != SET)
    6259              :     return -1;
    6260           10 :   x8 = XEXP (x7, 1);
    6261           10 :   if (GET_CODE (x8) != UNSPEC_VOLATILE
    6262           10 :       || XVECLEN (x8, 0) != 1
    6263           10 :       || XINT (x8, 1) != 109
    6264           10 :       || GET_MODE (x8) != E_CCZmode)
    6265              :     return -1;
    6266           10 :   x9 = XVECEXP (x8, 0, 0);
    6267           10 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6268              :     return -1;
    6269           10 :   x10 = XEXP (x7, 0);
    6270           10 :   if (GET_CODE (x10) != REG
    6271           10 :       || REGNO (x10) != 17
    6272           20 :       || GET_MODE (x10) != E_CCZmode)
    6273              :     return -1;
    6274           10 :   x11 = XEXP (x2, 0);
    6275           10 :   operands[2] = x11;
    6276           10 :   x12 = XVECEXP (x3, 0, 0);
    6277           10 :   operands[3] = x12;
    6278           10 :   x13 = XVECEXP (x3, 0, 2);
    6279           10 :   operands[4] = x13;
    6280           10 :   x14 = XVECEXP (x3, 0, 3);
    6281           10 :   operands[5] = x14;
    6282           10 :   if (!const_int_operand (operands[5], E_SImode))
    6283              :     return -1;
    6284           10 :   x15 = XVECEXP (x3, 0, 1);
    6285           10 :   if (!rtx_equal_p (x15, operands[2]))
    6286              :     return -1;
    6287           10 :   x16 = XEXP (x4, 0);
    6288           10 :   if (!rtx_equal_p (x16, operands[3]))
    6289              :     return -1;
    6290           10 :   x17 = PATTERN (peep2_next_insn (2));
    6291           10 :   x18 = XEXP (x17, 1);
    6292           10 :   x19 = XEXP (x18, 0);
    6293           10 :   if (!rtx_equal_p (x19, operands[2]))
    6294              :     return -1;
    6295           10 :   x20 = XEXP (x18, 1);
    6296           10 :   if (!rtx_equal_p (x20, operands[1]))
    6297              :     return -1;
    6298           10 :   switch (GET_MODE (operands[2]))
    6299              :     {
    6300            0 :     case E_QImode:
    6301            0 :       return pattern1834 (x1, 
    6302            0 : E_QImode); /* [-1, 0] */
    6303              : 
    6304            2 :     case E_HImode:
    6305            2 :       if (pattern1834 (x1, 
    6306              : E_HImode) != 0)
    6307              :         return -1;
    6308              :       return 1;
    6309              : 
    6310            4 :     case E_SImode:
    6311            4 :       if (pattern1834 (x1, 
    6312              : E_SImode) != 0)
    6313              :         return -1;
    6314              :       return 2;
    6315              : 
    6316            4 :     case E_DImode:
    6317            4 :       if (pattern1834 (x1, 
    6318              : E_DImode) != 0)
    6319              :         return -1;
    6320              :       return 3;
    6321              : 
    6322              :     default:
    6323              :       return -1;
    6324              :     }
    6325              : }
    6326              : 
    6327              : int
    6328          751 : pattern1865 (machine_mode i1)
    6329              : {
    6330          751 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6331          751 :   int res ATTRIBUTE_UNUSED;
    6332          751 :   if (!vsib_address_operand (operands[2], i1))
    6333              :     return -1;
    6334          739 :   switch (GET_MODE (operands[3]))
    6335              :     {
    6336          500 :     case E_V8SImode:
    6337          500 :       if (!register_operand (operands[3], E_V8SImode)
    6338          500 :           || !register_operand (operands[4], E_V8SFmode))
    6339          121 :         return -1;
    6340              :       return 0;
    6341              : 
    6342          239 :     case E_V4DImode:
    6343          239 :       if (!register_operand (operands[3], E_V4DImode)
    6344          239 :           || !register_operand (operands[4], E_V4SFmode))
    6345           58 :         return -1;
    6346              :       return 1;
    6347              : 
    6348              :     default:
    6349              :       return -1;
    6350              :     }
    6351              : }
    6352              : 
    6353              : int
    6354          190 : pattern1873 (rtx x1, int i1, int i2, int i3, int i4, int i5)
    6355              : {
    6356          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6357          190 :   rtx x2, x3, x4, x5, x6;
    6358          190 :   int res ATTRIBUTE_UNUSED;
    6359          190 :   x2 = XVECEXP (x1, 0, 22);
    6360          190 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i5])
    6361              :     return -1;
    6362          190 :   x3 = XVECEXP (x1, 0, 23);
    6363          190 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    6364              :     return -1;
    6365          190 :   x4 = XVECEXP (x1, 0, 24);
    6366          190 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    6367              :     return -1;
    6368          190 :   x5 = XVECEXP (x1, 0, 25);
    6369          190 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    6370              :     return -1;
    6371          190 :   x6 = XVECEXP (x1, 0, 26);
    6372          190 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    6373            0 :     return -1;
    6374              :   return 0;
    6375              : }
    6376              : 
    6377              : int
    6378          400 : pattern1882 (rtx x1)
    6379              : {
    6380          400 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6381          400 :   rtx x2, x3, x4, x5;
    6382          400 :   int res ATTRIBUTE_UNUSED;
    6383          400 :   x2 = XVECEXP (x1, 0, 8);
    6384          400 :   if (XWINT (x2, 0) != 12L)
    6385              :     return -1;
    6386          400 :   x3 = XVECEXP (x1, 0, 9);
    6387          400 :   if (XWINT (x3, 0) != 28L)
    6388              :     return -1;
    6389          400 :   x4 = XVECEXP (x1, 0, 10);
    6390          400 :   if (XWINT (x4, 0) != 13L)
    6391              :     return -1;
    6392          400 :   x5 = XVECEXP (x1, 0, 11);
    6393          400 :   if (XWINT (x5, 0) != 29L)
    6394            0 :     return -1;
    6395              :   return 0;
    6396              : }
    6397              : 
    6398              : int
    6399        57290 : pattern1888 (rtx x1, machine_mode i1, machine_mode i2)
    6400              : {
    6401        57290 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6402        57290 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6403        57290 :   rtx x10, x11;
    6404        57290 :   int res ATTRIBUTE_UNUSED;
    6405        57290 :   x2 = XVECEXP (x1, 0, 0);
    6406        57290 :   x3 = XEXP (x2, 1);
    6407        57290 :   x4 = XEXP (x3, 0);
    6408        57290 :   x5 = XEXP (x4, 0);
    6409        57290 :   if (GET_MODE (x5) != i1)
    6410              :     return -1;
    6411        57290 :   x6 = XEXP (x5, 0);
    6412        57290 :   if (GET_MODE (x6) != i1
    6413        57290 :       || !ix86_carry_flag_operator (operands[5], i1)
    6414        57290 :       || !nonimmediate_operand (operands[1], i1)
    6415       114536 :       || !nonimmediate_operand (operands[2], i1))
    6416           44 :     return -1;
    6417        57246 :   x7 = XEXP (x3, 1);
    6418        57246 :   if (GET_MODE (x7) != i2
    6419        57246 :       || !ix86_carry_flag_operator (operands[4], i2))
    6420            0 :     return -1;
    6421        57246 :   x8 = XEXP (x7, 1);
    6422        57246 :   if (GET_MODE (x8) != i2
    6423        57246 :       || !nonimmediate_operand (operands[0], i1))
    6424            0 :     return -1;
    6425        57246 :   x9 = XVECEXP (x1, 0, 1);
    6426        57246 :   x10 = XEXP (x9, 1);
    6427        57246 :   if (GET_MODE (x10) != i1)
    6428              :     return -1;
    6429        57246 :   x11 = XEXP (x10, 0);
    6430        57246 :   if (GET_MODE (x11) != i1)
    6431              :     return -1;
    6432              :   return 0;
    6433              : }
    6434              : 
    6435              : int
    6436          351 : pattern1895 (rtx x1)
    6437              : {
    6438          351 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6439          351 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6440          351 :   int res ATTRIBUTE_UNUSED;
    6441          351 :   x2 = XEXP (x1, 1);
    6442          351 :   x3 = XVECEXP (x2, 0, 12);
    6443          351 :   if (XWINT (x3, 0) != 14L)
    6444              :     return -1;
    6445          351 :   x4 = XVECEXP (x2, 0, 13);
    6446          351 :   if (XWINT (x4, 0) != 30L)
    6447              :     return -1;
    6448          351 :   x5 = XVECEXP (x2, 0, 14);
    6449          351 :   if (XWINT (x5, 0) != 15L)
    6450              :     return -1;
    6451          351 :   x6 = XVECEXP (x2, 0, 15);
    6452          351 :   if (XWINT (x6, 0) != 31L)
    6453              :     return -1;
    6454          351 :   x7 = XEXP (x1, 0);
    6455          351 :   x8 = XEXP (x7, 1);
    6456          351 :   operands[2] = x8;
    6457          351 :   return 0;
    6458              : }
    6459              : 
    6460              : int
    6461          666 : pattern1899 (rtx x1)
    6462              : {
    6463          666 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6464          666 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6465          666 :   rtx x10, x11;
    6466          666 :   int res ATTRIBUTE_UNUSED;
    6467          666 :   x2 = XEXP (x1, 0);
    6468          666 :   x3 = XEXP (x2, 1);
    6469          666 :   x4 = XVECEXP (x3, 0, 12);
    6470          666 :   if (XWINT (x4, 0) != 14L)
    6471              :     return -1;
    6472          666 :   x5 = XVECEXP (x3, 0, 13);
    6473          666 :   if (XWINT (x5, 0) != 30L)
    6474              :     return -1;
    6475          666 :   x6 = XVECEXP (x3, 0, 14);
    6476          666 :   if (XWINT (x6, 0) != 15L)
    6477              :     return -1;
    6478          666 :   x7 = XVECEXP (x3, 0, 15);
    6479          666 :   if (XWINT (x7, 0) != 31L)
    6480              :     return -1;
    6481          666 :   x8 = XEXP (x2, 0);
    6482          666 :   x9 = XEXP (x8, 1);
    6483          666 :   operands[2] = x9;
    6484          666 :   x10 = XEXP (x1, 1);
    6485          666 :   operands[3] = x10;
    6486          666 :   x11 = XEXP (x1, 2);
    6487          666 :   operands[4] = x11;
    6488          666 :   return 0;
    6489              : }
    6490              : 
    6491              : int
    6492            0 : pattern1907 (rtx x1, machine_mode i1, machine_mode i2)
    6493              : {
    6494            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6495            0 :   rtx x2, x3, x4, x5, x6, x7;
    6496            0 :   int res ATTRIBUTE_UNUSED;
    6497            0 :   x2 = XVECEXP (x1, 0, 0);
    6498            0 :   x3 = XEXP (x2, 1);
    6499            0 :   x4 = XEXP (x3, 0);
    6500            0 :   x5 = XEXP (x4, 0);
    6501            0 :   if (GET_MODE (x5) != i2)
    6502              :     return -1;
    6503            0 :   x6 = XEXP (x5, 0);
    6504            0 :   if (GET_MODE (x6) != i2
    6505            0 :       || !nonimmediate_operand (operands[1], i1)
    6506            0 :       || !ix86_carry_flag_operator (operands[4], i2))
    6507            0 :     return -1;
    6508            0 :   x7 = XEXP (x4, 1);
    6509            0 :   if (GET_MODE (x7) != i2
    6510            0 :       || !sext_operand (operands[2], i1)
    6511            0 :       || pattern1906 (x1, 
    6512              : i1, 
    6513              : i2) != 0)
    6514            0 :     return -1;
    6515              :   return 0;
    6516              : }
    6517              : 
    6518              : int
    6519         5616 : pattern1913 (rtx x1)
    6520              : {
    6521         5616 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6522         5616 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6523         5616 :   int res ATTRIBUTE_UNUSED;
    6524         5616 :   x2 = XVECEXP (x1, 0, 8);
    6525         5616 :   if (XWINT (x2, 0) != 12L)
    6526              :     return -1;
    6527         5616 :   x3 = XVECEXP (x1, 0, 9);
    6528         5616 :   if (XWINT (x3, 0) != 44L)
    6529              :     return -1;
    6530         5616 :   x4 = XVECEXP (x1, 0, 10);
    6531         5616 :   if (XWINT (x4, 0) != 13L)
    6532              :     return -1;
    6533         5616 :   x5 = XVECEXP (x1, 0, 11);
    6534         5616 :   if (XWINT (x5, 0) != 45L)
    6535              :     return -1;
    6536         5616 :   x6 = XVECEXP (x1, 0, 12);
    6537         5616 :   if (XWINT (x6, 0) != 14L)
    6538              :     return -1;
    6539         5616 :   x7 = XVECEXP (x1, 0, 13);
    6540         5616 :   if (XWINT (x7, 0) != 46L)
    6541              :     return -1;
    6542         5616 :   x8 = XVECEXP (x1, 0, 14);
    6543         5616 :   if (XWINT (x8, 0) != 15L)
    6544              :     return -1;
    6545         5616 :   x9 = XVECEXP (x1, 0, 15);
    6546         5616 :   if (XWINT (x9, 0) != 47L)
    6547            0 :     return -1;
    6548              :   return 0;
    6549              : }
    6550              : 
    6551              :  int
    6552     54636045 : recog_3 (rtx x1 ATTRIBUTE_UNUSED,
    6553              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6554              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6555              : {
    6556     54636045 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6557     54636045 :   rtx x2, x3, x4, x5, x6;
    6558     54636045 :   int res ATTRIBUTE_UNUSED;
    6559     54636045 :   x2 = XEXP (x1, 1);
    6560     54636045 :   x3 = XEXP (x2, 1);
    6561     54636045 :   operands[1] = x3;
    6562     54636045 :   switch (GET_MODE (operands[0]))
    6563              :     {
    6564      8119648 :     case E_QImode:
    6565      8119648 :       if (nonimmediate_operand (operands[0], E_QImode))
    6566              :         {
    6567      8024134 :           if (const0_operand (operands[1], E_QImode))
    6568              :             {
    6569      5460939 :               if ((
    6570              : #line 1564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6571              : (TARGET_AVX512F && ix86_match_ccmode (insn, CCZmode)) && 
    6572              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6573              : (TARGET_AVX512DQ)))
    6574              :                 return 5; /* *cmpqi_ccz_1 */
    6575              :               if (
    6576              : #line 1578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6577              : (ix86_match_ccmode (insn, CCNOmode)))
    6578              :                 return 9; /* *cmpqi_ccno_1 */
    6579              :             }
    6580              :           if (general_operand (operands[1], E_QImode)
    6581              :               && 
    6582              : #line 1590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6583              : (ix86_match_ccmode (insn, CCmode)))
    6584              :             return 13; /* *cmpqi_1 */
    6585              :         }
    6586              :       break;
    6587              : 
    6588              :     case E_HImode:
    6589              :       if (nonimmediate_operand (operands[0], E_HImode))
    6590              :         {
    6591              :           if (const0_operand (operands[1], E_HImode))
    6592              :             {
    6593              :               if (
    6594              : #line 1564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6595              : (TARGET_AVX512F && ix86_match_ccmode (insn, CCZmode)))
    6596              :                 return 6; /* *cmphi_ccz_1 */
    6597              :               if (
    6598              : #line 1578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6599              : (ix86_match_ccmode (insn, CCNOmode)))
    6600              :                 return 10; /* *cmphi_ccno_1 */
    6601              :             }
    6602              :           if (general_operand (operands[1], E_HImode)
    6603              :               && 
    6604              : #line 1590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6605              : (ix86_match_ccmode (insn, CCmode)))
    6606              :             return 14; /* *cmphi_1 */
    6607              :         }
    6608              :       break;
    6609              : 
    6610              :     case E_SImode:
    6611              :       if (nonimmediate_operand (operands[0], E_SImode))
    6612              :         {
    6613              :           if (const0_operand (operands[1], E_SImode))
    6614              :             {
    6615              :               if ((
    6616              : #line 1564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6617              : (TARGET_AVX512F && ix86_match_ccmode (insn, CCZmode)) && 
    6618              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6619              : (TARGET_AVX512BW)))
    6620              :                 return 7; /* *cmpsi_ccz_1 */
    6621              :               if (
    6622              : #line 1578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6623              : (ix86_match_ccmode (insn, CCNOmode)))
    6624              :                 return 11; /* *cmpsi_ccno_1 */
    6625              :             }
    6626              :           if (x86_64_general_operand (operands[1], E_SImode)
    6627              :               && 
    6628              : #line 1590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6629              : (ix86_match_ccmode (insn, CCmode)))
    6630              :             return 15; /* *cmpsi_1 */
    6631              :         }
    6632              :       break;
    6633              : 
    6634              :     case E_DImode:
    6635              :       if (nonimmediate_operand (operands[0], E_DImode))
    6636              :         {
    6637              :           if (const0_operand (operands[1], E_DImode))
    6638              :             {
    6639              :               if ((
    6640              : #line 1564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6641              : (TARGET_AVX512F && ix86_match_ccmode (insn, CCZmode)) && 
    6642              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6643              : (TARGET_AVX512BW && TARGET_64BIT)))
    6644              :                 return 8; /* *cmpdi_ccz_1 */
    6645              :               if ((
    6646              : #line 1578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6647              : (ix86_match_ccmode (insn, CCNOmode)) && 
    6648              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6649              : (TARGET_64BIT)))
    6650              :                 return 12; /* *cmpdi_ccno_1 */
    6651              :             }
    6652              :           if (x86_64_general_operand (operands[1], E_DImode)
    6653              :               && (
    6654              : #line 1590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6655              : (ix86_match_ccmode (insn, CCmode)) && 
    6656              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6657              : (TARGET_64BIT)))
    6658              :             return 16; /* *cmpdi_1 */
    6659              :         }
    6660              :       break;
    6661              : 
    6662              :     default:
    6663              :       break;
    6664              :     }
    6665              :   x4 = XEXP (x1, 0);
    6666              :   switch (GET_MODE (x4))
    6667              :     {
    6668              :     case E_CCZmode:
    6669              :       if (GET_MODE (x2) == E_CCZmode)
    6670              :         {
    6671              :           switch (pattern853 ())
    6672              :             {
    6673              :             case 0:
    6674              :               if ((
    6675              : #line 1687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6676              : (ix86_pre_reload_split ()) && 
    6677              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6678              : (!TARGET_64BIT)))
    6679              :                 return 37; /* *cmpdi_doubleword */
    6680              :               break;
    6681              : 
    6682              :             case 1:
    6683              :               if ((
    6684              : #line 1687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6685              : (ix86_pre_reload_split ()) && 
    6686              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6687              : (TARGET_64BIT)))
    6688              :                 return 38; /* *cmpti_doubleword */
    6689              :               break;
    6690              : 
    6691              :             default:
    6692              :               break;
    6693              :             }
    6694              :         }
    6695              :       break;
    6696              : 
    6697              :     case E_CCFPmode:
    6698              :       if (GET_MODE (x2) == E_CCFPmode)
    6699              :         {
    6700              :           switch (GET_MODE (operands[0]))
    6701              :             {
    6702              :             case E_XFmode:
    6703              :               if (register_operand (operands[0], E_XFmode)
    6704              :                   && register_operand (operands[1], E_XFmode)
    6705              :                   && 
    6706              : #line 2034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6707              : (TARGET_80387 && TARGET_CMOVE))
    6708              :                 return 52; /* *cmpixf_i387 */
    6709              :               break;
    6710              : 
    6711              :             case E_SFmode:
    6712              :               if (register_operand (operands[0], E_SFmode)
    6713              :                   && register_ssemem_operand (operands[1], E_SFmode)
    6714              :                   && 
    6715              : #line 2074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6716              : ((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
    6717              :    || (TARGET_80387 && TARGET_CMOVE)))
    6718              :                 return 60; /* *cmpisf */
    6719              :               break;
    6720              : 
    6721              :             case E_DFmode:
    6722              :               if (register_operand (operands[0], E_DFmode)
    6723              :                   && register_ssemem_operand (operands[1], E_DFmode)
    6724              :                   && 
    6725              : #line 2074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6726              : ((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
    6727              :    || (TARGET_80387 && TARGET_CMOVE)))
    6728              :                 return 62; /* *cmpidf */
    6729              :               break;
    6730              : 
    6731              :             case E_HFmode:
    6732              :               if (register_operand (operands[0], E_HFmode)
    6733              :                   && nonimmediate_operand (operands[1], E_HFmode)
    6734              :                   && 
    6735              : #line 2111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6736              : (TARGET_AVX512FP16))
    6737              :                 return 64; /* *cmpihf */
    6738              :               break;
    6739              : 
    6740              :             case E_BFmode:
    6741              :               if (register_operand (operands[0], E_BFmode)
    6742              :                   && nonimmediate_operand (operands[1], E_BFmode)
    6743              :                   && 
    6744              : #line 2122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6745              : (TARGET_AVX10_2))
    6746              :                 return 66; /* *cmpibf */
    6747              :               break;
    6748              : 
    6749              :             default:
    6750              :               break;
    6751              :             }
    6752              :         }
    6753              :       break;
    6754              : 
    6755              :     default:
    6756              :       break;
    6757              :     }
    6758              :   if (!nonimmediate_operand (operands[0], E_QImode)
    6759              :       || pattern609 (x3) != 0)
    6760              :     return -1;
    6761              :   x5 = XEXP (x3, 0);
    6762              :   operands[2] = x5;
    6763              :   x6 = XEXP (x5, 0);
    6764              :   operands[1] = x6;
    6765              :   if (!int248_register_operand (operands[1], E_VOIDmode))
    6766              :     return -1;
    6767              :   switch (GET_MODE (operands[2]))
    6768              :     {
    6769              :     case E_HImode:
    6770              :       if (!extract_high_operator (operands[2], E_HImode)
    6771              :           || !
    6772              : #line 1627 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6773              : (ix86_match_ccmode (insn, CCmode)))
    6774              :         return -1;
    6775              :       return 25; /* *cmpqi_exthi_1 */
    6776              : 
    6777              :     case E_SImode:
    6778              :       if (!extract_high_operator (operands[2], E_SImode)
    6779              :           || !
    6780              : #line 1627 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6781              : (ix86_match_ccmode (insn, CCmode)))
    6782              :         return -1;
    6783              :       return 26; /* *cmpqi_extsi_1 */
    6784              : 
    6785              :     case E_DImode:
    6786              :       if (!extract_high_operator (operands[2], E_DImode)
    6787              :           || !(
    6788              : #line 1627 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6789              : (ix86_match_ccmode (insn, CCmode)) && 
    6790              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6791              : (TARGET_64BIT)))
    6792              :         return -1;
    6793              :       return 27; /* *cmpqi_extdi_1 */
    6794              : 
    6795              :     default:
    6796              :       return -1;
    6797              :     }
    6798              : }
    6799              : 
    6800              :  int
    6801              : recog_18 (rtx x1 ATTRIBUTE_UNUSED,
    6802              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6803              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6804              : {
    6805              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6806              :   rtx x2, x3, x4;
    6807              :   int res ATTRIBUTE_UNUSED;
    6808              :   x2 = XEXP (x1, 0);
    6809              :   x3 = XEXP (x2, 0);
    6810              :   operands[0] = x3;
    6811              :   x4 = XEXP (x1, 1);
    6812              :   operands[1] = x4;
    6813              :   switch (GET_MODE (operands[0]))
    6814              :     {
    6815              :     case E_QImode:
    6816              :       if (!register_operand (operands[0], E_QImode))
    6817              :         return -1;
    6818              :       if (general_operand (operands[1], E_QImode)
    6819              :           && 
    6820              : #line 3458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6821              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    6822              :         return 115; /* *movstrictqi_1 */
    6823              :       if (pnum_clobbers == NULL
    6824              :           || !const0_operand (operands[1], E_QImode)
    6825              :           || !
    6826              : #line 3467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6827              : (reload_completed))
    6828              :         return -1;
    6829              :       *pnum_clobbers = 1;
    6830              :       return 117; /* *movstrictqi_xor */
    6831              : 
    6832              :     case E_HImode:
    6833              :       if (!register_operand (operands[0], E_HImode))
    6834              :         return -1;
    6835              :       if (general_operand (operands[1], E_HImode)
    6836              :           && 
    6837              : #line 3458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6838              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    6839              :         return 116; /* *movstricthi_1 */
    6840              :       if (pnum_clobbers == NULL
    6841              :           || !const0_operand (operands[1], E_HImode)
    6842              :           || !
    6843              : #line 3467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6844              : (reload_completed))
    6845              :         return -1;
    6846              :       *pnum_clobbers = 1;
    6847              :       return 118; /* *movstricthi_xor */
    6848              : 
    6849              :     default:
    6850              :       return -1;
    6851              :     }
    6852              : }
    6853              : 
    6854              :  int
    6855              : recog_20 (rtx x1 ATTRIBUTE_UNUSED,
    6856              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6857              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6858              : {
    6859              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6860              :   rtx x2, x3, x4, x5, x6;
    6861              :   int res ATTRIBUTE_UNUSED;
    6862              :   x2 = XEXP (x1, 1);
    6863              :   if (GET_MODE (x2) != E_QImode)
    6864              :     return -1;
    6865              :   x3 = XEXP (x2, 0);
    6866              :   x4 = XEXP (x3, 0);
    6867              :   operands[1] = x4;
    6868              :   if (!int248_register_operand (operands[1], E_VOIDmode))
    6869              :     return -1;
    6870              :   x5 = XEXP (x1, 0);
    6871              :   switch (GET_CODE (x5))
    6872              :     {
    6873              :     case STRICT_LOW_PART:
    6874              :       x6 = XEXP (x5, 0);
    6875              :       operands[0] = x6;
    6876              :       if (!register_operand (operands[0], E_QImode))
    6877              :         return -1;
    6878              :       switch (pattern1210 ())
    6879              :         {
    6880              :         case 0:
    6881              :           if (!
    6882              : #line 3479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6883              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    6884              :             return -1;
    6885              :           return 119; /* *movstrictqi_exthi_1 */
    6886              : 
    6887              :         case 1:
    6888              :           if (!
    6889              : #line 3479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6890              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    6891              :             return -1;
    6892              :           return 120; /* *movstrictqi_extsi_1 */
    6893              : 
    6894              :         case 2:
    6895              :           if (!(
    6896              : #line 3479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6897              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    6898              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6899              : (TARGET_64BIT)))
    6900              :             return -1;
    6901              :           return 121; /* *movstrictqi_extdi_1 */
    6902              : 
    6903              :         default:
    6904              :           return -1;
    6905              :         }
    6906              : 
    6907              :     case REG:
    6908              :     case SUBREG:
    6909              :     case MEM:
    6910              :       operands[0] = x5;
    6911              :       if (!nonimmediate_operand (operands[0], E_QImode))
    6912              :         return -1;
    6913              :       switch (pattern1210 ())
    6914              :         {
    6915              :         case 0:
    6916              :           return 129; /* *extzvqi */
    6917              : 
    6918              :         case 1:
    6919              :           return 130; /* *extzvqi */
    6920              : 
    6921              :         case 2:
    6922              :           if (!
    6923              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6924              : (TARGET_64BIT))
    6925              :             return -1;
    6926              :           return 131; /* *extzvqi */
    6927              : 
    6928              :         default:
    6929              :           return -1;
    6930              :         }
    6931              : 
    6932              :     default:
    6933              :       return -1;
    6934              :     }
    6935              : }
    6936              : 
    6937              :  int
    6938              : recog_22 (rtx x1 ATTRIBUTE_UNUSED,
    6939              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6940              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6941              : {
    6942              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6943              :   rtx x2, x3, x4, x5, x6;
    6944              :   int res ATTRIBUTE_UNUSED;
    6945              :   x2 = XEXP (x1, 1);
    6946              :   x3 = XEXP (x2, 1);
    6947              :   if (GET_CODE (x3) != CONST_INT)
    6948              :     return -1;
    6949              :   x4 = XEXP (x2, 2);
    6950              :   if (GET_CODE (x4) != CONST_INT)
    6951              :     return -1;
    6952              :   x5 = XEXP (x1, 0);
    6953              :   operands[0] = x5;
    6954              :   x6 = XEXP (x2, 0);
    6955              :   operands[1] = x6;
    6956              :   switch (XWINT (x3, 0))
    6957              :     {
    6958              :     case 8L:
    6959              :       if (XWINT (x4, 0) != 8L
    6960              :           || !int248_register_operand (operands[1], E_VOIDmode))
    6961              :         return -1;
    6962              :       switch (GET_MODE (operands[0]))
    6963              :         {
    6964              :         case E_HImode:
    6965              :           if (!register_operand (operands[0], E_HImode)
    6966              :               || GET_MODE (x2) != E_HImode)
    6967              :             return -1;
    6968              :           return 122; /* *extvhi */
    6969              : 
    6970              :         case E_SImode:
    6971              :           if (!register_operand (operands[0], E_SImode)
    6972              :               || GET_MODE (x2) != E_SImode)
    6973              :             return -1;
    6974              :           return 123; /* *extvsi */
    6975              : 
    6976              :         default:
    6977              :           return -1;
    6978              :         }
    6979              : 
    6980              :     case 1L:
    6981              :       if (pnum_clobbers == NULL
    6982              :           || XWINT (x4, 0) != 0L)
    6983              :         return -1;
    6984              :       switch (GET_MODE (operands[0]))
    6985              :         {
    6986              :         case E_SImode:
    6987              :           if (!register_operand (operands[0], E_SImode)
    6988              :               || GET_MODE (x2) != E_SImode
    6989              :               || !register_operand (operands[1], E_SImode))
    6990              :             return -1;
    6991              :           *pnum_clobbers = 1;
    6992              :           return 124; /* *extvsi_1_0 */
    6993              : 
    6994              :         case E_DImode:
    6995              :           if (!register_operand (operands[0], E_DImode)
    6996              :               || GET_MODE (x2) != E_DImode
    6997              :               || !register_operand (operands[1], E_DImode)
    6998              :               || !
    6999              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7000              : (TARGET_64BIT))
    7001              :             return -1;
    7002              :           *pnum_clobbers = 1;
    7003              :           return 125; /* *extvdi_1_0 */
    7004              : 
    7005              :         default:
    7006              :           return -1;
    7007              :         }
    7008              : 
    7009              :     default:
    7010              :       return -1;
    7011              :     }
    7012              : }
    7013              : 
    7014              :  int
    7015              : recog_23 (rtx x1 ATTRIBUTE_UNUSED,
    7016              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7017              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7018              : {
    7019              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7020              :   rtx x2, x3, x4, x5, x6;
    7021              :   int res ATTRIBUTE_UNUSED;
    7022              :   x2 = XEXP (x1, 1);
    7023              :   x3 = XEXP (x2, 1);
    7024              :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    7025              :     return -1;
    7026              :   x4 = XEXP (x2, 2);
    7027              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    7028              :     return -1;
    7029              :   x5 = XEXP (x1, 0);
    7030              :   operands[0] = x5;
    7031              :   x6 = XEXP (x2, 0);
    7032              :   operands[1] = x6;
    7033              :   if (!int248_register_operand (operands[1], E_VOIDmode))
    7034              :     return -1;
    7035              :   switch (GET_MODE (operands[0]))
    7036              :     {
    7037              :     case E_HImode:
    7038              :       if (!register_operand (operands[0], E_HImode)
    7039              :           || GET_MODE (x2) != E_HImode)
    7040              :         return -1;
    7041              :       return 126; /* *extzvhi */
    7042              : 
    7043              :     case E_SImode:
    7044              :       if (!register_operand (operands[0], E_SImode)
    7045              :           || GET_MODE (x2) != E_SImode)
    7046              :         return -1;
    7047              :       return 127; /* *extzvsi */
    7048              : 
    7049              :     case E_DImode:
    7050              :       if (!register_operand (operands[0], E_DImode)
    7051              :           || GET_MODE (x2) != E_DImode
    7052              :           || !
    7053              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7054              : (TARGET_64BIT))
    7055              :         return -1;
    7056              :       return 128; /* *extzvdi */
    7057              : 
    7058              :     default:
    7059              :       return -1;
    7060              :     }
    7061              : }
    7062              : 
    7063              :  int
    7064              : recog_24 (rtx x1 ATTRIBUTE_UNUSED,
    7065              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7066              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7067              : {
    7068              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7069              :   rtx x2, x3;
    7070              :   int res ATTRIBUTE_UNUSED;
    7071              :   switch (pattern38 (x1, pnum_clobbers))
    7072              :     {
    7073              :     case 0:
    7074              :       if (pnum_clobbers != NULL
    7075              :           && pattern292 (x1, 
    7076              : E_TImode) == 0
    7077              :           && (
    7078              : #line 16918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7079              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
    7080              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
    7081              :          == (2 * 8 * BITS_PER_UNIT - 1)))
    7082              :    && ix86_pre_reload_split ()) && 
    7083              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7084              : (TARGET_64BIT)))
    7085              :         {
    7086              :           *pnum_clobbers = 1;
    7087              :           return 1156; /* *lshrti3_doubleword_mask */
    7088              :         }
    7089              :       x2 = XEXP (x1, 1);
    7090              :       x3 = XEXP (x2, 1);
    7091              :       operands[2] = x3;
    7092              :       switch (pattern426 (x1, pnum_clobbers))
    7093              :         {
    7094              :         case 0:
    7095              :           switch (GET_MODE (operands[0]))
    7096              :             {
    7097              :             case E_TImode:
    7098              :               if (pnum_clobbers == NULL
    7099              :                   || pattern858 (x2, 
    7100              : E_TImode, 
    7101              : E_QImode) != 0
    7102              :                   || !
    7103              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7104              : (TARGET_64BIT))
    7105              :                 return -1;
    7106              :               *pnum_clobbers = 1;
    7107              :               return 1164; /* lshrti3_doubleword */
    7108              : 
    7109              :             case E_QImode:
    7110              :               if (pattern635 (x2, 
    7111              : E_QImode) != 0)
    7112              :                 return -1;
    7113              :               if (
    7114              : #line 17897 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7115              : (ix86_binary_operator_ok (LSHIFTRT, QImode, operands, TARGET_APX_NDD)
    7116              :    && TARGET_APX_NF))
    7117              :                 return 1244; /* *lshrqi3_1_nf */
    7118              :               if (pnum_clobbers == NULL
    7119              :                   || !
    7120              : #line 17897 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7121              : (ix86_binary_operator_ok (LSHIFTRT, QImode, operands, TARGET_APX_NDD)
    7122              :    && true))
    7123              :                 return -1;
    7124              :               *pnum_clobbers = 1;
    7125              :               return 1245; /* *lshrqi3_1 */
    7126              : 
    7127              :             case E_HImode:
    7128              :               if (pattern635 (x2, 
    7129              : E_HImode) != 0)
    7130              :                 return -1;
    7131              :               if (
    7132              : #line 17935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7133              : (ix86_binary_operator_ok (LSHIFTRT, HImode, operands, TARGET_APX_NDD)
    7134              :    && TARGET_APX_NF))
    7135              :                 return 1246; /* *lshrhi3_1_nf */
    7136              :               if (pnum_clobbers == NULL
    7137              :                   || !
    7138              : #line 17935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7139              : (ix86_binary_operator_ok (LSHIFTRT, HImode, operands, TARGET_APX_NDD)
    7140              :    && true))
    7141              :                 return -1;
    7142              :               *pnum_clobbers = 1;
    7143              :               return 1247; /* *lshrhi3_1 */
    7144              : 
    7145              :             case E_V4HImode:
    7146              :               if (pattern858 (x2, 
    7147              : E_V4HImode, 
    7148              : E_DImode) != 0
    7149              :                   || !
    7150              : #line 3919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7151              : (TARGET_MMX || TARGET_MMX_WITH_SSE))
    7152              :                 return -1;
    7153              :               return 2260; /* mmx_lshrv4hi3 */
    7154              : 
    7155              :             case E_V2SImode:
    7156              :               if (pattern858 (x2, 
    7157              : E_V2SImode, 
    7158              : E_DImode) != 0
    7159              :                   || !
    7160              : #line 3919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7161              : (TARGET_MMX || TARGET_MMX_WITH_SSE))
    7162              :                 return -1;
    7163              :               return 2262; /* mmx_lshrv2si3 */
    7164              : 
    7165              :             case E_V1DImode:
    7166              :               if (pattern858 (x2, 
    7167              : E_V1DImode, 
    7168              : E_DImode) != 0
    7169              :                   || !
    7170              : #line 3919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7171              : (TARGET_MMX || TARGET_MMX_WITH_SSE))
    7172              :                 return -1;
    7173              :               return 2264; /* mmx_lshrv1di3 */
    7174              : 
    7175              :             case E_V1SImode:
    7176              :               if (pattern858 (x2, 
    7177              : E_V1SImode, 
    7178              : E_DImode) != 0
    7179              :                   || !
    7180              : #line 3956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7181              : (TARGET_SSE2))
    7182              :                 return -1;
    7183              :               return 2266; /* mmx_lshrv1si3 */
    7184              : 
    7185              :             case E_V2HImode:
    7186              :               if (pattern858 (x2, 
    7187              : E_V2HImode, 
    7188              : E_DImode) != 0
    7189              :                   || !
    7190              : #line 3973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7191              : (TARGET_SSE2))
    7192              :                 return -1;
    7193              :               return 2268; /* lshrv2hi3 */
    7194              : 
    7195              :             case E_V2QImode:
    7196              :               if (pnum_clobbers == NULL
    7197              :                   || pattern858 (x2, 
    7198              : E_V2QImode, 
    7199              : E_QImode) != 0
    7200              :                   || !
    7201              : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7202              : (!TARGET_PARTIAL_REG_STALL || optimize_size))
    7203              :                 return -1;
    7204              :               *pnum_clobbers = 1;
    7205              :               return 2272; /* lshrv2qi3 */
    7206              : 
    7207              :             default:
    7208              :               return -1;
    7209              :             }
    7210              : 
    7211              :         case 1:
    7212              :           if (!
    7213              : #line 17974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7214              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7215              :             return -1;
    7216              :           *pnum_clobbers = 1;
    7217              :           return 1248; /* *lshrqi3_1_slp */
    7218              : 
    7219              :         case 2:
    7220              :           if (!
    7221              : #line 17974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7222              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7223              :             return -1;
    7224              :           *pnum_clobbers = 1;
    7225              :           return 1250; /* *lshrhi3_1_slp */
    7226              : 
    7227              :         default:
    7228              :           return -1;
    7229              :         }
    7230              : 
    7231              :     case 1:
    7232              :       if (!(
    7233              : #line 16979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7234              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
    7235              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
    7236              :          == (2 * 8 * BITS_PER_UNIT - 1)))
    7237              :    && ix86_pre_reload_split ()) && 
    7238              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7239              : (TARGET_64BIT)))
    7240              :         return -1;
    7241              :       *pnum_clobbers = 1;
    7242              :       return 1160; /* *lshrti3_doubleword_mask_1 */
    7243              : 
    7244              :     default:
    7245              :       return -1;
    7246              :     }
    7247              : }
    7248              : 
    7249              :  int
    7250              : recog_25 (rtx x1 ATTRIBUTE_UNUSED,
    7251              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7252              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7253              : {
    7254              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7255              :   rtx x2, x3, x4, x5, x6, x7;
    7256              :   int res ATTRIBUTE_UNUSED;
    7257              :   x2 = XEXP (x1, 1);
    7258              :   x3 = XEXP (x2, 0);
    7259              :   switch (GET_CODE (x3))
    7260              :     {
    7261              :     case REG:
    7262              :     case SUBREG:
    7263              :     case MEM:
    7264              :       switch (pattern38 (x1, pnum_clobbers))
    7265              :         {
    7266              :         case 0:
    7267              :           if (pnum_clobbers != NULL
    7268              :               && pattern292 (x1, 
    7269              : E_TImode) == 0
    7270              :               && (
    7271              : #line 16918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7272              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
    7273              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
    7274              :          == (2 * 8 * BITS_PER_UNIT - 1)))
    7275              :    && ix86_pre_reload_split ()) && 
    7276              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7277              : (TARGET_64BIT)))
    7278              :             {
    7279              :               *pnum_clobbers = 1;
    7280              :               return 1157; /* *ashrti3_doubleword_mask */
    7281              :             }
    7282              :           x4 = XEXP (x2, 1);
    7283              :           operands[2] = x4;
    7284              :           switch (pattern426 (x1, pnum_clobbers))
    7285              :             {
    7286              :             case 0:
    7287              :               switch (GET_MODE (operands[0]))
    7288              :                 {
    7289              :                 case E_TImode:
    7290              :                   if (pnum_clobbers == NULL
    7291              :                       || pattern858 (x2, 
    7292              : E_TImode, 
    7293              : E_QImode) != 0
    7294              :                       || !
    7295              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7296              : (TARGET_64BIT))
    7297              :                     return -1;
    7298              :                   *pnum_clobbers = 1;
    7299              :                   return 1165; /* ashrti3_doubleword */
    7300              : 
    7301              :                 case E_QImode:
    7302              :                   if (pattern635 (x2, 
    7303              : E_QImode) != 0)
    7304              :                     return -1;
    7305              :                   if (
    7306              : #line 17868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7307              : (ix86_binary_operator_ok (ASHIFTRT, QImode, operands, TARGET_APX_NDD)
    7308              :    && TARGET_APX_NF))
    7309              :                     return 1240; /* *ashrqi3_1_nf */
    7310              :                   if (pnum_clobbers == NULL
    7311              :                       || !
    7312              : #line 17868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7313              : (ix86_binary_operator_ok (ASHIFTRT, QImode, operands, TARGET_APX_NDD)
    7314              :    && true))
    7315              :                     return -1;
    7316              :                   *pnum_clobbers = 1;
    7317              :                   return 1241; /* *ashrqi3_1 */
    7318              : 
    7319              :                 case E_HImode:
    7320              :                   if (pattern635 (x2, 
    7321              : E_HImode) != 0)
    7322              :                     return -1;
    7323              :                   if (
    7324              : #line 17868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7325              : (ix86_binary_operator_ok (ASHIFTRT, HImode, operands, TARGET_APX_NDD)
    7326              :    && TARGET_APX_NF))
    7327              :                     return 1242; /* *ashrhi3_1_nf */
    7328              :                   if (pnum_clobbers == NULL
    7329              :                       || !
    7330              : #line 17868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7331              : (ix86_binary_operator_ok (ASHIFTRT, HImode, operands, TARGET_APX_NDD)
    7332              :    && true))
    7333              :                     return -1;
    7334              :                   *pnum_clobbers = 1;
    7335              :                   return 1243; /* *ashrhi3_1 */
    7336              : 
    7337              :                 case E_V4HImode:
    7338              :                   if (pattern858 (x2, 
    7339              : E_V4HImode, 
    7340              : E_DImode) != 0
    7341              :                       || !
    7342              : #line 3882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7343              : (TARGET_MMX || TARGET_MMX_WITH_SSE))
    7344              :                     return -1;
    7345              :                   return 2255; /* mmx_ashrv4hi3 */
    7346              : 
    7347              :                 case E_V2SImode:
    7348              :                   if (pattern858 (x2, 
    7349              : E_V2SImode, 
    7350              : E_DImode) != 0
    7351              :                       || !
    7352              : #line 3882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7353              : (TARGET_MMX || TARGET_MMX_WITH_SSE))
    7354              :                     return -1;
    7355              :                   return 2256; /* mmx_ashrv2si3 */
    7356              : 
    7357              :                 case E_V2HImode:
    7358              :                   if (pattern858 (x2, 
    7359              : E_V2HImode, 
    7360              : E_DImode) != 0
    7361              :                       || !
    7362              : #line 3973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7363              : (TARGET_SSE2))
    7364              :                     return -1;
    7365              :                   return 2269; /* ashrv2hi3 */
    7366              : 
    7367              :                 case E_V2QImode:
    7368              :                   if (pnum_clobbers == NULL
    7369              :                       || pattern858 (x2, 
    7370              : E_V2QImode, 
    7371              : E_QImode) != 0
    7372              :                       || !
    7373              : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7374              : (!TARGET_PARTIAL_REG_STALL || optimize_size))
    7375              :                     return -1;
    7376              :                   *pnum_clobbers = 1;
    7377              :                   return 2273; /* ashrv2qi3 */
    7378              : 
    7379              :                 default:
    7380              :                   return -1;
    7381              :                 }
    7382              : 
    7383              :             case 1:
    7384              :               if (!
    7385              : #line 17974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7386              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7387              :                 return -1;
    7388              :               *pnum_clobbers = 1;
    7389              :               return 1249; /* *ashrqi3_1_slp */
    7390              : 
    7391              :             case 2:
    7392              :               if (!
    7393              : #line 17974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7394              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7395              :                 return -1;
    7396              :               *pnum_clobbers = 1;
    7397              :               return 1251; /* *ashrhi3_1_slp */
    7398              : 
    7399              :             default:
    7400              :               return -1;
    7401              :             }
    7402              : 
    7403              :         case 1:
    7404              :           if (!(
    7405              : #line 16979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7406              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
    7407              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
    7408              :          == (2 * 8 * BITS_PER_UNIT - 1)))
    7409              :    && ix86_pre_reload_split ()) && 
    7410              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7411              : (TARGET_64BIT)))
    7412              :             return -1;
    7413              :           *pnum_clobbers = 1;
    7414              :           return 1161; /* *ashrti3_doubleword_mask_1 */
    7415              : 
    7416              :         default:
    7417              :           return -1;
    7418              :         }
    7419              : 
    7420              :     case ASHIFT:
    7421              :       x5 = XEXP (x1, 0);
    7422              :       operands[0] = x5;
    7423              :       x6 = XEXP (x3, 0);
    7424              :       operands[1] = x6;
    7425              :       x7 = XEXP (x3, 1);
    7426              :       operands[2] = x7;
    7427              :       if (!const_int_operand (operands[2], E_QImode))
    7428              :         return -1;
    7429              :       x4 = XEXP (x2, 1);
    7430              :       operands[3] = x4;
    7431              :       if (!const_int_operand (operands[3], E_QImode))
    7432              :         return -1;
    7433              :       switch (GET_MODE (operands[0]))
    7434              :         {
    7435              :         case E_TImode:
    7436              :           if (pnum_clobbers == NULL
    7437              :               || pattern762 (x2, 
    7438              : E_TImode) != 0
    7439              :               || !(
    7440              : #line 18330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7441              : (INTVAL (operands[2]) == INTVAL (operands[3])
    7442              :    && UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
    7443              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7444              : (TARGET_64BIT)))
    7445              :             return -1;
    7446              :           *pnum_clobbers = 1;
    7447              :           return 1313; /* *extendti2_doubleword_highpart */
    7448              : 
    7449              :         case E_V2DImode:
    7450              :           if (pattern762 (x2, 
    7451              : E_V2DImode) != 0)
    7452              :             return -1;
    7453              :           if (
    7454              : #line 18348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7455              : (!TARGET_64BIT && TARGET_STV && TARGET_AVX512VL
    7456              :    && INTVAL (operands[2]) == INTVAL (operands[3])
    7457              :    && UINTVAL (operands[2]) < 32))
    7458              :             return 1314; /* *extendv2di2_highpart_stv */
    7459              :           if (!
    7460              : #line 18365 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7461              : (!TARGET_AVX512VL
    7462              :    && INTVAL (operands[2]) == INTVAL (operands[3])
    7463              :    && UINTVAL (operands[2]) < 32
    7464              :    && ix86_pre_reload_split ()))
    7465              :             return -1;
    7466              :           return 1315; /* *extendv2di2_highpart_stv_noavx512vl */
    7467              : 
    7468              :         default:
    7469              :           return -1;
    7470              :         }
    7471              : 
    7472              :     default:
    7473              :       return -1;
    7474              :     }
    7475              : }
    7476              : 
    7477              :  int
    7478              : recog_30 (rtx x1 ATTRIBUTE_UNUSED,
    7479              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7480              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7481              : {
    7482              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7483              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    7484              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    7485              :   int res ATTRIBUTE_UNUSED;
    7486              :   x2 = XEXP (x1, 0);
    7487              :   operands[0] = x2;
    7488              :   x3 = XEXP (x1, 1);
    7489              :   x4 = XEXP (x3, 0);
    7490              :   switch (GET_CODE (x4))
    7491              :     {
    7492              :     case CONST_INT:
    7493              :     case CONST:
    7494              :     case REG:
    7495              :     case SUBREG:
    7496              :     case MEM:
    7497              :     case LABEL_REF:
    7498              :     case SYMBOL_REF:
    7499              :       operands[1] = x4;
    7500              :       switch (GET_MODE (operands[0]))
    7501              :         {
    7502              :         case E_TImode:
    7503              :           if (!nonimmediate_operand (operands[0], E_TImode)
    7504              :               || GET_MODE (x3) != E_TImode
    7505              :               || !nonimmediate_operand (operands[1], E_DImode)
    7506              :               || !
    7507              : #line 4671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7508              : (TARGET_64BIT))
    7509              :             return -1;
    7510              :           return 178; /* zero_extendditi2 */
    7511              : 
    7512              :         case E_DImode:
    7513              :           if (GET_MODE (x3) != E_DImode)
    7514              :             return -1;
    7515              :           if (nonimmediate_operand (operands[0], E_DImode)
    7516              :               && x86_64_zext_operand (operands[1], E_SImode))
    7517              :             return 179; /* *zero_extendsidi2 */
    7518              :           if (!register_operand (operands[0], E_DImode))
    7519              :             return -1;
    7520              :           switch (GET_MODE (operands[1]))
    7521              :             {
    7522              :             case E_QImode:
    7523              :               if (!nonimmediate_operand (operands[1], E_QImode)
    7524              :                   || !
    7525              : #line 4823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7526              : (TARGET_64BIT))
    7527              :                 return -1;
    7528              :               return 180; /* zero_extendqidi2 */
    7529              : 
    7530              :             case E_HImode:
    7531              :               if (!nonimmediate_operand (operands[1], E_HImode)
    7532              :                   || !
    7533              : #line 4823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7534              : (TARGET_64BIT))
    7535              :                 return -1;
    7536              :               return 181; /* zero_extendhidi2 */
    7537              : 
    7538              :             default:
    7539              :               return -1;
    7540              :             }
    7541              : 
    7542              :         case E_SImode:
    7543              :           if (!register_operand (operands[0], E_SImode)
    7544              :               || GET_MODE (x3) != E_SImode)
    7545              :             return -1;
    7546              :           switch (GET_MODE (operands[1]))
    7547              :             {
    7548              :             case E_QImode:
    7549              :               if (!nonimmediate_operand (operands[1], E_QImode))
    7550              :                 return -1;
    7551              :               if (pnum_clobbers != NULL
    7552              :                   && 
    7553              : #line 4850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7554              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    7555              :                 {
    7556              :                   *pnum_clobbers = 1;
    7557              :                   return 182; /* zero_extendqisi2_and */
    7558              :                 }
    7559              :               if (!
    7560              : #line 4878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7561              : (!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    7562              :                 return -1;
    7563              :               return 184; /* *zero_extendqisi2 */
    7564              : 
    7565              :             case E_HImode:
    7566              :               if (!nonimmediate_operand (operands[1], E_HImode))
    7567              :                 return -1;
    7568              :               if (pnum_clobbers != NULL
    7569              :                   && 
    7570              : #line 4850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7571              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    7572              :                 {
    7573              :                   *pnum_clobbers = 1;
    7574              :                   return 183; /* zero_extendhisi2_and */
    7575              :                 }
    7576              :               if (!
    7577              : #line 4878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7578              : (!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    7579              :                 return -1;
    7580              :               return 185; /* *zero_extendhisi2 */
    7581              : 
    7582              :             default:
    7583              :               return -1;
    7584              :             }
    7585              : 
    7586              :         case E_HImode:
    7587              :           if (!register_operand (operands[0], E_HImode)
    7588              :               || GET_MODE (x3) != E_HImode
    7589              :               || !nonimmediate_operand (operands[1], E_QImode))
    7590              :             return -1;
    7591              :           if (pnum_clobbers != NULL
    7592              :               && 
    7593              : #line 4904 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7594              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    7595              :             {
    7596              :               *pnum_clobbers = 1;
    7597              :               return 186; /* zero_extendqihi2_and */
    7598              :             }
    7599              :           if (!
    7600              : #line 4932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7601              : (!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    7602              :             return -1;
    7603              :           return 187; /* *zero_extendqihi2 */
    7604              : 
    7605              :         default:
    7606              :           return -1;
    7607              :         }
    7608              : 
    7609              :     case SIGN_EXTEND:
    7610              :       if (GET_MODE (x4) != E_SImode
    7611              :           || !register_operand (operands[0], E_DImode)
    7612              :           || GET_MODE (x3) != E_DImode)
    7613              :         return -1;
    7614              :       x5 = XEXP (x4, 0);
    7615              :       operands[1] = x5;
    7616              :       switch (GET_MODE (operands[1]))
    7617              :         {
    7618              :         case E_HImode:
    7619              :           if (!nonimmediate_operand (operands[1], E_HImode)
    7620              :               || !
    7621              : #line 5181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7622              : (TARGET_64BIT))
    7623              :             return -1;
    7624              :           return 194; /* *extendhisi2_zext */
    7625              : 
    7626              :         case E_QImode:
    7627              :           if (!nonimmediate_operand (operands[1], E_QImode)
    7628              :               || !
    7629              : #line 5216 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7630              : (TARGET_64BIT))
    7631              :             return -1;
    7632              :           return 196; /* *extendqisi2_zext */
    7633              : 
    7634              :         default:
    7635              :           return -1;
    7636              :         }
    7637              : 
    7638              :     case UNSIGNED_FIX:
    7639              :       if (GET_MODE (x4) != E_SImode
    7640              :           || !register_operand (operands[0], E_DImode)
    7641              :           || GET_MODE (x3) != E_DImode)
    7642              :         return -1;
    7643              :       x5 = XEXP (x4, 0);
    7644              :       operands[1] = x5;
    7645              :       switch (GET_MODE (operands[1]))
    7646              :         {
    7647              :         case E_HFmode:
    7648              :           if (!nonimmediate_operand (operands[1], E_HFmode)
    7649              :               || !
    7650              : #line 5896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7651              : (TARGET_64BIT && TARGET_AVX512FP16))
    7652              :             return -1;
    7653              :           return 224; /* *fixuns_trunchfsi2zext */
    7654              : 
    7655              :         case E_SFmode:
    7656              :           if (!nonimmediate_operand (operands[1], E_SFmode)
    7657              :               || !
    7658              : #line 5907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7659              : (TARGET_64BIT && TARGET_AVX512F && TARGET_SSE_MATH))
    7660              :             return -1;
    7661              :           return 225; /* *fixuns_truncsfsi2_avx512f_zext */
    7662              : 
    7663              :         case E_DFmode:
    7664              :           if (!nonimmediate_operand (operands[1], E_DFmode)
    7665              :               || !
    7666              : #line 5907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7667              : (TARGET_64BIT && TARGET_AVX512F && TARGET_SSE_MATH))
    7668              :             return -1;
    7669              :           return 226; /* *fixuns_truncdfsi2_avx512f_zext */
    7670              : 
    7671              :         default:
    7672              :           return -1;
    7673              :         }
    7674              : 
    7675              :     case PLUS:
    7676              :       if (GET_MODE (x4) != E_QImode
    7677              :           || !register_operand (operands[0], E_HImode)
    7678              :           || GET_MODE (x3) != E_HImode)
    7679              :         return -1;
    7680              :       x5 = XEXP (x4, 0);
    7681              :       switch (GET_CODE (x5))
    7682              :         {
    7683              :         case REG:
    7684              :         case SUBREG:
    7685              :         case MEM:
    7686              :           operands[1] = x5;
    7687              :           if (!nonimmediate_operand (operands[1], E_QImode))
    7688              :             return -1;
    7689              :           x6 = XEXP (x4, 1);
    7690              :           operands[2] = x6;
    7691              :           if (!general_operand (operands[2], E_QImode))
    7692              :             return -1;
    7693              :           if (
    7694              : #line 6728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7695              : (TARGET_APX_NDD && TARGET_APX_NF
    7696              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7697              :             return 290; /* *addqi_1_zexthi_nf */
    7698              :           if (pnum_clobbers == NULL
    7699              :               || !
    7700              : #line 6728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7701              : (TARGET_APX_NDD && true
    7702              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7703              :             return -1;
    7704              :           *pnum_clobbers = 1;
    7705              :           return 291; /* *addqi_1_zexthi */
    7706              : 
    7707              :         case PLUS:
    7708              :           if (pnum_clobbers == NULL
    7709              :               || GET_MODE (x5) != E_QImode)
    7710              :             return -1;
    7711              :           x7 = XEXP (x5, 0);
    7712              :           if (!ix86_carry_flag_operator (x7, E_QImode))
    7713              :             return -1;
    7714              :           operands[3] = x7;
    7715              :           x8 = XEXP (x7, 0);
    7716              :           if (GET_CODE (x8) != REG
    7717              :               || REGNO (x8) != 17)
    7718              :             return -1;
    7719              :           x9 = XEXP (x7, 1);
    7720              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7721              :             return -1;
    7722              :           x10 = XEXP (x5, 1);
    7723              :           operands[1] = x10;
    7724              :           if (!nonimmediate_operand (operands[1], E_QImode))
    7725              :             return -1;
    7726              :           x6 = XEXP (x4, 1);
    7727              :           operands[2] = x6;
    7728              :           if (!x86_64_general_operand (operands[2], E_QImode)
    7729              :               || !
    7730              : #line 9011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7731              : (TARGET_APX_NDD
    7732              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7733              :             return -1;
    7734              :           *pnum_clobbers = 1;
    7735              :           return 481; /* *addqi3_carry_zexthi */
    7736              : 
    7737              :         case LTU:
    7738              :         case UNLT:
    7739              :           if (pnum_clobbers == NULL)
    7740              :             return -1;
    7741              :           operands[2] = x5;
    7742              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
    7743              :               || pattern1084 (x4) != 0
    7744              :               || !
    7745              : #line 9068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7746              : (TARGET_APX_NDD))
    7747              :             return -1;
    7748              :           *pnum_clobbers = 1;
    7749              :           return 487; /* *addqi3_carry_zexthi_0 */
    7750              : 
    7751              :         case GE:
    7752              :         case GEU:
    7753              :           if (pnum_clobbers == NULL)
    7754              :             return -1;
    7755              :           operands[2] = x5;
    7756              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
    7757              :               || pattern1084 (x4) != 0
    7758              :               || !
    7759              : #line 9113 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7760              : (TARGET_APX_NDD))
    7761              :             return -1;
    7762              :           *pnum_clobbers = 1;
    7763              :           return 493; /* *addqi3_carry_zexthi_0r */
    7764              : 
    7765              :         default:
    7766              :           return -1;
    7767              :         }
    7768              : 
    7769              :     case MINUS:
    7770              :       if (GET_MODE (x4) != E_QImode
    7771              :           || !register_operand (operands[0], E_HImode)
    7772              :           || GET_MODE (x3) != E_HImode)
    7773              :         return -1;
    7774              :       x6 = XEXP (x4, 1);
    7775              :       operands[2] = x6;
    7776              :       x5 = XEXP (x4, 0);
    7777              :       switch (GET_CODE (x5))
    7778              :         {
    7779              :         case REG:
    7780              :         case SUBREG:
    7781              :         case MEM:
    7782              :           operands[1] = x5;
    7783              :           if (!nonimmediate_operand (operands[1], E_QImode))
    7784              :             return -1;
    7785              :           switch (GET_CODE (operands[2]))
    7786              :             {
    7787              :             case CONST_INT:
    7788              :             case CONST_WIDE_INT:
    7789              :             case CONST_POLY_INT:
    7790              :             case CONST_FIXED:
    7791              :             case CONST_DOUBLE:
    7792              :             case CONST_VECTOR:
    7793              :             case CONST:
    7794              :             case REG:
    7795              :             case SUBREG:
    7796              :             case MEM:
    7797              :             case LABEL_REF:
    7798              :             case SYMBOL_REF:
    7799              :             case HIGH:
    7800              :               if (!x86_64_general_operand (operands[2], E_QImode))
    7801              :                 return -1;
    7802              :               if (
    7803              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7804              : (TARGET_APX_NDD && TARGET_APX_NF
    7805              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7806              :                 return 396; /* *subqi_1_zexthi_nf */
    7807              :               if (pnum_clobbers == NULL
    7808              :                   || !
    7809              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7810              : (TARGET_APX_NDD && true
    7811              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7812              :                 return -1;
    7813              :               *pnum_clobbers = 1;
    7814              :               return 397; /* *subqi_1_zexthi */
    7815              : 
    7816              :             case LTU:
    7817              :             case UNLT:
    7818              :               if (pnum_clobbers == NULL
    7819              :                   || !ix86_carry_flag_operator (operands[2], E_QImode))
    7820              :                 return -1;
    7821              :               x11 = XEXP (x6, 0);
    7822              :               if (GET_CODE (x11) != REG
    7823              :                   || REGNO (x11) != 17)
    7824              :                 return -1;
    7825              :               x12 = XEXP (x6, 1);
    7826              :               if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7827              :                   || !
    7828              : #line 9737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7829              : (TARGET_APX_NDD))
    7830              :                 return -1;
    7831              :               *pnum_clobbers = 1;
    7832              :               return 533; /* *subqi3_carry_zexthi_0 */
    7833              : 
    7834              :             case GE:
    7835              :             case GEU:
    7836              :               if (pnum_clobbers == NULL
    7837              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode))
    7838              :                 return -1;
    7839              :               x11 = XEXP (x6, 0);
    7840              :               if (GET_CODE (x11) != REG
    7841              :                   || REGNO (x11) != 17)
    7842              :                 return -1;
    7843              :               x12 = XEXP (x6, 1);
    7844              :               if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7845              :                   || !
    7846              : #line 9785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7847              : (TARGET_APX_NDD))
    7848              :                 return -1;
    7849              :               *pnum_clobbers = 1;
    7850              :               return 539; /* *subqi3_carry_zexthi_0r */
    7851              : 
    7852              :             default:
    7853              :               return -1;
    7854              :             }
    7855              : 
    7856              :         case MINUS:
    7857              :           if (pnum_clobbers == NULL
    7858              :               || GET_MODE (x5) != E_QImode)
    7859              :             return -1;
    7860              :           x10 = XEXP (x5, 1);
    7861              :           if (!ix86_carry_flag_operator (x10, E_QImode))
    7862              :             return -1;
    7863              :           operands[3] = x10;
    7864              :           x13 = XEXP (x10, 0);
    7865              :           if (GET_CODE (x13) != REG
    7866              :               || REGNO (x13) != 17)
    7867              :             return -1;
    7868              :           x14 = XEXP (x10, 1);
    7869              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7870              :             return -1;
    7871              :           x7 = XEXP (x5, 0);
    7872              :           operands[1] = x7;
    7873              :           if (!nonimmediate_operand (operands[1], E_QImode)
    7874              :               || !x86_64_general_operand (operands[2], E_QImode)
    7875              :               || !
    7876              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7877              : (TARGET_APX_NDD
    7878              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7879              :             return -1;
    7880              :           *pnum_clobbers = 1;
    7881              :           return 527; /* *subqi3_carry_zexthi */
    7882              : 
    7883              :         default:
    7884              :           return -1;
    7885              :         }
    7886              : 
    7887              :     case AND:
    7888              :       if (!register_operand (operands[0], E_HImode)
    7889              :           || GET_MODE (x3) != E_HImode)
    7890              :         return -1;
    7891              :       x5 = XEXP (x4, 0);
    7892              :       switch (GET_CODE (x5))
    7893              :         {
    7894              :         case REG:
    7895              :         case SUBREG:
    7896              :         case MEM:
    7897              :           operands[1] = x5;
    7898              :           if (!nonimmediate_operand (operands[1], E_QImode)
    7899              :               || GET_MODE (x4) != E_QImode)
    7900              :             return -1;
    7901              :           x6 = XEXP (x4, 1);
    7902              :           operands[2] = x6;
    7903              :           if (!x86_64_general_operand (operands[2], E_QImode))
    7904              :             return -1;
    7905              :           if (
    7906              : #line 12968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7907              : (TARGET_APX_NDD && TARGET_APX_NF
    7908              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7909              :             return 736; /* *andqi_1_zexthi_nf */
    7910              :           if (pnum_clobbers == NULL
    7911              :               || !
    7912              : #line 12968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7913              : (TARGET_APX_NDD && true
    7914              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7915              :             return -1;
    7916              :           *pnum_clobbers = 1;
    7917              :           return 737; /* *andqi_1_zexthi */
    7918              : 
    7919              :         case UNSPEC:
    7920              :           if (XVECLEN (x5, 0) != 2)
    7921              :             return -1;
    7922              :           x15 = XVECEXP (x5, 0, 0);
    7923              :           operands[1] = x15;
    7924              :           x16 = XVECEXP (x5, 0, 1);
    7925              :           operands[2] = x16;
    7926              :           x6 = XEXP (x4, 1);
    7927              :           operands[3] = x6;
    7928              :           switch (XINT (x5, 1))
    7929              :             {
    7930              :             case 159:
    7931              :               switch (pattern1095 (x4))
    7932              :                 {
    7933              :                 case 0:
    7934              :                   if (!(
    7935              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7936              : (TARGET_AVX512BW
    7937              :    && (2
    7938              :        > GET_MODE_SIZE (DImode))) && 
    7939              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7940              : (TARGET_AVX512BW)))
    7941              :                     return -1;
    7942              :                   return 8240; /* *avx512bw_testmv64qi3_zext_mask */
    7943              : 
    7944              :                 case 1:
    7945              :                   if (!(
    7946              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7947              : (TARGET_AVX512BW
    7948              :    && (2
    7949              :        > GET_MODE_SIZE (SImode))) && 
    7950              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7951              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7952              :                     return -1;
    7953              :                   return 8243; /* *avx512vl_testmv32qi3_zext_mask */
    7954              : 
    7955              :                 case 2:
    7956              :                   if (!(
    7957              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7958              : (TARGET_AVX512BW
    7959              :    && (2
    7960              :        > GET_MODE_SIZE (SImode))) && 
    7961              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7962              : (TARGET_AVX512BW)))
    7963              :                     return -1;
    7964              :                   return 8249; /* *avx512bw_testmv32hi3_zext_mask */
    7965              : 
    7966              :                 case 3:
    7967              :                   if (!(
    7968              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7969              : (TARGET_AVX512BW
    7970              :    && (2
    7971              :        > GET_MODE_SIZE (HImode))) && 
    7972              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7973              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7974              :                     return -1;
    7975              :                   return 8246; /* *avx512vl_testmv16qi3_zext_mask */
    7976              : 
    7977              :                 case 4:
    7978              :                   if (!(
    7979              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7980              : (TARGET_AVX512BW
    7981              :    && (2
    7982              :        > GET_MODE_SIZE (HImode))) && 
    7983              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7984              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7985              :                     return -1;
    7986              :                   return 8252; /* *avx512vl_testmv16hi3_zext_mask */
    7987              : 
    7988              :                 case 5:
    7989              :                   if (!
    7990              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7991              : (TARGET_AVX512BW
    7992              :    && (2
    7993              :        > GET_MODE_SIZE (HImode))))
    7994              :                     return -1;
    7995              :                   return 8258; /* *avx512f_testmv16si3_zext_mask */
    7996              : 
    7997              :                 case 6:
    7998              :                   if (!(
    7999              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8000              : (TARGET_AVX512BW
    8001              :    && (2
    8002              :        > GET_MODE_SIZE (QImode))) && 
    8003              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8004              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8005              :                     return -1;
    8006              :                   return 8255; /* *avx512vl_testmv8hi3_zext_mask */
    8007              : 
    8008              :                 case 7:
    8009              :                   if (!(
    8010              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8011              : (TARGET_AVX512BW
    8012              :    && (2
    8013              :        > GET_MODE_SIZE (QImode))) && 
    8014              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8015              : (TARGET_AVX512VL)))
    8016              :                     return -1;
    8017              :                   return 8261; /* *avx512vl_testmv8si3_zext_mask */
    8018              : 
    8019              :                 case 8:
    8020              :                   if (!(
    8021              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8022              : (TARGET_AVX512BW
    8023              :    && (2
    8024              :        > GET_MODE_SIZE (QImode))) && 
    8025              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8026              : (TARGET_AVX512VL)))
    8027              :                     return -1;
    8028              :                   return 8264; /* *avx512vl_testmv4si3_zext_mask */
    8029              : 
    8030              :                 case 9:
    8031              :                   if (!
    8032              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8033              : (TARGET_AVX512BW
    8034              :    && (2
    8035              :        > GET_MODE_SIZE (QImode))))
    8036              :                     return -1;
    8037              :                   return 8267; /* *avx512f_testmv8di3_zext_mask */
    8038              : 
    8039              :                 case 10:
    8040              :                   if (!(
    8041              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8042              : (TARGET_AVX512BW
    8043              :    && (2
    8044              :        > GET_MODE_SIZE (QImode))) && 
    8045              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8046              : (TARGET_AVX512VL)))
    8047              :                     return -1;
    8048              :                   return 8270; /* *avx512vl_testmv4di3_zext_mask */
    8049              : 
    8050              :                 case 11:
    8051              :                   if (!(
    8052              : #line 19429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8053              : (TARGET_AVX512BW
    8054              :    && (2
    8055              :        > GET_MODE_SIZE (QImode))) && 
    8056              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8057              : (TARGET_AVX512VL)))
    8058              :                     return -1;
    8059              :                   return 8273; /* *avx512vl_testmv2di3_zext_mask */
    8060              : 
    8061              :                 default:
    8062              :                   return -1;
    8063              :                 }
    8064              : 
    8065              :             case 160:
    8066              :               switch (pattern1095 (x4))
    8067              :                 {
    8068              :                 case 0:
    8069              :                   if (!(
    8070              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8071              : (TARGET_AVX512BW
    8072              :    && (2
    8073              :        > GET_MODE_SIZE (DImode))) && 
    8074              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8075              : (TARGET_AVX512BW)))
    8076              :                     return -1;
    8077              :                   return 8312; /* *avx512bw_testnmv64qi3_zext_mask */
    8078              : 
    8079              :                 case 1:
    8080              :                   if (!(
    8081              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8082              : (TARGET_AVX512BW
    8083              :    && (2
    8084              :        > GET_MODE_SIZE (SImode))) && 
    8085              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8086              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8087              :                     return -1;
    8088              :                   return 8315; /* *avx512vl_testnmv32qi3_zext_mask */
    8089              : 
    8090              :                 case 2:
    8091              :                   if (!(
    8092              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8093              : (TARGET_AVX512BW
    8094              :    && (2
    8095              :        > GET_MODE_SIZE (SImode))) && 
    8096              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8097              : (TARGET_AVX512BW)))
    8098              :                     return -1;
    8099              :                   return 8321; /* *avx512bw_testnmv32hi3_zext_mask */
    8100              : 
    8101              :                 case 3:
    8102              :                   if (!(
    8103              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8104              : (TARGET_AVX512BW
    8105              :    && (2
    8106              :        > GET_MODE_SIZE (HImode))) && 
    8107              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8108              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8109              :                     return -1;
    8110              :                   return 8318; /* *avx512vl_testnmv16qi3_zext_mask */
    8111              : 
    8112              :                 case 4:
    8113              :                   if (!(
    8114              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8115              : (TARGET_AVX512BW
    8116              :    && (2
    8117              :        > GET_MODE_SIZE (HImode))) && 
    8118              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8119              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8120              :                     return -1;
    8121              :                   return 8324; /* *avx512vl_testnmv16hi3_zext_mask */
    8122              : 
    8123              :                 case 5:
    8124              :                   if (!
    8125              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8126              : (TARGET_AVX512BW
    8127              :    && (2
    8128              :        > GET_MODE_SIZE (HImode))))
    8129              :                     return -1;
    8130              :                   return 8330; /* *avx512f_testnmv16si3_zext_mask */
    8131              : 
    8132              :                 case 6:
    8133              :                   if (!(
    8134              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8135              : (TARGET_AVX512BW
    8136              :    && (2
    8137              :        > GET_MODE_SIZE (QImode))) && 
    8138              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8139              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8140              :                     return -1;
    8141              :                   return 8327; /* *avx512vl_testnmv8hi3_zext_mask */
    8142              : 
    8143              :                 case 7:
    8144              :                   if (!(
    8145              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8146              : (TARGET_AVX512BW
    8147              :    && (2
    8148              :        > GET_MODE_SIZE (QImode))) && 
    8149              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8150              : (TARGET_AVX512VL)))
    8151              :                     return -1;
    8152              :                   return 8333; /* *avx512vl_testnmv8si3_zext_mask */
    8153              : 
    8154              :                 case 8:
    8155              :                   if (!(
    8156              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8157              : (TARGET_AVX512BW
    8158              :    && (2
    8159              :        > GET_MODE_SIZE (QImode))) && 
    8160              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8161              : (TARGET_AVX512VL)))
    8162              :                     return -1;
    8163              :                   return 8336; /* *avx512vl_testnmv4si3_zext_mask */
    8164              : 
    8165              :                 case 9:
    8166              :                   if (!
    8167              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8168              : (TARGET_AVX512BW
    8169              :    && (2
    8170              :        > GET_MODE_SIZE (QImode))))
    8171              :                     return -1;
    8172              :                   return 8339; /* *avx512f_testnmv8di3_zext_mask */
    8173              : 
    8174              :                 case 10:
    8175              :                   if (!(
    8176              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8177              : (TARGET_AVX512BW
    8178              :    && (2
    8179              :        > GET_MODE_SIZE (QImode))) && 
    8180              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8181              : (TARGET_AVX512VL)))
    8182              :                     return -1;
    8183              :                   return 8342; /* *avx512vl_testnmv4di3_zext_mask */
    8184              : 
    8185              :                 case 11:
    8186              :                   if (!(
    8187              : #line 19459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8188              : (TARGET_AVX512BW
    8189              :    && (2
    8190              :        > GET_MODE_SIZE (QImode))) && 
    8191              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8192              : (TARGET_AVX512VL)))
    8193              :                     return -1;
    8194              :                   return 8345; /* *avx512vl_testnmv2di3_zext_mask */
    8195              : 
    8196              :                 default:
    8197              :                   return -1;
    8198              :                 }
    8199              : 
    8200              :             default:
    8201              :               return -1;
    8202              :             }
    8203              : 
    8204              :         default:
    8205              :           return -1;
    8206              :         }
    8207              : 
    8208              :     case IOR:
    8209              :       if (pattern85 (x3) != 0)
    8210              :         return -1;
    8211              :       if (
    8212              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8213              : (TARGET_APX_NDD && TARGET_APX_NF
    8214              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8215              :         return 871; /* *iorqi_1_zexthi_nf */
    8216              :       if (pnum_clobbers == NULL
    8217              :           || !
    8218              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8219              : (TARGET_APX_NDD && true
    8220              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8221              :         return -1;
    8222              :       *pnum_clobbers = 1;
    8223              :       return 872; /* *iorqi_1_zexthi */
    8224              : 
    8225              :     case XOR:
    8226              :       if (pattern85 (x3) != 0)
    8227              :         return -1;
    8228              :       if (
    8229              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8230              : (TARGET_APX_NDD && TARGET_APX_NF
    8231              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8232              :         return 873; /* *xorqi_1_zexthi_nf */
    8233              :       if (pnum_clobbers == NULL
    8234              :           || !
    8235              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8236              : (TARGET_APX_NDD && true
    8237              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8238              :         return -1;
    8239              :       *pnum_clobbers = 1;
    8240              :       return 874; /* *xorqi_1_zexthi */
    8241              : 
    8242              :     case NEG:
    8243              :       if (pattern86 (x3) != 0)
    8244              :         return -1;
    8245              :       if (
    8246              : #line 14696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8247              : (TARGET_APX_NDD && TARGET_APX_NF))
    8248              :         return 994; /* *negqi_1_zexthi_nf */
    8249              :       if (pnum_clobbers == NULL
    8250              :           || !
    8251              : #line 14696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8252              : (TARGET_APX_NDD && true))
    8253              :         return -1;
    8254              :       *pnum_clobbers = 1;
    8255              :       return 995; /* *negqi_1_zexthi */
    8256              : 
    8257              :     case NOT:
    8258              :       if (pattern86 (x3) != 0
    8259              :           || !
    8260              : #line 15347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8261              : (TARGET_APX_NDD))
    8262              :         return -1;
    8263              :       return 1067; /* *one_cmplqi2_1_zexthi */
    8264              : 
    8265              :     case ASHIFT:
    8266              :       if (pattern87 (x3) != 0)
    8267              :         return -1;
    8268              :       if (
    8269              : #line 16346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8270              : (TARGET_APX_NDD && TARGET_APX_NF))
    8271              :         return 1125; /* *ashlqi3_1_zexthi_nf */
    8272              :       if (pnum_clobbers == NULL
    8273              :           || !
    8274              : #line 16346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8275              : (TARGET_APX_NDD && true))
    8276              :         return -1;
    8277              :       *pnum_clobbers = 1;
    8278              :       return 1126; /* *ashlqi3_1_zexthi */
    8279              : 
    8280              :     case LSHIFTRT:
    8281              :       if (pattern87 (x3) != 0)
    8282              :         return -1;
    8283              :       if (
    8284              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8285              : (TARGET_APX_NDD && TARGET_APX_NF))
    8286              :         return 1218; /* *lshrqi3_1_zexthi_nf */
    8287              :       if (pnum_clobbers == NULL
    8288              :           || !
    8289              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8290              : (TARGET_APX_NDD && true))
    8291              :         return -1;
    8292              :       *pnum_clobbers = 1;
    8293              :       return 1219; /* *lshrqi3_1_zexthi */
    8294              : 
    8295              :     case ASHIFTRT:
    8296              :       if (pattern87 (x3) != 0)
    8297              :         return -1;
    8298              :       if (
    8299              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8300              : (TARGET_APX_NDD && TARGET_APX_NF))
    8301              :         return 1220; /* *ashrqi3_1_zexthi_nf */
    8302              :       if (pnum_clobbers == NULL
    8303              :           || !
    8304              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8305              : (TARGET_APX_NDD && true))
    8306              :         return -1;
    8307              :       *pnum_clobbers = 1;
    8308              :       return 1221; /* *ashrqi3_1_zexthi */
    8309              : 
    8310              :     case ROTATE:
    8311              :       if (pattern87 (x3) != 0)
    8312              :         return -1;
    8313              :       if (
    8314              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8315              : (TARGET_APX_NDD && TARGET_APX_NF))
    8316              :         return 1383; /* *rotlqi3_1_zexthi_nf */
    8317              :       if (pnum_clobbers == NULL
    8318              :           || !
    8319              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8320              : (TARGET_APX_NDD && true))
    8321              :         return -1;
    8322              :       *pnum_clobbers = 1;
    8323              :       return 1384; /* *rotlqi3_1_zexthi */
    8324              : 
    8325              :     case ROTATERT:
    8326              :       if (pattern87 (x3) != 0)
    8327              :         return -1;
    8328              :       if (
    8329              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8330              : (TARGET_APX_NDD && TARGET_APX_NF))
    8331              :         return 1385; /* *rotrqi3_1_zexthi_nf */
    8332              :       if (pnum_clobbers == NULL
    8333              :           || !
    8334              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8335              : (TARGET_APX_NDD && true))
    8336              :         return -1;
    8337              :       *pnum_clobbers = 1;
    8338              :       return 1386; /* *rotrqi3_1_zexthi */
    8339              : 
    8340              :     case VEC_SELECT:
    8341              :       x6 = XEXP (x4, 1);
    8342              :       if (GET_CODE (x6) != PARALLEL)
    8343              :         return -1;
    8344              :       x5 = XEXP (x4, 0);
    8345              :       operands[1] = x5;
    8346              :       switch (XVECLEN (x6, 0))
    8347              :         {
    8348              :         case 4:
    8349              :           if (pattern619 (x3) != 0
    8350              :               || !
    8351              : #line 5039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8352              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8353              :             return -1;
    8354              :           return 2362; /* sse4_1_zero_extendv4qiv4hi2 */
    8355              : 
    8356              :         case 2:
    8357              :           switch (pattern620 (x3))
    8358              :             {
    8359              :             case 0:
    8360              :               if (!
    8361              : #line 5071 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8362              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8363              :                 return -1;
    8364              :               return 2364; /* sse4_1_zero_extendv2hiv2si2 */
    8365              : 
    8366              :             case 1:
    8367              :               if (!
    8368              : #line 5103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8369              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8370              :                 return -1;
    8371              :               return 2366; /* sse4_1_zero_extendv2qiv2si2 */
    8372              : 
    8373              :             case 2:
    8374              :               if (!
    8375              : #line 5129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8376              : (TARGET_SSE4_1))
    8377              :                 return -1;
    8378              :               return 2368; /* sse4_1_zero_extendv2qiv2hi2 */
    8379              : 
    8380              :             default:
    8381              :               return -1;
    8382              :             }
    8383              : 
    8384              :         case 1:
    8385              :           if (!register_operand (operands[0], E_HImode)
    8386              :               || GET_MODE (x3) != E_HImode
    8387              :               || GET_MODE (x4) != E_QImode)
    8388              :             return -1;
    8389              :           x17 = XVECEXP (x6, 0, 0);
    8390              :           operands[2] = x17;
    8391              :           switch (pattern988 ())
    8392              :             {
    8393              :             case 0:
    8394              :               if (!
    8395              : #line 5502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8396              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8397              :                 return -1;
    8398              :               return 2384; /* *mmx_pextrb_zext */
    8399              : 
    8400              :             case 1:
    8401              :               if (!
    8402              : #line 6158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8403              : (TARGET_SSE4_1))
    8404              :                 return -1;
    8405              :               return 2422; /* *pextrb_zext */
    8406              : 
    8407              :             case 2:
    8408              :               if (!
    8409              : #line 21474 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8410              : (TARGET_SSE4_1))
    8411              :                 return -1;
    8412              :               return 8509; /* *vec_extractv16qi_zext */
    8413              : 
    8414              :             default:
    8415              :               return -1;
    8416              :             }
    8417              : 
    8418              :         default:
    8419              :           return -1;
    8420              :         }
    8421              : 
    8422              :     case UNSPEC:
    8423              :       return recog_29 (x1, insn, pnum_clobbers);
    8424              : 
    8425              :     default:
    8426              :       return -1;
    8427              :     }
    8428              : }
    8429              : 
    8430              :  int
    8431              : recog_65 (rtx x1 ATTRIBUTE_UNUSED,
    8432              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8433              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8434              : {
    8435              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8436              :   rtx x2, x3, x4, x5, x6, x7;
    8437              :   int res ATTRIBUTE_UNUSED;
    8438              :   x2 = XEXP (x1, 0);
    8439              :   operands[0] = x2;
    8440              :   x3 = XEXP (x1, 1);
    8441              :   x4 = XEXP (x3, 0);
    8442              :   switch (GET_CODE (x4))
    8443              :     {
    8444              :     case REG:
    8445              :     case SUBREG:
    8446              :       operands[2] = x4;
    8447              :       x5 = XEXP (x3, 2);
    8448              :       if (GET_CODE (x5) != CONST_INT)
    8449              :         return -1;
    8450              :       operands[3] = x5;
    8451              :       x6 = XEXP (x3, 1);
    8452              :       operands[1] = x6;
    8453              :       switch (GET_MODE (operands[0]))
    8454              :         {
    8455              :         case E_V2SFmode:
    8456              :           if (register_operand (operands[0], E_V2SFmode)
    8457              :               && GET_MODE (x3) == E_V2SFmode
    8458              :               && register_operand (operands[2], E_V2SFmode)
    8459              :               && register_operand (operands[1], E_V2SFmode)
    8460              :               && const_0_to_3_operand (operands[3], E_SImode)
    8461              :               && 
    8462              : #line 1320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8463              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8464              :             return 2131; /* *mmx_blendps */
    8465              :           break;
    8466              : 
    8467              :         case E_V4HFmode:
    8468              :           if (pattern870 (x3, 
    8469              : E_V4HFmode) == 0
    8470              :               && 
    8471              : #line 5625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8472              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8473              :             return 2393; /* *mmx_pblendw64 */
    8474              :           break;
    8475              : 
    8476              :         case E_V4BFmode:
    8477              :           if (pattern870 (x3, 
    8478              : E_V4BFmode) == 0
    8479              :               && 
    8480              : #line 5625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8481              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8482              :             return 2394; /* *mmx_pblendw64 */
    8483              :           break;
    8484              : 
    8485              :         case E_V4HImode:
    8486              :           if (pattern870 (x3, 
    8487              : E_V4HImode) == 0
    8488              :               && 
    8489              : #line 5625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8490              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8491              :             return 2395; /* *mmx_pblendw64 */
    8492              :           break;
    8493              : 
    8494              :         case E_V2HFmode:
    8495              :           if (pattern871 (x3, 
    8496              : E_V2HFmode) == 0
    8497              :               && 
    8498              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8499              : (TARGET_SSE4_1))
    8500              :             return 2396; /* *mmx_pblendw32 */
    8501              :           break;
    8502              : 
    8503              :         case E_V2BFmode:
    8504              :           if (pattern871 (x3, 
    8505              : E_V2BFmode) == 0
    8506              :               && 
    8507              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8508              : (TARGET_SSE4_1))
    8509              :             return 2397; /* *mmx_pblendw32 */
    8510              :           break;
    8511              : 
    8512              :         case E_V2HImode:
    8513              :           if (pattern871 (x3, 
    8514              : E_V2HImode) == 0
    8515              :               && 
    8516              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8517              : (TARGET_SSE4_1))
    8518              :             return 2398; /* *mmx_pblendw32 */
    8519              :           break;
    8520              : 
    8521              :         default:
    8522              :           break;
    8523              :         }
    8524              :       if (XWINT (x5, 0) != 1L)
    8525              :         return -1;
    8526              :       operands[1] = x6;
    8527              :       switch (GET_MODE (operands[0]))
    8528              :         {
    8529              :         case E_V2SFmode:
    8530              :           if (pattern872 (x3, 
    8531              : E_V2SFmode) != 0
    8532              :               || !
    8533              : #line 1764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8534              : (TARGET_MMX_WITH_SSE))
    8535              :             return -1;
    8536              :           return 2147; /* *mmx_movss_v2sf */
    8537              : 
    8538              :         case E_V2SImode:
    8539              :           if (pattern872 (x3, 
    8540              : E_V2SImode) != 0
    8541              :               || !
    8542              : #line 1764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8543              : (TARGET_MMX_WITH_SSE))
    8544              :             return -1;
    8545              :           return 2148; /* *mmx_movss_v2si */
    8546              : 
    8547              :         default:
    8548              :           return -1;
    8549              :         }
    8550              : 
    8551              :     case VEC_DUPLICATE:
    8552              :       x7 = XEXP (x4, 0);
    8553              :       operands[2] = x7;
    8554              :       x6 = XEXP (x3, 1);
    8555              :       operands[1] = x6;
    8556              :       x5 = XEXP (x3, 2);
    8557              :       operands[3] = x5;
    8558              :       if (!const_int_operand (operands[3], E_SImode))
    8559              :         return -1;
    8560              :       switch (GET_MODE (operands[0]))
    8561              :         {
    8562              :         case E_V2SImode:
    8563              :           if (pattern873 (x3, 
    8564              : E_V2SImode, 
    8565              : E_SImode) != 0
    8566              :               || !
    8567              : #line 5290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8568              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8569              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8570              :        < GET_MODE_NUNITS (V2SImode))))
    8571              :             return -1;
    8572              :           return 2373; /* *mmx_pinsrd */
    8573              : 
    8574              :         case E_V4HFmode:
    8575              :           if (pattern873 (x3, 
    8576              : E_V4HFmode, 
    8577              : E_HFmode) != 0
    8578              :               || !
    8579              : #line 5320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8580              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8581              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8582              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8583              :        < GET_MODE_NUNITS (V4HImode))))
    8584              :             return -1;
    8585              :           return 2374; /* *mmx_pinsrw */
    8586              : 
    8587              :         case E_V4BFmode:
    8588              :           if (pattern873 (x3, 
    8589              : E_V4BFmode, 
    8590              : E_BFmode) != 0
    8591              :               || !
    8592              : #line 5320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8593              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8594              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8595              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8596              :        < GET_MODE_NUNITS (V4HImode))))
    8597              :             return -1;
    8598              :           return 2375; /* *mmx_pinsrw */
    8599              : 
    8600              :         case E_V4HImode:
    8601              :           if (pattern873 (x3, 
    8602              : E_V4HImode, 
    8603              : E_HImode) != 0
    8604              :               || !
    8605              : #line 5320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8606              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8607              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8608              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8609              :        < GET_MODE_NUNITS (V4HImode))))
    8610              :             return -1;
    8611              :           return 2376; /* *mmx_pinsrw */
    8612              : 
    8613              :         case E_V8QImode:
    8614              :           if (pattern873 (x3, 
    8615              : E_V8QImode, 
    8616              : E_QImode) != 0
    8617              :               || !
    8618              : #line 5375 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8619              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8620              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8621              :        < GET_MODE_NUNITS (V8QImode))))
    8622              :             return -1;
    8623              :           return 2377; /* *mmx_pinsrb */
    8624              : 
    8625              :         case E_V2HFmode:
    8626              :           if (pattern873 (x3, 
    8627              : E_V2HFmode, 
    8628              : E_HFmode) != 0
    8629              :               || !
    8630              : #line 5988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8631              : (TARGET_SSE2
    8632              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8633              :        < GET_MODE_NUNITS (V2HImode))))
    8634              :             return -1;
    8635              :           return 2412; /* *pinsrw */
    8636              : 
    8637              :         case E_V2BFmode:
    8638              :           if (pattern873 (x3, 
    8639              : E_V2BFmode, 
    8640              : E_BFmode) != 0
    8641              :               || !
    8642              : #line 5988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8643              : (TARGET_SSE2
    8644              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8645              :        < GET_MODE_NUNITS (V2HImode))))
    8646              :             return -1;
    8647              :           return 2413; /* *pinsrw */
    8648              : 
    8649              :         case E_V2HImode:
    8650              :           if (pattern873 (x3, 
    8651              : E_V2HImode, 
    8652              : E_HImode) != 0
    8653              :               || !
    8654              : #line 5988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8655              : (TARGET_SSE2
    8656              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8657              :        < GET_MODE_NUNITS (V2HImode))))
    8658              :             return -1;
    8659              :           return 2414; /* *pinsrw */
    8660              : 
    8661              :         case E_V4QImode:
    8662              :           if (pattern873 (x3, 
    8663              : E_V4QImode, 
    8664              : E_QImode) != 0
    8665              :               || !
    8666              : #line 6041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8667              : (TARGET_SSE4_1
    8668              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8669              :        < GET_MODE_NUNITS (V4QImode))))
    8670              :             return -1;
    8671              :           return 2415; /* *pinsrb */
    8672              : 
    8673              :         default:
    8674              :           return -1;
    8675              :         }
    8676              : 
    8677              :     case SS_TRUNCATE:
    8678              :       switch (pattern107 (x3))
    8679              :         {
    8680              :         case 0:
    8681              :           if (!
    8682              : #line 15795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8683              : (TARGET_AVX512VL))
    8684              :             return -1;
    8685              :           return 7344; /* avx512vl_ss_truncatev2div2qi2_mask_store_1 */
    8686              : 
    8687              :         case 1:
    8688              :           if (!
    8689              : #line 15890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8690              : (TARGET_AVX512VL))
    8691              :             return -1;
    8692              :           return 7371; /* avx512vl_ss_truncatev4siv4qi2_mask_store_1 */
    8693              : 
    8694              :         case 2:
    8695              :           if (!
    8696              : #line 15890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8697              : (TARGET_AVX512VL))
    8698              :             return -1;
    8699              :           return 7374; /* avx512vl_ss_truncatev4div4qi2_mask_store_1 */
    8700              : 
    8701              :         case 3:
    8702              :           if (!(
    8703              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8704              : (TARGET_AVX512VL) && 
    8705              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8706              : (TARGET_AVX512BW)))
    8707              :             return -1;
    8708              :           return 7401; /* avx512vl_ss_truncatev8hiv8qi2_mask_store_1 */
    8709              : 
    8710              :         case 4:
    8711              :           if (!
    8712              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8713              : (TARGET_AVX512VL))
    8714              :             return -1;
    8715              :           return 7404; /* avx512vl_ss_truncatev8siv8qi2_mask_store_1 */
    8716              : 
    8717              :         case 5:
    8718              :           if (!
    8719              : #line 16504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8720              : (TARGET_AVX512F))
    8721              :             return -1;
    8722              :           return 7496; /* avx512f_ss_truncatev8div16qi2_mask_store_1 */
    8723              : 
    8724              :         case 6:
    8725              :           if (!
    8726              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8727              : (TARGET_AVX512VL))
    8728              :             return -1;
    8729              :           return 7441; /* avx512vl_ss_truncatev4siv4hi2_mask_store_1 */
    8730              : 
    8731              :         case 7:
    8732              :           if (!
    8733              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8734              : (TARGET_AVX512VL))
    8735              :             return -1;
    8736              :           return 7444; /* avx512vl_ss_truncatev4div4hi2_mask_store_1 */
    8737              : 
    8738              :         case 8:
    8739              :           if (!
    8740              : #line 16233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8741              : (TARGET_AVX512VL))
    8742              :             return -1;
    8743              :           return 7459; /* avx512vl_ss_truncatev2div2hi2_mask_store_1 */
    8744              : 
    8745              :         case 9:
    8746              :           if (!
    8747              : #line 16379 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8748              : (TARGET_AVX512VL))
    8749              :             return -1;
    8750              :           return 7478; /* avx512vl_ss_truncatev2div2si2_mask_store_1 */
    8751              : 
    8752              :         default:
    8753              :           return -1;
    8754              :         }
    8755              : 
    8756              :     case TRUNCATE:
    8757              :       switch (pattern107 (x3))
    8758              :         {
    8759              :         case 0:
    8760              :           if (!
    8761              : #line 15795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8762              : (TARGET_AVX512VL))
    8763              :             return -1;
    8764              :           return 7345; /* avx512vl_truncatev2div2qi2_mask_store_1 */
    8765              : 
    8766              :         case 1:
    8767              :           if (!
    8768              : #line 15890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8769              : (TARGET_AVX512VL))
    8770              :             return -1;
    8771              :           return 7372; /* avx512vl_truncatev4siv4qi2_mask_store_1 */
    8772              : 
    8773              :         case 2:
    8774              :           if (!
    8775              : #line 15890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8776              : (TARGET_AVX512VL))
    8777              :             return -1;
    8778              :           return 7375; /* avx512vl_truncatev4div4qi2_mask_store_1 */
    8779              : 
    8780              :         case 3:
    8781              :           if (!(
    8782              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8783              : (TARGET_AVX512VL) && 
    8784              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8785              : (TARGET_AVX512BW)))
    8786              :             return -1;
    8787              :           return 7402; /* avx512vl_truncatev8hiv8qi2_mask_store_1 */
    8788              : 
    8789              :         case 4:
    8790              :           if (!
    8791              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8792              : (TARGET_AVX512VL))
    8793              :             return -1;
    8794              :           return 7405; /* avx512vl_truncatev8siv8qi2_mask_store_1 */
    8795              : 
    8796              :         case 5:
    8797              :           if (!
    8798              : #line 16504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8799              : (TARGET_AVX512F))
    8800              :             return -1;
    8801              :           return 7497; /* avx512f_truncatev8div16qi2_mask_store_1 */
    8802              : 
    8803              :         case 6:
    8804              :           if (!
    8805              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8806              : (TARGET_AVX512VL))
    8807              :             return -1;
    8808              :           return 7442; /* avx512vl_truncatev4siv4hi2_mask_store_1 */
    8809              : 
    8810              :         case 7:
    8811              :           if (!
    8812              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8813              : (TARGET_AVX512VL))
    8814              :             return -1;
    8815              :           return 7445; /* avx512vl_truncatev4div4hi2_mask_store_1 */
    8816              : 
    8817              :         case 8:
    8818              :           if (!
    8819              : #line 16233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8820              : (TARGET_AVX512VL))
    8821              :             return -1;
    8822              :           return 7460; /* avx512vl_truncatev2div2hi2_mask_store_1 */
    8823              : 
    8824              :         case 9:
    8825              :           if (!
    8826              : #line 16379 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8827              : (TARGET_AVX512VL))
    8828              :             return -1;
    8829              :           return 7479; /* avx512vl_truncatev2div2si2_mask_store_1 */
    8830              : 
    8831              :         default:
    8832              :           return -1;
    8833              :         }
    8834              : 
    8835              :     case US_TRUNCATE:
    8836              :       switch (pattern107 (x3))
    8837              :         {
    8838              :         case 0:
    8839              :           if (!
    8840              : #line 15795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8841              : (TARGET_AVX512VL))
    8842              :             return -1;
    8843              :           return 7346; /* avx512vl_us_truncatev2div2qi2_mask_store_1 */
    8844              : 
    8845              :         case 1:
    8846              :           if (!
    8847              : #line 15890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8848              : (TARGET_AVX512VL))
    8849              :             return -1;
    8850              :           return 7373; /* avx512vl_us_truncatev4siv4qi2_mask_store_1 */
    8851              : 
    8852              :         case 2:
    8853              :           if (!
    8854              : #line 15890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8855              : (TARGET_AVX512VL))
    8856              :             return -1;
    8857              :           return 7376; /* avx512vl_us_truncatev4div4qi2_mask_store_1 */
    8858              : 
    8859              :         case 3:
    8860              :           if (!(
    8861              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8862              : (TARGET_AVX512VL) && 
    8863              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8864              : (TARGET_AVX512BW)))
    8865              :             return -1;
    8866              :           return 7403; /* avx512vl_us_truncatev8hiv8qi2_mask_store_1 */
    8867              : 
    8868              :         case 4:
    8869              :           if (!
    8870              : #line 15988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8871              : (TARGET_AVX512VL))
    8872              :             return -1;
    8873              :           return 7406; /* avx512vl_us_truncatev8siv8qi2_mask_store_1 */
    8874              : 
    8875              :         case 5:
    8876              :           if (!
    8877              : #line 16504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8878              : (TARGET_AVX512F))
    8879              :             return -1;
    8880              :           return 7498; /* avx512f_us_truncatev8div16qi2_mask_store_1 */
    8881              : 
    8882              :         case 6:
    8883              :           if (!
    8884              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8885              : (TARGET_AVX512VL))
    8886              :             return -1;
    8887              :           return 7443; /* avx512vl_us_truncatev4siv4hi2_mask_store_1 */
    8888              : 
    8889              :         case 7:
    8890              :           if (!
    8891              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8892              : (TARGET_AVX512VL))
    8893              :             return -1;
    8894              :           return 7446; /* avx512vl_us_truncatev4div4hi2_mask_store_1 */
    8895              : 
    8896              :         case 8:
    8897              :           if (!
    8898              : #line 16233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8899              : (TARGET_AVX512VL))
    8900              :             return -1;
    8901              :           return 7461; /* avx512vl_us_truncatev2div2hi2_mask_store_1 */
    8902              : 
    8903              :         case 9:
    8904              :           if (!
    8905              : #line 16379 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8906              : (TARGET_AVX512VL))
    8907              :             return -1;
    8908              :           return 7480; /* avx512vl_us_truncatev2div2si2_mask_store_1 */
    8909              : 
    8910              :         default:
    8911              :           return -1;
    8912              :         }
    8913              : 
    8914              :     default:
    8915              :       return -1;
    8916              :     }
    8917              : }
    8918              : 
    8919              :  int
    8920              : recog_77 (rtx x1 ATTRIBUTE_UNUSED,
    8921              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8922              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8923              : {
    8924              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8925              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8926              :   rtx x10, x11;
    8927              :   int res ATTRIBUTE_UNUSED;
    8928              :   x2 = XEXP (x1, 1);
    8929              :   x3 = XEXP (x2, 0);
    8930              :   x4 = XEXP (x3, 0);
    8931              :   switch (GET_CODE (x4))
    8932              :     {
    8933              :     case REG:
    8934              :     case SUBREG:
    8935              :     case MEM:
    8936              :       operands[1] = x4;
    8937              :       x5 = XEXP (x3, 1);
    8938              :       operands[2] = x5;
    8939              :       switch (GET_CODE (operands[2]))
    8940              :         {
    8941              :         case CONST_INT:
    8942              :         case CONST_WIDE_INT:
    8943              :         case CONST_POLY_INT:
    8944              :         case CONST_FIXED:
    8945              :         case CONST_DOUBLE:
    8946              :         case CONST_VECTOR:
    8947              :         case CONST:
    8948              :         case REG:
    8949              :         case SUBREG:
    8950              :         case MEM:
    8951              :         case LABEL_REF:
    8952              :         case SYMBOL_REF:
    8953              :         case HIGH:
    8954              :           switch (pattern114 (x2, pnum_clobbers))
    8955              :             {
    8956              :             case 0:
    8957              :               if (
    8958              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8959              : (TARGET_APX_NDD && TARGET_APX_NF
    8960              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8961              :                 return 398; /* *subqi_1_zextsi_nf */
    8962              :               if (pnum_clobbers == NULL
    8963              :                   || !
    8964              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8965              : (TARGET_APX_NDD && true
    8966              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8967              :                 return -1;
    8968              :               *pnum_clobbers = 1;
    8969              :               return 399; /* *subqi_1_zextsi */
    8970              : 
    8971              :             case 1:
    8972              :               if (
    8973              : #line 8191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8974              : (TARGET_APX_NDD && TARGET_APX_NF
    8975              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8976              :                 return 402; /* *subhi_1_zextsi_nf */
    8977              :               if (pnum_clobbers == NULL
    8978              :                   || !
    8979              : #line 8191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8980              : (TARGET_APX_NDD && true
    8981              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8982              :                 return -1;
    8983              :               *pnum_clobbers = 1;
    8984              :               return 403; /* *subhi_1_zextsi */
    8985              : 
    8986              :             case 2:
    8987              :               if (
    8988              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8989              : (TARGET_APX_NDD && TARGET_APX_NF
    8990              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8991              :                 return 400; /* *subqi_1_zextdi_nf */
    8992              :               if (pnum_clobbers == NULL
    8993              :                   || !
    8994              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8995              : (TARGET_APX_NDD && true
    8996              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8997              :                 return -1;
    8998              :               *pnum_clobbers = 1;
    8999              :               return 401; /* *subqi_1_zextdi */
    9000              : 
    9001              :             case 3:
    9002              :               if (
    9003              : #line 8191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9004              : (TARGET_APX_NDD && TARGET_APX_NF
    9005              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9006              :                 return 404; /* *subhi_1_zextdi_nf */
    9007              :               if (pnum_clobbers == NULL
    9008              :                   || !
    9009              : #line 8191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9010              : (TARGET_APX_NDD && true
    9011              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9012              :                 return -1;
    9013              :               *pnum_clobbers = 1;
    9014              :               return 405; /* *subhi_1_zextdi */
    9015              : 
    9016              :             case 4:
    9017              :               if (!
    9018              : #line 8206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9019              : (TARGET_64BIT
    9020              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9021              :                 return -1;
    9022              :               *pnum_clobbers = 1;
    9023              :               return 406; /* *subsi_1_zext */
    9024              : 
    9025              :             default:
    9026              :               return -1;
    9027              :             }
    9028              : 
    9029              :         case LTU:
    9030              :         case UNLT:
    9031              :           switch (pattern760 (x2, pnum_clobbers))
    9032              :             {
    9033              :             case 0:
    9034              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9035              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
    9036              :                   || !
    9037              : #line 9737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9038              : (TARGET_APX_NDD))
    9039              :                 return -1;
    9040              :               *pnum_clobbers = 1;
    9041              :               return 534; /* *subqi3_carry_zextsi_0 */
    9042              : 
    9043              :             case 1:
    9044              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9045              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
    9046              :                   || !
    9047              : #line 9752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9048              : (TARGET_APX_NDD))
    9049              :                 return -1;
    9050              :               *pnum_clobbers = 1;
    9051              :               return 536; /* *subhi3_carry_zextsi_0 */
    9052              : 
    9053              :             case 2:
    9054              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9055              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
    9056              :                   || !
    9057              : #line 9737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9058              : (TARGET_APX_NDD))
    9059              :                 return -1;
    9060              :               *pnum_clobbers = 1;
    9061              :               return 535; /* *subqi3_carry_zextdi_0 */
    9062              : 
    9063              :             case 3:
    9064              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9065              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
    9066              :                   || !
    9067              : #line 9752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9068              : (TARGET_APX_NDD))
    9069              :                 return -1;
    9070              :               *pnum_clobbers = 1;
    9071              :               return 537; /* *subhi3_carry_zextdi_0 */
    9072              : 
    9073              :             case 4:
    9074              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9075              :                   || !ix86_carry_flag_operator (operands[2], E_SImode)
    9076              :                   || !
    9077              : #line 9767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9078              : (TARGET_64BIT))
    9079              :                 return -1;
    9080              :               *pnum_clobbers = 1;
    9081              :               return 538; /* *subsi3_carry_zext_0 */
    9082              : 
    9083              :             default:
    9084              :               return -1;
    9085              :             }
    9086              : 
    9087              :         case GE:
    9088              :         case GEU:
    9089              :           switch (pattern760 (x2, pnum_clobbers))
    9090              :             {
    9091              :             case 0:
    9092              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9093              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9094              :                   || !
    9095              : #line 9785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9096              : (TARGET_APX_NDD))
    9097              :                 return -1;
    9098              :               *pnum_clobbers = 1;
    9099              :               return 540; /* *subqi3_carry_zextsi_0r */
    9100              : 
    9101              :             case 1:
    9102              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9103              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9104              :                   || !
    9105              : #line 9800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9106              : (TARGET_APX_NDD))
    9107              :                 return -1;
    9108              :               *pnum_clobbers = 1;
    9109              :               return 542; /* *subhi3_carry_zextsi_0r */
    9110              : 
    9111              :             case 2:
    9112              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9113              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9114              :                   || !
    9115              : #line 9785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9116              : (TARGET_APX_NDD))
    9117              :                 return -1;
    9118              :               *pnum_clobbers = 1;
    9119              :               return 541; /* *subqi3_carry_zextdi_0r */
    9120              : 
    9121              :             case 3:
    9122              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9123              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9124              :                   || !
    9125              : #line 9800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9126              : (TARGET_APX_NDD))
    9127              :                 return -1;
    9128              :               *pnum_clobbers = 1;
    9129              :               return 543; /* *subhi3_carry_zextdi_0r */
    9130              : 
    9131              :             case 4:
    9132              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9133              :                   || !ix86_carry_flag_unset_operator (operands[2], E_SImode)
    9134              :                   || !
    9135              : #line 9815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9136              : (TARGET_64BIT))
    9137              :                 return -1;
    9138              :               *pnum_clobbers = 1;
    9139              :               return 544; /* *subsi3_carry_zext_0r */
    9140              : 
    9141              :             default:
    9142              :               return -1;
    9143              :             }
    9144              : 
    9145              :         default:
    9146              :           return -1;
    9147              :         }
    9148              : 
    9149              :     case MINUS:
    9150              :       if (pnum_clobbers == NULL)
    9151              :         return -1;
    9152              :       x6 = XEXP (x4, 1);
    9153              :       switch (GET_CODE (x6))
    9154              :         {
    9155              :         case LTU:
    9156              :         case UNLT:
    9157              :           operands[3] = x6;
    9158              :           x7 = XEXP (x6, 0);
    9159              :           if (GET_CODE (x7) != REG
    9160              :               || REGNO (x7) != 17)
    9161              :             return -1;
    9162              :           x8 = XEXP (x6, 1);
    9163              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9164              :             return -1;
    9165              :           x9 = XEXP (x4, 0);
    9166              :           operands[1] = x9;
    9167              :           x5 = XEXP (x3, 1);
    9168              :           operands[2] = x5;
    9169              :           switch (pattern279 (x2))
    9170              :             {
    9171              :             case 0:
    9172              :               if (pattern1550 (x4, 
    9173              : E_QImode) != 0
    9174              :                   || !
    9175              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9176              : (TARGET_APX_NDD
    9177              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9178              :                 return -1;
    9179              :               *pnum_clobbers = 1;
    9180              :               return 528; /* *subqi3_carry_zextsi */
    9181              : 
    9182              :             case 1:
    9183              :               if (pattern1550 (x4, 
    9184              : E_HImode) != 0
    9185              :                   || !
    9186              : #line 9697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9187              : (TARGET_APX_NDD
    9188              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9189              :                 return -1;
    9190              :               *pnum_clobbers = 1;
    9191              :               return 530; /* *subhi3_carry_zextsi */
    9192              : 
    9193              :             case 2:
    9194              :               if (pattern1550 (x4, 
    9195              : E_QImode) != 0
    9196              :                   || !
    9197              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9198              : (TARGET_APX_NDD
    9199              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9200              :                 return -1;
    9201              :               *pnum_clobbers = 1;
    9202              :               return 529; /* *subqi3_carry_zextdi */
    9203              : 
    9204              :             case 3:
    9205              :               if (pattern1550 (x4, 
    9206              : E_HImode) != 0
    9207              :                   || !
    9208              : #line 9697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9209              : (TARGET_APX_NDD
    9210              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9211              :                 return -1;
    9212              :               *pnum_clobbers = 1;
    9213              :               return 531; /* *subhi3_carry_zextdi */
    9214              : 
    9215              :             case 4:
    9216              :               if (pattern1550 (x4, 
    9217              : E_SImode) != 0
    9218              :                   || !
    9219              : #line 9717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9220              : (TARGET_64BIT
    9221              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9222              :                 return -1;
    9223              :               *pnum_clobbers = 1;
    9224              :               return 532; /* *subsi3_carry_zext */
    9225              : 
    9226              :             default:
    9227              :               return -1;
    9228              :             }
    9229              : 
    9230              :         default:
    9231              :           return -1;
    9232              :         }
    9233              : 
    9234              :     case CONST_INT:
    9235              :       if (pnum_clobbers == NULL
    9236              :           || !register_operand (operands[0], E_DImode)
    9237              :           || GET_MODE (x2) != E_DImode
    9238              :           || GET_MODE (x3) != E_SImode)
    9239              :         return -1;
    9240              :       x5 = XEXP (x3, 1);
    9241              :       if (GET_MODE (x5) != E_SImode)
    9242              :         return -1;
    9243              :       switch (XWINT (x4, 0))
    9244              :         {
    9245              :         case 63L:
    9246              :           if (GET_CODE (x5) != SUBREG
    9247              :               || maybe_ne (SUBREG_BYTE (x5), 0))
    9248              :             return -1;
    9249              :           x10 = XEXP (x5, 0);
    9250              :           if (GET_CODE (x10) != CLZ
    9251              :               || GET_MODE (x10) != E_DImode)
    9252              :             return -1;
    9253              :           x11 = XEXP (x10, 0);
    9254              :           operands[1] = x11;
    9255              :           if (!nonimmediate_operand (operands[1], E_DImode)
    9256              :               || !
    9257              : #line 21621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9258              : (!TARGET_LZCNT && TARGET_64BIT))
    9259              :             return -1;
    9260              :           *pnum_clobbers = 1;
    9261              :           return 1558; /* bsr_rex64_1_zext */
    9262              : 
    9263              :         case 31L:
    9264              :           if (GET_CODE (x5) != CLZ)
    9265              :             return -1;
    9266              :           x10 = XEXP (x5, 0);
    9267              :           operands[1] = x10;
    9268              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9269              :               || !
    9270              : #line 21661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9271              : (!TARGET_LZCNT && TARGET_64BIT))
    9272              :             return -1;
    9273              :           *pnum_clobbers = 1;
    9274              :           return 1561; /* bsr_zext_1 */
    9275              : 
    9276              :         default:
    9277              :           return -1;
    9278              :         }
    9279              : 
    9280              :     default:
    9281              :       return -1;
    9282              :     }
    9283              : }
    9284              : 
    9285              :  int
    9286              : recog_88 (rtx x1 ATTRIBUTE_UNUSED,
    9287              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9288              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9289              : {
    9290              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9291              :   rtx x2, x3, x4, x5, x6;
    9292              :   int res ATTRIBUTE_UNUSED;
    9293              :   x2 = XEXP (x1, 0);
    9294              :   operands[0] = x2;
    9295              :   x3 = XEXP (x1, 1);
    9296              :   x4 = XEXP (x3, 0);
    9297              :   switch (GET_CODE (x4))
    9298              :     {
    9299              :     case CONST_INT:
    9300              :     case CONST_WIDE_INT:
    9301              :     case CONST_POLY_INT:
    9302              :     case CONST_FIXED:
    9303              :     case CONST_DOUBLE:
    9304              :     case CONST_VECTOR:
    9305              :     case CONST:
    9306              :     case REG:
    9307              :     case SUBREG:
    9308              :     case MEM:
    9309              :     case LABEL_REF:
    9310              :     case SYMBOL_REF:
    9311              :     case HIGH:
    9312              :       operands[1] = x4;
    9313              :       res = recog_87 (x1, insn, pnum_clobbers);
    9314              :       if (res >= 0)
    9315              :         return res;
    9316              :       if (pnum_clobbers == NULL
    9317              :           || GET_CODE (x4) != CONST_INT)
    9318              :         return -1;
    9319              :       x5 = XEXP (x3, 1);
    9320              :       if (GET_CODE (x5) != CLZ)
    9321              :         return -1;
    9322              :       x6 = XEXP (x5, 0);
    9323              :       operands[1] = x6;
    9324              :       switch (XWINT (x4, 0))
    9325              :         {
    9326              :         case 63L:
    9327              :           if (pattern881 (x3, 
    9328              : E_DImode) != 0
    9329              :               || !
    9330              : #line 21606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9331              : (!TARGET_LZCNT && TARGET_64BIT))
    9332              :             return -1;
    9333              :           *pnum_clobbers = 1;
    9334              :           return 1557; /* bsr_rex64_1 */
    9335              : 
    9336              :         case 31L:
    9337              :           if (pattern881 (x3, 
    9338              : E_SImode) != 0
    9339              :               || !
    9340              : #line 21647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9341              : (!TARGET_LZCNT))
    9342              :             return -1;
    9343              :           *pnum_clobbers = 1;
    9344              :           return 1560; /* bsr_1 */
    9345              : 
    9346              :         default:
    9347              :           return -1;
    9348              :         }
    9349              : 
    9350              :     case MINUS:
    9351              :       if (pnum_clobbers == NULL)
    9352              :         return -1;
    9353              :       switch (pattern290 (x3))
    9354              :         {
    9355              :         case 0:
    9356              :           switch (GET_MODE (operands[0]))
    9357              :             {
    9358              :             case E_SImode:
    9359              :               if (pattern1278 (x3, 
    9360              : E_SImode) != 0
    9361              :                   || !
    9362              : #line 9505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9363              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9364              :                 return -1;
    9365              :               *pnum_clobbers = 1;
    9366              :               return 505; /* subsi3_carry */
    9367              : 
    9368              :             case E_DImode:
    9369              :               if (pattern1278 (x3, 
    9370              : E_DImode) != 0
    9371              :                   || !(
    9372              : #line 9505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9373              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
    9374              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9375              : (TARGET_64BIT)))
    9376              :                 return -1;
    9377              :               *pnum_clobbers = 1;
    9378              :               return 506; /* subdi3_carry */
    9379              : 
    9380              :             default:
    9381              :               return -1;
    9382              :             }
    9383              : 
    9384              :         case 1:
    9385              :           switch (GET_MODE (operands[0]))
    9386              :             {
    9387              :             case E_SImode:
    9388              :               if (pattern1218 (x3, 
    9389              : E_SImode) != 0
    9390              :                   || !
    9391              : #line 10573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9392              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
    9393              :    && ix86_pre_reload_split ()))
    9394              :                 return -1;
    9395              :               *pnum_clobbers = 1;
    9396              :               return 600; /* *subsi3_eq */
    9397              : 
    9398              :             case E_DImode:
    9399              :               if (pattern1218 (x3, 
    9400              : E_DImode) != 0
    9401              :                   || !(
    9402              : #line 10573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9403              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
    9404              :    && ix86_pre_reload_split ()) && 
    9405              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9406              : (TARGET_64BIT)))
    9407              :                 return -1;
    9408              :               *pnum_clobbers = 1;
    9409              :               return 601; /* *subdi3_eq */
    9410              : 
    9411              :             default:
    9412              :               return -1;
    9413              :             }
    9414              : 
    9415              :         default:
    9416              :           return -1;
    9417              :         }
    9418              : 
    9419              :     default:
    9420              :       return -1;
    9421              :     }
    9422              : }
    9423              : 
    9424              :  int
    9425              : recog_89 (rtx x1 ATTRIBUTE_UNUSED,
    9426              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9427              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9428              : {
    9429              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9430              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9431              :   int res ATTRIBUTE_UNUSED;
    9432              :   x2 = XEXP (x1, 1);
    9433              :   x3 = XEXP (x2, 2);
    9434              :   operands[3] = x3;
    9435              :   x4 = XEXP (x2, 0);
    9436              :   x5 = XEXP (x4, 1);
    9437              :   switch (XWINT (x5, 0))
    9438              :     {
    9439              :     case 0L:
    9440              :       x6 = XEXP (x2, 1);
    9441              :       if (GET_CODE (x6) != PLUS)
    9442              :         return -1;
    9443              :       x7 = XEXP (x6, 1);
    9444              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    9445              :         return -1;
    9446              :       x8 = XEXP (x4, 0);
    9447              :       operands[2] = x8;
    9448              :       x9 = XEXP (x6, 0);
    9449              :       if (!rtx_equal_p (x9, operands[2]))
    9450              :         return -1;
    9451              :       switch (GET_MODE (operands[0]))
    9452              :         {
    9453              :         case E_SImode:
    9454              :           if (pattern1524 (x2, 
    9455              : E_SImode) != 0
    9456              :               || !
    9457              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9458              : (TARGET_CMOVE))
    9459              :             return -1;
    9460              :           *pnum_clobbers = 1;
    9461              :           return 454; /* *dec_cmovsi */
    9462              : 
    9463              :         case E_DImode:
    9464              :           if (pattern1524 (x2, 
    9465              : E_DImode) != 0
    9466              :               || !(
    9467              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9468              : (TARGET_CMOVE) && 
    9469              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9470              : (TARGET_64BIT)))
    9471              :             return -1;
    9472              :           *pnum_clobbers = 1;
    9473              :           return 455; /* *dec_cmovdi */
    9474              : 
    9475              :         default:
    9476              :           return -1;
    9477              :         }
    9478              : 
    9479              :     case -1L:
    9480              :       x8 = XEXP (x4, 0);
    9481              :       operands[4] = x8;
    9482              :       x6 = XEXP (x2, 1);
    9483              :       operands[2] = x6;
    9484              :       switch (GET_MODE (operands[0]))
    9485              :         {
    9486              :         case E_SImode:
    9487              :           switch (pattern1376 (x2, 
    9488              : E_SImode))
    9489              :             {
    9490              :             case 0:
    9491              :               if (!(
    9492              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9493              : (TARGET_AVX512BW && TARGET_CMOVE
    9494              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9495              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9496              : (TARGET_AVX512DQ)))
    9497              :                 return -1;
    9498              :               *pnum_clobbers = 1;
    9499              :               return 2702; /* *kortest_cmpqi_movsicc */
    9500              : 
    9501              :             case 1:
    9502              :               if (!
    9503              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9504              : (TARGET_AVX512BW && TARGET_CMOVE
    9505              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    9506              :                 return -1;
    9507              :               *pnum_clobbers = 1;
    9508              :               return 2705; /* *kortest_cmphi_movsicc */
    9509              : 
    9510              :             case 2:
    9511              :               if (!(
    9512              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9513              : (TARGET_AVX512BW && TARGET_CMOVE
    9514              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9515              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9516              : (TARGET_AVX512BW)))
    9517              :                 return -1;
    9518              :               *pnum_clobbers = 1;
    9519              :               return 2708; /* *kortest_cmpsi_movsicc */
    9520              : 
    9521              :             case 3:
    9522              :               if (!(
    9523              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9524              : (TARGET_AVX512BW && TARGET_CMOVE
    9525              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9526              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9527              : (TARGET_AVX512BW && TARGET_64BIT)))
    9528              :                 return -1;
    9529              :               *pnum_clobbers = 1;
    9530              :               return 2711; /* *kortest_cmpdi_movsicc */
    9531              : 
    9532              :             default:
    9533              :               return -1;
    9534              :             }
    9535              : 
    9536              :         case E_DImode:
    9537              :           switch (pattern1376 (x2, 
    9538              : E_DImode))
    9539              :             {
    9540              :             case 0:
    9541              :               if (!(
    9542              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9543              : (TARGET_AVX512BW && TARGET_CMOVE
    9544              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
    9545              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9546              : (TARGET_64BIT) && 
    9547              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9548              : (TARGET_AVX512DQ)) && 
    9549              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9550              : (TARGET_64BIT)) && 
    9551              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9552              : (TARGET_64BIT)) && 
    9553              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9554              : (TARGET_64BIT))))
    9555              :                 return -1;
    9556              :               *pnum_clobbers = 1;
    9557              :               return 2703; /* *kortest_cmpqi_movdicc */
    9558              : 
    9559              :             case 1:
    9560              :               if (!(
    9561              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9562              : (TARGET_AVX512BW && TARGET_CMOVE
    9563              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9564              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9565              : (TARGET_64BIT)))
    9566              :                 return -1;
    9567              :               *pnum_clobbers = 1;
    9568              :               return 2706; /* *kortest_cmphi_movdicc */
    9569              : 
    9570              :             case 2:
    9571              :               if (!(
    9572              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9573              : (TARGET_AVX512BW && TARGET_CMOVE
    9574              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
    9575              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9576              : (TARGET_64BIT) && 
    9577              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9578              : (TARGET_AVX512BW)) && 
    9579              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9580              : (TARGET_64BIT)) && 
    9581              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9582              : (TARGET_64BIT)) && 
    9583              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9584              : (TARGET_64BIT))))
    9585              :                 return -1;
    9586              :               *pnum_clobbers = 1;
    9587              :               return 2709; /* *kortest_cmpsi_movdicc */
    9588              : 
    9589              :             case 3:
    9590              :               if (!(
    9591              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9592              : (TARGET_AVX512BW && TARGET_CMOVE
    9593              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
    9594              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9595              : (TARGET_64BIT) && 
    9596              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9597              : (TARGET_AVX512BW && TARGET_64BIT)) && 
    9598              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9599              : (TARGET_64BIT)) && 
    9600              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9601              : (TARGET_64BIT)) && 
    9602              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9603              : (TARGET_64BIT))))
    9604              :                 return -1;
    9605              :               *pnum_clobbers = 1;
    9606              :               return 2712; /* *kortest_cmpdi_movdicc */
    9607              : 
    9608              :             default:
    9609              :               return -1;
    9610              :             }
    9611              : 
    9612              :         default:
    9613              :           return -1;
    9614              :         }
    9615              : 
    9616              :     default:
    9617              :       return -1;
    9618              :     }
    9619              : }
    9620              : 
    9621              :  int
    9622              : recog_93 (rtx x1 ATTRIBUTE_UNUSED,
    9623              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9624              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9625              : {
    9626              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9627              :   rtx x2, x3, x4, x5, x6, x7;
    9628              :   int res ATTRIBUTE_UNUSED;
    9629              :   if (pnum_clobbers == NULL)
    9630              :     return -1;
    9631              :   x2 = XEXP (x1, 1);
    9632              :   x3 = XEXP (x2, 0);
    9633              :   if (GET_CODE (x3) != LSHIFTRT)
    9634              :     return -1;
    9635              :   x4 = XEXP (x3, 0);
    9636              :   if (GET_CODE (x4) != MULT)
    9637              :     return -1;
    9638              :   x5 = XEXP (x3, 1);
    9639              :   if (GET_CODE (x5) != CONST_INT)
    9640              :     return -1;
    9641              :   x6 = XEXP (x1, 0);
    9642              :   operands[0] = x6;
    9643              :   x7 = XEXP (x4, 0);
    9644              :   switch (GET_CODE (x7))
    9645              :     {
    9646              :     case SIGN_EXTEND:
    9647              :       switch (pattern767 (x2, 
    9648              : SIGN_EXTEND))
    9649              :         {
    9650              :         case 0:
    9651              :           if (!
    9652              : #line 11517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9653              : (TARGET_64BIT
    9654              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9655              :             return -1;
    9656              :           *pnum_clobbers = 2;
    9657              :           return 661; /* *smuldi3_highpart_1 */
    9658              : 
    9659              :         case 1:
    9660              :           if (!
    9661              : #line 11566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9662              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9663              :             return -1;
    9664              :           *pnum_clobbers = 2;
    9665              :           return 665; /* *smulsi3_highpart_1 */
    9666              : 
    9667              :         default:
    9668              :           return -1;
    9669              :         }
    9670              : 
    9671              :     case ZERO_EXTEND:
    9672              :       switch (pattern767 (x2, 
    9673              : ZERO_EXTEND))
    9674              :         {
    9675              :         case 0:
    9676              :           if (!
    9677              : #line 11517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9678              : (TARGET_64BIT
    9679              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9680              :             return -1;
    9681              :           *pnum_clobbers = 2;
    9682              :           return 662; /* *umuldi3_highpart_1 */
    9683              : 
    9684              :         case 1:
    9685              :           if (!
    9686              : #line 11566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9687              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9688              :             return -1;
    9689              :           *pnum_clobbers = 2;
    9690              :           return 666; /* *umulsi3_highpart_1 */
    9691              : 
    9692              :         default:
    9693              :           return -1;
    9694              :         }
    9695              : 
    9696              :     default:
    9697              :       return -1;
    9698              :     }
    9699              : }
    9700              : 
    9701              :  int
    9702              : recog_95 (rtx x1 ATTRIBUTE_UNUSED,
    9703              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9704              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9705              : {
    9706              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9707              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9708              :   rtx x10, x11, x12, x13;
    9709              :   int res ATTRIBUTE_UNUSED;
    9710              :   x2 = XEXP (x1, 0);
    9711              :   operands[0] = x2;
    9712              :   x3 = XEXP (x1, 1);
    9713              :   x4 = XEXP (x3, 0);
    9714              :   switch (GET_CODE (x4))
    9715              :     {
    9716              :     case REG:
    9717              :     case SUBREG:
    9718              :     case MEM:
    9719              :       operands[1] = x4;
    9720              :       res = recog_94 (x1, insn, pnum_clobbers);
    9721              :       if (res >= 0)
    9722              :         return res;
    9723              :       if (pnum_clobbers == NULL
    9724              :           || GET_CODE (x4) != SUBREG
    9725              :           || maybe_ne (SUBREG_BYTE (x4), 0)
    9726              :           || GET_MODE (x4) != E_DImode)
    9727              :         return -1;
    9728              :       x5 = XEXP (x3, 1);
    9729              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 63]
    9730              :           || !register_operand (operands[0], E_DImode)
    9731              :           || GET_MODE (x3) != E_DImode)
    9732              :         return -1;
    9733              :       x6 = XEXP (x4, 0);
    9734              :       if (GET_MODE (x6) != E_SImode)
    9735              :         return -1;
    9736              :       switch (GET_CODE (x6))
    9737              :         {
    9738              :         case CTZ:
    9739              :           x7 = XEXP (x6, 0);
    9740              :           operands[1] = x7;
    9741              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9742              :               || !
    9743              : #line 21489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9744              : (TARGET_BMI && TARGET_64BIT))
    9745              :             return -1;
    9746              :           *pnum_clobbers = 1;
    9747              :           return 1550; /* *ctzsi2_zext */
    9748              : 
    9749              :         case CLZ:
    9750              :           x7 = XEXP (x6, 0);
    9751              :           operands[1] = x7;
    9752              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9753              :               || !
    9754              : #line 21929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9755              : (TARGET_LZCNT && TARGET_64BIT))
    9756              :             return -1;
    9757              :           *pnum_clobbers = 1;
    9758              :           return 1574; /* *clzsi2_lzcnt_zext */
    9759              : 
    9760              :         case POPCOUNT:
    9761              :           x7 = XEXP (x6, 0);
    9762              :           operands[1] = x7;
    9763              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9764              :               || !
    9765              : #line 22754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9766              : (TARGET_POPCNT && TARGET_64BIT))
    9767              :             return -1;
    9768              :           *pnum_clobbers = 1;
    9769              :           return 1666; /* *popcountsi2_zext */
    9770              : 
    9771              :         default:
    9772              :           return -1;
    9773              :         }
    9774              : 
    9775              :     case NOT:
    9776              :       if (pnum_clobbers == NULL)
    9777              :         return -1;
    9778              :       x6 = XEXP (x4, 0);
    9779              :       switch (GET_CODE (x6))
    9780              :         {
    9781              :         case REG:
    9782              :         case SUBREG:
    9783              :           operands[1] = x6;
    9784              :           x5 = XEXP (x3, 1);
    9785              :           operands[2] = x5;
    9786              :           switch (GET_MODE (operands[0]))
    9787              :             {
    9788              :             case E_DImode:
    9789              :               if (pattern745 (x3, 
    9790              : E_DImode) != 0)
    9791              :                 return -1;
    9792              :               if ((
    9793              : #line 13632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9794              : (TARGET_BMI) && 
    9795              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9796              : (!TARGET_64BIT)))
    9797              :                 {
    9798              :                   *pnum_clobbers = 1;
    9799              :                   return 837; /* *andndi3_doubleword_bmi */
    9800              :                 }
    9801              :               if ((
    9802              : #line 13650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9803              : (!TARGET_BMI
    9804              :    && ix86_pre_reload_split ()) && 
    9805              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9806              : (!TARGET_64BIT)))
    9807              :                 {
    9808              :                   *pnum_clobbers = 1;
    9809              :                   return 839; /* *andndi3_doubleword */
    9810              :                 }
    9811              :               if (!(
    9812              : #line 13666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9813              : (TARGET_BMI || TARGET_AVX512BW) && 
    9814              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9815              : (TARGET_64BIT)))
    9816              :                 return -1;
    9817              :               *pnum_clobbers = 1;
    9818              :               return 842; /* *andndi_1 */
    9819              : 
    9820              :             case E_SImode:
    9821              :               if (pattern745 (x3, 
    9822              : E_SImode) != 0
    9823              :                   || !
    9824              : #line 13666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9825              : (TARGET_BMI || TARGET_AVX512BW))
    9826              :                 return -1;
    9827              :               *pnum_clobbers = 1;
    9828              :               return 841; /* *andnsi_1 */
    9829              : 
    9830              :             default:
    9831              :               return -1;
    9832              :             }
    9833              : 
    9834              :         case LSHIFTRT:
    9835              :           x5 = XEXP (x3, 1);
    9836              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    9837              :             return -1;
    9838              :           x7 = XEXP (x6, 0);
    9839              :           operands[1] = x7;
    9840              :           x8 = XEXP (x6, 1);
    9841              :           operands[2] = x8;
    9842              :           if (!register_operand (operands[2], E_QImode))
    9843              :             return -1;
    9844              :           switch (GET_MODE (operands[0]))
    9845              :             {
    9846              :             case E_SImode:
    9847              :               if (pattern1102 (x3, 
    9848              : E_SImode) != 0
    9849              :                   || !
    9850              : #line 19722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9851              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    9852              :                 return -1;
    9853              :               *pnum_clobbers = 1;
    9854              :               return 1470; /* *btsi_setncsi */
    9855              : 
    9856              :             case E_DImode:
    9857              :               if (pattern1102 (x3, 
    9858              : E_DImode) != 0
    9859              :                   || !(
    9860              : #line 19722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9861              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
    9862              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9863              : (TARGET_64BIT)))
    9864              :                 return -1;
    9865              :               *pnum_clobbers = 1;
    9866              :               return 1471; /* *btdi_setncdi */
    9867              : 
    9868              :             default:
    9869              :               return -1;
    9870              :             }
    9871              : 
    9872              :         case ASHIFT:
    9873              :           x7 = XEXP (x6, 0);
    9874              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    9875              :             return -1;
    9876              :           switch (pattern632 (x3))
    9877              :             {
    9878              :             case 0:
    9879              :               if (!
    9880              : #line 22456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9881              : (TARGET_BMI2))
    9882              :                 return -1;
    9883              :               *pnum_clobbers = 1;
    9884              :               return 1630; /* *bmi2_bzhi_si3_3 */
    9885              : 
    9886              :             case 1:
    9887              :               if (!(
    9888              : #line 22456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9889              : (TARGET_BMI2) && 
    9890              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9891              : (TARGET_64BIT)))
    9892              :                 return -1;
    9893              :               *pnum_clobbers = 1;
    9894              :               return 1631; /* *bmi2_bzhi_di3_3 */
    9895              : 
    9896              :             default:
    9897              :               return -1;
    9898              :             }
    9899              : 
    9900              :         default:
    9901              :           return -1;
    9902              :         }
    9903              : 
    9904              :     case ROTATE:
    9905              :       if (pnum_clobbers == NULL)
    9906              :         return -1;
    9907              :       x6 = XEXP (x4, 0);
    9908              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
    9909              :         return -1;
    9910              :       switch (pattern286 (x3))
    9911              :         {
    9912              :         case 0:
    9913              :           x9 = XEXP (x4, 1);
    9914              :           operands[2] = x9;
    9915              :           if (register_operand (operands[2], E_QImode))
    9916              :             {
    9917              :               switch (pattern759 (x3))
    9918              :                 {
    9919              :                 case 0:
    9920              :                   if (
    9921              : #line 19233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9922              : (TARGET_USE_BT))
    9923              :                     {
    9924              :                       *pnum_clobbers = 1;
    9925              :                       return 1435; /* *btrsi */
    9926              :                     }
    9927              :                   break;
    9928              : 
    9929              :                 case 1:
    9930              :                   if ((
    9931              : #line 19233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9932              : (TARGET_USE_BT) && 
    9933              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9934              : (TARGET_64BIT)))
    9935              :                     {
    9936              :                       *pnum_clobbers = 1;
    9937              :                       return 1436; /* *btrdi */
    9938              :                     }
    9939              :                   break;
    9940              : 
    9941              :                 default:
    9942              :                   break;
    9943              :                 }
    9944              :             }
    9945              :           if (GET_CODE (x9) != SUBREG)
    9946              :             return -1;
    9947              :           switch (pattern768 (x3))
    9948              :             {
    9949              :             case 0:
    9950              :               if (!
    9951              : #line 19252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9952              : (TARGET_USE_BT
    9953              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    9954              :       == GET_MODE_BITSIZE (SImode)-1
    9955              :    && ix86_pre_reload_split ()))
    9956              :                 return -1;
    9957              :               *pnum_clobbers = 1;
    9958              :               return 1437; /* *btrsi_mask */
    9959              : 
    9960              :             case 1:
    9961              :               if (!(
    9962              : #line 19252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9963              : (TARGET_USE_BT
    9964              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    9965              :       == GET_MODE_BITSIZE (DImode)-1
    9966              :    && ix86_pre_reload_split ()) && 
    9967              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9968              : (TARGET_64BIT)))
    9969              :                 return -1;
    9970              :               *pnum_clobbers = 1;
    9971              :               return 1438; /* *btrdi_mask */
    9972              : 
    9973              :             default:
    9974              :               return -1;
    9975              :             }
    9976              : 
    9977              :         case 1:
    9978              :           if (!
    9979              : #line 19280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9980              : (TARGET_USE_BT
    9981              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    9982              :       == GET_MODE_BITSIZE (SImode)-1
    9983              :    && ix86_pre_reload_split ()))
    9984              :             return -1;
    9985              :           *pnum_clobbers = 1;
    9986              :           return 1439; /* *btrsi_mask_1 */
    9987              : 
    9988              :         case 2:
    9989              :           if (!(
    9990              : #line 19280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9991              : (TARGET_USE_BT
    9992              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    9993              :       == GET_MODE_BITSIZE (DImode)-1
    9994              :    && ix86_pre_reload_split ()) && 
    9995              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9996              : (TARGET_64BIT)))
    9997              :             return -1;
    9998              :           *pnum_clobbers = 1;
    9999              :           return 1440; /* *btrdi_mask_1 */
   10000              : 
   10001              :         default:
   10002              :           return -1;
   10003              :         }
   10004              : 
   10005              :     case NEG:
   10006              :       if (pnum_clobbers == NULL)
   10007              :         return -1;
   10008              :       x6 = XEXP (x4, 0);
   10009              :       operands[1] = x6;
   10010              :       x5 = XEXP (x3, 1);
   10011              :       if (!rtx_equal_p (x5, operands[1]))
   10012              :         return -1;
   10013              :       switch (GET_MODE (operands[0]))
   10014              :         {
   10015              :         case E_SImode:
   10016              :           if (pattern762 (x3, 
   10017              : E_SImode) != 0
   10018              :               || !
   10019              : #line 22133 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10020              : (TARGET_BMI))
   10021              :             return -1;
   10022              :           *pnum_clobbers = 1;
   10023              :           return 1604; /* *bmi_blsi_si */
   10024              : 
   10025              :         case E_DImode:
   10026              :           if (pattern762 (x3, 
   10027              : E_DImode) != 0
   10028              :               || !(
   10029              : #line 22133 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10030              : (TARGET_BMI) && 
   10031              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10032              : (TARGET_64BIT)))
   10033              :             return -1;
   10034              :           *pnum_clobbers = 1;
   10035              :           return 1605; /* *bmi_blsi_di */
   10036              : 
   10037              :         default:
   10038              :           return -1;
   10039              :         }
   10040              : 
   10041              :     case PLUS:
   10042              :       if (pnum_clobbers == NULL)
   10043              :         return -1;
   10044              :       x9 = XEXP (x4, 1);
   10045              :       if (GET_CODE (x9) != CONST_INT)
   10046              :         return -1;
   10047              :       x6 = XEXP (x4, 0);
   10048              :       switch (GET_CODE (x6))
   10049              :         {
   10050              :         case REG:
   10051              :         case SUBREG:
   10052              :         case MEM:
   10053              :           operands[1] = x6;
   10054              :           switch (XWINT (x9, 0))
   10055              :             {
   10056              :             case -1L:
   10057              :               switch (pattern764 (x3))
   10058              :                 {
   10059              :                 case 0:
   10060              :                   if (!
   10061              : #line 22278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10062              : (TARGET_BMI))
   10063              :                     return -1;
   10064              :                   *pnum_clobbers = 1;
   10065              :                   return 1616; /* *bmi_blsr_si */
   10066              : 
   10067              :                 case 1:
   10068              :                   if (!(
   10069              : #line 22278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10070              : (TARGET_BMI) && 
   10071              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10072              : (TARGET_64BIT)))
   10073              :                     return -1;
   10074              :                   *pnum_clobbers = 1;
   10075              :                   return 1617; /* *bmi_blsr_di */
   10076              : 
   10077              :                 case 2:
   10078              :                   if (!
   10079              : #line 22649 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10080              : (TARGET_TBM))
   10081              :                     return -1;
   10082              :                   *pnum_clobbers = 1;
   10083              :                   return 1656; /* *tbm_tzmsk_si */
   10084              : 
   10085              :                 case 3:
   10086              :                   if (!(
   10087              : #line 22649 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10088              : (TARGET_TBM) && 
   10089              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10090              : (TARGET_64BIT)))
   10091              :                     return -1;
   10092              :                   *pnum_clobbers = 1;
   10093              :                   return 1657; /* *tbm_tzmsk_di */
   10094              : 
   10095              :                 default:
   10096              :                   return -1;
   10097              :                 }
   10098              : 
   10099              :             case 1L:
   10100              :               switch (pattern764 (x3))
   10101              :                 {
   10102              :                 case 0:
   10103              :                   if (!
   10104              : #line 22540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10105              : (TARGET_TBM))
   10106              :                     return -1;
   10107              :                   *pnum_clobbers = 1;
   10108              :                   return 1640; /* *tbm_blcfill_si */
   10109              : 
   10110              :                 case 1:
   10111              :                   if (!(
   10112              : #line 22540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10113              : (TARGET_TBM) && 
   10114              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10115              : (TARGET_64BIT)))
   10116              :                     return -1;
   10117              :                   *pnum_clobbers = 1;
   10118              :                   return 1641; /* *tbm_blcfill_di */
   10119              : 
   10120              :                 case 2:
   10121              :                   if (!
   10122              : #line 22568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10123              : (TARGET_TBM))
   10124              :                     return -1;
   10125              :                   *pnum_clobbers = 1;
   10126              :                   return 1644; /* *tbm_blcic_si */
   10127              : 
   10128              :                 case 3:
   10129              :                   if (!(
   10130              : #line 22568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10131              : (TARGET_TBM) && 
   10132              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10133              : (TARGET_64BIT)))
   10134              :                     return -1;
   10135              :                   *pnum_clobbers = 1;
   10136              :                   return 1645; /* *tbm_blcic_di */
   10137              : 
   10138              :                 default:
   10139              :                   return -1;
   10140              :                 }
   10141              : 
   10142              :             default:
   10143              :               return -1;
   10144              :             }
   10145              : 
   10146              :         case ASHIFT:
   10147              :           x7 = XEXP (x6, 0);
   10148              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   10149              :               || XWINT (x9, 0) != -1L)
   10150              :             return -1;
   10151              :           switch (pattern632 (x3))
   10152              :             {
   10153              :             case 0:
   10154              :               if (!
   10155              : #line 22442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10156              : (TARGET_BMI2))
   10157              :                 return -1;
   10158              :               *pnum_clobbers = 1;
   10159              :               return 1628; /* *bmi2_bzhi_si3_2 */
   10160              : 
   10161              :             case 1:
   10162              :               if (!(
   10163              : #line 22442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10164              : (TARGET_BMI2) && 
   10165              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10166              : (TARGET_64BIT)))
   10167              :                 return -1;
   10168              :               *pnum_clobbers = 1;
   10169              :               return 1629; /* *bmi2_bzhi_di3_2 */
   10170              : 
   10171              :             default:
   10172              :               return -1;
   10173              :             }
   10174              : 
   10175              :         default:
   10176              :           return -1;
   10177              :         }
   10178              : 
   10179              :     case ZERO_EXTEND:
   10180              :       if (pnum_clobbers == NULL
   10181              :           || GET_MODE (x4) != E_DImode)
   10182              :         return -1;
   10183              :       x6 = XEXP (x4, 0);
   10184              :       if (GET_CODE (x6) != PLUS
   10185              :           || pattern441 (x6) != 0)
   10186              :         return -1;
   10187              :       x8 = XEXP (x6, 1);
   10188              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + -1]
   10189              :           || !register_operand (operands[0], E_DImode)
   10190              :           || GET_MODE (x3) != E_DImode)
   10191              :         return -1;
   10192              :       x7 = XEXP (x6, 0);
   10193              :       x10 = XEXP (x7, 1);
   10194              :       operands[2] = x10;
   10195              :       if (!register_operand (operands[2], E_QImode))
   10196              :         return -1;
   10197              :       x5 = XEXP (x3, 1);
   10198              :       operands[1] = x5;
   10199              :       if (!nonimmediate_operand (operands[1], E_DImode)
   10200              :           || !
   10201              : #line 22488 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10202              : (TARGET_64BIT && TARGET_BMI2))
   10203              :         return -1;
   10204              :       *pnum_clobbers = 1;
   10205              :       return 1633; /* *bmi2_bzhi_zero_extendsidi_5 */
   10206              : 
   10207              :     case UNSPEC:
   10208              :       switch (XVECLEN (x4, 0))
   10209              :         {
   10210              :         case 3:
   10211              :           x11 = XVECEXP (x4, 0, 2);
   10212              :           if (GET_CODE (x11) != CONST_INT)
   10213              :             return -1;
   10214              :           x12 = XVECEXP (x4, 0, 0);
   10215              :           operands[1] = x12;
   10216              :           x13 = XVECEXP (x4, 0, 1);
   10217              :           operands[2] = x13;
   10218              :           switch (XINT (x4, 1))
   10219              :             {
   10220              :             case 60:
   10221              :               operands[3] = x11;
   10222              :               x5 = XEXP (x3, 1);
   10223              :               operands[4] = x5;
   10224              :               switch (GET_MODE (operands[0]))
   10225              :                 {
   10226              :                 case E_SImode:
   10227              :                   if (pattern1085 (x3, 
   10228              : E_SImode) == 0)
   10229              :                     {
   10230              :                       switch (GET_MODE (operands[1]))
   10231              :                         {
   10232              :                         case E_V32HFmode:
   10233              :                           if (register_operand (operands[1], E_V32HFmode)
   10234              :                               && nonimmediate_operand (operands[2], E_V32HFmode)
   10235              :                               && const_0_to_31_operand (operands[3], E_SImode)
   10236              :                               && (
   10237              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10238              : (TARGET_AVX512F) && (
   10239              : #line 4621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10240              : (TARGET_AVX512F && 1) && 
   10241              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10242              : (TARGET_AVX512FP16))))
   10243              :                             return 3340; /* avx512bw_cmpv32hf3_mask */
   10244              :                           break;
   10245              : 
   10246              :                         case E_V32QImode:
   10247              :                           if (register_operand (operands[1], E_V32QImode)
   10248              :                               && nonimmediate_operand (operands[2], E_V32QImode)
   10249              :                               && const_0_to_7_operand (operands[3], E_SImode)
   10250              :                               && (
   10251              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10252              : (TARGET_AVX512F) && (
   10253              : #line 4815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10254              : (TARGET_AVX512BW) && 
   10255              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10256              : (TARGET_AVX512VL))))
   10257              :                             return 3487; /* avx512vl_cmpv32qi3_mask */
   10258              :                           break;
   10259              : 
   10260              :                         case E_V32HImode:
   10261              :                           if (register_operand (operands[1], E_V32HImode)
   10262              :                               && nonimmediate_operand (operands[2], E_V32HImode)
   10263              :                               && const_0_to_7_operand (operands[3], E_SImode)
   10264              :                               && (
   10265              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10266              : (TARGET_AVX512F) && 
   10267              : #line 4815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10268              : (TARGET_AVX512BW)))
   10269              :                             return 3489; /* avx512bw_cmpv32hi3_mask */
   10270              :                           break;
   10271              : 
   10272              :                         case E_V32BFmode:
   10273              :                           if (register_operand (operands[1], E_V32BFmode)
   10274              :                               && nonimmediate_operand (operands[2], E_V32BFmode)
   10275              :                               && const_0_to_31_operand (operands[3], E_VOIDmode)
   10276              :                               && (
   10277              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10278              : (TARGET_AVX512F) && 
   10279              : #line 33164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10280              : (TARGET_AVX10_2)))
   10281              :                             return 10799; /* avx10_2_cmpbf16_v32bf_mask */
   10282              :                           break;
   10283              : 
   10284              :                         default:
   10285              :                           break;
   10286              :                         }
   10287              :                     }
   10288              :                   break;
   10289              : 
   10290              :                 case E_DImode:
   10291              :                   if (pattern993 (x3) == 0
   10292              :                       && register_operand (operands[4], E_DImode)
   10293              :                       && (
   10294              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10295              : (TARGET_AVX512F) && 
   10296              : #line 4815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10297              : (TARGET_AVX512BW)))
   10298              :                     return 3483; /* avx512bw_cmpv64qi3_mask */
   10299              :                   break;
   10300              : 
   10301              :                 default:
   10302              :                   break;
   10303              :                 }
   10304              :               if (XWINT (x11, 0) != 0L)
   10305              :                 return -1;
   10306              :               switch (pattern991 (x3))
   10307              :                 {
   10308              :                 case 0:
   10309              :                   if (!(
   10310              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10311              : (TARGET_AVX512F) && 
   10312              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10313              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10314              :                     return -1;
   10315              :                   return 3567; /* *avx512bw_eqv64qi3_mask_1 */
   10316              : 
   10317              :                 case 1:
   10318              :                   if (!(
   10319              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10320              : (TARGET_AVX512F) && (
   10321              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10322              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   10323              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10324              : (TARGET_AVX512VL))))
   10325              :                     return -1;
   10326              :                   return 3575; /* *avx512vl_eqv32qi3_mask_1 */
   10327              : 
   10328              :                 case 2:
   10329              :                   if (!(
   10330              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10331              : (TARGET_AVX512F) && 
   10332              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10333              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10334              :                     return -1;
   10335              :                   return 3579; /* *avx512bw_eqv32hi3_mask_1 */
   10336              : 
   10337              :                 default:
   10338              :                   return -1;
   10339              :                 }
   10340              : 
   10341              :             case 158:
   10342              :               if (XWINT (x11, 0) == 0L)
   10343              :                 {
   10344              :                   switch (pattern991 (x3))
   10345              :                     {
   10346              :                     case 0:
   10347              :                       if ((
   10348              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10349              : (TARGET_AVX512F) && 
   10350              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10351              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10352              :                         return 3569; /* *avx512bw_eqv64qi3_mask_1 */
   10353              :                       break;
   10354              : 
   10355              :                     case 1:
   10356              :                       if ((
   10357              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10358              : (TARGET_AVX512F) && (
   10359              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10360              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   10361              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10362              : (TARGET_AVX512VL))))
   10363              :                         return 3577; /* *avx512vl_eqv32qi3_mask_1 */
   10364              :                       break;
   10365              : 
   10366              :                     case 2:
   10367              :                       if ((
   10368              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10369              : (TARGET_AVX512F) && 
   10370              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10371              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10372              :                         return 3581; /* *avx512bw_eqv32hi3_mask_1 */
   10373              :                       break;
   10374              : 
   10375              :                     default:
   10376              :                       break;
   10377              :                     }
   10378              :                 }
   10379              :               operands[3] = x11;
   10380              :               if (!const_0_to_7_operand (operands[3], E_SImode))
   10381              :                 return -1;
   10382              :               x5 = XEXP (x3, 1);
   10383              :               operands[4] = x5;
   10384              :               switch (GET_MODE (operands[0]))
   10385              :                 {
   10386              :                 case E_DImode:
   10387              :                   if (pattern1103 (x3, 
   10388              : E_V64QImode, 
   10389              : E_DImode) != 0
   10390              :                       || !register_operand (operands[4], E_DImode)
   10391              :                       || !(
   10392              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10393              : (TARGET_AVX512F) && 
   10394              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10395              : (TARGET_AVX512BW)))
   10396              :                     return -1;
   10397              :                   return 3591; /* avx512bw_ucmpv64qi3_mask */
   10398              : 
   10399              :                 case E_SImode:
   10400              :                   if (pattern1085 (x3, 
   10401              : E_SImode) != 0)
   10402              :                     return -1;
   10403              :                   switch (pattern879 ())
   10404              :                     {
   10405              :                     case 0:
   10406              :                       if (!(
   10407              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10408              : (TARGET_AVX512F) && (
   10409              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10410              : (TARGET_AVX512BW) && 
   10411              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10412              : (TARGET_AVX512VL))))
   10413              :                         return -1;
   10414              :                       return 3595; /* avx512vl_ucmpv32qi3_mask */
   10415              : 
   10416              :                     case 1:
   10417              :                       if (!(
   10418              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10419              : (TARGET_AVX512F) && 
   10420              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10421              : (TARGET_AVX512BW)))
   10422              :                         return -1;
   10423              :                       return 3597; /* avx512bw_ucmpv32hi3_mask */
   10424              : 
   10425              :                     default:
   10426              :                       return -1;
   10427              :                     }
   10428              : 
   10429              :                 default:
   10430              :                   return -1;
   10431              :                 }
   10432              : 
   10433              :             default:
   10434              :               return -1;
   10435              :             }
   10436              : 
   10437              :         case 2:
   10438              :           x12 = XVECEXP (x4, 0, 0);
   10439              :           operands[1] = x12;
   10440              :           x13 = XVECEXP (x4, 0, 1);
   10441              :           operands[2] = x13;
   10442              :           x5 = XEXP (x3, 1);
   10443              :           operands[3] = x5;
   10444              :           switch (XINT (x4, 1))
   10445              :             {
   10446              :             case 159:
   10447              :               switch (pattern883 (x3))
   10448              :                 {
   10449              :                 case 0:
   10450              :                   if (!(
   10451              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10452              : (TARGET_AVX512F) && (
   10453              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10454              : (TARGET_AVX512F) && 
   10455              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10456              : (TARGET_AVX512BW))))
   10457              :                     return -1;
   10458              :                   return 8155; /* avx512bw_testmv64qi3_mask */
   10459              : 
   10460              :                 case 1:
   10461              :                   if (!(
   10462              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10463              : (TARGET_AVX512F) && (
   10464              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10465              : (TARGET_AVX512F) && 
   10466              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10467              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10468              :                     return -1;
   10469              :                   return 8157; /* avx512vl_testmv32qi3_mask */
   10470              : 
   10471              :                 case 2:
   10472              :                   if (!(
   10473              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10474              : (TARGET_AVX512F) && (
   10475              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10476              : (TARGET_AVX512F) && 
   10477              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10478              : (TARGET_AVX512BW))))
   10479              :                     return -1;
   10480              :                   return 8161; /* avx512bw_testmv32hi3_mask */
   10481              : 
   10482              :                 default:
   10483              :                   return -1;
   10484              :                 }
   10485              : 
   10486              :             case 160:
   10487              :               switch (pattern883 (x3))
   10488              :                 {
   10489              :                 case 0:
   10490              :                   if (!(
   10491              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10492              : (TARGET_AVX512F) && (
   10493              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10494              : (TARGET_AVX512F) && 
   10495              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10496              : (TARGET_AVX512BW))))
   10497              :                     return -1;
   10498              :                   return 8179; /* avx512bw_testnmv64qi3_mask */
   10499              : 
   10500              :                 case 1:
   10501              :                   if (!(
   10502              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10503              : (TARGET_AVX512F) && (
   10504              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10505              : (TARGET_AVX512F) && 
   10506              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10507              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10508              :                     return -1;
   10509              :                   return 8181; /* avx512vl_testnmv32qi3_mask */
   10510              : 
   10511              :                 case 2:
   10512              :                   if (!(
   10513              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10514              : (TARGET_AVX512F) && (
   10515              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10516              : (TARGET_AVX512F) && 
   10517              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10518              : (TARGET_AVX512BW))))
   10519              :                     return -1;
   10520              :                   return 8185; /* avx512bw_testnmv32hi3_mask */
   10521              : 
   10522              :                 default:
   10523              :                   return -1;
   10524              :                 }
   10525              : 
   10526              :             case 194:
   10527              :               if (GET_MODE (x4) != E_SImode
   10528              :                   || !register_operand (operands[0], E_SImode)
   10529              :                   || GET_MODE (x3) != E_SImode
   10530              :                   || !vector_operand (operands[1], E_V32HFmode)
   10531              :                   || !const_0_to_255_operand (operands[2], E_VOIDmode)
   10532              :                   || !register_operand (operands[3], E_SImode)
   10533              :                   || !(
   10534              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10535              : (TARGET_AVX512F) && (
   10536              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10537              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V32HFmode)) && 
   10538              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10539              : (TARGET_AVX512FP16))))
   10540              :                 return -1;
   10541              :               return 10057; /* avx512dq_fpclassv32hf_mask */
   10542              : 
   10543              :             case 215:
   10544              :               switch (GET_MODE (operands[0]))
   10545              :                 {
   10546              :                 case E_DImode:
   10547              :                   if (pattern882 (x3, 
   10548              : E_DImode, 
   10549              : E_V64QImode) != 0
   10550              :                       || !(
   10551              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10552              : (TARGET_AVX512F) && 
   10553              : #line 31638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10554              : (TARGET_AVX512BITALG)))
   10555              :                     return -1;
   10556              :                   return 10399; /* avx512vl_vpshufbitqmbv64qi_mask */
   10557              : 
   10558              :                 case E_SImode:
   10559              :                   if (pattern882 (x3, 
   10560              : E_SImode, 
   10561              : E_V32QImode) != 0
   10562              :                       || !(
   10563              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10564              : (TARGET_AVX512F) && (
   10565              : #line 31638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10566              : (TARGET_AVX512BITALG) && 
   10567              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10568              : (TARGET_AVX512VL))))
   10569              :                     return -1;
   10570              :                   return 10403; /* avx512vl_vpshufbitqmbv32qi_mask */
   10571              : 
   10572              :                 default:
   10573              :                   return -1;
   10574              :                 }
   10575              : 
   10576              :             case 263:
   10577              :               if (GET_MODE (x4) != E_SImode
   10578              :                   || !register_operand (operands[0], E_SImode)
   10579              :                   || GET_MODE (x3) != E_SImode
   10580              :                   || !nonimmediate_operand (operands[1], E_V32BFmode)
   10581              :                   || !const_0_to_255_operand (operands[2], E_VOIDmode)
   10582              :                   || !register_operand (operands[3], E_SImode)
   10583              :                   || !(
   10584              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10585              : (TARGET_AVX512F) && 
   10586              : #line 33153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10587              : (TARGET_AVX10_2)))
   10588              :                 return -1;
   10589              :               return 10793; /* avx10_2_fpclassbf16_v32bf_mask */
   10590              : 
   10591              :             default:
   10592              :               return -1;
   10593              :             }
   10594              : 
   10595              :         default:
   10596              :           return -1;
   10597              :         }
   10598              : 
   10599              :     default:
   10600              :       return -1;
   10601              :     }
   10602              : }
   10603              : 
   10604              :  int
   10605              : recog_129 (rtx x1 ATTRIBUTE_UNUSED,
   10606              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10607              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10608              : {
   10609              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10610              :   rtx x2;
   10611              :   int res ATTRIBUTE_UNUSED;
   10612              :   x2 = XEXP (x1, 1);
   10613              :   switch (pattern641 (x2))
   10614              :     {
   10615              :     case 0:
   10616              :       if (pattern644 (x2, 
   10617              : E_V32HImode, 
   10618              : E_SImode, 
   10619              : E_V32HFmode) != 0
   10620              :           || !(
   10621              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10622              : (TARGET_AVX512F) && 
   10623              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10624              : (TARGET_AVX512FP16)))
   10625              :         return -1;
   10626              :       return 4448; /* avx512fp16_vcvtph2uw_v32hi_mask */
   10627              : 
   10628              :     case 1:
   10629              :       if (pattern142 (x2, 
   10630              : E_V16SImode, 
   10631              : E_HImode) != 0)
   10632              :         return -1;
   10633              :       switch (GET_MODE (operands[1]))
   10634              :         {
   10635              :         case E_V16HFmode:
   10636              :           if (!vector_operand (operands[1], E_V16HFmode)
   10637              :               || !(
   10638              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10639              : (TARGET_AVX512F) && 
   10640              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10641              : (TARGET_AVX512FP16)))
   10642              :             return -1;
   10643              :           return 4456; /* avx512fp16_vcvtph2udq_v16si_mask */
   10644              : 
   10645              :         case E_V16SFmode:
   10646              :           if (!nonimmediate_operand (operands[1], E_V16SFmode)
   10647              :               || !
   10648              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10649              : (TARGET_AVX512F))
   10650              :             return -1;
   10651              :           return 4884; /* avx512f_fixuns_notruncv16sfv16si_mask */
   10652              : 
   10653              :         default:
   10654              :           return -1;
   10655              :         }
   10656              : 
   10657              :     case 2:
   10658              :       switch (pattern1112 (x2, 
   10659              : E_V8DImode))
   10660              :         {
   10661              :         case 0:
   10662              :           if (!(
   10663              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10664              : (TARGET_AVX512F) && 
   10665              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10666              : (TARGET_AVX512FP16)))
   10667              :             return -1;
   10668              :           return 4464; /* avx512fp16_vcvtph2uqq_v8di_mask */
   10669              : 
   10670              :         case 1:
   10671              :           if (!(
   10672              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10673              : (TARGET_AVX512F) && 
   10674              : #line 9073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10675              : (TARGET_AVX512DQ && 1)))
   10676              :             return -1;
   10677              :           return 4904; /* avx512dq_cvtps2uqqv8di_mask */
   10678              : 
   10679              :         case 2:
   10680              :           if (!(
   10681              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10682              : (TARGET_AVX512F) && 
   10683              : #line 10051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10684              : (TARGET_AVX512DQ && 1)))
   10685              :             return -1;
   10686              :           return 5130; /* fixuns_notruncv8dfv8di2_mask */
   10687              : 
   10688              :         default:
   10689              :           return -1;
   10690              :         }
   10691              : 
   10692              :     case 3:
   10693              :       if (pattern644 (x2, 
   10694              : E_V16HImode, 
   10695              : E_HImode, 
   10696              : E_V16HFmode) != 0
   10697              :           || !(
   10698              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10699              : (TARGET_AVX512F) && (
   10700              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10701              : (TARGET_AVX512FP16) && 
   10702              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10703              : (TARGET_AVX512VL))))
   10704              :         return -1;
   10705              :       return 4472; /* avx512fp16_vcvtph2uw_v16hi_mask */
   10706              : 
   10707              :     case 4:
   10708              :       switch (pattern1112 (x2, 
   10709              : E_V8SImode))
   10710              :         {
   10711              :         case 0:
   10712              :           if (!(
   10713              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10714              : (TARGET_AVX512F) && (
   10715              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10716              : (TARGET_AVX512FP16) && 
   10717              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10718              : (TARGET_AVX512VL))))
   10719              :             return -1;
   10720              :           return 4480; /* avx512fp16_vcvtph2udq_v8si_mask */
   10721              : 
   10722              :         case 1:
   10723              :           if (!(
   10724              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10725              : (TARGET_AVX512F) && (
   10726              : #line 9040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10727              : (TARGET_AVX512F) && 
   10728              : #line 668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10729              : (TARGET_AVX512VL))))
   10730              :             return -1;
   10731              :           return 4888; /* avx512vl_fixuns_notruncv8sfv8si_mask */
   10732              : 
   10733              :         case 2:
   10734              :           if (!
   10735              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10736              : (TARGET_AVX512F))
   10737              :             return -1;
   10738              :           return 5050; /* fixuns_notruncv8dfv8si2_mask */
   10739              : 
   10740              :         default:
   10741              :           return -1;
   10742              :         }
   10743              : 
   10744              :     case 5:
   10745              :       switch (pattern1113 (x2, 
   10746              : E_V4DImode))
   10747              :         {
   10748              :         case 0:
   10749              :           if (!(
   10750              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10751              : (TARGET_AVX512F) && (
   10752              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10753              : (TARGET_AVX512FP16) && 
   10754              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10755              : (TARGET_AVX512VL))))
   10756              :             return -1;
   10757              :           return 4488; /* avx512fp16_vcvtph2uqq_v4di_mask */
   10758              : 
   10759              :         case 1:
   10760              :           if (!(
   10761              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10762              : (TARGET_AVX512F) && (
   10763              : #line 9073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10764              : (TARGET_AVX512DQ && 1) && 
   10765              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10766              : (TARGET_AVX512VL))))
   10767              :             return -1;
   10768              :           return 4907; /* avx512dq_cvtps2uqqv4di_mask */
   10769              : 
   10770              :         case 2:
   10771              :           if (!(
   10772              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10773              : (TARGET_AVX512F) && (
   10774              : #line 10051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10775              : (TARGET_AVX512DQ && 1) && 
   10776              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10777              : (TARGET_AVX512VL))))
   10778              :             return -1;
   10779              :           return 5133; /* fixuns_notruncv4dfv4di2_mask */
   10780              : 
   10781              :         default:
   10782              :           return -1;
   10783              :         }
   10784              : 
   10785              :     case 6:
   10786              :       if (pattern644 (x2, 
   10787              : E_V8HImode, 
   10788              : E_QImode, 
   10789              : E_V8HFmode) != 0
   10790              :           || !(
   10791              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10792              : (TARGET_AVX512F) && (
   10793              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10794              : (TARGET_AVX512FP16) && 
   10795              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10796              : (TARGET_AVX512VL))))
   10797              :         return -1;
   10798              :       return 4496; /* avx512fp16_vcvtph2uw_v8hi_mask */
   10799              : 
   10800              :     case 7:
   10801              :       switch (pattern1113 (x2, 
   10802              : E_V4SImode))
   10803              :         {
   10804              :         case 0:
   10805              :           if (!(
   10806              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10807              : (TARGET_AVX512F) && (
   10808              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10809              : (TARGET_AVX512FP16) && 
   10810              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10811              : (TARGET_AVX512VL))))
   10812              :             return -1;
   10813              :           return 4504; /* avx512fp16_vcvtph2udq_v4si_mask */
   10814              : 
   10815              :         case 1:
   10816              :           if (!(
   10817              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10818              : (TARGET_AVX512F) && (
   10819              : #line 9040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10820              : (TARGET_AVX512F) && 
   10821              : #line 668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10822              : (TARGET_AVX512VL))))
   10823              :             return -1;
   10824              :           return 4892; /* avx512vl_fixuns_notruncv4sfv4si_mask */
   10825              : 
   10826              :         case 2:
   10827              :           if (!(
   10828              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10829              : (TARGET_AVX512F) && (
   10830              : #line 9832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10831              : (TARGET_AVX512F) && 
   10832              : #line 469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10833              : (TARGET_AVX512VL))))
   10834              :             return -1;
   10835              :           return 5054; /* fixuns_notruncv4dfv4si2_mask */
   10836              : 
   10837              :         default:
   10838              :           return -1;
   10839              :         }
   10840              : 
   10841              :     case 8:
   10842              :       switch (pattern1114 (x2))
   10843              :         {
   10844              :         case 0:
   10845              :           if (!vector_operand (operands[1], E_V8HFmode)
   10846              :               || !(
   10847              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10848              : (TARGET_AVX512F) && (
   10849              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10850              : (TARGET_AVX512FP16) && 
   10851              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10852              : (TARGET_AVX512VL))))
   10853              :             return -1;
   10854              :           return 4512; /* avx512fp16_vcvtph2uqq_v2di_mask */
   10855              : 
   10856              :         case 1:
   10857              :           if (!nonimmediate_operand (operands[1], E_V2DFmode)
   10858              :               || !(
   10859              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10860              : (TARGET_AVX512F) && (
   10861              : #line 10051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10862              : (TARGET_AVX512DQ && 1) && 
   10863              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10864              : (TARGET_AVX512VL))))
   10865              :             return -1;
   10866              :           return 5135; /* fixuns_notruncv2dfv2di2_mask */
   10867              : 
   10868              :         default:
   10869              :           return -1;
   10870              :         }
   10871              : 
   10872              :     case 9:
   10873              :       if (!(
   10874              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10875              : (TARGET_AVX512F) && 
   10876              : #line 9086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10877              : (TARGET_AVX512DQ && TARGET_AVX512VL)))
   10878              :         return -1;
   10879              :       return 4909; /* avx512dq_cvtps2uqqv2di_mask */
   10880              : 
   10881              :     default:
   10882              :       return -1;
   10883              :     }
   10884              : }
   10885              : 
   10886              :  int
   10887              : recog_137 (rtx x1 ATTRIBUTE_UNUSED,
   10888              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10889              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10890              : {
   10891              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10892              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   10893              :   int res ATTRIBUTE_UNUSED;
   10894              :   x2 = XEXP (x1, 1);
   10895              :   x3 = XEXP (x2, 0);
   10896              :   x4 = XVECEXP (x3, 0, 0);
   10897              :   operands[1] = x4;
   10898              :   x5 = XVECEXP (x3, 0, 1);
   10899              :   operands[2] = x5;
   10900              :   x6 = XVECEXP (x3, 0, 2);
   10901              :   switch (GET_CODE (x6))
   10902              :     {
   10903              :     case REG:
   10904              :     case SUBREG:
   10905              :     case MEM:
   10906              :       operands[3] = x6;
   10907              :       x7 = XEXP (x2, 1);
   10908              :       switch (GET_CODE (x7))
   10909              :         {
   10910              :         case CONST_INT:
   10911              :         case CONST_DOUBLE:
   10912              :         case CONST_VECTOR:
   10913              :           operands[4] = x7;
   10914              :           x8 = XEXP (x2, 2);
   10915              :           operands[5] = x8;
   10916              :           switch (GET_MODE (operands[0]))
   10917              :             {
   10918              :             case E_V32HFmode:
   10919              :               if (pattern1377 (x2, 
   10920              : E_V32HFmode, 
   10921              : E_SImode) != 0
   10922              :                   || !(
   10923              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10924              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   10925              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10926              : (TARGET_AVX512FP16)))
   10927              :                 return -1;
   10928              :               return 4135; /* fma_fmaddsub_v32hf_maskz_1 */
   10929              : 
   10930              :             case E_V16HFmode:
   10931              :               if (pattern1377 (x2, 
   10932              : E_V16HFmode, 
   10933              : E_HImode) != 0
   10934              :                   || !(
   10935              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10936              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   10937              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10938              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10939              :                 return -1;
   10940              :               return 4139; /* fma_fmaddsub_v16hf_maskz_1 */
   10941              : 
   10942              :             case E_V8HFmode:
   10943              :               if (pattern1377 (x2, 
   10944              : E_V8HFmode, 
   10945              : E_QImode) != 0
   10946              :                   || !(
   10947              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10948              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   10949              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10950              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10951              :                 return -1;
   10952              :               return 4141; /* fma_fmaddsub_v8hf_maskz_1 */
   10953              : 
   10954              :             case E_V16SFmode:
   10955              :               if (pattern1377 (x2, 
   10956              : E_V16SFmode, 
   10957              : E_HImode) != 0
   10958              :                   || !
   10959              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10960              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   10961              :                 return -1;
   10962              :               return 4143; /* fma_fmaddsub_v16sf_maskz_1 */
   10963              : 
   10964              :             case E_V8SFmode:
   10965              :               if (pattern1377 (x2, 
   10966              : E_V8SFmode, 
   10967              : E_QImode) != 0
   10968              :                   || !(
   10969              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10970              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   10971              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10972              : (TARGET_AVX512VL)))
   10973              :                 return -1;
   10974              :               return 4147; /* fma_fmaddsub_v8sf_maskz_1 */
   10975              : 
   10976              :             case E_V4SFmode:
   10977              :               if (pattern1377 (x2, 
   10978              : E_V4SFmode, 
   10979              : E_QImode) != 0
   10980              :                   || !(
   10981              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10982              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   10983              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10984              : (TARGET_AVX512VL)))
   10985              :                 return -1;
   10986              :               return 4149; /* fma_fmaddsub_v4sf_maskz_1 */
   10987              : 
   10988              :             case E_V8DFmode:
   10989              :               if (pattern1377 (x2, 
   10990              : E_V8DFmode, 
   10991              : E_QImode) != 0
   10992              :                   || !
   10993              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10994              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   10995              :                 return -1;
   10996              :               return 4151; /* fma_fmaddsub_v8df_maskz_1 */
   10997              : 
   10998              :             case E_V4DFmode:
   10999              :               if (pattern1377 (x2, 
   11000              : E_V4DFmode, 
   11001              : E_QImode) != 0
   11002              :                   || !(
   11003              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11004              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11005              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11006              : (TARGET_AVX512VL)))
   11007              :                 return -1;
   11008              :               return 4155; /* fma_fmaddsub_v4df_maskz_1 */
   11009              : 
   11010              :             case E_V2DFmode:
   11011              :               if (pattern1377 (x2, 
   11012              : E_V2DFmode, 
   11013              : E_QImode) != 0
   11014              :                   || !(
   11015              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11016              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11017              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11018              : (TARGET_AVX512VL)))
   11019              :                 return -1;
   11020              :               return 4157; /* fma_fmaddsub_v2df_maskz_1 */
   11021              : 
   11022              :             default:
   11023              :               return -1;
   11024              :             }
   11025              : 
   11026              :         case REG:
   11027              :         case SUBREG:
   11028              :         case MEM:
   11029              :           x8 = XEXP (x2, 2);
   11030              :           operands[4] = x8;
   11031              :           switch (GET_MODE (operands[0]))
   11032              :             {
   11033              :             case E_V32HFmode:
   11034              :               if (pattern1280 (x2, 
   11035              : E_V32HFmode, 
   11036              : E_SImode) != 0)
   11037              :                 return -1;
   11038              :               if (register_operand (operands[1], E_V32HFmode)
   11039              :                   && vector_operand (operands[3], E_V32HFmode)
   11040              :                   && rtx_equal_p (x7, operands[1])
   11041              :                   && (
   11042              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11043              : (TARGET_AVX512F) && 
   11044              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11045              : (TARGET_AVX512FP16)))
   11046              :                 return 4158; /* avx512bw_fmaddsub_v32hf_mask */
   11047              :               if (!nonimmediate_operand (operands[1], E_V32HFmode)
   11048              :                   || !nonimmediate_operand (operands[3], E_V32HFmode)
   11049              :                   || !rtx_equal_p (x7, operands[3])
   11050              :                   || !(
   11051              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11052              : (TARGET_AVX512F) && 
   11053              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11054              : (TARGET_AVX512FP16)))
   11055              :                 return -1;
   11056              :               return 4176; /* avx512bw_fmaddsub_v32hf_mask3 */
   11057              : 
   11058              :             case E_V16HFmode:
   11059              :               if (pattern1280 (x2, 
   11060              : E_V16HFmode, 
   11061              : E_HImode) != 0)
   11062              :                 return -1;
   11063              :               if (register_operand (operands[1], E_V16HFmode)
   11064              :                   && vector_operand (operands[3], E_V16HFmode)
   11065              :                   && rtx_equal_p (x7, operands[1])
   11066              :                   && (
   11067              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11068              : (TARGET_AVX512F) && 
   11069              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11070              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11071              :                 return 4160; /* avx512vl_fmaddsub_v16hf_mask */
   11072              :               if (!nonimmediate_operand (operands[1], E_V16HFmode)
   11073              :                   || !nonimmediate_operand (operands[3], E_V16HFmode)
   11074              :                   || !rtx_equal_p (x7, operands[3])
   11075              :                   || !(
   11076              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11077              : (TARGET_AVX512F) && 
   11078              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11079              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11080              :                 return -1;
   11081              :               return 4178; /* avx512vl_fmaddsub_v16hf_mask3 */
   11082              : 
   11083              :             case E_V8HFmode:
   11084              :               if (pattern1280 (x2, 
   11085              : E_V8HFmode, 
   11086              : E_QImode) != 0)
   11087              :                 return -1;
   11088              :               if (register_operand (operands[1], E_V8HFmode)
   11089              :                   && vector_operand (operands[3], E_V8HFmode)
   11090              :                   && rtx_equal_p (x7, operands[1])
   11091              :                   && (
   11092              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11093              : (TARGET_AVX512F) && 
   11094              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11095              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11096              :                 return 4162; /* avx512fp16_fmaddsub_v8hf_mask */
   11097              :               if (!nonimmediate_operand (operands[1], E_V8HFmode)
   11098              :                   || !nonimmediate_operand (operands[3], E_V8HFmode)
   11099              :                   || !rtx_equal_p (x7, operands[3])
   11100              :                   || !(
   11101              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11102              : (TARGET_AVX512F) && 
   11103              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11104              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11105              :                 return -1;
   11106              :               return 4180; /* avx512fp16_fmaddsub_v8hf_mask3 */
   11107              : 
   11108              :             case E_V16SFmode:
   11109              :               if (pattern1280 (x2, 
   11110              : E_V16SFmode, 
   11111              : E_HImode) != 0)
   11112              :                 return -1;
   11113              :               if (register_operand (operands[1], E_V16SFmode)
   11114              :                   && vector_operand (operands[3], E_V16SFmode)
   11115              :                   && rtx_equal_p (x7, operands[1])
   11116              :                   && 
   11117              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11118              : (TARGET_AVX512F))
   11119              :                 return 4164; /* avx512f_fmaddsub_v16sf_mask */
   11120              :               if (!nonimmediate_operand (operands[1], E_V16SFmode)
   11121              :                   || !nonimmediate_operand (operands[3], E_V16SFmode)
   11122              :                   || !rtx_equal_p (x7, operands[3])
   11123              :                   || !
   11124              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11125              : (TARGET_AVX512F))
   11126              :                 return -1;
   11127              :               return 4182; /* avx512f_fmaddsub_v16sf_mask3 */
   11128              : 
   11129              :             case E_V8SFmode:
   11130              :               if (pattern1280 (x2, 
   11131              : E_V8SFmode, 
   11132              : E_QImode) != 0)
   11133              :                 return -1;
   11134              :               if (register_operand (operands[1], E_V8SFmode)
   11135              :                   && vector_operand (operands[3], E_V8SFmode)
   11136              :                   && rtx_equal_p (x7, operands[1])
   11137              :                   && (
   11138              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11139              : (TARGET_AVX512F) && 
   11140              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11141              : (TARGET_AVX512VL)))
   11142              :                 return 4166; /* avx512vl_fmaddsub_v8sf_mask */
   11143              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   11144              :                   || !nonimmediate_operand (operands[3], E_V8SFmode)
   11145              :                   || !rtx_equal_p (x7, operands[3])
   11146              :                   || !(
   11147              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11148              : (TARGET_AVX512F) && 
   11149              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11150              : (TARGET_AVX512VL)))
   11151              :                 return -1;
   11152              :               return 4184; /* avx512vl_fmaddsub_v8sf_mask3 */
   11153              : 
   11154              :             case E_V4SFmode:
   11155              :               if (pattern1280 (x2, 
   11156              : E_V4SFmode, 
   11157              : E_QImode) != 0)
   11158              :                 return -1;
   11159              :               if (register_operand (operands[1], E_V4SFmode)
   11160              :                   && vector_operand (operands[3], E_V4SFmode)
   11161              :                   && rtx_equal_p (x7, operands[1])
   11162              :                   && (
   11163              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11164              : (TARGET_AVX512F) && 
   11165              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11166              : (TARGET_AVX512VL)))
   11167              :                 return 4168; /* avx512vl_fmaddsub_v4sf_mask */
   11168              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   11169              :                   || !nonimmediate_operand (operands[3], E_V4SFmode)
   11170              :                   || !rtx_equal_p (x7, operands[3])
   11171              :                   || !(
   11172              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11173              : (TARGET_AVX512F) && 
   11174              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11175              : (TARGET_AVX512VL)))
   11176              :                 return -1;
   11177              :               return 4186; /* avx512vl_fmaddsub_v4sf_mask3 */
   11178              : 
   11179              :             case E_V8DFmode:
   11180              :               if (pattern1280 (x2, 
   11181              : E_V8DFmode, 
   11182              : E_QImode) != 0)
   11183              :                 return -1;
   11184              :               if (register_operand (operands[1], E_V8DFmode)
   11185              :                   && vector_operand (operands[3], E_V8DFmode)
   11186              :                   && rtx_equal_p (x7, operands[1])
   11187              :                   && 
   11188              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11189              : (TARGET_AVX512F))
   11190              :                 return 4170; /* avx512f_fmaddsub_v8df_mask */
   11191              :               if (!nonimmediate_operand (operands[1], E_V8DFmode)
   11192              :                   || !nonimmediate_operand (operands[3], E_V8DFmode)
   11193              :                   || !rtx_equal_p (x7, operands[3])
   11194              :                   || !
   11195              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11196              : (TARGET_AVX512F))
   11197              :                 return -1;
   11198              :               return 4188; /* avx512f_fmaddsub_v8df_mask3 */
   11199              : 
   11200              :             case E_V4DFmode:
   11201              :               if (pattern1280 (x2, 
   11202              : E_V4DFmode, 
   11203              : E_QImode) != 0)
   11204              :                 return -1;
   11205              :               if (register_operand (operands[1], E_V4DFmode)
   11206              :                   && vector_operand (operands[3], E_V4DFmode)
   11207              :                   && rtx_equal_p (x7, operands[1])
   11208              :                   && (
   11209              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11210              : (TARGET_AVX512F) && 
   11211              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11212              : (TARGET_AVX512VL)))
   11213              :                 return 4172; /* avx512vl_fmaddsub_v4df_mask */
   11214              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   11215              :                   || !nonimmediate_operand (operands[3], E_V4DFmode)
   11216              :                   || !rtx_equal_p (x7, operands[3])
   11217              :                   || !(
   11218              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11219              : (TARGET_AVX512F) && 
   11220              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11221              : (TARGET_AVX512VL)))
   11222              :                 return -1;
   11223              :               return 4190; /* avx512vl_fmaddsub_v4df_mask3 */
   11224              : 
   11225              :             case E_V2DFmode:
   11226              :               if (pattern1280 (x2, 
   11227              : E_V2DFmode, 
   11228              : E_QImode) != 0)
   11229              :                 return -1;
   11230              :               if (register_operand (operands[1], E_V2DFmode)
   11231              :                   && vector_operand (operands[3], E_V2DFmode)
   11232              :                   && rtx_equal_p (x7, operands[1])
   11233              :                   && (
   11234              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11235              : (TARGET_AVX512F) && 
   11236              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11237              : (TARGET_AVX512VL)))
   11238              :                 return 4174; /* avx512vl_fmaddsub_v2df_mask */
   11239              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   11240              :                   || !nonimmediate_operand (operands[3], E_V2DFmode)
   11241              :                   || !rtx_equal_p (x7, operands[3])
   11242              :                   || !(
   11243              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11244              : (TARGET_AVX512F) && 
   11245              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11246              : (TARGET_AVX512VL)))
   11247              :                 return -1;
   11248              :               return 4192; /* avx512vl_fmaddsub_v2df_mask3 */
   11249              : 
   11250              :             default:
   11251              :               return -1;
   11252              :             }
   11253              : 
   11254              :         default:
   11255              :           return -1;
   11256              :         }
   11257              : 
   11258              :     case NEG:
   11259              :       x9 = XEXP (x6, 0);
   11260              :       operands[3] = x9;
   11261              :       x7 = XEXP (x2, 1);
   11262              :       switch (GET_CODE (x7))
   11263              :         {
   11264              :         case CONST_INT:
   11265              :         case CONST_DOUBLE:
   11266              :         case CONST_VECTOR:
   11267              :           operands[4] = x7;
   11268              :           x8 = XEXP (x2, 2);
   11269              :           operands[5] = x8;
   11270              :           switch (GET_MODE (operands[0]))
   11271              :             {
   11272              :             case E_V32HFmode:
   11273              :               if (pattern1378 (x2, 
   11274              : E_V32HFmode, 
   11275              : E_SImode) != 0
   11276              :                   || !(
   11277              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11278              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   11279              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11280              : (TARGET_AVX512FP16)))
   11281              :                 return -1;
   11282              :               return 4199; /* fma_fmsubadd_v32hf_maskz_1 */
   11283              : 
   11284              :             case E_V16HFmode:
   11285              :               if (pattern1378 (x2, 
   11286              : E_V16HFmode, 
   11287              : E_HImode) != 0
   11288              :                   || !(
   11289              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11290              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11291              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11292              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11293              :                 return -1;
   11294              :               return 4203; /* fma_fmsubadd_v16hf_maskz_1 */
   11295              : 
   11296              :             case E_V8HFmode:
   11297              :               if (pattern1378 (x2, 
   11298              : E_V8HFmode, 
   11299              : E_QImode) != 0
   11300              :                   || !(
   11301              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11302              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11303              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11304              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11305              :                 return -1;
   11306              :               return 4205; /* fma_fmsubadd_v8hf_maskz_1 */
   11307              : 
   11308              :             case E_V16SFmode:
   11309              :               if (pattern1378 (x2, 
   11310              : E_V16SFmode, 
   11311              : E_HImode) != 0
   11312              :                   || !
   11313              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11314              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11315              :                 return -1;
   11316              :               return 4207; /* fma_fmsubadd_v16sf_maskz_1 */
   11317              : 
   11318              :             case E_V8SFmode:
   11319              :               if (pattern1378 (x2, 
   11320              : E_V8SFmode, 
   11321              : E_QImode) != 0
   11322              :                   || !(
   11323              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11324              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11325              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11326              : (TARGET_AVX512VL)))
   11327              :                 return -1;
   11328              :               return 4211; /* fma_fmsubadd_v8sf_maskz_1 */
   11329              : 
   11330              :             case E_V4SFmode:
   11331              :               if (pattern1378 (x2, 
   11332              : E_V4SFmode, 
   11333              : E_QImode) != 0
   11334              :                   || !(
   11335              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11336              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11337              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11338              : (TARGET_AVX512VL)))
   11339              :                 return -1;
   11340              :               return 4213; /* fma_fmsubadd_v4sf_maskz_1 */
   11341              : 
   11342              :             case E_V8DFmode:
   11343              :               if (pattern1378 (x2, 
   11344              : E_V8DFmode, 
   11345              : E_QImode) != 0
   11346              :                   || !
   11347              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11348              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11349              :                 return -1;
   11350              :               return 4215; /* fma_fmsubadd_v8df_maskz_1 */
   11351              : 
   11352              :             case E_V4DFmode:
   11353              :               if (pattern1378 (x2, 
   11354              : E_V4DFmode, 
   11355              : E_QImode) != 0
   11356              :                   || !(
   11357              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11358              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11359              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11360              : (TARGET_AVX512VL)))
   11361              :                 return -1;
   11362              :               return 4219; /* fma_fmsubadd_v4df_maskz_1 */
   11363              : 
   11364              :             case E_V2DFmode:
   11365              :               if (pattern1378 (x2, 
   11366              : E_V2DFmode, 
   11367              : E_QImode) != 0
   11368              :                   || !(
   11369              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11370              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11371              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11372              : (TARGET_AVX512VL)))
   11373              :                 return -1;
   11374              :               return 4221; /* fma_fmsubadd_v2df_maskz_1 */
   11375              : 
   11376              :             default:
   11377              :               return -1;
   11378              :             }
   11379              : 
   11380              :         case REG:
   11381              :         case SUBREG:
   11382              :         case MEM:
   11383              :           x8 = XEXP (x2, 2);
   11384              :           operands[4] = x8;
   11385              :           switch (GET_MODE (operands[0]))
   11386              :             {
   11387              :             case E_V32HFmode:
   11388              :               if (pattern1281 (x2, 
   11389              : E_V32HFmode, 
   11390              : E_SImode) != 0)
   11391              :                 return -1;
   11392              :               if (vector_operand (operands[3], E_V32HFmode)
   11393              :                   && rtx_equal_p (x7, operands[1])
   11394              :                   && (
   11395              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11396              : (TARGET_AVX512F) && 
   11397              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11398              : (TARGET_AVX512FP16)))
   11399              :                 return 4222; /* avx512bw_fmsubadd_v32hf_mask */
   11400              :               if (!nonimmediate_operand (operands[3], E_V32HFmode)
   11401              :                   || !rtx_equal_p (x7, operands[3])
   11402              :                   || !(
   11403              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11404              : (TARGET_AVX512F) && 
   11405              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11406              : (TARGET_AVX512FP16)))
   11407              :                 return -1;
   11408              :               return 4240; /* avx512bw_fmsubadd_v32hf_mask3 */
   11409              : 
   11410              :             case E_V16HFmode:
   11411              :               if (pattern1281 (x2, 
   11412              : E_V16HFmode, 
   11413              : E_HImode) != 0)
   11414              :                 return -1;
   11415              :               if (vector_operand (operands[3], E_V16HFmode)
   11416              :                   && rtx_equal_p (x7, operands[1])
   11417              :                   && (
   11418              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11419              : (TARGET_AVX512F) && 
   11420              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11421              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11422              :                 return 4224; /* avx512vl_fmsubadd_v16hf_mask */
   11423              :               if (!nonimmediate_operand (operands[3], E_V16HFmode)
   11424              :                   || !rtx_equal_p (x7, operands[3])
   11425              :                   || !(
   11426              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11427              : (TARGET_AVX512F) && 
   11428              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11429              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11430              :                 return -1;
   11431              :               return 4242; /* avx512vl_fmsubadd_v16hf_mask3 */
   11432              : 
   11433              :             case E_V8HFmode:
   11434              :               if (pattern1281 (x2, 
   11435              : E_V8HFmode, 
   11436              : E_QImode) != 0)
   11437              :                 return -1;
   11438              :               if (vector_operand (operands[3], E_V8HFmode)
   11439              :                   && rtx_equal_p (x7, operands[1])
   11440              :                   && (
   11441              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11442              : (TARGET_AVX512F) && 
   11443              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11444              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11445              :                 return 4226; /* avx512fp16_fmsubadd_v8hf_mask */
   11446              :               if (!nonimmediate_operand (operands[3], E_V8HFmode)
   11447              :                   || !rtx_equal_p (x7, operands[3])
   11448              :                   || !(
   11449              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11450              : (TARGET_AVX512F) && 
   11451              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11452              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11453              :                 return -1;
   11454              :               return 4244; /* avx512fp16_fmsubadd_v8hf_mask3 */
   11455              : 
   11456              :             case E_V16SFmode:
   11457              :               if (pattern1281 (x2, 
   11458              : E_V16SFmode, 
   11459              : E_HImode) != 0)
   11460              :                 return -1;
   11461              :               if (vector_operand (operands[3], E_V16SFmode)
   11462              :                   && rtx_equal_p (x7, operands[1])
   11463              :                   && 
   11464              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11465              : (TARGET_AVX512F))
   11466              :                 return 4228; /* avx512f_fmsubadd_v16sf_mask */
   11467              :               if (!nonimmediate_operand (operands[3], E_V16SFmode)
   11468              :                   || !rtx_equal_p (x7, operands[3])
   11469              :                   || !
   11470              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11471              : (TARGET_AVX512F))
   11472              :                 return -1;
   11473              :               return 4246; /* avx512f_fmsubadd_v16sf_mask3 */
   11474              : 
   11475              :             case E_V8SFmode:
   11476              :               if (pattern1281 (x2, 
   11477              : E_V8SFmode, 
   11478              : E_QImode) != 0)
   11479              :                 return -1;
   11480              :               if (vector_operand (operands[3], E_V8SFmode)
   11481              :                   && rtx_equal_p (x7, operands[1])
   11482              :                   && (
   11483              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11484              : (TARGET_AVX512F) && 
   11485              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11486              : (TARGET_AVX512VL)))
   11487              :                 return 4230; /* avx512vl_fmsubadd_v8sf_mask */
   11488              :               if (!nonimmediate_operand (operands[3], E_V8SFmode)
   11489              :                   || !rtx_equal_p (x7, operands[3])
   11490              :                   || !(
   11491              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11492              : (TARGET_AVX512F) && 
   11493              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11494              : (TARGET_AVX512VL)))
   11495              :                 return -1;
   11496              :               return 4248; /* avx512vl_fmsubadd_v8sf_mask3 */
   11497              : 
   11498              :             case E_V4SFmode:
   11499              :               if (pattern1281 (x2, 
   11500              : E_V4SFmode, 
   11501              : E_QImode) != 0)
   11502              :                 return -1;
   11503              :               if (vector_operand (operands[3], E_V4SFmode)
   11504              :                   && rtx_equal_p (x7, operands[1])
   11505              :                   && (
   11506              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11507              : (TARGET_AVX512F) && 
   11508              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11509              : (TARGET_AVX512VL)))
   11510              :                 return 4232; /* avx512vl_fmsubadd_v4sf_mask */
   11511              :               if (!nonimmediate_operand (operands[3], E_V4SFmode)
   11512              :                   || !rtx_equal_p (x7, operands[3])
   11513              :                   || !(
   11514              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11515              : (TARGET_AVX512F) && 
   11516              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11517              : (TARGET_AVX512VL)))
   11518              :                 return -1;
   11519              :               return 4250; /* avx512vl_fmsubadd_v4sf_mask3 */
   11520              : 
   11521              :             case E_V8DFmode:
   11522              :               if (pattern1281 (x2, 
   11523              : E_V8DFmode, 
   11524              : E_QImode) != 0)
   11525              :                 return -1;
   11526              :               if (vector_operand (operands[3], E_V8DFmode)
   11527              :                   && rtx_equal_p (x7, operands[1])
   11528              :                   && 
   11529              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11530              : (TARGET_AVX512F))
   11531              :                 return 4234; /* avx512f_fmsubadd_v8df_mask */
   11532              :               if (!nonimmediate_operand (operands[3], E_V8DFmode)
   11533              :                   || !rtx_equal_p (x7, operands[3])
   11534              :                   || !
   11535              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11536              : (TARGET_AVX512F))
   11537              :                 return -1;
   11538              :               return 4252; /* avx512f_fmsubadd_v8df_mask3 */
   11539              : 
   11540              :             case E_V4DFmode:
   11541              :               if (pattern1281 (x2, 
   11542              : E_V4DFmode, 
   11543              : E_QImode) != 0)
   11544              :                 return -1;
   11545              :               if (vector_operand (operands[3], E_V4DFmode)
   11546              :                   && rtx_equal_p (x7, operands[1])
   11547              :                   && (
   11548              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11549              : (TARGET_AVX512F) && 
   11550              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11551              : (TARGET_AVX512VL)))
   11552              :                 return 4236; /* avx512vl_fmsubadd_v4df_mask */
   11553              :               if (!nonimmediate_operand (operands[3], E_V4DFmode)
   11554              :                   || !rtx_equal_p (x7, operands[3])
   11555              :                   || !(
   11556              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11557              : (TARGET_AVX512F) && 
   11558              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11559              : (TARGET_AVX512VL)))
   11560              :                 return -1;
   11561              :               return 4254; /* avx512vl_fmsubadd_v4df_mask3 */
   11562              : 
   11563              :             case E_V2DFmode:
   11564              :               if (pattern1281 (x2, 
   11565              : E_V2DFmode, 
   11566              : E_QImode) != 0)
   11567              :                 return -1;
   11568              :               if (vector_operand (operands[3], E_V2DFmode)
   11569              :                   && rtx_equal_p (x7, operands[1])
   11570              :                   && (
   11571              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11572              : (TARGET_AVX512F) && 
   11573              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11574              : (TARGET_AVX512VL)))
   11575              :                 return 4238; /* avx512vl_fmsubadd_v2df_mask */
   11576              :               if (!nonimmediate_operand (operands[3], E_V2DFmode)
   11577              :                   || !rtx_equal_p (x7, operands[3])
   11578              :                   || !(
   11579              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11580              : (TARGET_AVX512F) && 
   11581              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11582              : (TARGET_AVX512VL)))
   11583              :                 return -1;
   11584              :               return 4256; /* avx512vl_fmsubadd_v2df_mask3 */
   11585              : 
   11586              :             default:
   11587              :               return -1;
   11588              :             }
   11589              : 
   11590              :         default:
   11591              :           return -1;
   11592              :         }
   11593              : 
   11594              :     default:
   11595              :       return -1;
   11596              :     }
   11597              : }
   11598              : 
   11599              :  int
   11600              : recog_161 (rtx x1 ATTRIBUTE_UNUSED,
   11601              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11602              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11603              : {
   11604              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11605              :   rtx x2, x3, x4;
   11606              :   int res ATTRIBUTE_UNUSED;
   11607              :   switch (GET_CODE (operands[4]))
   11608              :     {
   11609              :     case REG:
   11610              :     case SUBREG:
   11611              :     case MEM:
   11612              :       x2 = XEXP (x1, 1);
   11613              :       switch (pattern1294 (x2))
   11614              :         {
   11615              :         case 0:
   11616              :           if ((
   11617              : #line 4344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11618              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   11619              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11620              : (TARGET_AVX)))
   11621              :             return 3282; /* *avx_cmpv8sf3_1 */
   11622              :           break;
   11623              : 
   11624              :         case 1:
   11625              :           if (
   11626              : #line 4344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11627              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   11628              :             return 3283; /* *avx_cmpv4sf3_1 */
   11629              :           break;
   11630              : 
   11631              :         case 2:
   11632              :           if ((
   11633              : #line 4344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11634              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   11635              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11636              : (TARGET_AVX)))
   11637              :             return 3284; /* *avx_cmpv4df3_1 */
   11638              :           break;
   11639              : 
   11640              :         case 3:
   11641              :           if ((
   11642              : #line 4344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11643              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   11644              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11645              : (TARGET_SSE2)))
   11646              :             return 3285; /* *avx_cmpv2df3_1 */
   11647              :           break;
   11648              : 
   11649              :         default:
   11650              :           break;
   11651              :         }
   11652              :       break;
   11653              : 
   11654              :     case CONST_INT:
   11655              :     case CONST_DOUBLE:
   11656              :     case CONST_VECTOR:
   11657              :       x2 = XEXP (x1, 1);
   11658              :       x3 = XEXP (x2, 2);
   11659              :       x4 = XVECEXP (x3, 0, 2);
   11660              :       if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + 1])
   11661              :         {
   11662              :           switch (GET_MODE (operands[0]))
   11663              :             {
   11664              :             case E_V32HImode:
   11665              :               if (pattern1481 (x2, 
   11666              : E_V32HImode, 
   11667              : E_SImode) == 0
   11668              :                   && (
   11669              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11670              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11671              : #line 756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11672              : (TARGET_AVX512BW)))
   11673              :                 return 7671; /* *avx512_ashrv32hi3_1 */
   11674              :               break;
   11675              : 
   11676              :             case E_V16HImode:
   11677              :               if (pattern1481 (x2, 
   11678              : E_V16HImode, 
   11679              : E_HImode) == 0
   11680              :                   && (
   11681              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11682              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11683              : #line 757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11684              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   11685              :                 return 7672; /* *avx512_ashrv16hi3_1 */
   11686              :               break;
   11687              : 
   11688              :             case E_V8HImode:
   11689              :               if (pattern1481 (x2, 
   11690              : E_V8HImode, 
   11691              : E_QImode) == 0
   11692              :                   && (
   11693              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11694              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11695              : #line 758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11696              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   11697              :                 return 7673; /* *avx512_ashrv8hi3_1 */
   11698              :               break;
   11699              : 
   11700              :             case E_V16SImode:
   11701              :               if (pattern1481 (x2, 
   11702              : E_V16SImode, 
   11703              : E_HImode) == 0
   11704              :                   && 
   11705              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11706              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   11707              :                 return 7674; /* *avx512_ashrv16si3_1 */
   11708              :               break;
   11709              : 
   11710              :             case E_V8SImode:
   11711              :               if (pattern1481 (x2, 
   11712              : E_V8SImode, 
   11713              : E_QImode) == 0
   11714              :                   && (
   11715              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11716              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11717              : #line 759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11718              : (TARGET_AVX512VL)))
   11719              :                 return 7675; /* *avx512_ashrv8si3_1 */
   11720              :               break;
   11721              : 
   11722              :             case E_V4SImode:
   11723              :               if (pattern1481 (x2, 
   11724              : E_V4SImode, 
   11725              : E_QImode) == 0
   11726              :                   && (
   11727              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11728              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11729              : #line 759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11730              : (TARGET_AVX512VL)))
   11731              :                 return 7676; /* *avx512_ashrv4si3_1 */
   11732              :               break;
   11733              : 
   11734              :             case E_V8DImode:
   11735              :               if (pattern1481 (x2, 
   11736              : E_V8DImode, 
   11737              : E_QImode) == 0
   11738              :                   && 
   11739              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11740              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   11741              :                 return 7677; /* *avx512_ashrv8di3_1 */
   11742              :               break;
   11743              : 
   11744              :             case E_V4DImode:
   11745              :               if (pattern1481 (x2, 
   11746              : E_V4DImode, 
   11747              : E_QImode) == 0
   11748              :                   && (
   11749              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11750              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11751              : #line 760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11752              : (TARGET_AVX512VL)))
   11753              :                 return 7678; /* *avx512_ashrv4di3_1 */
   11754              :               break;
   11755              : 
   11756              :             case E_V2DImode:
   11757              :               if (pattern1481 (x2, 
   11758              : E_V2DImode, 
   11759              : E_QImode) == 0
   11760              :                   && (
   11761              : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11762              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11763              : #line 760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11764              : (TARGET_AVX512VL)))
   11765              :                 return 7679; /* *avx512_ashrv2di3_1 */
   11766              :               break;
   11767              : 
   11768              :             default:
   11769              :               break;
   11770              :             }
   11771              :         }
   11772              :       break;
   11773              : 
   11774              :     default:
   11775              :       break;
   11776              :     }
   11777              :   x2 = XEXP (x1, 1);
   11778              :   x3 = XEXP (x2, 2);
   11779              :   x4 = XVECEXP (x3, 0, 2);
   11780              :   operands[5] = x4;
   11781              :   switch (pattern1295 (x2))
   11782              :     {
   11783              :     case 0:
   11784              :       if (vector_all_ones_operand (operands[1], E_V16QImode)
   11785              :           && const0_operand (operands[2], E_V16QImode))
   11786              :         {
   11787              :           if (nonimm_or_0_operand (operands[3], E_V16QImode)
   11788              :               && nonimm_or_0_operand (operands[4], E_V16QImode)
   11789              :               && 
   11790              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11791              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11792              :   /* EQ is commutative.  */
   11793              :    && ((INTVAL (operands[5]) == 0
   11794              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11795              :           /* NLE aka GT, 3 must be register.  */
   11796              :        || (INTVAL (operands[5]) == 6
   11797              :            && !MEM_P (operands[3]))
   11798              :           /* LT, 4 must be register and we swap operands.  */
   11799              :        || (INTVAL (operands[5]) == 1
   11800              :            && !MEM_P (operands[4])))))
   11801              :             return 7935; /* *avx2_pcmpv16qi3_1 */
   11802              :           if (nonimmediate_operand (operands[3], E_V16QImode)
   11803              :               && nonimmediate_operand (operands[4], E_V16QImode)
   11804              :               && 
   11805              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11806              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11807              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11808              :             return 7957; /* *avx2_pcmpv16qi3_6 */
   11809              :         }
   11810              :       if (!const0_operand (operands[1], E_V16QImode)
   11811              :           || !vector_all_ones_operand (operands[2], E_V16QImode)
   11812              :           || !nonimmediate_operand (operands[3], E_V16QImode)
   11813              :           || !nonimmediate_operand (operands[4], E_V16QImode)
   11814              :           || !
   11815              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11816              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11817              :      /* NE is commutative.  */
   11818              :    && (INTVAL (operands[5]) == 4
   11819              :           /* LE, 3 must be register.  */
   11820              :        || INTVAL (operands[5]) == 2
   11821              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11822              :        || INTVAL (operands[5]) == 5)))
   11823              :         return -1;
   11824              :       return 7973; /* *avx2_pcmpv16qi3_7 */
   11825              : 
   11826              :     case 1:
   11827              :       if (vector_all_ones_operand (operands[1], E_V8HImode)
   11828              :           && const0_operand (operands[2], E_V8HImode))
   11829              :         {
   11830              :           if (nonimm_or_0_operand (operands[3], E_V8HImode)
   11831              :               && nonimm_or_0_operand (operands[4], E_V8HImode)
   11832              :               && 
   11833              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11834              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11835              :   /* EQ is commutative.  */
   11836              :    && ((INTVAL (operands[5]) == 0
   11837              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11838              :           /* NLE aka GT, 3 must be register.  */
   11839              :        || (INTVAL (operands[5]) == 6
   11840              :            && !MEM_P (operands[3]))
   11841              :           /* LT, 4 must be register and we swap operands.  */
   11842              :        || (INTVAL (operands[5]) == 1
   11843              :            && !MEM_P (operands[4])))))
   11844              :             return 7936; /* *avx2_pcmpv8hi3_1 */
   11845              :           if (nonimmediate_operand (operands[3], E_V8HImode)
   11846              :               && nonimmediate_operand (operands[4], E_V8HImode)
   11847              :               && 
   11848              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11849              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11850              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11851              :             return 7959; /* *avx2_pcmpv8hi3_6 */
   11852              :         }
   11853              :       if (!const0_operand (operands[1], E_V8HImode)
   11854              :           || !vector_all_ones_operand (operands[2], E_V8HImode)
   11855              :           || !nonimmediate_operand (operands[3], E_V8HImode)
   11856              :           || !nonimmediate_operand (operands[4], E_V8HImode)
   11857              :           || !
   11858              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11859              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11860              :      /* NE is commutative.  */
   11861              :    && (INTVAL (operands[5]) == 4
   11862              :           /* LE, 3 must be register.  */
   11863              :        || INTVAL (operands[5]) == 2
   11864              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11865              :        || INTVAL (operands[5]) == 5)))
   11866              :         return -1;
   11867              :       return 7974; /* *avx2_pcmpv8hi3_7 */
   11868              : 
   11869              :     case 2:
   11870              :       if (vector_all_ones_operand (operands[1], E_V4SImode)
   11871              :           && const0_operand (operands[2], E_V4SImode))
   11872              :         {
   11873              :           if (nonimm_or_0_operand (operands[3], E_V4SImode)
   11874              :               && nonimm_or_0_operand (operands[4], E_V4SImode)
   11875              :               && 
   11876              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11877              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11878              :   /* EQ is commutative.  */
   11879              :    && ((INTVAL (operands[5]) == 0
   11880              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11881              :           /* NLE aka GT, 3 must be register.  */
   11882              :        || (INTVAL (operands[5]) == 6
   11883              :            && !MEM_P (operands[3]))
   11884              :           /* LT, 4 must be register and we swap operands.  */
   11885              :        || (INTVAL (operands[5]) == 1
   11886              :            && !MEM_P (operands[4])))))
   11887              :             return 7937; /* *avx2_pcmpv4si3_1 */
   11888              :           if (nonimmediate_operand (operands[3], E_V4SImode)
   11889              :               && nonimmediate_operand (operands[4], E_V4SImode)
   11890              :               && 
   11891              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11892              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11893              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11894              :             return 7961; /* *avx2_pcmpv4si3_6 */
   11895              :         }
   11896              :       if (!const0_operand (operands[1], E_V4SImode)
   11897              :           || !vector_all_ones_operand (operands[2], E_V4SImode)
   11898              :           || !nonimmediate_operand (operands[3], E_V4SImode)
   11899              :           || !nonimmediate_operand (operands[4], E_V4SImode)
   11900              :           || !
   11901              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11902              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11903              :      /* NE is commutative.  */
   11904              :    && (INTVAL (operands[5]) == 4
   11905              :           /* LE, 3 must be register.  */
   11906              :        || INTVAL (operands[5]) == 2
   11907              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11908              :        || INTVAL (operands[5]) == 5)))
   11909              :         return -1;
   11910              :       return 7975; /* *avx2_pcmpv4si3_7 */
   11911              : 
   11912              :     case 3:
   11913              :       if (vector_all_ones_operand (operands[1], E_V2DImode)
   11914              :           && const0_operand (operands[2], E_V2DImode))
   11915              :         {
   11916              :           if (nonimm_or_0_operand (operands[3], E_V2DImode)
   11917              :               && nonimm_or_0_operand (operands[4], E_V2DImode)
   11918              :               && 
   11919              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11920              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11921              :   /* EQ is commutative.  */
   11922              :    && ((INTVAL (operands[5]) == 0
   11923              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11924              :           /* NLE aka GT, 3 must be register.  */
   11925              :        || (INTVAL (operands[5]) == 6
   11926              :            && !MEM_P (operands[3]))
   11927              :           /* LT, 4 must be register and we swap operands.  */
   11928              :        || (INTVAL (operands[5]) == 1
   11929              :            && !MEM_P (operands[4])))))
   11930              :             return 7938; /* *avx2_pcmpv2di3_1 */
   11931              :           if (nonimmediate_operand (operands[3], E_V2DImode)
   11932              :               && nonimmediate_operand (operands[4], E_V2DImode)
   11933              :               && 
   11934              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11935              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11936              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11937              :             return 7963; /* *avx2_pcmpv2di3_6 */
   11938              :         }
   11939              :       if (!const0_operand (operands[1], E_V2DImode)
   11940              :           || !vector_all_ones_operand (operands[2], E_V2DImode)
   11941              :           || !nonimmediate_operand (operands[3], E_V2DImode)
   11942              :           || !nonimmediate_operand (operands[4], E_V2DImode)
   11943              :           || !
   11944              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11945              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11946              :      /* NE is commutative.  */
   11947              :    && (INTVAL (operands[5]) == 4
   11948              :           /* LE, 3 must be register.  */
   11949              :        || INTVAL (operands[5]) == 2
   11950              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11951              :        || INTVAL (operands[5]) == 5)))
   11952              :         return -1;
   11953              :       return 7976; /* *avx2_pcmpv2di3_7 */
   11954              : 
   11955              :     case 4:
   11956              :       if (vector_all_ones_operand (operands[1], E_V32QImode)
   11957              :           && const0_operand (operands[2], E_V32QImode))
   11958              :         {
   11959              :           if (nonimm_or_0_operand (operands[3], E_V32QImode)
   11960              :               && nonimm_or_0_operand (operands[4], E_V32QImode)
   11961              :               && 
   11962              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11963              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11964              :   /* EQ is commutative.  */
   11965              :    && ((INTVAL (operands[5]) == 0
   11966              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11967              :           /* NLE aka GT, 3 must be register.  */
   11968              :        || (INTVAL (operands[5]) == 6
   11969              :            && !MEM_P (operands[3]))
   11970              :           /* LT, 4 must be register and we swap operands.  */
   11971              :        || (INTVAL (operands[5]) == 1
   11972              :            && !MEM_P (operands[4])))))
   11973              :             return 7939; /* *avx2_pcmpv32qi3_1 */
   11974              :           if (nonimmediate_operand (operands[3], E_V32QImode)
   11975              :               && nonimmediate_operand (operands[4], E_V32QImode)
   11976              :               && 
   11977              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11978              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11979              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11980              :             return 7965; /* *avx2_pcmpv32qi3_6 */
   11981              :         }
   11982              :       if (!const0_operand (operands[1], E_V32QImode)
   11983              :           || !vector_all_ones_operand (operands[2], E_V32QImode)
   11984              :           || !nonimmediate_operand (operands[3], E_V32QImode)
   11985              :           || !nonimmediate_operand (operands[4], E_V32QImode)
   11986              :           || !
   11987              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11988              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11989              :      /* NE is commutative.  */
   11990              :    && (INTVAL (operands[5]) == 4
   11991              :           /* LE, 3 must be register.  */
   11992              :        || INTVAL (operands[5]) == 2
   11993              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11994              :        || INTVAL (operands[5]) == 5)))
   11995              :         return -1;
   11996              :       return 7977; /* *avx2_pcmpv32qi3_7 */
   11997              : 
   11998              :     case 5:
   11999              :       if (vector_all_ones_operand (operands[1], E_V16HImode)
   12000              :           && const0_operand (operands[2], E_V16HImode))
   12001              :         {
   12002              :           if (nonimm_or_0_operand (operands[3], E_V16HImode)
   12003              :               && nonimm_or_0_operand (operands[4], E_V16HImode)
   12004              :               && 
   12005              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12006              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12007              :   /* EQ is commutative.  */
   12008              :    && ((INTVAL (operands[5]) == 0
   12009              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12010              :           /* NLE aka GT, 3 must be register.  */
   12011              :        || (INTVAL (operands[5]) == 6
   12012              :            && !MEM_P (operands[3]))
   12013              :           /* LT, 4 must be register and we swap operands.  */
   12014              :        || (INTVAL (operands[5]) == 1
   12015              :            && !MEM_P (operands[4])))))
   12016              :             return 7940; /* *avx2_pcmpv16hi3_1 */
   12017              :           if (nonimmediate_operand (operands[3], E_V16HImode)
   12018              :               && nonimmediate_operand (operands[4], E_V16HImode)
   12019              :               && 
   12020              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12021              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12022              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12023              :             return 7967; /* *avx2_pcmpv16hi3_6 */
   12024              :         }
   12025              :       if (!const0_operand (operands[1], E_V16HImode)
   12026              :           || !vector_all_ones_operand (operands[2], E_V16HImode)
   12027              :           || !nonimmediate_operand (operands[3], E_V16HImode)
   12028              :           || !nonimmediate_operand (operands[4], E_V16HImode)
   12029              :           || !
   12030              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12031              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12032              :      /* NE is commutative.  */
   12033              :    && (INTVAL (operands[5]) == 4
   12034              :           /* LE, 3 must be register.  */
   12035              :        || INTVAL (operands[5]) == 2
   12036              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12037              :        || INTVAL (operands[5]) == 5)))
   12038              :         return -1;
   12039              :       return 7978; /* *avx2_pcmpv16hi3_7 */
   12040              : 
   12041              :     case 6:
   12042              :       if (vector_all_ones_operand (operands[1], E_V8SImode)
   12043              :           && const0_operand (operands[2], E_V8SImode))
   12044              :         {
   12045              :           if (nonimm_or_0_operand (operands[3], E_V8SImode)
   12046              :               && nonimm_or_0_operand (operands[4], E_V8SImode)
   12047              :               && 
   12048              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12049              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12050              :   /* EQ is commutative.  */
   12051              :    && ((INTVAL (operands[5]) == 0
   12052              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12053              :           /* NLE aka GT, 3 must be register.  */
   12054              :        || (INTVAL (operands[5]) == 6
   12055              :            && !MEM_P (operands[3]))
   12056              :           /* LT, 4 must be register and we swap operands.  */
   12057              :        || (INTVAL (operands[5]) == 1
   12058              :            && !MEM_P (operands[4])))))
   12059              :             return 7941; /* *avx2_pcmpv8si3_1 */
   12060              :           if (nonimmediate_operand (operands[3], E_V8SImode)
   12061              :               && nonimmediate_operand (operands[4], E_V8SImode)
   12062              :               && 
   12063              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12064              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12065              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12066              :             return 7969; /* *avx2_pcmpv8si3_6 */
   12067              :         }
   12068              :       if (!const0_operand (operands[1], E_V8SImode)
   12069              :           || !vector_all_ones_operand (operands[2], E_V8SImode)
   12070              :           || !nonimmediate_operand (operands[3], E_V8SImode)
   12071              :           || !nonimmediate_operand (operands[4], E_V8SImode)
   12072              :           || !
   12073              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12074              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12075              :      /* NE is commutative.  */
   12076              :    && (INTVAL (operands[5]) == 4
   12077              :           /* LE, 3 must be register.  */
   12078              :        || INTVAL (operands[5]) == 2
   12079              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12080              :        || INTVAL (operands[5]) == 5)))
   12081              :         return -1;
   12082              :       return 7979; /* *avx2_pcmpv8si3_7 */
   12083              : 
   12084              :     case 7:
   12085              :       if (vector_all_ones_operand (operands[1], E_V4DImode)
   12086              :           && const0_operand (operands[2], E_V4DImode))
   12087              :         {
   12088              :           if (nonimm_or_0_operand (operands[3], E_V4DImode)
   12089              :               && nonimm_or_0_operand (operands[4], E_V4DImode)
   12090              :               && 
   12091              : #line 18299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12092              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12093              :   /* EQ is commutative.  */
   12094              :    && ((INTVAL (operands[5]) == 0
   12095              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12096              :           /* NLE aka GT, 3 must be register.  */
   12097              :        || (INTVAL (operands[5]) == 6
   12098              :            && !MEM_P (operands[3]))
   12099              :           /* LT, 4 must be register and we swap operands.  */
   12100              :        || (INTVAL (operands[5]) == 1
   12101              :            && !MEM_P (operands[4])))))
   12102              :             return 7942; /* *avx2_pcmpv4di3_1 */
   12103              :           if (nonimmediate_operand (operands[3], E_V4DImode)
   12104              :               && nonimmediate_operand (operands[4], E_V4DImode)
   12105              :               && 
   12106              : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12107              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12108              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12109              :             return 7971; /* *avx2_pcmpv4di3_6 */
   12110              :         }
   12111              :       if (!const0_operand (operands[1], E_V4DImode)
   12112              :           || !vector_all_ones_operand (operands[2], E_V4DImode)
   12113              :           || !nonimmediate_operand (operands[3], E_V4DImode)
   12114              :           || !nonimmediate_operand (operands[4], E_V4DImode)
   12115              :           || !
   12116              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12117              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12118              :      /* NE is commutative.  */
   12119              :    && (INTVAL (operands[5]) == 4
   12120              :           /* LE, 3 must be register.  */
   12121              :        || INTVAL (operands[5]) == 2
   12122              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12123              :        || INTVAL (operands[5]) == 5)))
   12124              :         return -1;
   12125              :       return 7980; /* *avx2_pcmpv4di3_7 */
   12126              : 
   12127              :     default:
   12128              :       return -1;
   12129              :     }
   12130              : }
   12131              : 
   12132              :  int
   12133              : recog_168 (rtx x1 ATTRIBUTE_UNUSED,
   12134              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12135              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12136              : {
   12137              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12138              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12139              :   rtx x10;
   12140              :   int res ATTRIBUTE_UNUSED;
   12141              :   x2 = XEXP (x1, 1);
   12142              :   x3 = XEXP (x2, 0);
   12143              :   x4 = XEXP (x3, 0);
   12144              :   x5 = XEXP (x4, 1);
   12145              :   operands[2] = x5;
   12146              :   x6 = XEXP (x2, 1);
   12147              :   operands[3] = x6;
   12148              :   x7 = XEXP (x2, 2);
   12149              :   operands[4] = x7;
   12150              :   if (!register_operand (operands[4], E_QImode))
   12151              :     return -1;
   12152              :   x8 = XEXP (x3, 1);
   12153              :   x9 = XVECEXP (x8, 0, 0);
   12154              :   switch (XWINT (x9, 0))
   12155              :     {
   12156              :     case 1L:
   12157              :       x10 = XVECEXP (x8, 0, 1);
   12158              :       if (XWINT (x10, 0) != 3L)
   12159              :         return -1;
   12160              :       switch (GET_MODE (operands[0]))
   12161              :         {
   12162              :         case E_V2DFmode:
   12163              :           if (pattern1593 (x2, 
   12164              : E_V2DFmode, 
   12165              : E_V4DFmode) != 0
   12166              :               || !
   12167              : #line 13709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12168              : (TARGET_AVX512VL))
   12169              :             return -1;
   12170              :           return 5418; /* avx512vl_unpckhpd128_mask */
   12171              : 
   12172              :         case E_V2DImode:
   12173              :           if (pattern1594 (x2, 
   12174              : E_V2DImode, 
   12175              : E_V4DImode) != 0
   12176              :               || !(
   12177              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12178              : (TARGET_AVX512F) && 
   12179              : #line 14820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12180              : (TARGET_SSE2 && TARGET_AVX512VL)))
   12181              :             return -1;
   12182              :           return 7238; /* vec_interleave_highv2di_mask */
   12183              : 
   12184              :         default:
   12185              :           return -1;
   12186              :         }
   12187              : 
   12188              :     case 0L:
   12189              :       x10 = XVECEXP (x8, 0, 1);
   12190              :       if (XWINT (x10, 0) != 2L)
   12191              :         return -1;
   12192              :       switch (GET_MODE (operands[0]))
   12193              :         {
   12194              :         case E_V2DFmode:
   12195              :           if (pattern1593 (x2, 
   12196              : E_V2DFmode, 
   12197              : E_V4DFmode) != 0
   12198              :               || !
   12199              : #line 13852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12200              : (TARGET_AVX512VL))
   12201              :             return -1;
   12202              :           return 5428; /* avx512vl_unpcklpd128_mask */
   12203              : 
   12204              :         case E_V2DImode:
   12205              :           if (pattern1594 (x2, 
   12206              : E_V2DImode, 
   12207              : E_V4DImode) != 0
   12208              :               || !(
   12209              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12210              : (TARGET_AVX512F) && 
   12211              : #line 14870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12212              : (TARGET_SSE2 && TARGET_AVX512VL)))
   12213              :             return -1;
   12214              :           return 7244; /* vec_interleave_lowv2di_mask */
   12215              : 
   12216              :         default:
   12217              :           return -1;
   12218              :         }
   12219              : 
   12220              :     default:
   12221              :       return -1;
   12222              :     }
   12223              : }
   12224              : 
   12225              :  int
   12226              : recog_171 (rtx x1 ATTRIBUTE_UNUSED,
   12227              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12228              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12229              : {
   12230              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12231              :   rtx x2, x3, x4, x5, x6, x7, x8;
   12232              :   int res ATTRIBUTE_UNUSED;
   12233              :   x2 = XEXP (x1, 1);
   12234              :   x3 = XEXP (x2, 0);
   12235              :   x4 = XEXP (x3, 1);
   12236              :   x5 = XVECEXP (x4, 0, 0);
   12237              :   if (GET_CODE (x5) != CONST_INT)
   12238              :     return -1;
   12239              :   operands[2] = x5;
   12240              :   if (const_0_to_7_operand (operands[2], E_VOIDmode))
   12241              :     {
   12242              :       x6 = XVECEXP (x4, 0, 1);
   12243              :       operands[3] = x6;
   12244              :       if (const_0_to_7_operand (operands[3], E_VOIDmode))
   12245              :         {
   12246              :           x7 = XEXP (x2, 1);
   12247              :           operands[4] = x7;
   12248              :           x8 = XEXP (x2, 2);
   12249              :           operands[5] = x8;
   12250              :           if (register_operand (operands[5], E_QImode))
   12251              :             {
   12252              :               switch (GET_MODE (operands[0]))
   12253              :                 {
   12254              :                 case E_V2DFmode:
   12255              :                   if (pattern1556 (x2, 
   12256              : E_V2DFmode, 
   12257              : E_V8DFmode) == 0
   12258              :                       && 
   12259              : #line 12762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12260              : (TARGET_AVX512DQ
   12261              :    && INTVAL (operands[2]) % 2 == 0
   12262              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12263              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[4]))))
   12264              :                     return 5350; /* avx512dq_vextractf64x2_1_mask */
   12265              :                   break;
   12266              : 
   12267              :                 case E_V2DImode:
   12268              :                   if (pattern1556 (x2, 
   12269              : E_V2DImode, 
   12270              : E_V8DImode) == 0
   12271              :                       && 
   12272              : #line 12762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12273              : (TARGET_AVX512DQ
   12274              :    && INTVAL (operands[2]) % 2 == 0
   12275              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12276              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[4]))))
   12277              :                     return 5351; /* avx512dq_vextracti64x2_1_mask */
   12278              :                   break;
   12279              : 
   12280              :                 default:
   12281              :                   break;
   12282              :                 }
   12283              :             }
   12284              :         }
   12285              :     }
   12286              :   x6 = XVECEXP (x4, 0, 1);
   12287              :   if (GET_CODE (x6) != CONST_INT)
   12288              :     return -1;
   12289              :   x7 = XEXP (x2, 1);
   12290              :   operands[2] = x7;
   12291              :   x8 = XEXP (x2, 2);
   12292              :   operands[3] = x8;
   12293              :   if (!register_operand (operands[3], E_QImode))
   12294              :     return -1;
   12295              :   switch (XWINT (x5, 0))
   12296              :     {
   12297              :     case 0L:
   12298              :       if (XWINT (x6, 0) != 1L)
   12299              :         return -1;
   12300              :       switch (GET_MODE (operands[0]))
   12301              :         {
   12302              :         case E_V2DImode:
   12303              :           if (!nonimmediate_operand (operands[0], E_V2DImode)
   12304              :               || pattern1557 (x2, 
   12305              : E_V2DImode, 
   12306              : E_V4DImode) != 0
   12307              :               || !
   12308              : #line 13190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12309              : (TARGET_AVX512DQ
   12310              :    && TARGET_AVX512VL
   12311              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12312              :             return -1;
   12313              :           return 5374; /* vec_extract_lo_v4di_mask */
   12314              : 
   12315              :         case E_V2DFmode:
   12316              :           if (!nonimmediate_operand (operands[0], E_V2DFmode)
   12317              :               || pattern1557 (x2, 
   12318              : E_V2DFmode, 
   12319              : E_V4DFmode) != 0
   12320              :               || !
   12321              : #line 13190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12322              : (TARGET_AVX512DQ
   12323              :    && TARGET_AVX512VL
   12324              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12325              :             return -1;
   12326              :           return 5375; /* vec_extract_lo_v4df_mask */
   12327              : 
   12328              :         default:
   12329              :           return -1;
   12330              :         }
   12331              : 
   12332              :     case 2L:
   12333              :       if (XWINT (x6, 0) != 3L)
   12334              :         return -1;
   12335              :       switch (GET_MODE (operands[0]))
   12336              :         {
   12337              :         case E_V2DImode:
   12338              :           if (!nonimmediate_operand (operands[0], E_V2DImode)
   12339              :               || pattern1557 (x2, 
   12340              : E_V2DImode, 
   12341              : E_V4DImode) != 0
   12342              :               || !
   12343              : #line 13227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12344              : (TARGET_AVX512DQ
   12345              :    && TARGET_AVX512VL
   12346              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12347              :             return -1;
   12348              :           return 5378; /* vec_extract_hi_v4di_mask */
   12349              : 
   12350              :         case E_V2DFmode:
   12351              :           if (!nonimmediate_operand (operands[0], E_V2DFmode)
   12352              :               || pattern1557 (x2, 
   12353              : E_V2DFmode, 
   12354              : E_V4DFmode) != 0
   12355              :               || !
   12356              : #line 13227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12357              : (TARGET_AVX512DQ
   12358              :    && TARGET_AVX512VL
   12359              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12360              :             return -1;
   12361              :           return 5379; /* vec_extract_hi_v4df_mask */
   12362              : 
   12363              :         default:
   12364              :           return -1;
   12365              :         }
   12366              : 
   12367              :     default:
   12368              :       return -1;
   12369              :     }
   12370              : }
   12371              : 
   12372              :  int
   12373              : recog_176 (rtx x1 ATTRIBUTE_UNUSED,
   12374              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12375              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12376              : {
   12377              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12378              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12379              :   rtx x10;
   12380              :   int res ATTRIBUTE_UNUSED;
   12381              :   x2 = XEXP (x1, 1);
   12382              :   x3 = XEXP (x2, 0);
   12383              :   x4 = XEXP (x3, 1);
   12384              :   x5 = XVECEXP (x4, 0, 4);
   12385              :   if (GET_CODE (x5) != CONST_INT)
   12386              :     return -1;
   12387              :   operands[6] = x5;
   12388              :   res = recog_175 (x1, insn, pnum_clobbers);
   12389              :   if (res >= 0)
   12390              :     return res;
   12391              :   if (XWINT (x5, 0) != 4L)
   12392              :     return -1;
   12393              :   x6 = XVECEXP (x4, 0, 5);
   12394              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12395              :     return -1;
   12396              :   x7 = XVECEXP (x4, 0, 6);
   12397              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12398              :     return -1;
   12399              :   x8 = XVECEXP (x4, 0, 7);
   12400              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12401              :       || pattern1306 (x2, 
   12402              : E_V8HImode) != 0
   12403              :       || pattern1022 (x4) != 0)
   12404              :     return -1;
   12405              :   x9 = XEXP (x2, 1);
   12406              :   operands[6] = x9;
   12407              :   if (!nonimm_or_0_operand (operands[6], E_V8HImode))
   12408              :     return -1;
   12409              :   x10 = XEXP (x2, 2);
   12410              :   operands[7] = x10;
   12411              :   if (!register_operand (operands[7], E_QImode)
   12412              :       || !(
   12413              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12414              : (TARGET_AVX512F) && 
   12415              : #line 21186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12416              : (TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12417              :     return -1;
   12418              :   return 8493; /* sse2_pshuflw_1_mask */
   12419              : }
   12420              : 
   12421              :  int
   12422              : recog_179 (rtx x1 ATTRIBUTE_UNUSED,
   12423              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12424              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12425              : {
   12426              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12427              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12428              :   rtx x10, x11, x12, x13, x14;
   12429              :   int res ATTRIBUTE_UNUSED;
   12430              :   x2 = XEXP (x1, 1);
   12431              :   x3 = XEXP (x2, 0);
   12432              :   x4 = XEXP (x3, 1);
   12433              :   x5 = XVECEXP (x4, 0, 4);
   12434              :   if (GET_CODE (x5) != CONST_INT)
   12435              :     return -1;
   12436              :   operands[6] = x5;
   12437              :   res = recog_178 (x1, insn, pnum_clobbers);
   12438              :   if (res >= 0)
   12439              :     return res;
   12440              :   if (XWINT (x5, 0) != 4L)
   12441              :     return -1;
   12442              :   x6 = XVECEXP (x4, 0, 5);
   12443              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12444              :     return -1;
   12445              :   x7 = XVECEXP (x4, 0, 6);
   12446              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12447              :     return -1;
   12448              :   x8 = XVECEXP (x4, 0, 7);
   12449              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12450              :       || pattern1482 (x4) != 0
   12451              :       || pattern762 (x2, 
   12452              : E_V16HImode) != 0
   12453              :       || pattern1022 (x4) != 0)
   12454              :     return -1;
   12455              :   x9 = XVECEXP (x4, 0, 8);
   12456              :   operands[6] = x9;
   12457              :   if (!const_8_to_11_operand (operands[6], E_VOIDmode))
   12458              :     return -1;
   12459              :   x10 = XVECEXP (x4, 0, 9);
   12460              :   operands[7] = x10;
   12461              :   if (!const_8_to_11_operand (operands[7], E_VOIDmode))
   12462              :     return -1;
   12463              :   x11 = XVECEXP (x4, 0, 10);
   12464              :   operands[8] = x11;
   12465              :   if (!const_8_to_11_operand (operands[8], E_VOIDmode))
   12466              :     return -1;
   12467              :   x12 = XVECEXP (x4, 0, 11);
   12468              :   operands[9] = x12;
   12469              :   if (!const_8_to_11_operand (operands[9], E_VOIDmode))
   12470              :     return -1;
   12471              :   x13 = XEXP (x2, 1);
   12472              :   operands[10] = x13;
   12473              :   if (!nonimm_or_0_operand (operands[10], E_V16HImode))
   12474              :     return -1;
   12475              :   x14 = XEXP (x2, 2);
   12476              :   operands[11] = x14;
   12477              :   if (!register_operand (operands[11], E_HImode)
   12478              :       || !(
   12479              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12480              : (TARGET_AVX512F) && 
   12481              : #line 21120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12482              : (TARGET_AVX2
   12483              :    && TARGET_AVX512BW && TARGET_AVX512VL
   12484              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   12485              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   12486              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   12487              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[9]))))
   12488              :     return -1;
   12489              :   return 8491; /* avx2_pshuflw_1_mask */
   12490              : }
   12491              : 
   12492              :  int
   12493              : recog_186 (rtx x1 ATTRIBUTE_UNUSED,
   12494              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12495              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12496              : {
   12497              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12498              :   rtx x2, x3, x4, x5, x6;
   12499              :   int res ATTRIBUTE_UNUSED;
   12500              :   x2 = XEXP (x1, 1);
   12501              :   x3 = XEXP (x2, 0);
   12502              :   x4 = XEXP (x3, 1);
   12503              :   operands[2] = x4;
   12504              :   x5 = XEXP (x3, 0);
   12505              :   switch (GET_CODE (x5))
   12506              :     {
   12507              :     case REG:
   12508              :     case SUBREG:
   12509              :     case MEM:
   12510              :     case VEC_DUPLICATE:
   12511              :       operands[1] = x5;
   12512              :       switch (pattern650 (x2))
   12513              :         {
   12514              :         case 0:
   12515              :           if (pattern1384 (x2, 
   12516              : E_V32HFmode, 
   12517              : E_SImode) != 0
   12518              :               || !(
   12519              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12520              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12521              : #line 6276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12522              : (TARGET_AVX512FP16)))
   12523              :             return -1;
   12524              :           return 3877; /* fma_fmadd_v32hf_maskz_1 */
   12525              : 
   12526              :         case 1:
   12527              :           if (pattern1384 (x2, 
   12528              : E_V16HFmode, 
   12529              : E_HImode) != 0
   12530              :               || !(
   12531              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12532              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12533              : #line 6277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12534              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12535              :             return -1;
   12536              :           return 3881; /* fma_fmadd_v16hf_maskz_1 */
   12537              : 
   12538              :         case 2:
   12539              :           if (pattern1384 (x2, 
   12540              : E_V8HFmode, 
   12541              : E_QImode) != 0
   12542              :               || !(
   12543              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12544              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12545              : #line 6278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12546              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12547              :             return -1;
   12548              :           return 3883; /* fma_fmadd_v8hf_maskz_1 */
   12549              : 
   12550              :         case 3:
   12551              :           if (pattern1384 (x2, 
   12552              : E_V16SFmode, 
   12553              : E_HImode) != 0
   12554              :               || !
   12555              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12556              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   12557              :             return -1;
   12558              :           return 3887; /* fma_fmadd_v16sf_maskz_1 */
   12559              : 
   12560              :         case 4:
   12561              :           if (pattern1384 (x2, 
   12562              : E_V8SFmode, 
   12563              : E_QImode) != 0
   12564              :               || !(
   12565              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12566              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12567              : #line 6280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12568              : (TARGET_AVX512VL)))
   12569              :             return -1;
   12570              :           return 3891; /* fma_fmadd_v8sf_maskz_1 */
   12571              : 
   12572              :         case 5:
   12573              :           if (pattern1384 (x2, 
   12574              : E_V4SFmode, 
   12575              : E_QImode) != 0
   12576              :               || !(
   12577              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12578              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12579              : #line 6280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12580              : (TARGET_AVX512VL)))
   12581              :             return -1;
   12582              :           return 3893; /* fma_fmadd_v4sf_maskz_1 */
   12583              : 
   12584              :         case 6:
   12585              :           if (pattern1384 (x2, 
   12586              : E_V8DFmode, 
   12587              : E_QImode) != 0
   12588              :               || !
   12589              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12590              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   12591              :             return -1;
   12592              :           return 3896; /* fma_fmadd_v8df_maskz_1 */
   12593              : 
   12594              :         case 7:
   12595              :           if (pattern1384 (x2, 
   12596              : E_V4DFmode, 
   12597              : E_QImode) != 0
   12598              :               || !(
   12599              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12600              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12601              : #line 6281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12602              : (TARGET_AVX512VL)))
   12603              :             return -1;
   12604              :           return 3900; /* fma_fmadd_v4df_maskz_1 */
   12605              : 
   12606              :         case 8:
   12607              :           if (pattern1384 (x2, 
   12608              : E_V2DFmode, 
   12609              : E_QImode) != 0
   12610              :               || !(
   12611              : #line 6289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12612              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12613              : #line 6281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12614              : (TARGET_AVX512VL)))
   12615              :             return -1;
   12616              :           return 3902; /* fma_fmadd_v2df_maskz_1 */
   12617              : 
   12618              :         case 9:
   12619              :           if (pattern1386 (x2, 
   12620              : E_SImode, 
   12621              : E_V32BFmode) != 0
   12622              :               || !
   12623              : #line 32853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12624              : (TARGET_AVX10_2))
   12625              :             return -1;
   12626              :           return 10703; /* avx10_2_fmaddbf16_v32bf_maskz_1 */
   12627              : 
   12628              :         case 10:
   12629              :           if (pattern1386 (x2, 
   12630              : E_HImode, 
   12631              : E_V16BFmode) != 0
   12632              :               || !
   12633              : #line 32853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12634              : (TARGET_AVX10_2))
   12635              :             return -1;
   12636              :           return 10705; /* avx10_2_fmaddbf16_v16bf_maskz_1 */
   12637              : 
   12638              :         case 11:
   12639              :           if (pattern1386 (x2, 
   12640              : E_QImode, 
   12641              : E_V8BFmode) != 0
   12642              :               || !
   12643              : #line 32853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12644              : (TARGET_AVX10_2))
   12645              :             return -1;
   12646              :           return 10707; /* avx10_2_fmaddbf16_v8bf_maskz_1 */
   12647              : 
   12648              :         case 12:
   12649              :           if (pattern1387 (x2, 
   12650              : E_V4SFmode) != 0
   12651              :               || !
   12652              : #line 7302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12653              : (TARGET_FMA4))
   12654              :             return -1;
   12655              :           return 4354; /* *fma4i_vmfmadd_v4sf */
   12656              : 
   12657              :         case 13:
   12658              :           if (pattern1387 (x2, 
   12659              : E_V2DFmode) != 0
   12660              :               || !(
   12661              : #line 7302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12662              : (TARGET_FMA4) && 
   12663              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12664              : (TARGET_SSE2)))
   12665              :             return -1;
   12666              :           return 4355; /* *fma4i_vmfmadd_v2df */
   12667              : 
   12668              :         case 14:
   12669              :           if (pattern1296 (x2, 
   12670              : E_V32HFmode, 
   12671              : E_SImode) != 0)
   12672              :             return -1;
   12673              :           if (nonimmediate_operand (operands[1], E_V32HFmode)
   12674              :               && vector_operand (operands[3], E_V32HFmode))
   12675              :             {
   12676              :               x6 = XEXP (x2, 1);
   12677              :               if (rtx_equal_p (x6, operands[1])
   12678              :                   && (
   12679              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12680              : (TARGET_AVX512F && 1) && 
   12681              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12682              : (TARGET_AVX512FP16)))
   12683              :                 return 3903; /* avx512bw_fmadd_v32hf_mask */
   12684              :             }
   12685              :           if (!vector_operand (operands[1], E_V32HFmode)
   12686              :               || !nonimmediate_operand (operands[3], E_V32HFmode))
   12687              :             return -1;
   12688              :           x6 = XEXP (x2, 1);
   12689              :           if (!rtx_equal_p (x6, operands[3])
   12690              :               || !(
   12691              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12692              : (TARGET_AVX512F) && 
   12693              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12694              : (TARGET_AVX512FP16)))
   12695              :             return -1;
   12696              :           return 3915; /* avx512bw_fmadd_v32hf_mask3 */
   12697              : 
   12698              :         case 15:
   12699              :           if (pattern1296 (x2, 
   12700              : E_V16HFmode, 
   12701              : E_HImode) != 0)
   12702              :             return -1;
   12703              :           if (nonimmediate_operand (operands[1], E_V16HFmode)
   12704              :               && vector_operand (operands[3], E_V16HFmode))
   12705              :             {
   12706              :               x6 = XEXP (x2, 1);
   12707              :               if (rtx_equal_p (x6, operands[1])
   12708              :                   && (
   12709              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12710              : (TARGET_AVX512F && 1) && 
   12711              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12712              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12713              :                 return 3905; /* avx512vl_fmadd_v16hf_mask */
   12714              :             }
   12715              :           if (!vector_operand (operands[1], E_V16HFmode)
   12716              :               || !nonimmediate_operand (operands[3], E_V16HFmode))
   12717              :             return -1;
   12718              :           x6 = XEXP (x2, 1);
   12719              :           if (!rtx_equal_p (x6, operands[3])
   12720              :               || !(
   12721              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12722              : (TARGET_AVX512F) && 
   12723              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12724              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12725              :             return -1;
   12726              :           return 3917; /* avx512vl_fmadd_v16hf_mask3 */
   12727              : 
   12728              :         case 16:
   12729              :           if (pattern1296 (x2, 
   12730              : E_V8HFmode, 
   12731              : E_QImode) != 0)
   12732              :             return -1;
   12733              :           if (nonimmediate_operand (operands[1], E_V8HFmode)
   12734              :               && vector_operand (operands[3], E_V8HFmode))
   12735              :             {
   12736              :               x6 = XEXP (x2, 1);
   12737              :               if (rtx_equal_p (x6, operands[1])
   12738              :                   && (
   12739              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12740              : (TARGET_AVX512F && 1) && 
   12741              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12742              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12743              :                 return 3906; /* avx512fp16_fmadd_v8hf_mask */
   12744              :             }
   12745              :           if (!vector_operand (operands[1], E_V8HFmode)
   12746              :               || !nonimmediate_operand (operands[3], E_V8HFmode))
   12747              :             return -1;
   12748              :           x6 = XEXP (x2, 1);
   12749              :           if (!rtx_equal_p (x6, operands[3])
   12750              :               || !(
   12751              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12752              : (TARGET_AVX512F) && 
   12753              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12754              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12755              :             return -1;
   12756              :           return 3919; /* avx512fp16_fmadd_v8hf_mask3 */
   12757              : 
   12758              :         case 17:
   12759              :           if (pattern1296 (x2, 
   12760              : E_V16SFmode, 
   12761              : E_HImode) != 0)
   12762              :             return -1;
   12763              :           if (nonimmediate_operand (operands[1], E_V16SFmode)
   12764              :               && vector_operand (operands[3], E_V16SFmode))
   12765              :             {
   12766              :               x6 = XEXP (x2, 1);
   12767              :               if (rtx_equal_p (x6, operands[1])
   12768              :                   && 
   12769              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12770              : (TARGET_AVX512F && 1))
   12771              :                 return 3907; /* avx512f_fmadd_v16sf_mask */
   12772              :             }
   12773              :           if (!vector_operand (operands[1], E_V16SFmode)
   12774              :               || !nonimmediate_operand (operands[3], E_V16SFmode))
   12775              :             return -1;
   12776              :           x6 = XEXP (x2, 1);
   12777              :           if (!rtx_equal_p (x6, operands[3])
   12778              :               || !
   12779              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12780              : (TARGET_AVX512F))
   12781              :             return -1;
   12782              :           return 3921; /* avx512f_fmadd_v16sf_mask3 */
   12783              : 
   12784              :         case 18:
   12785              :           if (pattern1296 (x2, 
   12786              : E_V8SFmode, 
   12787              : E_QImode) != 0)
   12788              :             return -1;
   12789              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   12790              :               && vector_operand (operands[3], E_V8SFmode))
   12791              :             {
   12792              :               x6 = XEXP (x2, 1);
   12793              :               if (rtx_equal_p (x6, operands[1])
   12794              :                   && (
   12795              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12796              : (TARGET_AVX512F && 1) && 
   12797              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12798              : (TARGET_AVX512VL)))
   12799              :                 return 3909; /* avx512vl_fmadd_v8sf_mask */
   12800              :             }
   12801              :           if (!vector_operand (operands[1], E_V8SFmode)
   12802              :               || !nonimmediate_operand (operands[3], E_V8SFmode))
   12803              :             return -1;
   12804              :           x6 = XEXP (x2, 1);
   12805              :           if (!rtx_equal_p (x6, operands[3])
   12806              :               || !(
   12807              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12808              : (TARGET_AVX512F) && 
   12809              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12810              : (TARGET_AVX512VL)))
   12811              :             return -1;
   12812              :           return 3923; /* avx512vl_fmadd_v8sf_mask3 */
   12813              : 
   12814              :         case 19:
   12815              :           if (pattern1296 (x2, 
   12816              : E_V4SFmode, 
   12817              : E_QImode) != 0)
   12818              :             return -1;
   12819              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   12820              :               && vector_operand (operands[3], E_V4SFmode))
   12821              :             {
   12822              :               x6 = XEXP (x2, 1);
   12823              :               if (rtx_equal_p (x6, operands[1])
   12824              :                   && (
   12825              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12826              : (TARGET_AVX512F && 1) && 
   12827              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12828              : (TARGET_AVX512VL)))
   12829              :                 return 3910; /* avx512vl_fmadd_v4sf_mask */
   12830              :             }
   12831              :           if (!vector_operand (operands[1], E_V4SFmode)
   12832              :               || !nonimmediate_operand (operands[3], E_V4SFmode))
   12833              :             return -1;
   12834              :           x6 = XEXP (x2, 1);
   12835              :           if (!rtx_equal_p (x6, operands[3])
   12836              :               || !(
   12837              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12838              : (TARGET_AVX512F) && 
   12839              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12840              : (TARGET_AVX512VL)))
   12841              :             return -1;
   12842              :           return 3925; /* avx512vl_fmadd_v4sf_mask3 */
   12843              : 
   12844              :         case 20:
   12845              :           if (pattern1296 (x2, 
   12846              : E_V8DFmode, 
   12847              : E_QImode) != 0)
   12848              :             return -1;
   12849              :           if (nonimmediate_operand (operands[1], E_V8DFmode)
   12850              :               && vector_operand (operands[3], E_V8DFmode))
   12851              :             {
   12852              :               x6 = XEXP (x2, 1);
   12853              :               if (rtx_equal_p (x6, operands[1])
   12854              :                   && 
   12855              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12856              : (TARGET_AVX512F && 1))
   12857              :                 return 3911; /* avx512f_fmadd_v8df_mask */
   12858              :             }
   12859              :           if (!vector_operand (operands[1], E_V8DFmode)
   12860              :               || !nonimmediate_operand (operands[3], E_V8DFmode))
   12861              :             return -1;
   12862              :           x6 = XEXP (x2, 1);
   12863              :           if (!rtx_equal_p (x6, operands[3])
   12864              :               || !
   12865              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12866              : (TARGET_AVX512F))
   12867              :             return -1;
   12868              :           return 3927; /* avx512f_fmadd_v8df_mask3 */
   12869              : 
   12870              :         case 21:
   12871              :           if (pattern1296 (x2, 
   12872              : E_V4DFmode, 
   12873              : E_QImode) != 0)
   12874              :             return -1;
   12875              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   12876              :               && vector_operand (operands[3], E_V4DFmode))
   12877              :             {
   12878              :               x6 = XEXP (x2, 1);
   12879              :               if (rtx_equal_p (x6, operands[1])
   12880              :                   && (
   12881              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12882              : (TARGET_AVX512F && 1) && 
   12883              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12884              : (TARGET_AVX512VL)))
   12885              :                 return 3913; /* avx512vl_fmadd_v4df_mask */
   12886              :             }
   12887              :           if (!vector_operand (operands[1], E_V4DFmode)
   12888              :               || !nonimmediate_operand (operands[3], E_V4DFmode))
   12889              :             return -1;
   12890              :           x6 = XEXP (x2, 1);
   12891              :           if (!rtx_equal_p (x6, operands[3])
   12892              :               || !(
   12893              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12894              : (TARGET_AVX512F) && 
   12895              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12896              : (TARGET_AVX512VL)))
   12897              :             return -1;
   12898              :           return 3929; /* avx512vl_fmadd_v4df_mask3 */
   12899              : 
   12900              :         case 22:
   12901              :           if (pattern1296 (x2, 
   12902              : E_V2DFmode, 
   12903              : E_QImode) != 0)
   12904              :             return -1;
   12905              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   12906              :               && vector_operand (operands[3], E_V2DFmode))
   12907              :             {
   12908              :               x6 = XEXP (x2, 1);
   12909              :               if (rtx_equal_p (x6, operands[1])
   12910              :                   && (
   12911              : #line 6330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12912              : (TARGET_AVX512F && 1) && 
   12913              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12914              : (TARGET_AVX512VL)))
   12915              :                 return 3914; /* avx512vl_fmadd_v2df_mask */
   12916              :             }
   12917              :           if (!vector_operand (operands[1], E_V2DFmode)
   12918              :               || !nonimmediate_operand (operands[3], E_V2DFmode))
   12919              :             return -1;
   12920              :           x6 = XEXP (x2, 1);
   12921              :           if (!rtx_equal_p (x6, operands[3])
   12922              :               || !(
   12923              : #line 6347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12924              : (TARGET_AVX512F) && 
   12925              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12926              : (TARGET_AVX512VL)))
   12927              :             return -1;
   12928              :           return 3931; /* avx512vl_fmadd_v2df_mask3 */
   12929              : 
   12930              :         case 23:
   12931              :           if (pattern1297 (x2, 
   12932              : E_SImode, 
   12933              : E_V32BFmode) != 0)
   12934              :             return -1;
   12935              :           x6 = XEXP (x2, 1);
   12936              :           if (rtx_equal_p (x6, operands[1])
   12937              :               && 
   12938              : #line 32871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12939              : (TARGET_AVX10_2))
   12940              :             return 10708; /* avx10_2_fmaddbf16_v32bf_mask */
   12941              :           if (!rtx_equal_p (x6, operands[3])
   12942              :               || !
   12943              : #line 32888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12944              : (TARGET_AVX10_2))
   12945              :             return -1;
   12946              :           return 10711; /* avx10_2_fmaddbf16_v32bf_mask3 */
   12947              : 
   12948              :         case 24:
   12949              :           if (pattern1297 (x2, 
   12950              : E_HImode, 
   12951              : E_V16BFmode) != 0)
   12952              :             return -1;
   12953              :           x6 = XEXP (x2, 1);
   12954              :           if (rtx_equal_p (x6, operands[1])
   12955              :               && 
   12956              : #line 32871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12957              : (TARGET_AVX10_2))
   12958              :             return 10709; /* avx10_2_fmaddbf16_v16bf_mask */
   12959              :           if (!rtx_equal_p (x6, operands[3])
   12960              :               || !
   12961              : #line 32888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12962              : (TARGET_AVX10_2))
   12963              :             return -1;
   12964              :           return 10712; /* avx10_2_fmaddbf16_v16bf_mask3 */
   12965              : 
   12966              :         case 25:
   12967              :           if (pattern1297 (x2, 
   12968              : E_QImode, 
   12969              : E_V8BFmode) != 0)
   12970              :             return -1;
   12971              :           x6 = XEXP (x2, 1);
   12972              :           if (rtx_equal_p (x6, operands[1])
   12973              :               && 
   12974              : #line 32871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12975              : (TARGET_AVX10_2))
   12976              :             return 10710; /* avx10_2_fmaddbf16_v8bf_mask */
   12977              :           if (!rtx_equal_p (x6, operands[3])
   12978              :               || !
   12979              : #line 32888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12980              : (TARGET_AVX10_2))
   12981              :             return -1;
   12982              :           return 10713; /* avx10_2_fmaddbf16_v8bf_mask3 */
   12983              : 
   12984              :         case 26:
   12985              :           if (pattern1388 (x2, 
   12986              : E_V8HFmode) != 0
   12987              :               || !(
   12988              : #line 6943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12989              : (TARGET_FMA || TARGET_AVX512F) && 
   12990              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12991              : (TARGET_AVX512FP16)))
   12992              :             return -1;
   12993              :           return 4258; /* *fmai_fmadd_v8hf */
   12994              : 
   12995              :         case 27:
   12996              :           if (pattern1388 (x2, 
   12997              : E_V4SFmode) != 0
   12998              :               || !
   12999              : #line 6943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13000              : (TARGET_FMA || TARGET_AVX512F))
   13001              :             return -1;
   13002              :           return 4260; /* *fmai_fmadd_v4sf */
   13003              : 
   13004              :         case 28:
   13005              :           if (pattern1388 (x2, 
   13006              : E_V2DFmode) != 0
   13007              :               || !(
   13008              : #line 6943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13009              : (TARGET_FMA || TARGET_AVX512F) && 
   13010              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13011              : (TARGET_SSE2)))
   13012              :             return -1;
   13013              :           return 4262; /* *fmai_fmadd_v2df */
   13014              : 
   13015              :         case 29:
   13016              :           return recog_162 (x1, insn, pnum_clobbers);
   13017              : 
   13018              :         default:
   13019              :           return -1;
   13020              :         }
   13021              : 
   13022              :     case NEG:
   13023              :       return recog_164 (x1, insn, pnum_clobbers);
   13024              : 
   13025              :     default:
   13026              :       return -1;
   13027              :     }
   13028              : }
   13029              : 
   13030              :  int
   13031              : recog_194 (rtx x1 ATTRIBUTE_UNUSED,
   13032              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13033              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13034              : {
   13035              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13036              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13037              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   13038              :   int res ATTRIBUTE_UNUSED;
   13039              :   x2 = XEXP (x1, 1);
   13040              :   x3 = XEXP (x2, 0);
   13041              :   x4 = XEXP (x3, 0);
   13042              :   switch (GET_CODE (x4))
   13043              :     {
   13044              :     case REG:
   13045              :     case SUBREG:
   13046              :       switch (pattern146 (x2))
   13047              :         {
   13048              :         case 0:
   13049              :           if (!
   13050              : #line 15460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13051              : (TARGET_AVX512F))
   13052              :             return -1;
   13053              :           return 7278; /* avx512f_truncatev16siv16qi2_mask */
   13054              : 
   13055              :         case 1:
   13056              :           if (!(
   13057              : #line 15632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13058              : (TARGET_AVX512VL) && 
   13059              : #line 15549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13060              : (TARGET_AVX512BW)))
   13061              :             return -1;
   13062              :           return 7314; /* avx512vl_truncatev16hiv16qi2_mask */
   13063              : 
   13064              :         case 2:
   13065              :           if (!
   13066              : #line 15460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13067              : (TARGET_AVX512F))
   13068              :             return -1;
   13069              :           return 7281; /* avx512f_truncatev16siv16hi2_mask */
   13070              : 
   13071              :         case 3:
   13072              :           if (!
   13073              : #line 15460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13074              : (TARGET_AVX512F))
   13075              :             return -1;
   13076              :           return 7284; /* avx512f_truncatev8div8si2_mask */
   13077              : 
   13078              :         case 4:
   13079              :           if (!
   13080              : #line 15460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13081              : (TARGET_AVX512F))
   13082              :             return -1;
   13083              :           return 7287; /* avx512f_truncatev8div8hi2_mask */
   13084              : 
   13085              :         case 5:
   13086              :           if (!
   13087              : #line 15632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13088              : (TARGET_AVX512VL))
   13089              :             return -1;
   13090              :           return 7311; /* avx512vl_truncatev8siv8hi2_mask */
   13091              : 
   13092              :         case 6:
   13093              :           if (!
   13094              : #line 15532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13095              : (TARGET_AVX512BW))
   13096              :             return -1;
   13097              :           return 7294; /* avx512bw_truncatev32hiv32qi2_mask */
   13098              : 
   13099              :         case 7:
   13100              :           if (!
   13101              : #line 15632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13102              : (TARGET_AVX512VL))
   13103              :             return -1;
   13104              :           return 7308; /* avx512vl_truncatev4div4si2_mask */
   13105              : 
   13106              :         default:
   13107              :           return -1;
   13108              :         }
   13109              : 
   13110              :     case LSHIFTRT:
   13111              :       x5 = XEXP (x4, 1);
   13112              :       if (GET_CODE (x5) != CONST_INT)
   13113              :         return -1;
   13114              :       x6 = XEXP (x4, 0);
   13115              :       switch (GET_CODE (x6))
   13116              :         {
   13117              :         case MULT:
   13118              :           if (XWINT (x5, 0) != 16L)
   13119              :             return -1;
   13120              :           x7 = XEXP (x2, 1);
   13121              :           operands[3] = x7;
   13122              :           x8 = XEXP (x2, 2);
   13123              :           operands[4] = x8;
   13124              :           x9 = XEXP (x6, 0);
   13125              :           switch (GET_CODE (x9))
   13126              :             {
   13127              :             case SIGN_EXTEND:
   13128              :               switch (pattern1134 (x2, 
   13129              : SIGN_EXTEND))
   13130              :                 {
   13131              :                 case 0:
   13132              :                   if (!(
   13133              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13134              : (TARGET_AVX512F) && (
   13135              : #line 16745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13136              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13137              :    && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13138              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13139              : (TARGET_AVX512BW))))
   13140              :                     return -1;
   13141              :                   return 7602; /* *smulv32hi3_highpart_mask */
   13142              : 
   13143              :                 case 1:
   13144              :                   if (!(
   13145              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13146              : (TARGET_AVX512F) && (
   13147              : #line 16745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13148              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13149              :    && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13150              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13151              : (TARGET_AVX2))))
   13152              :                     return -1;
   13153              :                   return 7606; /* *smulv16hi3_highpart_mask */
   13154              : 
   13155              :                 case 2:
   13156              :                   if (!(
   13157              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13158              : (TARGET_AVX512F) && 
   13159              : #line 16745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13160              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13161              :    && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   13162              :                     return -1;
   13163              :                   return 7610; /* *smulv8hi3_highpart_mask */
   13164              : 
   13165              :                 default:
   13166              :                   return -1;
   13167              :                 }
   13168              : 
   13169              :             case ZERO_EXTEND:
   13170              :               switch (pattern1134 (x2, 
   13171              : ZERO_EXTEND))
   13172              :                 {
   13173              :                 case 0:
   13174              :                   if (!(
   13175              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13176              : (TARGET_AVX512F) && (
   13177              : #line 16745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13178              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13179              :    && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13180              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13181              : (TARGET_AVX512BW))))
   13182              :                     return -1;
   13183              :                   return 7604; /* *umulv32hi3_highpart_mask */
   13184              : 
   13185              :                 case 1:
   13186              :                   if (!(
   13187              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13188              : (TARGET_AVX512F) && (
   13189              : #line 16745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13190              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13191              :    && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13192              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13193              : (TARGET_AVX2))))
   13194              :                     return -1;
   13195              :                   return 7608; /* *umulv16hi3_highpart_mask */
   13196              : 
   13197              :                 case 2:
   13198              :                   if (!(
   13199              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13200              : (TARGET_AVX512F) && 
   13201              : #line 16745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13202              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13203              :    && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   13204              :                     return -1;
   13205              :                   return 7612; /* *umulv8hi3_highpart_mask */
   13206              : 
   13207              :                 default:
   13208              :                   return -1;
   13209              :                 }
   13210              : 
   13211              :             default:
   13212              :               return -1;
   13213              :             }
   13214              : 
   13215              :         case PLUS:
   13216              :           if (XWINT (x5, 0) != 1L)
   13217              :             return -1;
   13218              :           x9 = XEXP (x6, 0);
   13219              :           switch (GET_CODE (x9))
   13220              :             {
   13221              :             case PLUS:
   13222              :               x10 = XEXP (x9, 0);
   13223              :               if (GET_CODE (x10) != ZERO_EXTEND)
   13224              :                 return -1;
   13225              :               x11 = XEXP (x9, 1);
   13226              :               if (GET_CODE (x11) != ZERO_EXTEND)
   13227              :                 return -1;
   13228              :               x12 = XEXP (x10, 0);
   13229              :               operands[1] = x12;
   13230              :               x13 = XEXP (x11, 0);
   13231              :               operands[2] = x13;
   13232              :               x14 = XEXP (x6, 1);
   13233              :               operands[5] = x14;
   13234              :               x7 = XEXP (x2, 1);
   13235              :               operands[3] = x7;
   13236              :               x8 = XEXP (x2, 2);
   13237              :               operands[4] = x8;
   13238              :               switch (GET_MODE (operands[0]))
   13239              :                 {
   13240              :                 case E_V64QImode:
   13241              :                   if (pattern1559 (x2, 
   13242              : E_DImode, 
   13243              : E_V64QImode, 
   13244              : E_V64HImode) != 0
   13245              :                       || !(
   13246              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13247              : (TARGET_AVX512F) && (
   13248              : #line 22241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13249              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13250              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13251              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13252              : (TARGET_AVX512BW))))
   13253              :                     return -1;
   13254              :                   return 8539; /* *avx512bw_uavgv64qi3_mask */
   13255              : 
   13256              :                 case E_V32QImode:
   13257              :                   if (pattern1559 (x2, 
   13258              : E_SImode, 
   13259              : E_V32QImode, 
   13260              : E_V32HImode) != 0
   13261              :                       || !(
   13262              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13263              : (TARGET_AVX512F) && (
   13264              : #line 22241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13265              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13266              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13267              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13268              : (TARGET_AVX2))))
   13269              :                     return -1;
   13270              :                   return 8541; /* *avx2_uavgv32qi3_mask */
   13271              : 
   13272              :                 case E_V16QImode:
   13273              :                   if (pattern1559 (x2, 
   13274              : E_HImode, 
   13275              : E_V16QImode, 
   13276              : E_V16HImode) != 0
   13277              :                       || !(
   13278              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13279              : (TARGET_AVX512F) && 
   13280              : #line 22241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13281              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13282              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13283              :                     return -1;
   13284              :                   return 8543; /* *sse2_uavgv16qi3_mask */
   13285              : 
   13286              :                 case E_V32HImode:
   13287              :                   if (pattern1559 (x2, 
   13288              : E_SImode, 
   13289              : E_V32HImode, 
   13290              : E_V32SImode) != 0
   13291              :                       || !(
   13292              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13293              : (TARGET_AVX512F) && (
   13294              : #line 22241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13295              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13296              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13297              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13298              : (TARGET_AVX512BW))))
   13299              :                     return -1;
   13300              :                   return 8545; /* *avx512bw_uavgv32hi3_mask */
   13301              : 
   13302              :                 case E_V16HImode:
   13303              :                   if (pattern1559 (x2, 
   13304              : E_HImode, 
   13305              : E_V16HImode, 
   13306              : E_V16SImode) != 0
   13307              :                       || !(
   13308              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13309              : (TARGET_AVX512F) && (
   13310              : #line 22241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13311              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13312              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13313              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13314              : (TARGET_AVX2))))
   13315              :                     return -1;
   13316              :                   return 8547; /* *avx2_uavgv16hi3_mask */
   13317              : 
   13318              :                 case E_V8HImode:
   13319              :                   if (pattern1559 (x2, 
   13320              : E_QImode, 
   13321              : E_V8HImode, 
   13322              : E_V8SImode) != 0
   13323              :                       || !(
   13324              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13325              : (TARGET_AVX512F) && 
   13326              : #line 22241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13327              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13328              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13329              :                     return -1;
   13330              :                   return 8549; /* *sse2_uavgv8hi3_mask */
   13331              : 
   13332              :                 default:
   13333              :                   return -1;
   13334              :                 }
   13335              : 
   13336              :             case LSHIFTRT:
   13337              :               x10 = XEXP (x9, 0);
   13338              :               if (GET_CODE (x10) != MULT)
   13339              :                 return -1;
   13340              :               x12 = XEXP (x10, 0);
   13341              :               if (GET_CODE (x12) != SIGN_EXTEND)
   13342              :                 return -1;
   13343              :               x15 = XEXP (x10, 1);
   13344              :               if (GET_CODE (x15) != SIGN_EXTEND)
   13345              :                 return -1;
   13346              :               x11 = XEXP (x9, 1);
   13347              :               if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
   13348              :                 return -1;
   13349              :               x16 = XEXP (x12, 0);
   13350              :               operands[1] = x16;
   13351              :               if (nonimmediate_operand (operands[1], E_V32HImode))
   13352              :                 {
   13353              :                   res = recog_181 (x1, insn, pnum_clobbers);
   13354              :                   if (res >= 0)
   13355              :                     return res;
   13356              :                 }
   13357              :               x17 = XEXP (x15, 0);
   13358              :               operands[2] = x17;
   13359              :               x14 = XEXP (x6, 1);
   13360              :               operands[3] = x14;
   13361              :               x7 = XEXP (x2, 1);
   13362              :               operands[4] = x7;
   13363              :               x8 = XEXP (x2, 2);
   13364              :               operands[5] = x8;
   13365              :               switch (GET_MODE (operands[0]))
   13366              :                 {
   13367              :                 case E_V32HImode:
   13368              :                   if (pattern1660 (x2, 
   13369              : E_SImode, 
   13370              : E_V32HImode, 
   13371              : E_V32SImode) != 0
   13372              :                       || !(
   13373              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13374              : (TARGET_AVX512F) && (
   13375              : #line 23347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13376              : (TARGET_SSSE3 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13377              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13378              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13379              : (TARGET_AVX512BW))))
   13380              :                     return -1;
   13381              :                   return 8662; /* *avx512bw_pmulhrswv32hi3_mask */
   13382              : 
   13383              :                 case E_V16HImode:
   13384              :                   if (pattern1660 (x2, 
   13385              : E_HImode, 
   13386              : E_V16HImode, 
   13387              : E_V16SImode) != 0
   13388              :                       || !(
   13389              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13390              : (TARGET_AVX512F) && (
   13391              : #line 23347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13392              : (TARGET_SSSE3 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13393              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13394              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13395              : (TARGET_AVX2))))
   13396              :                     return -1;
   13397              :                   return 8664; /* *avx2_pmulhrswv16hi3_mask */
   13398              : 
   13399              :                 case E_V8HImode:
   13400              :                   if (pattern1660 (x2, 
   13401              : E_QImode, 
   13402              : E_V8HImode, 
   13403              : E_V8SImode) != 0
   13404              :                       || !(
   13405              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13406              : (TARGET_AVX512F) && 
   13407              : #line 23347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13408              : (TARGET_SSSE3 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13409              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13410              :                     return -1;
   13411              :                   return 8666; /* *ssse3_pmulhrswv8hi3_mask */
   13412              : 
   13413              :                 default:
   13414              :                   return -1;
   13415              :                 }
   13416              : 
   13417              :             default:
   13418              :               return -1;
   13419              :             }
   13420              : 
   13421              :         default:
   13422              :           return -1;
   13423              :         }
   13424              : 
   13425              :     default:
   13426              :       return -1;
   13427              :     }
   13428              : }
   13429              : 
   13430              :  int
   13431              : recog_207 (rtx x1 ATTRIBUTE_UNUSED,
   13432              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13433              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13434              : {
   13435              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13436              :   rtx x2, x3, x4, x5, x6, x7;
   13437              :   int res ATTRIBUTE_UNUSED;
   13438              :   x2 = XEXP (x1, 1);
   13439              :   x3 = XEXP (x2, 0);
   13440              :   x4 = XEXP (x3, 0);
   13441              :   operands[1] = x4;
   13442              :   x5 = XEXP (x3, 1);
   13443              :   operands[2] = x5;
   13444              :   x6 = XEXP (x2, 2);
   13445              :   switch (GET_CODE (x6))
   13446              :     {
   13447              :     case CONST_INT:
   13448              :       switch (pattern138 (x2))
   13449              :         {
   13450              :         case 0:
   13451              :           if (!(
   13452              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13453              : (TARGET_SSE) && 
   13454              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13455              : (TARGET_AVX512FP16)))
   13456              :             return -1;
   13457              :           return 2894; /* avx512fp16_vmdivv8hf3 */
   13458              : 
   13459              :         case 1:
   13460              :           if (!
   13461              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13462              : (TARGET_SSE))
   13463              :             return -1;
   13464              :           return 2902; /* sse_vmdivv4sf3 */
   13465              : 
   13466              :         case 2:
   13467              :           if (!(
   13468              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13469              : (TARGET_SSE) && 
   13470              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13471              : (TARGET_SSE2)))
   13472              :             return -1;
   13473              :           return 2910; /* sse2_vmdivv2df3 */
   13474              : 
   13475              :         default:
   13476              :           return -1;
   13477              :         }
   13478              : 
   13479              :     case REG:
   13480              :     case SUBREG:
   13481              :       operands[4] = x6;
   13482              :       x7 = XEXP (x2, 1);
   13483              :       operands[3] = x7;
   13484              :       switch (GET_MODE (operands[0]))
   13485              :         {
   13486              :         case E_V32HFmode:
   13487              :           if (pattern1015 (x2, 
   13488              : E_V32HFmode, 
   13489              : E_SImode) != 0
   13490              :               || !(
   13491              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13492              : (TARGET_AVX512F) && (
   13493              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13494              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13495              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13496              : (TARGET_AVX512FP16))))
   13497              :             return -1;
   13498              :           return 2916; /* avx512fp16_divv32hf3_mask */
   13499              : 
   13500              :         case E_V16HFmode:
   13501              :           if (pattern1015 (x2, 
   13502              : E_V16HFmode, 
   13503              : E_HImode) != 0
   13504              :               || !(
   13505              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13506              : (TARGET_AVX512F) && (
   13507              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13508              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13509              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13510              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13511              :             return -1;
   13512              :           return 2919; /* avx512fp16_divv16hf3_mask */
   13513              : 
   13514              :         case E_V8HFmode:
   13515              :           if (pattern1015 (x2, 
   13516              : E_V8HFmode, 
   13517              : E_QImode) != 0
   13518              :               || !(
   13519              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13520              : (TARGET_AVX512F) && (
   13521              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13522              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
   13523              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13524              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13525              :             return -1;
   13526              :           return 2921; /* avx512fp16_divv8hf3_mask */
   13527              : 
   13528              :         case E_V16SFmode:
   13529              :           if (pattern1015 (x2, 
   13530              : E_V16SFmode, 
   13531              : E_HImode) != 0
   13532              :               || !(
   13533              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13534              : (TARGET_AVX512F) && (
   13535              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13536              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13537              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13538              : (TARGET_AVX512F))))
   13539              :             return -1;
   13540              :           return 2924; /* avx512f_divv16sf3_mask */
   13541              : 
   13542              :         case E_V8SFmode:
   13543              :           if (pattern1015 (x2, 
   13544              : E_V8SFmode, 
   13545              : E_QImode) != 0
   13546              :               || !(
   13547              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13548              : (TARGET_AVX512F) && (
   13549              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13550              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13551              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13552              : (TARGET_AVX))))
   13553              :             return -1;
   13554              :           return 2927; /* avx_divv8sf3_mask */
   13555              : 
   13556              :         case E_V4SFmode:
   13557              :           if (pattern1015 (x2, 
   13558              : E_V4SFmode, 
   13559              : E_QImode) != 0
   13560              :               || !(
   13561              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13562              : (TARGET_AVX512F) && 
   13563              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13564              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1)))
   13565              :             return -1;
   13566              :           return 2929; /* sse_divv4sf3_mask */
   13567              : 
   13568              :         case E_V8DFmode:
   13569              :           if (pattern1015 (x2, 
   13570              : E_V8DFmode, 
   13571              : E_QImode) != 0
   13572              :               || !(
   13573              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13574              : (TARGET_AVX512F) && (
   13575              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13576              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13577              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13578              : (TARGET_AVX512F))))
   13579              :             return -1;
   13580              :           return 2932; /* avx512f_divv8df3_mask */
   13581              : 
   13582              :         case E_V4DFmode:
   13583              :           if (pattern1015 (x2, 
   13584              : E_V4DFmode, 
   13585              : E_QImode) != 0
   13586              :               || !(
   13587              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13588              : (TARGET_AVX512F) && (
   13589              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13590              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13591              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13592              : (TARGET_AVX))))
   13593              :             return -1;
   13594              :           return 2935; /* avx_divv4df3_mask */
   13595              : 
   13596              :         case E_V2DFmode:
   13597              :           if (pattern1015 (x2, 
   13598              : E_V2DFmode, 
   13599              : E_QImode) != 0
   13600              :               || !(
   13601              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13602              : (TARGET_AVX512F) && (
   13603              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13604              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
   13605              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13606              : (TARGET_SSE2))))
   13607              :             return -1;
   13608              :           return 2937; /* sse2_divv2df3_mask */
   13609              : 
   13610              :         case E_V32BFmode:
   13611              :           if (pattern136 (x2, 
   13612              : E_V32BFmode, 
   13613              : E_SImode) != 0
   13614              :               || !(
   13615              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13616              : (TARGET_AVX512F) && 
   13617              : #line 32828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13618              : (TARGET_AVX10_2)))
   13619              :             return -1;
   13620              :           return 10685; /* avx10_2_divbf16_v32bf_mask */
   13621              : 
   13622              :         case E_V16BFmode:
   13623              :           if (pattern136 (x2, 
   13624              : E_V16BFmode, 
   13625              : E_HImode) != 0
   13626              :               || !(
   13627              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13628              : (TARGET_AVX512F) && 
   13629              : #line 32828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13630              : (TARGET_AVX10_2)))
   13631              :             return -1;
   13632              :           return 10693; /* avx10_2_divbf16_v16bf_mask */
   13633              : 
   13634              :         case E_V8BFmode:
   13635              :           if (pattern136 (x2, 
   13636              : E_V8BFmode, 
   13637              : E_QImode) != 0
   13638              :               || !(
   13639              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13640              : (TARGET_AVX512F) && 
   13641              : #line 32828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13642              : (TARGET_AVX10_2)))
   13643              :             return -1;
   13644              :           return 10701; /* avx10_2_divbf16_v8bf_mask */
   13645              : 
   13646              :         default:
   13647              :           return -1;
   13648              :         }
   13649              : 
   13650              :     default:
   13651              :       return -1;
   13652              :     }
   13653              : }
   13654              : 
   13655              :  int
   13656              : recog_215 (rtx x1 ATTRIBUTE_UNUSED,
   13657              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13658              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13659              : {
   13660              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13661              :   rtx x2, x3;
   13662              :   int res ATTRIBUTE_UNUSED;
   13663              :   x2 = XEXP (x1, 1);
   13664              :   x3 = XVECEXP (x2, 0, 0);
   13665              :   operands[1] = x3;
   13666              :   switch (GET_MODE (operands[0]))
   13667              :     {
   13668              :     case E_V8HImode:
   13669              :       if (!register_operand (operands[0], E_V8HImode)
   13670              :           || GET_MODE (x2) != E_V8HImode
   13671              :           || !vector_operand (operands[1], E_V8HFmode)
   13672              :           || !(
   13673              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13674              : (TARGET_AVX512FP16) && 
   13675              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13676              : (TARGET_AVX512VL)))
   13677              :         return -1;
   13678              :       return 4604; /* unspec_avx512fp16_fix_truncv8hi2 */
   13679              : 
   13680              :     case E_V16HImode:
   13681              :       if (!register_operand (operands[0], E_V16HImode)
   13682              :           || GET_MODE (x2) != E_V16HImode
   13683              :           || !vector_operand (operands[1], E_V16HFmode)
   13684              :           || !(
   13685              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13686              : (TARGET_AVX512FP16) && 
   13687              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13688              : (TARGET_AVX512VL)))
   13689              :         return -1;
   13690              :       return 4612; /* unspec_avx512fp16_fix_truncv16hi2 */
   13691              : 
   13692              :     case E_V32HImode:
   13693              :       if (!register_operand (operands[0], E_V32HImode)
   13694              :           || GET_MODE (x2) != E_V32HImode
   13695              :           || !vector_operand (operands[1], E_V32HFmode)
   13696              :           || !
   13697              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13698              : (TARGET_AVX512FP16))
   13699              :         return -1;
   13700              :       return 4620; /* unspec_avx512fp16_fix_truncv32hi2 */
   13701              : 
   13702              :     case E_V8SImode:
   13703              :       switch (pattern652 (x2, 
   13704              : E_V8SImode))
   13705              :         {
   13706              :         case 0:
   13707              :           if (!(
   13708              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13709              : (TARGET_AVX512FP16) && 
   13710              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13711              : (TARGET_AVX512VL)))
   13712              :             return -1;
   13713              :           return 4628; /* unspec_avx512fp16_fix_truncv8si2 */
   13714              : 
   13715              :         case 1:
   13716              :           if (!
   13717              : #line 9117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13718              : (TARGET_AVX && 1))
   13719              :             return -1;
   13720              :           return 4926; /* unspec_fix_truncv8sfv8si2 */
   13721              : 
   13722              :         case 2:
   13723              :           if (!
   13724              : #line 9890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13725              : (TARGET_AVX512F))
   13726              :             return -1;
   13727              :           return 5059; /* unspec_fix_truncv8dfv8si2 */
   13728              : 
   13729              :         default:
   13730              :           return -1;
   13731              :         }
   13732              : 
   13733              :     case E_V16SImode:
   13734              :       switch (pattern653 (x2, 
   13735              : E_V16SImode))
   13736              :         {
   13737              :         case 0:
   13738              :           if (!
   13739              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13740              : (TARGET_AVX512FP16))
   13741              :             return -1;
   13742              :           return 4636; /* unspec_avx512fp16_fix_truncv16si2 */
   13743              : 
   13744              :         case 1:
   13745              :           if (!
   13746              : #line 9097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13747              : (TARGET_AVX512F))
   13748              :             return -1;
   13749              :           return 4910; /* unspec_fix_truncv16sfv16si2 */
   13750              : 
   13751              :         default:
   13752              :           return -1;
   13753              :         }
   13754              : 
   13755              :     case E_V8DImode:
   13756              :       switch (pattern654 (x2))
   13757              :         {
   13758              :         case 0:
   13759              :           if (!
   13760              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13761              : (TARGET_AVX512FP16))
   13762              :             return -1;
   13763              :           return 4644; /* unspec_avx512fp16_fix_truncv8di2 */
   13764              : 
   13765              :         case 1:
   13766              :           if (!
   13767              : #line 10019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13768              : (TARGET_AVX512DQ && 1))
   13769              :             return -1;
   13770              :           return 5088; /* unspec_fix_truncv8dfv8di2 */
   13771              : 
   13772              :         case 2:
   13773              :           if (!
   13774              : #line 10062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13775              : (TARGET_AVX512DQ && 1))
   13776              :             return -1;
   13777              :           return 5136; /* unspec_fix_truncv8sfv8di2 */
   13778              : 
   13779              :         default:
   13780              :           return -1;
   13781              :         }
   13782              : 
   13783              :     case E_V4SImode:
   13784              :       if (!register_operand (operands[0], E_V4SImode)
   13785              :           || GET_MODE (x2) != E_V4SImode)
   13786              :         return -1;
   13787              :       switch (GET_MODE (operands[1]))
   13788              :         {
   13789              :         case E_V8HFmode:
   13790              :           if (!register_operand (operands[1], E_V8HFmode)
   13791              :               || !
   13792              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13793              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   13794              :             return -1;
   13795              :           return 4700; /* unspec_avx512fp16_fix_truncv4si2 */
   13796              : 
   13797              :         case E_V4SFmode:
   13798              :           if (!vector_operand (operands[1], E_V4SFmode)
   13799              :               || !
   13800              : #line 9136 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13801              : (TARGET_SSE2 && 1))
   13802              :             return -1;
   13803              :           return 4930; /* unspec_fix_truncv4sfv4si2 */
   13804              : 
   13805              :         case E_V4DFmode:
   13806              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   13807              :               || !
   13808              : #line 9980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13809              : (TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F)))
   13810              :             return -1;
   13811              :           return 5080; /* unspec_fix_truncv4dfv4si2 */
   13812              : 
   13813              :         case E_V2DFmode:
   13814              :           if (!vector_operand (operands[1], E_V2DFmode)
   13815              :               || !
   13816              : #line 10262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13817              : (TARGET_SSE2 && 1))
   13818              :             return -1;
   13819              :           return 5176; /* unspec_sse2_cvttpd2dq */
   13820              : 
   13821              :         default:
   13822              :           return -1;
   13823              :         }
   13824              : 
   13825              :     case E_V4DImode:
   13826              :       switch (pattern655 (x2))
   13827              :         {
   13828              :         case 0:
   13829              :           if (!
   13830              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13831              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   13832              :             return -1;
   13833              :           return 4704; /* unspec_avx512fp16_fix_truncv4di2 */
   13834              : 
   13835              :         case 1:
   13836              :           if (!(
   13837              : #line 10019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13838              : (TARGET_AVX512DQ && 1) && 
   13839              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13840              : (TARGET_AVX512VL)))
   13841              :             return -1;
   13842              :           return 5096; /* unspec_fix_truncv4dfv4di2 */
   13843              : 
   13844              :         case 2:
   13845              :           if (!(
   13846              : #line 10062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13847              : (TARGET_AVX512DQ && 1) && 
   13848              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13849              : (TARGET_AVX512VL)))
   13850              :             return -1;
   13851              :           return 5144; /* unspec_fix_truncv4sfv4di2 */
   13852              : 
   13853              :         default:
   13854              :           return -1;
   13855              :         }
   13856              : 
   13857              :     case E_V2DImode:
   13858              :       switch (pattern656 (x2))
   13859              :         {
   13860              :         case 0:
   13861              :           if (!
   13862              : #line 8290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13863              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   13864              :             return -1;
   13865              :           return 4724; /* unspec_avx512fp16_fix_truncv2di2 */
   13866              : 
   13867              :         case 1:
   13868              :           if (!(
   13869              : #line 10019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13870              : (TARGET_AVX512DQ && 1) && 
   13871              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13872              : (TARGET_AVX512VL)))
   13873              :             return -1;
   13874              :           return 5100; /* unspec_fix_truncv2dfv2di2 */
   13875              : 
   13876              :         case 2:
   13877              :           if (!
   13878              : #line 10083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13879              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   13880              :             return -1;
   13881              :           return 5160; /* unspec_avx512dq_fix_truncv2sfv2di2 */
   13882              : 
   13883              :         default:
   13884              :           return -1;
   13885              :         }
   13886              : 
   13887              :     default:
   13888              :       return -1;
   13889              :     }
   13890              : }
   13891              : 
   13892              :  int
   13893              : recog_230 (rtx x1 ATTRIBUTE_UNUSED,
   13894              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13895              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13896              : {
   13897              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13898              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13899              :   rtx x10, x11, x12, x13, x14;
   13900              :   int res ATTRIBUTE_UNUSED;
   13901              :   x2 = XEXP (x1, 1);
   13902              :   x3 = XVECEXP (x2, 0, 0);
   13903              :   x4 = XEXP (x3, 2);
   13904              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13905              :     return -1;
   13906              :   x5 = XEXP (x3, 0);
   13907              :   x6 = XEXP (x5, 0);
   13908              :   switch (GET_CODE (x6))
   13909              :     {
   13910              :     case SQRT:
   13911              :       x7 = XEXP (x6, 0);
   13912              :       operands[1] = x7;
   13913              :       x8 = XEXP (x3, 1);
   13914              :       operands[2] = x8;
   13915              :       x9 = XVECEXP (x2, 0, 1);
   13916              :       operands[3] = x9;
   13917              :       if (!const_4_or_8_to_11_operand (operands[3], E_SImode))
   13918              :         return -1;
   13919              :       switch (GET_MODE (operands[0]))
   13920              :         {
   13921              :         case E_V8HFmode:
   13922              :           if (pattern1414 (x2, 
   13923              : E_V8HFmode, 
   13924              : E_HFmode) != 0
   13925              :               || !(
   13926              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13927              : (TARGET_AVX512F) && (
   13928              : #line 3125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13929              : (TARGET_SSE) && 
   13930              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13931              : (TARGET_AVX512FP16))))
   13932              :             return -1;
   13933              :           return 3004; /* *avx512fp16_vmsqrtv8hf2_round */
   13934              : 
   13935              :         case E_V4SFmode:
   13936              :           if (pattern1414 (x2, 
   13937              : E_V4SFmode, 
   13938              : E_SFmode) != 0
   13939              :               || !(
   13940              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13941              : (TARGET_AVX512F) && 
   13942              : #line 3125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13943              : (TARGET_SSE)))
   13944              :             return -1;
   13945              :           return 3008; /* *sse_vmsqrtv4sf2_round */
   13946              : 
   13947              :         case E_V2DFmode:
   13948              :           if (pattern1414 (x2, 
   13949              : E_V2DFmode, 
   13950              : E_DFmode) != 0
   13951              :               || !(
   13952              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13953              : (TARGET_AVX512F) && (
   13954              : #line 3125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13955              : (TARGET_SSE) && 
   13956              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13957              : (TARGET_SSE2))))
   13958              :             return -1;
   13959              :           return 3012; /* *sse2_vmsqrtv2df2_round */
   13960              : 
   13961              :         default:
   13962              :           return -1;
   13963              :         }
   13964              : 
   13965              :     case FLOAT:
   13966              :       switch (pattern910 (x2))
   13967              :         {
   13968              :         case 0:
   13969              :           if (!(
   13970              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13971              : (TARGET_AVX512F) && 
   13972              : #line 8185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13973              : (TARGET_AVX512FP16)))
   13974              :             return -1;
   13975              :           return 4597; /* avx512fp16_vcvtsi2sh_round */
   13976              : 
   13977              :         case 1:
   13978              :           if (!(
   13979              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13980              : (TARGET_AVX512F) && (
   13981              : #line 8185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13982              : (TARGET_AVX512FP16) && 
   13983              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   13984              : (TARGET_64BIT))))
   13985              :             return -1;
   13986              :           return 4601; /* avx512fp16_vcvtsi2shq_round */
   13987              : 
   13988              :         case 2:
   13989              :           if (!(
   13990              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13991              : (TARGET_AVX512F) && 
   13992              : #line 8851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13993              : (TARGET_SSE)))
   13994              :             return -1;
   13995              :           return 4830; /* sse_cvtsi2ss_round */
   13996              : 
   13997              :         case 3:
   13998              :           if (!(
   13999              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14000              : (TARGET_AVX512F) && (
   14001              : #line 8851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14002              : (TARGET_SSE) && 
   14003              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14004              : (TARGET_64BIT))))
   14005              :             return -1;
   14006              :           return 4832; /* sse_cvtsi2ssq_round */
   14007              : 
   14008              :         case 4:
   14009              :           if (!(
   14010              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14011              : (TARGET_AVX512F) && 
   14012              : #line 9334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14013              : (TARGET_SSE2 && TARGET_64BIT)))
   14014              :             return -1;
   14015              :           return 4943; /* sse2_cvtsi2sdq_round */
   14016              : 
   14017              :         default:
   14018              :           return -1;
   14019              :         }
   14020              : 
   14021              :     case UNSIGNED_FLOAT:
   14022              :       switch (pattern910 (x2))
   14023              :         {
   14024              :         case 0:
   14025              :           if (!(
   14026              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14027              : (TARGET_AVX512F) && 
   14028              : #line 8185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14029              : (TARGET_AVX512FP16)))
   14030              :             return -1;
   14031              :           return 4599; /* avx512fp16_vcvtusi2sh_round */
   14032              : 
   14033              :         case 1:
   14034              :           if (!(
   14035              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14036              : (TARGET_AVX512F) && (
   14037              : #line 8185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14038              : (TARGET_AVX512FP16) && 
   14039              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14040              : (TARGET_64BIT))))
   14041              :             return -1;
   14042              :           return 4603; /* avx512fp16_vcvtusi2shq_round */
   14043              : 
   14044              :         case 2:
   14045              :           if (!(
   14046              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14047              : (TARGET_AVX512F) && 
   14048              : #line 8947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14049              : (TARGET_AVX512F && (V4SFmode == V4SFmode))))
   14050              :             return -1;
   14051              :           return 4848; /* cvtusi2ss32_round */
   14052              : 
   14053              :         case 3:
   14054              :           if (!(
   14055              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14056              : (TARGET_AVX512F) && 
   14057              : #line 8961 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14058              : (TARGET_AVX512F && TARGET_64BIT)))
   14059              :             return -1;
   14060              :           return 4851; /* cvtusi2ss64_round */
   14061              : 
   14062              :         case 4:
   14063              :           if (!(
   14064              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14065              : (TARGET_AVX512F) && (
   14066              : #line 8961 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14067              : (TARGET_AVX512F && TARGET_64BIT) && 
   14068              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14069              : (TARGET_SSE2))))
   14070              :             return -1;
   14071              :           return 4853; /* cvtusi2sd64_round */
   14072              : 
   14073              :         default:
   14074              :           return -1;
   14075              :         }
   14076              : 
   14077              :     case FLOAT_EXTEND:
   14078              :       x7 = XEXP (x6, 0);
   14079              :       if (pattern908 (x7, 
   14080              : 1, 
   14081              : E_HFmode) != 0)
   14082              :         return -1;
   14083              :       x10 = XEXP (x7, 0);
   14084              :       operands[1] = x10;
   14085              :       if (!register_operand (operands[1], E_V8HFmode))
   14086              :         return -1;
   14087              :       x8 = XEXP (x3, 1);
   14088              :       operands[2] = x8;
   14089              :       x9 = XVECEXP (x2, 0, 1);
   14090              :       operands[3] = x9;
   14091              :       if (!const48_operand (operands[3], E_SImode))
   14092              :         return -1;
   14093              :       switch (GET_MODE (operands[0]))
   14094              :         {
   14095              :         case E_V2DFmode:
   14096              :           if (pattern1693 (x2, 
   14097              : E_V2DFmode, 
   14098              : E_DFmode) != 0
   14099              :               || !(
   14100              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14101              : (TARGET_AVX512F) && 
   14102              : #line 8632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14103              : (TARGET_AVX512FP16)))
   14104              :             return -1;
   14105              :           return 4803; /* avx512fp16_vcvtsh2sd_round */
   14106              : 
   14107              :         case E_V4SFmode:
   14108              :           if (pattern1693 (x2, 
   14109              : E_V4SFmode, 
   14110              : E_SFmode) != 0
   14111              :               || !(
   14112              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14113              : (TARGET_AVX512F) && 
   14114              : #line 8632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14115              : (TARGET_AVX512FP16)))
   14116              :             return -1;
   14117              :           return 4807; /* avx512fp16_vcvtsh2ss_round */
   14118              : 
   14119              :         default:
   14120              :           return -1;
   14121              :         }
   14122              : 
   14123              :     case FLOAT_TRUNCATE:
   14124              :       x9 = XVECEXP (x2, 0, 1);
   14125              :       operands[3] = x9;
   14126              :       if (!const_4_or_8_to_11_operand (operands[3], E_SImode))
   14127              :         return -1;
   14128              :       x7 = XEXP (x6, 0);
   14129              :       switch (GET_CODE (x7))
   14130              :         {
   14131              :         case VEC_SELECT:
   14132              :           x11 = XEXP (x7, 1);
   14133              :           if (GET_CODE (x11) != PARALLEL
   14134              :               || XVECLEN (x11, 0) != 1)
   14135              :             return -1;
   14136              :           x12 = XVECEXP (x11, 0, 0);
   14137              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   14138              :               || pattern1415 (x2, 
   14139              : E_HFmode, 
   14140              : E_V8HFmode) != 0)
   14141              :             return -1;
   14142              :           x10 = XEXP (x7, 0);
   14143              :           operands[1] = x10;
   14144              :           x8 = XEXP (x3, 1);
   14145              :           operands[2] = x8;
   14146              :           if (!register_operand (operands[2], E_V8HFmode))
   14147              :             return -1;
   14148              :           switch (GET_MODE (x7))
   14149              :             {
   14150              :             case E_DFmode:
   14151              :               if (!register_operand (operands[1], E_V2DFmode)
   14152              :                   || !(
   14153              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14154              : (TARGET_AVX512F) && 
   14155              : #line 8662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14156              : (TARGET_AVX512FP16)))
   14157              :                 return -1;
   14158              :               return 4814; /* avx512fp16_vcvtsd2sh_round */
   14159              : 
   14160              :             case E_SFmode:
   14161              :               if (!register_operand (operands[1], E_V4SFmode)
   14162              :                   || !(
   14163              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14164              : (TARGET_AVX512F) && 
   14165              : #line 8662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14166              : (TARGET_AVX512FP16)))
   14167              :                 return -1;
   14168              :               return 4818; /* avx512fp16_vcvtss2sh_round */
   14169              : 
   14170              :             default:
   14171              :               return -1;
   14172              :             }
   14173              : 
   14174              :         case REG:
   14175              :         case SUBREG:
   14176              :         case MEM:
   14177              :           operands[2] = x7;
   14178              :           if (!nonimmediate_operand (operands[2], E_V2DFmode)
   14179              :               || pattern1415 (x2, 
   14180              : E_V2SFmode, 
   14181              : E_V4SFmode) != 0)
   14182              :             return -1;
   14183              :           x8 = XEXP (x3, 1);
   14184              :           operands[1] = x8;
   14185              :           if (!register_operand (operands[1], E_V4SFmode)
   14186              :               || !(
   14187              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14188              : (TARGET_AVX512F) && 
   14189              : #line 10333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14190              : (TARGET_SSE2)))
   14191              :             return -1;
   14192              :           return 5182; /* sse2_cvtsd2ss_round */
   14193              : 
   14194              :         default:
   14195              :           return -1;
   14196              :         }
   14197              : 
   14198              :     case UNSPEC:
   14199              :       if (XVECLEN (x6, 0) != 2
   14200              :           || XINT (x6, 1) != 95)
   14201              :         return -1;
   14202              :       x13 = XVECEXP (x6, 0, 0);
   14203              :       operands[2] = x13;
   14204              :       x14 = XVECEXP (x6, 0, 1);
   14205              :       operands[3] = x14;
   14206              :       if (!const_0_to_255_operand (operands[3], E_SImode))
   14207              :         return -1;
   14208              :       x8 = XEXP (x3, 1);
   14209              :       operands[1] = x8;
   14210              :       x9 = XVECEXP (x2, 0, 1);
   14211              :       operands[4] = x9;
   14212              :       if (!const48_operand (operands[4], E_SImode))
   14213              :         return -1;
   14214              :       switch (GET_MODE (operands[0]))
   14215              :         {
   14216              :         case E_V8HFmode:
   14217              :           if (pattern1596 (x2, 
   14218              : E_V8HFmode, 
   14219              : E_HFmode) != 0
   14220              :               || !(
   14221              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14222              : (TARGET_AVX512F) && (
   14223              : #line 14580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14224              : (TARGET_AVX512F) && 
   14225              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14226              : (TARGET_AVX512FP16))))
   14227              :             return -1;
   14228              :           return 7221; /* *avx512f_rndscalev8hf_round */
   14229              : 
   14230              :         case E_V4SFmode:
   14231              :           if (pattern1596 (x2, 
   14232              : E_V4SFmode, 
   14233              : E_SFmode) != 0
   14234              :               || !
   14235              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14236              : (TARGET_AVX512F))
   14237              :             return -1;
   14238              :           return 7223; /* *avx512f_rndscalev4sf_round */
   14239              : 
   14240              :         case E_V2DFmode:
   14241              :           if (pattern1596 (x2, 
   14242              : E_V2DFmode, 
   14243              : E_DFmode) != 0
   14244              :               || !(
   14245              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14246              : (TARGET_AVX512F) && (
   14247              : #line 14580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14248              : (TARGET_AVX512F) && 
   14249              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14250              : (TARGET_SSE2))))
   14251              :             return -1;
   14252              :           return 7225; /* *avx512f_rndscalev2df_round */
   14253              : 
   14254              :         default:
   14255              :           return -1;
   14256              :         }
   14257              : 
   14258              :     default:
   14259              :       return -1;
   14260              :     }
   14261              : }
   14262              : 
   14263              :  int
   14264              : recog_232 (rtx x1 ATTRIBUTE_UNUSED,
   14265              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14266              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14267              : {
   14268              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14269              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   14270              :   rtx x10, x11, x12, x13, x14;
   14271              :   int res ATTRIBUTE_UNUSED;
   14272              :   x2 = XEXP (x1, 1);
   14273              :   x3 = XVECEXP (x2, 0, 0);
   14274              :   x4 = XEXP (x3, 0);
   14275              :   switch (GET_CODE (x4))
   14276              :     {
   14277              :     case PLUS:
   14278              :       switch (pattern660 (x2))
   14279              :         {
   14280              :         case 0:
   14281              :           if (!(
   14282              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14283              : (TARGET_AVX512F) && (
   14284              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14285              : (TARGET_AVX512F) && (
   14286              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14287              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V32HFmode, operands)
   14288              :    && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14289              :                                                               || V32HFmode == V8DFmode
   14290              :                                                               || V32HFmode == V8DImode
   14291              :                                                               || V32HFmode == V16SImode
   14292              :                                                               || V32HFmode == V32HFmode)) && 
   14293              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14294              : (TARGET_AVX512FP16)))))
   14295              :             return -1;
   14296              :           return 2749; /* *addv32hf3_mask_round */
   14297              : 
   14298              :         case 1:
   14299              :           if (!(
   14300              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14301              : (TARGET_AVX512F) && (
   14302              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14303              : (TARGET_AVX512F) && (
   14304              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14305              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16HFmode, operands)
   14306              :    && (32 == 64 || TARGET_AVX512VL) && (V16HFmode == V16SFmode
   14307              :                                                               || V16HFmode == V8DFmode
   14308              :                                                               || V16HFmode == V8DImode
   14309              :                                                               || V16HFmode == V16SImode
   14310              :                                                               || V16HFmode == V32HFmode)) && 
   14311              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14312              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14313              :             return -1;
   14314              :           return 2757; /* *addv16hf3_mask_round */
   14315              : 
   14316              :         case 2:
   14317              :           if (!(
   14318              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14319              : (TARGET_AVX512F) && (
   14320              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14321              : (TARGET_AVX512F) && (
   14322              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14323              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8HFmode, operands)
   14324              :    && (16 == 64 || TARGET_AVX512VL) && (V8HFmode == V16SFmode
   14325              :                                                               || V8HFmode == V8DFmode
   14326              :                                                               || V8HFmode == V8DImode
   14327              :                                                               || V8HFmode == V16SImode
   14328              :                                                               || V8HFmode == V32HFmode)) && 
   14329              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14330              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14331              :             return -1;
   14332              :           return 2765; /* *addv8hf3_mask_round */
   14333              : 
   14334              :         case 3:
   14335              :           if (!(
   14336              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14337              : (TARGET_AVX512F) && (
   14338              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14339              : (TARGET_AVX512F) && (
   14340              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14341              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands)
   14342              :    && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14343              :                                                               || V16SFmode == V8DFmode
   14344              :                                                               || V16SFmode == V8DImode
   14345              :                                                               || V16SFmode == V16SImode
   14346              :                                                               || V16SFmode == V32HFmode)) && 
   14347              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14348              : (TARGET_AVX512F)))))
   14349              :             return -1;
   14350              :           return 2773; /* *addv16sf3_mask_round */
   14351              : 
   14352              :         case 4:
   14353              :           if (!(
   14354              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14355              : (TARGET_AVX512F) && (
   14356              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14357              : (TARGET_AVX512F) && (
   14358              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14359              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands)
   14360              :    && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
   14361              :                                                               || V8SFmode == V8DFmode
   14362              :                                                               || V8SFmode == V8DImode
   14363              :                                                               || V8SFmode == V16SImode
   14364              :                                                               || V8SFmode == V32HFmode)) && 
   14365              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14366              : (TARGET_AVX)))))
   14367              :             return -1;
   14368              :           return 2781; /* *addv8sf3_mask_round */
   14369              : 
   14370              :         case 5:
   14371              :           if (!(
   14372              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14373              : (TARGET_AVX512F) && (
   14374              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14375              : (TARGET_AVX512F) && 
   14376              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14377              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands)
   14378              :    && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
   14379              :                                                               || V4SFmode == V8DFmode
   14380              :                                                               || V4SFmode == V8DImode
   14381              :                                                               || V4SFmode == V16SImode
   14382              :                                                               || V4SFmode == V32HFmode)))))
   14383              :             return -1;
   14384              :           return 2789; /* *addv4sf3_mask_round */
   14385              : 
   14386              :         case 6:
   14387              :           if (!(
   14388              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14389              : (TARGET_AVX512F) && (
   14390              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14391              : (TARGET_AVX512F) && (
   14392              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14393              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands)
   14394              :    && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14395              :                                                               || V8DFmode == V8DFmode
   14396              :                                                               || V8DFmode == V8DImode
   14397              :                                                               || V8DFmode == V16SImode
   14398              :                                                               || V8DFmode == V32HFmode)) && 
   14399              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14400              : (TARGET_AVX512F)))))
   14401              :             return -1;
   14402              :           return 2797; /* *addv8df3_mask_round */
   14403              : 
   14404              :         case 7:
   14405              :           if (!(
   14406              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14407              : (TARGET_AVX512F) && (
   14408              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14409              : (TARGET_AVX512F) && (
   14410              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14411              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands)
   14412              :    && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
   14413              :                                                               || V4DFmode == V8DFmode
   14414              :                                                               || V4DFmode == V8DImode
   14415              :                                                               || V4DFmode == V16SImode
   14416              :                                                               || V4DFmode == V32HFmode)) && 
   14417              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14418              : (TARGET_AVX)))))
   14419              :             return -1;
   14420              :           return 2805; /* *addv4df3_mask_round */
   14421              : 
   14422              :         case 8:
   14423              :           if (!(
   14424              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14425              : (TARGET_AVX512F) && (
   14426              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14427              : (TARGET_AVX512F) && (
   14428              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14429              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands)
   14430              :    && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
   14431              :                                                               || V2DFmode == V8DFmode
   14432              :                                                               || V2DFmode == V8DImode
   14433              :                                                               || V2DFmode == V16SImode
   14434              :                                                               || V2DFmode == V32HFmode)) && 
   14435              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14436              : (TARGET_SSE2)))))
   14437              :             return -1;
   14438              :           return 2813; /* *addv2df3_mask_round */
   14439              : 
   14440              :         case 9:
   14441              :           if (!(
   14442              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14443              : (TARGET_AVX512F) && (
   14444              : #line 2733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14445              : (TARGET_SSE) && 
   14446              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14447              : (TARGET_AVX512FP16))))
   14448              :             return -1;
   14449              :           return 2825; /* avx512fp16_vmaddv8hf3_round */
   14450              : 
   14451              :         case 10:
   14452              :           if (!(
   14453              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14454              : (TARGET_AVX512F) && 
   14455              : #line 2733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14456              : (TARGET_SSE)))
   14457              :             return -1;
   14458              :           return 2833; /* sse_vmaddv4sf3_round */
   14459              : 
   14460              :         case 11:
   14461              :           if (!(
   14462              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14463              : (TARGET_AVX512F) && (
   14464              : #line 2733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14465              : (TARGET_SSE) && 
   14466              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14467              : (TARGET_SSE2))))
   14468              :             return -1;
   14469              :           return 2841; /* sse2_vmaddv2df3_round */
   14470              : 
   14471              :         default:
   14472              :           return -1;
   14473              :         }
   14474              : 
   14475              :     case MINUS:
   14476              :       switch (pattern660 (x2))
   14477              :         {
   14478              :         case 0:
   14479              :           if (!(
   14480              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14481              : (TARGET_AVX512F) && (
   14482              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14483              : (TARGET_AVX512F) && (
   14484              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14485              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V32HFmode, operands)
   14486              :    && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14487              :                                                               || V32HFmode == V8DFmode
   14488              :                                                               || V32HFmode == V8DImode
   14489              :                                                               || V32HFmode == V16SImode
   14490              :                                                               || V32HFmode == V32HFmode)) && 
   14491              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14492              : (TARGET_AVX512FP16)))))
   14493              :             return -1;
   14494              :           return 2753; /* *subv32hf3_mask_round */
   14495              : 
   14496              :         case 1:
   14497              :           if (!(
   14498              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14499              : (TARGET_AVX512F) && (
   14500              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14501              : (TARGET_AVX512F) && (
   14502              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14503              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V16HFmode, operands)
   14504              :    && (32 == 64 || TARGET_AVX512VL) && (V16HFmode == V16SFmode
   14505              :                                                               || V16HFmode == V8DFmode
   14506              :                                                               || V16HFmode == V8DImode
   14507              :                                                               || V16HFmode == V16SImode
   14508              :                                                               || V16HFmode == V32HFmode)) && 
   14509              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14510              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14511              :             return -1;
   14512              :           return 2761; /* *subv16hf3_mask_round */
   14513              : 
   14514              :         case 2:
   14515              :           if (!(
   14516              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14517              : (TARGET_AVX512F) && (
   14518              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14519              : (TARGET_AVX512F) && (
   14520              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14521              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8HFmode, operands)
   14522              :    && (16 == 64 || TARGET_AVX512VL) && (V8HFmode == V16SFmode
   14523              :                                                               || V8HFmode == V8DFmode
   14524              :                                                               || V8HFmode == V8DImode
   14525              :                                                               || V8HFmode == V16SImode
   14526              :                                                               || V8HFmode == V32HFmode)) && 
   14527              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14528              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14529              :             return -1;
   14530              :           return 2769; /* *subv8hf3_mask_round */
   14531              : 
   14532              :         case 3:
   14533              :           if (!(
   14534              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14535              : (TARGET_AVX512F) && (
   14536              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14537              : (TARGET_AVX512F) && (
   14538              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14539              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands)
   14540              :    && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14541              :                                                               || V16SFmode == V8DFmode
   14542              :                                                               || V16SFmode == V8DImode
   14543              :                                                               || V16SFmode == V16SImode
   14544              :                                                               || V16SFmode == V32HFmode)) && 
   14545              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14546              : (TARGET_AVX512F)))))
   14547              :             return -1;
   14548              :           return 2777; /* *subv16sf3_mask_round */
   14549              : 
   14550              :         case 4:
   14551              :           if (!(
   14552              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14553              : (TARGET_AVX512F) && (
   14554              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14555              : (TARGET_AVX512F) && (
   14556              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14557              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands)
   14558              :    && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
   14559              :                                                               || V8SFmode == V8DFmode
   14560              :                                                               || V8SFmode == V8DImode
   14561              :                                                               || V8SFmode == V16SImode
   14562              :                                                               || V8SFmode == V32HFmode)) && 
   14563              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14564              : (TARGET_AVX)))))
   14565              :             return -1;
   14566              :           return 2785; /* *subv8sf3_mask_round */
   14567              : 
   14568              :         case 5:
   14569              :           if (!(
   14570              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14571              : (TARGET_AVX512F) && (
   14572              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14573              : (TARGET_AVX512F) && 
   14574              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14575              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands)
   14576              :    && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
   14577              :                                                               || V4SFmode == V8DFmode
   14578              :                                                               || V4SFmode == V8DImode
   14579              :                                                               || V4SFmode == V16SImode
   14580              :                                                               || V4SFmode == V32HFmode)))))
   14581              :             return -1;
   14582              :           return 2793; /* *subv4sf3_mask_round */
   14583              : 
   14584              :         case 6:
   14585              :           if (!(
   14586              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14587              : (TARGET_AVX512F) && (
   14588              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14589              : (TARGET_AVX512F) && (
   14590              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14591              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands)
   14592              :    && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14593              :                                                               || V8DFmode == V8DFmode
   14594              :                                                               || V8DFmode == V8DImode
   14595              :                                                               || V8DFmode == V16SImode
   14596              :                                                               || V8DFmode == V32HFmode)) && 
   14597              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14598              : (TARGET_AVX512F)))))
   14599              :             return -1;
   14600              :           return 2801; /* *subv8df3_mask_round */
   14601              : 
   14602              :         case 7:
   14603              :           if (!(
   14604              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14605              : (TARGET_AVX512F) && (
   14606              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14607              : (TARGET_AVX512F) && (
   14608              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14609              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands)
   14610              :    && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
   14611              :                                                               || V4DFmode == V8DFmode
   14612              :                                                               || V4DFmode == V8DImode
   14613              :                                                               || V4DFmode == V16SImode
   14614              :                                                               || V4DFmode == V32HFmode)) && 
   14615              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14616              : (TARGET_AVX)))))
   14617              :             return -1;
   14618              :           return 2809; /* *subv4df3_mask_round */
   14619              : 
   14620              :         case 8:
   14621              :           if (!(
   14622              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14623              : (TARGET_AVX512F) && (
   14624              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14625              : (TARGET_AVX512F) && (
   14626              : #line 2684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14627              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands)
   14628              :    && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
   14629              :                                                               || V2DFmode == V8DFmode
   14630              :                                                               || V2DFmode == V8DImode
   14631              :                                                               || V2DFmode == V16SImode
   14632              :                                                               || V2DFmode == V32HFmode)) && 
   14633              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14634              : (TARGET_SSE2)))))
   14635              :             return -1;
   14636              :           return 2817; /* *subv2df3_mask_round */
   14637              : 
   14638              :         case 9:
   14639              :           if (!(
   14640              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14641              : (TARGET_AVX512F) && (
   14642              : #line 2733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14643              : (TARGET_SSE) && 
   14644              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14645              : (TARGET_AVX512FP16))))
   14646              :             return -1;
   14647              :           return 2829; /* avx512fp16_vmsubv8hf3_round */
   14648              : 
   14649              :         case 10:
   14650              :           if (!(
   14651              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14652              : (TARGET_AVX512F) && 
   14653              : #line 2733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14654              : (TARGET_SSE)))
   14655              :             return -1;
   14656              :           return 2837; /* sse_vmsubv4sf3_round */
   14657              : 
   14658              :         case 11:
   14659              :           if (!(
   14660              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14661              : (TARGET_AVX512F) && (
   14662              : #line 2733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14663              : (TARGET_SSE) && 
   14664              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14665              : (TARGET_SSE2))))
   14666              :             return -1;
   14667              :           return 2845; /* sse2_vmsubv2df3_round */
   14668              : 
   14669              :         default:
   14670              :           return -1;
   14671              :         }
   14672              : 
   14673              :     case VEC_MERGE:
   14674              :       return recog_227 (x1, insn, pnum_clobbers);
   14675              : 
   14676              :     case MULT:
   14677              :       switch (pattern660 (x2))
   14678              :         {
   14679              :         case 0:
   14680              :           if (!(
   14681              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14682              : (TARGET_AVX512F) && (
   14683              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14684              : (TARGET_AVX512F) && (
   14685              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14686              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V32HFmode, operands)
   14687              :    && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14688              :                                                               || V32HFmode == V8DFmode
   14689              :                                                               || V32HFmode == V8DImode
   14690              :                                                               || V32HFmode == V16SImode
   14691              :                                                               || V32HFmode == V32HFmode)) && 
   14692              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14693              : (TARGET_AVX512FP16)))))
   14694              :             return -1;
   14695              :           return 2851; /* *mulv32hf3_mask_round */
   14696              : 
   14697              :         case 1:
   14698              :           if (!(
   14699              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14700              : (TARGET_AVX512F) && (
   14701              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14702              : (TARGET_AVX512F) && (
   14703              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14704              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V16HFmode, operands)
   14705              :    && (32 == 64 || TARGET_AVX512VL) && (V16HFmode == V16SFmode
   14706              :                                                               || V16HFmode == V8DFmode
   14707              :                                                               || V16HFmode == V8DImode
   14708              :                                                               || V16HFmode == V16SImode
   14709              :                                                               || V16HFmode == V32HFmode)) && 
   14710              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14711              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14712              :             return -1;
   14713              :           return 2855; /* *mulv16hf3_mask_round */
   14714              : 
   14715              :         case 2:
   14716              :           if (!(
   14717              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14718              : (TARGET_AVX512F) && (
   14719              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14720              : (TARGET_AVX512F) && (
   14721              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14722              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8HFmode, operands)
   14723              :    && (16 == 64 || TARGET_AVX512VL) && (V8HFmode == V16SFmode
   14724              :                                                               || V8HFmode == V8DFmode
   14725              :                                                               || V8HFmode == V8DImode
   14726              :                                                               || V8HFmode == V16SImode
   14727              :                                                               || V8HFmode == V32HFmode)) && 
   14728              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14729              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14730              :             return -1;
   14731              :           return 2859; /* *mulv8hf3_mask_round */
   14732              : 
   14733              :         case 3:
   14734              :           if (!(
   14735              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14736              : (TARGET_AVX512F) && (
   14737              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14738              : (TARGET_AVX512F) && (
   14739              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14740              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands)
   14741              :    && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14742              :                                                               || V16SFmode == V8DFmode
   14743              :                                                               || V16SFmode == V8DImode
   14744              :                                                               || V16SFmode == V16SImode
   14745              :                                                               || V16SFmode == V32HFmode)) && 
   14746              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14747              : (TARGET_AVX512F)))))
   14748              :             return -1;
   14749              :           return 2863; /* *mulv16sf3_mask_round */
   14750              : 
   14751              :         case 4:
   14752              :           if (!(
   14753              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14754              : (TARGET_AVX512F) && (
   14755              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14756              : (TARGET_AVX512F) && (
   14757              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14758              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands)
   14759              :    && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
   14760              :                                                               || V8SFmode == V8DFmode
   14761              :                                                               || V8SFmode == V8DImode
   14762              :                                                               || V8SFmode == V16SImode
   14763              :                                                               || V8SFmode == V32HFmode)) && 
   14764              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14765              : (TARGET_AVX)))))
   14766              :             return -1;
   14767              :           return 2867; /* *mulv8sf3_mask_round */
   14768              : 
   14769              :         case 5:
   14770              :           if (!(
   14771              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14772              : (TARGET_AVX512F) && (
   14773              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14774              : (TARGET_AVX512F) && 
   14775              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14776              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands)
   14777              :    && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
   14778              :                                                               || V4SFmode == V8DFmode
   14779              :                                                               || V4SFmode == V8DImode
   14780              :                                                               || V4SFmode == V16SImode
   14781              :                                                               || V4SFmode == V32HFmode)))))
   14782              :             return -1;
   14783              :           return 2871; /* *mulv4sf3_mask_round */
   14784              : 
   14785              :         case 6:
   14786              :           if (!(
   14787              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14788              : (TARGET_AVX512F) && (
   14789              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14790              : (TARGET_AVX512F) && (
   14791              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14792              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands)
   14793              :    && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14794              :                                                               || V8DFmode == V8DFmode
   14795              :                                                               || V8DFmode == V8DImode
   14796              :                                                               || V8DFmode == V16SImode
   14797              :                                                               || V8DFmode == V32HFmode)) && 
   14798              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14799              : (TARGET_AVX512F)))))
   14800              :             return -1;
   14801              :           return 2875; /* *mulv8df3_mask_round */
   14802              : 
   14803              :         case 7:
   14804              :           if (!(
   14805              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14806              : (TARGET_AVX512F) && (
   14807              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14808              : (TARGET_AVX512F) && (
   14809              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14810              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands)
   14811              :    && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
   14812              :                                                               || V4DFmode == V8DFmode
   14813              :                                                               || V4DFmode == V8DImode
   14814              :                                                               || V4DFmode == V16SImode
   14815              :                                                               || V4DFmode == V32HFmode)) && 
   14816              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14817              : (TARGET_AVX)))))
   14818              :             return -1;
   14819              :           return 2879; /* *mulv4df3_mask_round */
   14820              : 
   14821              :         case 8:
   14822              :           if (!(
   14823              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14824              : (TARGET_AVX512F) && (
   14825              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14826              : (TARGET_AVX512F) && (
   14827              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14828              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands)
   14829              :    && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
   14830              :                                                               || V2DFmode == V8DFmode
   14831              :                                                               || V2DFmode == V8DImode
   14832              :                                                               || V2DFmode == V16SImode
   14833              :                                                               || V2DFmode == V32HFmode)) && 
   14834              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14835              : (TARGET_SSE2)))))
   14836              :             return -1;
   14837              :           return 2883; /* *mulv2df3_mask_round */
   14838              : 
   14839              :         case 9:
   14840              :           if (!(
   14841              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14842              : (TARGET_AVX512F) && (
   14843              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14844              : (TARGET_SSE) && 
   14845              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14846              : (TARGET_AVX512FP16))))
   14847              :             return -1;
   14848              :           return 2891; /* avx512fp16_vmmulv8hf3_round */
   14849              : 
   14850              :         case 10:
   14851              :           if (!(
   14852              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14853              : (TARGET_AVX512F) && 
   14854              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14855              : (TARGET_SSE)))
   14856              :             return -1;
   14857              :           return 2899; /* sse_vmmulv4sf3_round */
   14858              : 
   14859              :         case 11:
   14860              :           if (!(
   14861              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14862              : (TARGET_AVX512F) && (
   14863              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14864              : (TARGET_SSE) && 
   14865              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14866              : (TARGET_SSE2))))
   14867              :             return -1;
   14868              :           return 2907; /* sse2_vmmulv2df3_round */
   14869              : 
   14870              :         default:
   14871              :           return -1;
   14872              :         }
   14873              : 
   14874              :     case DIV:
   14875              :       x5 = XEXP (x4, 0);
   14876              :       operands[1] = x5;
   14877              :       x6 = XEXP (x4, 1);
   14878              :       operands[2] = x6;
   14879              :       x7 = XVECEXP (x2, 0, 1);
   14880              :       if (!const_4_or_8_to_11_operand (x7, E_SImode))
   14881              :         return -1;
   14882              :       x8 = XEXP (x3, 2);
   14883              :       switch (GET_CODE (x8))
   14884              :         {
   14885              :         case CONST_INT:
   14886              :           switch (pattern659 (x2))
   14887              :             {
   14888              :             case 0:
   14889              :               if (!(
   14890              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14891              : (TARGET_AVX512F) && (
   14892              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14893              : (TARGET_SSE) && 
   14894              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14895              : (TARGET_AVX512FP16))))
   14896              :                 return -1;
   14897              :               return 2895; /* avx512fp16_vmdivv8hf3_round */
   14898              : 
   14899              :             case 1:
   14900              :               if (!(
   14901              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14902              : (TARGET_AVX512F) && 
   14903              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14904              : (TARGET_SSE)))
   14905              :                 return -1;
   14906              :               return 2903; /* sse_vmdivv4sf3_round */
   14907              : 
   14908              :             case 2:
   14909              :               if (!(
   14910              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14911              : (TARGET_AVX512F) && (
   14912              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14913              : (TARGET_SSE) && 
   14914              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14915              : (TARGET_SSE2))))
   14916              :                 return -1;
   14917              :               return 2911; /* sse2_vmdivv2df3_round */
   14918              : 
   14919              :             default:
   14920              :               return -1;
   14921              :             }
   14922              : 
   14923              :         case REG:
   14924              :         case SUBREG:
   14925              :           switch (pattern661 (x2))
   14926              :             {
   14927              :             case 0:
   14928              :               if (!(
   14929              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14930              : (TARGET_AVX512F) && (
   14931              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14932              : (TARGET_AVX512F) && (
   14933              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14934              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14935              :                                                               || V32HFmode == V8DFmode
   14936              :                                                               || V32HFmode == V8DImode
   14937              :                                                               || V32HFmode == V16SImode
   14938              :                                                               || V32HFmode == V32HFmode)) && 
   14939              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14940              : (TARGET_AVX512FP16)))))
   14941              :                 return -1;
   14942              :               return 2917; /* avx512fp16_divv32hf3_mask_round */
   14943              : 
   14944              :             case 1:
   14945              :               if (!(
   14946              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14947              : (TARGET_AVX512F) && (
   14948              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14949              : (TARGET_AVX512F) && (
   14950              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14951              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14952              :                                                               || V16SFmode == V8DFmode
   14953              :                                                               || V16SFmode == V8DImode
   14954              :                                                               || V16SFmode == V16SImode
   14955              :                                                               || V16SFmode == V32HFmode)) && 
   14956              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14957              : (TARGET_AVX512F)))))
   14958              :                 return -1;
   14959              :               return 2925; /* avx512f_divv16sf3_mask_round */
   14960              : 
   14961              :             case 2:
   14962              :               if (!(
   14963              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14964              : (TARGET_AVX512F) && (
   14965              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14966              : (TARGET_AVX512F) && (
   14967              : #line 2922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14968              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14969              :                                                               || V8DFmode == V8DFmode
   14970              :                                                               || V8DFmode == V8DImode
   14971              :                                                               || V8DFmode == V16SImode
   14972              :                                                               || V8DFmode == V32HFmode)) && 
   14973              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14974              : (TARGET_AVX512F)))))
   14975              :                 return -1;
   14976              :               return 2933; /* avx512f_divv8df3_mask_round */
   14977              : 
   14978              :             default:
   14979              :               return -1;
   14980              :             }
   14981              : 
   14982              :         default:
   14983              :           return -1;
   14984              :         }
   14985              : 
   14986              :     case SQRT:
   14987              :       x5 = XEXP (x4, 0);
   14988              :       operands[1] = x5;
   14989              :       x9 = XEXP (x3, 1);
   14990              :       operands[2] = x9;
   14991              :       x7 = XVECEXP (x2, 0, 1);
   14992              :       if (!const_4_or_8_to_11_operand (x7, E_SImode))
   14993              :         return -1;
   14994              :       x8 = XEXP (x3, 2);
   14995              :       switch (GET_CODE (x8))
   14996              :         {
   14997              :         case REG:
   14998              :         case SUBREG:
   14999              :           operands[3] = x8;
   15000              :           operands[4] = x7;
   15001              :           switch (GET_MODE (operands[0]))
   15002              :             {
   15003              :             case E_V32HFmode:
   15004              :               if (pattern1412 (x2, 
   15005              : E_SImode, 
   15006              : E_V32HFmode) != 0
   15007              :                   || !(
   15008              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15009              : (TARGET_AVX512F) && (
   15010              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15011              : (TARGET_AVX512F) && (
   15012              : #line 3088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15013              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   15014              :                                                               || V32HFmode == V8DFmode
   15015              :                                                               || V32HFmode == V8DImode
   15016              :                                                               || V32HFmode == V16SImode
   15017              :                                                               || V32HFmode == V32HFmode)) && 
   15018              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15019              : (TARGET_AVX512FP16)))))
   15020              :                 return -1;
   15021              :               return 2970; /* avx512fp16_sqrtv32hf2_mask_round */
   15022              : 
   15023              :             case E_V16SFmode:
   15024              :               if (pattern1412 (x2, 
   15025              : E_HImode, 
   15026              : E_V16SFmode) != 0
   15027              :                   || !(
   15028              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15029              : (TARGET_AVX512F) && (
   15030              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15031              : (TARGET_AVX512F) && (
   15032              : #line 3088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15033              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   15034              :                                                               || V16SFmode == V8DFmode
   15035              :                                                               || V16SFmode == V8DImode
   15036              :                                                               || V16SFmode == V16SImode
   15037              :                                                               || V16SFmode == V32HFmode)) && 
   15038              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15039              : (TARGET_AVX512F)))))
   15040              :                 return -1;
   15041              :               return 2978; /* avx512f_sqrtv16sf2_mask_round */
   15042              : 
   15043              :             case E_V8DFmode:
   15044              :               if (pattern1412 (x2, 
   15045              : E_QImode, 
   15046              : E_V8DFmode) != 0
   15047              :                   || !(
   15048              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15049              : (TARGET_AVX512F) && (
   15050              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15051              : (TARGET_AVX512F) && (
   15052              : #line 3088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15053              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   15054              :                                                               || V8DFmode == V8DFmode
   15055              :                                                               || V8DFmode == V8DImode
   15056              :                                                               || V8DFmode == V16SImode
   15057              :                                                               || V8DFmode == V32HFmode)) && 
   15058              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15059              : (TARGET_AVX512F)))))
   15060              :                 return -1;
   15061              :               return 2986; /* avx512f_sqrtv8df2_mask_round */
   15062              : 
   15063              :             default:
   15064              :               return -1;
   15065              :             }
   15066              : 
   15067              :         case CONST_INT:
   15068              :           if (XWINT (x8, 0) != 1L)
   15069              :             return -1;
   15070              :           operands[3] = x7;
   15071              :           switch (GET_MODE (operands[0]))
   15072              :             {
   15073              :             case E_V8HFmode:
   15074              :               if (pattern1413 (x2, 
   15075              : E_V8HFmode) != 0
   15076              :                   || !(
   15077              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15078              : (TARGET_AVX512F) && (
   15079              : #line 3106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15080              : (TARGET_SSE) && 
   15081              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15082              : (TARGET_AVX512FP16))))
   15083              :                 return -1;
   15084              :               return 2992; /* avx512fp16_vmsqrtv8hf2_round */
   15085              : 
   15086              :             case E_V4SFmode:
   15087              :               if (pattern1413 (x2, 
   15088              : E_V4SFmode) != 0
   15089              :                   || !(
   15090              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15091              : (TARGET_AVX512F) && 
   15092              : #line 3106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15093              : (TARGET_SSE)))
   15094              :                 return -1;
   15095              :               return 2996; /* sse_vmsqrtv4sf2_round */
   15096              : 
   15097              :             case E_V2DFmode:
   15098              :               if (pattern1413 (x2, 
   15099              : E_V2DFmode) != 0
   15100              :                   || !(
   15101              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15102              : (TARGET_AVX512F) && (
   15103              : #line 3106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15104              : (TARGET_SSE) && 
   15105              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15106              : (TARGET_SSE2))))
   15107              :                 return -1;
   15108              :               return 3000; /* sse2_vmsqrtv2df2_round */
   15109              : 
   15110              :             default:
   15111              :               return -1;
   15112              :             }
   15113              : 
   15114              :         default:
   15115              :           return -1;
   15116              :         }
   15117              : 
   15118              :     case VEC_DUPLICATE:
   15119              :       return recog_230 (x1, insn, pnum_clobbers);
   15120              : 
   15121              :     case SMAX:
   15122              :       switch (pattern662 (x2))
   15123              :         {
   15124              :         case 0:
   15125              :           if (!(
   15126              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15127              : (TARGET_AVX512F) && (
   15128              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15129              : (TARGET_AVX512F) && (
   15130              : #line 3329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15131              : (TARGET_SSE
   15132              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15133              :    && (64 == 64 || TARGET_AVX512VL)
   15134              :    && (V32HFmode == V16SFmode
   15135              :                                                                               || V32HFmode == V8DFmode
   15136              :                                                                               || V32HFmode == V8DImode
   15137              :                                                                               || V32HFmode == V16SImode
   15138              :                                                                               || V32HFmode == V32HFmode)) && 
   15139              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15140              : (TARGET_AVX512FP16)))))
   15141              :             return -1;
   15142              :           return 3048; /* *smaxv32hf3_mask_round */
   15143              : 
   15144              :         case 1:
   15145              :           if (!(
   15146              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15147              : (TARGET_AVX512F) && (
   15148              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15149              : (TARGET_AVX512F) && (
   15150              : #line 3329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15151              : (TARGET_SSE
   15152              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15153              :    && (64 == 64 || TARGET_AVX512VL)
   15154              :    && (V16SFmode == V16SFmode
   15155              :                                                                               || V16SFmode == V8DFmode
   15156              :                                                                               || V16SFmode == V8DImode
   15157              :                                                                               || V16SFmode == V16SImode
   15158              :                                                                               || V16SFmode == V32HFmode)) && 
   15159              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15160              : (TARGET_AVX512F)))))
   15161              :             return -1;
   15162              :           return 3064; /* *smaxv16sf3_mask_round */
   15163              : 
   15164              :         case 2:
   15165              :           if (!(
   15166              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15167              : (TARGET_AVX512F) && (
   15168              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15169              : (TARGET_AVX512F) && (
   15170              : #line 3329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15171              : (TARGET_SSE
   15172              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15173              :    && (64 == 64 || TARGET_AVX512VL)
   15174              :    && (V8DFmode == V16SFmode
   15175              :                                                                               || V8DFmode == V8DFmode
   15176              :                                                                               || V8DFmode == V8DImode
   15177              :                                                                               || V8DFmode == V16SImode
   15178              :                                                                               || V8DFmode == V32HFmode)) && 
   15179              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15180              : (TARGET_AVX512F)))))
   15181              :             return -1;
   15182              :           return 3080; /* *smaxv8df3_mask_round */
   15183              : 
   15184              :         case 3:
   15185              :           if (!(
   15186              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15187              : (TARGET_AVX512F) && (
   15188              : #line 3536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15189              : (TARGET_SSE) && 
   15190              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15191              : (TARGET_AVX512FP16))))
   15192              :             return -1;
   15193              :           return 3170; /* *avx512fp16_vmsmaxv8hf3_round */
   15194              : 
   15195              :         case 4:
   15196              :           if (!(
   15197              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15198              : (TARGET_AVX512F) && 
   15199              : #line 3536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15200              : (TARGET_SSE)))
   15201              :             return -1;
   15202              :           return 3178; /* *sse_vmsmaxv4sf3_round */
   15203              : 
   15204              :         case 5:
   15205              :           if (!(
   15206              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15207              : (TARGET_AVX512F) && (
   15208              : #line 3536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15209              : (TARGET_SSE) && 
   15210              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15211              : (TARGET_SSE2))))
   15212              :             return -1;
   15213              :           return 3186; /* *sse2_vmsmaxv2df3_round */
   15214              : 
   15215              :         default:
   15216              :           return -1;
   15217              :         }
   15218              : 
   15219              :     case SMIN:
   15220              :       switch (pattern662 (x2))
   15221              :         {
   15222              :         case 0:
   15223              :           if (!(
   15224              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15225              : (TARGET_AVX512F) && (
   15226              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15227              : (TARGET_AVX512F) && (
   15228              : #line 3329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15229              : (TARGET_SSE
   15230              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15231              :    && (64 == 64 || TARGET_AVX512VL)
   15232              :    && (V32HFmode == V16SFmode
   15233              :                                                                               || V32HFmode == V8DFmode
   15234              :                                                                               || V32HFmode == V8DImode
   15235              :                                                                               || V32HFmode == V16SImode
   15236              :                                                                               || V32HFmode == V32HFmode)) && 
   15237              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15238              : (TARGET_AVX512FP16)))))
   15239              :             return -1;
   15240              :           return 3052; /* *sminv32hf3_mask_round */
   15241              : 
   15242              :         case 1:
   15243              :           if (!(
   15244              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15245              : (TARGET_AVX512F) && (
   15246              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15247              : (TARGET_AVX512F) && (
   15248              : #line 3329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15249              : (TARGET_SSE
   15250              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15251              :    && (64 == 64 || TARGET_AVX512VL)
   15252              :    && (V16SFmode == V16SFmode
   15253              :                                                                               || V16SFmode == V8DFmode
   15254              :                                                                               || V16SFmode == V8DImode
   15255              :                                                                               || V16SFmode == V16SImode
   15256              :                                                                               || V16SFmode == V32HFmode)) && 
   15257              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15258              : (TARGET_AVX512F)))))
   15259              :             return -1;
   15260              :           return 3068; /* *sminv16sf3_mask_round */
   15261              : 
   15262              :         case 2:
   15263              :           if (!(
   15264              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15265              : (TARGET_AVX512F) && (
   15266              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15267              : (TARGET_AVX512F) && (
   15268              : #line 3329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15269              : (TARGET_SSE
   15270              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15271              :    && (64 == 64 || TARGET_AVX512VL)
   15272              :    && (V8DFmode == V16SFmode
   15273              :                                                                               || V8DFmode == V8DFmode
   15274              :                                                                               || V8DFmode == V8DImode
   15275              :                                                                               || V8DFmode == V16SImode
   15276              :                                                                               || V8DFmode == V32HFmode)) && 
   15277              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15278              : (TARGET_AVX512F)))))
   15279              :             return -1;
   15280              :           return 3084; /* *sminv8df3_mask_round */
   15281              : 
   15282              :         case 3:
   15283              :           if (!(
   15284              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15285              : (TARGET_AVX512F) && (
   15286              : #line 3536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15287              : (TARGET_SSE) && 
   15288              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15289              : (TARGET_AVX512FP16))))
   15290              :             return -1;
   15291              :           return 3174; /* *avx512fp16_vmsminv8hf3_round */
   15292              : 
   15293              :         case 4:
   15294              :           if (!(
   15295              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15296              : (TARGET_AVX512F) && 
   15297              : #line 3536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15298              : (TARGET_SSE)))
   15299              :             return -1;
   15300              :           return 3182; /* *sse_vmsminv4sf3_round */
   15301              : 
   15302              :         case 5:
   15303              :           if (!(
   15304              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15305              : (TARGET_AVX512F) && (
   15306              : #line 3536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15307              : (TARGET_SSE) && 
   15308              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15309              : (TARGET_SSE2))))
   15310              :             return -1;
   15311              :           return 3190; /* *sse2_vmsminv2df3_round */
   15312              : 
   15313              :         default:
   15314              :           return -1;
   15315              :         }
   15316              : 
   15317              :     case UNSPEC:
   15318              :       return recog_229 (x1, insn, pnum_clobbers);
   15319              : 
   15320              :     case FMA:
   15321              :       return recog_228 (x1, insn, pnum_clobbers);
   15322              : 
   15323              :     case FLOAT:
   15324              :       x5 = XEXP (x4, 0);
   15325              :       operands[1] = x5;
   15326              :       x9 = XEXP (x3, 1);
   15327              :       operands[2] = x9;
   15328              :       x8 = XEXP (x3, 2);
   15329              :       operands[3] = x8;
   15330              :       x7 = XVECEXP (x2, 0, 1);
   15331              :       operands[4] = x7;
   15332              :       if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   15333              :         return -1;
   15334              :       switch (GET_MODE (operands[0]))
   15335              :         {
   15336              :         case E_V8HFmode:
   15337              :           switch (pattern1315 (x2))
   15338              :             {
   15339              :             case 0:
   15340              :               if (!(
   15341              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15342              : (TARGET_AVX512F) && (
   15343              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15344              : (TARGET_AVX512F) && (
   15345              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15346              : (TARGET_AVX512FP16) && 
   15347              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15348              : (TARGET_AVX512VL)))))
   15349              :                 return -1;
   15350              :               return 4521; /* avx512fp16_vcvtw2ph_v8hi_mask_round */
   15351              : 
   15352              :             case 1:
   15353              :               if (!(
   15354              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15355              : (TARGET_AVX512F) && (
   15356              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15357              : (TARGET_AVX512F) && (
   15358              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15359              : (TARGET_AVX512FP16) && 
   15360              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15361              : (TARGET_AVX512VL)))))
   15362              :                 return -1;
   15363              :               return 4545; /* avx512fp16_vcvtdq2ph_v8si_mask_round */
   15364              : 
   15365              :             case 2:
   15366              :               if (!(
   15367              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15368              : (TARGET_AVX512F) && (
   15369              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15370              : (TARGET_AVX512F) && 
   15371              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15372              : (TARGET_AVX512FP16))))
   15373              :                 return -1;
   15374              :               return 4561; /* avx512fp16_vcvtqq2ph_v8di_mask_round */
   15375              : 
   15376              :             default:
   15377              :               return -1;
   15378              :             }
   15379              : 
   15380              :         case E_V16HFmode:
   15381              :           switch (pattern1316 (x2))
   15382              :             {
   15383              :             case 0:
   15384              :               if (!(
   15385              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15386              : (TARGET_AVX512F) && (
   15387              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15388              : (TARGET_AVX512F) && (
   15389              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15390              : (TARGET_AVX512FP16) && 
   15391              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15392              : (TARGET_AVX512VL)))))
   15393              :                 return -1;
   15394              :               return 4529; /* avx512fp16_vcvtw2ph_v16hi_mask_round */
   15395              : 
   15396              :             case 1:
   15397              :               if (!(
   15398              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15399              : (TARGET_AVX512F) && (
   15400              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15401              : (TARGET_AVX512F) && 
   15402              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15403              : (TARGET_AVX512FP16))))
   15404              :                 return -1;
   15405              :               return 4553; /* avx512fp16_vcvtdq2ph_v16si_mask_round */
   15406              : 
   15407              :             default:
   15408              :               return -1;
   15409              :             }
   15410              : 
   15411              :         case E_V32HFmode:
   15412              :           if (pattern663 (x2, 
   15413              : E_SImode, 
   15414              : E_V32HFmode, 
   15415              : E_V32HImode) != 0
   15416              :               || !(
   15417              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15418              : (TARGET_AVX512F) && (
   15419              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15420              : (TARGET_AVX512F) && 
   15421              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15422              : (TARGET_AVX512FP16))))
   15423              :             return -1;
   15424              :           return 4537; /* avx512fp16_vcvtw2ph_v32hi_mask_round */
   15425              : 
   15426              :         case E_V16SFmode:
   15427              :           if (pattern663 (x2, 
   15428              : E_HImode, 
   15429              : E_V16SFmode, 
   15430              : E_V16SImode) != 0
   15431              :               || !(
   15432              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15433              : (TARGET_AVX512F) && (
   15434              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15435              : (TARGET_AVX512F) && (
   15436              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15437              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   15438              :                                                               || V16SFmode == V8DFmode
   15439              :                                                               || V16SFmode == V8DImode
   15440              :                                                               || V16SFmode == V16SImode
   15441              :                                                               || V16SFmode == V32HFmode)) && 
   15442              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15443              : (TARGET_AVX512F)))))
   15444              :             return -1;
   15445              :           return 4857; /* floatv16siv16sf2_mask_round */
   15446              : 
   15447              :         case E_V8DFmode:
   15448              :           if (pattern1317 (x2, 
   15449              : E_V8DFmode, 
   15450              : E_V8DImode, 
   15451              : E_QImode) != 0
   15452              :               || !(
   15453              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15454              : (TARGET_AVX512F) && (
   15455              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15456              : (TARGET_AVX512F) && 
   15457              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15458              : (TARGET_AVX512DQ))))
   15459              :             return -1;
   15460              :           return 4989; /* floatv8div8df2_mask_round */
   15461              : 
   15462              :         case E_V4DFmode:
   15463              :           if (pattern1317 (x2, 
   15464              : E_V4DFmode, 
   15465              : E_V4DImode, 
   15466              : E_QImode) != 0
   15467              :               || !(
   15468              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15469              : (TARGET_AVX512F) && (
   15470              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15471              : (TARGET_AVX512F) && (
   15472              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15473              : (TARGET_AVX512DQ) && 
   15474              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15475              : (TARGET_AVX512VL)))))
   15476              :             return -1;
   15477              :           return 4997; /* floatv4div4df2_mask_round */
   15478              : 
   15479              :         case E_V2DFmode:
   15480              :           if (pattern1317 (x2, 
   15481              : E_V2DFmode, 
   15482              : E_V2DImode, 
   15483              : E_QImode) != 0
   15484              :               || !(
   15485              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15486              : (TARGET_AVX512F) && (
   15487              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15488              : (TARGET_AVX512F) && (
   15489              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15490              : (TARGET_AVX512DQ) && 
   15491              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15492              : (TARGET_AVX512VL)))))
   15493              :             return -1;
   15494              :           return 5005; /* floatv2div2df2_mask_round */
   15495              : 
   15496              :         case E_V8SFmode:
   15497              :           if (pattern1317 (x2, 
   15498              : E_V8SFmode, 
   15499              : E_V8DImode, 
   15500              : E_QImode) != 0
   15501              :               || !(
   15502              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15503              : (TARGET_AVX512F) && (
   15504              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15505              : (TARGET_AVX512F) && 
   15506              : #line 9518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15507              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15508              :                                                               || V8DImode == V8DFmode
   15509              :                                                               || V8DImode == V8DImode
   15510              :                                                               || V8DImode == V16SImode
   15511              :                                                               || V8DImode == V32HFmode)))))
   15512              :             return -1;
   15513              :           return 5013; /* floatv8div8sf2_mask_round */
   15514              : 
   15515              :         default:
   15516              :           return -1;
   15517              :         }
   15518              : 
   15519              :     case UNSIGNED_FLOAT:
   15520              :       x5 = XEXP (x4, 0);
   15521              :       operands[1] = x5;
   15522              :       x9 = XEXP (x3, 1);
   15523              :       operands[2] = x9;
   15524              :       x8 = XEXP (x3, 2);
   15525              :       operands[3] = x8;
   15526              :       x7 = XVECEXP (x2, 0, 1);
   15527              :       operands[4] = x7;
   15528              :       if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   15529              :         return -1;
   15530              :       switch (GET_MODE (operands[0]))
   15531              :         {
   15532              :         case E_V8HFmode:
   15533              :           switch (pattern1315 (x2))
   15534              :             {
   15535              :             case 0:
   15536              :               if (!(
   15537              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15538              : (TARGET_AVX512F) && (
   15539              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15540              : (TARGET_AVX512F) && (
   15541              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15542              : (TARGET_AVX512FP16) && 
   15543              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15544              : (TARGET_AVX512VL)))))
   15545              :                 return -1;
   15546              :               return 4525; /* avx512fp16_vcvtuw2ph_v8hi_mask_round */
   15547              : 
   15548              :             case 1:
   15549              :               if (!(
   15550              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15551              : (TARGET_AVX512F) && (
   15552              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15553              : (TARGET_AVX512F) && (
   15554              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15555              : (TARGET_AVX512FP16) && 
   15556              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15557              : (TARGET_AVX512VL)))))
   15558              :                 return -1;
   15559              :               return 4549; /* avx512fp16_vcvtudq2ph_v8si_mask_round */
   15560              : 
   15561              :             case 2:
   15562              :               if (!(
   15563              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15564              : (TARGET_AVX512F) && (
   15565              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15566              : (TARGET_AVX512F) && 
   15567              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15568              : (TARGET_AVX512FP16))))
   15569              :                 return -1;
   15570              :               return 4565; /* avx512fp16_vcvtuqq2ph_v8di_mask_round */
   15571              : 
   15572              :             default:
   15573              :               return -1;
   15574              :             }
   15575              : 
   15576              :         case E_V16HFmode:
   15577              :           switch (pattern1316 (x2))
   15578              :             {
   15579              :             case 0:
   15580              :               if (!(
   15581              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15582              : (TARGET_AVX512F) && (
   15583              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15584              : (TARGET_AVX512F) && (
   15585              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15586              : (TARGET_AVX512FP16) && 
   15587              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15588              : (TARGET_AVX512VL)))))
   15589              :                 return -1;
   15590              :               return 4533; /* avx512fp16_vcvtuw2ph_v16hi_mask_round */
   15591              : 
   15592              :             case 1:
   15593              :               if (!(
   15594              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15595              : (TARGET_AVX512F) && (
   15596              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15597              : (TARGET_AVX512F) && 
   15598              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15599              : (TARGET_AVX512FP16))))
   15600              :                 return -1;
   15601              :               return 4557; /* avx512fp16_vcvtudq2ph_v16si_mask_round */
   15602              : 
   15603              :             default:
   15604              :               return -1;
   15605              :             }
   15606              : 
   15607              :         case E_V32HFmode:
   15608              :           if (pattern663 (x2, 
   15609              : E_SImode, 
   15610              : E_V32HFmode, 
   15611              : E_V32HImode) != 0
   15612              :               || !(
   15613              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15614              : (TARGET_AVX512F) && (
   15615              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15616              : (TARGET_AVX512F) && 
   15617              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15618              : (TARGET_AVX512FP16))))
   15619              :             return -1;
   15620              :           return 4541; /* avx512fp16_vcvtuw2ph_v32hi_mask_round */
   15621              : 
   15622              :         case E_V16SFmode:
   15623              :           if (pattern1317 (x2, 
   15624              : E_V16SFmode, 
   15625              : E_V16SImode, 
   15626              : E_HImode) != 0
   15627              :               || !
   15628              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15629              : (TARGET_AVX512F))
   15630              :             return -1;
   15631              :           return 4865; /* floatunsv16siv16sf2_mask_round */
   15632              : 
   15633              :         case E_V8SFmode:
   15634              :           if (pattern1318 (x2, 
   15635              : E_V8SFmode, 
   15636              : E_QImode) != 0)
   15637              :             return -1;
   15638              :           switch (GET_MODE (operands[1]))
   15639              :             {
   15640              :             case E_V8SImode:
   15641              :               if (!nonimmediate_operand (operands[1], E_V8SImode)
   15642              :                   || !(
   15643              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15644              : (TARGET_AVX512F) && (
   15645              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15646              : (TARGET_AVX512F) && (
   15647              : #line 8984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15648              : (TARGET_AVX512F) && 
   15649              : #line 534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15650              : (TARGET_AVX512VL)))))
   15651              :                 return -1;
   15652              :               return 4869; /* floatunsv8siv8sf2_mask_round */
   15653              : 
   15654              :             case E_V8DImode:
   15655              :               if (!nonimmediate_operand (operands[1], E_V8DImode)
   15656              :                   || !(
   15657              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15658              : (TARGET_AVX512F) && (
   15659              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15660              : (TARGET_AVX512F) && 
   15661              : #line 9518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15662              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15663              :                                                               || V8DImode == V8DFmode
   15664              :                                                               || V8DImode == V8DImode
   15665              :                                                               || V8DImode == V16SImode
   15666              :                                                               || V8DImode == V32HFmode)))))
   15667              :                 return -1;
   15668              :               return 5017; /* floatunsv8div8sf2_mask_round */
   15669              : 
   15670              :             default:
   15671              :               return -1;
   15672              :             }
   15673              : 
   15674              :         case E_V4SFmode:
   15675              :           if (pattern1317 (x2, 
   15676              : E_V4SFmode, 
   15677              : E_V4SImode, 
   15678              : E_QImode) != 0
   15679              :               || !(
   15680              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15681              : (TARGET_AVX512F) && (
   15682              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15683              : (TARGET_AVX512F) && (
   15684              : #line 8984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15685              : (TARGET_AVX512F) && 
   15686              : #line 534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15687              : (TARGET_AVX512VL)))))
   15688              :             return -1;
   15689              :           return 4873; /* floatunsv4siv4sf2_mask_round */
   15690              : 
   15691              :         case E_V8DFmode:
   15692              :           if (pattern1317 (x2, 
   15693              : E_V8DFmode, 
   15694              : E_V8DImode, 
   15695              : E_QImode) != 0
   15696              :               || !(
   15697              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15698              : (TARGET_AVX512F) && (
   15699              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15700              : (TARGET_AVX512F) && 
   15701              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15702              : (TARGET_AVX512DQ))))
   15703              :             return -1;
   15704              :           return 4993; /* floatunsv8div8df2_mask_round */
   15705              : 
   15706              :         case E_V4DFmode:
   15707              :           if (pattern1317 (x2, 
   15708              : E_V4DFmode, 
   15709              : E_V4DImode, 
   15710              : E_QImode) != 0
   15711              :               || !(
   15712              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15713              : (TARGET_AVX512F) && (
   15714              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15715              : (TARGET_AVX512F) && (
   15716              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15717              : (TARGET_AVX512DQ) && 
   15718              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15719              : (TARGET_AVX512VL)))))
   15720              :             return -1;
   15721              :           return 5001; /* floatunsv4div4df2_mask_round */
   15722              : 
   15723              :         case E_V2DFmode:
   15724              :           if (pattern1317 (x2, 
   15725              : E_V2DFmode, 
   15726              : E_V2DImode, 
   15727              : E_QImode) != 0
   15728              :               || !(
   15729              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15730              : (TARGET_AVX512F) && (
   15731              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15732              : (TARGET_AVX512F) && (
   15733              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15734              : (TARGET_AVX512DQ) && 
   15735              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15736              : (TARGET_AVX512VL)))))
   15737              :             return -1;
   15738              :           return 5009; /* floatunsv2div2df2_mask_round */
   15739              : 
   15740              :         default:
   15741              :           return -1;
   15742              :         }
   15743              : 
   15744              :     case FIX:
   15745              :       switch (pattern664 (x2))
   15746              :         {
   15747              :         case 0:
   15748              :           if (!(
   15749              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15750              : (TARGET_AVX512F) && (
   15751              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15752              : (TARGET_AVX512F) && (
   15753              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15754              : (TARGET_AVX512FP16) && 
   15755              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15756              : (TARGET_AVX512VL)))))
   15757              :             return -1;
   15758              :           return 4655; /* avx512fp16_fix_truncv8hi2_mask_round */
   15759              : 
   15760              :         case 1:
   15761              :           if (!(
   15762              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15763              : (TARGET_AVX512F) && (
   15764              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15765              : (TARGET_AVX512F) && (
   15766              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15767              : (TARGET_AVX512FP16) && 
   15768              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15769              : (TARGET_AVX512VL)))))
   15770              :             return -1;
   15771              :           return 4663; /* avx512fp16_fix_truncv16hi2_mask_round */
   15772              : 
   15773              :         case 2:
   15774              :           if (!(
   15775              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15776              : (TARGET_AVX512F) && (
   15777              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15778              : (TARGET_AVX512F) && 
   15779              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15780              : (TARGET_AVX512FP16))))
   15781              :             return -1;
   15782              :           return 4671; /* avx512fp16_fix_truncv32hi2_mask_round */
   15783              : 
   15784              :         case 3:
   15785              :           if (!(
   15786              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15787              : (TARGET_AVX512F) && (
   15788              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15789              : (TARGET_AVX512F) && (
   15790              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15791              : (TARGET_AVX512FP16) && 
   15792              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15793              : (TARGET_AVX512VL)))))
   15794              :             return -1;
   15795              :           return 4679; /* avx512fp16_fix_truncv8si2_mask_round */
   15796              : 
   15797              :         case 4:
   15798              :           if (!
   15799              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15800              : (TARGET_AVX512F))
   15801              :             return -1;
   15802              :           return 5070; /* fix_truncv8dfv8si2_mask_round */
   15803              : 
   15804              :         case 5:
   15805              :           if (!(
   15806              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15807              : (TARGET_AVX512F) && (
   15808              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15809              : (TARGET_AVX512F) && 
   15810              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15811              : (TARGET_AVX512FP16))))
   15812              :             return -1;
   15813              :           return 4687; /* avx512fp16_fix_truncv16si2_mask_round */
   15814              : 
   15815              :         case 6:
   15816              :           if (!
   15817              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15818              : (TARGET_AVX512F))
   15819              :             return -1;
   15820              :           return 4921; /* fix_truncv16sfv16si2_mask_round */
   15821              : 
   15822              :         case 7:
   15823              :           if (!(
   15824              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15825              : (TARGET_AVX512F) && (
   15826              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15827              : (TARGET_AVX512F) && 
   15828              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15829              : (TARGET_AVX512FP16))))
   15830              :             return -1;
   15831              :           return 4695; /* avx512fp16_fix_truncv8di2_mask_round */
   15832              : 
   15833              :         case 8:
   15834              :           if (!(
   15835              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15836              : (TARGET_AVX512F) && (
   15837              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15838              : (TARGET_AVX512F) && 
   15839              : #line 10029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15840              : (TARGET_AVX512DQ && (V8DFmode == V16SFmode
   15841              :                                                                               || V8DFmode == V8DFmode
   15842              :                                                                               || V8DFmode == V8DImode
   15843              :                                                                               || V8DFmode == V16SImode
   15844              :                                                                               || V8DFmode == V32HFmode)))))
   15845              :             return -1;
   15846              :           return 5107; /* fix_truncv8dfv8di2_mask_round */
   15847              : 
   15848              :         case 9:
   15849              :           if (!(
   15850              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15851              : (TARGET_AVX512F) && (
   15852              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15853              : (TARGET_AVX512F) && 
   15854              : #line 10072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15855              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15856              :                                                                               || V8DImode == V8DFmode
   15857              :                                                                               || V8DImode == V8DImode
   15858              :                                                                               || V8DImode == V16SImode
   15859              :                                                                               || V8DImode == V32HFmode)))))
   15860              :             return -1;
   15861              :           return 5151; /* fix_truncv8sfv8di2_mask_round */
   15862              : 
   15863              :         default:
   15864              :           return -1;
   15865              :         }
   15866              : 
   15867              :     case UNSIGNED_FIX:
   15868              :       switch (pattern664 (x2))
   15869              :         {
   15870              :         case 0:
   15871              :           if (!(
   15872              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15873              : (TARGET_AVX512F) && (
   15874              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15875              : (TARGET_AVX512F) && (
   15876              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15877              : (TARGET_AVX512FP16) && 
   15878              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15879              : (TARGET_AVX512VL)))))
   15880              :             return -1;
   15881              :           return 4659; /* avx512fp16_fixuns_truncv8hi2_mask_round */
   15882              : 
   15883              :         case 1:
   15884              :           if (!(
   15885              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15886              : (TARGET_AVX512F) && (
   15887              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15888              : (TARGET_AVX512F) && (
   15889              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15890              : (TARGET_AVX512FP16) && 
   15891              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15892              : (TARGET_AVX512VL)))))
   15893              :             return -1;
   15894              :           return 4667; /* avx512fp16_fixuns_truncv16hi2_mask_round */
   15895              : 
   15896              :         case 2:
   15897              :           if (!(
   15898              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15899              : (TARGET_AVX512F) && (
   15900              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15901              : (TARGET_AVX512F) && 
   15902              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15903              : (TARGET_AVX512FP16))))
   15904              :             return -1;
   15905              :           return 4675; /* avx512fp16_fixuns_truncv32hi2_mask_round */
   15906              : 
   15907              :         case 3:
   15908              :           if (!(
   15909              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15910              : (TARGET_AVX512F) && (
   15911              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15912              : (TARGET_AVX512F) && (
   15913              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15914              : (TARGET_AVX512FP16) && 
   15915              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15916              : (TARGET_AVX512VL)))))
   15917              :             return -1;
   15918              :           return 4683; /* avx512fp16_fixuns_truncv8si2_mask_round */
   15919              : 
   15920              :         case 4:
   15921              :           if (!
   15922              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15923              : (TARGET_AVX512F))
   15924              :             return -1;
   15925              :           return 5074; /* fixuns_truncv8dfv8si2_mask_round */
   15926              : 
   15927              :         case 5:
   15928              :           if (!(
   15929              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15930              : (TARGET_AVX512F) && (
   15931              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15932              : (TARGET_AVX512F) && 
   15933              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15934              : (TARGET_AVX512FP16))))
   15935              :             return -1;
   15936              :           return 4691; /* avx512fp16_fixuns_truncv16si2_mask_round */
   15937              : 
   15938              :         case 6:
   15939              :           if (!
   15940              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15941              : (TARGET_AVX512F))
   15942              :             return -1;
   15943              :           return 4925; /* fixuns_truncv16sfv16si2_mask_round */
   15944              : 
   15945              :         case 7:
   15946              :           if (!(
   15947              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15948              : (TARGET_AVX512F) && (
   15949              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15950              : (TARGET_AVX512F) && 
   15951              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15952              : (TARGET_AVX512FP16))))
   15953              :             return -1;
   15954              :           return 4699; /* avx512fp16_fixuns_truncv8di2_mask_round */
   15955              : 
   15956              :         case 8:
   15957              :           if (!(
   15958              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15959              : (TARGET_AVX512F) && (
   15960              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15961              : (TARGET_AVX512F) && 
   15962              : #line 10029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15963              : (TARGET_AVX512DQ && (V8DFmode == V16SFmode
   15964              :                                                                               || V8DFmode == V8DFmode
   15965              :                                                                               || V8DFmode == V8DImode
   15966              :                                                                               || V8DFmode == V16SImode
   15967              :                                                                               || V8DFmode == V32HFmode)))))
   15968              :             return -1;
   15969              :           return 5111; /* fixuns_truncv8dfv8di2_mask_round */
   15970              : 
   15971              :         case 9:
   15972              :           if (!(
   15973              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15974              : (TARGET_AVX512F) && (
   15975              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15976              : (TARGET_AVX512F) && 
   15977              : #line 10072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15978              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15979              :                                                                               || V8DImode == V8DFmode
   15980              :                                                                               || V8DImode == V8DImode
   15981              :                                                                               || V8DImode == V16SImode
   15982              :                                                                               || V8DImode == V32HFmode)))))
   15983              :             return -1;
   15984              :           return 5155; /* fixuns_truncv8sfv8di2_mask_round */
   15985              : 
   15986              :         default:
   15987              :           return -1;
   15988              :         }
   15989              : 
   15990              :     case FLOAT_EXTEND:
   15991              :       x7 = XVECEXP (x2, 0, 1);
   15992              :       if (!const48_operand (x7, E_SImode))
   15993              :         return -1;
   15994              :       x5 = XEXP (x4, 0);
   15995              :       switch (GET_CODE (x5))
   15996              :         {
   15997              :         case REG:
   15998              :         case SUBREG:
   15999              :           operands[1] = x5;
   16000              :           x9 = XEXP (x3, 1);
   16001              :           operands[2] = x9;
   16002              :           x8 = XEXP (x3, 2);
   16003              :           operands[3] = x8;
   16004              :           operands[4] = x7;
   16005              :           switch (GET_MODE (operands[0]))
   16006              :             {
   16007              :             case E_V8DFmode:
   16008              :               if (pattern1318 (x2, 
   16009              : E_V8DFmode, 
   16010              : E_QImode) != 0)
   16011              :                 return -1;
   16012              :               switch (GET_MODE (operands[1]))
   16013              :                 {
   16014              :                 case E_V8HFmode:
   16015              :                   if (!register_operand (operands[1], E_V8HFmode)
   16016              :                       || !(
   16017              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16018              : (TARGET_AVX512F) && (
   16019              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16020              : (TARGET_AVX512F) && 
   16021              : #line 8365 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16022              : (TARGET_AVX512FP16))))
   16023              :                     return -1;
   16024              :                   return 4759; /* avx512fp16_float_extend_phv8df2_mask_round */
   16025              : 
   16026              :                 case E_V8SFmode:
   16027              :                   if (!register_operand (operands[1], E_V8SFmode)
   16028              :                       || !(
   16029              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16030              : (TARGET_AVX512F) && (
   16031              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16032              : (TARGET_AVX512F) && (
   16033              : #line 10550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16034              : (TARGET_AVX && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   16035              :                                                                               || V8DFmode == V8DFmode
   16036              :                                                                               || V8DFmode == V8DImode
   16037              :                                                                               || V8DFmode == V16SImode
   16038              :                                                                               || V8DFmode == V32HFmode)) && 
   16039              : #line 466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16040              : (TARGET_AVX512F)))))
   16041              :                     return -1;
   16042              :                   return 5204; /* avx512f_cvtps2pd512_mask_round */
   16043              : 
   16044              :                 default:
   16045              :                   return -1;
   16046              :                 }
   16047              : 
   16048              :             case E_V16SFmode:
   16049              :               if (pattern663 (x2, 
   16050              : E_HImode, 
   16051              : E_V16SFmode, 
   16052              : E_V16HFmode) != 0
   16053              :                   || !(
   16054              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16055              : (TARGET_AVX512F) && (
   16056              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16057              : (TARGET_AVX512F) && 
   16058              : #line 8365 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16059              : (TARGET_AVX512FP16))))
   16060              :                 return -1;
   16061              :               return 4763; /* avx512fp16_float_extend_phv16sf2_mask_round */
   16062              : 
   16063              :             case E_V8SFmode:
   16064              :               if (pattern663 (x2, 
   16065              : E_QImode, 
   16066              : E_V8SFmode, 
   16067              : E_V8HFmode) != 0
   16068              :                   || !(
   16069              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16070              : (TARGET_AVX512F) && (
   16071              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16072              : (TARGET_AVX512F) && (
   16073              : #line 8365 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16074              : (TARGET_AVX512FP16) && 
   16075              : #line 986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16076              : (TARGET_AVX512VL)))))
   16077              :                 return -1;
   16078              :               return 4767; /* avx512fp16_float_extend_phv8sf2_mask_round */
   16079              : 
   16080              :             default:
   16081              :               return -1;
   16082              :             }
   16083              : 
   16084              :         case VEC_SELECT:
   16085              :           if (GET_MODE (x5) != E_V2SFmode)
   16086              :             return -1;
   16087              :           x10 = XEXP (x5, 1);
   16088              :           if (GET_CODE (x10) != PARALLEL
   16089              :               || XVECLEN (x10, 0) != 2)
   16090              :             return -1;
   16091              :           x11 = XVECEXP (x10, 0, 0);
   16092              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   16093              :             return -1;
   16094              :           x12 = XVECEXP (x10, 0, 1);
   16095              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   16096              :             return -1;
   16097              :           x8 = XEXP (x3, 2);
   16098              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   16099              :               || pattern1487 (x2) != 0)
   16100              :             return -1;
   16101              :           x13 = XEXP (x5, 0);
   16102              :           operands[2] = x13;
   16103              :           if (!register_operand (operands[2], E_V4SFmode))
   16104              :             return -1;
   16105              :           x9 = XEXP (x3, 1);
   16106              :           operands[1] = x9;
   16107              :           if (!register_operand (operands[1], E_V2DFmode))
   16108              :             return -1;
   16109              :           operands[3] = x7;
   16110              :           if (!(
   16111              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16112              : (TARGET_AVX512F) && 
   16113              : #line 10377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16114              : (TARGET_SSE2)))
   16115              :             return -1;
   16116              :           return 5187; /* sse2_cvtss2sd_round */
   16117              : 
   16118              :         default:
   16119              :           return -1;
   16120              :         }
   16121              : 
   16122              :     case FLOAT_TRUNCATE:
   16123              :       x5 = XEXP (x4, 0);
   16124              :       operands[1] = x5;
   16125              :       x9 = XEXP (x3, 1);
   16126              :       operands[2] = x9;
   16127              :       x8 = XEXP (x3, 2);
   16128              :       operands[3] = x8;
   16129              :       x7 = XVECEXP (x2, 0, 1);
   16130              :       operands[4] = x7;
   16131              :       if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   16132              :         return -1;
   16133              :       switch (GET_MODE (operands[0]))
   16134              :         {
   16135              :         case E_V8HFmode:
   16136              :           if (pattern1318 (x2, 
   16137              : E_V8HFmode, 
   16138              : E_QImode) != 0)
   16139              :             return -1;
   16140              :           switch (GET_MODE (operands[1]))
   16141              :             {
   16142              :             case E_V8DFmode:
   16143              :               if (!register_operand (operands[1], E_V8DFmode)
   16144              :                   || !(
   16145              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16146              : (TARGET_AVX512F) && (
   16147              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16148              : (TARGET_AVX512F) && 
   16149              : #line 8459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16150              : (TARGET_AVX512FP16))))
   16151              :                 return -1;
   16152              :               return 4783; /* avx512fp16_vcvtpd2ph_v8df_mask_round */
   16153              : 
   16154              :             case E_V8SFmode:
   16155              :               if (!register_operand (operands[1], E_V8SFmode)
   16156              :                   || !(
   16157              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16158              : (TARGET_AVX512F) && (
   16159              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16160              : (TARGET_AVX512F) && (
   16161              : #line 8459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16162              : (TARGET_AVX512FP16) && 
   16163              : #line 986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16164              : (TARGET_AVX512VL)))))
   16165              :                 return -1;
   16166              :               return 4791; /* avx512fp16_vcvtps2ph_v8sf_mask_round */
   16167              : 
   16168              :             default:
   16169              :               return -1;
   16170              :             }
   16171              : 
   16172              :         case E_V16HFmode:
   16173              :           if (pattern663 (x2, 
   16174              : E_HImode, 
   16175              : E_V16HFmode, 
   16176              : E_V16SFmode) != 0
   16177              :               || !(
   16178              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16179              : (TARGET_AVX512F) && (
   16180              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16181              : (TARGET_AVX512F) && 
   16182              : #line 8459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16183              : (TARGET_AVX512FP16))))
   16184              :             return -1;
   16185              :           return 4787; /* avx512fp16_vcvtps2ph_v16sf_mask_round */
   16186              : 
   16187              :         case E_V8SFmode:
   16188              :           if (pattern663 (x2, 
   16189              : E_QImode, 
   16190              : E_V8SFmode, 
   16191              : E_V8DFmode) != 0
   16192              :               || !
   16193              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16194              : (TARGET_AVX512F))
   16195              :             return -1;
   16196              :           return 5194; /* avx512f_cvtpd2ps512_mask_round */
   16197              : 
   16198              :         default:
   16199              :           return -1;
   16200              :         }
   16201              : 
   16202              :     case VEC_CONCAT:
   16203              :       if (GET_MODE (x4) != E_V32HFmode)
   16204              :         return -1;
   16205              :       x5 = XEXP (x4, 0);
   16206              :       if (GET_CODE (x5) != FLOAT_TRUNCATE
   16207              :           || GET_MODE (x5) != E_V16HFmode)
   16208              :         return -1;
   16209              :       x6 = XEXP (x4, 1);
   16210              :       if (GET_CODE (x6) != FLOAT_TRUNCATE
   16211              :           || GET_MODE (x6) != E_V16HFmode
   16212              :           || !register_operand (operands[0], E_V32HFmode)
   16213              :           || GET_MODE (x2) != E_V32HFmode
   16214              :           || GET_MODE (x3) != E_V32HFmode)
   16215              :         return -1;
   16216              :       x13 = XEXP (x5, 0);
   16217              :       operands[2] = x13;
   16218              :       if (!register_operand (operands[2], E_V16SFmode))
   16219              :         return -1;
   16220              :       x14 = XEXP (x6, 0);
   16221              :       operands[1] = x14;
   16222              :       if (!register_operand (operands[1], E_V16SFmode))
   16223              :         return -1;
   16224              :       x9 = XEXP (x3, 1);
   16225              :       operands[3] = x9;
   16226              :       if (!nonimm_or_0_operand (operands[3], E_V32HFmode))
   16227              :         return -1;
   16228              :       x8 = XEXP (x3, 2);
   16229              :       operands[4] = x8;
   16230              :       if (!register_operand (operands[4], E_SImode))
   16231              :         return -1;
   16232              :       x7 = XVECEXP (x2, 0, 1);
   16233              :       operands[5] = x7;
   16234              :       if (!const_4_or_8_to_11_operand (operands[5], E_SImode)
   16235              :           || !(
   16236              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16237              : (TARGET_AVX512F) && (
   16238              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16239              : (TARGET_AVX512F) && 
   16240              : #line 32424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16241              : (TARGET_AVX10_2 && (V32HFmode == V16SFmode
   16242              :                                                               || V32HFmode == V8DFmode
   16243              :                                                               || V32HFmode == V8DImode
   16244              :                                                               || V32HFmode == V16SImode
   16245              :                                                               || V32HFmode == V32HFmode)))))
   16246              :         return -1;
   16247              :       return 10514; /* avx10_2_cvt2ps2phx_v32hf_mask_round */
   16248              : 
   16249              :     default:
   16250              :       return -1;
   16251              :     }
   16252              : }
   16253              : 
   16254              :  int
   16255              : recog_285 (rtx x1 ATTRIBUTE_UNUSED,
   16256              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16257              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16258              : {
   16259              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16260              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16261              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16262              :   rtx x18, x19, x20, x21;
   16263              :   int res ATTRIBUTE_UNUSED;
   16264              :   x2 = XEXP (x1, 1);
   16265              :   x3 = XEXP (x2, 1);
   16266              :   x4 = XVECEXP (x3, 0, 0);
   16267              :   if (GET_CODE (x4) != CONST_INT)
   16268              :     return -1;
   16269              :   x5 = XVECEXP (x3, 0, 1);
   16270              :   if (GET_CODE (x5) == CONST_INT)
   16271              :     {
   16272              :       res = recog_284 (x1, insn, pnum_clobbers);
   16273              :       if (res >= 0)
   16274              :         return res;
   16275              :     }
   16276              :   operands[3] = x4;
   16277              :   x6 = XEXP (x2, 0);
   16278              :   x7 = XEXP (x6, 1);
   16279              :   operands[2] = x7;
   16280              :   operands[4] = x5;
   16281              :   x8 = XVECEXP (x3, 0, 2);
   16282              :   operands[5] = x8;
   16283              :   x9 = XVECEXP (x3, 0, 3);
   16284              :   operands[6] = x9;
   16285              :   x10 = XVECEXP (x3, 0, 4);
   16286              :   operands[7] = x10;
   16287              :   x11 = XVECEXP (x3, 0, 5);
   16288              :   operands[8] = x11;
   16289              :   x12 = XVECEXP (x3, 0, 6);
   16290              :   operands[9] = x12;
   16291              :   x13 = XVECEXP (x3, 0, 7);
   16292              :   operands[10] = x13;
   16293              :   x14 = XVECEXP (x3, 0, 8);
   16294              :   operands[11] = x14;
   16295              :   x15 = XVECEXP (x3, 0, 9);
   16296              :   operands[12] = x15;
   16297              :   x16 = XVECEXP (x3, 0, 10);
   16298              :   operands[13] = x16;
   16299              :   x17 = XVECEXP (x3, 0, 11);
   16300              :   operands[14] = x17;
   16301              :   x18 = XVECEXP (x3, 0, 12);
   16302              :   operands[15] = x18;
   16303              :   x19 = XVECEXP (x3, 0, 13);
   16304              :   operands[16] = x19;
   16305              :   x20 = XVECEXP (x3, 0, 14);
   16306              :   operands[17] = x20;
   16307              :   x21 = XVECEXP (x3, 0, 15);
   16308              :   operands[18] = x21;
   16309              :   switch (GET_MODE (operands[0]))
   16310              :     {
   16311              :     case E_V16SFmode:
   16312              :       if (pattern1425 (x2, 
   16313              : E_V16SFmode, 
   16314              : E_V32SFmode) != 0)
   16315              :         return -1;
   16316              :       if (const_0_to_3_operand (operands[3], E_VOIDmode)
   16317              :           && const_0_to_3_operand (operands[4], E_VOIDmode)
   16318              :           && const_16_to_19_operand (operands[5], E_VOIDmode)
   16319              :           && const_16_to_19_operand (operands[6], E_VOIDmode)
   16320              :           && const_4_to_7_operand (operands[7], E_VOIDmode)
   16321              :           && const_4_to_7_operand (operands[8], E_VOIDmode)
   16322              :           && const_20_to_23_operand (operands[9], E_VOIDmode)
   16323              :           && const_20_to_23_operand (operands[10], E_VOIDmode)
   16324              :           && const_8_to_11_operand (operands[11], E_VOIDmode)
   16325              :           && const_8_to_11_operand (operands[12], E_VOIDmode)
   16326              :           && const_24_to_27_operand (operands[13], E_VOIDmode)
   16327              :           && const_24_to_27_operand (operands[14], E_VOIDmode)
   16328              :           && const_12_to_15_operand (operands[15], E_VOIDmode)
   16329              :           && const_12_to_15_operand (operands[16], E_VOIDmode)
   16330              :           && const_28_to_31_operand (operands[17], E_VOIDmode)
   16331              :           && const_28_to_31_operand (operands[18], E_VOIDmode)
   16332              :           && 
   16333              : #line 14609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16334              : (TARGET_AVX512F
   16335              :    && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
   16336              :        && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
   16337              :        && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
   16338              :        && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)
   16339              :        && INTVAL (operands[3]) == (INTVAL (operands[11]) - 8)
   16340              :        && INTVAL (operands[4]) == (INTVAL (operands[12]) - 8)
   16341              :        && INTVAL (operands[5]) == (INTVAL (operands[13]) - 8)
   16342              :        && INTVAL (operands[6]) == (INTVAL (operands[14]) - 8)
   16343              :        && INTVAL (operands[3]) == (INTVAL (operands[15]) - 12)
   16344              :        && INTVAL (operands[4]) == (INTVAL (operands[16]) - 12)
   16345              :        && INTVAL (operands[5]) == (INTVAL (operands[17]) - 12)
   16346              :        && INTVAL (operands[6]) == (INTVAL (operands[18]) - 12))))
   16347              :         return 7226; /* avx512f_shufps512_1 */
   16348              :       if (!const_0_to_15_operand (operands[3], E_VOIDmode)
   16349              :           || pattern1884 () != 0
   16350              :           || !
   16351              : #line 20753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16352              : (TARGET_AVX512F
   16353              :    && (INTVAL (operands[3]) & 3) == 0
   16354              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16355              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16356              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16357              :    && (INTVAL (operands[7]) & 3) == 0
   16358              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16359              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16360              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3
   16361              :    && (INTVAL (operands[11]) & 3) == 0
   16362              :    && INTVAL (operands[11]) == INTVAL (operands[12]) - 1
   16363              :    && INTVAL (operands[11]) == INTVAL (operands[13]) - 2
   16364              :    && INTVAL (operands[11]) == INTVAL (operands[14]) - 3
   16365              :    && (INTVAL (operands[15]) & 3) == 0
   16366              :    && INTVAL (operands[15]) == INTVAL (operands[16]) - 1
   16367              :    && INTVAL (operands[15]) == INTVAL (operands[17]) - 2
   16368              :    && INTVAL (operands[15]) == INTVAL (operands[18]) - 3))
   16369              :         return -1;
   16370              :       return 8474; /* avx512f_shuf_f32x4_1 */
   16371              : 
   16372              :     case E_V16SImode:
   16373              :       if (pattern1425 (x2, 
   16374              : E_V16SImode, 
   16375              : E_V32SImode) != 0
   16376              :           || !const_0_to_15_operand (operands[3], E_VOIDmode)
   16377              :           || pattern1884 () != 0
   16378              :           || !
   16379              : #line 20753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16380              : (TARGET_AVX512F
   16381              :    && (INTVAL (operands[3]) & 3) == 0
   16382              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16383              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16384              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16385              :    && (INTVAL (operands[7]) & 3) == 0
   16386              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16387              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16388              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3
   16389              :    && (INTVAL (operands[11]) & 3) == 0
   16390              :    && INTVAL (operands[11]) == INTVAL (operands[12]) - 1
   16391              :    && INTVAL (operands[11]) == INTVAL (operands[13]) - 2
   16392              :    && INTVAL (operands[11]) == INTVAL (operands[14]) - 3
   16393              :    && (INTVAL (operands[15]) & 3) == 0
   16394              :    && INTVAL (operands[15]) == INTVAL (operands[16]) - 1
   16395              :    && INTVAL (operands[15]) == INTVAL (operands[17]) - 2
   16396              :    && INTVAL (operands[15]) == INTVAL (operands[18]) - 3))
   16397              :         return -1;
   16398              :       return 8476; /* avx512f_shuf_i32x4_1 */
   16399              : 
   16400              :     default:
   16401              :       return -1;
   16402              :     }
   16403              : }
   16404              : 
   16405              :  int
   16406              : recog_289 (rtx x1 ATTRIBUTE_UNUSED,
   16407              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16408              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16409              : {
   16410              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16411              :   rtx x2, x3, x4, x5, x6;
   16412              :   int res ATTRIBUTE_UNUSED;
   16413              :   x2 = XEXP (x1, 1);
   16414              :   x3 = XEXP (x2, 0);
   16415              :   x4 = XEXP (x3, 1);
   16416              :   switch (GET_CODE (x4))
   16417              :     {
   16418              :     case REG:
   16419              :     case SUBREG:
   16420              :     case MEM:
   16421              :       x5 = XEXP (x2, 1);
   16422              :       switch (XVECLEN (x5, 0))
   16423              :         {
   16424              :         case 4:
   16425              :           res = recog_281 (x1, insn, pnum_clobbers);
   16426              :           if (res >= 0)
   16427              :             return res;
   16428              :           break;
   16429              : 
   16430              :         case 8:
   16431              :           res = recog_283 (x1, insn, pnum_clobbers);
   16432              :           if (res >= 0)
   16433              :             return res;
   16434              :           break;
   16435              : 
   16436              :         case 16:
   16437              :           res = recog_285 (x1, insn, pnum_clobbers);
   16438              :           if (res >= 0)
   16439              :             return res;
   16440              :           break;
   16441              : 
   16442              :         case 2:
   16443              :           res = recog_286 (x1, insn, pnum_clobbers);
   16444              :           if (res >= 0)
   16445              :             return res;
   16446              :           break;
   16447              : 
   16448              :         case 64:
   16449              :           res = recog_287 (x1, insn, pnum_clobbers);
   16450              :           if (res >= 0)
   16451              :             return res;
   16452              :           break;
   16453              : 
   16454              :         case 32:
   16455              :           res = recog_288 (x1, insn, pnum_clobbers);
   16456              :           if (res >= 0)
   16457              :             return res;
   16458              :           break;
   16459              : 
   16460              :         default:
   16461              :           break;
   16462              :         }
   16463              :       operands[2] = x4;
   16464              :       if (XVECLEN (x5, 0) >= 1)
   16465              :         {
   16466              :           operands[3] = x5;
   16467              :           x6 = XVECEXP (x5, 0, 0);
   16468              :           operands[4] = x6;
   16469              :           if (const_int_operand (operands[4], E_VOIDmode))
   16470              :             {
   16471              :               switch (GET_MODE (operands[0]))
   16472              :                 {
   16473              :                 case E_V8SImode:
   16474              :                   if (pattern1425 (x2, 
   16475              : E_V8SImode, 
   16476              : E_V16SImode) == 0
   16477              :                       && 
   16478              : #line 29026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16479              : (TARGET_AVX
   16480              :    && avx_vperm2f128_parallel (operands[3], V8SImode)))
   16481              :                     return 9525; /* *avx_vperm2f128v8si_nozero */
   16482              :                   break;
   16483              : 
   16484              :                 case E_V8SFmode:
   16485              :                   if (pattern1425 (x2, 
   16486              : E_V8SFmode, 
   16487              : E_V16SFmode) == 0
   16488              :                       && 
   16489              : #line 29026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16490              : (TARGET_AVX
   16491              :    && avx_vperm2f128_parallel (operands[3], V8SFmode)))
   16492              :                     return 9526; /* *avx_vperm2f128v8sf_nozero */
   16493              :                   break;
   16494              : 
   16495              :                 case E_V4DFmode:
   16496              :                   if (pattern1425 (x2, 
   16497              : E_V4DFmode, 
   16498              : E_V8DFmode) == 0
   16499              :                       && 
   16500              : #line 29026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16501              : (TARGET_AVX
   16502              :    && avx_vperm2f128_parallel (operands[3], V4DFmode)))
   16503              :                     return 9527; /* *avx_vperm2f128v4df_nozero */
   16504              :                   break;
   16505              : 
   16506              :                 default:
   16507              :                   break;
   16508              :                 }
   16509              :             }
   16510              :         }
   16511              :       break;
   16512              : 
   16513              :     case CONST_INT:
   16514              :     case CONST_DOUBLE:
   16515              :     case CONST_VECTOR:
   16516              :       switch (pattern810 (x2))
   16517              :         {
   16518              :         case 0:
   16519              :           if (
   16520              : #line 24481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16521              : (TARGET_AVX2))
   16522              :             return 8802; /* *avx2_zero_extendv16qiv16hi2_1 */
   16523              :           break;
   16524              : 
   16525              :         case 1:
   16526              :           if (
   16527              : #line 24534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16528              : (TARGET_AVX512BW))
   16529              :             return 8810; /* *avx512bw_zero_extendv32qiv32hi2_1 */
   16530              :           break;
   16531              : 
   16532              :         case 2:
   16533              :           if (
   16534              : #line 24656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16535              : (TARGET_SSE4_1))
   16536              :             return 8826; /* *sse4_1_zero_extendv8qiv8hi2_3 */
   16537              :           break;
   16538              : 
   16539              :         case 3:
   16540              :           if (
   16541              : #line 24960 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16542              : (TARGET_AVX512F))
   16543              :             return 8864; /* avx512f_zero_extendv16hiv16si2_1 */
   16544              :           break;
   16545              : 
   16546              :         case 4:
   16547              :           if (
   16548              : #line 25014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16549              : (TARGET_AVX2))
   16550              :             return 8872; /* avx2_zero_extendv8hiv8si2_1 */
   16551              :           break;
   16552              : 
   16553              :         case 5:
   16554              :           if (
   16555              : #line 25144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16556              : (TARGET_SSE4_1))
   16557              :             return 8888; /* *sse4_1_zero_extendv4hiv4si2_3 */
   16558              :           break;
   16559              : 
   16560              :         case 6:
   16561              :           if (pmovzx_parallel (operands[3], E_VOIDmode)
   16562              :               && 
   16563              : #line 25649 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16564              : (TARGET_AVX512F))
   16565              :             return 8959; /* *avx512f_zero_extendv8siv8di2_1 */
   16566              :           if (movq_parallel (operands[3], E_VOIDmode)
   16567              :               && (
   16568              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16569              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16570              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16571              : (TARGET_AVX512F)))
   16572              :             return 9703; /* *vec_concatv16si_0_1 */
   16573              :           break;
   16574              : 
   16575              :         case 7:
   16576              :           if (pmovzx_parallel (operands[3], E_VOIDmode)
   16577              :               && 
   16578              : #line 25701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16579              : (TARGET_AVX2))
   16580              :             return 8965; /* *avx2_zero_extendv4siv4di2_1 */
   16581              :           if (movq_parallel (operands[3], E_VOIDmode)
   16582              :               && (
   16583              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16584              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16585              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16586              : (TARGET_AVX)))
   16587              :             return 9704; /* *vec_concatv8si_0_1 */
   16588              :           break;
   16589              : 
   16590              :         case 8:
   16591              :           if (vector_operand (operands[1], E_V4SImode)
   16592              :               && pmovzx_parallel (operands[3], E_VOIDmode)
   16593              :               && 
   16594              : #line 25809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16595              : (TARGET_SSE4_1))
   16596              :             return 8979; /* *sse4_1_zero_extendv2siv2di2_3 */
   16597              :           if (nonimmediate_operand (operands[1], E_V4SImode)
   16598              :               && movq_parallel (operands[3], E_VOIDmode)
   16599              :               && 
   16600              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16601              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16602              :             return 9705; /* *vec_concatv4si_0_1 */
   16603              :           break;
   16604              : 
   16605              :         case 9:
   16606              :           if ((
   16607              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16608              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16609              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16610              : (TARGET_AVX512F)))
   16611              :             return 9706; /* *vec_concatv8di_0_1 */
   16612              :           break;
   16613              : 
   16614              :         case 10:
   16615              :           if ((
   16616              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16617              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16618              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16619              : (TARGET_AVX)))
   16620              :             return 9707; /* *vec_concatv4di_0_1 */
   16621              :           break;
   16622              : 
   16623              :         case 11:
   16624              :           if (
   16625              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16626              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16627              :             return 9708; /* *vec_concatv2di_0_1 */
   16628              :           break;
   16629              : 
   16630              :         case 12:
   16631              :           if ((
   16632              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16633              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16634              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16635              : (TARGET_AVX512F)))
   16636              :             return 9709; /* *vec_concatv32hf_0_1 */
   16637              :           break;
   16638              : 
   16639              :         case 13:
   16640              :           if ((
   16641              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16642              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16643              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16644              : (TARGET_AVX)))
   16645              :             return 9710; /* *vec_concatv16hf_0_1 */
   16646              :           break;
   16647              : 
   16648              :         case 14:
   16649              :           if (
   16650              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16651              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16652              :             return 9711; /* *vec_concatv8hf_0_1 */
   16653              :           break;
   16654              : 
   16655              :         case 15:
   16656              :           if ((
   16657              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16658              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16659              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16660              : (TARGET_AVX512F)))
   16661              :             return 9712; /* *vec_concatv32bf_0_1 */
   16662              :           break;
   16663              : 
   16664              :         case 16:
   16665              :           if ((
   16666              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16667              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16668              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16669              : (TARGET_AVX)))
   16670              :             return 9713; /* *vec_concatv16bf_0_1 */
   16671              :           break;
   16672              : 
   16673              :         case 17:
   16674              :           if (
   16675              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16676              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16677              :             return 9714; /* *vec_concatv8bf_0_1 */
   16678              :           break;
   16679              : 
   16680              :         case 18:
   16681              :           if ((
   16682              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16683              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16684              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16685              : (TARGET_AVX512F)))
   16686              :             return 9715; /* *vec_concatv16sf_0_1 */
   16687              :           break;
   16688              : 
   16689              :         case 19:
   16690              :           if ((
   16691              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16692              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16693              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16694              : (TARGET_AVX)))
   16695              :             return 9716; /* *vec_concatv8sf_0_1 */
   16696              :           break;
   16697              : 
   16698              :         case 20:
   16699              :           if (
   16700              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16701              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16702              :             return 9717; /* *vec_concatv4sf_0_1 */
   16703              :           break;
   16704              : 
   16705              :         case 21:
   16706              :           if ((
   16707              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16708              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16709              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16710              : (TARGET_AVX512F)))
   16711              :             return 9718; /* *vec_concatv8df_0_1 */
   16712              :           break;
   16713              : 
   16714              :         case 22:
   16715              :           if ((
   16716              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16717              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16718              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16719              : (TARGET_AVX)))
   16720              :             return 9719; /* *vec_concatv4df_0_1 */
   16721              :           break;
   16722              : 
   16723              :         case 23:
   16724              :           if ((
   16725              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16726              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16727              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16728              : (TARGET_SSE2)))
   16729              :             return 9720; /* *vec_concatv2df_0_1 */
   16730              :           break;
   16731              : 
   16732              :         default:
   16733              :           break;
   16734              :         }
   16735              :       break;
   16736              : 
   16737              :     default:
   16738              :       break;
   16739              :     }
   16740              :   x5 = XEXP (x2, 1);
   16741              :   if (XVECLEN (x5, 0) < 1)
   16742              :     return -1;
   16743              :   switch (pattern812 (x2))
   16744              :     {
   16745              :     case 0:
   16746              :       if (!
   16747              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16748              : (TARGET_AVX && ix86_pre_reload_split ()))
   16749              :         return -1;
   16750              :       return 9386; /* *avx_vbroadcastf128_v32qi_perm */
   16751              : 
   16752              :     case 1:
   16753              :       if (!
   16754              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16755              : (TARGET_AVX && ix86_pre_reload_split ()))
   16756              :         return -1;
   16757              :       return 9387; /* *avx_vbroadcastf128_v16hi_perm */
   16758              : 
   16759              :     case 2:
   16760              :       if (!
   16761              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16762              : (TARGET_AVX && ix86_pre_reload_split ()))
   16763              :         return -1;
   16764              :       return 9388; /* *avx_vbroadcastf128_v8si_perm */
   16765              : 
   16766              :     case 3:
   16767              :       if (!
   16768              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16769              : (TARGET_AVX && ix86_pre_reload_split ()))
   16770              :         return -1;
   16771              :       return 9389; /* *avx_vbroadcastf128_v4di_perm */
   16772              : 
   16773              :     case 4:
   16774              :       if (!
   16775              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16776              : (TARGET_AVX && ix86_pre_reload_split ()))
   16777              :         return -1;
   16778              :       return 9390; /* *avx_vbroadcastf128_v8sf_perm */
   16779              : 
   16780              :     case 5:
   16781              :       if (!
   16782              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16783              : (TARGET_AVX && ix86_pre_reload_split ()))
   16784              :         return -1;
   16785              :       return 9391; /* *avx_vbroadcastf128_v4df_perm */
   16786              : 
   16787              :     case 6:
   16788              :       if (!
   16789              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16790              : (TARGET_AVX && ix86_pre_reload_split ()))
   16791              :         return -1;
   16792              :       return 9392; /* *avx_vbroadcastf128_v16hf_perm */
   16793              : 
   16794              :     case 7:
   16795              :       if (!
   16796              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16797              : (TARGET_AVX && ix86_pre_reload_split ()))
   16798              :         return -1;
   16799              :       return 9393; /* *avx_vbroadcastf128_v16bf_perm */
   16800              : 
   16801              :     default:
   16802              :       return -1;
   16803              :     }
   16804              : }
   16805              : 
   16806              :  int
   16807              : recog_307 (rtx x1 ATTRIBUTE_UNUSED,
   16808              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16809              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16810              : {
   16811              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16812              :   rtx x2, x3, x4;
   16813              :   int res ATTRIBUTE_UNUSED;
   16814              :   x2 = XEXP (x1, 1);
   16815              :   x3 = XEXP (x2, 0);
   16816              :   x4 = XEXP (x3, 0);
   16817              :   switch (GET_CODE (x4))
   16818              :     {
   16819              :     case REG:
   16820              :     case SUBREG:
   16821              :     case MEM:
   16822              :     case NOT:
   16823              :       switch (pattern535 (x2))
   16824              :         {
   16825              :         case 0:
   16826              :           if (!(
   16827              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16828              : ((64 == 64 || TARGET_AVX512VL
   16829              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16830              :    && ix86_pre_reload_split ()
   16831              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16832              :                     STRIP_UNARY (operands[4]))
   16833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16834              :                        STRIP_UNARY (operands[4]))
   16835              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16836              :                        STRIP_UNARY (operands[3]))
   16837              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16838              :                        STRIP_UNARY (operands[3])))) && 
   16839              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16840              : (TARGET_AVX512F)))
   16841              :             return -1;
   16842              :           return 5547; /* *avx512bw_vpternlogv64qi_1 */
   16843              : 
   16844              :         case 1:
   16845              :           if (!(
   16846              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16847              : ((32 == 64 || TARGET_AVX512VL
   16848              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16849              :    && ix86_pre_reload_split ()
   16850              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16851              :                     STRIP_UNARY (operands[4]))
   16852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16853              :                        STRIP_UNARY (operands[4]))
   16854              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16855              :                        STRIP_UNARY (operands[3]))
   16856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16857              :                        STRIP_UNARY (operands[3])))) && 
   16858              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16859              : (TARGET_AVX)))
   16860              :             return -1;
   16861              :           return 5574; /* *avx512vl_vpternlogv32qi_1 */
   16862              : 
   16863              :         case 2:
   16864              :           if (!
   16865              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16866              : ((16 == 64 || TARGET_AVX512VL
   16867              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16868              :    && ix86_pre_reload_split ()
   16869              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16870              :                     STRIP_UNARY (operands[4]))
   16871              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16872              :                        STRIP_UNARY (operands[4]))
   16873              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16874              :                        STRIP_UNARY (operands[3]))
   16875              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16876              :                        STRIP_UNARY (operands[3])))))
   16877              :             return -1;
   16878              :           return 5601; /* *avx512vl_vpternlogv16qi_1 */
   16879              : 
   16880              :         case 3:
   16881              :           if (!(
   16882              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16883              : ((64 == 64 || TARGET_AVX512VL
   16884              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16885              :    && ix86_pre_reload_split ()
   16886              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16887              :                     STRIP_UNARY (operands[4]))
   16888              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16889              :                        STRIP_UNARY (operands[4]))
   16890              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16891              :                        STRIP_UNARY (operands[3]))
   16892              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16893              :                        STRIP_UNARY (operands[3])))) && 
   16894              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16895              : (TARGET_AVX512F)))
   16896              :             return -1;
   16897              :           return 5628; /* *avx512bw_vpternlogv32hi_1 */
   16898              : 
   16899              :         case 4:
   16900              :           if (!(
   16901              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16902              : ((32 == 64 || TARGET_AVX512VL
   16903              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16904              :    && ix86_pre_reload_split ()
   16905              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16906              :                     STRIP_UNARY (operands[4]))
   16907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16908              :                        STRIP_UNARY (operands[4]))
   16909              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16910              :                        STRIP_UNARY (operands[3]))
   16911              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16912              :                        STRIP_UNARY (operands[3])))) && 
   16913              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16914              : (TARGET_AVX)))
   16915              :             return -1;
   16916              :           return 5655; /* *avx512vl_vpternlogv16hi_1 */
   16917              : 
   16918              :         case 5:
   16919              :           if (!
   16920              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16921              : ((16 == 64 || TARGET_AVX512VL
   16922              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16923              :    && ix86_pre_reload_split ()
   16924              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16925              :                     STRIP_UNARY (operands[4]))
   16926              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16927              :                        STRIP_UNARY (operands[4]))
   16928              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16929              :                        STRIP_UNARY (operands[3]))
   16930              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16931              :                        STRIP_UNARY (operands[3])))))
   16932              :             return -1;
   16933              :           return 5682; /* *avx512vl_vpternlogv8hi_1 */
   16934              : 
   16935              :         case 6:
   16936              :           if (!(
   16937              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16938              : ((64 == 64 || TARGET_AVX512VL
   16939              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16940              :    && ix86_pre_reload_split ()
   16941              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16942              :                     STRIP_UNARY (operands[4]))
   16943              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16944              :                        STRIP_UNARY (operands[4]))
   16945              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16946              :                        STRIP_UNARY (operands[3]))
   16947              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16948              :                        STRIP_UNARY (operands[3])))) && 
   16949              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16950              : (TARGET_AVX512F)))
   16951              :             return -1;
   16952              :           return 5709; /* *avx512f_vpternlogv16si_1 */
   16953              : 
   16954              :         case 7:
   16955              :           if (!(
   16956              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16957              : ((32 == 64 || TARGET_AVX512VL
   16958              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16959              :    && ix86_pre_reload_split ()
   16960              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16961              :                     STRIP_UNARY (operands[4]))
   16962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16963              :                        STRIP_UNARY (operands[4]))
   16964              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16965              :                        STRIP_UNARY (operands[3]))
   16966              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16967              :                        STRIP_UNARY (operands[3])))) && 
   16968              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16969              : (TARGET_AVX)))
   16970              :             return -1;
   16971              :           return 5736; /* *avx512vl_vpternlogv8si_1 */
   16972              : 
   16973              :         case 8:
   16974              :           if (!
   16975              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16976              : ((16 == 64 || TARGET_AVX512VL
   16977              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16978              :    && ix86_pre_reload_split ()
   16979              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16980              :                     STRIP_UNARY (operands[4]))
   16981              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16982              :                        STRIP_UNARY (operands[4]))
   16983              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16984              :                        STRIP_UNARY (operands[3]))
   16985              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16986              :                        STRIP_UNARY (operands[3])))))
   16987              :             return -1;
   16988              :           return 5763; /* *avx512vl_vpternlogv4si_1 */
   16989              : 
   16990              :         case 9:
   16991              :           if (!(
   16992              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16993              : ((64 == 64 || TARGET_AVX512VL
   16994              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16995              :    && ix86_pre_reload_split ()
   16996              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16997              :                     STRIP_UNARY (operands[4]))
   16998              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16999              :                        STRIP_UNARY (operands[4]))
   17000              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17001              :                        STRIP_UNARY (operands[3]))
   17002              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17003              :                        STRIP_UNARY (operands[3])))) && 
   17004              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17005              : (TARGET_AVX512F)))
   17006              :             return -1;
   17007              :           return 5790; /* *avx512f_vpternlogv8di_1 */
   17008              : 
   17009              :         case 10:
   17010              :           if (!(
   17011              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17012              : ((32 == 64 || TARGET_AVX512VL
   17013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17014              :    && ix86_pre_reload_split ()
   17015              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17016              :                     STRIP_UNARY (operands[4]))
   17017              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17018              :                        STRIP_UNARY (operands[4]))
   17019              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17020              :                        STRIP_UNARY (operands[3]))
   17021              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17022              :                        STRIP_UNARY (operands[3])))) && 
   17023              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17024              : (TARGET_AVX)))
   17025              :             return -1;
   17026              :           return 5817; /* *avx512vl_vpternlogv4di_1 */
   17027              : 
   17028              :         case 11:
   17029              :           if (!
   17030              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17031              : ((16 == 64 || TARGET_AVX512VL
   17032              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17033              :    && ix86_pre_reload_split ()
   17034              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17035              :                     STRIP_UNARY (operands[4]))
   17036              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17037              :                        STRIP_UNARY (operands[4]))
   17038              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17039              :                        STRIP_UNARY (operands[3]))
   17040              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17041              :                        STRIP_UNARY (operands[3])))))
   17042              :             return -1;
   17043              :           return 5844; /* *avx512vl_vpternlogv2di_1 */
   17044              : 
   17045              :         case 12:
   17046              :           if (!(
   17047              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17048              : ((64 == 64 || TARGET_AVX512VL
   17049              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17050              :    && ix86_pre_reload_split ()
   17051              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17052              :                     STRIP_UNARY (operands[4]))
   17053              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17054              :                        STRIP_UNARY (operands[4]))
   17055              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17056              :                        STRIP_UNARY (operands[3]))
   17057              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17058              :                        STRIP_UNARY (operands[3])))) && 
   17059              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17060              : (TARGET_AVX512F)))
   17061              :             return -1;
   17062              :           return 5550; /* *avx512bw_vpternlogv64qi_1 */
   17063              : 
   17064              :         case 13:
   17065              :           if (!(
   17066              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17067              : ((32 == 64 || TARGET_AVX512VL
   17068              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17069              :    && ix86_pre_reload_split ()
   17070              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17071              :                     STRIP_UNARY (operands[4]))
   17072              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17073              :                        STRIP_UNARY (operands[4]))
   17074              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17075              :                        STRIP_UNARY (operands[3]))
   17076              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17077              :                        STRIP_UNARY (operands[3])))) && 
   17078              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17079              : (TARGET_AVX)))
   17080              :             return -1;
   17081              :           return 5577; /* *avx512vl_vpternlogv32qi_1 */
   17082              : 
   17083              :         case 14:
   17084              :           if (!
   17085              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17086              : ((16 == 64 || TARGET_AVX512VL
   17087              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17088              :    && ix86_pre_reload_split ()
   17089              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17090              :                     STRIP_UNARY (operands[4]))
   17091              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17092              :                        STRIP_UNARY (operands[4]))
   17093              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17094              :                        STRIP_UNARY (operands[3]))
   17095              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17096              :                        STRIP_UNARY (operands[3])))))
   17097              :             return -1;
   17098              :           return 5604; /* *avx512vl_vpternlogv16qi_1 */
   17099              : 
   17100              :         case 15:
   17101              :           if (!(
   17102              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17103              : ((64 == 64 || TARGET_AVX512VL
   17104              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17105              :    && ix86_pre_reload_split ()
   17106              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17107              :                     STRIP_UNARY (operands[4]))
   17108              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17109              :                        STRIP_UNARY (operands[4]))
   17110              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17111              :                        STRIP_UNARY (operands[3]))
   17112              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17113              :                        STRIP_UNARY (operands[3])))) && 
   17114              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17115              : (TARGET_AVX512F)))
   17116              :             return -1;
   17117              :           return 5631; /* *avx512bw_vpternlogv32hi_1 */
   17118              : 
   17119              :         case 16:
   17120              :           if (!(
   17121              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17122              : ((32 == 64 || TARGET_AVX512VL
   17123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17124              :    && ix86_pre_reload_split ()
   17125              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17126              :                     STRIP_UNARY (operands[4]))
   17127              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17128              :                        STRIP_UNARY (operands[4]))
   17129              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17130              :                        STRIP_UNARY (operands[3]))
   17131              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17132              :                        STRIP_UNARY (operands[3])))) && 
   17133              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17134              : (TARGET_AVX)))
   17135              :             return -1;
   17136              :           return 5658; /* *avx512vl_vpternlogv16hi_1 */
   17137              : 
   17138              :         case 17:
   17139              :           if (!
   17140              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17141              : ((16 == 64 || TARGET_AVX512VL
   17142              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17143              :    && ix86_pre_reload_split ()
   17144              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17145              :                     STRIP_UNARY (operands[4]))
   17146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17147              :                        STRIP_UNARY (operands[4]))
   17148              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17149              :                        STRIP_UNARY (operands[3]))
   17150              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17151              :                        STRIP_UNARY (operands[3])))))
   17152              :             return -1;
   17153              :           return 5685; /* *avx512vl_vpternlogv8hi_1 */
   17154              : 
   17155              :         case 18:
   17156              :           if (!(
   17157              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17158              : ((64 == 64 || TARGET_AVX512VL
   17159              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17160              :    && ix86_pre_reload_split ()
   17161              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17162              :                     STRIP_UNARY (operands[4]))
   17163              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17164              :                        STRIP_UNARY (operands[4]))
   17165              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17166              :                        STRIP_UNARY (operands[3]))
   17167              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17168              :                        STRIP_UNARY (operands[3])))) && 
   17169              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17170              : (TARGET_AVX512F)))
   17171              :             return -1;
   17172              :           return 5712; /* *avx512f_vpternlogv16si_1 */
   17173              : 
   17174              :         case 19:
   17175              :           if (!(
   17176              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17177              : ((32 == 64 || TARGET_AVX512VL
   17178              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17179              :    && ix86_pre_reload_split ()
   17180              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17181              :                     STRIP_UNARY (operands[4]))
   17182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17183              :                        STRIP_UNARY (operands[4]))
   17184              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17185              :                        STRIP_UNARY (operands[3]))
   17186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17187              :                        STRIP_UNARY (operands[3])))) && 
   17188              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17189              : (TARGET_AVX)))
   17190              :             return -1;
   17191              :           return 5739; /* *avx512vl_vpternlogv8si_1 */
   17192              : 
   17193              :         case 20:
   17194              :           if (!
   17195              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17196              : ((16 == 64 || TARGET_AVX512VL
   17197              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17198              :    && ix86_pre_reload_split ()
   17199              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17200              :                     STRIP_UNARY (operands[4]))
   17201              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17202              :                        STRIP_UNARY (operands[4]))
   17203              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17204              :                        STRIP_UNARY (operands[3]))
   17205              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17206              :                        STRIP_UNARY (operands[3])))))
   17207              :             return -1;
   17208              :           return 5766; /* *avx512vl_vpternlogv4si_1 */
   17209              : 
   17210              :         case 21:
   17211              :           if (!(
   17212              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17213              : ((64 == 64 || TARGET_AVX512VL
   17214              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17215              :    && ix86_pre_reload_split ()
   17216              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17217              :                     STRIP_UNARY (operands[4]))
   17218              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17219              :                        STRIP_UNARY (operands[4]))
   17220              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17221              :                        STRIP_UNARY (operands[3]))
   17222              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17223              :                        STRIP_UNARY (operands[3])))) && 
   17224              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17225              : (TARGET_AVX512F)))
   17226              :             return -1;
   17227              :           return 5793; /* *avx512f_vpternlogv8di_1 */
   17228              : 
   17229              :         case 22:
   17230              :           if (!(
   17231              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17232              : ((32 == 64 || TARGET_AVX512VL
   17233              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17234              :    && ix86_pre_reload_split ()
   17235              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17236              :                     STRIP_UNARY (operands[4]))
   17237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17238              :                        STRIP_UNARY (operands[4]))
   17239              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17240              :                        STRIP_UNARY (operands[3]))
   17241              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17242              :                        STRIP_UNARY (operands[3])))) && 
   17243              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17244              : (TARGET_AVX)))
   17245              :             return -1;
   17246              :           return 5820; /* *avx512vl_vpternlogv4di_1 */
   17247              : 
   17248              :         case 23:
   17249              :           if (!
   17250              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17251              : ((16 == 64 || TARGET_AVX512VL
   17252              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17253              :    && ix86_pre_reload_split ()
   17254              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17255              :                     STRIP_UNARY (operands[4]))
   17256              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17257              :                        STRIP_UNARY (operands[4]))
   17258              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17259              :                        STRIP_UNARY (operands[3]))
   17260              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17261              :                        STRIP_UNARY (operands[3])))))
   17262              :             return -1;
   17263              :           return 5847; /* *avx512vl_vpternlogv2di_1 */
   17264              : 
   17265              :         case 24:
   17266              :           if (!(
   17267              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17268              : ((64 == 64 || TARGET_AVX512VL
   17269              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17270              :    && ix86_pre_reload_split ()
   17271              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17272              :                     STRIP_UNARY (operands[4]))
   17273              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17274              :                        STRIP_UNARY (operands[4]))
   17275              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17276              :                        STRIP_UNARY (operands[3]))
   17277              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17278              :                        STRIP_UNARY (operands[3])))) && 
   17279              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17280              : (TARGET_AVX512F)))
   17281              :             return -1;
   17282              :           return 5553; /* *avx512bw_vpternlogv64qi_1 */
   17283              : 
   17284              :         case 25:
   17285              :           if (!(
   17286              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17287              : ((32 == 64 || TARGET_AVX512VL
   17288              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17289              :    && ix86_pre_reload_split ()
   17290              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17291              :                     STRIP_UNARY (operands[4]))
   17292              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17293              :                        STRIP_UNARY (operands[4]))
   17294              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17295              :                        STRIP_UNARY (operands[3]))
   17296              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17297              :                        STRIP_UNARY (operands[3])))) && 
   17298              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17299              : (TARGET_AVX)))
   17300              :             return -1;
   17301              :           return 5580; /* *avx512vl_vpternlogv32qi_1 */
   17302              : 
   17303              :         case 26:
   17304              :           if (!
   17305              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17306              : ((16 == 64 || TARGET_AVX512VL
   17307              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17308              :    && ix86_pre_reload_split ()
   17309              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17310              :                     STRIP_UNARY (operands[4]))
   17311              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17312              :                        STRIP_UNARY (operands[4]))
   17313              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17314              :                        STRIP_UNARY (operands[3]))
   17315              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17316              :                        STRIP_UNARY (operands[3])))))
   17317              :             return -1;
   17318              :           return 5607; /* *avx512vl_vpternlogv16qi_1 */
   17319              : 
   17320              :         case 27:
   17321              :           if (!(
   17322              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17323              : ((64 == 64 || TARGET_AVX512VL
   17324              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17325              :    && ix86_pre_reload_split ()
   17326              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17327              :                     STRIP_UNARY (operands[4]))
   17328              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17329              :                        STRIP_UNARY (operands[4]))
   17330              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17331              :                        STRIP_UNARY (operands[3]))
   17332              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17333              :                        STRIP_UNARY (operands[3])))) && 
   17334              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17335              : (TARGET_AVX512F)))
   17336              :             return -1;
   17337              :           return 5634; /* *avx512bw_vpternlogv32hi_1 */
   17338              : 
   17339              :         case 28:
   17340              :           if (!(
   17341              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17342              : ((32 == 64 || TARGET_AVX512VL
   17343              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17344              :    && ix86_pre_reload_split ()
   17345              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17346              :                     STRIP_UNARY (operands[4]))
   17347              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17348              :                        STRIP_UNARY (operands[4]))
   17349              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17350              :                        STRIP_UNARY (operands[3]))
   17351              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17352              :                        STRIP_UNARY (operands[3])))) && 
   17353              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17354              : (TARGET_AVX)))
   17355              :             return -1;
   17356              :           return 5661; /* *avx512vl_vpternlogv16hi_1 */
   17357              : 
   17358              :         case 29:
   17359              :           if (!
   17360              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17361              : ((16 == 64 || TARGET_AVX512VL
   17362              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17363              :    && ix86_pre_reload_split ()
   17364              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17365              :                     STRIP_UNARY (operands[4]))
   17366              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17367              :                        STRIP_UNARY (operands[4]))
   17368              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17369              :                        STRIP_UNARY (operands[3]))
   17370              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17371              :                        STRIP_UNARY (operands[3])))))
   17372              :             return -1;
   17373              :           return 5688; /* *avx512vl_vpternlogv8hi_1 */
   17374              : 
   17375              :         case 30:
   17376              :           if (!(
   17377              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17378              : ((64 == 64 || TARGET_AVX512VL
   17379              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17380              :    && ix86_pre_reload_split ()
   17381              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17382              :                     STRIP_UNARY (operands[4]))
   17383              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17384              :                        STRIP_UNARY (operands[4]))
   17385              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17386              :                        STRIP_UNARY (operands[3]))
   17387              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17388              :                        STRIP_UNARY (operands[3])))) && 
   17389              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17390              : (TARGET_AVX512F)))
   17391              :             return -1;
   17392              :           return 5715; /* *avx512f_vpternlogv16si_1 */
   17393              : 
   17394              :         case 31:
   17395              :           if (!(
   17396              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17397              : ((32 == 64 || TARGET_AVX512VL
   17398              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17399              :    && ix86_pre_reload_split ()
   17400              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17401              :                     STRIP_UNARY (operands[4]))
   17402              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17403              :                        STRIP_UNARY (operands[4]))
   17404              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17405              :                        STRIP_UNARY (operands[3]))
   17406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17407              :                        STRIP_UNARY (operands[3])))) && 
   17408              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17409              : (TARGET_AVX)))
   17410              :             return -1;
   17411              :           return 5742; /* *avx512vl_vpternlogv8si_1 */
   17412              : 
   17413              :         case 32:
   17414              :           if (!
   17415              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17416              : ((16 == 64 || TARGET_AVX512VL
   17417              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17418              :    && ix86_pre_reload_split ()
   17419              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17420              :                     STRIP_UNARY (operands[4]))
   17421              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17422              :                        STRIP_UNARY (operands[4]))
   17423              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17424              :                        STRIP_UNARY (operands[3]))
   17425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17426              :                        STRIP_UNARY (operands[3])))))
   17427              :             return -1;
   17428              :           return 5769; /* *avx512vl_vpternlogv4si_1 */
   17429              : 
   17430              :         case 33:
   17431              :           if (!(
   17432              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17433              : ((64 == 64 || TARGET_AVX512VL
   17434              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17435              :    && ix86_pre_reload_split ()
   17436              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17437              :                     STRIP_UNARY (operands[4]))
   17438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17439              :                        STRIP_UNARY (operands[4]))
   17440              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17441              :                        STRIP_UNARY (operands[3]))
   17442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17443              :                        STRIP_UNARY (operands[3])))) && 
   17444              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17445              : (TARGET_AVX512F)))
   17446              :             return -1;
   17447              :           return 5796; /* *avx512f_vpternlogv8di_1 */
   17448              : 
   17449              :         case 34:
   17450              :           if (!(
   17451              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17452              : ((32 == 64 || TARGET_AVX512VL
   17453              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17454              :    && ix86_pre_reload_split ()
   17455              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17456              :                     STRIP_UNARY (operands[4]))
   17457              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17458              :                        STRIP_UNARY (operands[4]))
   17459              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17460              :                        STRIP_UNARY (operands[3]))
   17461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17462              :                        STRIP_UNARY (operands[3])))) && 
   17463              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17464              : (TARGET_AVX)))
   17465              :             return -1;
   17466              :           return 5823; /* *avx512vl_vpternlogv4di_1 */
   17467              : 
   17468              :         case 35:
   17469              :           if (!
   17470              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17471              : ((16 == 64 || TARGET_AVX512VL
   17472              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17473              :    && ix86_pre_reload_split ()
   17474              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17475              :                     STRIP_UNARY (operands[4]))
   17476              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17477              :                        STRIP_UNARY (operands[4]))
   17478              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17479              :                        STRIP_UNARY (operands[3]))
   17480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17481              :                        STRIP_UNARY (operands[3])))))
   17482              :             return -1;
   17483              :           return 5850; /* *avx512vl_vpternlogv2di_1 */
   17484              : 
   17485              :         case 36:
   17486              :           if (!(
   17487              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17488              : ((64 == 64 || TARGET_AVX512VL
   17489              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17490              :    && ix86_pre_reload_split ()) && 
   17491              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17492              : (TARGET_AVX512F)))
   17493              :             return -1;
   17494              :           return 6837; /* *avx512bw_vpternlogv64qi_3 */
   17495              : 
   17496              :         case 37:
   17497              :           if (!(
   17498              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17499              : ((32 == 64 || TARGET_AVX512VL
   17500              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17501              :    && ix86_pre_reload_split ()) && 
   17502              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17503              : (TARGET_AVX)))
   17504              :             return -1;
   17505              :           return 6846; /* *avx512vl_vpternlogv32qi_3 */
   17506              : 
   17507              :         case 38:
   17508              :           if (!
   17509              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17510              : ((16 == 64 || TARGET_AVX512VL
   17511              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17512              :    && ix86_pre_reload_split ()))
   17513              :             return -1;
   17514              :           return 6855; /* *avx512vl_vpternlogv16qi_3 */
   17515              : 
   17516              :         case 39:
   17517              :           if (!(
   17518              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17519              : ((64 == 64 || TARGET_AVX512VL
   17520              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17521              :    && ix86_pre_reload_split ()) && 
   17522              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17523              : (TARGET_AVX512F)))
   17524              :             return -1;
   17525              :           return 6864; /* *avx512bw_vpternlogv32hi_3 */
   17526              : 
   17527              :         case 40:
   17528              :           if (!(
   17529              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17530              : ((32 == 64 || TARGET_AVX512VL
   17531              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17532              :    && ix86_pre_reload_split ()) && 
   17533              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17534              : (TARGET_AVX)))
   17535              :             return -1;
   17536              :           return 6873; /* *avx512vl_vpternlogv16hi_3 */
   17537              : 
   17538              :         case 41:
   17539              :           if (!
   17540              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17541              : ((16 == 64 || TARGET_AVX512VL
   17542              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17543              :    && ix86_pre_reload_split ()))
   17544              :             return -1;
   17545              :           return 6882; /* *avx512vl_vpternlogv8hi_3 */
   17546              : 
   17547              :         case 42:
   17548              :           if (!(
   17549              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17550              : ((64 == 64 || TARGET_AVX512VL
   17551              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17552              :    && ix86_pre_reload_split ()) && 
   17553              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17554              : (TARGET_AVX512F)))
   17555              :             return -1;
   17556              :           return 6891; /* *avx512f_vpternlogv16si_3 */
   17557              : 
   17558              :         case 43:
   17559              :           if (!(
   17560              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17561              : ((32 == 64 || TARGET_AVX512VL
   17562              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17563              :    && ix86_pre_reload_split ()) && 
   17564              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17565              : (TARGET_AVX)))
   17566              :             return -1;
   17567              :           return 6900; /* *avx512vl_vpternlogv8si_3 */
   17568              : 
   17569              :         case 44:
   17570              :           if (!
   17571              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17572              : ((16 == 64 || TARGET_AVX512VL
   17573              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17574              :    && ix86_pre_reload_split ()))
   17575              :             return -1;
   17576              :           return 6909; /* *avx512vl_vpternlogv4si_3 */
   17577              : 
   17578              :         case 45:
   17579              :           if (!(
   17580              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17581              : ((64 == 64 || TARGET_AVX512VL
   17582              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17583              :    && ix86_pre_reload_split ()) && 
   17584              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17585              : (TARGET_AVX512F)))
   17586              :             return -1;
   17587              :           return 6918; /* *avx512f_vpternlogv8di_3 */
   17588              : 
   17589              :         case 46:
   17590              :           if (!(
   17591              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17592              : ((32 == 64 || TARGET_AVX512VL
   17593              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17594              :    && ix86_pre_reload_split ()) && 
   17595              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17596              : (TARGET_AVX)))
   17597              :             return -1;
   17598              :           return 6927; /* *avx512vl_vpternlogv4di_3 */
   17599              : 
   17600              :         case 47:
   17601              :           if (!
   17602              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17603              : ((16 == 64 || TARGET_AVX512VL
   17604              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17605              :    && ix86_pre_reload_split ()))
   17606              :             return -1;
   17607              :           return 6936; /* *avx512vl_vpternlogv2di_3 */
   17608              : 
   17609              :         default:
   17610              :           return -1;
   17611              :         }
   17612              : 
   17613              :     case AND:
   17614              :       switch (pattern537 (x2))
   17615              :         {
   17616              :         case 0:
   17617              :           if (!(
   17618              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17619              : ((64 == 64 || TARGET_AVX512VL
   17620              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17621              :    && ix86_pre_reload_split ()
   17622              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17623              :                     STRIP_UNARY (operands[4]))
   17624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17625              :                        STRIP_UNARY (operands[4]))
   17626              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17627              :                        STRIP_UNARY (operands[3]))
   17628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17629              :                        STRIP_UNARY (operands[3])))) && 
   17630              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17631              : (TARGET_AVX512F)))
   17632              :             return -1;
   17633              :           return 6195; /* *avx512bw_vpternlogv64qi_2 */
   17634              : 
   17635              :         case 1:
   17636              :           if (!(
   17637              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17638              : ((32 == 64 || TARGET_AVX512VL
   17639              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17640              :    && ix86_pre_reload_split ()
   17641              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17642              :                     STRIP_UNARY (operands[4]))
   17643              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17644              :                        STRIP_UNARY (operands[4]))
   17645              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17646              :                        STRIP_UNARY (operands[3]))
   17647              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17648              :                        STRIP_UNARY (operands[3])))) && 
   17649              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17650              : (TARGET_AVX)))
   17651              :             return -1;
   17652              :           return 6222; /* *avx512vl_vpternlogv32qi_2 */
   17653              : 
   17654              :         case 2:
   17655              :           if (!
   17656              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17657              : ((16 == 64 || TARGET_AVX512VL
   17658              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17659              :    && ix86_pre_reload_split ()
   17660              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17661              :                     STRIP_UNARY (operands[4]))
   17662              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17663              :                        STRIP_UNARY (operands[4]))
   17664              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17665              :                        STRIP_UNARY (operands[3]))
   17666              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17667              :                        STRIP_UNARY (operands[3])))))
   17668              :             return -1;
   17669              :           return 6249; /* *avx512vl_vpternlogv16qi_2 */
   17670              : 
   17671              :         case 3:
   17672              :           if (!(
   17673              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17674              : ((64 == 64 || TARGET_AVX512VL
   17675              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17676              :    && ix86_pre_reload_split ()
   17677              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17678              :                     STRIP_UNARY (operands[4]))
   17679              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17680              :                        STRIP_UNARY (operands[4]))
   17681              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17682              :                        STRIP_UNARY (operands[3]))
   17683              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17684              :                        STRIP_UNARY (operands[3])))) && 
   17685              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17686              : (TARGET_AVX512F)))
   17687              :             return -1;
   17688              :           return 6276; /* *avx512bw_vpternlogv32hi_2 */
   17689              : 
   17690              :         case 4:
   17691              :           if (!(
   17692              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17693              : ((32 == 64 || TARGET_AVX512VL
   17694              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17695              :    && ix86_pre_reload_split ()
   17696              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17697              :                     STRIP_UNARY (operands[4]))
   17698              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17699              :                        STRIP_UNARY (operands[4]))
   17700              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17701              :                        STRIP_UNARY (operands[3]))
   17702              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17703              :                        STRIP_UNARY (operands[3])))) && 
   17704              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17705              : (TARGET_AVX)))
   17706              :             return -1;
   17707              :           return 6303; /* *avx512vl_vpternlogv16hi_2 */
   17708              : 
   17709              :         case 5:
   17710              :           if (!
   17711              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17712              : ((16 == 64 || TARGET_AVX512VL
   17713              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17714              :    && ix86_pre_reload_split ()
   17715              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17716              :                     STRIP_UNARY (operands[4]))
   17717              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17718              :                        STRIP_UNARY (operands[4]))
   17719              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17720              :                        STRIP_UNARY (operands[3]))
   17721              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17722              :                        STRIP_UNARY (operands[3])))))
   17723              :             return -1;
   17724              :           return 6330; /* *avx512vl_vpternlogv8hi_2 */
   17725              : 
   17726              :         case 6:
   17727              :           if (!(
   17728              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17729              : ((64 == 64 || TARGET_AVX512VL
   17730              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17731              :    && ix86_pre_reload_split ()
   17732              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17733              :                     STRIP_UNARY (operands[4]))
   17734              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17735              :                        STRIP_UNARY (operands[4]))
   17736              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17737              :                        STRIP_UNARY (operands[3]))
   17738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17739              :                        STRIP_UNARY (operands[3])))) && 
   17740              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17741              : (TARGET_AVX512F)))
   17742              :             return -1;
   17743              :           return 6357; /* *avx512f_vpternlogv16si_2 */
   17744              : 
   17745              :         case 7:
   17746              :           if (!(
   17747              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17748              : ((32 == 64 || TARGET_AVX512VL
   17749              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17750              :    && ix86_pre_reload_split ()
   17751              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17752              :                     STRIP_UNARY (operands[4]))
   17753              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17754              :                        STRIP_UNARY (operands[4]))
   17755              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17756              :                        STRIP_UNARY (operands[3]))
   17757              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17758              :                        STRIP_UNARY (operands[3])))) && 
   17759              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17760              : (TARGET_AVX)))
   17761              :             return -1;
   17762              :           return 6384; /* *avx512vl_vpternlogv8si_2 */
   17763              : 
   17764              :         case 8:
   17765              :           if (!
   17766              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17767              : ((16 == 64 || TARGET_AVX512VL
   17768              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17769              :    && ix86_pre_reload_split ()
   17770              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17771              :                     STRIP_UNARY (operands[4]))
   17772              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17773              :                        STRIP_UNARY (operands[4]))
   17774              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17775              :                        STRIP_UNARY (operands[3]))
   17776              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17777              :                        STRIP_UNARY (operands[3])))))
   17778              :             return -1;
   17779              :           return 6411; /* *avx512vl_vpternlogv4si_2 */
   17780              : 
   17781              :         case 9:
   17782              :           if (!(
   17783              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17784              : ((64 == 64 || TARGET_AVX512VL
   17785              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17786              :    && ix86_pre_reload_split ()
   17787              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17788              :                     STRIP_UNARY (operands[4]))
   17789              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17790              :                        STRIP_UNARY (operands[4]))
   17791              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17792              :                        STRIP_UNARY (operands[3]))
   17793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17794              :                        STRIP_UNARY (operands[3])))) && 
   17795              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17796              : (TARGET_AVX512F)))
   17797              :             return -1;
   17798              :           return 6438; /* *avx512f_vpternlogv8di_2 */
   17799              : 
   17800              :         case 10:
   17801              :           if (!(
   17802              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17803              : ((32 == 64 || TARGET_AVX512VL
   17804              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17805              :    && ix86_pre_reload_split ()
   17806              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17807              :                     STRIP_UNARY (operands[4]))
   17808              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17809              :                        STRIP_UNARY (operands[4]))
   17810              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17811              :                        STRIP_UNARY (operands[3]))
   17812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17813              :                        STRIP_UNARY (operands[3])))) && 
   17814              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17815              : (TARGET_AVX)))
   17816              :             return -1;
   17817              :           return 6465; /* *avx512vl_vpternlogv4di_2 */
   17818              : 
   17819              :         case 11:
   17820              :           if (!
   17821              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17822              : ((16 == 64 || TARGET_AVX512VL
   17823              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17824              :    && ix86_pre_reload_split ()
   17825              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17826              :                     STRIP_UNARY (operands[4]))
   17827              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17828              :                        STRIP_UNARY (operands[4]))
   17829              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17830              :                        STRIP_UNARY (operands[3]))
   17831              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17832              :                        STRIP_UNARY (operands[3])))))
   17833              :             return -1;
   17834              :           return 6492; /* *avx512vl_vpternlogv2di_2 */
   17835              : 
   17836              :         default:
   17837              :           return -1;
   17838              :         }
   17839              : 
   17840              :     case IOR:
   17841              :       switch (pattern537 (x2))
   17842              :         {
   17843              :         case 0:
   17844              :           if (!(
   17845              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17846              : ((64 == 64 || TARGET_AVX512VL
   17847              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17848              :    && ix86_pre_reload_split ()
   17849              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17850              :                     STRIP_UNARY (operands[4]))
   17851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17852              :                        STRIP_UNARY (operands[4]))
   17853              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17854              :                        STRIP_UNARY (operands[3]))
   17855              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17856              :                        STRIP_UNARY (operands[3])))) && 
   17857              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17858              : (TARGET_AVX512F)))
   17859              :             return -1;
   17860              :           return 6198; /* *avx512bw_vpternlogv64qi_2 */
   17861              : 
   17862              :         case 1:
   17863              :           if (!(
   17864              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17865              : ((32 == 64 || TARGET_AVX512VL
   17866              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17867              :    && ix86_pre_reload_split ()
   17868              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17869              :                     STRIP_UNARY (operands[4]))
   17870              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17871              :                        STRIP_UNARY (operands[4]))
   17872              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17873              :                        STRIP_UNARY (operands[3]))
   17874              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17875              :                        STRIP_UNARY (operands[3])))) && 
   17876              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17877              : (TARGET_AVX)))
   17878              :             return -1;
   17879              :           return 6225; /* *avx512vl_vpternlogv32qi_2 */
   17880              : 
   17881              :         case 2:
   17882              :           if (!
   17883              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17884              : ((16 == 64 || TARGET_AVX512VL
   17885              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17886              :    && ix86_pre_reload_split ()
   17887              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17888              :                     STRIP_UNARY (operands[4]))
   17889              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17890              :                        STRIP_UNARY (operands[4]))
   17891              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17892              :                        STRIP_UNARY (operands[3]))
   17893              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17894              :                        STRIP_UNARY (operands[3])))))
   17895              :             return -1;
   17896              :           return 6252; /* *avx512vl_vpternlogv16qi_2 */
   17897              : 
   17898              :         case 3:
   17899              :           if (!(
   17900              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17901              : ((64 == 64 || TARGET_AVX512VL
   17902              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17903              :    && ix86_pre_reload_split ()
   17904              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17905              :                     STRIP_UNARY (operands[4]))
   17906              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17907              :                        STRIP_UNARY (operands[4]))
   17908              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17909              :                        STRIP_UNARY (operands[3]))
   17910              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17911              :                        STRIP_UNARY (operands[3])))) && 
   17912              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17913              : (TARGET_AVX512F)))
   17914              :             return -1;
   17915              :           return 6279; /* *avx512bw_vpternlogv32hi_2 */
   17916              : 
   17917              :         case 4:
   17918              :           if (!(
   17919              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17920              : ((32 == 64 || TARGET_AVX512VL
   17921              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17922              :    && ix86_pre_reload_split ()
   17923              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17924              :                     STRIP_UNARY (operands[4]))
   17925              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17926              :                        STRIP_UNARY (operands[4]))
   17927              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17928              :                        STRIP_UNARY (operands[3]))
   17929              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17930              :                        STRIP_UNARY (operands[3])))) && 
   17931              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17932              : (TARGET_AVX)))
   17933              :             return -1;
   17934              :           return 6306; /* *avx512vl_vpternlogv16hi_2 */
   17935              : 
   17936              :         case 5:
   17937              :           if (!
   17938              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17939              : ((16 == 64 || TARGET_AVX512VL
   17940              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17941              :    && ix86_pre_reload_split ()
   17942              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17943              :                     STRIP_UNARY (operands[4]))
   17944              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17945              :                        STRIP_UNARY (operands[4]))
   17946              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17947              :                        STRIP_UNARY (operands[3]))
   17948              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17949              :                        STRIP_UNARY (operands[3])))))
   17950              :             return -1;
   17951              :           return 6333; /* *avx512vl_vpternlogv8hi_2 */
   17952              : 
   17953              :         case 6:
   17954              :           if (!(
   17955              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17956              : ((64 == 64 || TARGET_AVX512VL
   17957              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17958              :    && ix86_pre_reload_split ()
   17959              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17960              :                     STRIP_UNARY (operands[4]))
   17961              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17962              :                        STRIP_UNARY (operands[4]))
   17963              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17964              :                        STRIP_UNARY (operands[3]))
   17965              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17966              :                        STRIP_UNARY (operands[3])))) && 
   17967              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17968              : (TARGET_AVX512F)))
   17969              :             return -1;
   17970              :           return 6360; /* *avx512f_vpternlogv16si_2 */
   17971              : 
   17972              :         case 7:
   17973              :           if (!(
   17974              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17975              : ((32 == 64 || TARGET_AVX512VL
   17976              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17977              :    && ix86_pre_reload_split ()
   17978              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17979              :                     STRIP_UNARY (operands[4]))
   17980              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17981              :                        STRIP_UNARY (operands[4]))
   17982              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17983              :                        STRIP_UNARY (operands[3]))
   17984              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17985              :                        STRIP_UNARY (operands[3])))) && 
   17986              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17987              : (TARGET_AVX)))
   17988              :             return -1;
   17989              :           return 6387; /* *avx512vl_vpternlogv8si_2 */
   17990              : 
   17991              :         case 8:
   17992              :           if (!
   17993              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17994              : ((16 == 64 || TARGET_AVX512VL
   17995              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17996              :    && ix86_pre_reload_split ()
   17997              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17998              :                     STRIP_UNARY (operands[4]))
   17999              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18000              :                        STRIP_UNARY (operands[4]))
   18001              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18002              :                        STRIP_UNARY (operands[3]))
   18003              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18004              :                        STRIP_UNARY (operands[3])))))
   18005              :             return -1;
   18006              :           return 6414; /* *avx512vl_vpternlogv4si_2 */
   18007              : 
   18008              :         case 9:
   18009              :           if (!(
   18010              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18011              : ((64 == 64 || TARGET_AVX512VL
   18012              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18013              :    && ix86_pre_reload_split ()
   18014              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18015              :                     STRIP_UNARY (operands[4]))
   18016              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18017              :                        STRIP_UNARY (operands[4]))
   18018              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18019              :                        STRIP_UNARY (operands[3]))
   18020              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18021              :                        STRIP_UNARY (operands[3])))) && 
   18022              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18023              : (TARGET_AVX512F)))
   18024              :             return -1;
   18025              :           return 6441; /* *avx512f_vpternlogv8di_2 */
   18026              : 
   18027              :         case 10:
   18028              :           if (!(
   18029              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18030              : ((32 == 64 || TARGET_AVX512VL
   18031              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18032              :    && ix86_pre_reload_split ()
   18033              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18034              :                     STRIP_UNARY (operands[4]))
   18035              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18036              :                        STRIP_UNARY (operands[4]))
   18037              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18038              :                        STRIP_UNARY (operands[3]))
   18039              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18040              :                        STRIP_UNARY (operands[3])))) && 
   18041              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18042              : (TARGET_AVX)))
   18043              :             return -1;
   18044              :           return 6468; /* *avx512vl_vpternlogv4di_2 */
   18045              : 
   18046              :         case 11:
   18047              :           if (!
   18048              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18049              : ((16 == 64 || TARGET_AVX512VL
   18050              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18051              :    && ix86_pre_reload_split ()
   18052              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18053              :                     STRIP_UNARY (operands[4]))
   18054              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18055              :                        STRIP_UNARY (operands[4]))
   18056              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18057              :                        STRIP_UNARY (operands[3]))
   18058              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18059              :                        STRIP_UNARY (operands[3])))))
   18060              :             return -1;
   18061              :           return 6495; /* *avx512vl_vpternlogv2di_2 */
   18062              : 
   18063              :         default:
   18064              :           return -1;
   18065              :         }
   18066              : 
   18067              :     case XOR:
   18068              :       switch (pattern537 (x2))
   18069              :         {
   18070              :         case 0:
   18071              :           if (!(
   18072              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18073              : ((64 == 64 || TARGET_AVX512VL
   18074              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18075              :    && ix86_pre_reload_split ()
   18076              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18077              :                     STRIP_UNARY (operands[4]))
   18078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18079              :                        STRIP_UNARY (operands[4]))
   18080              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18081              :                        STRIP_UNARY (operands[3]))
   18082              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18083              :                        STRIP_UNARY (operands[3])))) && 
   18084              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18085              : (TARGET_AVX512F)))
   18086              :             return -1;
   18087              :           return 6201; /* *avx512bw_vpternlogv64qi_2 */
   18088              : 
   18089              :         case 1:
   18090              :           if (!(
   18091              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18092              : ((32 == 64 || TARGET_AVX512VL
   18093              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18094              :    && ix86_pre_reload_split ()
   18095              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18096              :                     STRIP_UNARY (operands[4]))
   18097              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18098              :                        STRIP_UNARY (operands[4]))
   18099              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18100              :                        STRIP_UNARY (operands[3]))
   18101              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18102              :                        STRIP_UNARY (operands[3])))) && 
   18103              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18104              : (TARGET_AVX)))
   18105              :             return -1;
   18106              :           return 6228; /* *avx512vl_vpternlogv32qi_2 */
   18107              : 
   18108              :         case 2:
   18109              :           if (!
   18110              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18111              : ((16 == 64 || TARGET_AVX512VL
   18112              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18113              :    && ix86_pre_reload_split ()
   18114              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18115              :                     STRIP_UNARY (operands[4]))
   18116              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18117              :                        STRIP_UNARY (operands[4]))
   18118              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18119              :                        STRIP_UNARY (operands[3]))
   18120              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18121              :                        STRIP_UNARY (operands[3])))))
   18122              :             return -1;
   18123              :           return 6255; /* *avx512vl_vpternlogv16qi_2 */
   18124              : 
   18125              :         case 3:
   18126              :           if (!(
   18127              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18128              : ((64 == 64 || TARGET_AVX512VL
   18129              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18130              :    && ix86_pre_reload_split ()
   18131              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18132              :                     STRIP_UNARY (operands[4]))
   18133              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18134              :                        STRIP_UNARY (operands[4]))
   18135              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18136              :                        STRIP_UNARY (operands[3]))
   18137              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18138              :                        STRIP_UNARY (operands[3])))) && 
   18139              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18140              : (TARGET_AVX512F)))
   18141              :             return -1;
   18142              :           return 6282; /* *avx512bw_vpternlogv32hi_2 */
   18143              : 
   18144              :         case 4:
   18145              :           if (!(
   18146              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18147              : ((32 == 64 || TARGET_AVX512VL
   18148              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18149              :    && ix86_pre_reload_split ()
   18150              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18151              :                     STRIP_UNARY (operands[4]))
   18152              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18153              :                        STRIP_UNARY (operands[4]))
   18154              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18155              :                        STRIP_UNARY (operands[3]))
   18156              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18157              :                        STRIP_UNARY (operands[3])))) && 
   18158              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18159              : (TARGET_AVX)))
   18160              :             return -1;
   18161              :           return 6309; /* *avx512vl_vpternlogv16hi_2 */
   18162              : 
   18163              :         case 5:
   18164              :           if (!
   18165              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18166              : ((16 == 64 || TARGET_AVX512VL
   18167              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18168              :    && ix86_pre_reload_split ()
   18169              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18170              :                     STRIP_UNARY (operands[4]))
   18171              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18172              :                        STRIP_UNARY (operands[4]))
   18173              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18174              :                        STRIP_UNARY (operands[3]))
   18175              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18176              :                        STRIP_UNARY (operands[3])))))
   18177              :             return -1;
   18178              :           return 6336; /* *avx512vl_vpternlogv8hi_2 */
   18179              : 
   18180              :         case 6:
   18181              :           if (!(
   18182              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18183              : ((64 == 64 || TARGET_AVX512VL
   18184              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18185              :    && ix86_pre_reload_split ()
   18186              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18187              :                     STRIP_UNARY (operands[4]))
   18188              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18189              :                        STRIP_UNARY (operands[4]))
   18190              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18191              :                        STRIP_UNARY (operands[3]))
   18192              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18193              :                        STRIP_UNARY (operands[3])))) && 
   18194              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18195              : (TARGET_AVX512F)))
   18196              :             return -1;
   18197              :           return 6363; /* *avx512f_vpternlogv16si_2 */
   18198              : 
   18199              :         case 7:
   18200              :           if (!(
   18201              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18202              : ((32 == 64 || TARGET_AVX512VL
   18203              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18204              :    && ix86_pre_reload_split ()
   18205              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18206              :                     STRIP_UNARY (operands[4]))
   18207              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18208              :                        STRIP_UNARY (operands[4]))
   18209              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18210              :                        STRIP_UNARY (operands[3]))
   18211              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18212              :                        STRIP_UNARY (operands[3])))) && 
   18213              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18214              : (TARGET_AVX)))
   18215              :             return -1;
   18216              :           return 6390; /* *avx512vl_vpternlogv8si_2 */
   18217              : 
   18218              :         case 8:
   18219              :           if (!
   18220              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18221              : ((16 == 64 || TARGET_AVX512VL
   18222              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18223              :    && ix86_pre_reload_split ()
   18224              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18225              :                     STRIP_UNARY (operands[4]))
   18226              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18227              :                        STRIP_UNARY (operands[4]))
   18228              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18229              :                        STRIP_UNARY (operands[3]))
   18230              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18231              :                        STRIP_UNARY (operands[3])))))
   18232              :             return -1;
   18233              :           return 6417; /* *avx512vl_vpternlogv4si_2 */
   18234              : 
   18235              :         case 9:
   18236              :           if (!(
   18237              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18238              : ((64 == 64 || TARGET_AVX512VL
   18239              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18240              :    && ix86_pre_reload_split ()
   18241              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18242              :                     STRIP_UNARY (operands[4]))
   18243              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18244              :                        STRIP_UNARY (operands[4]))
   18245              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18246              :                        STRIP_UNARY (operands[3]))
   18247              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18248              :                        STRIP_UNARY (operands[3])))) && 
   18249              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18250              : (TARGET_AVX512F)))
   18251              :             return -1;
   18252              :           return 6444; /* *avx512f_vpternlogv8di_2 */
   18253              : 
   18254              :         case 10:
   18255              :           if (!(
   18256              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18257              : ((32 == 64 || TARGET_AVX512VL
   18258              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18259              :    && ix86_pre_reload_split ()
   18260              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18261              :                     STRIP_UNARY (operands[4]))
   18262              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18263              :                        STRIP_UNARY (operands[4]))
   18264              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18265              :                        STRIP_UNARY (operands[3]))
   18266              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18267              :                        STRIP_UNARY (operands[3])))) && 
   18268              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18269              : (TARGET_AVX)))
   18270              :             return -1;
   18271              :           return 6471; /* *avx512vl_vpternlogv4di_2 */
   18272              : 
   18273              :         case 11:
   18274              :           if (!
   18275              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18276              : ((16 == 64 || TARGET_AVX512VL
   18277              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18278              :    && ix86_pre_reload_split ()
   18279              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18280              :                     STRIP_UNARY (operands[4]))
   18281              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18282              :                        STRIP_UNARY (operands[4]))
   18283              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18284              :                        STRIP_UNARY (operands[3]))
   18285              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18286              :                        STRIP_UNARY (operands[3])))))
   18287              :             return -1;
   18288              :           return 6498; /* *avx512vl_vpternlogv2di_2 */
   18289              : 
   18290              :         default:
   18291              :           return -1;
   18292              :         }
   18293              : 
   18294              :     default:
   18295              :       return -1;
   18296              :     }
   18297              : }
   18298              : 
   18299              :  int
   18300              : recog_317 (rtx x1 ATTRIBUTE_UNUSED,
   18301              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18302              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18303              : {
   18304              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18305              :   rtx x2, x3, x4;
   18306              :   int res ATTRIBUTE_UNUSED;
   18307              :   x2 = XEXP (x1, 1);
   18308              :   x3 = XEXP (x2, 0);
   18309              :   switch (GET_CODE (x3))
   18310              :     {
   18311              :     case AND:
   18312              :       x4 = XEXP (x3, 0);
   18313              :       switch (GET_CODE (x4))
   18314              :         {
   18315              :         case REG:
   18316              :         case SUBREG:
   18317              :         case MEM:
   18318              :         case NOT:
   18319              :           switch (pattern541 (x2))
   18320              :             {
   18321              :             case 0:
   18322              :               if (!(
   18323              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18324              : ((64 == 64 || TARGET_AVX512VL
   18325              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18326              :    && ix86_pre_reload_split ()
   18327              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18328              :                     STRIP_UNARY (operands[4]))
   18329              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18330              :                        STRIP_UNARY (operands[4]))
   18331              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18332              :                        STRIP_UNARY (operands[3]))
   18333              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18334              :                        STRIP_UNARY (operands[3])))) && 
   18335              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18336              : (TARGET_AVX512F)))
   18337              :                 return -1;
   18338              :               return 5864; /* *avx512bw_vpternlogv32hf_1 */
   18339              : 
   18340              :             case 1:
   18341              :               if (!(
   18342              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18343              : ((32 == 64 || TARGET_AVX512VL
   18344              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18345              :    && ix86_pre_reload_split ()
   18346              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18347              :                     STRIP_UNARY (operands[4]))
   18348              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18349              :                        STRIP_UNARY (operands[4]))
   18350              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18351              :                        STRIP_UNARY (operands[3]))
   18352              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18353              :                        STRIP_UNARY (operands[3])))) && 
   18354              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18355              : (TARGET_AVX)))
   18356              :                 return -1;
   18357              :               return 5891; /* *avx512vl_vpternlogv16hf_1 */
   18358              : 
   18359              :             case 2:
   18360              :               if (!
   18361              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18362              : ((16 == 64 || TARGET_AVX512VL
   18363              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18364              :    && ix86_pre_reload_split ()
   18365              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18366              :                     STRIP_UNARY (operands[4]))
   18367              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18368              :                        STRIP_UNARY (operands[4]))
   18369              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18370              :                        STRIP_UNARY (operands[3]))
   18371              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18372              :                        STRIP_UNARY (operands[3])))))
   18373              :                 return -1;
   18374              :               return 5918; /* *avx512fp16_vpternlogv8hf_1 */
   18375              : 
   18376              :             case 3:
   18377              :               if (!(
   18378              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18379              : ((64 == 64 || TARGET_AVX512VL
   18380              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18381              :    && ix86_pre_reload_split ()
   18382              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18383              :                     STRIP_UNARY (operands[4]))
   18384              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18385              :                        STRIP_UNARY (operands[4]))
   18386              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18387              :                        STRIP_UNARY (operands[3]))
   18388              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18389              :                        STRIP_UNARY (operands[3])))) && 
   18390              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18391              : (TARGET_AVX512F)))
   18392              :                 return -1;
   18393              :               return 5945; /* *avx512bw_vpternlogv32bf_1 */
   18394              : 
   18395              :             case 4:
   18396              :               if (!(
   18397              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18398              : ((32 == 64 || TARGET_AVX512VL
   18399              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18400              :    && ix86_pre_reload_split ()
   18401              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18402              :                     STRIP_UNARY (operands[4]))
   18403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18404              :                        STRIP_UNARY (operands[4]))
   18405              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18406              :                        STRIP_UNARY (operands[3]))
   18407              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18408              :                        STRIP_UNARY (operands[3])))) && 
   18409              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18410              : (TARGET_AVX)))
   18411              :                 return -1;
   18412              :               return 5972; /* *avx512vl_vpternlogv16bf_1 */
   18413              : 
   18414              :             case 5:
   18415              :               if (!
   18416              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18417              : ((16 == 64 || TARGET_AVX512VL
   18418              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18419              :    && ix86_pre_reload_split ()
   18420              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18421              :                     STRIP_UNARY (operands[4]))
   18422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18423              :                        STRIP_UNARY (operands[4]))
   18424              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18425              :                        STRIP_UNARY (operands[3]))
   18426              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18427              :                        STRIP_UNARY (operands[3])))))
   18428              :                 return -1;
   18429              :               return 5999; /* *avx512vl_vpternlogv8bf_1 */
   18430              : 
   18431              :             case 6:
   18432              :               if (!(
   18433              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18434              : ((64 == 64 || TARGET_AVX512VL
   18435              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18436              :    && ix86_pre_reload_split ()
   18437              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18438              :                     STRIP_UNARY (operands[4]))
   18439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18440              :                        STRIP_UNARY (operands[4]))
   18441              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18442              :                        STRIP_UNARY (operands[3]))
   18443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18444              :                        STRIP_UNARY (operands[3])))) && 
   18445              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18446              : (TARGET_AVX512F)))
   18447              :                 return -1;
   18448              :               return 6026; /* *avx512f_vpternlogv16sf_1 */
   18449              : 
   18450              :             case 7:
   18451              :               if (!(
   18452              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18453              : ((32 == 64 || TARGET_AVX512VL
   18454              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18455              :    && ix86_pre_reload_split ()
   18456              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18457              :                     STRIP_UNARY (operands[4]))
   18458              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18459              :                        STRIP_UNARY (operands[4]))
   18460              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18461              :                        STRIP_UNARY (operands[3]))
   18462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18463              :                        STRIP_UNARY (operands[3])))) && 
   18464              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18465              : (TARGET_AVX)))
   18466              :                 return -1;
   18467              :               return 6053; /* *avx512vl_vpternlogv8sf_1 */
   18468              : 
   18469              :             case 8:
   18470              :               if (!
   18471              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18472              : ((16 == 64 || TARGET_AVX512VL
   18473              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18474              :    && ix86_pre_reload_split ()
   18475              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18476              :                     STRIP_UNARY (operands[4]))
   18477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18478              :                        STRIP_UNARY (operands[4]))
   18479              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18480              :                        STRIP_UNARY (operands[3]))
   18481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18482              :                        STRIP_UNARY (operands[3])))))
   18483              :                 return -1;
   18484              :               return 6080; /* *avx512vl_vpternlogv4sf_1 */
   18485              : 
   18486              :             case 9:
   18487              :               if (!(
   18488              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18489              : ((64 == 64 || TARGET_AVX512VL
   18490              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18491              :    && ix86_pre_reload_split ()
   18492              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18493              :                     STRIP_UNARY (operands[4]))
   18494              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18495              :                        STRIP_UNARY (operands[4]))
   18496              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18497              :                        STRIP_UNARY (operands[3]))
   18498              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18499              :                        STRIP_UNARY (operands[3])))) && 
   18500              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18501              : (TARGET_AVX512F)))
   18502              :                 return -1;
   18503              :               return 6107; /* *avx512f_vpternlogv8df_1 */
   18504              : 
   18505              :             case 10:
   18506              :               if (!(
   18507              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18508              : ((32 == 64 || TARGET_AVX512VL
   18509              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18510              :    && ix86_pre_reload_split ()
   18511              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18512              :                     STRIP_UNARY (operands[4]))
   18513              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18514              :                        STRIP_UNARY (operands[4]))
   18515              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18516              :                        STRIP_UNARY (operands[3]))
   18517              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18518              :                        STRIP_UNARY (operands[3])))) && 
   18519              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18520              : (TARGET_AVX)))
   18521              :                 return -1;
   18522              :               return 6134; /* *avx512vl_vpternlogv4df_1 */
   18523              : 
   18524              :             case 11:
   18525              :               if (!(
   18526              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18527              : ((16 == 64 || TARGET_AVX512VL
   18528              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18529              :    && ix86_pre_reload_split ()
   18530              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18531              :                     STRIP_UNARY (operands[4]))
   18532              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18533              :                        STRIP_UNARY (operands[4]))
   18534              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18535              :                        STRIP_UNARY (operands[3]))
   18536              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18537              :                        STRIP_UNARY (operands[3])))) && 
   18538              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18539              : (TARGET_SSE2)))
   18540              :                 return -1;
   18541              :               return 6161; /* *avx512vl_vpternlogv2df_1 */
   18542              : 
   18543              :             case 12:
   18544              :               if (!(
   18545              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18546              : ((64 == 64 || TARGET_AVX512VL
   18547              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18548              :    && ix86_pre_reload_split ()
   18549              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18550              :                     STRIP_UNARY (operands[4]))
   18551              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18552              :                        STRIP_UNARY (operands[4]))
   18553              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18554              :                        STRIP_UNARY (operands[3]))
   18555              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18556              :                        STRIP_UNARY (operands[3])))) && 
   18557              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18558              : (TARGET_AVX512F)))
   18559              :                 return -1;
   18560              :               return 5867; /* *avx512bw_vpternlogv32hf_1 */
   18561              : 
   18562              :             case 13:
   18563              :               if (!(
   18564              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18565              : ((32 == 64 || TARGET_AVX512VL
   18566              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18567              :    && ix86_pre_reload_split ()
   18568              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18569              :                     STRIP_UNARY (operands[4]))
   18570              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18571              :                        STRIP_UNARY (operands[4]))
   18572              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18573              :                        STRIP_UNARY (operands[3]))
   18574              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18575              :                        STRIP_UNARY (operands[3])))) && 
   18576              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18577              : (TARGET_AVX)))
   18578              :                 return -1;
   18579              :               return 5894; /* *avx512vl_vpternlogv16hf_1 */
   18580              : 
   18581              :             case 14:
   18582              :               if (!
   18583              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18584              : ((16 == 64 || TARGET_AVX512VL
   18585              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18586              :    && ix86_pre_reload_split ()
   18587              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18588              :                     STRIP_UNARY (operands[4]))
   18589              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18590              :                        STRIP_UNARY (operands[4]))
   18591              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18592              :                        STRIP_UNARY (operands[3]))
   18593              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18594              :                        STRIP_UNARY (operands[3])))))
   18595              :                 return -1;
   18596              :               return 5921; /* *avx512fp16_vpternlogv8hf_1 */
   18597              : 
   18598              :             case 15:
   18599              :               if (!(
   18600              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18601              : ((64 == 64 || TARGET_AVX512VL
   18602              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18603              :    && ix86_pre_reload_split ()
   18604              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18605              :                     STRIP_UNARY (operands[4]))
   18606              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18607              :                        STRIP_UNARY (operands[4]))
   18608              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18609              :                        STRIP_UNARY (operands[3]))
   18610              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18611              :                        STRIP_UNARY (operands[3])))) && 
   18612              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18613              : (TARGET_AVX512F)))
   18614              :                 return -1;
   18615              :               return 5948; /* *avx512bw_vpternlogv32bf_1 */
   18616              : 
   18617              :             case 16:
   18618              :               if (!(
   18619              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18620              : ((32 == 64 || TARGET_AVX512VL
   18621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18622              :    && ix86_pre_reload_split ()
   18623              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18624              :                     STRIP_UNARY (operands[4]))
   18625              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18626              :                        STRIP_UNARY (operands[4]))
   18627              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18628              :                        STRIP_UNARY (operands[3]))
   18629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18630              :                        STRIP_UNARY (operands[3])))) && 
   18631              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18632              : (TARGET_AVX)))
   18633              :                 return -1;
   18634              :               return 5975; /* *avx512vl_vpternlogv16bf_1 */
   18635              : 
   18636              :             case 17:
   18637              :               if (!
   18638              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18639              : ((16 == 64 || TARGET_AVX512VL
   18640              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18641              :    && ix86_pre_reload_split ()
   18642              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18643              :                     STRIP_UNARY (operands[4]))
   18644              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18645              :                        STRIP_UNARY (operands[4]))
   18646              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18647              :                        STRIP_UNARY (operands[3]))
   18648              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18649              :                        STRIP_UNARY (operands[3])))))
   18650              :                 return -1;
   18651              :               return 6002; /* *avx512vl_vpternlogv8bf_1 */
   18652              : 
   18653              :             case 18:
   18654              :               if (!(
   18655              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18656              : ((64 == 64 || TARGET_AVX512VL
   18657              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18658              :    && ix86_pre_reload_split ()
   18659              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18660              :                     STRIP_UNARY (operands[4]))
   18661              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18662              :                        STRIP_UNARY (operands[4]))
   18663              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18664              :                        STRIP_UNARY (operands[3]))
   18665              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18666              :                        STRIP_UNARY (operands[3])))) && 
   18667              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18668              : (TARGET_AVX512F)))
   18669              :                 return -1;
   18670              :               return 6029; /* *avx512f_vpternlogv16sf_1 */
   18671              : 
   18672              :             case 19:
   18673              :               if (!(
   18674              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18675              : ((32 == 64 || TARGET_AVX512VL
   18676              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18677              :    && ix86_pre_reload_split ()
   18678              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18679              :                     STRIP_UNARY (operands[4]))
   18680              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18681              :                        STRIP_UNARY (operands[4]))
   18682              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18683              :                        STRIP_UNARY (operands[3]))
   18684              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18685              :                        STRIP_UNARY (operands[3])))) && 
   18686              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18687              : (TARGET_AVX)))
   18688              :                 return -1;
   18689              :               return 6056; /* *avx512vl_vpternlogv8sf_1 */
   18690              : 
   18691              :             case 20:
   18692              :               if (!
   18693              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18694              : ((16 == 64 || TARGET_AVX512VL
   18695              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18696              :    && ix86_pre_reload_split ()
   18697              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18698              :                     STRIP_UNARY (operands[4]))
   18699              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18700              :                        STRIP_UNARY (operands[4]))
   18701              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18702              :                        STRIP_UNARY (operands[3]))
   18703              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18704              :                        STRIP_UNARY (operands[3])))))
   18705              :                 return -1;
   18706              :               return 6083; /* *avx512vl_vpternlogv4sf_1 */
   18707              : 
   18708              :             case 21:
   18709              :               if (!(
   18710              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18711              : ((64 == 64 || TARGET_AVX512VL
   18712              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18713              :    && ix86_pre_reload_split ()
   18714              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18715              :                     STRIP_UNARY (operands[4]))
   18716              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18717              :                        STRIP_UNARY (operands[4]))
   18718              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18719              :                        STRIP_UNARY (operands[3]))
   18720              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18721              :                        STRIP_UNARY (operands[3])))) && 
   18722              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18723              : (TARGET_AVX512F)))
   18724              :                 return -1;
   18725              :               return 6110; /* *avx512f_vpternlogv8df_1 */
   18726              : 
   18727              :             case 22:
   18728              :               if (!(
   18729              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18730              : ((32 == 64 || TARGET_AVX512VL
   18731              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18732              :    && ix86_pre_reload_split ()
   18733              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18734              :                     STRIP_UNARY (operands[4]))
   18735              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18736              :                        STRIP_UNARY (operands[4]))
   18737              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18738              :                        STRIP_UNARY (operands[3]))
   18739              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18740              :                        STRIP_UNARY (operands[3])))) && 
   18741              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18742              : (TARGET_AVX)))
   18743              :                 return -1;
   18744              :               return 6137; /* *avx512vl_vpternlogv4df_1 */
   18745              : 
   18746              :             case 23:
   18747              :               if (!(
   18748              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18749              : ((16 == 64 || TARGET_AVX512VL
   18750              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18751              :    && ix86_pre_reload_split ()
   18752              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18753              :                     STRIP_UNARY (operands[4]))
   18754              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18755              :                        STRIP_UNARY (operands[4]))
   18756              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18757              :                        STRIP_UNARY (operands[3]))
   18758              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18759              :                        STRIP_UNARY (operands[3])))) && 
   18760              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18761              : (TARGET_SSE2)))
   18762              :                 return -1;
   18763              :               return 6164; /* *avx512vl_vpternlogv2df_1 */
   18764              : 
   18765              :             case 24:
   18766              :               if (!(
   18767              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18768              : ((64 == 64 || TARGET_AVX512VL
   18769              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18770              :    && ix86_pre_reload_split ()
   18771              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18772              :                     STRIP_UNARY (operands[4]))
   18773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18774              :                        STRIP_UNARY (operands[4]))
   18775              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18776              :                        STRIP_UNARY (operands[3]))
   18777              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18778              :                        STRIP_UNARY (operands[3])))) && 
   18779              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18780              : (TARGET_AVX512F)))
   18781              :                 return -1;
   18782              :               return 5870; /* *avx512bw_vpternlogv32hf_1 */
   18783              : 
   18784              :             case 25:
   18785              :               if (!(
   18786              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18787              : ((32 == 64 || TARGET_AVX512VL
   18788              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18789              :    && ix86_pre_reload_split ()
   18790              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18791              :                     STRIP_UNARY (operands[4]))
   18792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18793              :                        STRIP_UNARY (operands[4]))
   18794              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18795              :                        STRIP_UNARY (operands[3]))
   18796              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18797              :                        STRIP_UNARY (operands[3])))) && 
   18798              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18799              : (TARGET_AVX)))
   18800              :                 return -1;
   18801              :               return 5897; /* *avx512vl_vpternlogv16hf_1 */
   18802              : 
   18803              :             case 26:
   18804              :               if (!
   18805              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18806              : ((16 == 64 || TARGET_AVX512VL
   18807              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18808              :    && ix86_pre_reload_split ()
   18809              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18810              :                     STRIP_UNARY (operands[4]))
   18811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18812              :                        STRIP_UNARY (operands[4]))
   18813              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18814              :                        STRIP_UNARY (operands[3]))
   18815              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18816              :                        STRIP_UNARY (operands[3])))))
   18817              :                 return -1;
   18818              :               return 5924; /* *avx512fp16_vpternlogv8hf_1 */
   18819              : 
   18820              :             case 27:
   18821              :               if (!(
   18822              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18823              : ((64 == 64 || TARGET_AVX512VL
   18824              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18825              :    && ix86_pre_reload_split ()
   18826              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18827              :                     STRIP_UNARY (operands[4]))
   18828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18829              :                        STRIP_UNARY (operands[4]))
   18830              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18831              :                        STRIP_UNARY (operands[3]))
   18832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18833              :                        STRIP_UNARY (operands[3])))) && 
   18834              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18835              : (TARGET_AVX512F)))
   18836              :                 return -1;
   18837              :               return 5951; /* *avx512bw_vpternlogv32bf_1 */
   18838              : 
   18839              :             case 28:
   18840              :               if (!(
   18841              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18842              : ((32 == 64 || TARGET_AVX512VL
   18843              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18844              :    && ix86_pre_reload_split ()
   18845              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18846              :                     STRIP_UNARY (operands[4]))
   18847              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18848              :                        STRIP_UNARY (operands[4]))
   18849              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18850              :                        STRIP_UNARY (operands[3]))
   18851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18852              :                        STRIP_UNARY (operands[3])))) && 
   18853              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18854              : (TARGET_AVX)))
   18855              :                 return -1;
   18856              :               return 5978; /* *avx512vl_vpternlogv16bf_1 */
   18857              : 
   18858              :             case 29:
   18859              :               if (!
   18860              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18861              : ((16 == 64 || TARGET_AVX512VL
   18862              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18863              :    && ix86_pre_reload_split ()
   18864              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18865              :                     STRIP_UNARY (operands[4]))
   18866              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18867              :                        STRIP_UNARY (operands[4]))
   18868              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18869              :                        STRIP_UNARY (operands[3]))
   18870              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18871              :                        STRIP_UNARY (operands[3])))))
   18872              :                 return -1;
   18873              :               return 6005; /* *avx512vl_vpternlogv8bf_1 */
   18874              : 
   18875              :             case 30:
   18876              :               if (!(
   18877              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18878              : ((64 == 64 || TARGET_AVX512VL
   18879              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18880              :    && ix86_pre_reload_split ()
   18881              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18882              :                     STRIP_UNARY (operands[4]))
   18883              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18884              :                        STRIP_UNARY (operands[4]))
   18885              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18886              :                        STRIP_UNARY (operands[3]))
   18887              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18888              :                        STRIP_UNARY (operands[3])))) && 
   18889              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18890              : (TARGET_AVX512F)))
   18891              :                 return -1;
   18892              :               return 6032; /* *avx512f_vpternlogv16sf_1 */
   18893              : 
   18894              :             case 31:
   18895              :               if (!(
   18896              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18897              : ((32 == 64 || TARGET_AVX512VL
   18898              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18899              :    && ix86_pre_reload_split ()
   18900              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18901              :                     STRIP_UNARY (operands[4]))
   18902              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18903              :                        STRIP_UNARY (operands[4]))
   18904              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18905              :                        STRIP_UNARY (operands[3]))
   18906              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18907              :                        STRIP_UNARY (operands[3])))) && 
   18908              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18909              : (TARGET_AVX)))
   18910              :                 return -1;
   18911              :               return 6059; /* *avx512vl_vpternlogv8sf_1 */
   18912              : 
   18913              :             case 32:
   18914              :               if (!
   18915              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18916              : ((16 == 64 || TARGET_AVX512VL
   18917              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18918              :    && ix86_pre_reload_split ()
   18919              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18920              :                     STRIP_UNARY (operands[4]))
   18921              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18922              :                        STRIP_UNARY (operands[4]))
   18923              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18924              :                        STRIP_UNARY (operands[3]))
   18925              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18926              :                        STRIP_UNARY (operands[3])))))
   18927              :                 return -1;
   18928              :               return 6086; /* *avx512vl_vpternlogv4sf_1 */
   18929              : 
   18930              :             case 33:
   18931              :               if (!(
   18932              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18933              : ((64 == 64 || TARGET_AVX512VL
   18934              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18935              :    && ix86_pre_reload_split ()
   18936              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18937              :                     STRIP_UNARY (operands[4]))
   18938              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18939              :                        STRIP_UNARY (operands[4]))
   18940              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18941              :                        STRIP_UNARY (operands[3]))
   18942              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18943              :                        STRIP_UNARY (operands[3])))) && 
   18944              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18945              : (TARGET_AVX512F)))
   18946              :                 return -1;
   18947              :               return 6113; /* *avx512f_vpternlogv8df_1 */
   18948              : 
   18949              :             case 34:
   18950              :               if (!(
   18951              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18952              : ((32 == 64 || TARGET_AVX512VL
   18953              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18954              :    && ix86_pre_reload_split ()
   18955              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18956              :                     STRIP_UNARY (operands[4]))
   18957              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18958              :                        STRIP_UNARY (operands[4]))
   18959              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18960              :                        STRIP_UNARY (operands[3]))
   18961              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18962              :                        STRIP_UNARY (operands[3])))) && 
   18963              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18964              : (TARGET_AVX)))
   18965              :                 return -1;
   18966              :               return 6140; /* *avx512vl_vpternlogv4df_1 */
   18967              : 
   18968              :             case 35:
   18969              :               if (!(
   18970              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18971              : ((16 == 64 || TARGET_AVX512VL
   18972              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18973              :    && ix86_pre_reload_split ()
   18974              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18975              :                     STRIP_UNARY (operands[4]))
   18976              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18977              :                        STRIP_UNARY (operands[4]))
   18978              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18979              :                        STRIP_UNARY (operands[3]))
   18980              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18981              :                        STRIP_UNARY (operands[3])))) && 
   18982              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18983              : (TARGET_SSE2)))
   18984              :                 return -1;
   18985              :               return 6167; /* *avx512vl_vpternlogv2df_1 */
   18986              : 
   18987              :             case 36:
   18988              :               if (!(
   18989              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18990              : ((64 == 64 || TARGET_AVX512VL
   18991              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18992              :    && ix86_pre_reload_split ()) && 
   18993              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18994              : (TARGET_AVX512F)))
   18995              :                 return -1;
   18996              :               return 6944; /* *avx512bw_vpternlogv32hf_3 */
   18997              : 
   18998              :             case 37:
   18999              :               if (!(
   19000              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19001              : ((32 == 64 || TARGET_AVX512VL
   19002              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19003              :    && ix86_pre_reload_split ()) && 
   19004              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19005              : (TARGET_AVX)))
   19006              :                 return -1;
   19007              :               return 6953; /* *avx512vl_vpternlogv16hf_3 */
   19008              : 
   19009              :             case 38:
   19010              :               if (!
   19011              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19012              : ((16 == 64 || TARGET_AVX512VL
   19013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19014              :    && ix86_pre_reload_split ()))
   19015              :                 return -1;
   19016              :               return 6962; /* *avx512fp16_vpternlogv8hf_3 */
   19017              : 
   19018              :             case 39:
   19019              :               if (!(
   19020              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19021              : ((64 == 64 || TARGET_AVX512VL
   19022              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19023              :    && ix86_pre_reload_split ()) && 
   19024              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19025              : (TARGET_AVX512F)))
   19026              :                 return -1;
   19027              :               return 6971; /* *avx512bw_vpternlogv32bf_3 */
   19028              : 
   19029              :             case 40:
   19030              :               if (!(
   19031              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19032              : ((32 == 64 || TARGET_AVX512VL
   19033              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19034              :    && ix86_pre_reload_split ()) && 
   19035              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19036              : (TARGET_AVX)))
   19037              :                 return -1;
   19038              :               return 6980; /* *avx512vl_vpternlogv16bf_3 */
   19039              : 
   19040              :             case 41:
   19041              :               if (!
   19042              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19043              : ((16 == 64 || TARGET_AVX512VL
   19044              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19045              :    && ix86_pre_reload_split ()))
   19046              :                 return -1;
   19047              :               return 6989; /* *avx512vl_vpternlogv8bf_3 */
   19048              : 
   19049              :             case 42:
   19050              :               if (!(
   19051              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19052              : ((64 == 64 || TARGET_AVX512VL
   19053              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19054              :    && ix86_pre_reload_split ()) && 
   19055              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19056              : (TARGET_AVX512F)))
   19057              :                 return -1;
   19058              :               return 6998; /* *avx512f_vpternlogv16sf_3 */
   19059              : 
   19060              :             case 43:
   19061              :               if (!(
   19062              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19063              : ((32 == 64 || TARGET_AVX512VL
   19064              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19065              :    && ix86_pre_reload_split ()) && 
   19066              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19067              : (TARGET_AVX)))
   19068              :                 return -1;
   19069              :               return 7007; /* *avx512vl_vpternlogv8sf_3 */
   19070              : 
   19071              :             case 44:
   19072              :               if (!
   19073              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19074              : ((16 == 64 || TARGET_AVX512VL
   19075              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19076              :    && ix86_pre_reload_split ()))
   19077              :                 return -1;
   19078              :               return 7016; /* *avx512vl_vpternlogv4sf_3 */
   19079              : 
   19080              :             case 45:
   19081              :               if (!(
   19082              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19083              : ((64 == 64 || TARGET_AVX512VL
   19084              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19085              :    && ix86_pre_reload_split ()) && 
   19086              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19087              : (TARGET_AVX512F)))
   19088              :                 return -1;
   19089              :               return 7025; /* *avx512f_vpternlogv8df_3 */
   19090              : 
   19091              :             case 46:
   19092              :               if (!(
   19093              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19094              : ((32 == 64 || TARGET_AVX512VL
   19095              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19096              :    && ix86_pre_reload_split ()) && 
   19097              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19098              : (TARGET_AVX)))
   19099              :                 return -1;
   19100              :               return 7034; /* *avx512vl_vpternlogv4df_3 */
   19101              : 
   19102              :             case 47:
   19103              :               if (!(
   19104              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19105              : ((16 == 64 || TARGET_AVX512VL
   19106              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19107              :    && ix86_pre_reload_split ()) && 
   19108              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19109              : (TARGET_SSE2)))
   19110              :                 return -1;
   19111              :               return 7043; /* *avx512vl_vpternlogv2df_3 */
   19112              : 
   19113              :             default:
   19114              :               return -1;
   19115              :             }
   19116              : 
   19117              :         case AND:
   19118              :           switch (pattern542 (x2))
   19119              :             {
   19120              :             case 0:
   19121              :               if (!(
   19122              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19123              : ((64 == 64 || TARGET_AVX512VL
   19124              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19125              :    && ix86_pre_reload_split ()
   19126              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19127              :                     STRIP_UNARY (operands[4]))
   19128              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19129              :                        STRIP_UNARY (operands[4]))
   19130              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19131              :                        STRIP_UNARY (operands[3]))
   19132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19133              :                        STRIP_UNARY (operands[3])))) && 
   19134              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19135              : (TARGET_AVX512F)))
   19136              :                 return -1;
   19137              :               return 6512; /* *avx512bw_vpternlogv32hf_2 */
   19138              : 
   19139              :             case 1:
   19140              :               if (!(
   19141              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19142              : ((32 == 64 || TARGET_AVX512VL
   19143              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19144              :    && ix86_pre_reload_split ()
   19145              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19146              :                     STRIP_UNARY (operands[4]))
   19147              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19148              :                        STRIP_UNARY (operands[4]))
   19149              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19150              :                        STRIP_UNARY (operands[3]))
   19151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19152              :                        STRIP_UNARY (operands[3])))) && 
   19153              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19154              : (TARGET_AVX)))
   19155              :                 return -1;
   19156              :               return 6539; /* *avx512vl_vpternlogv16hf_2 */
   19157              : 
   19158              :             case 2:
   19159              :               if (!
   19160              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19161              : ((16 == 64 || TARGET_AVX512VL
   19162              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19163              :    && ix86_pre_reload_split ()
   19164              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19165              :                     STRIP_UNARY (operands[4]))
   19166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19167              :                        STRIP_UNARY (operands[4]))
   19168              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19169              :                        STRIP_UNARY (operands[3]))
   19170              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19171              :                        STRIP_UNARY (operands[3])))))
   19172              :                 return -1;
   19173              :               return 6566; /* *avx512fp16_vpternlogv8hf_2 */
   19174              : 
   19175              :             case 3:
   19176              :               if (!(
   19177              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19178              : ((64 == 64 || TARGET_AVX512VL
   19179              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19180              :    && ix86_pre_reload_split ()
   19181              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19182              :                     STRIP_UNARY (operands[4]))
   19183              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19184              :                        STRIP_UNARY (operands[4]))
   19185              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19186              :                        STRIP_UNARY (operands[3]))
   19187              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19188              :                        STRIP_UNARY (operands[3])))) && 
   19189              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19190              : (TARGET_AVX512F)))
   19191              :                 return -1;
   19192              :               return 6593; /* *avx512bw_vpternlogv32bf_2 */
   19193              : 
   19194              :             case 4:
   19195              :               if (!(
   19196              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19197              : ((32 == 64 || TARGET_AVX512VL
   19198              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19199              :    && ix86_pre_reload_split ()
   19200              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19201              :                     STRIP_UNARY (operands[4]))
   19202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19203              :                        STRIP_UNARY (operands[4]))
   19204              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19205              :                        STRIP_UNARY (operands[3]))
   19206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19207              :                        STRIP_UNARY (operands[3])))) && 
   19208              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19209              : (TARGET_AVX)))
   19210              :                 return -1;
   19211              :               return 6620; /* *avx512vl_vpternlogv16bf_2 */
   19212              : 
   19213              :             case 5:
   19214              :               if (!
   19215              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19216              : ((16 == 64 || TARGET_AVX512VL
   19217              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19218              :    && ix86_pre_reload_split ()
   19219              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19220              :                     STRIP_UNARY (operands[4]))
   19221              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19222              :                        STRIP_UNARY (operands[4]))
   19223              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19224              :                        STRIP_UNARY (operands[3]))
   19225              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19226              :                        STRIP_UNARY (operands[3])))))
   19227              :                 return -1;
   19228              :               return 6647; /* *avx512vl_vpternlogv8bf_2 */
   19229              : 
   19230              :             case 6:
   19231              :               if (!(
   19232              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19233              : ((64 == 64 || TARGET_AVX512VL
   19234              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19235              :    && ix86_pre_reload_split ()
   19236              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19237              :                     STRIP_UNARY (operands[4]))
   19238              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19239              :                        STRIP_UNARY (operands[4]))
   19240              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19241              :                        STRIP_UNARY (operands[3]))
   19242              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19243              :                        STRIP_UNARY (operands[3])))) && 
   19244              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19245              : (TARGET_AVX512F)))
   19246              :                 return -1;
   19247              :               return 6674; /* *avx512f_vpternlogv16sf_2 */
   19248              : 
   19249              :             case 7:
   19250              :               if (!(
   19251              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19252              : ((32 == 64 || TARGET_AVX512VL
   19253              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19254              :    && ix86_pre_reload_split ()
   19255              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19256              :                     STRIP_UNARY (operands[4]))
   19257              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19258              :                        STRIP_UNARY (operands[4]))
   19259              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19260              :                        STRIP_UNARY (operands[3]))
   19261              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19262              :                        STRIP_UNARY (operands[3])))) && 
   19263              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19264              : (TARGET_AVX)))
   19265              :                 return -1;
   19266              :               return 6701; /* *avx512vl_vpternlogv8sf_2 */
   19267              : 
   19268              :             case 8:
   19269              :               if (!
   19270              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19271              : ((16 == 64 || TARGET_AVX512VL
   19272              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19273              :    && ix86_pre_reload_split ()
   19274              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19275              :                     STRIP_UNARY (operands[4]))
   19276              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19277              :                        STRIP_UNARY (operands[4]))
   19278              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19279              :                        STRIP_UNARY (operands[3]))
   19280              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19281              :                        STRIP_UNARY (operands[3])))))
   19282              :                 return -1;
   19283              :               return 6728; /* *avx512vl_vpternlogv4sf_2 */
   19284              : 
   19285              :             case 9:
   19286              :               if (!(
   19287              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19288              : ((64 == 64 || TARGET_AVX512VL
   19289              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19290              :    && ix86_pre_reload_split ()
   19291              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19292              :                     STRIP_UNARY (operands[4]))
   19293              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19294              :                        STRIP_UNARY (operands[4]))
   19295              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19296              :                        STRIP_UNARY (operands[3]))
   19297              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19298              :                        STRIP_UNARY (operands[3])))) && 
   19299              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19300              : (TARGET_AVX512F)))
   19301              :                 return -1;
   19302              :               return 6755; /* *avx512f_vpternlogv8df_2 */
   19303              : 
   19304              :             case 10:
   19305              :               if (!(
   19306              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19307              : ((32 == 64 || TARGET_AVX512VL
   19308              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19309              :    && ix86_pre_reload_split ()
   19310              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19311              :                     STRIP_UNARY (operands[4]))
   19312              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19313              :                        STRIP_UNARY (operands[4]))
   19314              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19315              :                        STRIP_UNARY (operands[3]))
   19316              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19317              :                        STRIP_UNARY (operands[3])))) && 
   19318              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19319              : (TARGET_AVX)))
   19320              :                 return -1;
   19321              :               return 6782; /* *avx512vl_vpternlogv4df_2 */
   19322              : 
   19323              :             case 11:
   19324              :               if (!(
   19325              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19326              : ((16 == 64 || TARGET_AVX512VL
   19327              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19328              :    && ix86_pre_reload_split ()
   19329              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19330              :                     STRIP_UNARY (operands[4]))
   19331              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19332              :                        STRIP_UNARY (operands[4]))
   19333              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19334              :                        STRIP_UNARY (operands[3]))
   19335              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19336              :                        STRIP_UNARY (operands[3])))) && 
   19337              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19338              : (TARGET_SSE2)))
   19339              :                 return -1;
   19340              :               return 6809; /* *avx512vl_vpternlogv2df_2 */
   19341              : 
   19342              :             default:
   19343              :               return -1;
   19344              :             }
   19345              : 
   19346              :         case IOR:
   19347              :           switch (pattern542 (x2))
   19348              :             {
   19349              :             case 0:
   19350              :               if (!(
   19351              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19352              : ((64 == 64 || TARGET_AVX512VL
   19353              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19354              :    && ix86_pre_reload_split ()
   19355              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19356              :                     STRIP_UNARY (operands[4]))
   19357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19358              :                        STRIP_UNARY (operands[4]))
   19359              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19360              :                        STRIP_UNARY (operands[3]))
   19361              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19362              :                        STRIP_UNARY (operands[3])))) && 
   19363              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19364              : (TARGET_AVX512F)))
   19365              :                 return -1;
   19366              :               return 6515; /* *avx512bw_vpternlogv32hf_2 */
   19367              : 
   19368              :             case 1:
   19369              :               if (!(
   19370              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19371              : ((32 == 64 || TARGET_AVX512VL
   19372              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19373              :    && ix86_pre_reload_split ()
   19374              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19375              :                     STRIP_UNARY (operands[4]))
   19376              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19377              :                        STRIP_UNARY (operands[4]))
   19378              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19379              :                        STRIP_UNARY (operands[3]))
   19380              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19381              :                        STRIP_UNARY (operands[3])))) && 
   19382              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19383              : (TARGET_AVX)))
   19384              :                 return -1;
   19385              :               return 6542; /* *avx512vl_vpternlogv16hf_2 */
   19386              : 
   19387              :             case 2:
   19388              :               if (!
   19389              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19390              : ((16 == 64 || TARGET_AVX512VL
   19391              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19392              :    && ix86_pre_reload_split ()
   19393              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19394              :                     STRIP_UNARY (operands[4]))
   19395              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19396              :                        STRIP_UNARY (operands[4]))
   19397              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19398              :                        STRIP_UNARY (operands[3]))
   19399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19400              :                        STRIP_UNARY (operands[3])))))
   19401              :                 return -1;
   19402              :               return 6569; /* *avx512fp16_vpternlogv8hf_2 */
   19403              : 
   19404              :             case 3:
   19405              :               if (!(
   19406              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19407              : ((64 == 64 || TARGET_AVX512VL
   19408              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19409              :    && ix86_pre_reload_split ()
   19410              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19411              :                     STRIP_UNARY (operands[4]))
   19412              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19413              :                        STRIP_UNARY (operands[4]))
   19414              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19415              :                        STRIP_UNARY (operands[3]))
   19416              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19417              :                        STRIP_UNARY (operands[3])))) && 
   19418              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19419              : (TARGET_AVX512F)))
   19420              :                 return -1;
   19421              :               return 6596; /* *avx512bw_vpternlogv32bf_2 */
   19422              : 
   19423              :             case 4:
   19424              :               if (!(
   19425              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19426              : ((32 == 64 || TARGET_AVX512VL
   19427              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19428              :    && ix86_pre_reload_split ()
   19429              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19430              :                     STRIP_UNARY (operands[4]))
   19431              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19432              :                        STRIP_UNARY (operands[4]))
   19433              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19434              :                        STRIP_UNARY (operands[3]))
   19435              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19436              :                        STRIP_UNARY (operands[3])))) && 
   19437              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19438              : (TARGET_AVX)))
   19439              :                 return -1;
   19440              :               return 6623; /* *avx512vl_vpternlogv16bf_2 */
   19441              : 
   19442              :             case 5:
   19443              :               if (!
   19444              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19445              : ((16 == 64 || TARGET_AVX512VL
   19446              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19447              :    && ix86_pre_reload_split ()
   19448              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19449              :                     STRIP_UNARY (operands[4]))
   19450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19451              :                        STRIP_UNARY (operands[4]))
   19452              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19453              :                        STRIP_UNARY (operands[3]))
   19454              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19455              :                        STRIP_UNARY (operands[3])))))
   19456              :                 return -1;
   19457              :               return 6650; /* *avx512vl_vpternlogv8bf_2 */
   19458              : 
   19459              :             case 6:
   19460              :               if (!(
   19461              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19462              : ((64 == 64 || TARGET_AVX512VL
   19463              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19464              :    && ix86_pre_reload_split ()
   19465              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19466              :                     STRIP_UNARY (operands[4]))
   19467              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19468              :                        STRIP_UNARY (operands[4]))
   19469              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19470              :                        STRIP_UNARY (operands[3]))
   19471              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19472              :                        STRIP_UNARY (operands[3])))) && 
   19473              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19474              : (TARGET_AVX512F)))
   19475              :                 return -1;
   19476              :               return 6677; /* *avx512f_vpternlogv16sf_2 */
   19477              : 
   19478              :             case 7:
   19479              :               if (!(
   19480              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19481              : ((32 == 64 || TARGET_AVX512VL
   19482              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19483              :    && ix86_pre_reload_split ()
   19484              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19485              :                     STRIP_UNARY (operands[4]))
   19486              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19487              :                        STRIP_UNARY (operands[4]))
   19488              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19489              :                        STRIP_UNARY (operands[3]))
   19490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19491              :                        STRIP_UNARY (operands[3])))) && 
   19492              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19493              : (TARGET_AVX)))
   19494              :                 return -1;
   19495              :               return 6704; /* *avx512vl_vpternlogv8sf_2 */
   19496              : 
   19497              :             case 8:
   19498              :               if (!
   19499              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19500              : ((16 == 64 || TARGET_AVX512VL
   19501              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19502              :    && ix86_pre_reload_split ()
   19503              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19504              :                     STRIP_UNARY (operands[4]))
   19505              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19506              :                        STRIP_UNARY (operands[4]))
   19507              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19508              :                        STRIP_UNARY (operands[3]))
   19509              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19510              :                        STRIP_UNARY (operands[3])))))
   19511              :                 return -1;
   19512              :               return 6731; /* *avx512vl_vpternlogv4sf_2 */
   19513              : 
   19514              :             case 9:
   19515              :               if (!(
   19516              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19517              : ((64 == 64 || TARGET_AVX512VL
   19518              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19519              :    && ix86_pre_reload_split ()
   19520              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19521              :                     STRIP_UNARY (operands[4]))
   19522              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19523              :                        STRIP_UNARY (operands[4]))
   19524              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19525              :                        STRIP_UNARY (operands[3]))
   19526              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19527              :                        STRIP_UNARY (operands[3])))) && 
   19528              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19529              : (TARGET_AVX512F)))
   19530              :                 return -1;
   19531              :               return 6758; /* *avx512f_vpternlogv8df_2 */
   19532              : 
   19533              :             case 10:
   19534              :               if (!(
   19535              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19536              : ((32 == 64 || TARGET_AVX512VL
   19537              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19538              :    && ix86_pre_reload_split ()
   19539              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19540              :                     STRIP_UNARY (operands[4]))
   19541              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19542              :                        STRIP_UNARY (operands[4]))
   19543              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19544              :                        STRIP_UNARY (operands[3]))
   19545              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19546              :                        STRIP_UNARY (operands[3])))) && 
   19547              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19548              : (TARGET_AVX)))
   19549              :                 return -1;
   19550              :               return 6785; /* *avx512vl_vpternlogv4df_2 */
   19551              : 
   19552              :             case 11:
   19553              :               if (!(
   19554              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19555              : ((16 == 64 || TARGET_AVX512VL
   19556              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19557              :    && ix86_pre_reload_split ()
   19558              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19559              :                     STRIP_UNARY (operands[4]))
   19560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19561              :                        STRIP_UNARY (operands[4]))
   19562              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19563              :                        STRIP_UNARY (operands[3]))
   19564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19565              :                        STRIP_UNARY (operands[3])))) && 
   19566              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19567              : (TARGET_SSE2)))
   19568              :                 return -1;
   19569              :               return 6812; /* *avx512vl_vpternlogv2df_2 */
   19570              : 
   19571              :             default:
   19572              :               return -1;
   19573              :             }
   19574              : 
   19575              :         case XOR:
   19576              :           switch (pattern542 (x2))
   19577              :             {
   19578              :             case 0:
   19579              :               if (!(
   19580              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19581              : ((64 == 64 || TARGET_AVX512VL
   19582              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19583              :    && ix86_pre_reload_split ()
   19584              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19585              :                     STRIP_UNARY (operands[4]))
   19586              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19587              :                        STRIP_UNARY (operands[4]))
   19588              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19589              :                        STRIP_UNARY (operands[3]))
   19590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19591              :                        STRIP_UNARY (operands[3])))) && 
   19592              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19593              : (TARGET_AVX512F)))
   19594              :                 return -1;
   19595              :               return 6518; /* *avx512bw_vpternlogv32hf_2 */
   19596              : 
   19597              :             case 1:
   19598              :               if (!(
   19599              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19600              : ((32 == 64 || TARGET_AVX512VL
   19601              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19602              :    && ix86_pre_reload_split ()
   19603              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19604              :                     STRIP_UNARY (operands[4]))
   19605              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19606              :                        STRIP_UNARY (operands[4]))
   19607              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19608              :                        STRIP_UNARY (operands[3]))
   19609              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19610              :                        STRIP_UNARY (operands[3])))) && 
   19611              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19612              : (TARGET_AVX)))
   19613              :                 return -1;
   19614              :               return 6545; /* *avx512vl_vpternlogv16hf_2 */
   19615              : 
   19616              :             case 2:
   19617              :               if (!
   19618              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19619              : ((16 == 64 || TARGET_AVX512VL
   19620              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19621              :    && ix86_pre_reload_split ()
   19622              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19623              :                     STRIP_UNARY (operands[4]))
   19624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19625              :                        STRIP_UNARY (operands[4]))
   19626              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19627              :                        STRIP_UNARY (operands[3]))
   19628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19629              :                        STRIP_UNARY (operands[3])))))
   19630              :                 return -1;
   19631              :               return 6572; /* *avx512fp16_vpternlogv8hf_2 */
   19632              : 
   19633              :             case 3:
   19634              :               if (!(
   19635              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19636              : ((64 == 64 || TARGET_AVX512VL
   19637              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19638              :    && ix86_pre_reload_split ()
   19639              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19640              :                     STRIP_UNARY (operands[4]))
   19641              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19642              :                        STRIP_UNARY (operands[4]))
   19643              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19644              :                        STRIP_UNARY (operands[3]))
   19645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19646              :                        STRIP_UNARY (operands[3])))) && 
   19647              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19648              : (TARGET_AVX512F)))
   19649              :                 return -1;
   19650              :               return 6599; /* *avx512bw_vpternlogv32bf_2 */
   19651              : 
   19652              :             case 4:
   19653              :               if (!(
   19654              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19655              : ((32 == 64 || TARGET_AVX512VL
   19656              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19657              :    && ix86_pre_reload_split ()
   19658              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19659              :                     STRIP_UNARY (operands[4]))
   19660              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19661              :                        STRIP_UNARY (operands[4]))
   19662              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19663              :                        STRIP_UNARY (operands[3]))
   19664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19665              :                        STRIP_UNARY (operands[3])))) && 
   19666              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19667              : (TARGET_AVX)))
   19668              :                 return -1;
   19669              :               return 6626; /* *avx512vl_vpternlogv16bf_2 */
   19670              : 
   19671              :             case 5:
   19672              :               if (!
   19673              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19674              : ((16 == 64 || TARGET_AVX512VL
   19675              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19676              :    && ix86_pre_reload_split ()
   19677              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19678              :                     STRIP_UNARY (operands[4]))
   19679              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19680              :                        STRIP_UNARY (operands[4]))
   19681              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19682              :                        STRIP_UNARY (operands[3]))
   19683              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19684              :                        STRIP_UNARY (operands[3])))))
   19685              :                 return -1;
   19686              :               return 6653; /* *avx512vl_vpternlogv8bf_2 */
   19687              : 
   19688              :             case 6:
   19689              :               if (!(
   19690              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19691              : ((64 == 64 || TARGET_AVX512VL
   19692              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19693              :    && ix86_pre_reload_split ()
   19694              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19695              :                     STRIP_UNARY (operands[4]))
   19696              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19697              :                        STRIP_UNARY (operands[4]))
   19698              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19699              :                        STRIP_UNARY (operands[3]))
   19700              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19701              :                        STRIP_UNARY (operands[3])))) && 
   19702              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19703              : (TARGET_AVX512F)))
   19704              :                 return -1;
   19705              :               return 6680; /* *avx512f_vpternlogv16sf_2 */
   19706              : 
   19707              :             case 7:
   19708              :               if (!(
   19709              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19710              : ((32 == 64 || TARGET_AVX512VL
   19711              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19712              :    && ix86_pre_reload_split ()
   19713              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19714              :                     STRIP_UNARY (operands[4]))
   19715              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19716              :                        STRIP_UNARY (operands[4]))
   19717              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19718              :                        STRIP_UNARY (operands[3]))
   19719              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19720              :                        STRIP_UNARY (operands[3])))) && 
   19721              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19722              : (TARGET_AVX)))
   19723              :                 return -1;
   19724              :               return 6707; /* *avx512vl_vpternlogv8sf_2 */
   19725              : 
   19726              :             case 8:
   19727              :               if (!
   19728              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19729              : ((16 == 64 || TARGET_AVX512VL
   19730              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19731              :    && ix86_pre_reload_split ()
   19732              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19733              :                     STRIP_UNARY (operands[4]))
   19734              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19735              :                        STRIP_UNARY (operands[4]))
   19736              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19737              :                        STRIP_UNARY (operands[3]))
   19738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19739              :                        STRIP_UNARY (operands[3])))))
   19740              :                 return -1;
   19741              :               return 6734; /* *avx512vl_vpternlogv4sf_2 */
   19742              : 
   19743              :             case 9:
   19744              :               if (!(
   19745              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19746              : ((64 == 64 || TARGET_AVX512VL
   19747              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19748              :    && ix86_pre_reload_split ()
   19749              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19750              :                     STRIP_UNARY (operands[4]))
   19751              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19752              :                        STRIP_UNARY (operands[4]))
   19753              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19754              :                        STRIP_UNARY (operands[3]))
   19755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19756              :                        STRIP_UNARY (operands[3])))) && 
   19757              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19758              : (TARGET_AVX512F)))
   19759              :                 return -1;
   19760              :               return 6761; /* *avx512f_vpternlogv8df_2 */
   19761              : 
   19762              :             case 10:
   19763              :               if (!(
   19764              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19765              : ((32 == 64 || TARGET_AVX512VL
   19766              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19767              :    && ix86_pre_reload_split ()
   19768              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19769              :                     STRIP_UNARY (operands[4]))
   19770              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19771              :                        STRIP_UNARY (operands[4]))
   19772              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19773              :                        STRIP_UNARY (operands[3]))
   19774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19775              :                        STRIP_UNARY (operands[3])))) && 
   19776              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19777              : (TARGET_AVX)))
   19778              :                 return -1;
   19779              :               return 6788; /* *avx512vl_vpternlogv4df_2 */
   19780              : 
   19781              :             case 11:
   19782              :               if (!(
   19783              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19784              : ((16 == 64 || TARGET_AVX512VL
   19785              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19786              :    && ix86_pre_reload_split ()
   19787              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19788              :                     STRIP_UNARY (operands[4]))
   19789              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19790              :                        STRIP_UNARY (operands[4]))
   19791              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19792              :                        STRIP_UNARY (operands[3]))
   19793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19794              :                        STRIP_UNARY (operands[3])))) && 
   19795              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19796              : (TARGET_SSE2)))
   19797              :                 return -1;
   19798              :               return 6815; /* *avx512vl_vpternlogv2df_2 */
   19799              : 
   19800              :             default:
   19801              :               return -1;
   19802              :             }
   19803              : 
   19804              :         default:
   19805              :           return -1;
   19806              :         }
   19807              : 
   19808              :     case IOR:
   19809              :       x4 = XEXP (x3, 0);
   19810              :       switch (GET_CODE (x4))
   19811              :         {
   19812              :         case REG:
   19813              :         case SUBREG:
   19814              :         case MEM:
   19815              :         case NOT:
   19816              :           switch (pattern541 (x2))
   19817              :             {
   19818              :             case 0:
   19819              :               if (!(
   19820              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19821              : ((64 == 64 || TARGET_AVX512VL
   19822              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19823              :    && ix86_pre_reload_split ()
   19824              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19825              :                     STRIP_UNARY (operands[4]))
   19826              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19827              :                        STRIP_UNARY (operands[4]))
   19828              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19829              :                        STRIP_UNARY (operands[3]))
   19830              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19831              :                        STRIP_UNARY (operands[3])))) && 
   19832              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19833              : (TARGET_AVX512F)))
   19834              :                 return -1;
   19835              :               return 5873; /* *avx512bw_vpternlogv32hf_1 */
   19836              : 
   19837              :             case 1:
   19838              :               if (!(
   19839              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19840              : ((32 == 64 || TARGET_AVX512VL
   19841              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19842              :    && ix86_pre_reload_split ()
   19843              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19844              :                     STRIP_UNARY (operands[4]))
   19845              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19846              :                        STRIP_UNARY (operands[4]))
   19847              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19848              :                        STRIP_UNARY (operands[3]))
   19849              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19850              :                        STRIP_UNARY (operands[3])))) && 
   19851              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19852              : (TARGET_AVX)))
   19853              :                 return -1;
   19854              :               return 5900; /* *avx512vl_vpternlogv16hf_1 */
   19855              : 
   19856              :             case 2:
   19857              :               if (!
   19858              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19859              : ((16 == 64 || TARGET_AVX512VL
   19860              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19861              :    && ix86_pre_reload_split ()
   19862              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19863              :                     STRIP_UNARY (operands[4]))
   19864              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19865              :                        STRIP_UNARY (operands[4]))
   19866              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19867              :                        STRIP_UNARY (operands[3]))
   19868              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19869              :                        STRIP_UNARY (operands[3])))))
   19870              :                 return -1;
   19871              :               return 5927; /* *avx512fp16_vpternlogv8hf_1 */
   19872              : 
   19873              :             case 3:
   19874              :               if (!(
   19875              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19876              : ((64 == 64 || TARGET_AVX512VL
   19877              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19878              :    && ix86_pre_reload_split ()
   19879              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19880              :                     STRIP_UNARY (operands[4]))
   19881              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19882              :                        STRIP_UNARY (operands[4]))
   19883              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19884              :                        STRIP_UNARY (operands[3]))
   19885              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19886              :                        STRIP_UNARY (operands[3])))) && 
   19887              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19888              : (TARGET_AVX512F)))
   19889              :                 return -1;
   19890              :               return 5954; /* *avx512bw_vpternlogv32bf_1 */
   19891              : 
   19892              :             case 4:
   19893              :               if (!(
   19894              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19895              : ((32 == 64 || TARGET_AVX512VL
   19896              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19897              :    && ix86_pre_reload_split ()
   19898              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19899              :                     STRIP_UNARY (operands[4]))
   19900              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19901              :                        STRIP_UNARY (operands[4]))
   19902              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19903              :                        STRIP_UNARY (operands[3]))
   19904              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19905              :                        STRIP_UNARY (operands[3])))) && 
   19906              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19907              : (TARGET_AVX)))
   19908              :                 return -1;
   19909              :               return 5981; /* *avx512vl_vpternlogv16bf_1 */
   19910              : 
   19911              :             case 5:
   19912              :               if (!
   19913              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19914              : ((16 == 64 || TARGET_AVX512VL
   19915              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19916              :    && ix86_pre_reload_split ()
   19917              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19918              :                     STRIP_UNARY (operands[4]))
   19919              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19920              :                        STRIP_UNARY (operands[4]))
   19921              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19922              :                        STRIP_UNARY (operands[3]))
   19923              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19924              :                        STRIP_UNARY (operands[3])))))
   19925              :                 return -1;
   19926              :               return 6008; /* *avx512vl_vpternlogv8bf_1 */
   19927              : 
   19928              :             case 6:
   19929              :               if (!(
   19930              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19931              : ((64 == 64 || TARGET_AVX512VL
   19932              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19933              :    && ix86_pre_reload_split ()
   19934              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19935              :                     STRIP_UNARY (operands[4]))
   19936              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19937              :                        STRIP_UNARY (operands[4]))
   19938              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19939              :                        STRIP_UNARY (operands[3]))
   19940              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19941              :                        STRIP_UNARY (operands[3])))) && 
   19942              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19943              : (TARGET_AVX512F)))
   19944              :                 return -1;
   19945              :               return 6035; /* *avx512f_vpternlogv16sf_1 */
   19946              : 
   19947              :             case 7:
   19948              :               if (!(
   19949              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19950              : ((32 == 64 || TARGET_AVX512VL
   19951              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19952              :    && ix86_pre_reload_split ()
   19953              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19954              :                     STRIP_UNARY (operands[4]))
   19955              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19956              :                        STRIP_UNARY (operands[4]))
   19957              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19958              :                        STRIP_UNARY (operands[3]))
   19959              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19960              :                        STRIP_UNARY (operands[3])))) && 
   19961              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19962              : (TARGET_AVX)))
   19963              :                 return -1;
   19964              :               return 6062; /* *avx512vl_vpternlogv8sf_1 */
   19965              : 
   19966              :             case 8:
   19967              :               if (!
   19968              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19969              : ((16 == 64 || TARGET_AVX512VL
   19970              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19971              :    && ix86_pre_reload_split ()
   19972              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19973              :                     STRIP_UNARY (operands[4]))
   19974              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19975              :                        STRIP_UNARY (operands[4]))
   19976              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19977              :                        STRIP_UNARY (operands[3]))
   19978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19979              :                        STRIP_UNARY (operands[3])))))
   19980              :                 return -1;
   19981              :               return 6089; /* *avx512vl_vpternlogv4sf_1 */
   19982              : 
   19983              :             case 9:
   19984              :               if (!(
   19985              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19986              : ((64 == 64 || TARGET_AVX512VL
   19987              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19988              :    && ix86_pre_reload_split ()
   19989              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19990              :                     STRIP_UNARY (operands[4]))
   19991              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19992              :                        STRIP_UNARY (operands[4]))
   19993              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19994              :                        STRIP_UNARY (operands[3]))
   19995              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19996              :                        STRIP_UNARY (operands[3])))) && 
   19997              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19998              : (TARGET_AVX512F)))
   19999              :                 return -1;
   20000              :               return 6116; /* *avx512f_vpternlogv8df_1 */
   20001              : 
   20002              :             case 10:
   20003              :               if (!(
   20004              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20005              : ((32 == 64 || TARGET_AVX512VL
   20006              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20007              :    && ix86_pre_reload_split ()
   20008              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20009              :                     STRIP_UNARY (operands[4]))
   20010              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20011              :                        STRIP_UNARY (operands[4]))
   20012              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20013              :                        STRIP_UNARY (operands[3]))
   20014              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20015              :                        STRIP_UNARY (operands[3])))) && 
   20016              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20017              : (TARGET_AVX)))
   20018              :                 return -1;
   20019              :               return 6143; /* *avx512vl_vpternlogv4df_1 */
   20020              : 
   20021              :             case 11:
   20022              :               if (!(
   20023              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20024              : ((16 == 64 || TARGET_AVX512VL
   20025              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20026              :    && ix86_pre_reload_split ()
   20027              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20028              :                     STRIP_UNARY (operands[4]))
   20029              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20030              :                        STRIP_UNARY (operands[4]))
   20031              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20032              :                        STRIP_UNARY (operands[3]))
   20033              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20034              :                        STRIP_UNARY (operands[3])))) && 
   20035              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20036              : (TARGET_SSE2)))
   20037              :                 return -1;
   20038              :               return 6170; /* *avx512vl_vpternlogv2df_1 */
   20039              : 
   20040              :             case 12:
   20041              :               if (!(
   20042              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20043              : ((64 == 64 || TARGET_AVX512VL
   20044              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20045              :    && ix86_pre_reload_split ()
   20046              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20047              :                     STRIP_UNARY (operands[4]))
   20048              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20049              :                        STRIP_UNARY (operands[4]))
   20050              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20051              :                        STRIP_UNARY (operands[3]))
   20052              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20053              :                        STRIP_UNARY (operands[3])))) && 
   20054              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20055              : (TARGET_AVX512F)))
   20056              :                 return -1;
   20057              :               return 5876; /* *avx512bw_vpternlogv32hf_1 */
   20058              : 
   20059              :             case 13:
   20060              :               if (!(
   20061              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20062              : ((32 == 64 || TARGET_AVX512VL
   20063              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20064              :    && ix86_pre_reload_split ()
   20065              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20066              :                     STRIP_UNARY (operands[4]))
   20067              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20068              :                        STRIP_UNARY (operands[4]))
   20069              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20070              :                        STRIP_UNARY (operands[3]))
   20071              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20072              :                        STRIP_UNARY (operands[3])))) && 
   20073              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20074              : (TARGET_AVX)))
   20075              :                 return -1;
   20076              :               return 5903; /* *avx512vl_vpternlogv16hf_1 */
   20077              : 
   20078              :             case 14:
   20079              :               if (!
   20080              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20081              : ((16 == 64 || TARGET_AVX512VL
   20082              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20083              :    && ix86_pre_reload_split ()
   20084              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20085              :                     STRIP_UNARY (operands[4]))
   20086              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20087              :                        STRIP_UNARY (operands[4]))
   20088              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20089              :                        STRIP_UNARY (operands[3]))
   20090              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20091              :                        STRIP_UNARY (operands[3])))))
   20092              :                 return -1;
   20093              :               return 5930; /* *avx512fp16_vpternlogv8hf_1 */
   20094              : 
   20095              :             case 15:
   20096              :               if (!(
   20097              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20098              : ((64 == 64 || TARGET_AVX512VL
   20099              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20100              :    && ix86_pre_reload_split ()
   20101              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20102              :                     STRIP_UNARY (operands[4]))
   20103              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20104              :                        STRIP_UNARY (operands[4]))
   20105              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20106              :                        STRIP_UNARY (operands[3]))
   20107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20108              :                        STRIP_UNARY (operands[3])))) && 
   20109              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20110              : (TARGET_AVX512F)))
   20111              :                 return -1;
   20112              :               return 5957; /* *avx512bw_vpternlogv32bf_1 */
   20113              : 
   20114              :             case 16:
   20115              :               if (!(
   20116              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20117              : ((32 == 64 || TARGET_AVX512VL
   20118              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20119              :    && ix86_pre_reload_split ()
   20120              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20121              :                     STRIP_UNARY (operands[4]))
   20122              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20123              :                        STRIP_UNARY (operands[4]))
   20124              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20125              :                        STRIP_UNARY (operands[3]))
   20126              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20127              :                        STRIP_UNARY (operands[3])))) && 
   20128              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20129              : (TARGET_AVX)))
   20130              :                 return -1;
   20131              :               return 5984; /* *avx512vl_vpternlogv16bf_1 */
   20132              : 
   20133              :             case 17:
   20134              :               if (!
   20135              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20136              : ((16 == 64 || TARGET_AVX512VL
   20137              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20138              :    && ix86_pre_reload_split ()
   20139              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20140              :                     STRIP_UNARY (operands[4]))
   20141              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20142              :                        STRIP_UNARY (operands[4]))
   20143              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20144              :                        STRIP_UNARY (operands[3]))
   20145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20146              :                        STRIP_UNARY (operands[3])))))
   20147              :                 return -1;
   20148              :               return 6011; /* *avx512vl_vpternlogv8bf_1 */
   20149              : 
   20150              :             case 18:
   20151              :               if (!(
   20152              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20153              : ((64 == 64 || TARGET_AVX512VL
   20154              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20155              :    && ix86_pre_reload_split ()
   20156              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20157              :                     STRIP_UNARY (operands[4]))
   20158              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20159              :                        STRIP_UNARY (operands[4]))
   20160              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20161              :                        STRIP_UNARY (operands[3]))
   20162              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20163              :                        STRIP_UNARY (operands[3])))) && 
   20164              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20165              : (TARGET_AVX512F)))
   20166              :                 return -1;
   20167              :               return 6038; /* *avx512f_vpternlogv16sf_1 */
   20168              : 
   20169              :             case 19:
   20170              :               if (!(
   20171              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20172              : ((32 == 64 || TARGET_AVX512VL
   20173              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20174              :    && ix86_pre_reload_split ()
   20175              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20176              :                     STRIP_UNARY (operands[4]))
   20177              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20178              :                        STRIP_UNARY (operands[4]))
   20179              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20180              :                        STRIP_UNARY (operands[3]))
   20181              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20182              :                        STRIP_UNARY (operands[3])))) && 
   20183              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20184              : (TARGET_AVX)))
   20185              :                 return -1;
   20186              :               return 6065; /* *avx512vl_vpternlogv8sf_1 */
   20187              : 
   20188              :             case 20:
   20189              :               if (!
   20190              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20191              : ((16 == 64 || TARGET_AVX512VL
   20192              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20193              :    && ix86_pre_reload_split ()
   20194              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20195              :                     STRIP_UNARY (operands[4]))
   20196              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20197              :                        STRIP_UNARY (operands[4]))
   20198              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20199              :                        STRIP_UNARY (operands[3]))
   20200              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20201              :                        STRIP_UNARY (operands[3])))))
   20202              :                 return -1;
   20203              :               return 6092; /* *avx512vl_vpternlogv4sf_1 */
   20204              : 
   20205              :             case 21:
   20206              :               if (!(
   20207              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20208              : ((64 == 64 || TARGET_AVX512VL
   20209              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20210              :    && ix86_pre_reload_split ()
   20211              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20212              :                     STRIP_UNARY (operands[4]))
   20213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20214              :                        STRIP_UNARY (operands[4]))
   20215              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20216              :                        STRIP_UNARY (operands[3]))
   20217              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20218              :                        STRIP_UNARY (operands[3])))) && 
   20219              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20220              : (TARGET_AVX512F)))
   20221              :                 return -1;
   20222              :               return 6119; /* *avx512f_vpternlogv8df_1 */
   20223              : 
   20224              :             case 22:
   20225              :               if (!(
   20226              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20227              : ((32 == 64 || TARGET_AVX512VL
   20228              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20229              :    && ix86_pre_reload_split ()
   20230              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20231              :                     STRIP_UNARY (operands[4]))
   20232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20233              :                        STRIP_UNARY (operands[4]))
   20234              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20235              :                        STRIP_UNARY (operands[3]))
   20236              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20237              :                        STRIP_UNARY (operands[3])))) && 
   20238              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20239              : (TARGET_AVX)))
   20240              :                 return -1;
   20241              :               return 6146; /* *avx512vl_vpternlogv4df_1 */
   20242              : 
   20243              :             case 23:
   20244              :               if (!(
   20245              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20246              : ((16 == 64 || TARGET_AVX512VL
   20247              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20248              :    && ix86_pre_reload_split ()
   20249              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20250              :                     STRIP_UNARY (operands[4]))
   20251              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20252              :                        STRIP_UNARY (operands[4]))
   20253              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20254              :                        STRIP_UNARY (operands[3]))
   20255              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20256              :                        STRIP_UNARY (operands[3])))) && 
   20257              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20258              : (TARGET_SSE2)))
   20259              :                 return -1;
   20260              :               return 6173; /* *avx512vl_vpternlogv2df_1 */
   20261              : 
   20262              :             case 24:
   20263              :               if (!(
   20264              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20265              : ((64 == 64 || TARGET_AVX512VL
   20266              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20267              :    && ix86_pre_reload_split ()
   20268              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20269              :                     STRIP_UNARY (operands[4]))
   20270              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20271              :                        STRIP_UNARY (operands[4]))
   20272              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20273              :                        STRIP_UNARY (operands[3]))
   20274              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20275              :                        STRIP_UNARY (operands[3])))) && 
   20276              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20277              : (TARGET_AVX512F)))
   20278              :                 return -1;
   20279              :               return 5879; /* *avx512bw_vpternlogv32hf_1 */
   20280              : 
   20281              :             case 25:
   20282              :               if (!(
   20283              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20284              : ((32 == 64 || TARGET_AVX512VL
   20285              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20286              :    && ix86_pre_reload_split ()
   20287              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20288              :                     STRIP_UNARY (operands[4]))
   20289              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20290              :                        STRIP_UNARY (operands[4]))
   20291              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20292              :                        STRIP_UNARY (operands[3]))
   20293              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20294              :                        STRIP_UNARY (operands[3])))) && 
   20295              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20296              : (TARGET_AVX)))
   20297              :                 return -1;
   20298              :               return 5906; /* *avx512vl_vpternlogv16hf_1 */
   20299              : 
   20300              :             case 26:
   20301              :               if (!
   20302              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20303              : ((16 == 64 || TARGET_AVX512VL
   20304              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20305              :    && ix86_pre_reload_split ()
   20306              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20307              :                     STRIP_UNARY (operands[4]))
   20308              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20309              :                        STRIP_UNARY (operands[4]))
   20310              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20311              :                        STRIP_UNARY (operands[3]))
   20312              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20313              :                        STRIP_UNARY (operands[3])))))
   20314              :                 return -1;
   20315              :               return 5933; /* *avx512fp16_vpternlogv8hf_1 */
   20316              : 
   20317              :             case 27:
   20318              :               if (!(
   20319              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20320              : ((64 == 64 || TARGET_AVX512VL
   20321              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20322              :    && ix86_pre_reload_split ()
   20323              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20324              :                     STRIP_UNARY (operands[4]))
   20325              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20326              :                        STRIP_UNARY (operands[4]))
   20327              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20328              :                        STRIP_UNARY (operands[3]))
   20329              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20330              :                        STRIP_UNARY (operands[3])))) && 
   20331              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20332              : (TARGET_AVX512F)))
   20333              :                 return -1;
   20334              :               return 5960; /* *avx512bw_vpternlogv32bf_1 */
   20335              : 
   20336              :             case 28:
   20337              :               if (!(
   20338              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20339              : ((32 == 64 || TARGET_AVX512VL
   20340              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20341              :    && ix86_pre_reload_split ()
   20342              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20343              :                     STRIP_UNARY (operands[4]))
   20344              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20345              :                        STRIP_UNARY (operands[4]))
   20346              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20347              :                        STRIP_UNARY (operands[3]))
   20348              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20349              :                        STRIP_UNARY (operands[3])))) && 
   20350              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20351              : (TARGET_AVX)))
   20352              :                 return -1;
   20353              :               return 5987; /* *avx512vl_vpternlogv16bf_1 */
   20354              : 
   20355              :             case 29:
   20356              :               if (!
   20357              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20358              : ((16 == 64 || TARGET_AVX512VL
   20359              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20360              :    && ix86_pre_reload_split ()
   20361              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20362              :                     STRIP_UNARY (operands[4]))
   20363              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20364              :                        STRIP_UNARY (operands[4]))
   20365              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20366              :                        STRIP_UNARY (operands[3]))
   20367              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20368              :                        STRIP_UNARY (operands[3])))))
   20369              :                 return -1;
   20370              :               return 6014; /* *avx512vl_vpternlogv8bf_1 */
   20371              : 
   20372              :             case 30:
   20373              :               if (!(
   20374              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20375              : ((64 == 64 || TARGET_AVX512VL
   20376              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20377              :    && ix86_pre_reload_split ()
   20378              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20379              :                     STRIP_UNARY (operands[4]))
   20380              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20381              :                        STRIP_UNARY (operands[4]))
   20382              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20383              :                        STRIP_UNARY (operands[3]))
   20384              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20385              :                        STRIP_UNARY (operands[3])))) && 
   20386              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20387              : (TARGET_AVX512F)))
   20388              :                 return -1;
   20389              :               return 6041; /* *avx512f_vpternlogv16sf_1 */
   20390              : 
   20391              :             case 31:
   20392              :               if (!(
   20393              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20394              : ((32 == 64 || TARGET_AVX512VL
   20395              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20396              :    && ix86_pre_reload_split ()
   20397              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20398              :                     STRIP_UNARY (operands[4]))
   20399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20400              :                        STRIP_UNARY (operands[4]))
   20401              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20402              :                        STRIP_UNARY (operands[3]))
   20403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20404              :                        STRIP_UNARY (operands[3])))) && 
   20405              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20406              : (TARGET_AVX)))
   20407              :                 return -1;
   20408              :               return 6068; /* *avx512vl_vpternlogv8sf_1 */
   20409              : 
   20410              :             case 32:
   20411              :               if (!
   20412              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20413              : ((16 == 64 || TARGET_AVX512VL
   20414              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20415              :    && ix86_pre_reload_split ()
   20416              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20417              :                     STRIP_UNARY (operands[4]))
   20418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20419              :                        STRIP_UNARY (operands[4]))
   20420              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20421              :                        STRIP_UNARY (operands[3]))
   20422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20423              :                        STRIP_UNARY (operands[3])))))
   20424              :                 return -1;
   20425              :               return 6095; /* *avx512vl_vpternlogv4sf_1 */
   20426              : 
   20427              :             case 33:
   20428              :               if (!(
   20429              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20430              : ((64 == 64 || TARGET_AVX512VL
   20431              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20432              :    && ix86_pre_reload_split ()
   20433              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20434              :                     STRIP_UNARY (operands[4]))
   20435              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20436              :                        STRIP_UNARY (operands[4]))
   20437              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20438              :                        STRIP_UNARY (operands[3]))
   20439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20440              :                        STRIP_UNARY (operands[3])))) && 
   20441              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20442              : (TARGET_AVX512F)))
   20443              :                 return -1;
   20444              :               return 6122; /* *avx512f_vpternlogv8df_1 */
   20445              : 
   20446              :             case 34:
   20447              :               if (!(
   20448              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20449              : ((32 == 64 || TARGET_AVX512VL
   20450              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20451              :    && ix86_pre_reload_split ()
   20452              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20453              :                     STRIP_UNARY (operands[4]))
   20454              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20455              :                        STRIP_UNARY (operands[4]))
   20456              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20457              :                        STRIP_UNARY (operands[3]))
   20458              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20459              :                        STRIP_UNARY (operands[3])))) && 
   20460              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20461              : (TARGET_AVX)))
   20462              :                 return -1;
   20463              :               return 6149; /* *avx512vl_vpternlogv4df_1 */
   20464              : 
   20465              :             case 35:
   20466              :               if (!(
   20467              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20468              : ((16 == 64 || TARGET_AVX512VL
   20469              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20470              :    && ix86_pre_reload_split ()
   20471              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20472              :                     STRIP_UNARY (operands[4]))
   20473              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20474              :                        STRIP_UNARY (operands[4]))
   20475              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20476              :                        STRIP_UNARY (operands[3]))
   20477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20478              :                        STRIP_UNARY (operands[3])))) && 
   20479              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20480              : (TARGET_SSE2)))
   20481              :                 return -1;
   20482              :               return 6176; /* *avx512vl_vpternlogv2df_1 */
   20483              : 
   20484              :             case 36:
   20485              :               if (!(
   20486              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20487              : ((64 == 64 || TARGET_AVX512VL
   20488              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20489              :    && ix86_pre_reload_split ()) && 
   20490              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20491              : (TARGET_AVX512F)))
   20492              :                 return -1;
   20493              :               return 6947; /* *avx512bw_vpternlogv32hf_3 */
   20494              : 
   20495              :             case 37:
   20496              :               if (!(
   20497              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20498              : ((32 == 64 || TARGET_AVX512VL
   20499              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20500              :    && ix86_pre_reload_split ()) && 
   20501              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20502              : (TARGET_AVX)))
   20503              :                 return -1;
   20504              :               return 6956; /* *avx512vl_vpternlogv16hf_3 */
   20505              : 
   20506              :             case 38:
   20507              :               if (!
   20508              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20509              : ((16 == 64 || TARGET_AVX512VL
   20510              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20511              :    && ix86_pre_reload_split ()))
   20512              :                 return -1;
   20513              :               return 6965; /* *avx512fp16_vpternlogv8hf_3 */
   20514              : 
   20515              :             case 39:
   20516              :               if (!(
   20517              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20518              : ((64 == 64 || TARGET_AVX512VL
   20519              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20520              :    && ix86_pre_reload_split ()) && 
   20521              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20522              : (TARGET_AVX512F)))
   20523              :                 return -1;
   20524              :               return 6974; /* *avx512bw_vpternlogv32bf_3 */
   20525              : 
   20526              :             case 40:
   20527              :               if (!(
   20528              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20529              : ((32 == 64 || TARGET_AVX512VL
   20530              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20531              :    && ix86_pre_reload_split ()) && 
   20532              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20533              : (TARGET_AVX)))
   20534              :                 return -1;
   20535              :               return 6983; /* *avx512vl_vpternlogv16bf_3 */
   20536              : 
   20537              :             case 41:
   20538              :               if (!
   20539              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20540              : ((16 == 64 || TARGET_AVX512VL
   20541              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20542              :    && ix86_pre_reload_split ()))
   20543              :                 return -1;
   20544              :               return 6992; /* *avx512vl_vpternlogv8bf_3 */
   20545              : 
   20546              :             case 42:
   20547              :               if (!(
   20548              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20549              : ((64 == 64 || TARGET_AVX512VL
   20550              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20551              :    && ix86_pre_reload_split ()) && 
   20552              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20553              : (TARGET_AVX512F)))
   20554              :                 return -1;
   20555              :               return 7001; /* *avx512f_vpternlogv16sf_3 */
   20556              : 
   20557              :             case 43:
   20558              :               if (!(
   20559              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20560              : ((32 == 64 || TARGET_AVX512VL
   20561              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20562              :    && ix86_pre_reload_split ()) && 
   20563              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20564              : (TARGET_AVX)))
   20565              :                 return -1;
   20566              :               return 7010; /* *avx512vl_vpternlogv8sf_3 */
   20567              : 
   20568              :             case 44:
   20569              :               if (!
   20570              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20571              : ((16 == 64 || TARGET_AVX512VL
   20572              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20573              :    && ix86_pre_reload_split ()))
   20574              :                 return -1;
   20575              :               return 7019; /* *avx512vl_vpternlogv4sf_3 */
   20576              : 
   20577              :             case 45:
   20578              :               if (!(
   20579              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20580              : ((64 == 64 || TARGET_AVX512VL
   20581              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20582              :    && ix86_pre_reload_split ()) && 
   20583              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20584              : (TARGET_AVX512F)))
   20585              :                 return -1;
   20586              :               return 7028; /* *avx512f_vpternlogv8df_3 */
   20587              : 
   20588              :             case 46:
   20589              :               if (!(
   20590              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20591              : ((32 == 64 || TARGET_AVX512VL
   20592              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20593              :    && ix86_pre_reload_split ()) && 
   20594              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20595              : (TARGET_AVX)))
   20596              :                 return -1;
   20597              :               return 7037; /* *avx512vl_vpternlogv4df_3 */
   20598              : 
   20599              :             case 47:
   20600              :               if (!(
   20601              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20602              : ((16 == 64 || TARGET_AVX512VL
   20603              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20604              :    && ix86_pre_reload_split ()) && 
   20605              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20606              : (TARGET_SSE2)))
   20607              :                 return -1;
   20608              :               return 7046; /* *avx512vl_vpternlogv2df_3 */
   20609              : 
   20610              :             default:
   20611              :               return -1;
   20612              :             }
   20613              : 
   20614              :         case AND:
   20615              :           switch (pattern542 (x2))
   20616              :             {
   20617              :             case 0:
   20618              :               if (!(
   20619              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20620              : ((64 == 64 || TARGET_AVX512VL
   20621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20622              :    && ix86_pre_reload_split ()
   20623              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20624              :                     STRIP_UNARY (operands[4]))
   20625              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20626              :                        STRIP_UNARY (operands[4]))
   20627              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20628              :                        STRIP_UNARY (operands[3]))
   20629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20630              :                        STRIP_UNARY (operands[3])))) && 
   20631              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20632              : (TARGET_AVX512F)))
   20633              :                 return -1;
   20634              :               return 6521; /* *avx512bw_vpternlogv32hf_2 */
   20635              : 
   20636              :             case 1:
   20637              :               if (!(
   20638              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20639              : ((32 == 64 || TARGET_AVX512VL
   20640              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20641              :    && ix86_pre_reload_split ()
   20642              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20643              :                     STRIP_UNARY (operands[4]))
   20644              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20645              :                        STRIP_UNARY (operands[4]))
   20646              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20647              :                        STRIP_UNARY (operands[3]))
   20648              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20649              :                        STRIP_UNARY (operands[3])))) && 
   20650              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20651              : (TARGET_AVX)))
   20652              :                 return -1;
   20653              :               return 6548; /* *avx512vl_vpternlogv16hf_2 */
   20654              : 
   20655              :             case 2:
   20656              :               if (!
   20657              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20658              : ((16 == 64 || TARGET_AVX512VL
   20659              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20660              :    && ix86_pre_reload_split ()
   20661              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20662              :                     STRIP_UNARY (operands[4]))
   20663              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20664              :                        STRIP_UNARY (operands[4]))
   20665              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20666              :                        STRIP_UNARY (operands[3]))
   20667              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20668              :                        STRIP_UNARY (operands[3])))))
   20669              :                 return -1;
   20670              :               return 6575; /* *avx512fp16_vpternlogv8hf_2 */
   20671              : 
   20672              :             case 3:
   20673              :               if (!(
   20674              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20675              : ((64 == 64 || TARGET_AVX512VL
   20676              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20677              :    && ix86_pre_reload_split ()
   20678              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20679              :                     STRIP_UNARY (operands[4]))
   20680              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20681              :                        STRIP_UNARY (operands[4]))
   20682              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20683              :                        STRIP_UNARY (operands[3]))
   20684              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20685              :                        STRIP_UNARY (operands[3])))) && 
   20686              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20687              : (TARGET_AVX512F)))
   20688              :                 return -1;
   20689              :               return 6602; /* *avx512bw_vpternlogv32bf_2 */
   20690              : 
   20691              :             case 4:
   20692              :               if (!(
   20693              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20694              : ((32 == 64 || TARGET_AVX512VL
   20695              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20696              :    && ix86_pre_reload_split ()
   20697              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20698              :                     STRIP_UNARY (operands[4]))
   20699              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20700              :                        STRIP_UNARY (operands[4]))
   20701              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20702              :                        STRIP_UNARY (operands[3]))
   20703              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20704              :                        STRIP_UNARY (operands[3])))) && 
   20705              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20706              : (TARGET_AVX)))
   20707              :                 return -1;
   20708              :               return 6629; /* *avx512vl_vpternlogv16bf_2 */
   20709              : 
   20710              :             case 5:
   20711              :               if (!
   20712              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20713              : ((16 == 64 || TARGET_AVX512VL
   20714              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20715              :    && ix86_pre_reload_split ()
   20716              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20717              :                     STRIP_UNARY (operands[4]))
   20718              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20719              :                        STRIP_UNARY (operands[4]))
   20720              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20721              :                        STRIP_UNARY (operands[3]))
   20722              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20723              :                        STRIP_UNARY (operands[3])))))
   20724              :                 return -1;
   20725              :               return 6656; /* *avx512vl_vpternlogv8bf_2 */
   20726              : 
   20727              :             case 6:
   20728              :               if (!(
   20729              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20730              : ((64 == 64 || TARGET_AVX512VL
   20731              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20732              :    && ix86_pre_reload_split ()
   20733              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20734              :                     STRIP_UNARY (operands[4]))
   20735              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20736              :                        STRIP_UNARY (operands[4]))
   20737              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20738              :                        STRIP_UNARY (operands[3]))
   20739              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20740              :                        STRIP_UNARY (operands[3])))) && 
   20741              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20742              : (TARGET_AVX512F)))
   20743              :                 return -1;
   20744              :               return 6683; /* *avx512f_vpternlogv16sf_2 */
   20745              : 
   20746              :             case 7:
   20747              :               if (!(
   20748              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20749              : ((32 == 64 || TARGET_AVX512VL
   20750              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20751              :    && ix86_pre_reload_split ()
   20752              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20753              :                     STRIP_UNARY (operands[4]))
   20754              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20755              :                        STRIP_UNARY (operands[4]))
   20756              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20757              :                        STRIP_UNARY (operands[3]))
   20758              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20759              :                        STRIP_UNARY (operands[3])))) && 
   20760              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20761              : (TARGET_AVX)))
   20762              :                 return -1;
   20763              :               return 6710; /* *avx512vl_vpternlogv8sf_2 */
   20764              : 
   20765              :             case 8:
   20766              :               if (!
   20767              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20768              : ((16 == 64 || TARGET_AVX512VL
   20769              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20770              :    && ix86_pre_reload_split ()
   20771              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20772              :                     STRIP_UNARY (operands[4]))
   20773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20774              :                        STRIP_UNARY (operands[4]))
   20775              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20776              :                        STRIP_UNARY (operands[3]))
   20777              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20778              :                        STRIP_UNARY (operands[3])))))
   20779              :                 return -1;
   20780              :               return 6737; /* *avx512vl_vpternlogv4sf_2 */
   20781              : 
   20782              :             case 9:
   20783              :               if (!(
   20784              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20785              : ((64 == 64 || TARGET_AVX512VL
   20786              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20787              :    && ix86_pre_reload_split ()
   20788              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20789              :                     STRIP_UNARY (operands[4]))
   20790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20791              :                        STRIP_UNARY (operands[4]))
   20792              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20793              :                        STRIP_UNARY (operands[3]))
   20794              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20795              :                        STRIP_UNARY (operands[3])))) && 
   20796              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20797              : (TARGET_AVX512F)))
   20798              :                 return -1;
   20799              :               return 6764; /* *avx512f_vpternlogv8df_2 */
   20800              : 
   20801              :             case 10:
   20802              :               if (!(
   20803              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20804              : ((32 == 64 || TARGET_AVX512VL
   20805              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20806              :    && ix86_pre_reload_split ()
   20807              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20808              :                     STRIP_UNARY (operands[4]))
   20809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20810              :                        STRIP_UNARY (operands[4]))
   20811              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20812              :                        STRIP_UNARY (operands[3]))
   20813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20814              :                        STRIP_UNARY (operands[3])))) && 
   20815              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20816              : (TARGET_AVX)))
   20817              :                 return -1;
   20818              :               return 6791; /* *avx512vl_vpternlogv4df_2 */
   20819              : 
   20820              :             case 11:
   20821              :               if (!(
   20822              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20823              : ((16 == 64 || TARGET_AVX512VL
   20824              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20825              :    && ix86_pre_reload_split ()
   20826              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20827              :                     STRIP_UNARY (operands[4]))
   20828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20829              :                        STRIP_UNARY (operands[4]))
   20830              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20831              :                        STRIP_UNARY (operands[3]))
   20832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20833              :                        STRIP_UNARY (operands[3])))) && 
   20834              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20835              : (TARGET_SSE2)))
   20836              :                 return -1;
   20837              :               return 6818; /* *avx512vl_vpternlogv2df_2 */
   20838              : 
   20839              :             default:
   20840              :               return -1;
   20841              :             }
   20842              : 
   20843              :         case IOR:
   20844              :           switch (pattern542 (x2))
   20845              :             {
   20846              :             case 0:
   20847              :               if (!(
   20848              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20849              : ((64 == 64 || TARGET_AVX512VL
   20850              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20851              :    && ix86_pre_reload_split ()
   20852              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20853              :                     STRIP_UNARY (operands[4]))
   20854              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20855              :                        STRIP_UNARY (operands[4]))
   20856              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20857              :                        STRIP_UNARY (operands[3]))
   20858              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20859              :                        STRIP_UNARY (operands[3])))) && 
   20860              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20861              : (TARGET_AVX512F)))
   20862              :                 return -1;
   20863              :               return 6524; /* *avx512bw_vpternlogv32hf_2 */
   20864              : 
   20865              :             case 1:
   20866              :               if (!(
   20867              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20868              : ((32 == 64 || TARGET_AVX512VL
   20869              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20870              :    && ix86_pre_reload_split ()
   20871              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20872              :                     STRIP_UNARY (operands[4]))
   20873              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20874              :                        STRIP_UNARY (operands[4]))
   20875              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20876              :                        STRIP_UNARY (operands[3]))
   20877              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20878              :                        STRIP_UNARY (operands[3])))) && 
   20879              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20880              : (TARGET_AVX)))
   20881              :                 return -1;
   20882              :               return 6551; /* *avx512vl_vpternlogv16hf_2 */
   20883              : 
   20884              :             case 2:
   20885              :               if (!
   20886              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20887              : ((16 == 64 || TARGET_AVX512VL
   20888              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20889              :    && ix86_pre_reload_split ()
   20890              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20891              :                     STRIP_UNARY (operands[4]))
   20892              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20893              :                        STRIP_UNARY (operands[4]))
   20894              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20895              :                        STRIP_UNARY (operands[3]))
   20896              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20897              :                        STRIP_UNARY (operands[3])))))
   20898              :                 return -1;
   20899              :               return 6578; /* *avx512fp16_vpternlogv8hf_2 */
   20900              : 
   20901              :             case 3:
   20902              :               if (!(
   20903              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20904              : ((64 == 64 || TARGET_AVX512VL
   20905              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20906              :    && ix86_pre_reload_split ()
   20907              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20908              :                     STRIP_UNARY (operands[4]))
   20909              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20910              :                        STRIP_UNARY (operands[4]))
   20911              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20912              :                        STRIP_UNARY (operands[3]))
   20913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20914              :                        STRIP_UNARY (operands[3])))) && 
   20915              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20916              : (TARGET_AVX512F)))
   20917              :                 return -1;
   20918              :               return 6605; /* *avx512bw_vpternlogv32bf_2 */
   20919              : 
   20920              :             case 4:
   20921              :               if (!(
   20922              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20923              : ((32 == 64 || TARGET_AVX512VL
   20924              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20925              :    && ix86_pre_reload_split ()
   20926              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20927              :                     STRIP_UNARY (operands[4]))
   20928              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20929              :                        STRIP_UNARY (operands[4]))
   20930              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20931              :                        STRIP_UNARY (operands[3]))
   20932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20933              :                        STRIP_UNARY (operands[3])))) && 
   20934              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20935              : (TARGET_AVX)))
   20936              :                 return -1;
   20937              :               return 6632; /* *avx512vl_vpternlogv16bf_2 */
   20938              : 
   20939              :             case 5:
   20940              :               if (!
   20941              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20942              : ((16 == 64 || TARGET_AVX512VL
   20943              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20944              :    && ix86_pre_reload_split ()
   20945              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20946              :                     STRIP_UNARY (operands[4]))
   20947              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20948              :                        STRIP_UNARY (operands[4]))
   20949              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20950              :                        STRIP_UNARY (operands[3]))
   20951              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20952              :                        STRIP_UNARY (operands[3])))))
   20953              :                 return -1;
   20954              :               return 6659; /* *avx512vl_vpternlogv8bf_2 */
   20955              : 
   20956              :             case 6:
   20957              :               if (!(
   20958              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20959              : ((64 == 64 || TARGET_AVX512VL
   20960              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20961              :    && ix86_pre_reload_split ()
   20962              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20963              :                     STRIP_UNARY (operands[4]))
   20964              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20965              :                        STRIP_UNARY (operands[4]))
   20966              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20967              :                        STRIP_UNARY (operands[3]))
   20968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20969              :                        STRIP_UNARY (operands[3])))) && 
   20970              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20971              : (TARGET_AVX512F)))
   20972              :                 return -1;
   20973              :               return 6686; /* *avx512f_vpternlogv16sf_2 */
   20974              : 
   20975              :             case 7:
   20976              :               if (!(
   20977              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20978              : ((32 == 64 || TARGET_AVX512VL
   20979              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20980              :    && ix86_pre_reload_split ()
   20981              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20982              :                     STRIP_UNARY (operands[4]))
   20983              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20984              :                        STRIP_UNARY (operands[4]))
   20985              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20986              :                        STRIP_UNARY (operands[3]))
   20987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20988              :                        STRIP_UNARY (operands[3])))) && 
   20989              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20990              : (TARGET_AVX)))
   20991              :                 return -1;
   20992              :               return 6713; /* *avx512vl_vpternlogv8sf_2 */
   20993              : 
   20994              :             case 8:
   20995              :               if (!
   20996              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20997              : ((16 == 64 || TARGET_AVX512VL
   20998              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20999              :    && ix86_pre_reload_split ()
   21000              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21001              :                     STRIP_UNARY (operands[4]))
   21002              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21003              :                        STRIP_UNARY (operands[4]))
   21004              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21005              :                        STRIP_UNARY (operands[3]))
   21006              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21007              :                        STRIP_UNARY (operands[3])))))
   21008              :                 return -1;
   21009              :               return 6740; /* *avx512vl_vpternlogv4sf_2 */
   21010              : 
   21011              :             case 9:
   21012              :               if (!(
   21013              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21014              : ((64 == 64 || TARGET_AVX512VL
   21015              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21016              :    && ix86_pre_reload_split ()
   21017              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21018              :                     STRIP_UNARY (operands[4]))
   21019              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21020              :                        STRIP_UNARY (operands[4]))
   21021              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21022              :                        STRIP_UNARY (operands[3]))
   21023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21024              :                        STRIP_UNARY (operands[3])))) && 
   21025              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21026              : (TARGET_AVX512F)))
   21027              :                 return -1;
   21028              :               return 6767; /* *avx512f_vpternlogv8df_2 */
   21029              : 
   21030              :             case 10:
   21031              :               if (!(
   21032              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21033              : ((32 == 64 || TARGET_AVX512VL
   21034              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21035              :    && ix86_pre_reload_split ()
   21036              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21037              :                     STRIP_UNARY (operands[4]))
   21038              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21039              :                        STRIP_UNARY (operands[4]))
   21040              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21041              :                        STRIP_UNARY (operands[3]))
   21042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21043              :                        STRIP_UNARY (operands[3])))) && 
   21044              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21045              : (TARGET_AVX)))
   21046              :                 return -1;
   21047              :               return 6794; /* *avx512vl_vpternlogv4df_2 */
   21048              : 
   21049              :             case 11:
   21050              :               if (!(
   21051              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21052              : ((16 == 64 || TARGET_AVX512VL
   21053              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21054              :    && ix86_pre_reload_split ()
   21055              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21056              :                     STRIP_UNARY (operands[4]))
   21057              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21058              :                        STRIP_UNARY (operands[4]))
   21059              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21060              :                        STRIP_UNARY (operands[3]))
   21061              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21062              :                        STRIP_UNARY (operands[3])))) && 
   21063              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21064              : (TARGET_SSE2)))
   21065              :                 return -1;
   21066              :               return 6821; /* *avx512vl_vpternlogv2df_2 */
   21067              : 
   21068              :             default:
   21069              :               return -1;
   21070              :             }
   21071              : 
   21072              :         case XOR:
   21073              :           switch (pattern542 (x2))
   21074              :             {
   21075              :             case 0:
   21076              :               if (!(
   21077              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21078              : ((64 == 64 || TARGET_AVX512VL
   21079              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21080              :    && ix86_pre_reload_split ()
   21081              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21082              :                     STRIP_UNARY (operands[4]))
   21083              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21084              :                        STRIP_UNARY (operands[4]))
   21085              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21086              :                        STRIP_UNARY (operands[3]))
   21087              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21088              :                        STRIP_UNARY (operands[3])))) && 
   21089              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21090              : (TARGET_AVX512F)))
   21091              :                 return -1;
   21092              :               return 6527; /* *avx512bw_vpternlogv32hf_2 */
   21093              : 
   21094              :             case 1:
   21095              :               if (!(
   21096              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21097              : ((32 == 64 || TARGET_AVX512VL
   21098              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21099              :    && ix86_pre_reload_split ()
   21100              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21101              :                     STRIP_UNARY (operands[4]))
   21102              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21103              :                        STRIP_UNARY (operands[4]))
   21104              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21105              :                        STRIP_UNARY (operands[3]))
   21106              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21107              :                        STRIP_UNARY (operands[3])))) && 
   21108              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21109              : (TARGET_AVX)))
   21110              :                 return -1;
   21111              :               return 6554; /* *avx512vl_vpternlogv16hf_2 */
   21112              : 
   21113              :             case 2:
   21114              :               if (!
   21115              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21116              : ((16 == 64 || TARGET_AVX512VL
   21117              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21118              :    && ix86_pre_reload_split ()
   21119              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21120              :                     STRIP_UNARY (operands[4]))
   21121              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21122              :                        STRIP_UNARY (operands[4]))
   21123              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21124              :                        STRIP_UNARY (operands[3]))
   21125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21126              :                        STRIP_UNARY (operands[3])))))
   21127              :                 return -1;
   21128              :               return 6581; /* *avx512fp16_vpternlogv8hf_2 */
   21129              : 
   21130              :             case 3:
   21131              :               if (!(
   21132              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21133              : ((64 == 64 || TARGET_AVX512VL
   21134              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21135              :    && ix86_pre_reload_split ()
   21136              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21137              :                     STRIP_UNARY (operands[4]))
   21138              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21139              :                        STRIP_UNARY (operands[4]))
   21140              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21141              :                        STRIP_UNARY (operands[3]))
   21142              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21143              :                        STRIP_UNARY (operands[3])))) && 
   21144              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21145              : (TARGET_AVX512F)))
   21146              :                 return -1;
   21147              :               return 6608; /* *avx512bw_vpternlogv32bf_2 */
   21148              : 
   21149              :             case 4:
   21150              :               if (!(
   21151              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21152              : ((32 == 64 || TARGET_AVX512VL
   21153              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21154              :    && ix86_pre_reload_split ()
   21155              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21156              :                     STRIP_UNARY (operands[4]))
   21157              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21158              :                        STRIP_UNARY (operands[4]))
   21159              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21160              :                        STRIP_UNARY (operands[3]))
   21161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21162              :                        STRIP_UNARY (operands[3])))) && 
   21163              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21164              : (TARGET_AVX)))
   21165              :                 return -1;
   21166              :               return 6635; /* *avx512vl_vpternlogv16bf_2 */
   21167              : 
   21168              :             case 5:
   21169              :               if (!
   21170              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21171              : ((16 == 64 || TARGET_AVX512VL
   21172              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21173              :    && ix86_pre_reload_split ()
   21174              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21175              :                     STRIP_UNARY (operands[4]))
   21176              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21177              :                        STRIP_UNARY (operands[4]))
   21178              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21179              :                        STRIP_UNARY (operands[3]))
   21180              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21181              :                        STRIP_UNARY (operands[3])))))
   21182              :                 return -1;
   21183              :               return 6662; /* *avx512vl_vpternlogv8bf_2 */
   21184              : 
   21185              :             case 6:
   21186              :               if (!(
   21187              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21188              : ((64 == 64 || TARGET_AVX512VL
   21189              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21190              :    && ix86_pre_reload_split ()
   21191              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21192              :                     STRIP_UNARY (operands[4]))
   21193              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21194              :                        STRIP_UNARY (operands[4]))
   21195              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21196              :                        STRIP_UNARY (operands[3]))
   21197              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21198              :                        STRIP_UNARY (operands[3])))) && 
   21199              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21200              : (TARGET_AVX512F)))
   21201              :                 return -1;
   21202              :               return 6689; /* *avx512f_vpternlogv16sf_2 */
   21203              : 
   21204              :             case 7:
   21205              :               if (!(
   21206              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21207              : ((32 == 64 || TARGET_AVX512VL
   21208              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21209              :    && ix86_pre_reload_split ()
   21210              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21211              :                     STRIP_UNARY (operands[4]))
   21212              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21213              :                        STRIP_UNARY (operands[4]))
   21214              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21215              :                        STRIP_UNARY (operands[3]))
   21216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21217              :                        STRIP_UNARY (operands[3])))) && 
   21218              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21219              : (TARGET_AVX)))
   21220              :                 return -1;
   21221              :               return 6716; /* *avx512vl_vpternlogv8sf_2 */
   21222              : 
   21223              :             case 8:
   21224              :               if (!
   21225              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21226              : ((16 == 64 || TARGET_AVX512VL
   21227              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21228              :    && ix86_pre_reload_split ()
   21229              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21230              :                     STRIP_UNARY (operands[4]))
   21231              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21232              :                        STRIP_UNARY (operands[4]))
   21233              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21234              :                        STRIP_UNARY (operands[3]))
   21235              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21236              :                        STRIP_UNARY (operands[3])))))
   21237              :                 return -1;
   21238              :               return 6743; /* *avx512vl_vpternlogv4sf_2 */
   21239              : 
   21240              :             case 9:
   21241              :               if (!(
   21242              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21243              : ((64 == 64 || TARGET_AVX512VL
   21244              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21245              :    && ix86_pre_reload_split ()
   21246              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21247              :                     STRIP_UNARY (operands[4]))
   21248              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21249              :                        STRIP_UNARY (operands[4]))
   21250              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21251              :                        STRIP_UNARY (operands[3]))
   21252              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21253              :                        STRIP_UNARY (operands[3])))) && 
   21254              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21255              : (TARGET_AVX512F)))
   21256              :                 return -1;
   21257              :               return 6770; /* *avx512f_vpternlogv8df_2 */
   21258              : 
   21259              :             case 10:
   21260              :               if (!(
   21261              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21262              : ((32 == 64 || TARGET_AVX512VL
   21263              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21264              :    && ix86_pre_reload_split ()
   21265              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21266              :                     STRIP_UNARY (operands[4]))
   21267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21268              :                        STRIP_UNARY (operands[4]))
   21269              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21270              :                        STRIP_UNARY (operands[3]))
   21271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21272              :                        STRIP_UNARY (operands[3])))) && 
   21273              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21274              : (TARGET_AVX)))
   21275              :                 return -1;
   21276              :               return 6797; /* *avx512vl_vpternlogv4df_2 */
   21277              : 
   21278              :             case 11:
   21279              :               if (!(
   21280              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21281              : ((16 == 64 || TARGET_AVX512VL
   21282              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21283              :    && ix86_pre_reload_split ()
   21284              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21285              :                     STRIP_UNARY (operands[4]))
   21286              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21287              :                        STRIP_UNARY (operands[4]))
   21288              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21289              :                        STRIP_UNARY (operands[3]))
   21290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21291              :                        STRIP_UNARY (operands[3])))) && 
   21292              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21293              : (TARGET_SSE2)))
   21294              :                 return -1;
   21295              :               return 6824; /* *avx512vl_vpternlogv2df_2 */
   21296              : 
   21297              :             default:
   21298              :               return -1;
   21299              :             }
   21300              : 
   21301              :         default:
   21302              :           return -1;
   21303              :         }
   21304              : 
   21305              :     case XOR:
   21306              :       return recog_316 (x1, insn, pnum_clobbers);
   21307              : 
   21308              :     default:
   21309              :       return -1;
   21310              :     }
   21311              : }
   21312              : 
   21313              :  int
   21314              : recog_380 (rtx x1 ATTRIBUTE_UNUSED,
   21315              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21316              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21317              : {
   21318              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21319              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21320              :   rtx x10, x11, x12;
   21321              :   int res ATTRIBUTE_UNUSED;
   21322              :   if (pattern344 (x1) != 0)
   21323              :     return -1;
   21324              :   x2 = XVECEXP (x1, 0, 0);
   21325              :   x3 = XEXP (x2, 1);
   21326              :   x4 = XEXP (x3, 0);
   21327              :   x5 = XEXP (x4, 0);
   21328              :   switch (GET_CODE (x5))
   21329              :     {
   21330              :     case REG:
   21331              :     case SUBREG:
   21332              :     case MEM:
   21333              :       operands[1] = x5;
   21334              :       x6 = XEXP (x4, 1);
   21335              :       operands[2] = x6;
   21336              :       switch (GET_CODE (operands[2]))
   21337              :         {
   21338              :         case CONST_INT:
   21339              :         case CONST_WIDE_INT:
   21340              :         case CONST_POLY_INT:
   21341              :         case CONST_FIXED:
   21342              :         case CONST_DOUBLE:
   21343              :         case CONST_VECTOR:
   21344              :         case CONST:
   21345              :         case REG:
   21346              :         case SUBREG:
   21347              :         case MEM:
   21348              :         case LABEL_REF:
   21349              :         case SYMBOL_REF:
   21350              :         case HIGH:
   21351              :           switch (pattern1048 (x3))
   21352              :             {
   21353              :             case 0:
   21354              :               if (!
   21355              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21356              : (TARGET_APX_NDD && true
   21357              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21358              :                 return -1;
   21359              :               return 397; /* *subqi_1_zexthi */
   21360              : 
   21361              :             case 1:
   21362              :               if (!
   21363              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21364              : (TARGET_APX_NDD && true
   21365              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21366              :                 return -1;
   21367              :               return 399; /* *subqi_1_zextsi */
   21368              : 
   21369              :             case 2:
   21370              :               if (!
   21371              : #line 8191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21372              : (TARGET_APX_NDD && true
   21373              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21374              :                 return -1;
   21375              :               return 403; /* *subhi_1_zextsi */
   21376              : 
   21377              :             case 3:
   21378              :               if (!
   21379              : #line 8177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21380              : (TARGET_APX_NDD && true
   21381              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21382              :                 return -1;
   21383              :               return 401; /* *subqi_1_zextdi */
   21384              : 
   21385              :             case 4:
   21386              :               if (!
   21387              : #line 8191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21388              : (TARGET_APX_NDD && true
   21389              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21390              :                 return -1;
   21391              :               return 405; /* *subhi_1_zextdi */
   21392              : 
   21393              :             case 5:
   21394              :               if (!
   21395              : #line 8206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21396              : (TARGET_64BIT
   21397              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   21398              :                 return -1;
   21399              :               return 406; /* *subsi_1_zext */
   21400              : 
   21401              :             default:
   21402              :               return -1;
   21403              :             }
   21404              : 
   21405              :         case LTU:
   21406              :         case UNLT:
   21407              :           switch (pattern1432 (x3))
   21408              :             {
   21409              :             case 0:
   21410              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21411              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   21412              :                   || !
   21413              : #line 9737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21414              : (TARGET_APX_NDD))
   21415              :                 return -1;
   21416              :               return 533; /* *subqi3_carry_zexthi_0 */
   21417              : 
   21418              :             case 1:
   21419              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21420              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   21421              :                   || !
   21422              : #line 9737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21423              : (TARGET_APX_NDD))
   21424              :                 return -1;
   21425              :               return 534; /* *subqi3_carry_zextsi_0 */
   21426              : 
   21427              :             case 2:
   21428              :               if (!nonimmediate_operand (operands[1], E_HImode)
   21429              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
   21430              :                   || !
   21431              : #line 9752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21432              : (TARGET_APX_NDD))
   21433              :                 return -1;
   21434              :               return 536; /* *subhi3_carry_zextsi_0 */
   21435              : 
   21436              :             case 3:
   21437              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21438              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   21439              :                   || !
   21440              : #line 9737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21441              : (TARGET_APX_NDD))
   21442              :                 return -1;
   21443              :               return 535; /* *subqi3_carry_zextdi_0 */
   21444              : 
   21445              :             case 4:
   21446              :               if (!nonimmediate_operand (operands[1], E_HImode)
   21447              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
   21448              :                   || !
   21449              : #line 9752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21450              : (TARGET_APX_NDD))
   21451              :                 return -1;
   21452              :               return 537; /* *subhi3_carry_zextdi_0 */
   21453              : 
   21454              :             case 5:
   21455              :               if (!nonimmediate_operand (operands[1], E_SImode)
   21456              :                   || !ix86_carry_flag_operator (operands[2], E_SImode)
   21457              :                   || !
   21458              : #line 9767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21459              : (TARGET_64BIT))
   21460              :                 return -1;
   21461              :               return 538; /* *subsi3_carry_zext_0 */
   21462              : 
   21463              :             default:
   21464              :               return -1;
   21465              :             }
   21466              : 
   21467              :         case GE:
   21468              :         case GEU:
   21469              :           switch (pattern1432 (x3))
   21470              :             {
   21471              :             case 0:
   21472              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21473              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   21474              :                   || !
   21475              : #line 9785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21476              : (TARGET_APX_NDD))
   21477              :                 return -1;
   21478              :               return 539; /* *subqi3_carry_zexthi_0r */
   21479              : 
   21480              :             case 1:
   21481              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21482              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   21483              :                   || !
   21484              : #line 9785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21485              : (TARGET_APX_NDD))
   21486              :                 return -1;
   21487              :               return 540; /* *subqi3_carry_zextsi_0r */
   21488              : 
   21489              :             case 2:
   21490              :               if (!nonimmediate_operand (operands[1], E_HImode)
   21491              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
   21492              :                   || !
   21493              : #line 9800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21494              : (TARGET_APX_NDD))
   21495              :                 return -1;
   21496              :               return 542; /* *subhi3_carry_zextsi_0r */
   21497              : 
   21498              :             case 3:
   21499              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21500              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   21501              :                   || !
   21502              : #line 9785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21503              : (TARGET_APX_NDD))
   21504              :                 return -1;
   21505              :               return 541; /* *subqi3_carry_zextdi_0r */
   21506              : 
   21507              :             case 4:
   21508              :               if (!nonimmediate_operand (operands[1], E_HImode)
   21509              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
   21510              :                   || !
   21511              : #line 9800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21512              : (TARGET_APX_NDD))
   21513              :                 return -1;
   21514              :               return 543; /* *subhi3_carry_zextdi_0r */
   21515              : 
   21516              :             case 5:
   21517              :               if (!nonimmediate_operand (operands[1], E_SImode)
   21518              :                   || !ix86_carry_flag_unset_operator (operands[2], E_SImode)
   21519              :                   || !
   21520              : #line 9815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21521              : (TARGET_64BIT))
   21522              :                 return -1;
   21523              :               return 544; /* *subsi3_carry_zext_0r */
   21524              : 
   21525              :             default:
   21526              :               return -1;
   21527              :             }
   21528              : 
   21529              :         default:
   21530              :           return -1;
   21531              :         }
   21532              : 
   21533              :     case MINUS:
   21534              :       x7 = XEXP (x5, 1);
   21535              :       switch (GET_CODE (x7))
   21536              :         {
   21537              :         case LTU:
   21538              :         case UNLT:
   21539              :           operands[3] = x7;
   21540              :           x8 = XEXP (x7, 0);
   21541              :           if (GET_CODE (x8) != REG
   21542              :               || REGNO (x8) != 17)
   21543              :             return -1;
   21544              :           x9 = XEXP (x7, 1);
   21545              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   21546              :             return -1;
   21547              :           x10 = XEXP (x5, 0);
   21548              :           operands[1] = x10;
   21549              :           x6 = XEXP (x4, 1);
   21550              :           operands[2] = x6;
   21551              :           switch (pattern1163 (x3))
   21552              :             {
   21553              :             case 0:
   21554              :               if (pattern1773 (x5, 
   21555              : E_QImode) != 0
   21556              :                   || !
   21557              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21558              : (TARGET_APX_NDD
   21559              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21560              :                 return -1;
   21561              :               return 527; /* *subqi3_carry_zexthi */
   21562              : 
   21563              :             case 1:
   21564              :               if (pattern1773 (x5, 
   21565              : E_QImode) != 0
   21566              :                   || !
   21567              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21568              : (TARGET_APX_NDD
   21569              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21570              :                 return -1;
   21571              :               return 528; /* *subqi3_carry_zextsi */
   21572              : 
   21573              :             case 2:
   21574              :               if (pattern1773 (x5, 
   21575              : E_HImode) != 0
   21576              :                   || !
   21577              : #line 9697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21578              : (TARGET_APX_NDD
   21579              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21580              :                 return -1;
   21581              :               return 530; /* *subhi3_carry_zextsi */
   21582              : 
   21583              :             case 3:
   21584              :               if (pattern1773 (x5, 
   21585              : E_QImode) != 0
   21586              :                   || !
   21587              : #line 9677 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21588              : (TARGET_APX_NDD
   21589              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21590              :                 return -1;
   21591              :               return 529; /* *subqi3_carry_zextdi */
   21592              : 
   21593              :             case 4:
   21594              :               if (pattern1773 (x5, 
   21595              : E_HImode) != 0
   21596              :                   || !
   21597              : #line 9697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21598              : (TARGET_APX_NDD
   21599              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21600              :                 return -1;
   21601              :               return 531; /* *subhi3_carry_zextdi */
   21602              : 
   21603              :             case 5:
   21604              :               if (pattern1773 (x5, 
   21605              : E_SImode) != 0
   21606              :                   || !
   21607              : #line 9717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21608              : (TARGET_64BIT
   21609              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   21610              :                 return -1;
   21611              :               return 532; /* *subsi3_carry_zext */
   21612              : 
   21613              :             default:
   21614              :               return -1;
   21615              :             }
   21616              : 
   21617              :         default:
   21618              :           return -1;
   21619              :         }
   21620              : 
   21621              :     case CONST_INT:
   21622              :       if (!register_operand (operands[0], E_DImode)
   21623              :           || GET_MODE (x3) != E_DImode
   21624              :           || GET_MODE (x4) != E_SImode)
   21625              :         return -1;
   21626              :       x6 = XEXP (x4, 1);
   21627              :       if (GET_MODE (x6) != E_SImode)
   21628              :         return -1;
   21629              :       switch (XWINT (x5, 0))
   21630              :         {
   21631              :         case 63L:
   21632              :           if (GET_CODE (x6) != SUBREG
   21633              :               || maybe_ne (SUBREG_BYTE (x6), 0))
   21634              :             return -1;
   21635              :           x11 = XEXP (x6, 0);
   21636              :           if (GET_CODE (x11) != CLZ
   21637              :               || GET_MODE (x11) != E_DImode)
   21638              :             return -1;
   21639              :           x12 = XEXP (x11, 0);
   21640              :           operands[1] = x12;
   21641              :           if (!nonimmediate_operand (operands[1], E_DImode)
   21642              :               || !
   21643              : #line 21621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21644              : (!TARGET_LZCNT && TARGET_64BIT))
   21645              :             return -1;
   21646              :           return 1558; /* bsr_rex64_1_zext */
   21647              : 
   21648              :         case 31L:
   21649              :           if (GET_CODE (x6) != CLZ)
   21650              :             return -1;
   21651              :           x11 = XEXP (x6, 0);
   21652              :           operands[1] = x11;
   21653              :           if (!nonimmediate_operand (operands[1], E_SImode)
   21654              :               || !
   21655              : #line 21661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21656              : (!TARGET_LZCNT && TARGET_64BIT))
   21657              :             return -1;
   21658              :           return 1561; /* bsr_zext_1 */
   21659              : 
   21660              :         default:
   21661              :           return -1;
   21662              :         }
   21663              : 
   21664              :     default:
   21665              :       return -1;
   21666              :     }
   21667              : }
   21668              : 
   21669              :  int
   21670              : recog_389 (rtx x1 ATTRIBUTE_UNUSED,
   21671              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21672              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21673              : {
   21674              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21675              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21676              :   rtx x10, x11;
   21677              :   int res ATTRIBUTE_UNUSED;
   21678              :   x2 = XVECEXP (x1, 0, 0);
   21679              :   x3 = XEXP (x2, 1);
   21680              :   x4 = XEXP (x3, 1);
   21681              :   if (!rtx_equal_p (x4, operands[1]))
   21682              :     return -1;
   21683              :   x5 = XEXP (x2, 0);
   21684              :   if (GET_MODE (x5) != E_CCCmode
   21685              :       || GET_MODE (x3) != E_CCCmode)
   21686              :     return -1;
   21687              :   x6 = XVECEXP (x1, 0, 1);
   21688              :   switch (GET_CODE (x6))
   21689              :     {
   21690              :     case CLOBBER:
   21691              :       x7 = XEXP (x6, 0);
   21692              :       operands[0] = x7;
   21693              :       x8 = XEXP (x3, 0);
   21694              :       switch (pattern1329 (x8))
   21695              :         {
   21696              :         case 0:
   21697              :           if (!
   21698              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21699              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21700              :             return -1;
   21701              :           return 562; /* *addqi3_cconly_overflow_1 */
   21702              : 
   21703              :         case 1:
   21704              :           if (!
   21705              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21706              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21707              :             return -1;
   21708              :           return 563; /* *addhi3_cconly_overflow_1 */
   21709              : 
   21710              :         case 2:
   21711              :           if (!
   21712              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21713              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21714              :             return -1;
   21715              :           return 564; /* *addsi3_cconly_overflow_1 */
   21716              : 
   21717              :         case 3:
   21718              :           if (!(
   21719              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21720              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21721              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21722              : (TARGET_64BIT)))
   21723              :             return -1;
   21724              :           return 565; /* *adddi3_cconly_overflow_1 */
   21725              : 
   21726              :         default:
   21727              :           return -1;
   21728              :         }
   21729              : 
   21730              :     case SET:
   21731              :       x7 = XEXP (x6, 0);
   21732              :       operands[0] = x7;
   21733              :       x9 = XEXP (x6, 1);
   21734              :       switch (GET_CODE (x9))
   21735              :         {
   21736              :         case PLUS:
   21737              :           x10 = XEXP (x9, 0);
   21738              :           if (!rtx_equal_p (x10, operands[1]))
   21739              :             return -1;
   21740              :           x11 = XEXP (x9, 1);
   21741              :           if (!rtx_equal_p (x11, operands[2]))
   21742              :             return -1;
   21743              :           x8 = XEXP (x3, 0);
   21744              :           switch (GET_MODE (x8))
   21745              :             {
   21746              :             case E_QImode:
   21747              :               if (pattern1438 (x9, 
   21748              : E_QImode) != 0
   21749              :                   || !
   21750              : #line 10292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21751              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)))
   21752              :                 return -1;
   21753              :               return 566; /* addqi3_cc_overflow_1 */
   21754              : 
   21755              :             case E_HImode:
   21756              :               if (pattern1438 (x9, 
   21757              : E_HImode) != 0
   21758              :                   || !
   21759              : #line 10292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21760              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)))
   21761              :                 return -1;
   21762              :               return 567; /* addhi3_cc_overflow_1 */
   21763              : 
   21764              :             case E_SImode:
   21765              :               if (pattern1439 (x9, 
   21766              : E_SImode) != 0
   21767              :                   || !
   21768              : #line 10292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21769              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21770              :                 return -1;
   21771              :               return 568; /* addsi3_cc_overflow_1 */
   21772              : 
   21773              :             case E_DImode:
   21774              :               if (pattern1439 (x9, 
   21775              : E_DImode) != 0
   21776              :                   || !(
   21777              : #line 10292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21778              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   21779              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21780              : (TARGET_64BIT)))
   21781              :                 return -1;
   21782              :               return 569; /* adddi3_cc_overflow_1 */
   21783              : 
   21784              :             case E_TImode:
   21785              :               if (pattern1682 (x9, 
   21786              : E_TImode) != 0
   21787              :                   || !(
   21788              : #line 10424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21789              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
   21790              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21791              : (TARGET_64BIT)))
   21792              :                 return -1;
   21793              :               return 581; /* *addti3_doubleword_cc_overflow_1 */
   21794              : 
   21795              :             default:
   21796              :               return -1;
   21797              :             }
   21798              : 
   21799              :         case ZERO_EXTEND:
   21800              :           if (pattern1436 (x1, 
   21801              : PLUS) != 0
   21802              :               || !
   21803              : #line 10350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21804              : (TARGET_64BIT
   21805              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21806              :             return -1;
   21807              :           return 570; /* *addsi3_zext_cc_overflow_1 */
   21808              : 
   21809              :         default:
   21810              :           return -1;
   21811              :         }
   21812              : 
   21813              :     default:
   21814              :       return -1;
   21815              :     }
   21816              : }
   21817              : 
   21818              :  int
   21819              : recog_393 (rtx x1 ATTRIBUTE_UNUSED,
   21820              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21821              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21822              : {
   21823              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21824              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21825              :   rtx x10, x11;
   21826              :   int res ATTRIBUTE_UNUSED;
   21827              :   if (pattern586 (x1, 
   21828              : PLUS, 
   21829              : E_CCZmode) != 0)
   21830              :     return -1;
   21831              :   x2 = XVECEXP (x1, 0, 0);
   21832              :   x3 = XEXP (x2, 1);
   21833              :   if (GET_MODE (x3) != E_CCZmode)
   21834              :     return -1;
   21835              :   x4 = XEXP (x3, 0);
   21836              :   x5 = XVECEXP (x4, 0, 0);
   21837              :   operands[0] = x5;
   21838              :   x6 = XVECEXP (x4, 0, 1);
   21839              :   operands[3] = x6;
   21840              :   if (!const_int_operand (operands[3], E_SImode))
   21841              :     return -1;
   21842              :   x7 = XVECEXP (x1, 0, 1);
   21843              :   x8 = XEXP (x7, 1);
   21844              :   x9 = XEXP (x8, 1);
   21845              :   operands[1] = x9;
   21846              :   x10 = XEXP (x8, 0);
   21847              :   if (!rtx_equal_p (x10, operands[0]))
   21848              :     return -1;
   21849              :   x11 = XEXP (x7, 0);
   21850              :   if (!rtx_equal_p (x11, operands[0]))
   21851              :     return -1;
   21852              :   switch (GET_MODE (x4))
   21853              :     {
   21854              :     case E_QImode:
   21855              :       if (pattern1776 (x8, 
   21856              : E_QImode) != 0
   21857              :           || !
   21858              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   21859              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   21860              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   21861              :         return -1;
   21862              :       return 11084; /* *atomic_fetch_add_cmpqi */
   21863              : 
   21864              :     case E_HImode:
   21865              :       if (pattern1776 (x8, 
   21866              : E_HImode) != 0
   21867              :           || !
   21868              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   21869              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   21870              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   21871              :         return -1;
   21872              :       return 11085; /* *atomic_fetch_add_cmphi */
   21873              : 
   21874              :     case E_SImode:
   21875              :       if (pattern1776 (x8, 
   21876              : E_SImode) != 0
   21877              :           || !
   21878              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   21879              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   21880              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   21881              :         return -1;
   21882              :       return 11086; /* *atomic_fetch_add_cmpsi */
   21883              : 
   21884              :     case E_DImode:
   21885              :       if (pattern1776 (x8, 
   21886              : E_DImode) != 0
   21887              :           || !(
   21888              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   21889              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   21890              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])) && 
   21891              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21892              : (TARGET_64BIT)))
   21893              :         return -1;
   21894              :       return 11087; /* *atomic_fetch_add_cmpdi */
   21895              : 
   21896              :     default:
   21897              :       return -1;
   21898              :     }
   21899              : }
   21900              : 
   21901              :  int
   21902              : recog_396 (rtx x1 ATTRIBUTE_UNUSED,
   21903              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21904              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21905              : {
   21906              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21907              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21908              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   21909              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   21910              :   int res ATTRIBUTE_UNUSED;
   21911              :   x2 = XVECEXP (x1, 0, 0);
   21912              :   x3 = XEXP (x2, 1);
   21913              :   x4 = XEXP (x3, 1);
   21914              :   if (GET_CODE (x4) != PLUS)
   21915              :     return -1;
   21916              :   x5 = XEXP (x4, 0);
   21917              :   switch (GET_CODE (x5))
   21918              :     {
   21919              :     case LTU:
   21920              :     case UNLT:
   21921              :       x6 = XEXP (x5, 1);
   21922              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   21923              :           || pattern827 (x2, 
   21924              : E_CCCmode) != 0)
   21925              :         return -1;
   21926              :       x7 = XEXP (x3, 0);
   21927              :       x8 = XEXP (x7, 0);
   21928              :       switch (GET_CODE (x8))
   21929              :         {
   21930              :         case PLUS:
   21931              :           x9 = XEXP (x8, 0);
   21932              :           if (GET_CODE (x9) != PLUS)
   21933              :             return -1;
   21934              :           x10 = XEXP (x9, 0);
   21935              :           switch (GET_CODE (x10))
   21936              :             {
   21937              :             case LTU:
   21938              :             case UNLT:
   21939              :               operands[5] = x10;
   21940              :               x11 = XEXP (x10, 1);
   21941              :               if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   21942              :                 return -1;
   21943              :               x12 = XVECEXP (x1, 0, 1);
   21944              :               if (GET_CODE (x12) != SET)
   21945              :                 return -1;
   21946              :               x13 = XEXP (x12, 1);
   21947              :               if (GET_CODE (x13) != PLUS)
   21948              :                 return -1;
   21949              :               x14 = XEXP (x13, 0);
   21950              :               if (GET_CODE (x14) != PLUS)
   21951              :                 return -1;
   21952              :               x15 = XEXP (x14, 0);
   21953              :               switch (GET_CODE (x15))
   21954              :                 {
   21955              :                 case LTU:
   21956              :                 case UNLT:
   21957              :                   if (!rtx_equal_p (x15, operands[5]))
   21958              :                     return -1;
   21959              :                   x16 = XEXP (x10, 0);
   21960              :                   operands[3] = x16;
   21961              :                   if (!flags_reg_operand (operands[3], E_VOIDmode))
   21962              :                     return -1;
   21963              :                   x17 = XEXP (x9, 1);
   21964              :                   operands[1] = x17;
   21965              :                   x18 = XEXP (x8, 1);
   21966              :                   operands[2] = x18;
   21967              :                   operands[4] = x5;
   21968              :                   x19 = XEXP (x12, 0);
   21969              :                   operands[0] = x19;
   21970              :                   x20 = XEXP (x5, 0);
   21971              :                   if (!rtx_equal_p (x20, operands[3]))
   21972              :                     return -1;
   21973              :                   x21 = XEXP (x14, 1);
   21974              :                   if (!rtx_equal_p (x21, operands[1]))
   21975              :                     return -1;
   21976              :                   x22 = XEXP (x13, 1);
   21977              :                   if (!rtx_equal_p (x22, operands[2]))
   21978              :                     return -1;
   21979              :                   switch (GET_CODE (operands[2]))
   21980              :                     {
   21981              :                     case REG:
   21982              :                     case SUBREG:
   21983              :                     case MEM:
   21984              :                       x23 = XEXP (x4, 1);
   21985              :                       if (GET_CODE (x23) != ZERO_EXTEND)
   21986              :                         return -1;
   21987              :                       x24 = XEXP (x23, 0);
   21988              :                       if (!rtx_equal_p (x24, operands[2]))
   21989              :                         return -1;
   21990              :                       switch (GET_MODE (x7))
   21991              :                         {
   21992              :                         case E_DImode:
   21993              :                           if (pattern1888 (x1, 
   21994              : E_SImode, 
   21995              : E_DImode) != 0
   21996              :                               || !
   21997              : #line 9172 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21998              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21999              :                             return -1;
   22000              :                           return 499; /* addcarrysi */
   22001              : 
   22002              :                         case E_TImode:
   22003              :                           if (pattern1888 (x1, 
   22004              : E_DImode, 
   22005              : E_TImode) != 0
   22006              :                               || !(
   22007              : #line 9172 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22008              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   22009              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22010              : (TARGET_64BIT)))
   22011              :                             return -1;
   22012              :                           return 500; /* addcarrydi */
   22013              : 
   22014              :                         default:
   22015              :                           return -1;
   22016              :                         }
   22017              : 
   22018              :                     case CONST_INT:
   22019              :                     case CONST:
   22020              :                     case LABEL_REF:
   22021              :                     case SYMBOL_REF:
   22022              :                       x23 = XEXP (x4, 1);
   22023              :                       operands[6] = x23;
   22024              :                       switch (GET_MODE (x7))
   22025              :                         {
   22026              :                         case E_DImode:
   22027              :                           if (pattern1885 (x1, 
   22028              : E_SImode, 
   22029              : E_DImode) != 0
   22030              :                               || !
   22031              : #line 9470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22032              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)
   22033              :    && CONST_INT_P (operands[2])
   22034              :    /* Check that operands[6] is operands[2] zero extended from
   22035              :       SImode to DImode.  */
   22036              :    && ((SImode == SImode || INTVAL (operands[2]) >= 0)
   22037              :        ? (CONST_INT_P (operands[6])
   22038              :           && UINTVAL (operands[6]) == (UINTVAL (operands[2])
   22039              :                                        & GET_MODE_MASK (SImode)))
   22040              :        : (CONST_WIDE_INT_P (operands[6])
   22041              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   22042              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   22043              :               == UINTVAL (operands[2]))
   22044              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))))
   22045              :                             return -1;
   22046              :                           return 501; /* *addcarrysi_1 */
   22047              : 
   22048              :                         case E_TImode:
   22049              :                           if (pattern1885 (x1, 
   22050              : E_DImode, 
   22051              : E_TImode) != 0
   22052              :                               || !(
   22053              : #line 9470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22054              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   22055              :    && CONST_INT_P (operands[2])
   22056              :    /* Check that operands[6] is operands[2] zero extended from
   22057              :       DImode to TImode.  */
   22058              :    && ((DImode == SImode || INTVAL (operands[2]) >= 0)
   22059              :        ? (CONST_INT_P (operands[6])
   22060              :           && UINTVAL (operands[6]) == (UINTVAL (operands[2])
   22061              :                                        & GET_MODE_MASK (DImode)))
   22062              :        : (CONST_WIDE_INT_P (operands[6])
   22063              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   22064              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   22065              :               == UINTVAL (operands[2]))
   22066              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))) && 
   22067              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22068              : (TARGET_64BIT)))
   22069              :                             return -1;
   22070              :                           return 502; /* *addcarrydi_1 */
   22071              : 
   22072              :                         default:
   22073              :                           return -1;
   22074              :                         }
   22075              : 
   22076              :                     default:
   22077              :                       return -1;
   22078              :                     }
   22079              : 
   22080              :                 default:
   22081              :                   return -1;
   22082              :                 }
   22083              : 
   22084              :             default:
   22085              :               return -1;
   22086              :             }
   22087              : 
   22088              :         case REG:
   22089              :         case SUBREG:
   22090              :         case MEM:
   22091              :           operands[1] = x8;
   22092              :           if (GET_CODE (x5) == LTU)
   22093              :             {
   22094              :               res = recog_391 (x1, insn, pnum_clobbers);
   22095              :               if (res >= 0)
   22096              :                 return res;
   22097              :             }
   22098              :           x12 = XVECEXP (x1, 0, 1);
   22099              :           if (GET_CODE (x12) != SET)
   22100              :             return -1;
   22101              :           operands[4] = x5;
   22102              :           x20 = XEXP (x5, 0);
   22103              :           operands[3] = x20;
   22104              :           if (!flags_reg_operand (operands[3], E_VOIDmode))
   22105              :             return -1;
   22106              :           x19 = XEXP (x12, 0);
   22107              :           operands[0] = x19;
   22108              :           x23 = XEXP (x4, 1);
   22109              :           switch (GET_CODE (x23))
   22110              :             {
   22111              :             case ZERO_EXTEND:
   22112              :               x13 = XEXP (x12, 1);
   22113              :               if (pattern1699 (x13, 
   22114              : MINUS) != 0)
   22115              :                 return -1;
   22116              :               x24 = XEXP (x23, 0);
   22117              :               operands[2] = x24;
   22118              :               x14 = XEXP (x13, 0);
   22119              :               x15 = XEXP (x14, 0);
   22120              :               if (!rtx_equal_p (x15, operands[1]))
   22121              :                 return -1;
   22122              :               x21 = XEXP (x14, 1);
   22123              :               x25 = XEXP (x21, 0);
   22124              :               if (!rtx_equal_p (x25, operands[3]))
   22125              :                 return -1;
   22126              :               x22 = XEXP (x13, 1);
   22127              :               if (!rtx_equal_p (x22, operands[2]))
   22128              :                 return -1;
   22129              :               switch (GET_MODE (x7))
   22130              :                 {
   22131              :                 case E_DImode:
   22132              :                   if (pattern1871 (x1, 
   22133              : E_SImode, 
   22134              : E_DImode) != 0
   22135              :                       || !
   22136              : #line 9887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22137              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22138              :                     return -1;
   22139              :                   return 551; /* subborrowsi */
   22140              : 
   22141              :                 case E_TImode:
   22142              :                   if (pattern1871 (x1, 
   22143              : E_DImode, 
   22144              : E_TImode) != 0
   22145              :                       || !(
   22146              : #line 9887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22147              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   22148              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22149              : (TARGET_64BIT)))
   22150              :                     return -1;
   22151              :                   return 552; /* subborrowdi */
   22152              : 
   22153              :                 default:
   22154              :                   return -1;
   22155              :                 }
   22156              : 
   22157              :             case CONST_INT:
   22158              :             case CONST_WIDE_INT:
   22159              :               operands[6] = x23;
   22160              :               x13 = XEXP (x12, 1);
   22161              :               if (pattern1699 (x13, 
   22162              : PLUS) != 0)
   22163              :                 return -1;
   22164              :               x22 = XEXP (x13, 1);
   22165              :               operands[2] = x22;
   22166              :               x14 = XEXP (x13, 0);
   22167              :               x15 = XEXP (x14, 0);
   22168              :               if (!rtx_equal_p (x15, operands[1]))
   22169              :                 return -1;
   22170              :               x21 = XEXP (x14, 1);
   22171              :               x25 = XEXP (x21, 0);
   22172              :               if (!rtx_equal_p (x25, operands[3]))
   22173              :                 return -1;
   22174              :               switch (GET_MODE (x7))
   22175              :                 {
   22176              :                 case E_DImode:
   22177              :                   if (pattern1872 (x1, 
   22178              : E_SImode, 
   22179              : E_DImode) != 0
   22180              :                       || !
   22181              : #line 10118 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22182              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   22183              :    && CONST_INT_P (operands[2])
   22184              :    /* Check that operands[6] is -operands[2] zero extended from
   22185              :       SImode to DImode.  */
   22186              :    && ((SImode == SImode || -INTVAL (operands[2]) >= 0)
   22187              :        ? (CONST_INT_P (operands[6])
   22188              :           && (UINTVAL (operands[6])
   22189              :               == ((unsigned HOST_WIDE_INT) -INTVAL (operands[2])
   22190              :                   & GET_MODE_MASK (SImode))))
   22191              :        : (CONST_WIDE_INT_P (operands[6])
   22192              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   22193              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   22194              :               == (unsigned HOST_WIDE_INT) -INTVAL (operands[2]))
   22195              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))))
   22196              :                     return -1;
   22197              :                   return 553; /* *subborrowsi_1 */
   22198              : 
   22199              :                 case E_TImode:
   22200              :                   if (pattern1872 (x1, 
   22201              : E_DImode, 
   22202              : E_TImode) != 0
   22203              :                       || !(
   22204              : #line 10118 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22205              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   22206              :    && CONST_INT_P (operands[2])
   22207              :    /* Check that operands[6] is -operands[2] zero extended from
   22208              :       DImode to TImode.  */
   22209              :    && ((DImode == SImode || -INTVAL (operands[2]) >= 0)
   22210              :        ? (CONST_INT_P (operands[6])
   22211              :           && (UINTVAL (operands[6])
   22212              :               == ((unsigned HOST_WIDE_INT) -INTVAL (operands[2])
   22213              :                   & GET_MODE_MASK (DImode))))
   22214              :        : (CONST_WIDE_INT_P (operands[6])
   22215              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   22216              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   22217              :               == (unsigned HOST_WIDE_INT) -INTVAL (operands[2]))
   22218              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))) && 
   22219              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22220              : (TARGET_64BIT)))
   22221              :                     return -1;
   22222              :                   return 554; /* *subborrowdi_1 */
   22223              : 
   22224              :                 default:
   22225              :                   return -1;
   22226              :                 }
   22227              : 
   22228              :             default:
   22229              :               return -1;
   22230              :             }
   22231              : 
   22232              :         default:
   22233              :           return -1;
   22234              :         }
   22235              : 
   22236              :     default:
   22237              :       return -1;
   22238              :     }
   22239              : }
   22240              : 
   22241              :  int
   22242              : recog_401 (rtx x1 ATTRIBUTE_UNUSED,
   22243              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22244              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22245              : {
   22246              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22247              :   rtx x2, x3, x4, x5, x6;
   22248              :   int res ATTRIBUTE_UNUSED;
   22249              :   x2 = XVECEXP (x1, 0, 0);
   22250              :   x3 = XEXP (x2, 0);
   22251              :   switch (GET_CODE (x3))
   22252              :     {
   22253              :     case REG:
   22254              :     case SUBREG:
   22255              :     case MEM:
   22256              :       operands[0] = x3;
   22257              :       x4 = XVECEXP (x1, 0, 1);
   22258              :       switch (GET_CODE (x4))
   22259              :         {
   22260              :         case CLOBBER:
   22261              :           x5 = XEXP (x4, 0);
   22262              :           if (GET_CODE (x5) != REG
   22263              :               || REGNO (x5) != 17
   22264              :               || GET_MODE (x5) != E_CCmode)
   22265              :             return -1;
   22266              :           switch (GET_MODE (operands[0]))
   22267              :             {
   22268              :             case E_DImode:
   22269              :               if (!nonimmediate_operand (operands[0], E_DImode))
   22270              :                 return -1;
   22271              :               x6 = XEXP (x2, 1);
   22272              :               if (GET_MODE (x6) != E_DImode
   22273              :                   || !nonimmediate_operand (operands[1], E_DImode))
   22274              :                 return -1;
   22275              :               if (x86_64_hilo_general_operand (operands[2], E_DImode)
   22276              :                   && (
   22277              : #line 8102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22278              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)) && 
   22279              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22280              : (!TARGET_64BIT)))
   22281              :                 return 384; /* *subdi3_doubleword */
   22282              :               if (!x86_64_general_operand (operands[2], E_DImode)
   22283              :                   || !(
   22284              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22285              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   22286              :   && true) && 
   22287              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22288              : (TARGET_64BIT)))
   22289              :                 return -1;
   22290              :               return 395; /* *subdi_1 */
   22291              : 
   22292              :             case E_TImode:
   22293              :               x6 = XEXP (x2, 1);
   22294              :               if (pattern566 (x6, 
   22295              : E_TImode) != 0
   22296              :                   || !(
   22297              : #line 8102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22298              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   22299              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22300              : (TARGET_64BIT)))
   22301              :                 return -1;
   22302              :               return 385; /* *subti3_doubleword */
   22303              : 
   22304              :             case E_QImode:
   22305              :               x6 = XEXP (x2, 1);
   22306              :               if (pattern567 (x6, 
   22307              : E_QImode) != 0
   22308              :                   || !
   22309              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22310              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   22311              :   && true))
   22312              :                 return -1;
   22313              :               return 389; /* *subqi_1 */
   22314              : 
   22315              :             case E_HImode:
   22316              :               x6 = XEXP (x2, 1);
   22317              :               if (pattern567 (x6, 
   22318              : E_HImode) != 0
   22319              :                   || !
   22320              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22321              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   22322              :   && true))
   22323              :                 return -1;
   22324              :               return 391; /* *subhi_1 */
   22325              : 
   22326              :             case E_SImode:
   22327              :               x6 = XEXP (x2, 1);
   22328              :               if (pattern568 (x6) != 0
   22329              :                   || !
   22330              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22331              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   22332              :   && true))
   22333              :                 return -1;
   22334              :               return 393; /* *subsi_1 */
   22335              : 
   22336              :             case E_V2QImode:
   22337              :               x6 = XEXP (x2, 1);
   22338              :               if (pattern570 (x6, 
   22339              : E_V2QImode) != 0
   22340              :                   || !
   22341              : #line 3269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22342              : (!TARGET_PARTIAL_REG_STALL || optimize_size || TARGET_SSE2))
   22343              :                 return -1;
   22344              :               return 2194; /* subv2qi3 */
   22345              : 
   22346              :             default:
   22347              :               return -1;
   22348              :             }
   22349              : 
   22350              :         case UNSPEC:
   22351              :           if (pattern214 (x1) != 0
   22352              :               || !
   22353              : #line 796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22354              : (TARGET_3DNOW && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   22355              :             return -1;
   22356              :           return 2110; /* *mmx_subv2sf3 */
   22357              : 
   22358              :         default:
   22359              :           return -1;
   22360              :         }
   22361              : 
   22362              :     case STRICT_LOW_PART:
   22363              :       x4 = XVECEXP (x1, 0, 1);
   22364              :       if (pattern236 (x4, 
   22365              : E_CCmode, 
   22366              : 17) != 0)
   22367              :         return -1;
   22368              :       switch (pattern1334 (x2))
   22369              :         {
   22370              :         case 0:
   22371              :           if (!
   22372              : #line 8222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22373              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22374              :             return -1;
   22375              :           return 407; /* *subqi_1_slp */
   22376              : 
   22377              :         case 1:
   22378              :           if (!
   22379              : #line 8222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22380              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22381              :             return -1;
   22382              :           return 408; /* *subhi_1_slp */
   22383              : 
   22384              :         default:
   22385              :           return -1;
   22386              :         }
   22387              : 
   22388              :     default:
   22389              :       return -1;
   22390              :     }
   22391              : }
   22392              : 
   22393              :  int
   22394              : recog_406 (rtx x1 ATTRIBUTE_UNUSED,
   22395              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22396              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22397              : {
   22398              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22399              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22400              :   rtx x10;
   22401              :   int res ATTRIBUTE_UNUSED;
   22402              :   x2 = XVECEXP (x1, 0, 0);
   22403              :   x3 = XEXP (x2, 0);
   22404              :   operands[0] = x3;
   22405              :   x4 = XEXP (x2, 1);
   22406              :   x5 = XEXP (x4, 0);
   22407              :   switch (GET_CODE (x5))
   22408              :     {
   22409              :     case REG:
   22410              :     case SUBREG:
   22411              :     case MEM:
   22412              :       x6 = XVECEXP (x1, 0, 1);
   22413              :       switch (GET_CODE (x6))
   22414              :         {
   22415              :         case CLOBBER:
   22416              :           x7 = XEXP (x6, 0);
   22417              :           if (GET_CODE (x7) != REG
   22418              :               || REGNO (x7) != 17
   22419              :               || GET_MODE (x7) != E_CCmode)
   22420              :             return -1;
   22421              :           operands[1] = x5;
   22422              :           x8 = XEXP (x4, 1);
   22423              :           operands[2] = x8;
   22424              :           switch (GET_MODE (operands[0]))
   22425              :             {
   22426              :             case E_HImode:
   22427              :               if (!register_operand (operands[0], E_HImode)
   22428              :                   || GET_MODE (x4) != E_HImode
   22429              :                   || !nonimmediate_operand (operands[1], E_HImode)
   22430              :                   || !general_operand (operands[2], E_HImode)
   22431              :                   || !(
   22432              : #line 10947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22433              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   22434              :    && true) && 
   22435              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22436              : (TARGET_HIMODE_MATH)))
   22437              :                 return -1;
   22438              :               return 619; /* *mulhi3_1 */
   22439              : 
   22440              :             case E_SImode:
   22441              :               if (pattern1335 (x4, 
   22442              : E_SImode) != 0
   22443              :                   || !
   22444              : #line 10947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22445              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   22446              :    && true))
   22447              :                 return -1;
   22448              :               return 621; /* *mulsi3_1 */
   22449              : 
   22450              :             case E_DImode:
   22451              :               if (pattern1335 (x4, 
   22452              : E_DImode) != 0
   22453              :                   || !(
   22454              : #line 10947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22455              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   22456              :    && true) && 
   22457              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22458              : (TARGET_64BIT)))
   22459              :                 return -1;
   22460              :               return 623; /* *muldi3_1 */
   22461              : 
   22462              :             case E_QImode:
   22463              :               if (pattern213 (x4, 
   22464              : E_QImode) != 0
   22465              :                   || !
   22466              : #line 11034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22467              : (TARGET_QIMODE_MATH
   22468              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   22469              :    && true))
   22470              :                 return -1;
   22471              :               return 631; /* *mulqi3_1 */
   22472              : 
   22473              :             default:
   22474              :               return -1;
   22475              :             }
   22476              : 
   22477              :         case SET:
   22478              :           x9 = XEXP (x6, 1);
   22479              :           if (GET_CODE (x9) != UMUL_HIGHPART)
   22480              :             return -1;
   22481              :           switch (pattern594 (x1))
   22482              :             {
   22483              :             case 0:
   22484              :               if (!(
   22485              : #line 11298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22486              : (TARGET_BMI2) && 
   22487              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22488              : (!TARGET_64BIT)))
   22489              :                 return -1;
   22490              :               return 643; /* *bmi2_umulsidi3_1 */
   22491              : 
   22492              :             case 1:
   22493              :               if (!(
   22494              : #line 11298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22495              : (TARGET_BMI2) && 
   22496              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22497              : (TARGET_64BIT)))
   22498              :                 return -1;
   22499              :               return 644; /* *bmi2_umulditi3_1 */
   22500              : 
   22501              :             default:
   22502              :               return -1;
   22503              :             }
   22504              : 
   22505              :         case UNSPEC:
   22506              :           if (XVECLEN (x6, 0) != 1
   22507              :               || XINT (x6, 1) != 111)
   22508              :             return -1;
   22509              :           x10 = XVECEXP (x6, 0, 0);
   22510              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   22511              :               || !register_operand (operands[0], E_V2SFmode)
   22512              :               || GET_MODE (x4) != E_V2SFmode)
   22513              :             return -1;
   22514              :           operands[1] = x5;
   22515              :           if (!nonimmediate_operand (operands[1], E_V2SFmode))
   22516              :             return -1;
   22517              :           x8 = XEXP (x4, 1);
   22518              :           operands[2] = x8;
   22519              :           if (!nonimmediate_operand (operands[2], E_V2SFmode)
   22520              :               || !
   22521              : #line 818 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22522              : (TARGET_3DNOW && ix86_binary_operator_ok (MULT, V2SFmode, operands)))
   22523              :             return -1;
   22524              :           return 2111; /* *mmx_mulv2sf3 */
   22525              : 
   22526              :         default:
   22527              :           return -1;
   22528              :         }
   22529              : 
   22530              :     case ZERO_EXTEND:
   22531              :       switch (pattern565 (x1, 
   22532              : ZERO_EXTEND))
   22533              :         {
   22534              :         case 0:
   22535              :           if (!(
   22536              : #line 11337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22537              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22538              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22539              : (!TARGET_64BIT)))
   22540              :             return -1;
   22541              :           return 645; /* *umulsidi3_1 */
   22542              : 
   22543              :         case 1:
   22544              :           if (!(
   22545              : #line 11337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22546              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22547              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22548              : (TARGET_64BIT)))
   22549              :             return -1;
   22550              :           return 646; /* *umulditi3_1 */
   22551              : 
   22552              :         case 2:
   22553              :           if (!
   22554              : #line 11403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22555              : (TARGET_QIMODE_MATH
   22556              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   22557              :    && true))
   22558              :             return -1;
   22559              :           return 654; /* *umulqihi3_1 */
   22560              : 
   22561              :         default:
   22562              :           return -1;
   22563              :         }
   22564              : 
   22565              :     case SIGN_EXTEND:
   22566              :       switch (pattern565 (x1, 
   22567              : SIGN_EXTEND))
   22568              :         {
   22569              :         case 0:
   22570              :           if (!(
   22571              : #line 11383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22572              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   22573              :    && true) && 
   22574              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22575              : (!TARGET_64BIT)))
   22576              :             return -1;
   22577              :           return 648; /* *mulsidi3_1 */
   22578              : 
   22579              :         case 1:
   22580              :           if (!(
   22581              : #line 1200 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22582              : (TARGET_64BIT) && (
   22583              : #line 11383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22584              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   22585              :    && true) && 
   22586              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22587              : (TARGET_64BIT))))
   22588              :             return -1;
   22589              :           return 650; /* *mulditi3_1 */
   22590              : 
   22591              :         case 2:
   22592              :           if (!
   22593              : #line 11403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22594              : (TARGET_QIMODE_MATH
   22595              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   22596              :    && true))
   22597              :             return -1;
   22598              :           return 652; /* *mulqihi3_1 */
   22599              : 
   22600              :         default:
   22601              :           return -1;
   22602              :         }
   22603              : 
   22604              :     default:
   22605              :       return -1;
   22606              :     }
   22607              : }
   22608              : 
   22609              :  int
   22610              : recog_413 (rtx x1 ATTRIBUTE_UNUSED,
   22611              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22612              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22613              : {
   22614              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22615              :   rtx x2, x3, x4, x5, x6, x7;
   22616              :   int res ATTRIBUTE_UNUSED;
   22617              :   x2 = XVECEXP (x1, 0, 0);
   22618              :   x3 = XEXP (x2, 1);
   22619              :   x4 = XEXP (x3, 0);
   22620              :   x5 = XEXP (x4, 0);
   22621              :   switch (GET_CODE (x5))
   22622              :     {
   22623              :     case ASHIFTRT:
   22624              :     case LSHIFTRT:
   22625              :     case SIGN_EXTRACT:
   22626              :     case ZERO_EXTRACT:
   22627              :       operands[3] = x5;
   22628              :       x6 = XEXP (x5, 0);
   22629              :       operands[2] = x6;
   22630              :       switch (pattern1535 (x2))
   22631              :         {
   22632              :         case 0:
   22633              :           if (
   22634              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22635              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22636              :             return 761; /* *xorqi_exthi_1_slp */
   22637              :           break;
   22638              : 
   22639              :         case 1:
   22640              :           if (
   22641              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22642              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22643              :             return 764; /* *xorqi_extsi_1_slp */
   22644              :           break;
   22645              : 
   22646              :         case 2:
   22647              :           if ((
   22648              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22649              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   22650              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22651              : (TARGET_64BIT)))
   22652              :             return 767; /* *xorqi_extdi_1_slp */
   22653              :           break;
   22654              : 
   22655              :         case 3:
   22656              :           return 785; /* *xorqi_exthi_0 */
   22657              : 
   22658              :         case 4:
   22659              :           return 788; /* *xorqi_extsi_0 */
   22660              : 
   22661              :         case 5:
   22662              :           if (
   22663              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22664              : (TARGET_64BIT))
   22665              :             return 791; /* *xorqi_extdi_0 */
   22666              :           break;
   22667              : 
   22668              :         default:
   22669              :           break;
   22670              :         }
   22671              :       x7 = XEXP (x3, 1);
   22672              :       if (GET_CODE (x7) != SUBREG)
   22673              :         return -1;
   22674              :       switch (pattern1536 (x2))
   22675              :         {
   22676              :         case 0:
   22677              :           if (!
   22678              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22679              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22680              :             return -1;
   22681              :           return 770; /* *xorqi_exthi_2_slp */
   22682              : 
   22683              :         case 1:
   22684              :           if (!
   22685              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22686              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22687              :             return -1;
   22688              :           return 773; /* *xorqi_extsi_2_slp */
   22689              : 
   22690              :         case 2:
   22691              :           if (!(
   22692              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22693              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   22694              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22695              : (TARGET_64BIT)))
   22696              :             return -1;
   22697              :           return 776; /* *xorqi_extdi_2_slp */
   22698              : 
   22699              :         case 3:
   22700              :           return 794; /* *xorqi_ext2hi_0 */
   22701              : 
   22702              :         case 4:
   22703              :           return 797; /* *xorqi_ext2si_0 */
   22704              : 
   22705              :         case 5:
   22706              :           if (!
   22707              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22708              : (TARGET_64BIT))
   22709              :             return -1;
   22710              :           return 800; /* *xorqi_ext2di_0 */
   22711              : 
   22712              :         default:
   22713              :           return -1;
   22714              :         }
   22715              : 
   22716              :     default:
   22717              :       return -1;
   22718              :     }
   22719              : }
   22720              : 
   22721              :  int
   22722              : recog_415 (rtx x1 ATTRIBUTE_UNUSED,
   22723              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22724              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22725              : {
   22726              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22727              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22728              :   rtx x10;
   22729              :   int res ATTRIBUTE_UNUSED;
   22730              :   x2 = XVECEXP (x1, 0, 0);
   22731              :   x3 = XEXP (x2, 1);
   22732              :   x4 = XEXP (x3, 0);
   22733              :   switch (GET_CODE (x4))
   22734              :     {
   22735              :     case XOR:
   22736              :       x5 = XEXP (x2, 0);
   22737              :       operands[0] = x5;
   22738              :       x6 = XEXP (x4, 0);
   22739              :       operands[1] = x6;
   22740              :       x7 = XEXP (x4, 1);
   22741              :       operands[2] = x7;
   22742              :       x8 = XVECEXP (x1, 0, 1);
   22743              :       switch (pattern831 (x8))
   22744              :         {
   22745              :         case 0:
   22746              :           switch (GET_MODE (operands[0]))
   22747              :             {
   22748              :             case E_HImode:
   22749              :               if (!nonimmediate_operand (operands[0], E_HImode)
   22750              :                   || pattern217 (x3, 
   22751              : E_HImode) != 0
   22752              :                   || !
   22753              : #line 13927 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22754              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)))
   22755              :                 return -1;
   22756              :               return 863; /* *notxorhi_1 */
   22757              : 
   22758              :             case E_SImode:
   22759              :               if (!nonimmediate_operand (operands[0], E_SImode)
   22760              :                   || pattern218 (x3, 
   22761              : E_SImode) != 0
   22762              :                   || !
   22763              : #line 13927 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22764              : (ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   22765              :                 return -1;
   22766              :               return 864; /* *notxorsi_1 */
   22767              : 
   22768              :             case E_DImode:
   22769              :               if (!nonimmediate_operand (operands[0], E_DImode)
   22770              :                   || pattern218 (x3, 
   22771              : E_DImode) != 0
   22772              :                   || !(
   22773              : #line 13927 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22774              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   22775              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22776              : (TARGET_64BIT)))
   22777              :                 return -1;
   22778              :               return 865; /* *notxordi_1 */
   22779              : 
   22780              :             case E_QImode:
   22781              :               if (!nonimmediate_operand (operands[0], E_QImode)
   22782              :                   || pattern217 (x3, 
   22783              : E_QImode) != 0
   22784              :                   || !
   22785              : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22786              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)))
   22787              :                 return -1;
   22788              :               return 899; /* *notxorqi_1 */
   22789              : 
   22790              :             default:
   22791              :               return -1;
   22792              :             }
   22793              : 
   22794              :         case 1:
   22795              :           if (pattern1339 (x3, 
   22796              : E_QImode) != 0
   22797              :               || !
   22798              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22799              : (TARGET_AVX512F))
   22800              :             return -1;
   22801              :           return 2651; /* kxnorqi */
   22802              : 
   22803              :         case 2:
   22804              :           if (pattern1339 (x3, 
   22805              : E_HImode) != 0
   22806              :               || !
   22807              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22808              : (TARGET_AVX512F))
   22809              :             return -1;
   22810              :           return 2652; /* kxnorhi */
   22811              : 
   22812              :         case 3:
   22813              :           if (pattern1339 (x3, 
   22814              : E_SImode) != 0
   22815              :               || !(
   22816              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22817              : (TARGET_AVX512F) && 
   22818              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22819              : (TARGET_AVX512BW)))
   22820              :             return -1;
   22821              :           return 2653; /* kxnorsi */
   22822              : 
   22823              :         case 4:
   22824              :           if (pattern1339 (x3, 
   22825              : E_DImode) != 0
   22826              :               || !(
   22827              : #line 2201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22828              : (TARGET_AVX512F) && 
   22829              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22830              : (TARGET_AVX512BW)))
   22831              :             return -1;
   22832              :           return 2654; /* kxnordi */
   22833              : 
   22834              :         default:
   22835              :           return -1;
   22836              :         }
   22837              : 
   22838              :     case ZERO_EXTRACT:
   22839              :       if (pattern376 (x1) != 0
   22840              :           || GET_MODE (x3) != E_DImode)
   22841              :         return -1;
   22842              :       x6 = XEXP (x4, 0);
   22843              :       if (!rtx_equal_p (x6, operands[0]))
   22844              :         return -1;
   22845              :       x9 = XEXP (x4, 2);
   22846              :       if (!rtx_equal_p (x9, operands[1])
   22847              :           || !
   22848              : #line 19400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22849              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
   22850              :         return -1;
   22851              :       return 1447; /* *btcq_imm */
   22852              : 
   22853              :     case REG:
   22854              :     case SUBREG:
   22855              :       operands[1] = x4;
   22856              :       x8 = XVECEXP (x1, 0, 1);
   22857              :       if (GET_CODE (x8) != UNSPEC
   22858              :           || XVECLEN (x8, 0) != 1
   22859              :           || XINT (x8, 1) != 175)
   22860              :         return -1;
   22861              :       x10 = XVECEXP (x8, 0, 0);
   22862              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22863              :         return -1;
   22864              :       x5 = XEXP (x2, 0);
   22865              :       operands[0] = x5;
   22866              :       switch (pattern820 (x3))
   22867              :         {
   22868              :         case 0:
   22869              :           if (!
   22870              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22871              : (TARGET_AVX512F))
   22872              :             return -1;
   22873              :           return 2655; /* knotqi */
   22874              : 
   22875              :         case 1:
   22876              :           if (!
   22877              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22878              : (TARGET_AVX512F))
   22879              :             return -1;
   22880              :           return 2656; /* knothi */
   22881              : 
   22882              :         case 2:
   22883              :           if (!(
   22884              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22885              : (TARGET_AVX512F) && 
   22886              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22887              : (TARGET_AVX512BW)))
   22888              :             return -1;
   22889              :           return 2657; /* knotsi */
   22890              : 
   22891              :         case 3:
   22892              :           if (!(
   22893              : #line 2222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22894              : (TARGET_AVX512F) && 
   22895              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22896              : (TARGET_AVX512BW)))
   22897              :             return -1;
   22898              :           return 2658; /* knotdi */
   22899              : 
   22900              :         default:
   22901              :           return -1;
   22902              :         }
   22903              : 
   22904              :     default:
   22905              :       return -1;
   22906              :     }
   22907              : }
   22908              : 
   22909              :  int
   22910              : recog_418 (rtx x1 ATTRIBUTE_UNUSED,
   22911              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22912              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22913              : {
   22914              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22915              :   rtx x2, x3, x4, x5, x6, x7, x8;
   22916              :   int res ATTRIBUTE_UNUSED;
   22917              :   x2 = XVECEXP (x1, 0, 0);
   22918              :   x3 = XEXP (x2, 1);
   22919              :   x4 = XEXP (x3, 0);
   22920              :   switch (GET_CODE (x4))
   22921              :     {
   22922              :     case CONST_INT:
   22923              :     case REG:
   22924              :     case SUBREG:
   22925              :     case MEM:
   22926              :       switch (pattern343 (x1))
   22927              :         {
   22928              :         case 0:
   22929              :           x5 = XEXP (x2, 0);
   22930              :           operands[0] = x5;
   22931              :           switch (pattern821 (x1))
   22932              :             {
   22933              :             case 0:
   22934              :               if ((
   22935              : #line 15541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22936              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   22937              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   22938              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   22939              :    && ix86_pre_reload_split ()) && 
   22940              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22941              : (!TARGET_64BIT)))
   22942              :                 return 1084; /* *ashldi3_doubleword_mask */
   22943              :               break;
   22944              : 
   22945              :             case 1:
   22946              :               if ((
   22947              : #line 15541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22948              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   22949              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   22950              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   22951              :    && ix86_pre_reload_split ()) && 
   22952              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22953              : (TARGET_64BIT)))
   22954              :                 return 1085; /* *ashlti3_doubleword_mask */
   22955              :               break;
   22956              : 
   22957              :             case 2:
   22958              :               if ((
   22959              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22960              : (TARGET_AVX512F) && 
   22961              : #line 2093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22962              : (TARGET_AVX512DQ)))
   22963              :                 return 2664; /* kashiftqi */
   22964              :               break;
   22965              : 
   22966              :             case 3:
   22967              :               if (
   22968              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22969              : (TARGET_AVX512F))
   22970              :                 return 2666; /* kashifthi */
   22971              :               break;
   22972              : 
   22973              :             case 4:
   22974              :               if ((
   22975              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22976              : (TARGET_AVX512F) && 
   22977              : #line 2093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22978              : (TARGET_AVX512BW)))
   22979              :                 return 2668; /* kashiftsi */
   22980              :               break;
   22981              : 
   22982              :             case 5:
   22983              :               if ((
   22984              : #line 2291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22985              : (TARGET_AVX512F) && 
   22986              : #line 2093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22987              : (TARGET_AVX512BW)))
   22988              :                 return 2670; /* kashiftdi */
   22989              :               break;
   22990              : 
   22991              :             default:
   22992              :               break;
   22993              :             }
   22994              :           x6 = XEXP (x3, 1);
   22995              :           operands[2] = x6;
   22996              :           switch (pattern822 (x1))
   22997              :             {
   22998              :             case 0:
   22999              :               operands[0] = x5;
   23000              :               switch (GET_MODE (operands[0]))
   23001              :                 {
   23002              :                 case E_DImode:
   23003              :                   if (GET_MODE (x3) == E_DImode)
   23004              :                     {
   23005              :                       if (register_operand (operands[0], E_DImode)
   23006              :                           && reg_or_pm1_operand (operands[1], E_DImode)
   23007              :                           && 
   23008              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23009              : (!TARGET_64BIT))
   23010              :                         return 1088; /* ashldi3_doubleword */
   23011              :                       if (nonimmediate_operand (operands[0], E_DImode)
   23012              :                           && nonimmediate_operand (operands[1], E_DImode)
   23013              :                           && (
   23014              : #line 16247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23015              : (ix86_binary_operator_ok (ASHIFT, DImode, operands, TARGET_APX_NDD)
   23016              :    && true) && 
   23017              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23018              : (TARGET_64BIT)))
   23019              :                         return 1123; /* *ashldi3_1 */
   23020              :                     }
   23021              :                   break;
   23022              : 
   23023              :                 case E_TImode:
   23024              :                   if (register_operand (operands[0], E_TImode)
   23025              :                       && GET_MODE (x3) == E_TImode
   23026              :                       && reg_or_pm1_operand (operands[1], E_TImode)
   23027              :                       && 
   23028              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23029              : (TARGET_64BIT))
   23030              :                     return 1089; /* ashlti3_doubleword */
   23031              :                   break;
   23032              : 
   23033              :                 case E_SImode:
   23034              :                   if (nonimmediate_operand (operands[0], E_SImode)
   23035              :                       && GET_MODE (x3) == E_SImode
   23036              :                       && nonimmediate_operand (operands[1], E_SImode)
   23037              :                       && 
   23038              : #line 16247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23039              : (ix86_binary_operator_ok (ASHIFT, SImode, operands, TARGET_APX_NDD)
   23040              :    && true))
   23041              :                     return 1121; /* *ashlsi3_1 */
   23042              :                   break;
   23043              : 
   23044              :                 case E_HImode:
   23045              :                   if (nonimmediate_operand (operands[0], E_HImode)
   23046              :                       && GET_MODE (x3) == E_HImode
   23047              :                       && nonimmediate_operand (operands[1], E_HImode)
   23048              :                       && 
   23049              : #line 16433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23050              : (ix86_binary_operator_ok (ASHIFT, HImode, operands, TARGET_APX_NDD)
   23051              :    && true))
   23052              :                     return 1137; /* *ashlhi3_1 */
   23053              :                   break;
   23054              : 
   23055              :                 case E_QImode:
   23056              :                   if (nonimmediate_operand (operands[0], E_QImode)
   23057              :                       && GET_MODE (x3) == E_QImode
   23058              :                       && nonimmediate_operand (operands[1], E_QImode)
   23059              :                       && 
   23060              : #line 16492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23061              : (ix86_binary_operator_ok (ASHIFT, QImode, operands, TARGET_APX_NDD)
   23062              :    && true))
   23063              :                     return 1139; /* *ashlqi3_1 */
   23064              :                   break;
   23065              : 
   23066              :                 case E_V2QImode:
   23067              :                   if (register_operand (operands[0], E_V2QImode)
   23068              :                       && GET_MODE (x3) == E_V2QImode
   23069              :                       && register_operand (operands[1], E_V2QImode)
   23070              :                       && 
   23071              : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23072              : (!TARGET_PARTIAL_REG_STALL || optimize_size))
   23073              :                     return 2271; /* ashlv2qi3 */
   23074              :                   break;
   23075              : 
   23076              :                 default:
   23077              :                   break;
   23078              :                 }
   23079              :               break;
   23080              : 
   23081              :             case 1:
   23082              :               x7 = XEXP (x5, 0);
   23083              :               operands[0] = x7;
   23084              :               switch (pattern377 (x3))
   23085              :                 {
   23086              :                 case 0:
   23087              :                   if (
   23088              : #line 16571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23089              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23090              :                     return 1140; /* *ashlqi3_1_slp */
   23091              :                   break;
   23092              : 
   23093              :                 case 1:
   23094              :                   if (
   23095              : #line 16571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23096              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23097              :                     return 1141; /* *ashlhi3_1_slp */
   23098              :                   break;
   23099              : 
   23100              :                 default:
   23101              :                   break;
   23102              :                 }
   23103              :               break;
   23104              : 
   23105              :             default:
   23106              :               break;
   23107              :             }
   23108              :           if (GET_CODE (x6) != SUBREG
   23109              :               || maybe_ne (SUBREG_BYTE (x6), 0)
   23110              :               || GET_MODE (x6) != E_QImode)
   23111              :             return -1;
   23112              :           x8 = XVECEXP (x1, 0, 1);
   23113              :           if (pattern375 (x8) != 0)
   23114              :             return -1;
   23115              :           switch (pattern1447 (x2))
   23116              :             {
   23117              :             case 0:
   23118              :               if (!
   23119              : #line 18174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23120              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   23121              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   23122              :       == 4 * BITS_PER_UNIT - 1
   23123              :    && ix86_pre_reload_split ()))
   23124              :                 return -1;
   23125              :               return 1276; /* *ashlsi3_mask */
   23126              : 
   23127              :             case 1:
   23128              :               if (!(
   23129              : #line 18174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23130              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   23131              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   23132              :       == 8 * BITS_PER_UNIT - 1
   23133              :    && ix86_pre_reload_split ()) && 
   23134              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23135              : (TARGET_64BIT)))
   23136              :                 return -1;
   23137              :               return 1279; /* *ashldi3_mask */
   23138              : 
   23139              :             case 2:
   23140              :               if (!
   23141              : #line 18222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23142              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   23143              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   23144              :    && ix86_pre_reload_split ()))
   23145              :                 return -1;
   23146              :               return 1288; /* *ashlsi3_add */
   23147              : 
   23148              :             case 3:
   23149              :               if (!(
   23150              : #line 18222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23151              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   23152              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   23153              :    && ix86_pre_reload_split ()) && 
   23154              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23155              : (TARGET_64BIT)))
   23156              :                 return -1;
   23157              :               return 1291; /* *ashldi3_add */
   23158              : 
   23159              :             case 4:
   23160              :               if (!
   23161              : #line 18268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23162              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   23163              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   23164              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   23165              :           == 4 * BITS_PER_UNIT - 1)
   23166              :    && ix86_pre_reload_split ()))
   23167              :                 return -1;
   23168              :               return 1300; /* *ashlsi3_sub */
   23169              : 
   23170              :             case 5:
   23171              :               if (!(
   23172              : #line 18268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23173              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   23174              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   23175              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   23176              :           == 8 * BITS_PER_UNIT - 1)
   23177              :    && ix86_pre_reload_split ()) && 
   23178              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23179              : (TARGET_64BIT)))
   23180              :                 return -1;
   23181              :               return 1303; /* *ashldi3_sub */
   23182              : 
   23183              :             default:
   23184              :               return -1;
   23185              :             }
   23186              : 
   23187              :         case 1:
   23188              :           if (register_operand (operands[0], E_DImode)
   23189              :               && register_operand (operands[1], E_DImode)
   23190              :               && (
   23191              : #line 15602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23192              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   23193              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   23194              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   23195              :    && ix86_pre_reload_split ()) && 
   23196              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23197              : (!TARGET_64BIT)))
   23198              :             return 1086; /* *ashldi3_doubleword_mask_1 */
   23199              :           if (!nonimmediate_operand (operands[0], E_DImode)
   23200              :               || !nonimmediate_operand (operands[1], E_DImode)
   23201              :               || !(
   23202              : #line 18199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23203              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   23204              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   23205              :       == 8 * BITS_PER_UNIT - 1
   23206              :    && ix86_pre_reload_split ()) && 
   23207              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23208              : (TARGET_64BIT)))
   23209              :             return -1;
   23210              :           return 1285; /* *ashldi3_mask_1 */
   23211              : 
   23212              :         case 2:
   23213              :           if (!(
   23214              : #line 15602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23215              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   23216              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   23217              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   23218              :    && ix86_pre_reload_split ()) && 
   23219              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23220              : (TARGET_64BIT)))
   23221              :             return -1;
   23222              :           return 1087; /* *ashlti3_doubleword_mask_1 */
   23223              : 
   23224              :         case 3:
   23225              :           if (!
   23226              : #line 18199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23227              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   23228              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   23229              :       == 4 * BITS_PER_UNIT - 1
   23230              :    && ix86_pre_reload_split ()))
   23231              :             return -1;
   23232              :           return 1282; /* *ashlsi3_mask_1 */
   23233              : 
   23234              :         case 4:
   23235              :           if (!
   23236              : #line 18246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23237              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   23238              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   23239              :    && ix86_pre_reload_split ()))
   23240              :             return -1;
   23241              :           return 1294; /* *ashlsi3_add_1 */
   23242              : 
   23243              :         case 5:
   23244              :           if (!(
   23245              : #line 18246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23246              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   23247              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   23248              :    && ix86_pre_reload_split ()) && 
   23249              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23250              : (TARGET_64BIT)))
   23251              :             return -1;
   23252              :           return 1297; /* *ashldi3_add_1 */
   23253              : 
   23254              :         case 6:
   23255              :           if (!
   23256              : #line 18301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23257              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   23258              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   23259              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   23260              :           == 4 * BITS_PER_UNIT - 1)
   23261              :    && ix86_pre_reload_split ()))
   23262              :             return -1;
   23263              :           return 1306; /* *ashlsi3_sub_1 */
   23264              : 
   23265              :         case 7:
   23266              :           if (!(
   23267              : #line 18301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23268              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   23269              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   23270              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   23271              :           == 8 * BITS_PER_UNIT - 1)
   23272              :    && ix86_pre_reload_split ()) && 
   23273              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23274              : (TARGET_64BIT)))
   23275              :             return -1;
   23276              :           return 1309; /* *ashldi3_sub_1 */
   23277              : 
   23278              :         default:
   23279              :           return -1;
   23280              :         }
   23281              : 
   23282              :     case SIGN_EXTEND:
   23283              :       switch (pattern383 (x1))
   23284              :         {
   23285              :         case 0:
   23286              :           if (!(
   23287              : #line 15703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23288              : (INTVAL (operands[2]) >= 4 * BITS_PER_UNIT
   23289              :    && INTVAL (operands[2]) < 4 * BITS_PER_UNIT * 2) && 
   23290              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23291              : (!TARGET_64BIT)))
   23292              :             return -1;
   23293              :           return 1090; /* *ashldi3_doubleword_highpart */
   23294              : 
   23295              :         case 1:
   23296              :           if (!(
   23297              : #line 15703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23298              : (INTVAL (operands[2]) >= 8 * BITS_PER_UNIT
   23299              :    && INTVAL (operands[2]) < 8 * BITS_PER_UNIT * 2) && 
   23300              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23301              : (TARGET_64BIT)))
   23302              :             return -1;
   23303              :           return 1092; /* *ashlti3_doubleword_highpart */
   23304              : 
   23305              :         default:
   23306              :           return -1;
   23307              :         }
   23308              : 
   23309              :     case ZERO_EXTEND:
   23310              :       switch (pattern383 (x1))
   23311              :         {
   23312              :         case 0:
   23313              :           if (!(
   23314              : #line 15703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23315              : (INTVAL (operands[2]) >= 4 * BITS_PER_UNIT
   23316              :    && INTVAL (operands[2]) < 4 * BITS_PER_UNIT * 2) && 
   23317              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23318              : (!TARGET_64BIT)))
   23319              :             return -1;
   23320              :           return 1091; /* *ashldi3_doubleword_highpart */
   23321              : 
   23322              :         case 1:
   23323              :           if (!(
   23324              : #line 15703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23325              : (INTVAL (operands[2]) >= 8 * BITS_PER_UNIT
   23326              :    && INTVAL (operands[2]) < 8 * BITS_PER_UNIT * 2) && 
   23327              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23328              : (TARGET_64BIT)))
   23329              :             return -1;
   23330              :           return 1093; /* *ashlti3_doubleword_highpart */
   23331              : 
   23332              :         default:
   23333              :           return -1;
   23334              :         }
   23335              : 
   23336              :     default:
   23337              :       return -1;
   23338              :     }
   23339              : }
   23340              : 
   23341              :  int
   23342              : recog_435 (rtx x1 ATTRIBUTE_UNUSED,
   23343              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23344              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23345              : {
   23346              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23347              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23348              :   rtx x10, x11, x12, x13, x14;
   23349              :   int res ATTRIBUTE_UNUSED;
   23350              :   if (pattern231 (x1) != 0)
   23351              :     return -1;
   23352              :   x2 = XVECEXP (x1, 0, 2);
   23353              :   if (GET_CODE (x2) != UNSPEC
   23354              :       || XVECLEN (x2, 0) != 1
   23355              :       || XINT (x2, 1) != 39)
   23356              :     return -1;
   23357              :   x3 = XVECEXP (x1, 0, 1);
   23358              :   x4 = XEXP (x3, 0);
   23359              :   operands[0] = x4;
   23360              :   x5 = XVECEXP (x2, 0, 0);
   23361              :   operands[2] = x5;
   23362              :   x6 = XVECEXP (x1, 0, 0);
   23363              :   x7 = XEXP (x6, 1);
   23364              :   x8 = XEXP (x7, 0);
   23365              :   switch (GET_CODE (x8))
   23366              :     {
   23367              :     case REG:
   23368              :     case SUBREG:
   23369              :     case MEM:
   23370              :       operands[1] = x8;
   23371              :       x9 = XEXP (x3, 1);
   23372              :       if (GET_CODE (x9) != CTZ)
   23373              :         return -1;
   23374              :       x10 = XEXP (x6, 0);
   23375              :       if (GET_MODE (x10) != E_CCCmode
   23376              :           || GET_MODE (x7) != E_CCCmode)
   23377              :         return -1;
   23378              :       x11 = XEXP (x9, 0);
   23379              :       if (!rtx_equal_p (x11, operands[1]))
   23380              :         return -1;
   23381              :       switch (GET_MODE (operands[1]))
   23382              :         {
   23383              :         case E_SImode:
   23384              :           if (pattern1705 (x9, 
   23385              : E_SImode) != 0
   23386              :               || !
   23387              : #line 21395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23388              : (TARGET_BMI))
   23389              :             return -1;
   23390              :           return 1542; /* *tzcntsi_1_falsedep */
   23391              : 
   23392              :         case E_DImode:
   23393              :           if (pattern1705 (x9, 
   23394              : E_DImode) != 0
   23395              :               || !(
   23396              : #line 21395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23397              : (TARGET_BMI) && 
   23398              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23399              : (TARGET_64BIT)))
   23400              :             return -1;
   23401              :           return 1543; /* *tzcntdi_1_falsedep */
   23402              : 
   23403              :         default:
   23404              :           return -1;
   23405              :         }
   23406              : 
   23407              :     case AND:
   23408              :       x9 = XEXP (x3, 1);
   23409              :       if (GET_CODE (x9) != AND)
   23410              :         return -1;
   23411              :       x12 = XEXP (x8, 0);
   23412              :       switch (GET_CODE (x12))
   23413              :         {
   23414              :         case NEG:
   23415              :           x11 = XEXP (x9, 0);
   23416              :           if (GET_CODE (x11) != NEG)
   23417              :             return -1;
   23418              :           switch (pattern1585 (x1))
   23419              :             {
   23420              :             case 0:
   23421              :               if (!
   23422              : #line 22205 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23423              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
   23424              :                 return -1;
   23425              :               return 1608; /* *bmi_blsi_si_falsedep */
   23426              : 
   23427              :             case 1:
   23428              :               if (!(
   23429              : #line 22205 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23430              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
   23431              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23432              : (TARGET_64BIT)))
   23433              :                 return -1;
   23434              :               return 1609; /* *bmi_blsi_di_falsedep */
   23435              : 
   23436              :             default:
   23437              :               return -1;
   23438              :             }
   23439              : 
   23440              :         case PLUS:
   23441              :           x13 = XEXP (x12, 1);
   23442              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   23443              :             return -1;
   23444              :           x11 = XEXP (x9, 0);
   23445              :           if (GET_CODE (x11) != PLUS)
   23446              :             return -1;
   23447              :           x14 = XEXP (x11, 1);
   23448              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   23449              :             return -1;
   23450              :           x10 = XEXP (x6, 0);
   23451              :           if (GET_MODE (x10) != E_CCZmode
   23452              :               || GET_MODE (x7) != E_CCZmode)
   23453              :             return -1;
   23454              :           switch (pattern1585 (x1))
   23455              :             {
   23456              :             case 0:
   23457              :               if (!
   23458              : #line 22353 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23459              : (TARGET_BMI))
   23460              :                 return -1;
   23461              :               return 1620; /* *bmi_blsr_si_cmp_falsedep */
   23462              : 
   23463              :             case 1:
   23464              :               if (!(
   23465              : #line 22353 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23466              : (TARGET_BMI) && 
   23467              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23468              : (TARGET_64BIT)))
   23469              :                 return -1;
   23470              :               return 1621; /* *bmi_blsr_di_cmp_falsedep */
   23471              : 
   23472              :             default:
   23473              :               return -1;
   23474              :             }
   23475              : 
   23476              :         default:
   23477              :           return -1;
   23478              :         }
   23479              : 
   23480              :     default:
   23481              :       return -1;
   23482              :     }
   23483              : }
   23484              : 
   23485              :  int
   23486              : recog_438 (rtx x1 ATTRIBUTE_UNUSED,
   23487              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23488              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23489              : {
   23490              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23491              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23492              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   23493              :   rtx x18, x19;
   23494              :   int res ATTRIBUTE_UNUSED;
   23495              :   x2 = XVECEXP (x1, 0, 0);
   23496              :   switch (GET_CODE (x2))
   23497              :     {
   23498              :     case SET:
   23499              :       x3 = XEXP (x2, 1);
   23500              :       switch (GET_CODE (x3))
   23501              :         {
   23502              :         case UNSPEC:
   23503              :           return recog_431 (x1, insn, pnum_clobbers);
   23504              : 
   23505              :         case SIGN_EXTEND:
   23506              :           x4 = XVECEXP (x1, 0, 2);
   23507              :           if (GET_CODE (x4) != CLOBBER)
   23508              :             return -1;
   23509              :           x5 = XEXP (x2, 0);
   23510              :           operands[0] = x5;
   23511              :           x6 = XEXP (x3, 0);
   23512              :           switch (GET_CODE (x6))
   23513              :             {
   23514              :             case REG:
   23515              :             case SUBREG:
   23516              :               operands[1] = x6;
   23517              :               x7 = XVECEXP (x1, 0, 1);
   23518              :               if (pattern236 (x7, 
   23519              : E_CCmode, 
   23520              : 17) != 0)
   23521              :                 return -1;
   23522              :               x8 = XEXP (x4, 0);
   23523              :               operands[2] = x8;
   23524              :               switch (GET_MODE (operands[0]))
   23525              :                 {
   23526              :                 case E_DImode:
   23527              :                   if (pattern1451 (x3, 
   23528              : E_SImode, 
   23529              : E_DImode) != 0
   23530              :                       || !
   23531              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23532              : (!TARGET_64BIT))
   23533              :                     return -1;
   23534              :                   return 189; /* extendsidi2_1 */
   23535              : 
   23536              :                 case E_TImode:
   23537              :                   if (pattern1451 (x3, 
   23538              : E_DImode, 
   23539              : E_TImode) != 0
   23540              :                       || !
   23541              : #line 5004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23542              : (TARGET_64BIT))
   23543              :                     return -1;
   23544              :                   return 190; /* extendditi2 */
   23545              : 
   23546              :                 default:
   23547              :                   return -1;
   23548              :                 }
   23549              : 
   23550              :             case CTZ:
   23551              :               if (GET_MODE (x6) != E_SImode)
   23552              :                 return -1;
   23553              :               x7 = XVECEXP (x1, 0, 1);
   23554              :               if (GET_CODE (x7) != UNSPEC
   23555              :                   || XVECLEN (x7, 0) != 1
   23556              :                   || XINT (x7, 1) != 39)
   23557              :                 return -1;
   23558              :               x8 = XEXP (x4, 0);
   23559              :               if (GET_CODE (x8) != REG
   23560              :                   || REGNO (x8) != 17
   23561              :                   || GET_MODE (x8) != E_CCmode
   23562              :                   || !register_operand (operands[0], E_DImode)
   23563              :                   || GET_MODE (x3) != E_DImode)
   23564              :                 return -1;
   23565              :               x9 = XEXP (x6, 0);
   23566              :               operands[1] = x9;
   23567              :               if (!nonimmediate_operand (operands[1], E_SImode))
   23568              :                 return -1;
   23569              :               x10 = XVECEXP (x7, 0, 0);
   23570              :               operands[2] = x10;
   23571              :               if (!register_operand (operands[2], E_DImode)
   23572              :                   || !
   23573              : #line 21572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23574              : (TARGET_64BIT))
   23575              :                 return -1;
   23576              :               return 1554; /* *ctzsidi2_sext_falsedep */
   23577              : 
   23578              :             default:
   23579              :               return -1;
   23580              :             }
   23581              : 
   23582              :         case FIX:
   23583              :           x7 = XVECEXP (x1, 0, 1);
   23584              :           if (GET_CODE (x7) != USE)
   23585              :             return -1;
   23586              :           x4 = XVECEXP (x1, 0, 2);
   23587              :           if (GET_CODE (x4) != USE)
   23588              :             return -1;
   23589              :           x5 = XEXP (x2, 0);
   23590              :           operands[0] = x5;
   23591              :           x6 = XEXP (x3, 0);
   23592              :           operands[1] = x6;
   23593              :           if (!register_operand (operands[1], E_VOIDmode))
   23594              :             return -1;
   23595              :           switch (pattern834 (x1, pnum_clobbers))
   23596              :             {
   23597              :             case 0:
   23598              :               if (!
   23599              : #line 6030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23600              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   23601              :    && !TARGET_FISTTP
   23602              :    && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1])))))
   23603              :                 return -1;
   23604              :               *pnum_clobbers = 1;
   23605              :               return 239; /* fix_truncdi_i387 */
   23606              : 
   23607              :             case 1:
   23608              :               if (!
   23609              : #line 6043 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23610              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   23611              :    && !TARGET_FISTTP
   23612              :    && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
   23613              :                 return -1;
   23614              :               return 240; /* fix_trunchi_i387 */
   23615              : 
   23616              :             case 2:
   23617              :               if (!
   23618              : #line 6043 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23619              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   23620              :    && !TARGET_FISTTP
   23621              :    && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
   23622              :                 return -1;
   23623              :               return 241; /* fix_truncsi_i387 */
   23624              : 
   23625              :             default:
   23626              :               return -1;
   23627              :             }
   23628              : 
   23629              :         case UNSIGNED_FLOAT:
   23630              :           x7 = XVECEXP (x1, 0, 1);
   23631              :           if (GET_CODE (x7) != CLOBBER)
   23632              :             return -1;
   23633              :           x4 = XVECEXP (x1, 0, 2);
   23634              :           if (GET_CODE (x4) != CLOBBER)
   23635              :             return -1;
   23636              :           switch (pattern576 (x1))
   23637              :             {
   23638              :             case 0:
   23639              :               if (!
   23640              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23641              : (!TARGET_64BIT
   23642              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   23643              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   23644              :                 return -1;
   23645              :               return 265; /* floatunssisf2_i387_with_xmm */
   23646              : 
   23647              :             case 1:
   23648              :               if (!
   23649              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23650              : (!TARGET_64BIT
   23651              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   23652              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   23653              :                 return -1;
   23654              :               return 266; /* floatunssidf2_i387_with_xmm */
   23655              : 
   23656              :             case 2:
   23657              :               if (!
   23658              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23659              : (!TARGET_64BIT
   23660              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   23661              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   23662              :                 return -1;
   23663              :               return 267; /* floatunssixf2_i387_with_xmm */
   23664              : 
   23665              :             default:
   23666              :               return -1;
   23667              :             }
   23668              : 
   23669              :         case EQ:
   23670              :           return recog_437 (x1, insn, pnum_clobbers);
   23671              : 
   23672              :         case SMUL_HIGHPART:
   23673              :           switch (pattern223 (x1))
   23674              :             {
   23675              :             case 0:
   23676              :               if (!
   23677              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23678              : (!TARGET_64BIT))
   23679              :                 return -1;
   23680              :               return 655; /* smulsi3_highpart */
   23681              : 
   23682              :             case 1:
   23683              :               if (!
   23684              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23685              : (TARGET_64BIT))
   23686              :                 return -1;
   23687              :               return 657; /* smuldi3_highpart */
   23688              : 
   23689              :             default:
   23690              :               return -1;
   23691              :             }
   23692              : 
   23693              :         case UMUL_HIGHPART:
   23694              :           switch (pattern223 (x1))
   23695              :             {
   23696              :             case 0:
   23697              :               if (!
   23698              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23699              : (!TARGET_64BIT))
   23700              :                 return -1;
   23701              :               return 656; /* umulsi3_highpart */
   23702              : 
   23703              :             case 1:
   23704              :               if (!
   23705              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23706              : (TARGET_64BIT))
   23707              :                 return -1;
   23708              :               return 658; /* umuldi3_highpart */
   23709              : 
   23710              :             default:
   23711              :               return -1;
   23712              :             }
   23713              : 
   23714              :         case ZERO_EXTEND:
   23715              :           return recog_432 (x1, insn, pnum_clobbers);
   23716              : 
   23717              :         case TRUNCATE:
   23718              :           x6 = XEXP (x3, 0);
   23719              :           if (GET_CODE (x6) != LSHIFTRT)
   23720              :             return -1;
   23721              :           x9 = XEXP (x6, 0);
   23722              :           if (GET_CODE (x9) != MULT)
   23723              :             return -1;
   23724              :           x11 = XEXP (x6, 1);
   23725              :           if (GET_CODE (x11) != CONST_INT)
   23726              :             return -1;
   23727              :           x7 = XVECEXP (x1, 0, 1);
   23728              :           if (GET_CODE (x7) != CLOBBER
   23729              :               || pattern838 (x1) != 0)
   23730              :             return -1;
   23731              :           x12 = XEXP (x7, 0);
   23732              :           operands[3] = x12;
   23733              :           x13 = XEXP (x9, 0);
   23734              :           switch (GET_CODE (x13))
   23735              :             {
   23736              :             case SIGN_EXTEND:
   23737              :               switch (pattern1508 (x3, 
   23738              : SIGN_EXTEND))
   23739              :                 {
   23740              :                 case 0:
   23741              :                   if (!
   23742              : #line 11517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23743              : (TARGET_64BIT
   23744              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23745              :                     return -1;
   23746              :                   return 661; /* *smuldi3_highpart_1 */
   23747              : 
   23748              :                 case 1:
   23749              :                   if (!
   23750              : #line 11566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23751              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23752              :                     return -1;
   23753              :                   return 665; /* *smulsi3_highpart_1 */
   23754              : 
   23755              :                 default:
   23756              :                   return -1;
   23757              :                 }
   23758              : 
   23759              :             case ZERO_EXTEND:
   23760              :               switch (pattern1508 (x3, 
   23761              : ZERO_EXTEND))
   23762              :                 {
   23763              :                 case 0:
   23764              :                   if (!
   23765              : #line 11517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23766              : (TARGET_64BIT
   23767              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23768              :                     return -1;
   23769              :                   return 662; /* *umuldi3_highpart_1 */
   23770              : 
   23771              :                 case 1:
   23772              :                   if (!
   23773              : #line 11566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23774              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   23775              :                     return -1;
   23776              :                   return 666; /* *umulsi3_highpart_1 */
   23777              : 
   23778              :                 default:
   23779              :                   return -1;
   23780              :                 }
   23781              : 
   23782              :             default:
   23783              :               return -1;
   23784              :             }
   23785              : 
   23786              :         case DIV:
   23787              :           switch (pattern224 (x1))
   23788              :             {
   23789              :             case 0:
   23790              :               switch (pattern1342 (x1, pnum_clobbers))
   23791              :                 {
   23792              :                 case 0:
   23793              :                   *pnum_clobbers = 1;
   23794              :                   return 667; /* divmodsi4_1 */
   23795              : 
   23796              :                 case 1:
   23797              :                   if (!
   23798              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23799              : (TARGET_64BIT))
   23800              :                     return -1;
   23801              :                   *pnum_clobbers = 1;
   23802              :                   return 668; /* divmoddi4_1 */
   23803              : 
   23804              :                 case 2:
   23805              :                   if (!
   23806              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23807              : (TARGET_HIMODE_MATH))
   23808              :                     return -1;
   23809              :                   return 675; /* *divmodhi4 */
   23810              : 
   23811              :                 case 3:
   23812              :                   return 676; /* *divmodsi4 */
   23813              : 
   23814              :                 case 4:
   23815              :                   if (!
   23816              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23817              : (TARGET_64BIT))
   23818              :                     return -1;
   23819              :                   return 677; /* *divmoddi4 */
   23820              : 
   23821              :                 case 5:
   23822              :                   if ((
   23823              : #line 12194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23824              : (TARGET_APX_NF) && 
   23825              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23826              : (TARGET_HIMODE_MATH)))
   23827              :                     return 689; /* *divmodhi4_noext_nf */
   23828              :                   if (pnum_clobbers == NULL
   23829              :                       || !
   23830              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23831              : (TARGET_HIMODE_MATH))
   23832              :                     return -1;
   23833              :                   *pnum_clobbers = 1;
   23834              :                   return 695; /* *divmodhi4_noext */
   23835              : 
   23836              :                 case 6:
   23837              :                   if (
   23838              : #line 12194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23839              : (TARGET_APX_NF))
   23840              :                     return 691; /* *divmodsi4_noext_nf */
   23841              :                   if (pnum_clobbers == NULL)
   23842              :                     return -1;
   23843              :                   *pnum_clobbers = 1;
   23844              :                   return 697; /* *divmodsi4_noext */
   23845              : 
   23846              :                 case 7:
   23847              :                   if ((
   23848              : #line 12194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23849              : (TARGET_APX_NF) && 
   23850              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23851              : (TARGET_64BIT)))
   23852              :                     return 693; /* *divmoddi4_noext_nf */
   23853              :                   if (pnum_clobbers == NULL
   23854              :                       || !
   23855              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23856              : (TARGET_64BIT))
   23857              :                     return -1;
   23858              :                   *pnum_clobbers = 1;
   23859              :                   return 699; /* *divmoddi4_noext */
   23860              : 
   23861              :                 default:
   23862              :                   return -1;
   23863              :                 }
   23864              : 
   23865              :             case 1:
   23866              :               if (!const_int_operand (operands[2], E_SImode))
   23867              :                 return -1;
   23868              :               x4 = XVECEXP (x1, 0, 2);
   23869              :               if (pattern953 (x4, 
   23870              : E_CCmode, 
   23871              : 17) != 0
   23872              :                   || pattern1504 (x1) != 0
   23873              :                   || !
   23874              : #line 12250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23875              : (!optimize_function_for_size_p (cfun)))
   23876              :                 return -1;
   23877              :               return 705; /* *divmodsi4_const */
   23878              : 
   23879              :             default:
   23880              :               return -1;
   23881              :             }
   23882              : 
   23883              :         case UDIV:
   23884              :           switch (pattern225 (x1))
   23885              :             {
   23886              :             case 0:
   23887              :               switch (pattern1342 (x1, pnum_clobbers))
   23888              :                 {
   23889              :                 case 0:
   23890              :                   *pnum_clobbers = 1;
   23891              :                   return 669; /* udivmodsi4_1 */
   23892              : 
   23893              :                 case 1:
   23894              :                   if (!
   23895              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23896              : (TARGET_64BIT))
   23897              :                     return -1;
   23898              :                   *pnum_clobbers = 1;
   23899              :                   return 670; /* udivmoddi4_1 */
   23900              : 
   23901              :                 case 2:
   23902              :                   if (!
   23903              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23904              : (TARGET_HIMODE_MATH))
   23905              :                     return -1;
   23906              :                   return 678; /* *udivmodhi4 */
   23907              : 
   23908              :                 case 3:
   23909              :                   return 679; /* *udivmodsi4 */
   23910              : 
   23911              :                 case 4:
   23912              :                   if (!
   23913              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23914              : (TARGET_64BIT))
   23915              :                     return -1;
   23916              :                   return 680; /* *udivmoddi4 */
   23917              : 
   23918              :                 case 5:
   23919              :                   if ((
   23920              : #line 12194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23921              : (TARGET_APX_NF) && 
   23922              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23923              : (TARGET_HIMODE_MATH)))
   23924              :                     return 690; /* *udivmodhi4_noext_nf */
   23925              :                   if (pnum_clobbers == NULL
   23926              :                       || !
   23927              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23928              : (TARGET_HIMODE_MATH))
   23929              :                     return -1;
   23930              :                   *pnum_clobbers = 1;
   23931              :                   return 696; /* *udivmodhi4_noext */
   23932              : 
   23933              :                 case 6:
   23934              :                   if (
   23935              : #line 12194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23936              : (TARGET_APX_NF))
   23937              :                     return 692; /* *udivmodsi4_noext_nf */
   23938              :                   if (pnum_clobbers == NULL)
   23939              :                     return -1;
   23940              :                   *pnum_clobbers = 1;
   23941              :                   return 698; /* *udivmodsi4_noext */
   23942              : 
   23943              :                 case 7:
   23944              :                   if ((
   23945              : #line 12194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23946              : (TARGET_APX_NF) && 
   23947              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23948              : (TARGET_64BIT)))
   23949              :                     return 694; /* *udivmoddi4_noext_nf */
   23950              :                   if (pnum_clobbers == NULL
   23951              :                       || !
   23952              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23953              : (TARGET_64BIT))
   23954              :                     return -1;
   23955              :                   *pnum_clobbers = 1;
   23956              :                   return 700; /* *udivmoddi4_noext */
   23957              : 
   23958              :                 default:
   23959              :                   return -1;
   23960              :                 }
   23961              : 
   23962              :             case 1:
   23963              :               x4 = XVECEXP (x1, 0, 2);
   23964              :               if (pattern953 (x4, 
   23965              : E_CCmode, 
   23966              : 17) != 0)
   23967              :                 return -1;
   23968              :               switch (GET_MODE (operands[0]))
   23969              :                 {
   23970              :                 case E_SImode:
   23971              :                   if (pattern1505 (x1, 
   23972              : E_SImode) != 0
   23973              :                       || !
   23974              : #line 12003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23975              : (IN_RANGE (exact_log2 (UINTVAL (operands[3])), 1, 31)))
   23976              :                     return -1;
   23977              :                   return 681; /* *udivmodsi4_pow2 */
   23978              : 
   23979              :                 case E_DImode:
   23980              :                   if (pattern1505 (x1, 
   23981              : E_DImode) != 0
   23982              :                       || !(
   23983              : #line 12003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23984              : (IN_RANGE (exact_log2 (UINTVAL (operands[3])), 1, 31)) && 
   23985              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23986              : (TARGET_64BIT)))
   23987              :                     return -1;
   23988              :                   return 682; /* *udivmoddi4_pow2 */
   23989              : 
   23990              :                 default:
   23991              :                   return -1;
   23992              :                 }
   23993              : 
   23994              :             default:
   23995              :               return -1;
   23996              :             }
   23997              : 
   23998              :         case ABS:
   23999              :           switch (pattern227 (x1))
   24000              :             {
   24001              :             case 0:
   24002              :               if (!
   24003              : #line 15179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24004              : (TARGET_AVX512FP16))
   24005              :                 return -1;
   24006              :               return 1048; /* *abshf2_1 */
   24007              : 
   24008              :             case 1:
   24009              :               if (!
   24010              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24011              : (TARGET_80387 || (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   24012              :                 return -1;
   24013              :               return 1050; /* *abssf2_1 */
   24014              : 
   24015              :             case 2:
   24016              :               if (!
   24017              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24018              : (TARGET_80387 || (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   24019              :                 return -1;
   24020              :               return 1052; /* *absdf2_1 */
   24021              : 
   24022              :             default:
   24023              :               return -1;
   24024              :             }
   24025              : 
   24026              :         case NEG:
   24027              :           switch (pattern227 (x1))
   24028              :             {
   24029              :             case 0:
   24030              :               if (!
   24031              : #line 15179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24032              : (TARGET_AVX512FP16))
   24033              :                 return -1;
   24034              :               return 1049; /* *neghf2_1 */
   24035              : 
   24036              :             case 1:
   24037              :               if (!
   24038              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24039              : (TARGET_80387 || (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   24040              :                 return -1;
   24041              :               return 1051; /* *negsf2_1 */
   24042              : 
   24043              :             case 2:
   24044              :               if (!
   24045              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24046              : (TARGET_80387 || (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   24047              :                 return -1;
   24048              :               return 1053; /* *negdf2_1 */
   24049              : 
   24050              :             default:
   24051              :               return -1;
   24052              :             }
   24053              : 
   24054              :         case ROTATE:
   24055              :           switch (pattern229 (x1))
   24056              :             {
   24057              :             case 0:
   24058              :               if (!
   24059              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24060              : (!TARGET_64BIT))
   24061              :                 return -1;
   24062              :               return 1364; /* ix86_rotldi3_doubleword */
   24063              : 
   24064              :             case 1:
   24065              :               if (!
   24066              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24067              : (TARGET_64BIT))
   24068              :                 return -1;
   24069              :               return 1365; /* ix86_rotlti3_doubleword */
   24070              : 
   24071              :             default:
   24072              :               return -1;
   24073              :             }
   24074              : 
   24075              :         case ROTATERT:
   24076              :           switch (pattern229 (x1))
   24077              :             {
   24078              :             case 0:
   24079              :               if (!
   24080              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24081              : (!TARGET_64BIT))
   24082              :                 return -1;
   24083              :               return 1366; /* ix86_rotrdi3_doubleword */
   24084              : 
   24085              :             case 1:
   24086              :               if (!
   24087              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24088              : (TARGET_64BIT))
   24089              :                 return -1;
   24090              :               return 1367; /* ix86_rotrti3_doubleword */
   24091              : 
   24092              :             default:
   24093              :               return -1;
   24094              :             }
   24095              : 
   24096              :         case CALL:
   24097              :           return recog_434 (x1, insn, pnum_clobbers);
   24098              : 
   24099              :         case PLUS:
   24100              :           x4 = XVECEXP (x1, 0, 2);
   24101              :           if (pattern230 (x4) != 0)
   24102              :             return -1;
   24103              :           x6 = XEXP (x3, 0);
   24104              :           if (GET_CODE (x6) == REG
   24105              :               && REGNO (x6) == 6)
   24106              :             {
   24107              :               x14 = XEXP (x3, 1);
   24108              :               if (GET_CODE (x14) == CONST_INT)
   24109              :                 {
   24110              :                   x5 = XEXP (x2, 0);
   24111              :                   if (GET_CODE (x5) == REG
   24112              :                       && REGNO (x5) == 7)
   24113              :                     {
   24114              :                       x7 = XVECEXP (x1, 0, 1);
   24115              :                       if (pattern720 (x7, 
   24116              : 6, 
   24117              : MEM) == 0)
   24118              :                         {
   24119              :                           switch (XWINT (x14, 0))
   24120              :                             {
   24121              :                             case 4L:
   24122              :                               if (pattern1704 (x1, 
   24123              : E_SImode) == 0
   24124              :                                   && 
   24125              : #line 21233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24126              : (!TARGET_64BIT))
   24127              :                                 return 1536; /* *leave */
   24128              :                               break;
   24129              : 
   24130              :                             case 8L:
   24131              :                               if (pattern1704 (x1, 
   24132              : E_DImode) == 0
   24133              :                                   && 
   24134              : #line 21241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24135              : (TARGET_64BIT))
   24136              :                                 return 1537; /* *leave_rex64 */
   24137              :                               break;
   24138              : 
   24139              :                             default:
   24140              :                               break;
   24141              :                             }
   24142              :                         }
   24143              :                     }
   24144              :                 }
   24145              :             }
   24146              :           x7 = XVECEXP (x1, 0, 1);
   24147              :           if (GET_CODE (x7) != CLOBBER)
   24148              :             return -1;
   24149              :           x12 = XEXP (x7, 0);
   24150              :           if (GET_CODE (x12) != REG
   24151              :               || REGNO (x12) != 17
   24152              :               || GET_MODE (x12) != E_CCmode)
   24153              :             return -1;
   24154              :           x5 = XEXP (x2, 0);
   24155              :           operands[0] = x5;
   24156              :           operands[1] = x6;
   24157              :           x14 = XEXP (x3, 1);
   24158              :           operands[2] = x14;
   24159              :           switch (GET_MODE (operands[0]))
   24160              :             {
   24161              :             case E_SImode:
   24162              :               if (pattern1434 (x3, 
   24163              : E_SImode) != 0
   24164              :                   || !
   24165              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24166              : (Pmode == SImode))
   24167              :                 return -1;
   24168              :               return 1907; /* pro_epilogue_adjust_stack_add_si */
   24169              : 
   24170              :             case E_DImode:
   24171              :               if (pattern1434 (x3, 
   24172              : E_DImode) != 0
   24173              :                   || !
   24174              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24175              : (Pmode == DImode))
   24176              :                 return -1;
   24177              :               return 1908; /* pro_epilogue_adjust_stack_add_di */
   24178              : 
   24179              :             default:
   24180              :               return -1;
   24181              :             }
   24182              : 
   24183              :         case FFS:
   24184              :           if (GET_MODE (x3) != E_SImode)
   24185              :             return -1;
   24186              :           x7 = XVECEXP (x1, 0, 1);
   24187              :           if (GET_CODE (x7) != CLOBBER)
   24188              :             return -1;
   24189              :           x4 = XVECEXP (x1, 0, 2);
   24190              :           if (GET_CODE (x4) != CLOBBER
   24191              :               || pattern719 (x1) != 0
   24192              :               || !
   24193              : #line 21336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24194              : (!TARGET_CMOVE))
   24195              :             return -1;
   24196              :           return 1539; /* ffssi2_no_cmove */
   24197              : 
   24198              :         case COMPARE:
   24199              :           return recog_435 (x1, insn, pnum_clobbers);
   24200              : 
   24201              :         case CTZ:
   24202              :           switch (pattern234 (x1))
   24203              :             {
   24204              :             case 0:
   24205              :               return 1548; /* *ctzsi2_falsedep */
   24206              : 
   24207              :             case 1:
   24208              :               if (!
   24209              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24210              : (TARGET_64BIT))
   24211              :                 return -1;
   24212              :               return 1549; /* *ctzdi2_falsedep */
   24213              : 
   24214              :             default:
   24215              :               return -1;
   24216              :             }
   24217              : 
   24218              :         case AND:
   24219              :           if (GET_MODE (x3) != E_DImode)
   24220              :             return -1;
   24221              :           x6 = XEXP (x3, 0);
   24222              :           if (GET_CODE (x6) != SUBREG
   24223              :               || maybe_ne (SUBREG_BYTE (x6), 0)
   24224              :               || GET_MODE (x6) != E_DImode)
   24225              :             return -1;
   24226              :           x14 = XEXP (x3, 1);
   24227              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   24228              :             return -1;
   24229              :           x7 = XVECEXP (x1, 0, 1);
   24230              :           if (GET_CODE (x7) != UNSPEC
   24231              :               || XVECLEN (x7, 0) != 1
   24232              :               || XINT (x7, 1) != 39
   24233              :               || pattern838 (x1) != 0
   24234              :               || !register_operand (operands[0], E_DImode))
   24235              :             return -1;
   24236              :           x9 = XEXP (x6, 0);
   24237              :           if (GET_MODE (x9) != E_SImode)
   24238              :             return -1;
   24239              :           x10 = XVECEXP (x7, 0, 0);
   24240              :           operands[2] = x10;
   24241              :           if (!register_operand (operands[2], E_DImode))
   24242              :             return -1;
   24243              :           switch (GET_CODE (x9))
   24244              :             {
   24245              :             case CTZ:
   24246              :               x13 = XEXP (x9, 0);
   24247              :               operands[1] = x13;
   24248              :               if (!nonimmediate_operand (operands[1], E_SImode)
   24249              :                   || !
   24250              : #line 21519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24251              : (TARGET_BMI && TARGET_64BIT))
   24252              :                 return -1;
   24253              :               return 1551; /* *ctzsi2_zext_falsedep */
   24254              : 
   24255              :             case CLZ:
   24256              :               x13 = XEXP (x9, 0);
   24257              :               operands[1] = x13;
   24258              :               switch (GET_MODE (operands[1]))
   24259              :                 {
   24260              :                 case E_SImode:
   24261              :                   if (!nonimmediate_operand (operands[1], E_SImode)
   24262              :                       || !
   24263              : #line 21957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24264              : (TARGET_LZCNT))
   24265              :                     return -1;
   24266              :                   return 1575; /* *clzsi2_lzcnt_zext_falsedep */
   24267              : 
   24268              :                 case E_DImode:
   24269              :                   if (!nonimmediate_operand (operands[1], E_DImode)
   24270              :                       || !(
   24271              : #line 21957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24272              : (TARGET_LZCNT) && 
   24273              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24274              : (TARGET_64BIT)))
   24275              :                     return -1;
   24276              :                   return 1576; /* *clzsi2_lzcnt_zext_falsedep */
   24277              : 
   24278              :                 default:
   24279              :                   return -1;
   24280              :                 }
   24281              : 
   24282              :             case POPCOUNT:
   24283              :               x13 = XEXP (x9, 0);
   24284              :               operands[1] = x13;
   24285              :               if (!nonimmediate_operand (operands[1], E_SImode)
   24286              :                   || !
   24287              : #line 22788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24288              : (TARGET_POPCNT && TARGET_64BIT))
   24289              :                 return -1;
   24290              :               return 1667; /* *popcountsi2_zext_falsedep */
   24291              : 
   24292              :             default:
   24293              :               return -1;
   24294              :             }
   24295              : 
   24296              :         case CLZ:
   24297              :           switch (pattern234 (x1))
   24298              :             {
   24299              :             case 0:
   24300              :               if (!
   24301              : #line 21914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24302              : (TARGET_LZCNT))
   24303              :                 return -1;
   24304              :               return 1572; /* *clzsi2_lzcnt_falsedep */
   24305              : 
   24306              :             case 1:
   24307              :               if (!(
   24308              : #line 21914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24309              : (TARGET_LZCNT) && 
   24310              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24311              : (TARGET_64BIT)))
   24312              :                 return -1;
   24313              :               return 1573; /* *clzdi2_lzcnt_falsedep */
   24314              : 
   24315              :             default:
   24316              :               return -1;
   24317              :             }
   24318              : 
   24319              :         case XOR:
   24320              :           x6 = XEXP (x3, 0);
   24321              :           if (GET_CODE (x6) != PLUS)
   24322              :             return -1;
   24323              :           x11 = XEXP (x6, 1);
   24324              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   24325              :             return -1;
   24326              :           x7 = XVECEXP (x1, 0, 1);
   24327              :           if (pattern236 (x7, 
   24328              : E_CCmode, 
   24329              : 17) != 0)
   24330              :             return -1;
   24331              :           x4 = XVECEXP (x1, 0, 2);
   24332              :           if (GET_CODE (x4) != UNSPEC
   24333              :               || XVECLEN (x4, 0) != 1
   24334              :               || XINT (x4, 1) != 39)
   24335              :             return -1;
   24336              :           x5 = XEXP (x2, 0);
   24337              :           operands[0] = x5;
   24338              :           x9 = XEXP (x6, 0);
   24339              :           operands[1] = x9;
   24340              :           x15 = XVECEXP (x4, 0, 0);
   24341              :           operands[2] = x15;
   24342              :           x14 = XEXP (x3, 1);
   24343              :           if (!rtx_equal_p (x14, operands[1]))
   24344              :             return -1;
   24345              :           switch (GET_MODE (operands[0]))
   24346              :             {
   24347              :             case E_SImode:
   24348              :               if (pattern1643 (x3, 
   24349              : E_SImode) != 0
   24350              :                   || !
   24351              : #line 22264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24352              : (TARGET_BMI))
   24353              :                 return -1;
   24354              :               return 1614; /* *bmi_blsmsk_si_falsedep */
   24355              : 
   24356              :             case E_DImode:
   24357              :               if (pattern1643 (x3, 
   24358              : E_DImode) != 0
   24359              :                   || !(
   24360              : #line 22264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24361              : (TARGET_BMI) && 
   24362              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24363              : (TARGET_64BIT)))
   24364              :                 return -1;
   24365              :               return 1615; /* *bmi_blsmsk_di_falsedep */
   24366              : 
   24367              :             default:
   24368              :               return -1;
   24369              :             }
   24370              : 
   24371              :         case POPCOUNT:
   24372              :           switch (pattern234 (x1))
   24373              :             {
   24374              :             case 0:
   24375              :               if (!
   24376              : #line 22733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24377              : (TARGET_POPCNT))
   24378              :                 return -1;
   24379              :               return 1664; /* *popcountsi2_falsedep */
   24380              : 
   24381              :             case 1:
   24382              :               if (!(
   24383              : #line 22733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24384              : (TARGET_POPCNT) && 
   24385              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24386              : (TARGET_64BIT)))
   24387              :                 return -1;
   24388              :               return 1665; /* *popcountdi2_falsedep */
   24389              : 
   24390              :             default:
   24391              :               return -1;
   24392              :             }
   24393              : 
   24394              :         case MEM:
   24395              :           return recog_436 (x1, insn, pnum_clobbers);
   24396              : 
   24397              :         case REG:
   24398              :         case SUBREG:
   24399              :           operands[2] = x3;
   24400              :           if (pattern235 (x1) != 0)
   24401              :             return -1;
   24402              :           x4 = XVECEXP (x1, 0, 2);
   24403              :           if (pattern385 (x4, 
   24404              : 37) != 0)
   24405              :             return -1;
   24406              :           x5 = XEXP (x2, 0);
   24407              :           x16 = XEXP (x5, 0);
   24408              :           operands[1] = x16;
   24409              :           x7 = XVECEXP (x1, 0, 1);
   24410              :           x12 = XEXP (x7, 0);
   24411              :           operands[0] = x12;
   24412              :           x17 = XEXP (x7, 1);
   24413              :           x18 = XEXP (x17, 0);
   24414              :           if (!rtx_equal_p (x18, operands[1]))
   24415              :             return -1;
   24416              :           x19 = XEXP (x17, 1);
   24417              :           switch (XWINT (x19, 0))
   24418              :             {
   24419              :             case 8L:
   24420              :               switch (pattern1586 (x1, 
   24421              : E_DImode))
   24422              :                 {
   24423              :                 case 0:
   24424              :                   if (!(
   24425              : #line 26277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24426              : (TARGET_64BIT
   24427              :    && !(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24428              :    && ADDR_SPACE_GENERIC_P
   24429              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24430              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24431              : (Pmode == SImode)))
   24432              :                     return -1;
   24433              :                   return 1809; /* *strsetdi_rex_1 */
   24434              : 
   24435              :                 case 1:
   24436              :                   if (!(
   24437              : #line 26277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24438              : (TARGET_64BIT
   24439              :    && !(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24440              :    && ADDR_SPACE_GENERIC_P
   24441              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24442              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24443              : (Pmode == DImode)))
   24444              :                     return -1;
   24445              :                   return 1810; /* *strsetdi_rex_1 */
   24446              : 
   24447              :                 default:
   24448              :                   return -1;
   24449              :                 }
   24450              : 
   24451              :             case 4L:
   24452              :               switch (pattern1586 (x1, 
   24453              : E_SImode))
   24454              :                 {
   24455              :                 case 0:
   24456              :                   if (!(
   24457              : #line 26293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24458              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24459              :    && ADDR_SPACE_GENERIC_P
   24460              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24461              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24462              : (Pmode == SImode)))
   24463              :                     return -1;
   24464              :                   return 1811; /* *strsetsi_1 */
   24465              : 
   24466              :                 case 1:
   24467              :                   if (!(
   24468              : #line 26293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24469              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24470              :    && ADDR_SPACE_GENERIC_P
   24471              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24472              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24473              : (Pmode == DImode)))
   24474              :                     return -1;
   24475              :                   return 1812; /* *strsetsi_1 */
   24476              : 
   24477              :                 default:
   24478              :                   return -1;
   24479              :                 }
   24480              : 
   24481              :             case 2L:
   24482              :               switch (pattern1586 (x1, 
   24483              : E_HImode))
   24484              :                 {
   24485              :                 case 0:
   24486              :                   if (!(
   24487              : #line 26308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24488              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24489              :    && ADDR_SPACE_GENERIC_P
   24490              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24491              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24492              : (Pmode == SImode)))
   24493              :                     return -1;
   24494              :                   return 1813; /* *strsethi_1 */
   24495              : 
   24496              :                 case 1:
   24497              :                   if (!(
   24498              : #line 26308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24499              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24500              :    && ADDR_SPACE_GENERIC_P
   24501              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24502              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24503              : (Pmode == DImode)))
   24504              :                     return -1;
   24505              :                   return 1814; /* *strsethi_1 */
   24506              : 
   24507              :                 default:
   24508              :                   return -1;
   24509              :                 }
   24510              : 
   24511              :             case 1L:
   24512              :               switch (pattern1586 (x1, 
   24513              : E_QImode))
   24514              :                 {
   24515              :                 case 0:
   24516              :                   if (!(
   24517              : #line 26323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24518              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24519              :    && ADDR_SPACE_GENERIC_P
   24520              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24521              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24522              : (Pmode == SImode)))
   24523              :                     return -1;
   24524              :                   return 1815; /* *strsetqi_1 */
   24525              : 
   24526              :                 case 1:
   24527              :                   if (!(
   24528              : #line 26323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24529              : (!(fixed_regs[AX_REG] || fixed_regs[DI_REG])
   24530              :    && ADDR_SPACE_GENERIC_P
   24531              :         (MEM_ADDR_SPACE (SET_DEST (XVECEXP (PATTERN (insn), 0, 0))))) && 
   24532              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24533              : (Pmode == DImode)))
   24534              :                     return -1;
   24535              :                   return 1816; /* *strsetqi_1 */
   24536              : 
   24537              :                 default:
   24538              :                   return -1;
   24539              :                 }
   24540              : 
   24541              :             default:
   24542              :               return -1;
   24543              :             }
   24544              : 
   24545              :         case MINUS:
   24546              :           x7 = XVECEXP (x1, 0, 1);
   24547              :           if (pattern236 (x7, 
   24548              : E_CCmode, 
   24549              : 17) != 0)
   24550              :             return -1;
   24551              :           x4 = XVECEXP (x1, 0, 2);
   24552              :           if (pattern230 (x4) != 0)
   24553              :             return -1;
   24554              :           x5 = XEXP (x2, 0);
   24555              :           operands[0] = x5;
   24556              :           x6 = XEXP (x3, 0);
   24557              :           operands[1] = x6;
   24558              :           x14 = XEXP (x3, 1);
   24559              :           operands[2] = x14;
   24560              :           switch (GET_MODE (operands[0]))
   24561              :             {
   24562              :             case E_SImode:
   24563              :               if (pattern570 (x3, 
   24564              : E_SImode) != 0
   24565              :                   || !
   24566              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24567              : (Pmode == SImode))
   24568              :                 return -1;
   24569              :               return 1911; /* pro_epilogue_adjust_stack_sub_si */
   24570              : 
   24571              :             case E_DImode:
   24572              :               if (pattern570 (x3, 
   24573              : E_DImode) != 0
   24574              :                   || !
   24575              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24576              : (Pmode == DImode))
   24577              :                 return -1;
   24578              :               return 1912; /* pro_epilogue_adjust_stack_sub_di */
   24579              : 
   24580              :             default:
   24581              :               return -1;
   24582              :             }
   24583              : 
   24584              :         case UNSPEC_VOLATILE:
   24585              :           return recog_433 (x1, insn, pnum_clobbers);
   24586              : 
   24587              :         default:
   24588              :           return -1;
   24589              :         }
   24590              : 
   24591              :     case CALL:
   24592              :       x5 = XEXP (x2, 0);
   24593              :       if (GET_CODE (x5) != MEM
   24594              :           || GET_MODE (x5) != E_QImode
   24595              :           || pattern386 (x1) != 0)
   24596              :         return -1;
   24597              :       x16 = XEXP (x5, 0);
   24598              :       operands[0] = x16;
   24599              :       if (!memory_operand (operands[0], E_SImode))
   24600              :         return -1;
   24601              :       x3 = XEXP (x2, 1);
   24602              :       operands[1] = x3;
   24603              :       x7 = XVECEXP (x1, 0, 1);
   24604              :       x17 = XEXP (x7, 1);
   24605              :       x19 = XEXP (x17, 1);
   24606              :       operands[2] = x19;
   24607              :       if (!immediate_operand (operands[2], E_SImode)
   24608              :           || !
   24609              : #line 20615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24610              : (!TARGET_64BIT && !TARGET_INDIRECT_BRANCH_REGISTER))
   24611              :         return -1;
   24612              :       return 1506; /* *sibcall_pop_memory */
   24613              : 
   24614              :     default:
   24615              :       return -1;
   24616              :     }
   24617              : }
   24618              : 
   24619              :  rtx_insn *
   24620              : split_22 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24621              : {
   24622              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24623              :   rtx x2, x3, x4, x5, x6, x7, x8;
   24624              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24625              :   x2 = XVECEXP (x1, 0, 0);
   24626              :   x3 = XEXP (x2, 1);
   24627              :   x4 = XEXP (x3, 0);
   24628              :   x5 = XEXP (x4, 0);
   24629              :   switch (GET_CODE (x5))
   24630              :     {
   24631              :     case REG:
   24632              :     case SUBREG:
   24633              :       operands[1] = x5;
   24634              :       if (!register_operand (operands[1], E_SImode))
   24635              :         return NULL;
   24636              :       x6 = XEXP (x2, 0);
   24637              :       operands[0] = x6;
   24638              :       if (!register_operand (operands[0], E_DImode)
   24639              :           || GET_MODE (x3) != E_DImode
   24640              :           || GET_MODE (x4) != E_DImode)
   24641              :         return NULL;
   24642              :       x7 = XEXP (x3, 1);
   24643              :       operands[2] = x7;
   24644              :       if (!x86_64_zext_immediate_operand (operands[2], E_DImode)
   24645              :           || !
   24646              : #line 12940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24647              : (TARGET_64BIT))
   24648              :         return NULL;
   24649              :       return gen_split_292 (insn, operands);
   24650              : 
   24651              :     case ASHIFTRT:
   24652              :     case LSHIFTRT:
   24653              :     case SIGN_EXTRACT:
   24654              :     case ZERO_EXTRACT:
   24655              :       operands[3] = x5;
   24656              :       if (GET_MODE (x3) != E_QImode
   24657              :           || GET_MODE (x4) != E_QImode)
   24658              :         return NULL;
   24659              :       x8 = XEXP (x5, 0);
   24660              :       if (!int248_register_operand (x8, E_VOIDmode))
   24661              :         return NULL;
   24662              :       operands[2] = x8;
   24663              :       switch (pattern1644 (x2))
   24664              :         {
   24665              :         case 0:
   24666              :           if ((
   24667              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24668              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24669              : #line 13112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24670              : ( reload_completed
   24671              :    && !rtx_equal_p (operands[0], operands[1]))))
   24672              :             return gen_split_299 (insn, operands);
   24673              :           break;
   24674              : 
   24675              :         case 1:
   24676              :           if ((
   24677              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24678              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24679              : #line 13112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24680              : ( reload_completed
   24681              :    && !rtx_equal_p (operands[0], operands[1]))))
   24682              :             return gen_split_302 (insn, operands);
   24683              :           break;
   24684              : 
   24685              :         case 2:
   24686              :           if (((
   24687              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24688              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24689              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24690              : (TARGET_64BIT)) && 
   24691              : #line 13112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24692              : ( reload_completed
   24693              :    && !rtx_equal_p (operands[0], operands[1]))))
   24694              :             return gen_split_305 (insn, operands);
   24695              :           break;
   24696              : 
   24697              :         default:
   24698              :           break;
   24699              :         }
   24700              :       operands[1] = x8;
   24701              :       switch (pattern1645 (x2))
   24702              :         {
   24703              :         case 0:
   24704              :           if (!(
   24705              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24706              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24707              : #line 13139 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24708              : ( reload_completed)))
   24709              :             return NULL;
   24710              :           return gen_split_308 (insn, operands);
   24711              : 
   24712              :         case 1:
   24713              :           if (!(
   24714              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24715              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24716              : #line 13139 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24717              : ( reload_completed)))
   24718              :             return NULL;
   24719              :           return gen_split_311 (insn, operands);
   24720              : 
   24721              :         case 2:
   24722              :           if (!((
   24723              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24724              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24725              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24726              : (TARGET_64BIT)) && 
   24727              : #line 13139 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24728              : ( reload_completed)))
   24729              :             return NULL;
   24730              :           return gen_split_314 (insn, operands);
   24731              : 
   24732              :         case 3:
   24733              :           if (!
   24734              : #line 13374 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24735              : ( reload_completed))
   24736              :             return NULL;
   24737              :           return gen_split_328 (insn, operands);
   24738              : 
   24739              :         case 4:
   24740              :           if (!
   24741              : #line 13374 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24742              : ( reload_completed))
   24743              :             return NULL;
   24744              :           return gen_split_331 (insn, operands);
   24745              : 
   24746              :         case 5:
   24747              :           if (!(
   24748              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24749              : (TARGET_64BIT) && 
   24750              : #line 13374 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24751              : ( reload_completed)))
   24752              :             return NULL;
   24753              :           return gen_split_334 (insn, operands);
   24754              : 
   24755              :         default:
   24756              :           return NULL;
   24757              :         }
   24758              : 
   24759              :     case ROTATE:
   24760              :       if (GET_MODE (x5) != E_SImode)
   24761              :         return NULL;
   24762              :       x8 = XEXP (x5, 0);
   24763              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
   24764              :         return NULL;
   24765              :       switch (pattern1443 (x2))
   24766              :         {
   24767              :         case 0:
   24768              :           if (!(
   24769              : #line 19302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24770              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   24771              : #line 19304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24772              : ( 1)))
   24773              :             return NULL;
   24774              :           return gen_split_814 (insn, operands);
   24775              : 
   24776              :         case 1:
   24777              :           if (!(
   24778              : #line 19302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24779              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   24780              : #line 19304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24781              : ( 1)))
   24782              :             return NULL;
   24783              :           return gen_split_815 (insn, operands);
   24784              : 
   24785              :         default:
   24786              :           return NULL;
   24787              :         }
   24788              : 
   24789              :     default:
   24790              :       return NULL;
   24791              :     }
   24792              : }
   24793              : 
   24794              :  rtx_insn *
   24795              : split_28 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24796              : {
   24797              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24798              :   rtx x2, x3, x4, x5, x6, x7;
   24799              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24800              :   x2 = XVECEXP (x1, 0, 0);
   24801              :   x3 = XEXP (x2, 1);
   24802              :   if (maybe_ne (SUBREG_BYTE (x3), 0))
   24803              :     return NULL;
   24804              :   x4 = XVECEXP (x1, 0, 1);
   24805              :   if (pattern236 (x4, 
   24806              : E_CCmode, 
   24807              : 17) != 0)
   24808              :     return NULL;
   24809              :   switch (pattern1047 (x2))
   24810              :     {
   24811              :     case 0:
   24812              :       x5 = XEXP (x3, 0);
   24813              :       x6 = XEXP (x5, 1);
   24814              :       operands[2] = x6;
   24815              :       if (general_operand (operands[2], E_QImode))
   24816              :         {
   24817              :           switch (pattern1045 (x2))
   24818              :             {
   24819              :             case 0:
   24820              :               if (
   24821              : #line 7586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24822              : (reload_completed
   24823              :    && !rtx_equal_p (operands[0], operands[1])))
   24824              :                 return gen_split_143 (insn, operands);
   24825              :               break;
   24826              : 
   24827              :             case 1:
   24828              :               if (
   24829              : #line 7586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24830              : (reload_completed
   24831              :    && !rtx_equal_p (operands[0], operands[1])))
   24832              :                 return gen_split_144 (insn, operands);
   24833              :               break;
   24834              : 
   24835              :             case 2:
   24836              :               if ((
   24837              : #line 7586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24838              : (reload_completed
   24839              :    && !rtx_equal_p (operands[0], operands[1])) && 
   24840              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24841              : (TARGET_64BIT)))
   24842              :                 return gen_split_145 (insn, operands);
   24843              :               break;
   24844              : 
   24845              :             default:
   24846              :               break;
   24847              :             }
   24848              :         }
   24849              :       if (GET_CODE (x6) != SUBREG)
   24850              :         return NULL;
   24851              :       switch (pattern1814 (x2))
   24852              :         {
   24853              :         case 0:
   24854              :           if (!
   24855              : #line 7629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24856              : (reload_completed
   24857              :    && !(rtx_equal_p (operands[0], operands[1])
   24858              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24859              :             return NULL;
   24860              :           return gen_split_146 (insn, operands);
   24861              : 
   24862              :         case 1:
   24863              :           if (!
   24864              : #line 7629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24865              : (reload_completed
   24866              :    && !(rtx_equal_p (operands[0], operands[1])
   24867              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24868              :             return NULL;
   24869              :           return gen_split_148 (insn, operands);
   24870              : 
   24871              :         case 2:
   24872              :           if (!(
   24873              : #line 7629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24874              : (reload_completed
   24875              :    && !(rtx_equal_p (operands[0], operands[1])
   24876              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))) && 
   24877              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24878              : (TARGET_64BIT)))
   24879              :             return NULL;
   24880              :           return gen_split_150 (insn, operands);
   24881              : 
   24882              :         default:
   24883              :           return NULL;
   24884              :         }
   24885              : 
   24886              :     case 1:
   24887              :       x5 = XEXP (x3, 0);
   24888              :       x6 = XEXP (x5, 1);
   24889              :       if (GET_CODE (x6) == SUBREG)
   24890              :         {
   24891              :           switch (pattern1814 (x2))
   24892              :             {
   24893              :             case 0:
   24894              :               if (
   24895              : #line 7629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24896              : (reload_completed
   24897              :    && !(rtx_equal_p (operands[0], operands[1])
   24898              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24899              :                 return gen_split_147 (insn, operands);
   24900              :               break;
   24901              : 
   24902              :             case 1:
   24903              :               if (
   24904              : #line 7629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24905              : (reload_completed
   24906              :    && !(rtx_equal_p (operands[0], operands[1])
   24907              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24908              :                 return gen_split_149 (insn, operands);
   24909              :               break;
   24910              : 
   24911              :             case 2:
   24912              :               if ((
   24913              : #line 7629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24914              : (reload_completed
   24915              :    && !(rtx_equal_p (operands[0], operands[1])
   24916              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))) && 
   24917              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24918              : (TARGET_64BIT)))
   24919              :                 return gen_split_151 (insn, operands);
   24920              :               break;
   24921              : 
   24922              :             default:
   24923              :               break;
   24924              :             }
   24925              :         }
   24926              :       operands[2] = x6;
   24927              :       if (!general_operand (operands[2], E_QImode))
   24928              :         return NULL;
   24929              :       switch (pattern1045 (x2))
   24930              :         {
   24931              :         case 0:
   24932              :           if (!
   24933              : #line 8394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24934              : (reload_completed
   24935              :    && !(rtx_equal_p (operands[0], operands[1]))))
   24936              :             return NULL;
   24937              :           return gen_split_189 (insn, operands);
   24938              : 
   24939              :         case 1:
   24940              :           if (!
   24941              : #line 8394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24942              : (reload_completed
   24943              :    && !(rtx_equal_p (operands[0], operands[1]))))
   24944              :             return NULL;
   24945              :           return gen_split_190 (insn, operands);
   24946              : 
   24947              :         case 2:
   24948              :           if (!(
   24949              : #line 8394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24950              : (reload_completed
   24951              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   24952              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24953              : (TARGET_64BIT)))
   24954              :             return NULL;
   24955              :           return gen_split_191 (insn, operands);
   24956              : 
   24957              :         default:
   24958              :           return NULL;
   24959              :         }
   24960              : 
   24961              :     case 2:
   24962              :       x5 = XEXP (x3, 0);
   24963              :       x6 = XEXP (x5, 1);
   24964              :       operands[2] = x6;
   24965              :       if (general_operand (operands[2], E_QImode))
   24966              :         {
   24967              :           switch (pattern1045 (x2))
   24968              :             {
   24969              :             case 0:
   24970              :               if (
   24971              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24972              : (reload_completed
   24973              :    && !(rtx_equal_p (operands[0], operands[1]))))
   24974              :                 return gen_split_337 (insn, operands);
   24975              :               break;
   24976              : 
   24977              :             case 1:
   24978              :               if (
   24979              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24980              : (reload_completed
   24981              :    && !(rtx_equal_p (operands[0], operands[1]))))
   24982              :                 return gen_split_340 (insn, operands);
   24983              :               break;
   24984              : 
   24985              :             case 2:
   24986              :               if ((
   24987              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24988              : (reload_completed
   24989              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   24990              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24991              : (TARGET_64BIT)))
   24992              :                 return gen_split_343 (insn, operands);
   24993              :               break;
   24994              : 
   24995              :             default:
   24996              :               break;
   24997              :             }
   24998              :         }
   24999              :       if (GET_CODE (x6) != SUBREG)
   25000              :         return NULL;
   25001              :       switch (pattern1814 (x2))
   25002              :         {
   25003              :         case 0:
   25004              :           if (!
   25005              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25006              : (reload_completed
   25007              :    && !(rtx_equal_p (operands[0], operands[1])
   25008              :         || rtx_equal_p (operands[0], operands[2]))))
   25009              :             return NULL;
   25010              :           return gen_split_355 (insn, operands);
   25011              : 
   25012              :         case 1:
   25013              :           if (!
   25014              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25015              : (reload_completed
   25016              :    && !(rtx_equal_p (operands[0], operands[1])
   25017              :         || rtx_equal_p (operands[0], operands[2]))))
   25018              :             return NULL;
   25019              :           return gen_split_358 (insn, operands);
   25020              : 
   25021              :         case 2:
   25022              :           if (!(
   25023              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25024              : (reload_completed
   25025              :    && !(rtx_equal_p (operands[0], operands[1])
   25026              :         || rtx_equal_p (operands[0], operands[2]))) && 
   25027              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25028              : (TARGET_64BIT)))
   25029              :             return NULL;
   25030              :           return gen_split_361 (insn, operands);
   25031              : 
   25032              :         default:
   25033              :           return NULL;
   25034              :         }
   25035              : 
   25036              :     case 3:
   25037              :       x5 = XEXP (x3, 0);
   25038              :       x6 = XEXP (x5, 1);
   25039              :       operands[2] = x6;
   25040              :       if (general_operand (operands[2], E_QImode))
   25041              :         {
   25042              :           switch (pattern1045 (x2))
   25043              :             {
   25044              :             case 0:
   25045              :               if (
   25046              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25047              : (reload_completed
   25048              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25049              :                 return gen_split_338 (insn, operands);
   25050              :               break;
   25051              : 
   25052              :             case 1:
   25053              :               if (
   25054              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25055              : (reload_completed
   25056              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25057              :                 return gen_split_341 (insn, operands);
   25058              :               break;
   25059              : 
   25060              :             case 2:
   25061              :               if ((
   25062              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25063              : (reload_completed
   25064              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25065              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25066              : (TARGET_64BIT)))
   25067              :                 return gen_split_344 (insn, operands);
   25068              :               break;
   25069              : 
   25070              :             default:
   25071              :               break;
   25072              :             }
   25073              :         }
   25074              :       if (GET_CODE (x6) != SUBREG)
   25075              :         return NULL;
   25076              :       switch (pattern1814 (x2))
   25077              :         {
   25078              :         case 0:
   25079              :           if (!
   25080              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25081              : (reload_completed
   25082              :    && !(rtx_equal_p (operands[0], operands[1])
   25083              :         || rtx_equal_p (operands[0], operands[2]))))
   25084              :             return NULL;
   25085              :           return gen_split_356 (insn, operands);
   25086              : 
   25087              :         case 1:
   25088              :           if (!
   25089              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25090              : (reload_completed
   25091              :    && !(rtx_equal_p (operands[0], operands[1])
   25092              :         || rtx_equal_p (operands[0], operands[2]))))
   25093              :             return NULL;
   25094              :           return gen_split_359 (insn, operands);
   25095              : 
   25096              :         case 2:
   25097              :           if (!(
   25098              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25099              : (reload_completed
   25100              :    && !(rtx_equal_p (operands[0], operands[1])
   25101              :         || rtx_equal_p (operands[0], operands[2]))) && 
   25102              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25103              : (TARGET_64BIT)))
   25104              :             return NULL;
   25105              :           return gen_split_362 (insn, operands);
   25106              : 
   25107              :         default:
   25108              :           return NULL;
   25109              :         }
   25110              : 
   25111              :     case 4:
   25112              :       x5 = XEXP (x3, 0);
   25113              :       x6 = XEXP (x5, 1);
   25114              :       operands[2] = x6;
   25115              :       if (general_operand (operands[2], E_QImode))
   25116              :         {
   25117              :           switch (pattern1045 (x2))
   25118              :             {
   25119              :             case 0:
   25120              :               if (
   25121              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25122              : (reload_completed
   25123              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25124              :                 return gen_split_339 (insn, operands);
   25125              :               break;
   25126              : 
   25127              :             case 1:
   25128              :               if (
   25129              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25130              : (reload_completed
   25131              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25132              :                 return gen_split_342 (insn, operands);
   25133              :               break;
   25134              : 
   25135              :             case 2:
   25136              :               if ((
   25137              : #line 13422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25138              : (reload_completed
   25139              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25140              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25141              : (TARGET_64BIT)))
   25142              :                 return gen_split_345 (insn, operands);
   25143              :               break;
   25144              : 
   25145              :             default:
   25146              :               break;
   25147              :             }
   25148              :         }
   25149              :       if (GET_CODE (x6) != SUBREG)
   25150              :         return NULL;
   25151              :       switch (pattern1814 (x2))
   25152              :         {
   25153              :         case 0:
   25154              :           if (!
   25155              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25156              : (reload_completed
   25157              :    && !(rtx_equal_p (operands[0], operands[1])
   25158              :         || rtx_equal_p (operands[0], operands[2]))))
   25159              :             return NULL;
   25160              :           return gen_split_357 (insn, operands);
   25161              : 
   25162              :         case 1:
   25163              :           if (!
   25164              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25165              : (reload_completed
   25166              :    && !(rtx_equal_p (operands[0], operands[1])
   25167              :         || rtx_equal_p (operands[0], operands[2]))))
   25168              :             return NULL;
   25169              :           return gen_split_360 (insn, operands);
   25170              : 
   25171              :         case 2:
   25172              :           if (!(
   25173              : #line 13514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25174              : (reload_completed
   25175              :    && !(rtx_equal_p (operands[0], operands[1])
   25176              :         || rtx_equal_p (operands[0], operands[2]))) && 
   25177              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25178              : (TARGET_64BIT)))
   25179              :             return NULL;
   25180              :           return gen_split_363 (insn, operands);
   25181              : 
   25182              :         default:
   25183              :           return NULL;
   25184              :         }
   25185              : 
   25186              :     case 5:
   25187              :       if (!
   25188              : #line 14832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25189              : (reload_completed
   25190              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25191              :         return NULL;
   25192              :       return gen_split_500 (insn, operands);
   25193              : 
   25194              :     case 6:
   25195              :       if (!
   25196              : #line 14832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25197              : (reload_completed
   25198              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25199              :         return NULL;
   25200              :       return gen_split_501 (insn, operands);
   25201              : 
   25202              :     case 7:
   25203              :       if (!(
   25204              : #line 14832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25205              : (reload_completed
   25206              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25207              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25208              : (TARGET_64BIT)))
   25209              :         return NULL;
   25210              :       return gen_split_502 (insn, operands);
   25211              : 
   25212              :     case 8:
   25213              :       if (!
   25214              : #line 16863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25215              : (reload_completed
   25216              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25217              :         return NULL;
   25218              :       return gen_split_592 (insn, operands);
   25219              : 
   25220              :     case 9:
   25221              :       if (!
   25222              : #line 16863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25223              : (reload_completed
   25224              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25225              :         return NULL;
   25226              :       return gen_split_593 (insn, operands);
   25227              : 
   25228              :     case 10:
   25229              :       if (!(
   25230              : #line 16863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25231              : (reload_completed
   25232              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25233              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25234              : (TARGET_64BIT)))
   25235              :         return NULL;
   25236              :       return gen_split_594 (insn, operands);
   25237              : 
   25238              :     case 11:
   25239              :       x7 = XEXP (x2, 0);
   25240              :       operands[0] = x7;
   25241              :       switch (pattern1240 (x3))
   25242              :         {
   25243              :         case 0:
   25244              :           if (((
   25245              : #line 17093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25246              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   25247              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25248              : (!TARGET_64BIT)) && 
   25249              : #line 17095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25250              : ( reload_completed)))
   25251              :             return gen_split_611 (insn, operands);
   25252              :           break;
   25253              : 
   25254              :         case 1:
   25255              :           if (((
   25256              : #line 17093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25257              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   25258              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25259              : (TARGET_64BIT)) && 
   25260              : #line 17095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25261              : ( reload_completed)))
   25262              :             return gen_split_613 (insn, operands);
   25263              :           break;
   25264              : 
   25265              :         default:
   25266              :           break;
   25267              :         }
   25268              :       x5 = XEXP (x3, 0);
   25269              :       if (GET_MODE (x5) != E_QImode)
   25270              :         return NULL;
   25271              :       switch (pattern1046 (x2))
   25272              :         {
   25273              :         case 0:
   25274              :           if (!
   25275              : #line 18137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25276              : (reload_completed
   25277              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25278              :             return NULL;
   25279              :           return gen_split_638 (insn, operands);
   25280              : 
   25281              :         case 1:
   25282              :           if (!
   25283              : #line 18137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25284              : (reload_completed
   25285              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25286              :             return NULL;
   25287              :           return gen_split_640 (insn, operands);
   25288              : 
   25289              :         case 2:
   25290              :           if (!(
   25291              : #line 18137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25292              : (reload_completed
   25293              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25294              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25295              : (TARGET_64BIT)))
   25296              :             return NULL;
   25297              :           return gen_split_642 (insn, operands);
   25298              : 
   25299              :         default:
   25300              :           return NULL;
   25301              :         }
   25302              : 
   25303              :     case 12:
   25304              :       x7 = XEXP (x2, 0);
   25305              :       operands[0] = x7;
   25306              :       switch (pattern1240 (x3))
   25307              :         {
   25308              :         case 0:
   25309              :           if (((
   25310              : #line 17093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25311              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   25312              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25313              : (!TARGET_64BIT)) && 
   25314              : #line 17095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25315              : ( reload_completed)))
   25316              :             return gen_split_612 (insn, operands);
   25317              :           break;
   25318              : 
   25319              :         case 1:
   25320              :           if (((
   25321              : #line 17093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25322              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   25323              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25324              : (TARGET_64BIT)) && 
   25325              : #line 17095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25326              : ( reload_completed)))
   25327              :             return gen_split_614 (insn, operands);
   25328              :           break;
   25329              : 
   25330              :         default:
   25331              :           break;
   25332              :         }
   25333              :       x5 = XEXP (x3, 0);
   25334              :       if (GET_MODE (x5) != E_QImode)
   25335              :         return NULL;
   25336              :       switch (pattern1046 (x2))
   25337              :         {
   25338              :         case 0:
   25339              :           if (!
   25340              : #line 18137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25341              : (reload_completed
   25342              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25343              :             return NULL;
   25344              :           return gen_split_639 (insn, operands);
   25345              : 
   25346              :         case 1:
   25347              :           if (!
   25348              : #line 18137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25349              : (reload_completed
   25350              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25351              :             return NULL;
   25352              :           return gen_split_641 (insn, operands);
   25353              : 
   25354              :         case 2:
   25355              :           if (!(
   25356              : #line 18137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25357              : (reload_completed
   25358              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25359              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25360              : (TARGET_64BIT)))
   25361              :             return NULL;
   25362              :           return gen_split_643 (insn, operands);
   25363              : 
   25364              :         default:
   25365              :           return NULL;
   25366              :         }
   25367              : 
   25368              :     default:
   25369              :       return NULL;
   25370              :     }
   25371              : }
   25372              : 
   25373              :  rtx_insn *
   25374              : split_35 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25375              : {
   25376              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25377              :   rtx x2, x3, x4, x5, x6;
   25378              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25379              :   switch (pattern407 (x1))
   25380              :     {
   25381              :     case 0:
   25382              :       if (!(
   25383              : #line 18532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25384              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25385              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   25386              :       == GET_MODE_BITSIZE (QImode)-1
   25387              :    && ix86_pre_reload_split ()) && 
   25388              : #line 18537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25389              : ( 1)))
   25390              :         return NULL;
   25391              :       return gen_split_700 (insn, operands);
   25392              : 
   25393              :     case 1:
   25394              :       if (!(
   25395              : #line 18532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25396              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25397              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   25398              :       == GET_MODE_BITSIZE (HImode)-1
   25399              :    && ix86_pre_reload_split ()) && 
   25400              : #line 18537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25401              : ( 1)))
   25402              :         return NULL;
   25403              :       return gen_split_702 (insn, operands);
   25404              : 
   25405              :     case 2:
   25406              :       if (!(
   25407              : #line 18532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25408              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25409              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   25410              :       == GET_MODE_BITSIZE (SImode)-1
   25411              :    && ix86_pre_reload_split ()) && 
   25412              : #line 18537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25413              : ( 1)))
   25414              :         return NULL;
   25415              :       return gen_split_704 (insn, operands);
   25416              : 
   25417              :     case 3:
   25418              :       if (!((
   25419              : #line 18532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25420              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25421              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   25422              :       == GET_MODE_BITSIZE (DImode)-1
   25423              :    && ix86_pre_reload_split ()) && 
   25424              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25425              : (TARGET_64BIT)) && 
   25426              : #line 18537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25427              : ( 1)))
   25428              :         return NULL;
   25429              :       return gen_split_706 (insn, operands);
   25430              : 
   25431              :     case 4:
   25432              :       if (!(
   25433              : #line 18613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25434              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25435              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25436              :    && ix86_pre_reload_split ()) && 
   25437              : #line 18617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25438              : ( 1)))
   25439              :         return NULL;
   25440              :       return gen_split_732 (insn, operands);
   25441              : 
   25442              :     case 5:
   25443              :       if (!(
   25444              : #line 18613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25445              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25446              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25447              :    && ix86_pre_reload_split ()) && 
   25448              : #line 18617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25449              : ( 1)))
   25450              :         return NULL;
   25451              :       return gen_split_734 (insn, operands);
   25452              : 
   25453              :     case 6:
   25454              :       if (!(
   25455              : #line 18613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25456              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25457              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25458              :    && ix86_pre_reload_split ()) && 
   25459              : #line 18617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25460              : ( 1)))
   25461              :         return NULL;
   25462              :       return gen_split_736 (insn, operands);
   25463              : 
   25464              :     case 7:
   25465              :       if (!((
   25466              : #line 18613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25467              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25468              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25469              :    && ix86_pre_reload_split ()) && 
   25470              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25471              : (TARGET_64BIT)) && 
   25472              : #line 18617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25473              : ( 1)))
   25474              :         return NULL;
   25475              :       return gen_split_738 (insn, operands);
   25476              : 
   25477              :     case 8:
   25478              :       if (!(
   25479              : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25480              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25481              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25482              :    && ix86_pre_reload_split ()) && 
   25483              : #line 18686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25484              : ( 1)))
   25485              :         return NULL;
   25486              :       return gen_split_764 (insn, operands);
   25487              : 
   25488              :     case 9:
   25489              :       if (!(
   25490              : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25491              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25492              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25493              :    && ix86_pre_reload_split ()) && 
   25494              : #line 18686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25495              : ( 1)))
   25496              :         return NULL;
   25497              :       return gen_split_766 (insn, operands);
   25498              : 
   25499              :     case 10:
   25500              :       if (!(
   25501              : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25502              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25503              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25504              :    && ix86_pre_reload_split ()) && 
   25505              : #line 18686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25506              : ( 1)))
   25507              :         return NULL;
   25508              :       return gen_split_768 (insn, operands);
   25509              : 
   25510              :     case 11:
   25511              :       if (!((
   25512              : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25513              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25514              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25515              :    && ix86_pre_reload_split ()) && 
   25516              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25517              : (TARGET_64BIT)) && 
   25518              : #line 18686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25519              : ( 1)))
   25520              :         return NULL;
   25521              :       return gen_split_770 (insn, operands);
   25522              : 
   25523              :     case 12:
   25524              :       x2 = XVECEXP (x1, 0, 0);
   25525              :       x3 = XEXP (x2, 0);
   25526              :       operands[0] = x3;
   25527              :       x4 = XEXP (x2, 1);
   25528              :       switch (pattern1189 (x4))
   25529              :         {
   25530              :         case 0:
   25531              :           if ((
   25532              : #line 18484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25533              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25534              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   25535              :       == GET_MODE_BITSIZE (QImode)-1
   25536              :    && ix86_pre_reload_split ()) && 
   25537              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25538              : ( 1)))
   25539              :             return gen_split_684 (insn, operands);
   25540              :           break;
   25541              : 
   25542              :         case 1:
   25543              :           if ((
   25544              : #line 18484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25545              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25546              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   25547              :       == GET_MODE_BITSIZE (HImode)-1
   25548              :    && ix86_pre_reload_split ()) && 
   25549              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25550              : ( 1)))
   25551              :             return gen_split_686 (insn, operands);
   25552              :           break;
   25553              : 
   25554              :         case 2:
   25555              :           if ((
   25556              : #line 18484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25557              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25558              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   25559              :       == GET_MODE_BITSIZE (SImode)-1
   25560              :    && ix86_pre_reload_split ()) && 
   25561              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25562              : ( 1)))
   25563              :             return gen_split_688 (insn, operands);
   25564              :           break;
   25565              : 
   25566              :         case 3:
   25567              :           if (((
   25568              : #line 18484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25569              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25570              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   25571              :       == GET_MODE_BITSIZE (DImode)-1
   25572              :    && ix86_pre_reload_split ()) && 
   25573              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25574              : (TARGET_64BIT)) && 
   25575              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25576              : ( 1)))
   25577              :             return gen_split_690 (insn, operands);
   25578              :           break;
   25579              : 
   25580              :         case 4:
   25581              :           if ((
   25582              : #line 18577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25583              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25584              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25585              :    && ix86_pre_reload_split ()) && 
   25586              : #line 18581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25587              : ( 1)))
   25588              :             return gen_split_716 (insn, operands);
   25589              :           break;
   25590              : 
   25591              :         case 5:
   25592              :           if ((
   25593              : #line 18577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25594              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25595              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25596              :    && ix86_pre_reload_split ()) && 
   25597              : #line 18581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25598              : ( 1)))
   25599              :             return gen_split_718 (insn, operands);
   25600              :           break;
   25601              : 
   25602              :         case 6:
   25603              :           if ((
   25604              : #line 18577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25605              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25606              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25607              :    && ix86_pre_reload_split ()) && 
   25608              : #line 18581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25609              : ( 1)))
   25610              :             return gen_split_720 (insn, operands);
   25611              :           break;
   25612              : 
   25613              :         case 7:
   25614              :           if (((
   25615              : #line 18577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25616              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25617              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25618              :    && ix86_pre_reload_split ()) && 
   25619              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25620              : (TARGET_64BIT)) && 
   25621              : #line 18581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25622              : ( 1)))
   25623              :             return gen_split_722 (insn, operands);
   25624              :           break;
   25625              : 
   25626              :         case 8:
   25627              :           if ((
   25628              : #line 18646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25629              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25630              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25631              :    && ix86_pre_reload_split ()) && 
   25632              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25633              : ( 1)))
   25634              :             return gen_split_748 (insn, operands);
   25635              :           break;
   25636              : 
   25637              :         case 9:
   25638              :           if ((
   25639              : #line 18646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25640              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25641              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25642              :    && ix86_pre_reload_split ()) && 
   25643              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25644              : ( 1)))
   25645              :             return gen_split_750 (insn, operands);
   25646              :           break;
   25647              : 
   25648              :         case 10:
   25649              :           if ((
   25650              : #line 18646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25651              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25652              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25653              :    && ix86_pre_reload_split ()) && 
   25654              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25655              : ( 1)))
   25656              :             return gen_split_752 (insn, operands);
   25657              :           break;
   25658              : 
   25659              :         case 11:
   25660              :           if (((
   25661              : #line 18646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25662              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25663              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25664              :    && ix86_pre_reload_split ()) && 
   25665              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25666              : (TARGET_64BIT)) && 
   25667              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25668              : ( 1)))
   25669              :             return gen_split_754 (insn, operands);
   25670              :           break;
   25671              : 
   25672              :         case 12:
   25673              :           x5 = XEXP (x4, 1);
   25674              :           operands[2] = x5;
   25675              :           switch (pattern1347 (x4))
   25676              :             {
   25677              :             case 0:
   25678              :               if (
   25679              : #line 18883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25680              : (TARGET_BMI2 && reload_completed && !optimize_function_for_size_p (cfun)))
   25681              :                 return gen_split_788 (insn, operands);
   25682              :               break;
   25683              : 
   25684              :             case 1:
   25685              :               if ((
   25686              : #line 18883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25687              : (TARGET_BMI2 && reload_completed && !optimize_function_for_size_p (cfun)) && 
   25688              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25689              : (TARGET_64BIT)))
   25690              :                 return gen_split_789 (insn, operands);
   25691              :               break;
   25692              : 
   25693              :             default:
   25694              :               break;
   25695              :             }
   25696              :           if (XWINT (x5, 0) == 8L
   25697              :               && QIreg_operand (operands[0], E_HImode)
   25698              :               && GET_MODE (x4) == E_HImode)
   25699              :             {
   25700              :               x6 = XEXP (x4, 0);
   25701              :               if (rtx_equal_p (x6, operands[0])
   25702              :                   && 
   25703              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25704              : (reload_completed
   25705              :   && (TARGET_USE_XCHGB || optimize_function_for_size_p (cfun))))
   25706              :                 return gen_split_800 (insn, operands);
   25707              :             }
   25708              :           break;
   25709              : 
   25710              :         default:
   25711              :           break;
   25712              :         }
   25713              :       x5 = XEXP (x4, 1);
   25714              :       operands[2] = x5;
   25715              :       switch (pattern1190 (x2))
   25716              :         {
   25717              :         case 0:
   25718              :           if (!(
   25719              : #line 19050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25720              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25721              : #line 19061 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25722              : ( reload_completed
   25723              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25724              :             return NULL;
   25725              :           return gen_split_796 (insn, operands);
   25726              : 
   25727              :         case 1:
   25728              :           if (!(
   25729              : #line 19050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25730              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25731              : #line 19061 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25732              : ( reload_completed
   25733              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25734              :             return NULL;
   25735              :           return gen_split_798 (insn, operands);
   25736              : 
   25737              :         default:
   25738              :           return NULL;
   25739              :         }
   25740              : 
   25741              :     default:
   25742              :       return NULL;
   25743              :     }
   25744              : }
   25745              : 
   25746              :  rtx_insn *
   25747              : split_47 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25748              : {
   25749              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25750              :   rtx x2, x3, x4;
   25751              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25752              :   x2 = XEXP (x1, 1);
   25753              :   operands[1] = x2;
   25754              :   x3 = XEXP (x1, 0);
   25755              :   operands[0] = x3;
   25756              :   switch (GET_MODE (operands[0]))
   25757              :     {
   25758              :     case E_V8QImode:
   25759              :       if (nonimmediate_gr_operand (operands[0], E_V8QImode)
   25760              :           && nonimmediate_gr_operand (operands[1], E_V8QImode)
   25761              :           && 
   25762              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25763              : (!TARGET_64BIT && reload_completed))
   25764              :         return gen_split_1017 (insn, operands);
   25765              :       if (general_reg_operand (operands[0], E_V8QImode)
   25766              :           && memory_operand (operands[1], E_V8QImode)
   25767              :           && (
   25768              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25769              : (reload_completed
   25770              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25771              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25772              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25773              : (TARGET_64BIT)))
   25774              :         return gen_split_1047 (insn, operands);
   25775              :       break;
   25776              : 
   25777              :     case E_V4HImode:
   25778              :       if (nonimmediate_gr_operand (operands[0], E_V4HImode)
   25779              :           && nonimmediate_gr_operand (operands[1], E_V4HImode)
   25780              :           && 
   25781              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25782              : (!TARGET_64BIT && reload_completed))
   25783              :         return gen_split_1018 (insn, operands);
   25784              :       if (general_reg_operand (operands[0], E_V4HImode)
   25785              :           && memory_operand (operands[1], E_V4HImode)
   25786              :           && (
   25787              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25788              : (reload_completed
   25789              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25790              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25791              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25792              : (TARGET_64BIT)))
   25793              :         return gen_split_1048 (insn, operands);
   25794              :       break;
   25795              : 
   25796              :     case E_V2SImode:
   25797              :       if (nonimmediate_gr_operand (operands[0], E_V2SImode)
   25798              :           && nonimmediate_gr_operand (operands[1], E_V2SImode)
   25799              :           && 
   25800              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25801              : (!TARGET_64BIT && reload_completed))
   25802              :         return gen_split_1019 (insn, operands);
   25803              :       if (general_reg_operand (operands[0], E_V2SImode)
   25804              :           && memory_operand (operands[1], E_V2SImode)
   25805              :           && (
   25806              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25807              : (reload_completed
   25808              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25809              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25810              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25811              : (TARGET_64BIT)))
   25812              :         return gen_split_1051 (insn, operands);
   25813              :       break;
   25814              : 
   25815              :     case E_V1DImode:
   25816              :       if (nonimmediate_gr_operand (operands[0], E_V1DImode)
   25817              :           && nonimmediate_gr_operand (operands[1], E_V1DImode)
   25818              :           && 
   25819              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25820              : (!TARGET_64BIT && reload_completed))
   25821              :         return gen_split_1020 (insn, operands);
   25822              :       if (general_reg_operand (operands[0], E_V1DImode)
   25823              :           && memory_operand (operands[1], E_V1DImode)
   25824              :           && (
   25825              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25826              : (reload_completed
   25827              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25828              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25829              : #line 90 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25830              : (TARGET_64BIT)))
   25831              :         return gen_split_1053 (insn, operands);
   25832              :       break;
   25833              : 
   25834              :     case E_V2SFmode:
   25835              :       if (nonimmediate_gr_operand (operands[0], E_V2SFmode)
   25836              :           && nonimmediate_gr_operand (operands[1], E_V2SFmode)
   25837              :           && 
   25838              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25839              : (!TARGET_64BIT && reload_completed))
   25840              :         return gen_split_1021 (insn, operands);
   25841              :       if (general_reg_operand (operands[0], E_V2SFmode)
   25842              :           && memory_operand (operands[1], E_V2SFmode)
   25843              :           && (
   25844              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25845              : (reload_completed
   25846              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25847              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25848              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25849              : (TARGET_64BIT)))
   25850              :         return gen_split_1052 (insn, operands);
   25851              :       break;
   25852              : 
   25853              :     case E_V4HFmode:
   25854              :       if (nonimmediate_gr_operand (operands[0], E_V4HFmode)
   25855              :           && nonimmediate_gr_operand (operands[1], E_V4HFmode)
   25856              :           && 
   25857              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25858              : (!TARGET_64BIT && reload_completed))
   25859              :         return gen_split_1022 (insn, operands);
   25860              :       if (general_reg_operand (operands[0], E_V4HFmode)
   25861              :           && memory_operand (operands[1], E_V4HFmode)
   25862              :           && (
   25863              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25864              : (reload_completed
   25865              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25866              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25867              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25868              : (TARGET_64BIT)))
   25869              :         return gen_split_1049 (insn, operands);
   25870              :       break;
   25871              : 
   25872              :     case E_V4BFmode:
   25873              :       if (nonimmediate_gr_operand (operands[0], E_V4BFmode)
   25874              :           && nonimmediate_gr_operand (operands[1], E_V4BFmode)
   25875              :           && 
   25876              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25877              : (!TARGET_64BIT && reload_completed))
   25878              :         return gen_split_1023 (insn, operands);
   25879              :       if (general_reg_operand (operands[0], E_V4BFmode)
   25880              :           && memory_operand (operands[1], E_V4BFmode)
   25881              :           && (
   25882              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25883              : (reload_completed
   25884              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25885              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25886              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25887              : (TARGET_64BIT)))
   25888              :         return gen_split_1050 (insn, operands);
   25889              :       break;
   25890              : 
   25891              :     case E_V4QImode:
   25892              :       if (push_operand (operands[0], E_V4QImode)
   25893              :           && sse_reg_operand (operands[1], E_V4QImode))
   25894              :         {
   25895              :           if ((
   25896              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25897              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25898              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25899              : (Pmode == SImode)))
   25900              :             return gen_split_1031 (insn, operands);
   25901              :           if ((
   25902              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25903              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25904              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25905              : (Pmode == DImode)))
   25906              :             return gen_split_1036 (insn, operands);
   25907              :         }
   25908              :       if (general_reg_operand (operands[0], E_V4QImode)
   25909              :           && memory_operand (operands[1], E_V4QImode)
   25910              :           && 
   25911              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25912              : (reload_completed
   25913              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25914              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   25915              :         return gen_split_1042 (insn, operands);
   25916              :       break;
   25917              : 
   25918              :     case E_V2HImode:
   25919              :       if (push_operand (operands[0], E_V2HImode)
   25920              :           && sse_reg_operand (operands[1], E_V2HImode))
   25921              :         {
   25922              :           if ((
   25923              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25924              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25925              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25926              : (Pmode == SImode)))
   25927              :             return gen_split_1032 (insn, operands);
   25928              :           if ((
   25929              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25930              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25931              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25932              : (Pmode == DImode)))
   25933              :             return gen_split_1037 (insn, operands);
   25934              :         }
   25935              :       if (general_reg_operand (operands[0], E_V2HImode)
   25936              :           && memory_operand (operands[1], E_V2HImode)
   25937              :           && 
   25938              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25939              : (reload_completed
   25940              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25941              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   25942              :         return gen_split_1043 (insn, operands);
   25943              :       break;
   25944              : 
   25945              :     case E_V1SImode:
   25946              :       if (push_operand (operands[0], E_V1SImode)
   25947              :           && sse_reg_operand (operands[1], E_V1SImode))
   25948              :         {
   25949              :           if ((
   25950              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25951              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25952              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25953              : (Pmode == SImode)))
   25954              :             return gen_split_1033 (insn, operands);
   25955              :           if ((
   25956              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25957              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25958              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25959              : (Pmode == DImode)))
   25960              :             return gen_split_1038 (insn, operands);
   25961              :         }
   25962              :       if (general_reg_operand (operands[0], E_V1SImode)
   25963              :           && memory_operand (operands[1], E_V1SImode)
   25964              :           && 
   25965              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25966              : (reload_completed
   25967              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25968              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   25969              :         return gen_split_1044 (insn, operands);
   25970              :       break;
   25971              : 
   25972              :     case E_V2HFmode:
   25973              :       if (push_operand (operands[0], E_V2HFmode)
   25974              :           && sse_reg_operand (operands[1], E_V2HFmode))
   25975              :         {
   25976              :           if ((
   25977              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25978              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25979              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25980              : (Pmode == SImode)))
   25981              :             return gen_split_1034 (insn, operands);
   25982              :           if ((
   25983              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25984              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25985              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25986              : (Pmode == DImode)))
   25987              :             return gen_split_1039 (insn, operands);
   25988              :         }
   25989              :       if (general_reg_operand (operands[0], E_V2HFmode)
   25990              :           && memory_operand (operands[1], E_V2HFmode)
   25991              :           && 
   25992              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25993              : (reload_completed
   25994              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25995              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   25996              :         return gen_split_1045 (insn, operands);
   25997              :       break;
   25998              : 
   25999              :     case E_V2BFmode:
   26000              :       if (push_operand (operands[0], E_V2BFmode)
   26001              :           && sse_reg_operand (operands[1], E_V2BFmode))
   26002              :         {
   26003              :           if ((
   26004              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26005              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26006              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26007              : (Pmode == SImode)))
   26008              :             return gen_split_1035 (insn, operands);
   26009              :           if ((
   26010              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26011              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26012              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26013              : (Pmode == DImode)))
   26014              :             return gen_split_1040 (insn, operands);
   26015              :         }
   26016              :       if (general_reg_operand (operands[0], E_V2BFmode)
   26017              :           && memory_operand (operands[1], E_V2BFmode)
   26018              :           && 
   26019              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26020              : (reload_completed
   26021              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26022              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26023              :         return gen_split_1046 (insn, operands);
   26024              :       break;
   26025              : 
   26026              :     case E_V2QImode:
   26027              :       if (general_reg_operand (operands[0], E_V2QImode)
   26028              :           && memory_operand (operands[1], E_V2QImode)
   26029              :           && 
   26030              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26031              : (reload_completed
   26032              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26033              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26034              :         return gen_split_1041 (insn, operands);
   26035              :       if (push_operand (operands[0], E_V2QImode)
   26036              :           && sse_reg_operand (operands[1], E_V2QImode))
   26037              :         {
   26038              :           if ((
   26039              : #line 637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26040              : (TARGET_SSE4_1 && reload_completed) && 
   26041              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26042              : (Pmode == SImode)))
   26043              :             return gen_split_1067 (insn, operands);
   26044              :           if ((
   26045              : #line 637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26046              : (TARGET_SSE4_1 && reload_completed) && 
   26047              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26048              : (Pmode == DImode)))
   26049              :             return gen_split_1068 (insn, operands);
   26050              :         }
   26051              :       break;
   26052              : 
   26053              :     case E_P2QImode:
   26054              :       if (nonimmediate_operand (operands[0], E_P2QImode)
   26055              :           && nonimmediate_operand (operands[1], E_P2QImode)
   26056              :           && (
   26057              : #line 31661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26058              : (TARGET_AVX512VP2INTERSECT
   26059              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   26060              : #line 31664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26061              : ( reload_completed)))
   26062              :         return gen_split_3926 (insn, operands);
   26063              :       break;
   26064              : 
   26065              :     case E_P2HImode:
   26066              :       if (nonimmediate_operand (operands[0], E_P2HImode)
   26067              :           && nonimmediate_operand (operands[1], E_P2HImode)
   26068              :           && (
   26069              : #line 31661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26070              : (TARGET_AVX512VP2INTERSECT
   26071              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   26072              : #line 31664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26073              : ( reload_completed)))
   26074              :         return gen_split_3927 (insn, operands);
   26075              :       break;
   26076              : 
   26077              :     default:
   26078              :       break;
   26079              :     }
   26080              :   if (GET_CODE (x2) != SUBREG)
   26081              :     return NULL;
   26082              :   operands[0] = x3;
   26083              :   switch (SUBREG_BYTE (x2))
   26084              :     {
   26085              :     case 8:
   26086              :       if (GET_MODE (x2) != E_DFmode
   26087              :           || !register_operand (operands[0], E_DFmode))
   26088              :         return NULL;
   26089              :       x4 = XEXP (x2, 0);
   26090              :       operands[1] = x4;
   26091              :       if (!register_operand (operands[1], E_V2DFmode)
   26092              :           || !
   26093              : #line 14964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26094              : (TARGET_SSE))
   26095              :         return NULL;
   26096              :       return gen_split_3254 (insn, operands);
   26097              : 
   26098              :     case 0:
   26099              :       x4 = XEXP (x2, 0);
   26100              :       switch (GET_CODE (x4))
   26101              :         {
   26102              :         case REG:
   26103              :         case SUBREG:
   26104              :           operands[1] = x4;
   26105              :           switch (GET_MODE (operands[0]))
   26106              :             {
   26107              :             case E_DFmode:
   26108              :               if (!register_operand (operands[0], E_DFmode)
   26109              :                   || GET_MODE (x2) != E_DFmode
   26110              :                   || !register_operand (operands[1], E_V2DFmode)
   26111              :                   || !
   26112              : #line 15017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26113              : (TARGET_SSE))
   26114              :                 return NULL;
   26115              :               return gen_split_3256 (insn, operands);
   26116              : 
   26117              :             case E_SImode:
   26118              :               if (!nonimmediate_operand (operands[0], E_SImode)
   26119              :                   || GET_MODE (x2) != E_SImode
   26120              :                   || !register_operand (operands[1], E_VOIDmode)
   26121              :                   || !
   26122              : #line 21789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26123              : (can_create_pseudo_p ()
   26124              :    && REG_P (operands[1])
   26125              :    && VECTOR_MODE_P (GET_MODE (operands[1]))
   26126              :    && ((TARGET_SSE && GET_MODE_SIZE (GET_MODE (operands[1])) == 16)
   26127              :        || (TARGET_AVX && GET_MODE_SIZE (GET_MODE (operands[1])) == 32)
   26128              :        || (TARGET_AVX512F
   26129              :            && GET_MODE_SIZE (GET_MODE (operands[1])) == 64))
   26130              :    && (SImode == SImode || TARGET_64BIT || MEM_P (operands[0]))))
   26131              :                 return NULL;
   26132              :               return gen_split_3490 (insn, operands);
   26133              : 
   26134              :             case E_DImode:
   26135              :               if (!nonimmediate_operand (operands[0], E_DImode)
   26136              :                   || GET_MODE (x2) != E_DImode
   26137              :                   || !register_operand (operands[1], E_VOIDmode)
   26138              :                   || !
   26139              : #line 21789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26140              : (can_create_pseudo_p ()
   26141              :    && REG_P (operands[1])
   26142              :    && VECTOR_MODE_P (GET_MODE (operands[1]))
   26143              :    && ((TARGET_SSE && GET_MODE_SIZE (GET_MODE (operands[1])) == 16)
   26144              :        || (TARGET_AVX && GET_MODE_SIZE (GET_MODE (operands[1])) == 32)
   26145              :        || (TARGET_AVX512F
   26146              :            && GET_MODE_SIZE (GET_MODE (operands[1])) == 64))
   26147              :    && (DImode == SImode || TARGET_64BIT || MEM_P (operands[0]))))
   26148              :                 return NULL;
   26149              :               return gen_split_3491 (insn, operands);
   26150              : 
   26151              :             default:
   26152              :               return NULL;
   26153              :             }
   26154              : 
   26155              :         case SS_TRUNCATE:
   26156              :           switch (pattern731 (x2))
   26157              :             {
   26158              :             case 0:
   26159              :               if (!(
   26160              : #line 15737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26161              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26162              : #line 15739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26163              : ( 1)))
   26164              :                 return NULL;
   26165              :               return gen_split_3268 (insn, operands);
   26166              : 
   26167              :             case 1:
   26168              :               if (!(
   26169              : #line 15832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26170              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26171              : #line 15834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26172              : ( 1)))
   26173              :                 return NULL;
   26174              :               return gen_split_3271 (insn, operands);
   26175              : 
   26176              :             case 2:
   26177              :               if (!(
   26178              : #line 15832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26179              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26180              : #line 15834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26181              : ( 1)))
   26182              :                 return NULL;
   26183              :               return gen_split_3274 (insn, operands);
   26184              : 
   26185              :             case 3:
   26186              :               if (!(
   26187              : #line 16183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26188              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26189              : #line 16185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26190              : ( 1)))
   26191              :                 return NULL;
   26192              :               return gen_split_3290 (insn, operands);
   26193              : 
   26194              :             case 4:
   26195              :               if (!((
   26196              : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26197              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26198              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26199              : (TARGET_AVX512BW)) && 
   26200              : #line 15932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26201              : ( 1)))
   26202              :                 return NULL;
   26203              :               return gen_split_3277 (insn, operands);
   26204              : 
   26205              :             case 5:
   26206              :               if (!(
   26207              : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26208              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26209              : #line 15932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26210              : ( 1)))
   26211              :                 return NULL;
   26212              :               return gen_split_3280 (insn, operands);
   26213              : 
   26214              :             case 6:
   26215              :               if (!(
   26216              : #line 16446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26217              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   26218              : #line 16448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26219              : ( 1)))
   26220              :                 return NULL;
   26221              :               return gen_split_3297 (insn, operands);
   26222              : 
   26223              :             case 7:
   26224              :               if (!(
   26225              : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26226              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26227              : #line 16094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26228              : ( 1)))
   26229              :                 return NULL;
   26230              :               return gen_split_3284 (insn, operands);
   26231              : 
   26232              :             case 8:
   26233              :               if (!(
   26234              : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26235              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26236              : #line 16094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26237              : ( 1)))
   26238              :                 return NULL;
   26239              :               return gen_split_3287 (insn, operands);
   26240              : 
   26241              :             case 9:
   26242              :               if (!(
   26243              : #line 16333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26244              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26245              : #line 16335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26246              : ( 1)))
   26247              :                 return NULL;
   26248              :               return gen_split_3294 (insn, operands);
   26249              : 
   26250              :             default:
   26251              :               return NULL;
   26252              :             }
   26253              : 
   26254              :         case TRUNCATE:
   26255              :           switch (pattern731 (x2))
   26256              :             {
   26257              :             case 0:
   26258              :               if (!(
   26259              : #line 15737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26260              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26261              : #line 15739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26262              : ( 1)))
   26263              :                 return NULL;
   26264              :               return gen_split_3269 (insn, operands);
   26265              : 
   26266              :             case 1:
   26267              :               if (!(
   26268              : #line 15832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26269              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26270              : #line 15834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26271              : ( 1)))
   26272              :                 return NULL;
   26273              :               return gen_split_3272 (insn, operands);
   26274              : 
   26275              :             case 2:
   26276              :               if (!(
   26277              : #line 15832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26278              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26279              : #line 15834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26280              : ( 1)))
   26281              :                 return NULL;
   26282              :               return gen_split_3275 (insn, operands);
   26283              : 
   26284              :             case 3:
   26285              :               if (!(
   26286              : #line 16183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26287              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26288              : #line 16185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26289              : ( 1)))
   26290              :                 return NULL;
   26291              :               return gen_split_3291 (insn, operands);
   26292              : 
   26293              :             case 4:
   26294              :               if (!((
   26295              : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26296              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26297              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26298              : (TARGET_AVX512BW)) && 
   26299              : #line 15932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26300              : ( 1)))
   26301              :                 return NULL;
   26302              :               return gen_split_3278 (insn, operands);
   26303              : 
   26304              :             case 5:
   26305              :               if (!(
   26306              : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26307              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26308              : #line 15932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26309              : ( 1)))
   26310              :                 return NULL;
   26311              :               return gen_split_3281 (insn, operands);
   26312              : 
   26313              :             case 6:
   26314              :               if (!(
   26315              : #line 16446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26316              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   26317              : #line 16448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26318              : ( 1)))
   26319              :                 return NULL;
   26320              :               return gen_split_3298 (insn, operands);
   26321              : 
   26322              :             case 7:
   26323              :               if (!(
   26324              : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26325              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26326              : #line 16094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26327              : ( 1)))
   26328              :                 return NULL;
   26329              :               return gen_split_3285 (insn, operands);
   26330              : 
   26331              :             case 8:
   26332              :               if (!(
   26333              : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26334              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26335              : #line 16094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26336              : ( 1)))
   26337              :                 return NULL;
   26338              :               return gen_split_3288 (insn, operands);
   26339              : 
   26340              :             case 9:
   26341              :               if (!(
   26342              : #line 16333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26343              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26344              : #line 16335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26345              : ( 1)))
   26346              :                 return NULL;
   26347              :               return gen_split_3295 (insn, operands);
   26348              : 
   26349              :             default:
   26350              :               return NULL;
   26351              :             }
   26352              : 
   26353              :         case US_TRUNCATE:
   26354              :           switch (pattern731 (x2))
   26355              :             {
   26356              :             case 0:
   26357              :               if (!(
   26358              : #line 15737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26359              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26360              : #line 15739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26361              : ( 1)))
   26362              :                 return NULL;
   26363              :               return gen_split_3270 (insn, operands);
   26364              : 
   26365              :             case 1:
   26366              :               if (!(
   26367              : #line 15832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26368              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26369              : #line 15834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26370              : ( 1)))
   26371              :                 return NULL;
   26372              :               return gen_split_3273 (insn, operands);
   26373              : 
   26374              :             case 2:
   26375              :               if (!(
   26376              : #line 15832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26377              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26378              : #line 15834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26379              : ( 1)))
   26380              :                 return NULL;
   26381              :               return gen_split_3276 (insn, operands);
   26382              : 
   26383              :             case 3:
   26384              :               if (!(
   26385              : #line 16183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26386              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26387              : #line 16185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26388              : ( 1)))
   26389              :                 return NULL;
   26390              :               return gen_split_3292 (insn, operands);
   26391              : 
   26392              :             case 4:
   26393              :               if (!((
   26394              : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26395              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26396              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26397              : (TARGET_AVX512BW)) && 
   26398              : #line 15932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26399              : ( 1)))
   26400              :                 return NULL;
   26401              :               return gen_split_3279 (insn, operands);
   26402              : 
   26403              :             case 5:
   26404              :               if (!(
   26405              : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26406              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26407              : #line 15932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26408              : ( 1)))
   26409              :                 return NULL;
   26410              :               return gen_split_3282 (insn, operands);
   26411              : 
   26412              :             case 6:
   26413              :               if (!(
   26414              : #line 16446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26415              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   26416              : #line 16448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26417              : ( 1)))
   26418              :                 return NULL;
   26419              :               return gen_split_3299 (insn, operands);
   26420              : 
   26421              :             case 7:
   26422              :               if (!(
   26423              : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26424              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26425              : #line 16094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26426              : ( 1)))
   26427              :                 return NULL;
   26428              :               return gen_split_3286 (insn, operands);
   26429              : 
   26430              :             case 8:
   26431              :               if (!(
   26432              : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26433              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26434              : #line 16094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26435              : ( 1)))
   26436              :                 return NULL;
   26437              :               return gen_split_3289 (insn, operands);
   26438              : 
   26439              :             case 9:
   26440              :               if (!(
   26441              : #line 16333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26442              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26443              : #line 16335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26444              : ( 1)))
   26445              :                 return NULL;
   26446              :               return gen_split_3296 (insn, operands);
   26447              : 
   26448              :             default:
   26449              :               return NULL;
   26450              :             }
   26451              : 
   26452              :         default:
   26453              :           return NULL;
   26454              :         }
   26455              : 
   26456              :     default:
   26457              :       return NULL;
   26458              :     }
   26459              : }
   26460              : 
   26461              :  rtx_insn *
   26462              : split_63 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26463              : {
   26464              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26465              :   rtx x2, x3, x4;
   26466              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26467              :   x2 = XEXP (x1, 1);
   26468              :   x3 = XEXP (x2, 0);
   26469              :   x4 = XEXP (x3, 0);
   26470              :   switch (GET_CODE (x4))
   26471              :     {
   26472              :     case REG:
   26473              :     case SUBREG:
   26474              :     case MEM:
   26475              :     case NOT:
   26476              :       switch (pattern535 (x2))
   26477              :         {
   26478              :         case 0:
   26479              :           if (!((
   26480              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26481              : ((64 == 64 || TARGET_AVX512VL
   26482              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26483              :    && ix86_pre_reload_split ()
   26484              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26485              :                     STRIP_UNARY (operands[4]))
   26486              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26487              :                        STRIP_UNARY (operands[4]))
   26488              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26489              :                        STRIP_UNARY (operands[3]))
   26490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26491              :                        STRIP_UNARY (operands[3])))) && 
   26492              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26493              : (TARGET_AVX512F)) && 
   26494              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26495              : ( 1)))
   26496              :             return NULL;
   26497              :           return gen_split_1741 (insn, operands);
   26498              : 
   26499              :         case 1:
   26500              :           if (!((
   26501              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26502              : ((32 == 64 || TARGET_AVX512VL
   26503              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26504              :    && ix86_pre_reload_split ()
   26505              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26506              :                     STRIP_UNARY (operands[4]))
   26507              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26508              :                        STRIP_UNARY (operands[4]))
   26509              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26510              :                        STRIP_UNARY (operands[3]))
   26511              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26512              :                        STRIP_UNARY (operands[3])))) && 
   26513              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26514              : (TARGET_AVX)) && 
   26515              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26516              : ( 1)))
   26517              :             return NULL;
   26518              :           return gen_split_1768 (insn, operands);
   26519              : 
   26520              :         case 2:
   26521              :           if (!(
   26522              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26523              : ((16 == 64 || TARGET_AVX512VL
   26524              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26525              :    && ix86_pre_reload_split ()
   26526              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26527              :                     STRIP_UNARY (operands[4]))
   26528              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26529              :                        STRIP_UNARY (operands[4]))
   26530              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26531              :                        STRIP_UNARY (operands[3]))
   26532              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26533              :                        STRIP_UNARY (operands[3])))) && 
   26534              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26535              : ( 1)))
   26536              :             return NULL;
   26537              :           return gen_split_1795 (insn, operands);
   26538              : 
   26539              :         case 3:
   26540              :           if (!((
   26541              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26542              : ((64 == 64 || TARGET_AVX512VL
   26543              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26544              :    && ix86_pre_reload_split ()
   26545              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26546              :                     STRIP_UNARY (operands[4]))
   26547              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26548              :                        STRIP_UNARY (operands[4]))
   26549              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26550              :                        STRIP_UNARY (operands[3]))
   26551              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26552              :                        STRIP_UNARY (operands[3])))) && 
   26553              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26554              : (TARGET_AVX512F)) && 
   26555              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26556              : ( 1)))
   26557              :             return NULL;
   26558              :           return gen_split_1822 (insn, operands);
   26559              : 
   26560              :         case 4:
   26561              :           if (!((
   26562              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26563              : ((32 == 64 || TARGET_AVX512VL
   26564              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26565              :    && ix86_pre_reload_split ()
   26566              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26567              :                     STRIP_UNARY (operands[4]))
   26568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26569              :                        STRIP_UNARY (operands[4]))
   26570              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26571              :                        STRIP_UNARY (operands[3]))
   26572              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26573              :                        STRIP_UNARY (operands[3])))) && 
   26574              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26575              : (TARGET_AVX)) && 
   26576              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26577              : ( 1)))
   26578              :             return NULL;
   26579              :           return gen_split_1849 (insn, operands);
   26580              : 
   26581              :         case 5:
   26582              :           if (!(
   26583              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26584              : ((16 == 64 || TARGET_AVX512VL
   26585              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26586              :    && ix86_pre_reload_split ()
   26587              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26588              :                     STRIP_UNARY (operands[4]))
   26589              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26590              :                        STRIP_UNARY (operands[4]))
   26591              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26592              :                        STRIP_UNARY (operands[3]))
   26593              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26594              :                        STRIP_UNARY (operands[3])))) && 
   26595              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26596              : ( 1)))
   26597              :             return NULL;
   26598              :           return gen_split_1876 (insn, operands);
   26599              : 
   26600              :         case 6:
   26601              :           if (!((
   26602              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26603              : ((64 == 64 || TARGET_AVX512VL
   26604              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26605              :    && ix86_pre_reload_split ()
   26606              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26607              :                     STRIP_UNARY (operands[4]))
   26608              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26609              :                        STRIP_UNARY (operands[4]))
   26610              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26611              :                        STRIP_UNARY (operands[3]))
   26612              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26613              :                        STRIP_UNARY (operands[3])))) && 
   26614              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26615              : (TARGET_AVX512F)) && 
   26616              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26617              : ( 1)))
   26618              :             return NULL;
   26619              :           return gen_split_1903 (insn, operands);
   26620              : 
   26621              :         case 7:
   26622              :           if (!((
   26623              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26624              : ((32 == 64 || TARGET_AVX512VL
   26625              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26626              :    && ix86_pre_reload_split ()
   26627              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26628              :                     STRIP_UNARY (operands[4]))
   26629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26630              :                        STRIP_UNARY (operands[4]))
   26631              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26632              :                        STRIP_UNARY (operands[3]))
   26633              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26634              :                        STRIP_UNARY (operands[3])))) && 
   26635              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26636              : (TARGET_AVX)) && 
   26637              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26638              : ( 1)))
   26639              :             return NULL;
   26640              :           return gen_split_1930 (insn, operands);
   26641              : 
   26642              :         case 8:
   26643              :           if (!(
   26644              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26645              : ((16 == 64 || TARGET_AVX512VL
   26646              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26647              :    && ix86_pre_reload_split ()
   26648              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26649              :                     STRIP_UNARY (operands[4]))
   26650              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26651              :                        STRIP_UNARY (operands[4]))
   26652              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26653              :                        STRIP_UNARY (operands[3]))
   26654              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26655              :                        STRIP_UNARY (operands[3])))) && 
   26656              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26657              : ( 1)))
   26658              :             return NULL;
   26659              :           return gen_split_1957 (insn, operands);
   26660              : 
   26661              :         case 9:
   26662              :           if (!((
   26663              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26664              : ((64 == 64 || TARGET_AVX512VL
   26665              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26666              :    && ix86_pre_reload_split ()
   26667              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26668              :                     STRIP_UNARY (operands[4]))
   26669              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26670              :                        STRIP_UNARY (operands[4]))
   26671              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26672              :                        STRIP_UNARY (operands[3]))
   26673              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26674              :                        STRIP_UNARY (operands[3])))) && 
   26675              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26676              : (TARGET_AVX512F)) && 
   26677              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26678              : ( 1)))
   26679              :             return NULL;
   26680              :           return gen_split_1984 (insn, operands);
   26681              : 
   26682              :         case 10:
   26683              :           if (!((
   26684              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26685              : ((32 == 64 || TARGET_AVX512VL
   26686              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26687              :    && ix86_pre_reload_split ()
   26688              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26689              :                     STRIP_UNARY (operands[4]))
   26690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26691              :                        STRIP_UNARY (operands[4]))
   26692              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26693              :                        STRIP_UNARY (operands[3]))
   26694              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26695              :                        STRIP_UNARY (operands[3])))) && 
   26696              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26697              : (TARGET_AVX)) && 
   26698              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26699              : ( 1)))
   26700              :             return NULL;
   26701              :           return gen_split_2011 (insn, operands);
   26702              : 
   26703              :         case 11:
   26704              :           if (!(
   26705              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26706              : ((16 == 64 || TARGET_AVX512VL
   26707              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26708              :    && ix86_pre_reload_split ()
   26709              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26710              :                     STRIP_UNARY (operands[4]))
   26711              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26712              :                        STRIP_UNARY (operands[4]))
   26713              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26714              :                        STRIP_UNARY (operands[3]))
   26715              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26716              :                        STRIP_UNARY (operands[3])))) && 
   26717              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26718              : ( 1)))
   26719              :             return NULL;
   26720              :           return gen_split_2038 (insn, operands);
   26721              : 
   26722              :         case 12:
   26723              :           if (!((
   26724              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26725              : ((64 == 64 || TARGET_AVX512VL
   26726              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26727              :    && ix86_pre_reload_split ()
   26728              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26729              :                     STRIP_UNARY (operands[4]))
   26730              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26731              :                        STRIP_UNARY (operands[4]))
   26732              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26733              :                        STRIP_UNARY (operands[3]))
   26734              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26735              :                        STRIP_UNARY (operands[3])))) && 
   26736              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26737              : (TARGET_AVX512F)) && 
   26738              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26739              : ( 1)))
   26740              :             return NULL;
   26741              :           return gen_split_1744 (insn, operands);
   26742              : 
   26743              :         case 13:
   26744              :           if (!((
   26745              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26746              : ((32 == 64 || TARGET_AVX512VL
   26747              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26748              :    && ix86_pre_reload_split ()
   26749              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26750              :                     STRIP_UNARY (operands[4]))
   26751              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26752              :                        STRIP_UNARY (operands[4]))
   26753              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26754              :                        STRIP_UNARY (operands[3]))
   26755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26756              :                        STRIP_UNARY (operands[3])))) && 
   26757              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26758              : (TARGET_AVX)) && 
   26759              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26760              : ( 1)))
   26761              :             return NULL;
   26762              :           return gen_split_1771 (insn, operands);
   26763              : 
   26764              :         case 14:
   26765              :           if (!(
   26766              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26767              : ((16 == 64 || TARGET_AVX512VL
   26768              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26769              :    && ix86_pre_reload_split ()
   26770              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26771              :                     STRIP_UNARY (operands[4]))
   26772              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26773              :                        STRIP_UNARY (operands[4]))
   26774              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26775              :                        STRIP_UNARY (operands[3]))
   26776              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26777              :                        STRIP_UNARY (operands[3])))) && 
   26778              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26779              : ( 1)))
   26780              :             return NULL;
   26781              :           return gen_split_1798 (insn, operands);
   26782              : 
   26783              :         case 15:
   26784              :           if (!((
   26785              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26786              : ((64 == 64 || TARGET_AVX512VL
   26787              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26788              :    && ix86_pre_reload_split ()
   26789              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26790              :                     STRIP_UNARY (operands[4]))
   26791              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26792              :                        STRIP_UNARY (operands[4]))
   26793              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26794              :                        STRIP_UNARY (operands[3]))
   26795              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26796              :                        STRIP_UNARY (operands[3])))) && 
   26797              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26798              : (TARGET_AVX512F)) && 
   26799              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26800              : ( 1)))
   26801              :             return NULL;
   26802              :           return gen_split_1825 (insn, operands);
   26803              : 
   26804              :         case 16:
   26805              :           if (!((
   26806              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26807              : ((32 == 64 || TARGET_AVX512VL
   26808              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26809              :    && ix86_pre_reload_split ()
   26810              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26811              :                     STRIP_UNARY (operands[4]))
   26812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26813              :                        STRIP_UNARY (operands[4]))
   26814              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26815              :                        STRIP_UNARY (operands[3]))
   26816              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26817              :                        STRIP_UNARY (operands[3])))) && 
   26818              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26819              : (TARGET_AVX)) && 
   26820              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26821              : ( 1)))
   26822              :             return NULL;
   26823              :           return gen_split_1852 (insn, operands);
   26824              : 
   26825              :         case 17:
   26826              :           if (!(
   26827              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26828              : ((16 == 64 || TARGET_AVX512VL
   26829              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26830              :    && ix86_pre_reload_split ()
   26831              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26832              :                     STRIP_UNARY (operands[4]))
   26833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26834              :                        STRIP_UNARY (operands[4]))
   26835              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26836              :                        STRIP_UNARY (operands[3]))
   26837              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26838              :                        STRIP_UNARY (operands[3])))) && 
   26839              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26840              : ( 1)))
   26841              :             return NULL;
   26842              :           return gen_split_1879 (insn, operands);
   26843              : 
   26844              :         case 18:
   26845              :           if (!((
   26846              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26847              : ((64 == 64 || TARGET_AVX512VL
   26848              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26849              :    && ix86_pre_reload_split ()
   26850              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26851              :                     STRIP_UNARY (operands[4]))
   26852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26853              :                        STRIP_UNARY (operands[4]))
   26854              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26855              :                        STRIP_UNARY (operands[3]))
   26856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26857              :                        STRIP_UNARY (operands[3])))) && 
   26858              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26859              : (TARGET_AVX512F)) && 
   26860              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26861              : ( 1)))
   26862              :             return NULL;
   26863              :           return gen_split_1906 (insn, operands);
   26864              : 
   26865              :         case 19:
   26866              :           if (!((
   26867              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26868              : ((32 == 64 || TARGET_AVX512VL
   26869              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26870              :    && ix86_pre_reload_split ()
   26871              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26872              :                     STRIP_UNARY (operands[4]))
   26873              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26874              :                        STRIP_UNARY (operands[4]))
   26875              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26876              :                        STRIP_UNARY (operands[3]))
   26877              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26878              :                        STRIP_UNARY (operands[3])))) && 
   26879              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26880              : (TARGET_AVX)) && 
   26881              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26882              : ( 1)))
   26883              :             return NULL;
   26884              :           return gen_split_1933 (insn, operands);
   26885              : 
   26886              :         case 20:
   26887              :           if (!(
   26888              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26889              : ((16 == 64 || TARGET_AVX512VL
   26890              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26891              :    && ix86_pre_reload_split ()
   26892              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26893              :                     STRIP_UNARY (operands[4]))
   26894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26895              :                        STRIP_UNARY (operands[4]))
   26896              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26897              :                        STRIP_UNARY (operands[3]))
   26898              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26899              :                        STRIP_UNARY (operands[3])))) && 
   26900              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26901              : ( 1)))
   26902              :             return NULL;
   26903              :           return gen_split_1960 (insn, operands);
   26904              : 
   26905              :         case 21:
   26906              :           if (!((
   26907              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26908              : ((64 == 64 || TARGET_AVX512VL
   26909              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26910              :    && ix86_pre_reload_split ()
   26911              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26912              :                     STRIP_UNARY (operands[4]))
   26913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26914              :                        STRIP_UNARY (operands[4]))
   26915              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26916              :                        STRIP_UNARY (operands[3]))
   26917              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26918              :                        STRIP_UNARY (operands[3])))) && 
   26919              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26920              : (TARGET_AVX512F)) && 
   26921              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26922              : ( 1)))
   26923              :             return NULL;
   26924              :           return gen_split_1987 (insn, operands);
   26925              : 
   26926              :         case 22:
   26927              :           if (!((
   26928              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26929              : ((32 == 64 || TARGET_AVX512VL
   26930              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26931              :    && ix86_pre_reload_split ()
   26932              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26933              :                     STRIP_UNARY (operands[4]))
   26934              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26935              :                        STRIP_UNARY (operands[4]))
   26936              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26937              :                        STRIP_UNARY (operands[3]))
   26938              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26939              :                        STRIP_UNARY (operands[3])))) && 
   26940              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26941              : (TARGET_AVX)) && 
   26942              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26943              : ( 1)))
   26944              :             return NULL;
   26945              :           return gen_split_2014 (insn, operands);
   26946              : 
   26947              :         case 23:
   26948              :           if (!(
   26949              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26950              : ((16 == 64 || TARGET_AVX512VL
   26951              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26952              :    && ix86_pre_reload_split ()
   26953              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26954              :                     STRIP_UNARY (operands[4]))
   26955              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26956              :                        STRIP_UNARY (operands[4]))
   26957              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26958              :                        STRIP_UNARY (operands[3]))
   26959              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26960              :                        STRIP_UNARY (operands[3])))) && 
   26961              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26962              : ( 1)))
   26963              :             return NULL;
   26964              :           return gen_split_2041 (insn, operands);
   26965              : 
   26966              :         case 24:
   26967              :           if (!((
   26968              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26969              : ((64 == 64 || TARGET_AVX512VL
   26970              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26971              :    && ix86_pre_reload_split ()
   26972              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26973              :                     STRIP_UNARY (operands[4]))
   26974              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26975              :                        STRIP_UNARY (operands[4]))
   26976              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26977              :                        STRIP_UNARY (operands[3]))
   26978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26979              :                        STRIP_UNARY (operands[3])))) && 
   26980              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26981              : (TARGET_AVX512F)) && 
   26982              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26983              : ( 1)))
   26984              :             return NULL;
   26985              :           return gen_split_1747 (insn, operands);
   26986              : 
   26987              :         case 25:
   26988              :           if (!((
   26989              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26990              : ((32 == 64 || TARGET_AVX512VL
   26991              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26992              :    && ix86_pre_reload_split ()
   26993              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26994              :                     STRIP_UNARY (operands[4]))
   26995              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26996              :                        STRIP_UNARY (operands[4]))
   26997              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26998              :                        STRIP_UNARY (operands[3]))
   26999              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27000              :                        STRIP_UNARY (operands[3])))) && 
   27001              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27002              : (TARGET_AVX)) && 
   27003              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27004              : ( 1)))
   27005              :             return NULL;
   27006              :           return gen_split_1774 (insn, operands);
   27007              : 
   27008              :         case 26:
   27009              :           if (!(
   27010              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27011              : ((16 == 64 || TARGET_AVX512VL
   27012              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27013              :    && ix86_pre_reload_split ()
   27014              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27015              :                     STRIP_UNARY (operands[4]))
   27016              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27017              :                        STRIP_UNARY (operands[4]))
   27018              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27019              :                        STRIP_UNARY (operands[3]))
   27020              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27021              :                        STRIP_UNARY (operands[3])))) && 
   27022              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27023              : ( 1)))
   27024              :             return NULL;
   27025              :           return gen_split_1801 (insn, operands);
   27026              : 
   27027              :         case 27:
   27028              :           if (!((
   27029              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27030              : ((64 == 64 || TARGET_AVX512VL
   27031              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27032              :    && ix86_pre_reload_split ()
   27033              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27034              :                     STRIP_UNARY (operands[4]))
   27035              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27036              :                        STRIP_UNARY (operands[4]))
   27037              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27038              :                        STRIP_UNARY (operands[3]))
   27039              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27040              :                        STRIP_UNARY (operands[3])))) && 
   27041              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27042              : (TARGET_AVX512F)) && 
   27043              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27044              : ( 1)))
   27045              :             return NULL;
   27046              :           return gen_split_1828 (insn, operands);
   27047              : 
   27048              :         case 28:
   27049              :           if (!((
   27050              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27051              : ((32 == 64 || TARGET_AVX512VL
   27052              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27053              :    && ix86_pre_reload_split ()
   27054              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27055              :                     STRIP_UNARY (operands[4]))
   27056              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27057              :                        STRIP_UNARY (operands[4]))
   27058              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27059              :                        STRIP_UNARY (operands[3]))
   27060              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27061              :                        STRIP_UNARY (operands[3])))) && 
   27062              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27063              : (TARGET_AVX)) && 
   27064              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27065              : ( 1)))
   27066              :             return NULL;
   27067              :           return gen_split_1855 (insn, operands);
   27068              : 
   27069              :         case 29:
   27070              :           if (!(
   27071              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27072              : ((16 == 64 || TARGET_AVX512VL
   27073              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27074              :    && ix86_pre_reload_split ()
   27075              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27076              :                     STRIP_UNARY (operands[4]))
   27077              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27078              :                        STRIP_UNARY (operands[4]))
   27079              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27080              :                        STRIP_UNARY (operands[3]))
   27081              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27082              :                        STRIP_UNARY (operands[3])))) && 
   27083              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27084              : ( 1)))
   27085              :             return NULL;
   27086              :           return gen_split_1882 (insn, operands);
   27087              : 
   27088              :         case 30:
   27089              :           if (!((
   27090              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27091              : ((64 == 64 || TARGET_AVX512VL
   27092              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27093              :    && ix86_pre_reload_split ()
   27094              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27095              :                     STRIP_UNARY (operands[4]))
   27096              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27097              :                        STRIP_UNARY (operands[4]))
   27098              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27099              :                        STRIP_UNARY (operands[3]))
   27100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27101              :                        STRIP_UNARY (operands[3])))) && 
   27102              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27103              : (TARGET_AVX512F)) && 
   27104              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27105              : ( 1)))
   27106              :             return NULL;
   27107              :           return gen_split_1909 (insn, operands);
   27108              : 
   27109              :         case 31:
   27110              :           if (!((
   27111              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27112              : ((32 == 64 || TARGET_AVX512VL
   27113              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27114              :    && ix86_pre_reload_split ()
   27115              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27116              :                     STRIP_UNARY (operands[4]))
   27117              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27118              :                        STRIP_UNARY (operands[4]))
   27119              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27120              :                        STRIP_UNARY (operands[3]))
   27121              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27122              :                        STRIP_UNARY (operands[3])))) && 
   27123              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27124              : (TARGET_AVX)) && 
   27125              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27126              : ( 1)))
   27127              :             return NULL;
   27128              :           return gen_split_1936 (insn, operands);
   27129              : 
   27130              :         case 32:
   27131              :           if (!(
   27132              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27133              : ((16 == 64 || TARGET_AVX512VL
   27134              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27135              :    && ix86_pre_reload_split ()
   27136              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27137              :                     STRIP_UNARY (operands[4]))
   27138              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27139              :                        STRIP_UNARY (operands[4]))
   27140              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27141              :                        STRIP_UNARY (operands[3]))
   27142              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27143              :                        STRIP_UNARY (operands[3])))) && 
   27144              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27145              : ( 1)))
   27146              :             return NULL;
   27147              :           return gen_split_1963 (insn, operands);
   27148              : 
   27149              :         case 33:
   27150              :           if (!((
   27151              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27152              : ((64 == 64 || TARGET_AVX512VL
   27153              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27154              :    && ix86_pre_reload_split ()
   27155              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27156              :                     STRIP_UNARY (operands[4]))
   27157              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27158              :                        STRIP_UNARY (operands[4]))
   27159              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27160              :                        STRIP_UNARY (operands[3]))
   27161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27162              :                        STRIP_UNARY (operands[3])))) && 
   27163              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27164              : (TARGET_AVX512F)) && 
   27165              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27166              : ( 1)))
   27167              :             return NULL;
   27168              :           return gen_split_1990 (insn, operands);
   27169              : 
   27170              :         case 34:
   27171              :           if (!((
   27172              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27173              : ((32 == 64 || TARGET_AVX512VL
   27174              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27175              :    && ix86_pre_reload_split ()
   27176              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27177              :                     STRIP_UNARY (operands[4]))
   27178              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27179              :                        STRIP_UNARY (operands[4]))
   27180              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27181              :                        STRIP_UNARY (operands[3]))
   27182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27183              :                        STRIP_UNARY (operands[3])))) && 
   27184              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27185              : (TARGET_AVX)) && 
   27186              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27187              : ( 1)))
   27188              :             return NULL;
   27189              :           return gen_split_2017 (insn, operands);
   27190              : 
   27191              :         case 35:
   27192              :           if (!(
   27193              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27194              : ((16 == 64 || TARGET_AVX512VL
   27195              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27196              :    && ix86_pre_reload_split ()
   27197              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27198              :                     STRIP_UNARY (operands[4]))
   27199              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27200              :                        STRIP_UNARY (operands[4]))
   27201              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27202              :                        STRIP_UNARY (operands[3]))
   27203              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27204              :                        STRIP_UNARY (operands[3])))) && 
   27205              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27206              : ( 1)))
   27207              :             return NULL;
   27208              :           return gen_split_2044 (insn, operands);
   27209              : 
   27210              :         case 36:
   27211              :           if (!((
   27212              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27213              : ((64 == 64 || TARGET_AVX512VL
   27214              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27215              :    && ix86_pre_reload_split ()) && 
   27216              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27217              : (TARGET_AVX512F)) && 
   27218              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27219              : ( 1)))
   27220              :             return NULL;
   27221              :           return gen_split_3037 (insn, operands);
   27222              : 
   27223              :         case 37:
   27224              :           if (!((
   27225              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27226              : ((32 == 64 || TARGET_AVX512VL
   27227              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27228              :    && ix86_pre_reload_split ()) && 
   27229              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27230              : (TARGET_AVX)) && 
   27231              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27232              : ( 1)))
   27233              :             return NULL;
   27234              :           return gen_split_3046 (insn, operands);
   27235              : 
   27236              :         case 38:
   27237              :           if (!(
   27238              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27239              : ((16 == 64 || TARGET_AVX512VL
   27240              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27241              :    && ix86_pre_reload_split ()) && 
   27242              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27243              : ( 1)))
   27244              :             return NULL;
   27245              :           return gen_split_3055 (insn, operands);
   27246              : 
   27247              :         case 39:
   27248              :           if (!((
   27249              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27250              : ((64 == 64 || TARGET_AVX512VL
   27251              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27252              :    && ix86_pre_reload_split ()) && 
   27253              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27254              : (TARGET_AVX512F)) && 
   27255              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27256              : ( 1)))
   27257              :             return NULL;
   27258              :           return gen_split_3064 (insn, operands);
   27259              : 
   27260              :         case 40:
   27261              :           if (!((
   27262              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27263              : ((32 == 64 || TARGET_AVX512VL
   27264              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27265              :    && ix86_pre_reload_split ()) && 
   27266              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27267              : (TARGET_AVX)) && 
   27268              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27269              : ( 1)))
   27270              :             return NULL;
   27271              :           return gen_split_3073 (insn, operands);
   27272              : 
   27273              :         case 41:
   27274              :           if (!(
   27275              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27276              : ((16 == 64 || TARGET_AVX512VL
   27277              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27278              :    && ix86_pre_reload_split ()) && 
   27279              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27280              : ( 1)))
   27281              :             return NULL;
   27282              :           return gen_split_3082 (insn, operands);
   27283              : 
   27284              :         case 42:
   27285              :           if (!((
   27286              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27287              : ((64 == 64 || TARGET_AVX512VL
   27288              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27289              :    && ix86_pre_reload_split ()) && 
   27290              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27291              : (TARGET_AVX512F)) && 
   27292              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27293              : ( 1)))
   27294              :             return NULL;
   27295              :           return gen_split_3091 (insn, operands);
   27296              : 
   27297              :         case 43:
   27298              :           if (!((
   27299              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27300              : ((32 == 64 || TARGET_AVX512VL
   27301              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27302              :    && ix86_pre_reload_split ()) && 
   27303              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27304              : (TARGET_AVX)) && 
   27305              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27306              : ( 1)))
   27307              :             return NULL;
   27308              :           return gen_split_3100 (insn, operands);
   27309              : 
   27310              :         case 44:
   27311              :           if (!(
   27312              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27313              : ((16 == 64 || TARGET_AVX512VL
   27314              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27315              :    && ix86_pre_reload_split ()) && 
   27316              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27317              : ( 1)))
   27318              :             return NULL;
   27319              :           return gen_split_3109 (insn, operands);
   27320              : 
   27321              :         case 45:
   27322              :           if (!((
   27323              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27324              : ((64 == 64 || TARGET_AVX512VL
   27325              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27326              :    && ix86_pre_reload_split ()) && 
   27327              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27328              : (TARGET_AVX512F)) && 
   27329              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27330              : ( 1)))
   27331              :             return NULL;
   27332              :           return gen_split_3118 (insn, operands);
   27333              : 
   27334              :         case 46:
   27335              :           if (!((
   27336              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27337              : ((32 == 64 || TARGET_AVX512VL
   27338              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27339              :    && ix86_pre_reload_split ()) && 
   27340              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27341              : (TARGET_AVX)) && 
   27342              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27343              : ( 1)))
   27344              :             return NULL;
   27345              :           return gen_split_3127 (insn, operands);
   27346              : 
   27347              :         case 47:
   27348              :           if (!(
   27349              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27350              : ((16 == 64 || TARGET_AVX512VL
   27351              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27352              :    && ix86_pre_reload_split ()) && 
   27353              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27354              : ( 1)))
   27355              :             return NULL;
   27356              :           return gen_split_3136 (insn, operands);
   27357              : 
   27358              :         default:
   27359              :           return NULL;
   27360              :         }
   27361              : 
   27362              :     case AND:
   27363              :       switch (pattern537 (x2))
   27364              :         {
   27365              :         case 0:
   27366              :           if (!((
   27367              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27368              : ((64 == 64 || TARGET_AVX512VL
   27369              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27370              :    && ix86_pre_reload_split ()
   27371              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27372              :                     STRIP_UNARY (operands[4]))
   27373              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27374              :                        STRIP_UNARY (operands[4]))
   27375              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27376              :                        STRIP_UNARY (operands[3]))
   27377              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27378              :                        STRIP_UNARY (operands[3])))) && 
   27379              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27380              : (TARGET_AVX512F)) && 
   27381              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27382              : ( 1)))
   27383              :             return NULL;
   27384              :           return gen_split_2389 (insn, operands);
   27385              : 
   27386              :         case 1:
   27387              :           if (!((
   27388              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27389              : ((32 == 64 || TARGET_AVX512VL
   27390              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27391              :    && ix86_pre_reload_split ()
   27392              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27393              :                     STRIP_UNARY (operands[4]))
   27394              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27395              :                        STRIP_UNARY (operands[4]))
   27396              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27397              :                        STRIP_UNARY (operands[3]))
   27398              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27399              :                        STRIP_UNARY (operands[3])))) && 
   27400              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27401              : (TARGET_AVX)) && 
   27402              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27403              : ( 1)))
   27404              :             return NULL;
   27405              :           return gen_split_2416 (insn, operands);
   27406              : 
   27407              :         case 2:
   27408              :           if (!(
   27409              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27410              : ((16 == 64 || TARGET_AVX512VL
   27411              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27412              :    && ix86_pre_reload_split ()
   27413              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27414              :                     STRIP_UNARY (operands[4]))
   27415              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27416              :                        STRIP_UNARY (operands[4]))
   27417              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27418              :                        STRIP_UNARY (operands[3]))
   27419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27420              :                        STRIP_UNARY (operands[3])))) && 
   27421              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27422              : ( 1)))
   27423              :             return NULL;
   27424              :           return gen_split_2443 (insn, operands);
   27425              : 
   27426              :         case 3:
   27427              :           if (!((
   27428              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27429              : ((64 == 64 || TARGET_AVX512VL
   27430              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27431              :    && ix86_pre_reload_split ()
   27432              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27433              :                     STRIP_UNARY (operands[4]))
   27434              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27435              :                        STRIP_UNARY (operands[4]))
   27436              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27437              :                        STRIP_UNARY (operands[3]))
   27438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27439              :                        STRIP_UNARY (operands[3])))) && 
   27440              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27441              : (TARGET_AVX512F)) && 
   27442              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27443              : ( 1)))
   27444              :             return NULL;
   27445              :           return gen_split_2470 (insn, operands);
   27446              : 
   27447              :         case 4:
   27448              :           if (!((
   27449              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27450              : ((32 == 64 || TARGET_AVX512VL
   27451              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27452              :    && ix86_pre_reload_split ()
   27453              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27454              :                     STRIP_UNARY (operands[4]))
   27455              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27456              :                        STRIP_UNARY (operands[4]))
   27457              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27458              :                        STRIP_UNARY (operands[3]))
   27459              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27460              :                        STRIP_UNARY (operands[3])))) && 
   27461              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27462              : (TARGET_AVX)) && 
   27463              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27464              : ( 1)))
   27465              :             return NULL;
   27466              :           return gen_split_2497 (insn, operands);
   27467              : 
   27468              :         case 5:
   27469              :           if (!(
   27470              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27471              : ((16 == 64 || TARGET_AVX512VL
   27472              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27473              :    && ix86_pre_reload_split ()
   27474              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27475              :                     STRIP_UNARY (operands[4]))
   27476              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27477              :                        STRIP_UNARY (operands[4]))
   27478              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27479              :                        STRIP_UNARY (operands[3]))
   27480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27481              :                        STRIP_UNARY (operands[3])))) && 
   27482              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27483              : ( 1)))
   27484              :             return NULL;
   27485              :           return gen_split_2524 (insn, operands);
   27486              : 
   27487              :         case 6:
   27488              :           if (!((
   27489              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27490              : ((64 == 64 || TARGET_AVX512VL
   27491              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27492              :    && ix86_pre_reload_split ()
   27493              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27494              :                     STRIP_UNARY (operands[4]))
   27495              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27496              :                        STRIP_UNARY (operands[4]))
   27497              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27498              :                        STRIP_UNARY (operands[3]))
   27499              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27500              :                        STRIP_UNARY (operands[3])))) && 
   27501              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27502              : (TARGET_AVX512F)) && 
   27503              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27504              : ( 1)))
   27505              :             return NULL;
   27506              :           return gen_split_2551 (insn, operands);
   27507              : 
   27508              :         case 7:
   27509              :           if (!((
   27510              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27511              : ((32 == 64 || TARGET_AVX512VL
   27512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27513              :    && ix86_pre_reload_split ()
   27514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27515              :                     STRIP_UNARY (operands[4]))
   27516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27517              :                        STRIP_UNARY (operands[4]))
   27518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27519              :                        STRIP_UNARY (operands[3]))
   27520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27521              :                        STRIP_UNARY (operands[3])))) && 
   27522              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27523              : (TARGET_AVX)) && 
   27524              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27525              : ( 1)))
   27526              :             return NULL;
   27527              :           return gen_split_2578 (insn, operands);
   27528              : 
   27529              :         case 8:
   27530              :           if (!(
   27531              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27532              : ((16 == 64 || TARGET_AVX512VL
   27533              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27534              :    && ix86_pre_reload_split ()
   27535              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27536              :                     STRIP_UNARY (operands[4]))
   27537              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27538              :                        STRIP_UNARY (operands[4]))
   27539              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27540              :                        STRIP_UNARY (operands[3]))
   27541              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27542              :                        STRIP_UNARY (operands[3])))) && 
   27543              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27544              : ( 1)))
   27545              :             return NULL;
   27546              :           return gen_split_2605 (insn, operands);
   27547              : 
   27548              :         case 9:
   27549              :           if (!((
   27550              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27551              : ((64 == 64 || TARGET_AVX512VL
   27552              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27553              :    && ix86_pre_reload_split ()
   27554              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27555              :                     STRIP_UNARY (operands[4]))
   27556              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27557              :                        STRIP_UNARY (operands[4]))
   27558              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27559              :                        STRIP_UNARY (operands[3]))
   27560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27561              :                        STRIP_UNARY (operands[3])))) && 
   27562              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27563              : (TARGET_AVX512F)) && 
   27564              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27565              : ( 1)))
   27566              :             return NULL;
   27567              :           return gen_split_2632 (insn, operands);
   27568              : 
   27569              :         case 10:
   27570              :           if (!((
   27571              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27572              : ((32 == 64 || TARGET_AVX512VL
   27573              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27574              :    && ix86_pre_reload_split ()
   27575              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27576              :                     STRIP_UNARY (operands[4]))
   27577              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27578              :                        STRIP_UNARY (operands[4]))
   27579              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27580              :                        STRIP_UNARY (operands[3]))
   27581              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27582              :                        STRIP_UNARY (operands[3])))) && 
   27583              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27584              : (TARGET_AVX)) && 
   27585              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27586              : ( 1)))
   27587              :             return NULL;
   27588              :           return gen_split_2659 (insn, operands);
   27589              : 
   27590              :         case 11:
   27591              :           if (!(
   27592              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27593              : ((16 == 64 || TARGET_AVX512VL
   27594              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27595              :    && ix86_pre_reload_split ()
   27596              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27597              :                     STRIP_UNARY (operands[4]))
   27598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27599              :                        STRIP_UNARY (operands[4]))
   27600              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27601              :                        STRIP_UNARY (operands[3]))
   27602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27603              :                        STRIP_UNARY (operands[3])))) && 
   27604              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27605              : ( 1)))
   27606              :             return NULL;
   27607              :           return gen_split_2686 (insn, operands);
   27608              : 
   27609              :         default:
   27610              :           return NULL;
   27611              :         }
   27612              : 
   27613              :     case IOR:
   27614              :       switch (pattern537 (x2))
   27615              :         {
   27616              :         case 0:
   27617              :           if (!((
   27618              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27619              : ((64 == 64 || TARGET_AVX512VL
   27620              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27621              :    && ix86_pre_reload_split ()
   27622              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27623              :                     STRIP_UNARY (operands[4]))
   27624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27625              :                        STRIP_UNARY (operands[4]))
   27626              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27627              :                        STRIP_UNARY (operands[3]))
   27628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27629              :                        STRIP_UNARY (operands[3])))) && 
   27630              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27631              : (TARGET_AVX512F)) && 
   27632              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27633              : ( 1)))
   27634              :             return NULL;
   27635              :           return gen_split_2392 (insn, operands);
   27636              : 
   27637              :         case 1:
   27638              :           if (!((
   27639              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27640              : ((32 == 64 || TARGET_AVX512VL
   27641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27642              :    && ix86_pre_reload_split ()
   27643              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27644              :                     STRIP_UNARY (operands[4]))
   27645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27646              :                        STRIP_UNARY (operands[4]))
   27647              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27648              :                        STRIP_UNARY (operands[3]))
   27649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27650              :                        STRIP_UNARY (operands[3])))) && 
   27651              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27652              : (TARGET_AVX)) && 
   27653              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27654              : ( 1)))
   27655              :             return NULL;
   27656              :           return gen_split_2419 (insn, operands);
   27657              : 
   27658              :         case 2:
   27659              :           if (!(
   27660              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27661              : ((16 == 64 || TARGET_AVX512VL
   27662              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27663              :    && ix86_pre_reload_split ()
   27664              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27665              :                     STRIP_UNARY (operands[4]))
   27666              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27667              :                        STRIP_UNARY (operands[4]))
   27668              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27669              :                        STRIP_UNARY (operands[3]))
   27670              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27671              :                        STRIP_UNARY (operands[3])))) && 
   27672              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27673              : ( 1)))
   27674              :             return NULL;
   27675              :           return gen_split_2446 (insn, operands);
   27676              : 
   27677              :         case 3:
   27678              :           if (!((
   27679              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27680              : ((64 == 64 || TARGET_AVX512VL
   27681              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27682              :    && ix86_pre_reload_split ()
   27683              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27684              :                     STRIP_UNARY (operands[4]))
   27685              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27686              :                        STRIP_UNARY (operands[4]))
   27687              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27688              :                        STRIP_UNARY (operands[3]))
   27689              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27690              :                        STRIP_UNARY (operands[3])))) && 
   27691              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27692              : (TARGET_AVX512F)) && 
   27693              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27694              : ( 1)))
   27695              :             return NULL;
   27696              :           return gen_split_2473 (insn, operands);
   27697              : 
   27698              :         case 4:
   27699              :           if (!((
   27700              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27701              : ((32 == 64 || TARGET_AVX512VL
   27702              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27703              :    && ix86_pre_reload_split ()
   27704              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27705              :                     STRIP_UNARY (operands[4]))
   27706              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27707              :                        STRIP_UNARY (operands[4]))
   27708              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27709              :                        STRIP_UNARY (operands[3]))
   27710              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27711              :                        STRIP_UNARY (operands[3])))) && 
   27712              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27713              : (TARGET_AVX)) && 
   27714              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27715              : ( 1)))
   27716              :             return NULL;
   27717              :           return gen_split_2500 (insn, operands);
   27718              : 
   27719              :         case 5:
   27720              :           if (!(
   27721              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27722              : ((16 == 64 || TARGET_AVX512VL
   27723              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27724              :    && ix86_pre_reload_split ()
   27725              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27726              :                     STRIP_UNARY (operands[4]))
   27727              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27728              :                        STRIP_UNARY (operands[4]))
   27729              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27730              :                        STRIP_UNARY (operands[3]))
   27731              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27732              :                        STRIP_UNARY (operands[3])))) && 
   27733              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27734              : ( 1)))
   27735              :             return NULL;
   27736              :           return gen_split_2527 (insn, operands);
   27737              : 
   27738              :         case 6:
   27739              :           if (!((
   27740              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27741              : ((64 == 64 || TARGET_AVX512VL
   27742              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27743              :    && ix86_pre_reload_split ()
   27744              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27745              :                     STRIP_UNARY (operands[4]))
   27746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27747              :                        STRIP_UNARY (operands[4]))
   27748              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27749              :                        STRIP_UNARY (operands[3]))
   27750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27751              :                        STRIP_UNARY (operands[3])))) && 
   27752              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27753              : (TARGET_AVX512F)) && 
   27754              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27755              : ( 1)))
   27756              :             return NULL;
   27757              :           return gen_split_2554 (insn, operands);
   27758              : 
   27759              :         case 7:
   27760              :           if (!((
   27761              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27762              : ((32 == 64 || TARGET_AVX512VL
   27763              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27764              :    && ix86_pre_reload_split ()
   27765              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27766              :                     STRIP_UNARY (operands[4]))
   27767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27768              :                        STRIP_UNARY (operands[4]))
   27769              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27770              :                        STRIP_UNARY (operands[3]))
   27771              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27772              :                        STRIP_UNARY (operands[3])))) && 
   27773              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27774              : (TARGET_AVX)) && 
   27775              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27776              : ( 1)))
   27777              :             return NULL;
   27778              :           return gen_split_2581 (insn, operands);
   27779              : 
   27780              :         case 8:
   27781              :           if (!(
   27782              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27783              : ((16 == 64 || TARGET_AVX512VL
   27784              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27785              :    && ix86_pre_reload_split ()
   27786              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27787              :                     STRIP_UNARY (operands[4]))
   27788              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27789              :                        STRIP_UNARY (operands[4]))
   27790              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27791              :                        STRIP_UNARY (operands[3]))
   27792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27793              :                        STRIP_UNARY (operands[3])))) && 
   27794              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27795              : ( 1)))
   27796              :             return NULL;
   27797              :           return gen_split_2608 (insn, operands);
   27798              : 
   27799              :         case 9:
   27800              :           if (!((
   27801              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27802              : ((64 == 64 || TARGET_AVX512VL
   27803              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27804              :    && ix86_pre_reload_split ()
   27805              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27806              :                     STRIP_UNARY (operands[4]))
   27807              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27808              :                        STRIP_UNARY (operands[4]))
   27809              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27810              :                        STRIP_UNARY (operands[3]))
   27811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27812              :                        STRIP_UNARY (operands[3])))) && 
   27813              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27814              : (TARGET_AVX512F)) && 
   27815              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27816              : ( 1)))
   27817              :             return NULL;
   27818              :           return gen_split_2635 (insn, operands);
   27819              : 
   27820              :         case 10:
   27821              :           if (!((
   27822              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27823              : ((32 == 64 || TARGET_AVX512VL
   27824              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27825              :    && ix86_pre_reload_split ()
   27826              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27827              :                     STRIP_UNARY (operands[4]))
   27828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27829              :                        STRIP_UNARY (operands[4]))
   27830              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27831              :                        STRIP_UNARY (operands[3]))
   27832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27833              :                        STRIP_UNARY (operands[3])))) && 
   27834              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27835              : (TARGET_AVX)) && 
   27836              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27837              : ( 1)))
   27838              :             return NULL;
   27839              :           return gen_split_2662 (insn, operands);
   27840              : 
   27841              :         case 11:
   27842              :           if (!(
   27843              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27844              : ((16 == 64 || TARGET_AVX512VL
   27845              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27846              :    && ix86_pre_reload_split ()
   27847              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27848              :                     STRIP_UNARY (operands[4]))
   27849              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27850              :                        STRIP_UNARY (operands[4]))
   27851              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27852              :                        STRIP_UNARY (operands[3]))
   27853              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27854              :                        STRIP_UNARY (operands[3])))) && 
   27855              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27856              : ( 1)))
   27857              :             return NULL;
   27858              :           return gen_split_2689 (insn, operands);
   27859              : 
   27860              :         default:
   27861              :           return NULL;
   27862              :         }
   27863              : 
   27864              :     case XOR:
   27865              :       switch (pattern537 (x2))
   27866              :         {
   27867              :         case 0:
   27868              :           if (!((
   27869              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27870              : ((64 == 64 || TARGET_AVX512VL
   27871              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27872              :    && ix86_pre_reload_split ()
   27873              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27874              :                     STRIP_UNARY (operands[4]))
   27875              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27876              :                        STRIP_UNARY (operands[4]))
   27877              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27878              :                        STRIP_UNARY (operands[3]))
   27879              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27880              :                        STRIP_UNARY (operands[3])))) && 
   27881              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27882              : (TARGET_AVX512F)) && 
   27883              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27884              : ( 1)))
   27885              :             return NULL;
   27886              :           return gen_split_2395 (insn, operands);
   27887              : 
   27888              :         case 1:
   27889              :           if (!((
   27890              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27891              : ((32 == 64 || TARGET_AVX512VL
   27892              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27893              :    && ix86_pre_reload_split ()
   27894              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27895              :                     STRIP_UNARY (operands[4]))
   27896              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27897              :                        STRIP_UNARY (operands[4]))
   27898              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27899              :                        STRIP_UNARY (operands[3]))
   27900              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27901              :                        STRIP_UNARY (operands[3])))) && 
   27902              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27903              : (TARGET_AVX)) && 
   27904              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27905              : ( 1)))
   27906              :             return NULL;
   27907              :           return gen_split_2422 (insn, operands);
   27908              : 
   27909              :         case 2:
   27910              :           if (!(
   27911              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27912              : ((16 == 64 || TARGET_AVX512VL
   27913              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27914              :    && ix86_pre_reload_split ()
   27915              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27916              :                     STRIP_UNARY (operands[4]))
   27917              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27918              :                        STRIP_UNARY (operands[4]))
   27919              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27920              :                        STRIP_UNARY (operands[3]))
   27921              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27922              :                        STRIP_UNARY (operands[3])))) && 
   27923              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27924              : ( 1)))
   27925              :             return NULL;
   27926              :           return gen_split_2449 (insn, operands);
   27927              : 
   27928              :         case 3:
   27929              :           if (!((
   27930              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27931              : ((64 == 64 || TARGET_AVX512VL
   27932              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27933              :    && ix86_pre_reload_split ()
   27934              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27935              :                     STRIP_UNARY (operands[4]))
   27936              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27937              :                        STRIP_UNARY (operands[4]))
   27938              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27939              :                        STRIP_UNARY (operands[3]))
   27940              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27941              :                        STRIP_UNARY (operands[3])))) && 
   27942              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27943              : (TARGET_AVX512F)) && 
   27944              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27945              : ( 1)))
   27946              :             return NULL;
   27947              :           return gen_split_2476 (insn, operands);
   27948              : 
   27949              :         case 4:
   27950              :           if (!((
   27951              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27952              : ((32 == 64 || TARGET_AVX512VL
   27953              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27954              :    && ix86_pre_reload_split ()
   27955              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27956              :                     STRIP_UNARY (operands[4]))
   27957              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27958              :                        STRIP_UNARY (operands[4]))
   27959              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27960              :                        STRIP_UNARY (operands[3]))
   27961              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27962              :                        STRIP_UNARY (operands[3])))) && 
   27963              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27964              : (TARGET_AVX)) && 
   27965              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27966              : ( 1)))
   27967              :             return NULL;
   27968              :           return gen_split_2503 (insn, operands);
   27969              : 
   27970              :         case 5:
   27971              :           if (!(
   27972              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27973              : ((16 == 64 || TARGET_AVX512VL
   27974              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27975              :    && ix86_pre_reload_split ()
   27976              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27977              :                     STRIP_UNARY (operands[4]))
   27978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27979              :                        STRIP_UNARY (operands[4]))
   27980              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27981              :                        STRIP_UNARY (operands[3]))
   27982              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27983              :                        STRIP_UNARY (operands[3])))) && 
   27984              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27985              : ( 1)))
   27986              :             return NULL;
   27987              :           return gen_split_2530 (insn, operands);
   27988              : 
   27989              :         case 6:
   27990              :           if (!((
   27991              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27992              : ((64 == 64 || TARGET_AVX512VL
   27993              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27994              :    && ix86_pre_reload_split ()
   27995              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27996              :                     STRIP_UNARY (operands[4]))
   27997              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27998              :                        STRIP_UNARY (operands[4]))
   27999              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28000              :                        STRIP_UNARY (operands[3]))
   28001              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28002              :                        STRIP_UNARY (operands[3])))) && 
   28003              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28004              : (TARGET_AVX512F)) && 
   28005              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28006              : ( 1)))
   28007              :             return NULL;
   28008              :           return gen_split_2557 (insn, operands);
   28009              : 
   28010              :         case 7:
   28011              :           if (!((
   28012              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28013              : ((32 == 64 || TARGET_AVX512VL
   28014              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28015              :    && ix86_pre_reload_split ()
   28016              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28017              :                     STRIP_UNARY (operands[4]))
   28018              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28019              :                        STRIP_UNARY (operands[4]))
   28020              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28021              :                        STRIP_UNARY (operands[3]))
   28022              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28023              :                        STRIP_UNARY (operands[3])))) && 
   28024              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28025              : (TARGET_AVX)) && 
   28026              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28027              : ( 1)))
   28028              :             return NULL;
   28029              :           return gen_split_2584 (insn, operands);
   28030              : 
   28031              :         case 8:
   28032              :           if (!(
   28033              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28034              : ((16 == 64 || TARGET_AVX512VL
   28035              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28036              :    && ix86_pre_reload_split ()
   28037              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28038              :                     STRIP_UNARY (operands[4]))
   28039              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28040              :                        STRIP_UNARY (operands[4]))
   28041              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28042              :                        STRIP_UNARY (operands[3]))
   28043              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28044              :                        STRIP_UNARY (operands[3])))) && 
   28045              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28046              : ( 1)))
   28047              :             return NULL;
   28048              :           return gen_split_2611 (insn, operands);
   28049              : 
   28050              :         case 9:
   28051              :           if (!((
   28052              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28053              : ((64 == 64 || TARGET_AVX512VL
   28054              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28055              :    && ix86_pre_reload_split ()
   28056              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28057              :                     STRIP_UNARY (operands[4]))
   28058              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28059              :                        STRIP_UNARY (operands[4]))
   28060              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28061              :                        STRIP_UNARY (operands[3]))
   28062              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28063              :                        STRIP_UNARY (operands[3])))) && 
   28064              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28065              : (TARGET_AVX512F)) && 
   28066              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28067              : ( 1)))
   28068              :             return NULL;
   28069              :           return gen_split_2638 (insn, operands);
   28070              : 
   28071              :         case 10:
   28072              :           if (!((
   28073              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28074              : ((32 == 64 || TARGET_AVX512VL
   28075              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28076              :    && ix86_pre_reload_split ()
   28077              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28078              :                     STRIP_UNARY (operands[4]))
   28079              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28080              :                        STRIP_UNARY (operands[4]))
   28081              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28082              :                        STRIP_UNARY (operands[3]))
   28083              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28084              :                        STRIP_UNARY (operands[3])))) && 
   28085              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28086              : (TARGET_AVX)) && 
   28087              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28088              : ( 1)))
   28089              :             return NULL;
   28090              :           return gen_split_2665 (insn, operands);
   28091              : 
   28092              :         case 11:
   28093              :           if (!(
   28094              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28095              : ((16 == 64 || TARGET_AVX512VL
   28096              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28097              :    && ix86_pre_reload_split ()
   28098              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28099              :                     STRIP_UNARY (operands[4]))
   28100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28101              :                        STRIP_UNARY (operands[4]))
   28102              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28103              :                        STRIP_UNARY (operands[3]))
   28104              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28105              :                        STRIP_UNARY (operands[3])))) && 
   28106              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28107              : ( 1)))
   28108              :             return NULL;
   28109              :           return gen_split_2692 (insn, operands);
   28110              : 
   28111              :         default:
   28112              :           return NULL;
   28113              :         }
   28114              : 
   28115              :     default:
   28116              :       return NULL;
   28117              :     }
   28118              : }
   28119              : 
   28120              :  rtx_insn *
   28121              : split_73 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28122              : {
   28123              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28124              :   rtx x2, x3, x4;
   28125              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28126              :   x2 = XEXP (x1, 1);
   28127              :   x3 = XEXP (x2, 0);
   28128              :   switch (GET_CODE (x3))
   28129              :     {
   28130              :     case AND:
   28131              :       x4 = XEXP (x3, 0);
   28132              :       switch (GET_CODE (x4))
   28133              :         {
   28134              :         case REG:
   28135              :         case SUBREG:
   28136              :         case MEM:
   28137              :         case NOT:
   28138              :           switch (pattern541 (x2))
   28139              :             {
   28140              :             case 0:
   28141              :               if (!((
   28142              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28143              : ((64 == 64 || TARGET_AVX512VL
   28144              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28145              :    && ix86_pre_reload_split ()
   28146              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28147              :                     STRIP_UNARY (operands[4]))
   28148              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28149              :                        STRIP_UNARY (operands[4]))
   28150              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28151              :                        STRIP_UNARY (operands[3]))
   28152              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28153              :                        STRIP_UNARY (operands[3])))) && 
   28154              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28155              : (TARGET_AVX512F)) && 
   28156              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28157              : ( 1)))
   28158              :                 return NULL;
   28159              :               return gen_split_2066 (insn, operands);
   28160              : 
   28161              :             case 1:
   28162              :               if (!((
   28163              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28164              : ((32 == 64 || TARGET_AVX512VL
   28165              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28166              :    && ix86_pre_reload_split ()
   28167              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28168              :                     STRIP_UNARY (operands[4]))
   28169              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28170              :                        STRIP_UNARY (operands[4]))
   28171              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28172              :                        STRIP_UNARY (operands[3]))
   28173              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28174              :                        STRIP_UNARY (operands[3])))) && 
   28175              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28176              : (TARGET_AVX)) && 
   28177              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28178              : ( 1)))
   28179              :                 return NULL;
   28180              :               return gen_split_2093 (insn, operands);
   28181              : 
   28182              :             case 2:
   28183              :               if (!(
   28184              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28185              : ((16 == 64 || TARGET_AVX512VL
   28186              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28187              :    && ix86_pre_reload_split ()
   28188              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28189              :                     STRIP_UNARY (operands[4]))
   28190              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28191              :                        STRIP_UNARY (operands[4]))
   28192              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28193              :                        STRIP_UNARY (operands[3]))
   28194              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28195              :                        STRIP_UNARY (operands[3])))) && 
   28196              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28197              : ( 1)))
   28198              :                 return NULL;
   28199              :               return gen_split_2120 (insn, operands);
   28200              : 
   28201              :             case 3:
   28202              :               if (!((
   28203              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28204              : ((64 == 64 || TARGET_AVX512VL
   28205              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28206              :    && ix86_pre_reload_split ()
   28207              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28208              :                     STRIP_UNARY (operands[4]))
   28209              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28210              :                        STRIP_UNARY (operands[4]))
   28211              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28212              :                        STRIP_UNARY (operands[3]))
   28213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28214              :                        STRIP_UNARY (operands[3])))) && 
   28215              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28216              : (TARGET_AVX512F)) && 
   28217              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28218              : ( 1)))
   28219              :                 return NULL;
   28220              :               return gen_split_2147 (insn, operands);
   28221              : 
   28222              :             case 4:
   28223              :               if (!((
   28224              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28225              : ((32 == 64 || TARGET_AVX512VL
   28226              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28227              :    && ix86_pre_reload_split ()
   28228              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28229              :                     STRIP_UNARY (operands[4]))
   28230              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28231              :                        STRIP_UNARY (operands[4]))
   28232              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28233              :                        STRIP_UNARY (operands[3]))
   28234              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28235              :                        STRIP_UNARY (operands[3])))) && 
   28236              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28237              : (TARGET_AVX)) && 
   28238              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28239              : ( 1)))
   28240              :                 return NULL;
   28241              :               return gen_split_2174 (insn, operands);
   28242              : 
   28243              :             case 5:
   28244              :               if (!(
   28245              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28246              : ((16 == 64 || TARGET_AVX512VL
   28247              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28248              :    && ix86_pre_reload_split ()
   28249              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28250              :                     STRIP_UNARY (operands[4]))
   28251              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28252              :                        STRIP_UNARY (operands[4]))
   28253              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28254              :                        STRIP_UNARY (operands[3]))
   28255              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28256              :                        STRIP_UNARY (operands[3])))) && 
   28257              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28258              : ( 1)))
   28259              :                 return NULL;
   28260              :               return gen_split_2201 (insn, operands);
   28261              : 
   28262              :             case 6:
   28263              :               if (!((
   28264              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28265              : ((64 == 64 || TARGET_AVX512VL
   28266              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28267              :    && ix86_pre_reload_split ()
   28268              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28269              :                     STRIP_UNARY (operands[4]))
   28270              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28271              :                        STRIP_UNARY (operands[4]))
   28272              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28273              :                        STRIP_UNARY (operands[3]))
   28274              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28275              :                        STRIP_UNARY (operands[3])))) && 
   28276              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28277              : (TARGET_AVX512F)) && 
   28278              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28279              : ( 1)))
   28280              :                 return NULL;
   28281              :               return gen_split_2228 (insn, operands);
   28282              : 
   28283              :             case 7:
   28284              :               if (!((
   28285              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28286              : ((32 == 64 || TARGET_AVX512VL
   28287              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28288              :    && ix86_pre_reload_split ()
   28289              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28290              :                     STRIP_UNARY (operands[4]))
   28291              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28292              :                        STRIP_UNARY (operands[4]))
   28293              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28294              :                        STRIP_UNARY (operands[3]))
   28295              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28296              :                        STRIP_UNARY (operands[3])))) && 
   28297              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28298              : (TARGET_AVX)) && 
   28299              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28300              : ( 1)))
   28301              :                 return NULL;
   28302              :               return gen_split_2255 (insn, operands);
   28303              : 
   28304              :             case 8:
   28305              :               if (!(
   28306              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28307              : ((16 == 64 || TARGET_AVX512VL
   28308              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28309              :    && ix86_pre_reload_split ()
   28310              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28311              :                     STRIP_UNARY (operands[4]))
   28312              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28313              :                        STRIP_UNARY (operands[4]))
   28314              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28315              :                        STRIP_UNARY (operands[3]))
   28316              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28317              :                        STRIP_UNARY (operands[3])))) && 
   28318              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28319              : ( 1)))
   28320              :                 return NULL;
   28321              :               return gen_split_2282 (insn, operands);
   28322              : 
   28323              :             case 9:
   28324              :               if (!((
   28325              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28326              : ((64 == 64 || TARGET_AVX512VL
   28327              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28328              :    && ix86_pre_reload_split ()
   28329              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28330              :                     STRIP_UNARY (operands[4]))
   28331              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28332              :                        STRIP_UNARY (operands[4]))
   28333              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28334              :                        STRIP_UNARY (operands[3]))
   28335              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28336              :                        STRIP_UNARY (operands[3])))) && 
   28337              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28338              : (TARGET_AVX512F)) && 
   28339              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28340              : ( 1)))
   28341              :                 return NULL;
   28342              :               return gen_split_2309 (insn, operands);
   28343              : 
   28344              :             case 10:
   28345              :               if (!((
   28346              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28347              : ((32 == 64 || TARGET_AVX512VL
   28348              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28349              :    && ix86_pre_reload_split ()
   28350              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28351              :                     STRIP_UNARY (operands[4]))
   28352              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28353              :                        STRIP_UNARY (operands[4]))
   28354              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28355              :                        STRIP_UNARY (operands[3]))
   28356              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28357              :                        STRIP_UNARY (operands[3])))) && 
   28358              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28359              : (TARGET_AVX)) && 
   28360              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28361              : ( 1)))
   28362              :                 return NULL;
   28363              :               return gen_split_2336 (insn, operands);
   28364              : 
   28365              :             case 11:
   28366              :               if (!((
   28367              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28368              : ((16 == 64 || TARGET_AVX512VL
   28369              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28370              :    && ix86_pre_reload_split ()
   28371              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28372              :                     STRIP_UNARY (operands[4]))
   28373              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28374              :                        STRIP_UNARY (operands[4]))
   28375              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28376              :                        STRIP_UNARY (operands[3]))
   28377              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28378              :                        STRIP_UNARY (operands[3])))) && 
   28379              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28380              : (TARGET_SSE2)) && 
   28381              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28382              : ( 1)))
   28383              :                 return NULL;
   28384              :               return gen_split_2363 (insn, operands);
   28385              : 
   28386              :             case 12:
   28387              :               if (!((
   28388              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28389              : ((64 == 64 || TARGET_AVX512VL
   28390              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28391              :    && ix86_pre_reload_split ()
   28392              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28393              :                     STRIP_UNARY (operands[4]))
   28394              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28395              :                        STRIP_UNARY (operands[4]))
   28396              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28397              :                        STRIP_UNARY (operands[3]))
   28398              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28399              :                        STRIP_UNARY (operands[3])))) && 
   28400              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28401              : (TARGET_AVX512F)) && 
   28402              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28403              : ( 1)))
   28404              :                 return NULL;
   28405              :               return gen_split_2069 (insn, operands);
   28406              : 
   28407              :             case 13:
   28408              :               if (!((
   28409              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28410              : ((32 == 64 || TARGET_AVX512VL
   28411              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28412              :    && ix86_pre_reload_split ()
   28413              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28414              :                     STRIP_UNARY (operands[4]))
   28415              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28416              :                        STRIP_UNARY (operands[4]))
   28417              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28418              :                        STRIP_UNARY (operands[3]))
   28419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28420              :                        STRIP_UNARY (operands[3])))) && 
   28421              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28422              : (TARGET_AVX)) && 
   28423              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28424              : ( 1)))
   28425              :                 return NULL;
   28426              :               return gen_split_2096 (insn, operands);
   28427              : 
   28428              :             case 14:
   28429              :               if (!(
   28430              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28431              : ((16 == 64 || TARGET_AVX512VL
   28432              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28433              :    && ix86_pre_reload_split ()
   28434              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28435              :                     STRIP_UNARY (operands[4]))
   28436              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28437              :                        STRIP_UNARY (operands[4]))
   28438              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28439              :                        STRIP_UNARY (operands[3]))
   28440              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28441              :                        STRIP_UNARY (operands[3])))) && 
   28442              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28443              : ( 1)))
   28444              :                 return NULL;
   28445              :               return gen_split_2123 (insn, operands);
   28446              : 
   28447              :             case 15:
   28448              :               if (!((
   28449              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28450              : ((64 == 64 || TARGET_AVX512VL
   28451              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28452              :    && ix86_pre_reload_split ()
   28453              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28454              :                     STRIP_UNARY (operands[4]))
   28455              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28456              :                        STRIP_UNARY (operands[4]))
   28457              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28458              :                        STRIP_UNARY (operands[3]))
   28459              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28460              :                        STRIP_UNARY (operands[3])))) && 
   28461              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28462              : (TARGET_AVX512F)) && 
   28463              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28464              : ( 1)))
   28465              :                 return NULL;
   28466              :               return gen_split_2150 (insn, operands);
   28467              : 
   28468              :             case 16:
   28469              :               if (!((
   28470              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28471              : ((32 == 64 || TARGET_AVX512VL
   28472              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28473              :    && ix86_pre_reload_split ()
   28474              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28475              :                     STRIP_UNARY (operands[4]))
   28476              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28477              :                        STRIP_UNARY (operands[4]))
   28478              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28479              :                        STRIP_UNARY (operands[3]))
   28480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28481              :                        STRIP_UNARY (operands[3])))) && 
   28482              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28483              : (TARGET_AVX)) && 
   28484              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28485              : ( 1)))
   28486              :                 return NULL;
   28487              :               return gen_split_2177 (insn, operands);
   28488              : 
   28489              :             case 17:
   28490              :               if (!(
   28491              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28492              : ((16 == 64 || TARGET_AVX512VL
   28493              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28494              :    && ix86_pre_reload_split ()
   28495              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28496              :                     STRIP_UNARY (operands[4]))
   28497              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28498              :                        STRIP_UNARY (operands[4]))
   28499              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28500              :                        STRIP_UNARY (operands[3]))
   28501              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28502              :                        STRIP_UNARY (operands[3])))) && 
   28503              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28504              : ( 1)))
   28505              :                 return NULL;
   28506              :               return gen_split_2204 (insn, operands);
   28507              : 
   28508              :             case 18:
   28509              :               if (!((
   28510              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28511              : ((64 == 64 || TARGET_AVX512VL
   28512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28513              :    && ix86_pre_reload_split ()
   28514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28515              :                     STRIP_UNARY (operands[4]))
   28516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28517              :                        STRIP_UNARY (operands[4]))
   28518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28519              :                        STRIP_UNARY (operands[3]))
   28520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28521              :                        STRIP_UNARY (operands[3])))) && 
   28522              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28523              : (TARGET_AVX512F)) && 
   28524              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28525              : ( 1)))
   28526              :                 return NULL;
   28527              :               return gen_split_2231 (insn, operands);
   28528              : 
   28529              :             case 19:
   28530              :               if (!((
   28531              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28532              : ((32 == 64 || TARGET_AVX512VL
   28533              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28534              :    && ix86_pre_reload_split ()
   28535              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28536              :                     STRIP_UNARY (operands[4]))
   28537              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28538              :                        STRIP_UNARY (operands[4]))
   28539              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28540              :                        STRIP_UNARY (operands[3]))
   28541              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28542              :                        STRIP_UNARY (operands[3])))) && 
   28543              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28544              : (TARGET_AVX)) && 
   28545              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28546              : ( 1)))
   28547              :                 return NULL;
   28548              :               return gen_split_2258 (insn, operands);
   28549              : 
   28550              :             case 20:
   28551              :               if (!(
   28552              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28553              : ((16 == 64 || TARGET_AVX512VL
   28554              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28555              :    && ix86_pre_reload_split ()
   28556              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28557              :                     STRIP_UNARY (operands[4]))
   28558              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28559              :                        STRIP_UNARY (operands[4]))
   28560              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28561              :                        STRIP_UNARY (operands[3]))
   28562              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28563              :                        STRIP_UNARY (operands[3])))) && 
   28564              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28565              : ( 1)))
   28566              :                 return NULL;
   28567              :               return gen_split_2285 (insn, operands);
   28568              : 
   28569              :             case 21:
   28570              :               if (!((
   28571              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28572              : ((64 == 64 || TARGET_AVX512VL
   28573              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28574              :    && ix86_pre_reload_split ()
   28575              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28576              :                     STRIP_UNARY (operands[4]))
   28577              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28578              :                        STRIP_UNARY (operands[4]))
   28579              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28580              :                        STRIP_UNARY (operands[3]))
   28581              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28582              :                        STRIP_UNARY (operands[3])))) && 
   28583              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28584              : (TARGET_AVX512F)) && 
   28585              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28586              : ( 1)))
   28587              :                 return NULL;
   28588              :               return gen_split_2312 (insn, operands);
   28589              : 
   28590              :             case 22:
   28591              :               if (!((
   28592              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28593              : ((32 == 64 || TARGET_AVX512VL
   28594              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28595              :    && ix86_pre_reload_split ()
   28596              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28597              :                     STRIP_UNARY (operands[4]))
   28598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28599              :                        STRIP_UNARY (operands[4]))
   28600              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28601              :                        STRIP_UNARY (operands[3]))
   28602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28603              :                        STRIP_UNARY (operands[3])))) && 
   28604              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28605              : (TARGET_AVX)) && 
   28606              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28607              : ( 1)))
   28608              :                 return NULL;
   28609              :               return gen_split_2339 (insn, operands);
   28610              : 
   28611              :             case 23:
   28612              :               if (!((
   28613              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28614              : ((16 == 64 || TARGET_AVX512VL
   28615              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28616              :    && ix86_pre_reload_split ()
   28617              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28618              :                     STRIP_UNARY (operands[4]))
   28619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28620              :                        STRIP_UNARY (operands[4]))
   28621              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28622              :                        STRIP_UNARY (operands[3]))
   28623              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28624              :                        STRIP_UNARY (operands[3])))) && 
   28625              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28626              : (TARGET_SSE2)) && 
   28627              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28628              : ( 1)))
   28629              :                 return NULL;
   28630              :               return gen_split_2366 (insn, operands);
   28631              : 
   28632              :             case 24:
   28633              :               if (!((
   28634              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28635              : ((64 == 64 || TARGET_AVX512VL
   28636              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28637              :    && ix86_pre_reload_split ()
   28638              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28639              :                     STRIP_UNARY (operands[4]))
   28640              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28641              :                        STRIP_UNARY (operands[4]))
   28642              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28643              :                        STRIP_UNARY (operands[3]))
   28644              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28645              :                        STRIP_UNARY (operands[3])))) && 
   28646              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28647              : (TARGET_AVX512F)) && 
   28648              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28649              : ( 1)))
   28650              :                 return NULL;
   28651              :               return gen_split_2072 (insn, operands);
   28652              : 
   28653              :             case 25:
   28654              :               if (!((
   28655              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28656              : ((32 == 64 || TARGET_AVX512VL
   28657              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28658              :    && ix86_pre_reload_split ()
   28659              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28660              :                     STRIP_UNARY (operands[4]))
   28661              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28662              :                        STRIP_UNARY (operands[4]))
   28663              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28664              :                        STRIP_UNARY (operands[3]))
   28665              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28666              :                        STRIP_UNARY (operands[3])))) && 
   28667              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28668              : (TARGET_AVX)) && 
   28669              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28670              : ( 1)))
   28671              :                 return NULL;
   28672              :               return gen_split_2099 (insn, operands);
   28673              : 
   28674              :             case 26:
   28675              :               if (!(
   28676              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28677              : ((16 == 64 || TARGET_AVX512VL
   28678              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28679              :    && ix86_pre_reload_split ()
   28680              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28681              :                     STRIP_UNARY (operands[4]))
   28682              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28683              :                        STRIP_UNARY (operands[4]))
   28684              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28685              :                        STRIP_UNARY (operands[3]))
   28686              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28687              :                        STRIP_UNARY (operands[3])))) && 
   28688              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28689              : ( 1)))
   28690              :                 return NULL;
   28691              :               return gen_split_2126 (insn, operands);
   28692              : 
   28693              :             case 27:
   28694              :               if (!((
   28695              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28696              : ((64 == 64 || TARGET_AVX512VL
   28697              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28698              :    && ix86_pre_reload_split ()
   28699              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28700              :                     STRIP_UNARY (operands[4]))
   28701              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28702              :                        STRIP_UNARY (operands[4]))
   28703              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28704              :                        STRIP_UNARY (operands[3]))
   28705              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28706              :                        STRIP_UNARY (operands[3])))) && 
   28707              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28708              : (TARGET_AVX512F)) && 
   28709              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28710              : ( 1)))
   28711              :                 return NULL;
   28712              :               return gen_split_2153 (insn, operands);
   28713              : 
   28714              :             case 28:
   28715              :               if (!((
   28716              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28717              : ((32 == 64 || TARGET_AVX512VL
   28718              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28719              :    && ix86_pre_reload_split ()
   28720              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28721              :                     STRIP_UNARY (operands[4]))
   28722              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28723              :                        STRIP_UNARY (operands[4]))
   28724              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28725              :                        STRIP_UNARY (operands[3]))
   28726              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28727              :                        STRIP_UNARY (operands[3])))) && 
   28728              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28729              : (TARGET_AVX)) && 
   28730              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28731              : ( 1)))
   28732              :                 return NULL;
   28733              :               return gen_split_2180 (insn, operands);
   28734              : 
   28735              :             case 29:
   28736              :               if (!(
   28737              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28738              : ((16 == 64 || TARGET_AVX512VL
   28739              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28740              :    && ix86_pre_reload_split ()
   28741              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28742              :                     STRIP_UNARY (operands[4]))
   28743              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28744              :                        STRIP_UNARY (operands[4]))
   28745              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28746              :                        STRIP_UNARY (operands[3]))
   28747              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28748              :                        STRIP_UNARY (operands[3])))) && 
   28749              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28750              : ( 1)))
   28751              :                 return NULL;
   28752              :               return gen_split_2207 (insn, operands);
   28753              : 
   28754              :             case 30:
   28755              :               if (!((
   28756              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28757              : ((64 == 64 || TARGET_AVX512VL
   28758              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28759              :    && ix86_pre_reload_split ()
   28760              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28761              :                     STRIP_UNARY (operands[4]))
   28762              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28763              :                        STRIP_UNARY (operands[4]))
   28764              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28765              :                        STRIP_UNARY (operands[3]))
   28766              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28767              :                        STRIP_UNARY (operands[3])))) && 
   28768              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28769              : (TARGET_AVX512F)) && 
   28770              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28771              : ( 1)))
   28772              :                 return NULL;
   28773              :               return gen_split_2234 (insn, operands);
   28774              : 
   28775              :             case 31:
   28776              :               if (!((
   28777              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28778              : ((32 == 64 || TARGET_AVX512VL
   28779              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28780              :    && ix86_pre_reload_split ()
   28781              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28782              :                     STRIP_UNARY (operands[4]))
   28783              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28784              :                        STRIP_UNARY (operands[4]))
   28785              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28786              :                        STRIP_UNARY (operands[3]))
   28787              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28788              :                        STRIP_UNARY (operands[3])))) && 
   28789              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28790              : (TARGET_AVX)) && 
   28791              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28792              : ( 1)))
   28793              :                 return NULL;
   28794              :               return gen_split_2261 (insn, operands);
   28795              : 
   28796              :             case 32:
   28797              :               if (!(
   28798              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28799              : ((16 == 64 || TARGET_AVX512VL
   28800              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28801              :    && ix86_pre_reload_split ()
   28802              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28803              :                     STRIP_UNARY (operands[4]))
   28804              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28805              :                        STRIP_UNARY (operands[4]))
   28806              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28807              :                        STRIP_UNARY (operands[3]))
   28808              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28809              :                        STRIP_UNARY (operands[3])))) && 
   28810              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28811              : ( 1)))
   28812              :                 return NULL;
   28813              :               return gen_split_2288 (insn, operands);
   28814              : 
   28815              :             case 33:
   28816              :               if (!((
   28817              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28818              : ((64 == 64 || TARGET_AVX512VL
   28819              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28820              :    && ix86_pre_reload_split ()
   28821              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28822              :                     STRIP_UNARY (operands[4]))
   28823              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28824              :                        STRIP_UNARY (operands[4]))
   28825              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28826              :                        STRIP_UNARY (operands[3]))
   28827              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28828              :                        STRIP_UNARY (operands[3])))) && 
   28829              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28830              : (TARGET_AVX512F)) && 
   28831              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28832              : ( 1)))
   28833              :                 return NULL;
   28834              :               return gen_split_2315 (insn, operands);
   28835              : 
   28836              :             case 34:
   28837              :               if (!((
   28838              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28839              : ((32 == 64 || TARGET_AVX512VL
   28840              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28841              :    && ix86_pre_reload_split ()
   28842              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28843              :                     STRIP_UNARY (operands[4]))
   28844              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28845              :                        STRIP_UNARY (operands[4]))
   28846              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28847              :                        STRIP_UNARY (operands[3]))
   28848              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28849              :                        STRIP_UNARY (operands[3])))) && 
   28850              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28851              : (TARGET_AVX)) && 
   28852              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28853              : ( 1)))
   28854              :                 return NULL;
   28855              :               return gen_split_2342 (insn, operands);
   28856              : 
   28857              :             case 35:
   28858              :               if (!((
   28859              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28860              : ((16 == 64 || TARGET_AVX512VL
   28861              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28862              :    && ix86_pre_reload_split ()
   28863              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28864              :                     STRIP_UNARY (operands[4]))
   28865              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28866              :                        STRIP_UNARY (operands[4]))
   28867              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28868              :                        STRIP_UNARY (operands[3]))
   28869              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28870              :                        STRIP_UNARY (operands[3])))) && 
   28871              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28872              : (TARGET_SSE2)) && 
   28873              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28874              : ( 1)))
   28875              :                 return NULL;
   28876              :               return gen_split_2369 (insn, operands);
   28877              : 
   28878              :             case 36:
   28879              :               if (!((
   28880              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28881              : ((64 == 64 || TARGET_AVX512VL
   28882              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28883              :    && ix86_pre_reload_split ()) && 
   28884              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28885              : (TARGET_AVX512F)) && 
   28886              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28887              : ( 1)))
   28888              :                 return NULL;
   28889              :               return gen_split_3146 (insn, operands);
   28890              : 
   28891              :             case 37:
   28892              :               if (!((
   28893              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28894              : ((32 == 64 || TARGET_AVX512VL
   28895              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28896              :    && ix86_pre_reload_split ()) && 
   28897              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28898              : (TARGET_AVX)) && 
   28899              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28900              : ( 1)))
   28901              :                 return NULL;
   28902              :               return gen_split_3155 (insn, operands);
   28903              : 
   28904              :             case 38:
   28905              :               if (!(
   28906              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28907              : ((16 == 64 || TARGET_AVX512VL
   28908              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28909              :    && ix86_pre_reload_split ()) && 
   28910              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28911              : ( 1)))
   28912              :                 return NULL;
   28913              :               return gen_split_3164 (insn, operands);
   28914              : 
   28915              :             case 39:
   28916              :               if (!((
   28917              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28918              : ((64 == 64 || TARGET_AVX512VL
   28919              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28920              :    && ix86_pre_reload_split ()) && 
   28921              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28922              : (TARGET_AVX512F)) && 
   28923              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28924              : ( 1)))
   28925              :                 return NULL;
   28926              :               return gen_split_3173 (insn, operands);
   28927              : 
   28928              :             case 40:
   28929              :               if (!((
   28930              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28931              : ((32 == 64 || TARGET_AVX512VL
   28932              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28933              :    && ix86_pre_reload_split ()) && 
   28934              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28935              : (TARGET_AVX)) && 
   28936              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28937              : ( 1)))
   28938              :                 return NULL;
   28939              :               return gen_split_3182 (insn, operands);
   28940              : 
   28941              :             case 41:
   28942              :               if (!(
   28943              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28944              : ((16 == 64 || TARGET_AVX512VL
   28945              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28946              :    && ix86_pre_reload_split ()) && 
   28947              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28948              : ( 1)))
   28949              :                 return NULL;
   28950              :               return gen_split_3191 (insn, operands);
   28951              : 
   28952              :             case 42:
   28953              :               if (!((
   28954              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28955              : ((64 == 64 || TARGET_AVX512VL
   28956              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28957              :    && ix86_pre_reload_split ()) && 
   28958              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28959              : (TARGET_AVX512F)) && 
   28960              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28961              : ( 1)))
   28962              :                 return NULL;
   28963              :               return gen_split_3200 (insn, operands);
   28964              : 
   28965              :             case 43:
   28966              :               if (!((
   28967              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28968              : ((32 == 64 || TARGET_AVX512VL
   28969              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28970              :    && ix86_pre_reload_split ()) && 
   28971              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28972              : (TARGET_AVX)) && 
   28973              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28974              : ( 1)))
   28975              :                 return NULL;
   28976              :               return gen_split_3209 (insn, operands);
   28977              : 
   28978              :             case 44:
   28979              :               if (!(
   28980              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28981              : ((16 == 64 || TARGET_AVX512VL
   28982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28983              :    && ix86_pre_reload_split ()) && 
   28984              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28985              : ( 1)))
   28986              :                 return NULL;
   28987              :               return gen_split_3218 (insn, operands);
   28988              : 
   28989              :             case 45:
   28990              :               if (!((
   28991              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28992              : ((64 == 64 || TARGET_AVX512VL
   28993              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28994              :    && ix86_pre_reload_split ()) && 
   28995              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28996              : (TARGET_AVX512F)) && 
   28997              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28998              : ( 1)))
   28999              :                 return NULL;
   29000              :               return gen_split_3227 (insn, operands);
   29001              : 
   29002              :             case 46:
   29003              :               if (!((
   29004              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29005              : ((32 == 64 || TARGET_AVX512VL
   29006              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29007              :    && ix86_pre_reload_split ()) && 
   29008              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29009              : (TARGET_AVX)) && 
   29010              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29011              : ( 1)))
   29012              :                 return NULL;
   29013              :               return gen_split_3236 (insn, operands);
   29014              : 
   29015              :             case 47:
   29016              :               if (!((
   29017              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29018              : ((16 == 64 || TARGET_AVX512VL
   29019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29020              :    && ix86_pre_reload_split ()) && 
   29021              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29022              : (TARGET_SSE2)) && 
   29023              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29024              : ( 1)))
   29025              :                 return NULL;
   29026              :               return gen_split_3245 (insn, operands);
   29027              : 
   29028              :             default:
   29029              :               return NULL;
   29030              :             }
   29031              : 
   29032              :         case AND:
   29033              :           switch (pattern542 (x2))
   29034              :             {
   29035              :             case 0:
   29036              :               if (!((
   29037              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29038              : ((64 == 64 || TARGET_AVX512VL
   29039              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29040              :    && ix86_pre_reload_split ()
   29041              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29042              :                     STRIP_UNARY (operands[4]))
   29043              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29044              :                        STRIP_UNARY (operands[4]))
   29045              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29046              :                        STRIP_UNARY (operands[3]))
   29047              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29048              :                        STRIP_UNARY (operands[3])))) && 
   29049              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29050              : (TARGET_AVX512F)) && 
   29051              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29052              : ( 1)))
   29053              :                 return NULL;
   29054              :               return gen_split_2714 (insn, operands);
   29055              : 
   29056              :             case 1:
   29057              :               if (!((
   29058              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29059              : ((32 == 64 || TARGET_AVX512VL
   29060              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29061              :    && ix86_pre_reload_split ()
   29062              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29063              :                     STRIP_UNARY (operands[4]))
   29064              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29065              :                        STRIP_UNARY (operands[4]))
   29066              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29067              :                        STRIP_UNARY (operands[3]))
   29068              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29069              :                        STRIP_UNARY (operands[3])))) && 
   29070              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29071              : (TARGET_AVX)) && 
   29072              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29073              : ( 1)))
   29074              :                 return NULL;
   29075              :               return gen_split_2741 (insn, operands);
   29076              : 
   29077              :             case 2:
   29078              :               if (!(
   29079              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29080              : ((16 == 64 || TARGET_AVX512VL
   29081              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29082              :    && ix86_pre_reload_split ()
   29083              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29084              :                     STRIP_UNARY (operands[4]))
   29085              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29086              :                        STRIP_UNARY (operands[4]))
   29087              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29088              :                        STRIP_UNARY (operands[3]))
   29089              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29090              :                        STRIP_UNARY (operands[3])))) && 
   29091              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29092              : ( 1)))
   29093              :                 return NULL;
   29094              :               return gen_split_2768 (insn, operands);
   29095              : 
   29096              :             case 3:
   29097              :               if (!((
   29098              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29099              : ((64 == 64 || TARGET_AVX512VL
   29100              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29101              :    && ix86_pre_reload_split ()
   29102              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29103              :                     STRIP_UNARY (operands[4]))
   29104              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29105              :                        STRIP_UNARY (operands[4]))
   29106              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29107              :                        STRIP_UNARY (operands[3]))
   29108              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29109              :                        STRIP_UNARY (operands[3])))) && 
   29110              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29111              : (TARGET_AVX512F)) && 
   29112              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29113              : ( 1)))
   29114              :                 return NULL;
   29115              :               return gen_split_2795 (insn, operands);
   29116              : 
   29117              :             case 4:
   29118              :               if (!((
   29119              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29120              : ((32 == 64 || TARGET_AVX512VL
   29121              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29122              :    && ix86_pre_reload_split ()
   29123              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29124              :                     STRIP_UNARY (operands[4]))
   29125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29126              :                        STRIP_UNARY (operands[4]))
   29127              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29128              :                        STRIP_UNARY (operands[3]))
   29129              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29130              :                        STRIP_UNARY (operands[3])))) && 
   29131              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29132              : (TARGET_AVX)) && 
   29133              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29134              : ( 1)))
   29135              :                 return NULL;
   29136              :               return gen_split_2822 (insn, operands);
   29137              : 
   29138              :             case 5:
   29139              :               if (!(
   29140              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29141              : ((16 == 64 || TARGET_AVX512VL
   29142              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29143              :    && ix86_pre_reload_split ()
   29144              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29145              :                     STRIP_UNARY (operands[4]))
   29146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29147              :                        STRIP_UNARY (operands[4]))
   29148              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29149              :                        STRIP_UNARY (operands[3]))
   29150              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29151              :                        STRIP_UNARY (operands[3])))) && 
   29152              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29153              : ( 1)))
   29154              :                 return NULL;
   29155              :               return gen_split_2849 (insn, operands);
   29156              : 
   29157              :             case 6:
   29158              :               if (!((
   29159              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29160              : ((64 == 64 || TARGET_AVX512VL
   29161              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29162              :    && ix86_pre_reload_split ()
   29163              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29164              :                     STRIP_UNARY (operands[4]))
   29165              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29166              :                        STRIP_UNARY (operands[4]))
   29167              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29168              :                        STRIP_UNARY (operands[3]))
   29169              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29170              :                        STRIP_UNARY (operands[3])))) && 
   29171              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29172              : (TARGET_AVX512F)) && 
   29173              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29174              : ( 1)))
   29175              :                 return NULL;
   29176              :               return gen_split_2876 (insn, operands);
   29177              : 
   29178              :             case 7:
   29179              :               if (!((
   29180              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29181              : ((32 == 64 || TARGET_AVX512VL
   29182              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29183              :    && ix86_pre_reload_split ()
   29184              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29185              :                     STRIP_UNARY (operands[4]))
   29186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29187              :                        STRIP_UNARY (operands[4]))
   29188              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29189              :                        STRIP_UNARY (operands[3]))
   29190              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29191              :                        STRIP_UNARY (operands[3])))) && 
   29192              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29193              : (TARGET_AVX)) && 
   29194              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29195              : ( 1)))
   29196              :                 return NULL;
   29197              :               return gen_split_2903 (insn, operands);
   29198              : 
   29199              :             case 8:
   29200              :               if (!(
   29201              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29202              : ((16 == 64 || TARGET_AVX512VL
   29203              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29204              :    && ix86_pre_reload_split ()
   29205              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29206              :                     STRIP_UNARY (operands[4]))
   29207              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29208              :                        STRIP_UNARY (operands[4]))
   29209              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29210              :                        STRIP_UNARY (operands[3]))
   29211              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29212              :                        STRIP_UNARY (operands[3])))) && 
   29213              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29214              : ( 1)))
   29215              :                 return NULL;
   29216              :               return gen_split_2930 (insn, operands);
   29217              : 
   29218              :             case 9:
   29219              :               if (!((
   29220              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29221              : ((64 == 64 || TARGET_AVX512VL
   29222              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29223              :    && ix86_pre_reload_split ()
   29224              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29225              :                     STRIP_UNARY (operands[4]))
   29226              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29227              :                        STRIP_UNARY (operands[4]))
   29228              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29229              :                        STRIP_UNARY (operands[3]))
   29230              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29231              :                        STRIP_UNARY (operands[3])))) && 
   29232              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29233              : (TARGET_AVX512F)) && 
   29234              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29235              : ( 1)))
   29236              :                 return NULL;
   29237              :               return gen_split_2957 (insn, operands);
   29238              : 
   29239              :             case 10:
   29240              :               if (!((
   29241              : #line 14187 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29254              : (TARGET_AVX)) && 
   29255              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29256              : ( 1)))
   29257              :                 return NULL;
   29258              :               return gen_split_2984 (insn, operands);
   29259              : 
   29260              :             case 11:
   29261              :               if (!((
   29262              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29263              : ((16 == 64 || TARGET_AVX512VL
   29264              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29265              :    && ix86_pre_reload_split ()
   29266              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29267              :                     STRIP_UNARY (operands[4]))
   29268              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29269              :                        STRIP_UNARY (operands[4]))
   29270              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29271              :                        STRIP_UNARY (operands[3]))
   29272              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29273              :                        STRIP_UNARY (operands[3])))) && 
   29274              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29275              : (TARGET_SSE2)) && 
   29276              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29277              : ( 1)))
   29278              :                 return NULL;
   29279              :               return gen_split_3011 (insn, operands);
   29280              : 
   29281              :             default:
   29282              :               return NULL;
   29283              :             }
   29284              : 
   29285              :         case IOR:
   29286              :           switch (pattern542 (x2))
   29287              :             {
   29288              :             case 0:
   29289              :               if (!((
   29290              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29291              : ((64 == 64 || TARGET_AVX512VL
   29292              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29293              :    && ix86_pre_reload_split ()
   29294              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29295              :                     STRIP_UNARY (operands[4]))
   29296              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29297              :                        STRIP_UNARY (operands[4]))
   29298              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29299              :                        STRIP_UNARY (operands[3]))
   29300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29301              :                        STRIP_UNARY (operands[3])))) && 
   29302              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29303              : (TARGET_AVX512F)) && 
   29304              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29305              : ( 1)))
   29306              :                 return NULL;
   29307              :               return gen_split_2717 (insn, operands);
   29308              : 
   29309              :             case 1:
   29310              :               if (!((
   29311              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29312              : ((32 == 64 || TARGET_AVX512VL
   29313              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29314              :    && ix86_pre_reload_split ()
   29315              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29316              :                     STRIP_UNARY (operands[4]))
   29317              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29318              :                        STRIP_UNARY (operands[4]))
   29319              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29320              :                        STRIP_UNARY (operands[3]))
   29321              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29322              :                        STRIP_UNARY (operands[3])))) && 
   29323              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29324              : (TARGET_AVX)) && 
   29325              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29326              : ( 1)))
   29327              :                 return NULL;
   29328              :               return gen_split_2744 (insn, operands);
   29329              : 
   29330              :             case 2:
   29331              :               if (!(
   29332              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29333              : ((16 == 64 || TARGET_AVX512VL
   29334              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29335              :    && ix86_pre_reload_split ()
   29336              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29337              :                     STRIP_UNARY (operands[4]))
   29338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29339              :                        STRIP_UNARY (operands[4]))
   29340              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29341              :                        STRIP_UNARY (operands[3]))
   29342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29343              :                        STRIP_UNARY (operands[3])))) && 
   29344              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29345              : ( 1)))
   29346              :                 return NULL;
   29347              :               return gen_split_2771 (insn, operands);
   29348              : 
   29349              :             case 3:
   29350              :               if (!((
   29351              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29352              : ((64 == 64 || TARGET_AVX512VL
   29353              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29354              :    && ix86_pre_reload_split ()
   29355              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29356              :                     STRIP_UNARY (operands[4]))
   29357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29358              :                        STRIP_UNARY (operands[4]))
   29359              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29360              :                        STRIP_UNARY (operands[3]))
   29361              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29362              :                        STRIP_UNARY (operands[3])))) && 
   29363              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29364              : (TARGET_AVX512F)) && 
   29365              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29366              : ( 1)))
   29367              :                 return NULL;
   29368              :               return gen_split_2798 (insn, operands);
   29369              : 
   29370              :             case 4:
   29371              :               if (!((
   29372              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29373              : ((32 == 64 || TARGET_AVX512VL
   29374              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29375              :    && ix86_pre_reload_split ()
   29376              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29377              :                     STRIP_UNARY (operands[4]))
   29378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29379              :                        STRIP_UNARY (operands[4]))
   29380              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29381              :                        STRIP_UNARY (operands[3]))
   29382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29383              :                        STRIP_UNARY (operands[3])))) && 
   29384              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29385              : (TARGET_AVX)) && 
   29386              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29387              : ( 1)))
   29388              :                 return NULL;
   29389              :               return gen_split_2825 (insn, operands);
   29390              : 
   29391              :             case 5:
   29392              :               if (!(
   29393              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29394              : ((16 == 64 || TARGET_AVX512VL
   29395              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29396              :    && ix86_pre_reload_split ()
   29397              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29398              :                     STRIP_UNARY (operands[4]))
   29399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29400              :                        STRIP_UNARY (operands[4]))
   29401              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29402              :                        STRIP_UNARY (operands[3]))
   29403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29404              :                        STRIP_UNARY (operands[3])))) && 
   29405              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29406              : ( 1)))
   29407              :                 return NULL;
   29408              :               return gen_split_2852 (insn, operands);
   29409              : 
   29410              :             case 6:
   29411              :               if (!((
   29412              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29413              : ((64 == 64 || TARGET_AVX512VL
   29414              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29415              :    && ix86_pre_reload_split ()
   29416              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29417              :                     STRIP_UNARY (operands[4]))
   29418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29419              :                        STRIP_UNARY (operands[4]))
   29420              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29421              :                        STRIP_UNARY (operands[3]))
   29422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29423              :                        STRIP_UNARY (operands[3])))) && 
   29424              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29425              : (TARGET_AVX512F)) && 
   29426              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29427              : ( 1)))
   29428              :                 return NULL;
   29429              :               return gen_split_2879 (insn, operands);
   29430              : 
   29431              :             case 7:
   29432              :               if (!((
   29433              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29434              : ((32 == 64 || TARGET_AVX512VL
   29435              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29436              :    && ix86_pre_reload_split ()
   29437              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29438              :                     STRIP_UNARY (operands[4]))
   29439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29440              :                        STRIP_UNARY (operands[4]))
   29441              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29442              :                        STRIP_UNARY (operands[3]))
   29443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29444              :                        STRIP_UNARY (operands[3])))) && 
   29445              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29446              : (TARGET_AVX)) && 
   29447              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29448              : ( 1)))
   29449              :                 return NULL;
   29450              :               return gen_split_2906 (insn, operands);
   29451              : 
   29452              :             case 8:
   29453              :               if (!(
   29454              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29455              : ((16 == 64 || TARGET_AVX512VL
   29456              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29457              :    && ix86_pre_reload_split ()
   29458              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29459              :                     STRIP_UNARY (operands[4]))
   29460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29461              :                        STRIP_UNARY (operands[4]))
   29462              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29463              :                        STRIP_UNARY (operands[3]))
   29464              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29465              :                        STRIP_UNARY (operands[3])))) && 
   29466              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29467              : ( 1)))
   29468              :                 return NULL;
   29469              :               return gen_split_2933 (insn, operands);
   29470              : 
   29471              :             case 9:
   29472              :               if (!((
   29473              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29474              : ((64 == 64 || TARGET_AVX512VL
   29475              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29476              :    && ix86_pre_reload_split ()
   29477              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29478              :                     STRIP_UNARY (operands[4]))
   29479              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29480              :                        STRIP_UNARY (operands[4]))
   29481              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29482              :                        STRIP_UNARY (operands[3]))
   29483              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29484              :                        STRIP_UNARY (operands[3])))) && 
   29485              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29486              : (TARGET_AVX512F)) && 
   29487              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29488              : ( 1)))
   29489              :                 return NULL;
   29490              :               return gen_split_2960 (insn, operands);
   29491              : 
   29492              :             case 10:
   29493              :               if (!((
   29494              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29495              : ((32 == 64 || TARGET_AVX512VL
   29496              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29497              :    && ix86_pre_reload_split ()
   29498              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29499              :                     STRIP_UNARY (operands[4]))
   29500              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29501              :                        STRIP_UNARY (operands[4]))
   29502              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29503              :                        STRIP_UNARY (operands[3]))
   29504              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29505              :                        STRIP_UNARY (operands[3])))) && 
   29506              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29507              : (TARGET_AVX)) && 
   29508              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29509              : ( 1)))
   29510              :                 return NULL;
   29511              :               return gen_split_2987 (insn, operands);
   29512              : 
   29513              :             case 11:
   29514              :               if (!((
   29515              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29516              : ((16 == 64 || TARGET_AVX512VL
   29517              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29518              :    && ix86_pre_reload_split ()
   29519              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29520              :                     STRIP_UNARY (operands[4]))
   29521              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29522              :                        STRIP_UNARY (operands[4]))
   29523              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29524              :                        STRIP_UNARY (operands[3]))
   29525              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29526              :                        STRIP_UNARY (operands[3])))) && 
   29527              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29528              : (TARGET_SSE2)) && 
   29529              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29530              : ( 1)))
   29531              :                 return NULL;
   29532              :               return gen_split_3014 (insn, operands);
   29533              : 
   29534              :             default:
   29535              :               return NULL;
   29536              :             }
   29537              : 
   29538              :         case XOR:
   29539              :           switch (pattern542 (x2))
   29540              :             {
   29541              :             case 0:
   29542              :               if (!((
   29543              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29544              : ((64 == 64 || TARGET_AVX512VL
   29545              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29546              :    && ix86_pre_reload_split ()
   29547              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29548              :                     STRIP_UNARY (operands[4]))
   29549              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29550              :                        STRIP_UNARY (operands[4]))
   29551              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29552              :                        STRIP_UNARY (operands[3]))
   29553              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29554              :                        STRIP_UNARY (operands[3])))) && 
   29555              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29556              : (TARGET_AVX512F)) && 
   29557              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29558              : ( 1)))
   29559              :                 return NULL;
   29560              :               return gen_split_2720 (insn, operands);
   29561              : 
   29562              :             case 1:
   29563              :               if (!((
   29564              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29565              : ((32 == 64 || TARGET_AVX512VL
   29566              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29567              :    && ix86_pre_reload_split ()
   29568              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29569              :                     STRIP_UNARY (operands[4]))
   29570              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29571              :                        STRIP_UNARY (operands[4]))
   29572              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29573              :                        STRIP_UNARY (operands[3]))
   29574              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29575              :                        STRIP_UNARY (operands[3])))) && 
   29576              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29577              : (TARGET_AVX)) && 
   29578              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29579              : ( 1)))
   29580              :                 return NULL;
   29581              :               return gen_split_2747 (insn, operands);
   29582              : 
   29583              :             case 2:
   29584              :               if (!(
   29585              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29586              : ((16 == 64 || TARGET_AVX512VL
   29587              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29588              :    && ix86_pre_reload_split ()
   29589              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29590              :                     STRIP_UNARY (operands[4]))
   29591              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29592              :                        STRIP_UNARY (operands[4]))
   29593              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29594              :                        STRIP_UNARY (operands[3]))
   29595              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29596              :                        STRIP_UNARY (operands[3])))) && 
   29597              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29598              : ( 1)))
   29599              :                 return NULL;
   29600              :               return gen_split_2774 (insn, operands);
   29601              : 
   29602              :             case 3:
   29603              :               if (!((
   29604              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29605              : ((64 == 64 || TARGET_AVX512VL
   29606              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29607              :    && ix86_pre_reload_split ()
   29608              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29609              :                     STRIP_UNARY (operands[4]))
   29610              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29611              :                        STRIP_UNARY (operands[4]))
   29612              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29613              :                        STRIP_UNARY (operands[3]))
   29614              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29615              :                        STRIP_UNARY (operands[3])))) && 
   29616              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29617              : (TARGET_AVX512F)) && 
   29618              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29619              : ( 1)))
   29620              :                 return NULL;
   29621              :               return gen_split_2801 (insn, operands);
   29622              : 
   29623              :             case 4:
   29624              :               if (!((
   29625              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29626              : ((32 == 64 || TARGET_AVX512VL
   29627              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29628              :    && ix86_pre_reload_split ()
   29629              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29630              :                     STRIP_UNARY (operands[4]))
   29631              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29632              :                        STRIP_UNARY (operands[4]))
   29633              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29634              :                        STRIP_UNARY (operands[3]))
   29635              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29636              :                        STRIP_UNARY (operands[3])))) && 
   29637              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29638              : (TARGET_AVX)) && 
   29639              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29640              : ( 1)))
   29641              :                 return NULL;
   29642              :               return gen_split_2828 (insn, operands);
   29643              : 
   29644              :             case 5:
   29645              :               if (!(
   29646              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29647              : ((16 == 64 || TARGET_AVX512VL
   29648              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29649              :    && ix86_pre_reload_split ()
   29650              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29651              :                     STRIP_UNARY (operands[4]))
   29652              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29653              :                        STRIP_UNARY (operands[4]))
   29654              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29655              :                        STRIP_UNARY (operands[3]))
   29656              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29657              :                        STRIP_UNARY (operands[3])))) && 
   29658              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29659              : ( 1)))
   29660              :                 return NULL;
   29661              :               return gen_split_2855 (insn, operands);
   29662              : 
   29663              :             case 6:
   29664              :               if (!((
   29665              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29666              : ((64 == 64 || TARGET_AVX512VL
   29667              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29668              :    && ix86_pre_reload_split ()
   29669              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29670              :                     STRIP_UNARY (operands[4]))
   29671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29672              :                        STRIP_UNARY (operands[4]))
   29673              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29674              :                        STRIP_UNARY (operands[3]))
   29675              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29676              :                        STRIP_UNARY (operands[3])))) && 
   29677              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29678              : (TARGET_AVX512F)) && 
   29679              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29680              : ( 1)))
   29681              :                 return NULL;
   29682              :               return gen_split_2882 (insn, operands);
   29683              : 
   29684              :             case 7:
   29685              :               if (!((
   29686              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29687              : ((32 == 64 || TARGET_AVX512VL
   29688              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29689              :    && ix86_pre_reload_split ()
   29690              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29691              :                     STRIP_UNARY (operands[4]))
   29692              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29693              :                        STRIP_UNARY (operands[4]))
   29694              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29695              :                        STRIP_UNARY (operands[3]))
   29696              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29697              :                        STRIP_UNARY (operands[3])))) && 
   29698              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29699              : (TARGET_AVX)) && 
   29700              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29701              : ( 1)))
   29702              :                 return NULL;
   29703              :               return gen_split_2909 (insn, operands);
   29704              : 
   29705              :             case 8:
   29706              :               if (!(
   29707              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29708              : ((16 == 64 || TARGET_AVX512VL
   29709              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29710              :    && ix86_pre_reload_split ()
   29711              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29712              :                     STRIP_UNARY (operands[4]))
   29713              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29714              :                        STRIP_UNARY (operands[4]))
   29715              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29716              :                        STRIP_UNARY (operands[3]))
   29717              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29718              :                        STRIP_UNARY (operands[3])))) && 
   29719              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29720              : ( 1)))
   29721              :                 return NULL;
   29722              :               return gen_split_2936 (insn, operands);
   29723              : 
   29724              :             case 9:
   29725              :               if (!((
   29726              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29727              : ((64 == 64 || TARGET_AVX512VL
   29728              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29729              :    && ix86_pre_reload_split ()
   29730              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29731              :                     STRIP_UNARY (operands[4]))
   29732              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29733              :                        STRIP_UNARY (operands[4]))
   29734              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29735              :                        STRIP_UNARY (operands[3]))
   29736              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29737              :                        STRIP_UNARY (operands[3])))) && 
   29738              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29739              : (TARGET_AVX512F)) && 
   29740              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29741              : ( 1)))
   29742              :                 return NULL;
   29743              :               return gen_split_2963 (insn, operands);
   29744              : 
   29745              :             case 10:
   29746              :               if (!((
   29747              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29748              : ((32 == 64 || TARGET_AVX512VL
   29749              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29750              :    && ix86_pre_reload_split ()
   29751              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29752              :                     STRIP_UNARY (operands[4]))
   29753              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29754              :                        STRIP_UNARY (operands[4]))
   29755              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29756              :                        STRIP_UNARY (operands[3]))
   29757              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29758              :                        STRIP_UNARY (operands[3])))) && 
   29759              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29760              : (TARGET_AVX)) && 
   29761              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29762              : ( 1)))
   29763              :                 return NULL;
   29764              :               return gen_split_2990 (insn, operands);
   29765              : 
   29766              :             case 11:
   29767              :               if (!((
   29768              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29769              : ((16 == 64 || TARGET_AVX512VL
   29770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29771              :    && ix86_pre_reload_split ()
   29772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29773              :                     STRIP_UNARY (operands[4]))
   29774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29775              :                        STRIP_UNARY (operands[4]))
   29776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29777              :                        STRIP_UNARY (operands[3]))
   29778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29779              :                        STRIP_UNARY (operands[3])))) && 
   29780              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29781              : (TARGET_SSE2)) && 
   29782              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29783              : ( 1)))
   29784              :                 return NULL;
   29785              :               return gen_split_3017 (insn, operands);
   29786              : 
   29787              :             default:
   29788              :               return NULL;
   29789              :             }
   29790              : 
   29791              :         default:
   29792              :           return NULL;
   29793              :         }
   29794              : 
   29795              :     case IOR:
   29796              :       x4 = XEXP (x3, 0);
   29797              :       switch (GET_CODE (x4))
   29798              :         {
   29799              :         case REG:
   29800              :         case SUBREG:
   29801              :         case MEM:
   29802              :         case NOT:
   29803              :           switch (pattern541 (x2))
   29804              :             {
   29805              :             case 0:
   29806              :               if (!((
   29807              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29808              : ((64 == 64 || TARGET_AVX512VL
   29809              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29810              :    && ix86_pre_reload_split ()
   29811              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29812              :                     STRIP_UNARY (operands[4]))
   29813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29814              :                        STRIP_UNARY (operands[4]))
   29815              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29816              :                        STRIP_UNARY (operands[3]))
   29817              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29818              :                        STRIP_UNARY (operands[3])))) && 
   29819              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29820              : (TARGET_AVX512F)) && 
   29821              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29822              : ( 1)))
   29823              :                 return NULL;
   29824              :               return gen_split_2075 (insn, operands);
   29825              : 
   29826              :             case 1:
   29827              :               if (!((
   29828              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29829              : ((32 == 64 || TARGET_AVX512VL
   29830              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29831              :    && ix86_pre_reload_split ()
   29832              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29833              :                     STRIP_UNARY (operands[4]))
   29834              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29835              :                        STRIP_UNARY (operands[4]))
   29836              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29837              :                        STRIP_UNARY (operands[3]))
   29838              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29839              :                        STRIP_UNARY (operands[3])))) && 
   29840              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29841              : (TARGET_AVX)) && 
   29842              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29843              : ( 1)))
   29844              :                 return NULL;
   29845              :               return gen_split_2102 (insn, operands);
   29846              : 
   29847              :             case 2:
   29848              :               if (!(
   29849              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29850              : ((16 == 64 || TARGET_AVX512VL
   29851              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29852              :    && ix86_pre_reload_split ()
   29853              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29854              :                     STRIP_UNARY (operands[4]))
   29855              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29856              :                        STRIP_UNARY (operands[4]))
   29857              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29858              :                        STRIP_UNARY (operands[3]))
   29859              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29860              :                        STRIP_UNARY (operands[3])))) && 
   29861              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29862              : ( 1)))
   29863              :                 return NULL;
   29864              :               return gen_split_2129 (insn, operands);
   29865              : 
   29866              :             case 3:
   29867              :               if (!((
   29868              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29869              : ((64 == 64 || TARGET_AVX512VL
   29870              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29871              :    && ix86_pre_reload_split ()
   29872              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29873              :                     STRIP_UNARY (operands[4]))
   29874              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29875              :                        STRIP_UNARY (operands[4]))
   29876              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29877              :                        STRIP_UNARY (operands[3]))
   29878              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29879              :                        STRIP_UNARY (operands[3])))) && 
   29880              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29881              : (TARGET_AVX512F)) && 
   29882              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29883              : ( 1)))
   29884              :                 return NULL;
   29885              :               return gen_split_2156 (insn, operands);
   29886              : 
   29887              :             case 4:
   29888              :               if (!((
   29889              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29890              : ((32 == 64 || TARGET_AVX512VL
   29891              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29892              :    && ix86_pre_reload_split ()
   29893              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29894              :                     STRIP_UNARY (operands[4]))
   29895              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29896              :                        STRIP_UNARY (operands[4]))
   29897              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29898              :                        STRIP_UNARY (operands[3]))
   29899              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29900              :                        STRIP_UNARY (operands[3])))) && 
   29901              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29902              : (TARGET_AVX)) && 
   29903              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29904              : ( 1)))
   29905              :                 return NULL;
   29906              :               return gen_split_2183 (insn, operands);
   29907              : 
   29908              :             case 5:
   29909              :               if (!(
   29910              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29911              : ((16 == 64 || TARGET_AVX512VL
   29912              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29913              :    && ix86_pre_reload_split ()
   29914              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29915              :                     STRIP_UNARY (operands[4]))
   29916              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29917              :                        STRIP_UNARY (operands[4]))
   29918              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29919              :                        STRIP_UNARY (operands[3]))
   29920              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29921              :                        STRIP_UNARY (operands[3])))) && 
   29922              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29923              : ( 1)))
   29924              :                 return NULL;
   29925              :               return gen_split_2210 (insn, operands);
   29926              : 
   29927              :             case 6:
   29928              :               if (!((
   29929              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29930              : ((64 == 64 || TARGET_AVX512VL
   29931              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29932              :    && ix86_pre_reload_split ()
   29933              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29934              :                     STRIP_UNARY (operands[4]))
   29935              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29936              :                        STRIP_UNARY (operands[4]))
   29937              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29938              :                        STRIP_UNARY (operands[3]))
   29939              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29940              :                        STRIP_UNARY (operands[3])))) && 
   29941              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29942              : (TARGET_AVX512F)) && 
   29943              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29944              : ( 1)))
   29945              :                 return NULL;
   29946              :               return gen_split_2237 (insn, operands);
   29947              : 
   29948              :             case 7:
   29949              :               if (!((
   29950              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29951              : ((32 == 64 || TARGET_AVX512VL
   29952              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29953              :    && ix86_pre_reload_split ()
   29954              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29955              :                     STRIP_UNARY (operands[4]))
   29956              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29957              :                        STRIP_UNARY (operands[4]))
   29958              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29959              :                        STRIP_UNARY (operands[3]))
   29960              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29961              :                        STRIP_UNARY (operands[3])))) && 
   29962              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29963              : (TARGET_AVX)) && 
   29964              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29965              : ( 1)))
   29966              :                 return NULL;
   29967              :               return gen_split_2264 (insn, operands);
   29968              : 
   29969              :             case 8:
   29970              :               if (!(
   29971              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29972              : ((16 == 64 || TARGET_AVX512VL
   29973              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29974              :    && ix86_pre_reload_split ()
   29975              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29976              :                     STRIP_UNARY (operands[4]))
   29977              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29978              :                        STRIP_UNARY (operands[4]))
   29979              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29980              :                        STRIP_UNARY (operands[3]))
   29981              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29982              :                        STRIP_UNARY (operands[3])))) && 
   29983              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29984              : ( 1)))
   29985              :                 return NULL;
   29986              :               return gen_split_2291 (insn, operands);
   29987              : 
   29988              :             case 9:
   29989              :               if (!((
   29990              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29991              : ((64 == 64 || TARGET_AVX512VL
   29992              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29993              :    && ix86_pre_reload_split ()
   29994              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29995              :                     STRIP_UNARY (operands[4]))
   29996              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29997              :                        STRIP_UNARY (operands[4]))
   29998              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29999              :                        STRIP_UNARY (operands[3]))
   30000              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30001              :                        STRIP_UNARY (operands[3])))) && 
   30002              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30003              : (TARGET_AVX512F)) && 
   30004              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30005              : ( 1)))
   30006              :                 return NULL;
   30007              :               return gen_split_2318 (insn, operands);
   30008              : 
   30009              :             case 10:
   30010              :               if (!((
   30011              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30012              : ((32 == 64 || TARGET_AVX512VL
   30013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30014              :    && ix86_pre_reload_split ()
   30015              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30016              :                     STRIP_UNARY (operands[4]))
   30017              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30018              :                        STRIP_UNARY (operands[4]))
   30019              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30020              :                        STRIP_UNARY (operands[3]))
   30021              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30022              :                        STRIP_UNARY (operands[3])))) && 
   30023              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30024              : (TARGET_AVX)) && 
   30025              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30026              : ( 1)))
   30027              :                 return NULL;
   30028              :               return gen_split_2345 (insn, operands);
   30029              : 
   30030              :             case 11:
   30031              :               if (!((
   30032              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30033              : ((16 == 64 || TARGET_AVX512VL
   30034              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30035              :    && ix86_pre_reload_split ()
   30036              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30037              :                     STRIP_UNARY (operands[4]))
   30038              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30039              :                        STRIP_UNARY (operands[4]))
   30040              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30041              :                        STRIP_UNARY (operands[3]))
   30042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30043              :                        STRIP_UNARY (operands[3])))) && 
   30044              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30045              : (TARGET_SSE2)) && 
   30046              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30047              : ( 1)))
   30048              :                 return NULL;
   30049              :               return gen_split_2372 (insn, operands);
   30050              : 
   30051              :             case 12:
   30052              :               if (!((
   30053              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30054              : ((64 == 64 || TARGET_AVX512VL
   30055              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30056              :    && ix86_pre_reload_split ()
   30057              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30058              :                     STRIP_UNARY (operands[4]))
   30059              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30060              :                        STRIP_UNARY (operands[4]))
   30061              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30062              :                        STRIP_UNARY (operands[3]))
   30063              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30064              :                        STRIP_UNARY (operands[3])))) && 
   30065              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30066              : (TARGET_AVX512F)) && 
   30067              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30068              : ( 1)))
   30069              :                 return NULL;
   30070              :               return gen_split_2078 (insn, operands);
   30071              : 
   30072              :             case 13:
   30073              :               if (!((
   30074              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30075              : ((32 == 64 || TARGET_AVX512VL
   30076              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30077              :    && ix86_pre_reload_split ()
   30078              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30079              :                     STRIP_UNARY (operands[4]))
   30080              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30081              :                        STRIP_UNARY (operands[4]))
   30082              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30083              :                        STRIP_UNARY (operands[3]))
   30084              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30085              :                        STRIP_UNARY (operands[3])))) && 
   30086              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30087              : (TARGET_AVX)) && 
   30088              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30089              : ( 1)))
   30090              :                 return NULL;
   30091              :               return gen_split_2105 (insn, operands);
   30092              : 
   30093              :             case 14:
   30094              :               if (!(
   30095              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30096              : ((16 == 64 || TARGET_AVX512VL
   30097              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30098              :    && ix86_pre_reload_split ()
   30099              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30100              :                     STRIP_UNARY (operands[4]))
   30101              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30102              :                        STRIP_UNARY (operands[4]))
   30103              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30104              :                        STRIP_UNARY (operands[3]))
   30105              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30106              :                        STRIP_UNARY (operands[3])))) && 
   30107              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30108              : ( 1)))
   30109              :                 return NULL;
   30110              :               return gen_split_2132 (insn, operands);
   30111              : 
   30112              :             case 15:
   30113              :               if (!((
   30114              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30115              : ((64 == 64 || TARGET_AVX512VL
   30116              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30117              :    && ix86_pre_reload_split ()
   30118              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30119              :                     STRIP_UNARY (operands[4]))
   30120              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30121              :                        STRIP_UNARY (operands[4]))
   30122              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30123              :                        STRIP_UNARY (operands[3]))
   30124              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30125              :                        STRIP_UNARY (operands[3])))) && 
   30126              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30127              : (TARGET_AVX512F)) && 
   30128              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30129              : ( 1)))
   30130              :                 return NULL;
   30131              :               return gen_split_2159 (insn, operands);
   30132              : 
   30133              :             case 16:
   30134              :               if (!((
   30135              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30136              : ((32 == 64 || TARGET_AVX512VL
   30137              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30138              :    && ix86_pre_reload_split ()
   30139              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30140              :                     STRIP_UNARY (operands[4]))
   30141              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30142              :                        STRIP_UNARY (operands[4]))
   30143              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30144              :                        STRIP_UNARY (operands[3]))
   30145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30146              :                        STRIP_UNARY (operands[3])))) && 
   30147              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30148              : (TARGET_AVX)) && 
   30149              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30150              : ( 1)))
   30151              :                 return NULL;
   30152              :               return gen_split_2186 (insn, operands);
   30153              : 
   30154              :             case 17:
   30155              :               if (!(
   30156              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30157              : ((16 == 64 || TARGET_AVX512VL
   30158              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30159              :    && ix86_pre_reload_split ()
   30160              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30161              :                     STRIP_UNARY (operands[4]))
   30162              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30163              :                        STRIP_UNARY (operands[4]))
   30164              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30165              :                        STRIP_UNARY (operands[3]))
   30166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30167              :                        STRIP_UNARY (operands[3])))) && 
   30168              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30169              : ( 1)))
   30170              :                 return NULL;
   30171              :               return gen_split_2213 (insn, operands);
   30172              : 
   30173              :             case 18:
   30174              :               if (!((
   30175              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30176              : ((64 == 64 || TARGET_AVX512VL
   30177              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30178              :    && ix86_pre_reload_split ()
   30179              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30180              :                     STRIP_UNARY (operands[4]))
   30181              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30182              :                        STRIP_UNARY (operands[4]))
   30183              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30184              :                        STRIP_UNARY (operands[3]))
   30185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30186              :                        STRIP_UNARY (operands[3])))) && 
   30187              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30188              : (TARGET_AVX512F)) && 
   30189              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30190              : ( 1)))
   30191              :                 return NULL;
   30192              :               return gen_split_2240 (insn, operands);
   30193              : 
   30194              :             case 19:
   30195              :               if (!((
   30196              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30197              : ((32 == 64 || TARGET_AVX512VL
   30198              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30199              :    && ix86_pre_reload_split ()
   30200              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30201              :                     STRIP_UNARY (operands[4]))
   30202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30203              :                        STRIP_UNARY (operands[4]))
   30204              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30205              :                        STRIP_UNARY (operands[3]))
   30206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30207              :                        STRIP_UNARY (operands[3])))) && 
   30208              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30209              : (TARGET_AVX)) && 
   30210              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30211              : ( 1)))
   30212              :                 return NULL;
   30213              :               return gen_split_2267 (insn, operands);
   30214              : 
   30215              :             case 20:
   30216              :               if (!(
   30217              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30218              : ((16 == 64 || TARGET_AVX512VL
   30219              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30220              :    && ix86_pre_reload_split ()
   30221              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30222              :                     STRIP_UNARY (operands[4]))
   30223              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30224              :                        STRIP_UNARY (operands[4]))
   30225              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30226              :                        STRIP_UNARY (operands[3]))
   30227              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30228              :                        STRIP_UNARY (operands[3])))) && 
   30229              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30230              : ( 1)))
   30231              :                 return NULL;
   30232              :               return gen_split_2294 (insn, operands);
   30233              : 
   30234              :             case 21:
   30235              :               if (!((
   30236              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30237              : ((64 == 64 || TARGET_AVX512VL
   30238              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30239              :    && ix86_pre_reload_split ()
   30240              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30241              :                     STRIP_UNARY (operands[4]))
   30242              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30243              :                        STRIP_UNARY (operands[4]))
   30244              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30245              :                        STRIP_UNARY (operands[3]))
   30246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30247              :                        STRIP_UNARY (operands[3])))) && 
   30248              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30249              : (TARGET_AVX512F)) && 
   30250              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30251              : ( 1)))
   30252              :                 return NULL;
   30253              :               return gen_split_2321 (insn, operands);
   30254              : 
   30255              :             case 22:
   30256              :               if (!((
   30257              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30258              : ((32 == 64 || TARGET_AVX512VL
   30259              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30260              :    && ix86_pre_reload_split ()
   30261              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30262              :                     STRIP_UNARY (operands[4]))
   30263              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30264              :                        STRIP_UNARY (operands[4]))
   30265              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30266              :                        STRIP_UNARY (operands[3]))
   30267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30268              :                        STRIP_UNARY (operands[3])))) && 
   30269              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30270              : (TARGET_AVX)) && 
   30271              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30272              : ( 1)))
   30273              :                 return NULL;
   30274              :               return gen_split_2348 (insn, operands);
   30275              : 
   30276              :             case 23:
   30277              :               if (!((
   30278              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30279              : ((16 == 64 || TARGET_AVX512VL
   30280              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30281              :    && ix86_pre_reload_split ()
   30282              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30283              :                     STRIP_UNARY (operands[4]))
   30284              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30285              :                        STRIP_UNARY (operands[4]))
   30286              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30287              :                        STRIP_UNARY (operands[3]))
   30288              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30289              :                        STRIP_UNARY (operands[3])))) && 
   30290              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30291              : (TARGET_SSE2)) && 
   30292              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30293              : ( 1)))
   30294              :                 return NULL;
   30295              :               return gen_split_2375 (insn, operands);
   30296              : 
   30297              :             case 24:
   30298              :               if (!((
   30299              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30300              : ((64 == 64 || TARGET_AVX512VL
   30301              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30302              :    && ix86_pre_reload_split ()
   30303              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30304              :                     STRIP_UNARY (operands[4]))
   30305              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30306              :                        STRIP_UNARY (operands[4]))
   30307              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30308              :                        STRIP_UNARY (operands[3]))
   30309              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30310              :                        STRIP_UNARY (operands[3])))) && 
   30311              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30312              : (TARGET_AVX512F)) && 
   30313              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30314              : ( 1)))
   30315              :                 return NULL;
   30316              :               return gen_split_2081 (insn, operands);
   30317              : 
   30318              :             case 25:
   30319              :               if (!((
   30320              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30321              : ((32 == 64 || TARGET_AVX512VL
   30322              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30323              :    && ix86_pre_reload_split ()
   30324              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30325              :                     STRIP_UNARY (operands[4]))
   30326              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30327              :                        STRIP_UNARY (operands[4]))
   30328              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30329              :                        STRIP_UNARY (operands[3]))
   30330              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30331              :                        STRIP_UNARY (operands[3])))) && 
   30332              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30333              : (TARGET_AVX)) && 
   30334              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30335              : ( 1)))
   30336              :                 return NULL;
   30337              :               return gen_split_2108 (insn, operands);
   30338              : 
   30339              :             case 26:
   30340              :               if (!(
   30341              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30342              : ((16 == 64 || TARGET_AVX512VL
   30343              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30344              :    && ix86_pre_reload_split ()
   30345              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30346              :                     STRIP_UNARY (operands[4]))
   30347              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30348              :                        STRIP_UNARY (operands[4]))
   30349              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30350              :                        STRIP_UNARY (operands[3]))
   30351              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30352              :                        STRIP_UNARY (operands[3])))) && 
   30353              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30354              : ( 1)))
   30355              :                 return NULL;
   30356              :               return gen_split_2135 (insn, operands);
   30357              : 
   30358              :             case 27:
   30359              :               if (!((
   30360              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30361              : ((64 == 64 || TARGET_AVX512VL
   30362              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30363              :    && ix86_pre_reload_split ()
   30364              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30365              :                     STRIP_UNARY (operands[4]))
   30366              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30367              :                        STRIP_UNARY (operands[4]))
   30368              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30369              :                        STRIP_UNARY (operands[3]))
   30370              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30371              :                        STRIP_UNARY (operands[3])))) && 
   30372              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30373              : (TARGET_AVX512F)) && 
   30374              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30375              : ( 1)))
   30376              :                 return NULL;
   30377              :               return gen_split_2162 (insn, operands);
   30378              : 
   30379              :             case 28:
   30380              :               if (!((
   30381              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30382              : ((32 == 64 || TARGET_AVX512VL
   30383              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30384              :    && ix86_pre_reload_split ()
   30385              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30386              :                     STRIP_UNARY (operands[4]))
   30387              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30388              :                        STRIP_UNARY (operands[4]))
   30389              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30390              :                        STRIP_UNARY (operands[3]))
   30391              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30392              :                        STRIP_UNARY (operands[3])))) && 
   30393              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30394              : (TARGET_AVX)) && 
   30395              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30396              : ( 1)))
   30397              :                 return NULL;
   30398              :               return gen_split_2189 (insn, operands);
   30399              : 
   30400              :             case 29:
   30401              :               if (!(
   30402              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30403              : ((16 == 64 || TARGET_AVX512VL
   30404              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30405              :    && ix86_pre_reload_split ()
   30406              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30407              :                     STRIP_UNARY (operands[4]))
   30408              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30409              :                        STRIP_UNARY (operands[4]))
   30410              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30411              :                        STRIP_UNARY (operands[3]))
   30412              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30413              :                        STRIP_UNARY (operands[3])))) && 
   30414              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30415              : ( 1)))
   30416              :                 return NULL;
   30417              :               return gen_split_2216 (insn, operands);
   30418              : 
   30419              :             case 30:
   30420              :               if (!((
   30421              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30422              : ((64 == 64 || TARGET_AVX512VL
   30423              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30424              :    && ix86_pre_reload_split ()
   30425              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30426              :                     STRIP_UNARY (operands[4]))
   30427              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30428              :                        STRIP_UNARY (operands[4]))
   30429              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30430              :                        STRIP_UNARY (operands[3]))
   30431              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30432              :                        STRIP_UNARY (operands[3])))) && 
   30433              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30434              : (TARGET_AVX512F)) && 
   30435              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30436              : ( 1)))
   30437              :                 return NULL;
   30438              :               return gen_split_2243 (insn, operands);
   30439              : 
   30440              :             case 31:
   30441              :               if (!((
   30442              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30443              : ((32 == 64 || TARGET_AVX512VL
   30444              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30445              :    && ix86_pre_reload_split ()
   30446              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30447              :                     STRIP_UNARY (operands[4]))
   30448              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30449              :                        STRIP_UNARY (operands[4]))
   30450              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30451              :                        STRIP_UNARY (operands[3]))
   30452              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30453              :                        STRIP_UNARY (operands[3])))) && 
   30454              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30455              : (TARGET_AVX)) && 
   30456              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30457              : ( 1)))
   30458              :                 return NULL;
   30459              :               return gen_split_2270 (insn, operands);
   30460              : 
   30461              :             case 32:
   30462              :               if (!(
   30463              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30464              : ((16 == 64 || TARGET_AVX512VL
   30465              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30466              :    && ix86_pre_reload_split ()
   30467              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30468              :                     STRIP_UNARY (operands[4]))
   30469              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30470              :                        STRIP_UNARY (operands[4]))
   30471              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30472              :                        STRIP_UNARY (operands[3]))
   30473              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30474              :                        STRIP_UNARY (operands[3])))) && 
   30475              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30476              : ( 1)))
   30477              :                 return NULL;
   30478              :               return gen_split_2297 (insn, operands);
   30479              : 
   30480              :             case 33:
   30481              :               if (!((
   30482              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30483              : ((64 == 64 || TARGET_AVX512VL
   30484              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30485              :    && ix86_pre_reload_split ()
   30486              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30487              :                     STRIP_UNARY (operands[4]))
   30488              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30489              :                        STRIP_UNARY (operands[4]))
   30490              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30491              :                        STRIP_UNARY (operands[3]))
   30492              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30493              :                        STRIP_UNARY (operands[3])))) && 
   30494              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30495              : (TARGET_AVX512F)) && 
   30496              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30497              : ( 1)))
   30498              :                 return NULL;
   30499              :               return gen_split_2324 (insn, operands);
   30500              : 
   30501              :             case 34:
   30502              :               if (!((
   30503              : #line 14102 "/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              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30508              :                     STRIP_UNARY (operands[4]))
   30509              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30510              :                        STRIP_UNARY (operands[4]))
   30511              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30512              :                        STRIP_UNARY (operands[3]))
   30513              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30514              :                        STRIP_UNARY (operands[3])))) && 
   30515              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30516              : (TARGET_AVX)) && 
   30517              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30518              : ( 1)))
   30519              :                 return NULL;
   30520              :               return gen_split_2351 (insn, operands);
   30521              : 
   30522              :             case 35:
   30523              :               if (!((
   30524              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30525              : ((16 == 64 || TARGET_AVX512VL
   30526              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30527              :    && ix86_pre_reload_split ()
   30528              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30529              :                     STRIP_UNARY (operands[4]))
   30530              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30531              :                        STRIP_UNARY (operands[4]))
   30532              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30533              :                        STRIP_UNARY (operands[3]))
   30534              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30535              :                        STRIP_UNARY (operands[3])))) && 
   30536              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30537              : (TARGET_SSE2)) && 
   30538              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30539              : ( 1)))
   30540              :                 return NULL;
   30541              :               return gen_split_2378 (insn, operands);
   30542              : 
   30543              :             case 36:
   30544              :               if (!((
   30545              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30546              : ((64 == 64 || TARGET_AVX512VL
   30547              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30548              :    && ix86_pre_reload_split ()) && 
   30549              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30550              : (TARGET_AVX512F)) && 
   30551              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30552              : ( 1)))
   30553              :                 return NULL;
   30554              :               return gen_split_3149 (insn, operands);
   30555              : 
   30556              :             case 37:
   30557              :               if (!((
   30558              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30559              : ((32 == 64 || TARGET_AVX512VL
   30560              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30561              :    && ix86_pre_reload_split ()) && 
   30562              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30563              : (TARGET_AVX)) && 
   30564              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30565              : ( 1)))
   30566              :                 return NULL;
   30567              :               return gen_split_3158 (insn, operands);
   30568              : 
   30569              :             case 38:
   30570              :               if (!(
   30571              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30572              : ((16 == 64 || TARGET_AVX512VL
   30573              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30574              :    && ix86_pre_reload_split ()) && 
   30575              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30576              : ( 1)))
   30577              :                 return NULL;
   30578              :               return gen_split_3167 (insn, operands);
   30579              : 
   30580              :             case 39:
   30581              :               if (!((
   30582              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30583              : ((64 == 64 || TARGET_AVX512VL
   30584              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30585              :    && ix86_pre_reload_split ()) && 
   30586              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30587              : (TARGET_AVX512F)) && 
   30588              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30589              : ( 1)))
   30590              :                 return NULL;
   30591              :               return gen_split_3176 (insn, operands);
   30592              : 
   30593              :             case 40:
   30594              :               if (!((
   30595              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30596              : ((32 == 64 || TARGET_AVX512VL
   30597              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30598              :    && ix86_pre_reload_split ()) && 
   30599              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30600              : (TARGET_AVX)) && 
   30601              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30602              : ( 1)))
   30603              :                 return NULL;
   30604              :               return gen_split_3185 (insn, operands);
   30605              : 
   30606              :             case 41:
   30607              :               if (!(
   30608              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30609              : ((16 == 64 || TARGET_AVX512VL
   30610              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30611              :    && ix86_pre_reload_split ()) && 
   30612              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30613              : ( 1)))
   30614              :                 return NULL;
   30615              :               return gen_split_3194 (insn, operands);
   30616              : 
   30617              :             case 42:
   30618              :               if (!((
   30619              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30620              : ((64 == 64 || TARGET_AVX512VL
   30621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30622              :    && ix86_pre_reload_split ()) && 
   30623              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30624              : (TARGET_AVX512F)) && 
   30625              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30626              : ( 1)))
   30627              :                 return NULL;
   30628              :               return gen_split_3203 (insn, operands);
   30629              : 
   30630              :             case 43:
   30631              :               if (!((
   30632              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30633              : ((32 == 64 || TARGET_AVX512VL
   30634              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30635              :    && ix86_pre_reload_split ()) && 
   30636              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30637              : (TARGET_AVX)) && 
   30638              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30639              : ( 1)))
   30640              :                 return NULL;
   30641              :               return gen_split_3212 (insn, operands);
   30642              : 
   30643              :             case 44:
   30644              :               if (!(
   30645              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30646              : ((16 == 64 || TARGET_AVX512VL
   30647              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30648              :    && ix86_pre_reload_split ()) && 
   30649              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30650              : ( 1)))
   30651              :                 return NULL;
   30652              :               return gen_split_3221 (insn, operands);
   30653              : 
   30654              :             case 45:
   30655              :               if (!((
   30656              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30657              : ((64 == 64 || TARGET_AVX512VL
   30658              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30659              :    && ix86_pre_reload_split ()) && 
   30660              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30661              : (TARGET_AVX512F)) && 
   30662              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30663              : ( 1)))
   30664              :                 return NULL;
   30665              :               return gen_split_3230 (insn, operands);
   30666              : 
   30667              :             case 46:
   30668              :               if (!((
   30669              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30670              : ((32 == 64 || TARGET_AVX512VL
   30671              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30672              :    && ix86_pre_reload_split ()) && 
   30673              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30674              : (TARGET_AVX)) && 
   30675              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30676              : ( 1)))
   30677              :                 return NULL;
   30678              :               return gen_split_3239 (insn, operands);
   30679              : 
   30680              :             case 47:
   30681              :               if (!((
   30682              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30683              : ((16 == 64 || TARGET_AVX512VL
   30684              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30685              :    && ix86_pre_reload_split ()) && 
   30686              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30687              : (TARGET_SSE2)) && 
   30688              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30689              : ( 1)))
   30690              :                 return NULL;
   30691              :               return gen_split_3248 (insn, operands);
   30692              : 
   30693              :             default:
   30694              :               return NULL;
   30695              :             }
   30696              : 
   30697              :         case AND:
   30698              :           switch (pattern542 (x2))
   30699              :             {
   30700              :             case 0:
   30701              :               if (!((
   30702              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30703              : ((64 == 64 || TARGET_AVX512VL
   30704              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30705              :    && ix86_pre_reload_split ()
   30706              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30707              :                     STRIP_UNARY (operands[4]))
   30708              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30709              :                        STRIP_UNARY (operands[4]))
   30710              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30711              :                        STRIP_UNARY (operands[3]))
   30712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30713              :                        STRIP_UNARY (operands[3])))) && 
   30714              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30715              : (TARGET_AVX512F)) && 
   30716              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30717              : ( 1)))
   30718              :                 return NULL;
   30719              :               return gen_split_2723 (insn, operands);
   30720              : 
   30721              :             case 1:
   30722              :               if (!((
   30723              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30724              : ((32 == 64 || TARGET_AVX512VL
   30725              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30726              :    && ix86_pre_reload_split ()
   30727              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30728              :                     STRIP_UNARY (operands[4]))
   30729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30730              :                        STRIP_UNARY (operands[4]))
   30731              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30732              :                        STRIP_UNARY (operands[3]))
   30733              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30734              :                        STRIP_UNARY (operands[3])))) && 
   30735              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30736              : (TARGET_AVX)) && 
   30737              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30738              : ( 1)))
   30739              :                 return NULL;
   30740              :               return gen_split_2750 (insn, operands);
   30741              : 
   30742              :             case 2:
   30743              :               if (!(
   30744              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30745              : ((16 == 64 || TARGET_AVX512VL
   30746              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30747              :    && ix86_pre_reload_split ()
   30748              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30749              :                     STRIP_UNARY (operands[4]))
   30750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30751              :                        STRIP_UNARY (operands[4]))
   30752              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30753              :                        STRIP_UNARY (operands[3]))
   30754              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30755              :                        STRIP_UNARY (operands[3])))) && 
   30756              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30757              : ( 1)))
   30758              :                 return NULL;
   30759              :               return gen_split_2777 (insn, operands);
   30760              : 
   30761              :             case 3:
   30762              :               if (!((
   30763              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30764              : ((64 == 64 || TARGET_AVX512VL
   30765              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30766              :    && ix86_pre_reload_split ()
   30767              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30768              :                     STRIP_UNARY (operands[4]))
   30769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30770              :                        STRIP_UNARY (operands[4]))
   30771              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30772              :                        STRIP_UNARY (operands[3]))
   30773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30774              :                        STRIP_UNARY (operands[3])))) && 
   30775              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30776              : (TARGET_AVX512F)) && 
   30777              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30778              : ( 1)))
   30779              :                 return NULL;
   30780              :               return gen_split_2804 (insn, operands);
   30781              : 
   30782              :             case 4:
   30783              :               if (!((
   30784              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30785              : ((32 == 64 || TARGET_AVX512VL
   30786              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30787              :    && ix86_pre_reload_split ()
   30788              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30789              :                     STRIP_UNARY (operands[4]))
   30790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30791              :                        STRIP_UNARY (operands[4]))
   30792              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30793              :                        STRIP_UNARY (operands[3]))
   30794              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30795              :                        STRIP_UNARY (operands[3])))) && 
   30796              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30797              : (TARGET_AVX)) && 
   30798              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30799              : ( 1)))
   30800              :                 return NULL;
   30801              :               return gen_split_2831 (insn, operands);
   30802              : 
   30803              :             case 5:
   30804              :               if (!(
   30805              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30806              : ((16 == 64 || TARGET_AVX512VL
   30807              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30808              :    && ix86_pre_reload_split ()
   30809              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30810              :                     STRIP_UNARY (operands[4]))
   30811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30812              :                        STRIP_UNARY (operands[4]))
   30813              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30814              :                        STRIP_UNARY (operands[3]))
   30815              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30816              :                        STRIP_UNARY (operands[3])))) && 
   30817              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30818              : ( 1)))
   30819              :                 return NULL;
   30820              :               return gen_split_2858 (insn, operands);
   30821              : 
   30822              :             case 6:
   30823              :               if (!((
   30824              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30825              : ((64 == 64 || TARGET_AVX512VL
   30826              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30827              :    && ix86_pre_reload_split ()
   30828              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30829              :                     STRIP_UNARY (operands[4]))
   30830              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30831              :                        STRIP_UNARY (operands[4]))
   30832              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30833              :                        STRIP_UNARY (operands[3]))
   30834              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30835              :                        STRIP_UNARY (operands[3])))) && 
   30836              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30837              : (TARGET_AVX512F)) && 
   30838              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30839              : ( 1)))
   30840              :                 return NULL;
   30841              :               return gen_split_2885 (insn, operands);
   30842              : 
   30843              :             case 7:
   30844              :               if (!((
   30845              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30846              : ((32 == 64 || TARGET_AVX512VL
   30847              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30848              :    && ix86_pre_reload_split ()
   30849              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30850              :                     STRIP_UNARY (operands[4]))
   30851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30852              :                        STRIP_UNARY (operands[4]))
   30853              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30854              :                        STRIP_UNARY (operands[3]))
   30855              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30856              :                        STRIP_UNARY (operands[3])))) && 
   30857              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30858              : (TARGET_AVX)) && 
   30859              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30860              : ( 1)))
   30861              :                 return NULL;
   30862              :               return gen_split_2912 (insn, operands);
   30863              : 
   30864              :             case 8:
   30865              :               if (!(
   30866              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30867              : ((16 == 64 || TARGET_AVX512VL
   30868              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30869              :    && ix86_pre_reload_split ()
   30870              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30871              :                     STRIP_UNARY (operands[4]))
   30872              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30873              :                        STRIP_UNARY (operands[4]))
   30874              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30875              :                        STRIP_UNARY (operands[3]))
   30876              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30877              :                        STRIP_UNARY (operands[3])))) && 
   30878              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30879              : ( 1)))
   30880              :                 return NULL;
   30881              :               return gen_split_2939 (insn, operands);
   30882              : 
   30883              :             case 9:
   30884              :               if (!((
   30885              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30886              : ((64 == 64 || TARGET_AVX512VL
   30887              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30888              :    && ix86_pre_reload_split ()
   30889              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30890              :                     STRIP_UNARY (operands[4]))
   30891              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30892              :                        STRIP_UNARY (operands[4]))
   30893              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30894              :                        STRIP_UNARY (operands[3]))
   30895              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30896              :                        STRIP_UNARY (operands[3])))) && 
   30897              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30898              : (TARGET_AVX512F)) && 
   30899              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30900              : ( 1)))
   30901              :                 return NULL;
   30902              :               return gen_split_2966 (insn, operands);
   30903              : 
   30904              :             case 10:
   30905              :               if (!((
   30906              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30907              : ((32 == 64 || TARGET_AVX512VL
   30908              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30909              :    && ix86_pre_reload_split ()
   30910              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30911              :                     STRIP_UNARY (operands[4]))
   30912              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30913              :                        STRIP_UNARY (operands[4]))
   30914              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30915              :                        STRIP_UNARY (operands[3]))
   30916              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30917              :                        STRIP_UNARY (operands[3])))) && 
   30918              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30919              : (TARGET_AVX)) && 
   30920              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30921              : ( 1)))
   30922              :                 return NULL;
   30923              :               return gen_split_2993 (insn, operands);
   30924              : 
   30925              :             case 11:
   30926              :               if (!((
   30927              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30928              : ((16 == 64 || TARGET_AVX512VL
   30929              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30930              :    && ix86_pre_reload_split ()
   30931              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30932              :                     STRIP_UNARY (operands[4]))
   30933              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30934              :                        STRIP_UNARY (operands[4]))
   30935              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30936              :                        STRIP_UNARY (operands[3]))
   30937              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30938              :                        STRIP_UNARY (operands[3])))) && 
   30939              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30940              : (TARGET_SSE2)) && 
   30941              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30942              : ( 1)))
   30943              :                 return NULL;
   30944              :               return gen_split_3020 (insn, operands);
   30945              : 
   30946              :             default:
   30947              :               return NULL;
   30948              :             }
   30949              : 
   30950              :         case IOR:
   30951              :           switch (pattern542 (x2))
   30952              :             {
   30953              :             case 0:
   30954              :               if (!((
   30955              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30956              : ((64 == 64 || TARGET_AVX512VL
   30957              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30958              :    && ix86_pre_reload_split ()
   30959              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30960              :                     STRIP_UNARY (operands[4]))
   30961              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30962              :                        STRIP_UNARY (operands[4]))
   30963              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30964              :                        STRIP_UNARY (operands[3]))
   30965              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30966              :                        STRIP_UNARY (operands[3])))) && 
   30967              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30968              : (TARGET_AVX512F)) && 
   30969              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30970              : ( 1)))
   30971              :                 return NULL;
   30972              :               return gen_split_2726 (insn, operands);
   30973              : 
   30974              :             case 1:
   30975              :               if (!((
   30976              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30977              : ((32 == 64 || TARGET_AVX512VL
   30978              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30979              :    && ix86_pre_reload_split ()
   30980              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30981              :                     STRIP_UNARY (operands[4]))
   30982              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30983              :                        STRIP_UNARY (operands[4]))
   30984              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30985              :                        STRIP_UNARY (operands[3]))
   30986              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30987              :                        STRIP_UNARY (operands[3])))) && 
   30988              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30989              : (TARGET_AVX)) && 
   30990              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30991              : ( 1)))
   30992              :                 return NULL;
   30993              :               return gen_split_2753 (insn, operands);
   30994              : 
   30995              :             case 2:
   30996              :               if (!(
   30997              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30998              : ((16 == 64 || TARGET_AVX512VL
   30999              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31000              :    && ix86_pre_reload_split ()
   31001              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31002              :                     STRIP_UNARY (operands[4]))
   31003              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31004              :                        STRIP_UNARY (operands[4]))
   31005              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31006              :                        STRIP_UNARY (operands[3]))
   31007              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31008              :                        STRIP_UNARY (operands[3])))) && 
   31009              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31010              : ( 1)))
   31011              :                 return NULL;
   31012              :               return gen_split_2780 (insn, operands);
   31013              : 
   31014              :             case 3:
   31015              :               if (!((
   31016              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31017              : ((64 == 64 || TARGET_AVX512VL
   31018              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31019              :    && ix86_pre_reload_split ()
   31020              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31021              :                     STRIP_UNARY (operands[4]))
   31022              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31023              :                        STRIP_UNARY (operands[4]))
   31024              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31025              :                        STRIP_UNARY (operands[3]))
   31026              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31027              :                        STRIP_UNARY (operands[3])))) && 
   31028              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31029              : (TARGET_AVX512F)) && 
   31030              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31031              : ( 1)))
   31032              :                 return NULL;
   31033              :               return gen_split_2807 (insn, operands);
   31034              : 
   31035              :             case 4:
   31036              :               if (!((
   31037              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31038              : ((32 == 64 || TARGET_AVX512VL
   31039              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31040              :    && ix86_pre_reload_split ()
   31041              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31042              :                     STRIP_UNARY (operands[4]))
   31043              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31044              :                        STRIP_UNARY (operands[4]))
   31045              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31046              :                        STRIP_UNARY (operands[3]))
   31047              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31048              :                        STRIP_UNARY (operands[3])))) && 
   31049              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31050              : (TARGET_AVX)) && 
   31051              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31052              : ( 1)))
   31053              :                 return NULL;
   31054              :               return gen_split_2834 (insn, operands);
   31055              : 
   31056              :             case 5:
   31057              :               if (!(
   31058              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31059              : ((16 == 64 || TARGET_AVX512VL
   31060              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31061              :    && ix86_pre_reload_split ()
   31062              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31063              :                     STRIP_UNARY (operands[4]))
   31064              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31065              :                        STRIP_UNARY (operands[4]))
   31066              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31067              :                        STRIP_UNARY (operands[3]))
   31068              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31069              :                        STRIP_UNARY (operands[3])))) && 
   31070              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31071              : ( 1)))
   31072              :                 return NULL;
   31073              :               return gen_split_2861 (insn, operands);
   31074              : 
   31075              :             case 6:
   31076              :               if (!((
   31077              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31078              : ((64 == 64 || TARGET_AVX512VL
   31079              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31080              :    && ix86_pre_reload_split ()
   31081              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31082              :                     STRIP_UNARY (operands[4]))
   31083              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31084              :                        STRIP_UNARY (operands[4]))
   31085              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31086              :                        STRIP_UNARY (operands[3]))
   31087              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31088              :                        STRIP_UNARY (operands[3])))) && 
   31089              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31090              : (TARGET_AVX512F)) && 
   31091              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31092              : ( 1)))
   31093              :                 return NULL;
   31094              :               return gen_split_2888 (insn, operands);
   31095              : 
   31096              :             case 7:
   31097              :               if (!((
   31098              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31099              : ((32 == 64 || TARGET_AVX512VL
   31100              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31101              :    && ix86_pre_reload_split ()
   31102              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31103              :                     STRIP_UNARY (operands[4]))
   31104              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31105              :                        STRIP_UNARY (operands[4]))
   31106              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31107              :                        STRIP_UNARY (operands[3]))
   31108              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31109              :                        STRIP_UNARY (operands[3])))) && 
   31110              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31111              : (TARGET_AVX)) && 
   31112              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31113              : ( 1)))
   31114              :                 return NULL;
   31115              :               return gen_split_2915 (insn, operands);
   31116              : 
   31117              :             case 8:
   31118              :               if (!(
   31119              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31120              : ((16 == 64 || TARGET_AVX512VL
   31121              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31122              :    && ix86_pre_reload_split ()
   31123              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31124              :                     STRIP_UNARY (operands[4]))
   31125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31126              :                        STRIP_UNARY (operands[4]))
   31127              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31128              :                        STRIP_UNARY (operands[3]))
   31129              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31130              :                        STRIP_UNARY (operands[3])))) && 
   31131              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31132              : ( 1)))
   31133              :                 return NULL;
   31134              :               return gen_split_2942 (insn, operands);
   31135              : 
   31136              :             case 9:
   31137              :               if (!((
   31138              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31139              : ((64 == 64 || TARGET_AVX512VL
   31140              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31141              :    && ix86_pre_reload_split ()
   31142              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31143              :                     STRIP_UNARY (operands[4]))
   31144              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31145              :                        STRIP_UNARY (operands[4]))
   31146              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31147              :                        STRIP_UNARY (operands[3]))
   31148              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31149              :                        STRIP_UNARY (operands[3])))) && 
   31150              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31151              : (TARGET_AVX512F)) && 
   31152              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31153              : ( 1)))
   31154              :                 return NULL;
   31155              :               return gen_split_2969 (insn, operands);
   31156              : 
   31157              :             case 10:
   31158              :               if (!((
   31159              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31160              : ((32 == 64 || TARGET_AVX512VL
   31161              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31162              :    && ix86_pre_reload_split ()
   31163              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31164              :                     STRIP_UNARY (operands[4]))
   31165              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31166              :                        STRIP_UNARY (operands[4]))
   31167              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31168              :                        STRIP_UNARY (operands[3]))
   31169              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31170              :                        STRIP_UNARY (operands[3])))) && 
   31171              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31172              : (TARGET_AVX)) && 
   31173              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31174              : ( 1)))
   31175              :                 return NULL;
   31176              :               return gen_split_2996 (insn, operands);
   31177              : 
   31178              :             case 11:
   31179              :               if (!((
   31180              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31181              : ((16 == 64 || TARGET_AVX512VL
   31182              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31183              :    && ix86_pre_reload_split ()
   31184              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31185              :                     STRIP_UNARY (operands[4]))
   31186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31187              :                        STRIP_UNARY (operands[4]))
   31188              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31189              :                        STRIP_UNARY (operands[3]))
   31190              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31191              :                        STRIP_UNARY (operands[3])))) && 
   31192              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31193              : (TARGET_SSE2)) && 
   31194              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31195              : ( 1)))
   31196              :                 return NULL;
   31197              :               return gen_split_3023 (insn, operands);
   31198              : 
   31199              :             default:
   31200              :               return NULL;
   31201              :             }
   31202              : 
   31203              :         case XOR:
   31204              :           switch (pattern542 (x2))
   31205              :             {
   31206              :             case 0:
   31207              :               if (!((
   31208              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31209              : ((64 == 64 || TARGET_AVX512VL
   31210              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31211              :    && ix86_pre_reload_split ()
   31212              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31213              :                     STRIP_UNARY (operands[4]))
   31214              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31215              :                        STRIP_UNARY (operands[4]))
   31216              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31217              :                        STRIP_UNARY (operands[3]))
   31218              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31219              :                        STRIP_UNARY (operands[3])))) && 
   31220              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31221              : (TARGET_AVX512F)) && 
   31222              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31223              : ( 1)))
   31224              :                 return NULL;
   31225              :               return gen_split_2729 (insn, operands);
   31226              : 
   31227              :             case 1:
   31228              :               if (!((
   31229              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31230              : ((32 == 64 || TARGET_AVX512VL
   31231              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31232              :    && ix86_pre_reload_split ()
   31233              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31234              :                     STRIP_UNARY (operands[4]))
   31235              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31236              :                        STRIP_UNARY (operands[4]))
   31237              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31238              :                        STRIP_UNARY (operands[3]))
   31239              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31240              :                        STRIP_UNARY (operands[3])))) && 
   31241              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31242              : (TARGET_AVX)) && 
   31243              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31244              : ( 1)))
   31245              :                 return NULL;
   31246              :               return gen_split_2756 (insn, operands);
   31247              : 
   31248              :             case 2:
   31249              :               if (!(
   31250              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31251              : ((16 == 64 || TARGET_AVX512VL
   31252              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31253              :    && ix86_pre_reload_split ()
   31254              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31255              :                     STRIP_UNARY (operands[4]))
   31256              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31257              :                        STRIP_UNARY (operands[4]))
   31258              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31259              :                        STRIP_UNARY (operands[3]))
   31260              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31261              :                        STRIP_UNARY (operands[3])))) && 
   31262              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31263              : ( 1)))
   31264              :                 return NULL;
   31265              :               return gen_split_2783 (insn, operands);
   31266              : 
   31267              :             case 3:
   31268              :               if (!((
   31269              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31270              : ((64 == 64 || TARGET_AVX512VL
   31271              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31272              :    && ix86_pre_reload_split ()
   31273              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31274              :                     STRIP_UNARY (operands[4]))
   31275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31276              :                        STRIP_UNARY (operands[4]))
   31277              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31278              :                        STRIP_UNARY (operands[3]))
   31279              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31280              :                        STRIP_UNARY (operands[3])))) && 
   31281              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31282              : (TARGET_AVX512F)) && 
   31283              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31284              : ( 1)))
   31285              :                 return NULL;
   31286              :               return gen_split_2810 (insn, operands);
   31287              : 
   31288              :             case 4:
   31289              :               if (!((
   31290              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31291              : ((32 == 64 || TARGET_AVX512VL
   31292              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31293              :    && ix86_pre_reload_split ()
   31294              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31295              :                     STRIP_UNARY (operands[4]))
   31296              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31297              :                        STRIP_UNARY (operands[4]))
   31298              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31299              :                        STRIP_UNARY (operands[3]))
   31300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31301              :                        STRIP_UNARY (operands[3])))) && 
   31302              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31303              : (TARGET_AVX)) && 
   31304              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31305              : ( 1)))
   31306              :                 return NULL;
   31307              :               return gen_split_2837 (insn, operands);
   31308              : 
   31309              :             case 5:
   31310              :               if (!(
   31311              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31312              : ((16 == 64 || TARGET_AVX512VL
   31313              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31314              :    && ix86_pre_reload_split ()
   31315              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31316              :                     STRIP_UNARY (operands[4]))
   31317              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31318              :                        STRIP_UNARY (operands[4]))
   31319              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31320              :                        STRIP_UNARY (operands[3]))
   31321              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31322              :                        STRIP_UNARY (operands[3])))) && 
   31323              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31324              : ( 1)))
   31325              :                 return NULL;
   31326              :               return gen_split_2864 (insn, operands);
   31327              : 
   31328              :             case 6:
   31329              :               if (!((
   31330              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31331              : ((64 == 64 || TARGET_AVX512VL
   31332              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31333              :    && ix86_pre_reload_split ()
   31334              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31335              :                     STRIP_UNARY (operands[4]))
   31336              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31337              :                        STRIP_UNARY (operands[4]))
   31338              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31339              :                        STRIP_UNARY (operands[3]))
   31340              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31341              :                        STRIP_UNARY (operands[3])))) && 
   31342              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31343              : (TARGET_AVX512F)) && 
   31344              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31345              : ( 1)))
   31346              :                 return NULL;
   31347              :               return gen_split_2891 (insn, operands);
   31348              : 
   31349              :             case 7:
   31350              :               if (!((
   31351              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31352              : ((32 == 64 || TARGET_AVX512VL
   31353              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31354              :    && ix86_pre_reload_split ()
   31355              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31356              :                     STRIP_UNARY (operands[4]))
   31357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31358              :                        STRIP_UNARY (operands[4]))
   31359              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31360              :                        STRIP_UNARY (operands[3]))
   31361              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31362              :                        STRIP_UNARY (operands[3])))) && 
   31363              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31364              : (TARGET_AVX)) && 
   31365              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31366              : ( 1)))
   31367              :                 return NULL;
   31368              :               return gen_split_2918 (insn, operands);
   31369              : 
   31370              :             case 8:
   31371              :               if (!(
   31372              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31373              : ((16 == 64 || TARGET_AVX512VL
   31374              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31375              :    && ix86_pre_reload_split ()
   31376              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31377              :                     STRIP_UNARY (operands[4]))
   31378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31379              :                        STRIP_UNARY (operands[4]))
   31380              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31381              :                        STRIP_UNARY (operands[3]))
   31382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31383              :                        STRIP_UNARY (operands[3])))) && 
   31384              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31385              : ( 1)))
   31386              :                 return NULL;
   31387              :               return gen_split_2945 (insn, operands);
   31388              : 
   31389              :             case 9:
   31390              :               if (!((
   31391              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31392              : ((64 == 64 || TARGET_AVX512VL
   31393              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31394              :    && ix86_pre_reload_split ()
   31395              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31396              :                     STRIP_UNARY (operands[4]))
   31397              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31398              :                        STRIP_UNARY (operands[4]))
   31399              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31400              :                        STRIP_UNARY (operands[3]))
   31401              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31402              :                        STRIP_UNARY (operands[3])))) && 
   31403              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31404              : (TARGET_AVX512F)) && 
   31405              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31406              : ( 1)))
   31407              :                 return NULL;
   31408              :               return gen_split_2972 (insn, operands);
   31409              : 
   31410              :             case 10:
   31411              :               if (!((
   31412              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31413              : ((32 == 64 || TARGET_AVX512VL
   31414              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31415              :    && ix86_pre_reload_split ()
   31416              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31417              :                     STRIP_UNARY (operands[4]))
   31418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31419              :                        STRIP_UNARY (operands[4]))
   31420              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31421              :                        STRIP_UNARY (operands[3]))
   31422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31423              :                        STRIP_UNARY (operands[3])))) && 
   31424              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31425              : (TARGET_AVX)) && 
   31426              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31427              : ( 1)))
   31428              :                 return NULL;
   31429              :               return gen_split_2999 (insn, operands);
   31430              : 
   31431              :             case 11:
   31432              :               if (!((
   31433              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31434              : ((16 == 64 || TARGET_AVX512VL
   31435              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31436              :    && ix86_pre_reload_split ()
   31437              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31438              :                     STRIP_UNARY (operands[4]))
   31439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31440              :                        STRIP_UNARY (operands[4]))
   31441              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31442              :                        STRIP_UNARY (operands[3]))
   31443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31444              :                        STRIP_UNARY (operands[3])))) && 
   31445              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31446              : (TARGET_SSE2)) && 
   31447              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31448              : ( 1)))
   31449              :                 return NULL;
   31450              :               return gen_split_3026 (insn, operands);
   31451              : 
   31452              :             default:
   31453              :               return NULL;
   31454              :             }
   31455              : 
   31456              :         default:
   31457              :           return NULL;
   31458              :         }
   31459              : 
   31460              :     case XOR:
   31461              :       return split_69 (x1, insn);
   31462              : 
   31463              :     default:
   31464              :       return NULL;
   31465              :     }
   31466              : }
        

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.