LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-recog-6.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 87.7 % 3867 3391
Test Date: 2026-07-11 15:47:05 Functions: 97.1 % 206 200
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        82240 : pattern5 (rtx x1, machine_mode i1)
      57              : {
      58        82240 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59        82240 :   int res ATTRIBUTE_UNUSED;
      60        82240 :   if (!register_operand (operands[0], i1)
      61        80279 :       || GET_MODE (x1) != i1
      62        80279 :       || !register_operand (operands[1], i1)
      63       156801 :       || !register_operand (operands[2], i1))
      64        15715 :     return -1;
      65              :   return 0;
      66              : }
      67              : 
      68              : int
      69       229248 : pattern12 (rtx x1, machine_mode i1)
      70              : {
      71       229248 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      72       229248 :   int res ATTRIBUTE_UNUSED;
      73       229248 :   if (!register_operand (operands[0], i1)
      74       229085 :       || GET_MODE (x1) != i1
      75       229085 :       || !register_operand (operands[1], i1)
      76       407128 :       || !nonimmediate_operand (operands[2], i1))
      77       178898 :     return -1;
      78              :   return 0;
      79              : }
      80              : 
      81              : int
      82        17106 : pattern17 (rtx x1, int *pnum_clobbers)
      83              : {
      84        17106 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      85        17106 :   rtx x2;
      86        17106 :   int res ATTRIBUTE_UNUSED;
      87        17106 :   if (pnum_clobbers == NULL)
      88              :     return -1;
      89        17106 :   x2 = XEXP (x1, 1);
      90        17106 :   if (GET_MODE (x2) != E_QImode)
      91              :     return -1;
      92        17076 :   return pattern16 (x1); /* [-1, 1] */
      93              : }
      94              : 
      95              : int
      96          105 : pattern23 (rtx x1, machine_mode i1)
      97              : {
      98          105 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      99          105 :   rtx x2;
     100          105 :   int res ATTRIBUTE_UNUSED;
     101          105 :   if (!register_operand (operands[0], i1)
     102          105 :       || GET_MODE (x1) != i1)
     103              :     return -1;
     104          105 :   x2 = XEXP (x1, 0);
     105          105 :   switch (GET_MODE (x2))
     106              :     {
     107            0 :     case E_HFmode:
     108            0 :       if (!register_operand (operands[1], E_V8HFmode))
     109              :         return -1;
     110              :       return 0;
     111              : 
     112           74 :     case E_SFmode:
     113           74 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
     114              :         return -1;
     115              :       return 1;
     116              : 
     117           31 :     case E_DFmode:
     118           31 :       if (!nonimmediate_operand (operands[1], E_V2DFmode))
     119              :         return -1;
     120              :       return 2;
     121              : 
     122              :     default:
     123              :       return -1;
     124              :     }
     125              : }
     126              : 
     127              : int
     128       273355 : pattern27 (rtx x1)
     129              : {
     130       273355 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     131       273355 :   rtx x2, x3, x4, x5;
     132       273355 :   int res ATTRIBUTE_UNUSED;
     133       273355 :   x2 = XEXP (x1, 0);
     134       273355 :   operands[0] = x2;
     135       273355 :   x3 = XEXP (x1, 1);
     136       273355 :   x4 = XEXP (x3, 0);
     137       273355 :   operands[1] = x4;
     138       273355 :   x5 = XEXP (x3, 1);
     139       273355 :   operands[2] = x5;
     140       273355 :   switch (GET_MODE (operands[0]))
     141              :     {
     142           74 :     case E_V32HFmode:
     143           74 :       return pattern26 (x3, 
     144           74 : E_V32HFmode); /* [-1, 0] */
     145              : 
     146          132 :     case E_V16HFmode:
     147          132 :       if (pattern26 (x3, 
     148              : E_V16HFmode) != 0)
     149              :         return -1;
     150              :       return 1;
     151              : 
     152          914 :     case E_V8HFmode:
     153          914 :       if (pattern26 (x3, 
     154              : E_V8HFmode) != 0)
     155              :         return -1;
     156              :       return 2;
     157              : 
     158            0 :     case E_V16SFmode:
     159            0 :       if (pattern26 (x3, 
     160              : E_V16SFmode) != 0)
     161              :         return -1;
     162              :       return 3;
     163              : 
     164         1495 :     case E_V8SFmode:
     165         1495 :       if (pattern26 (x3, 
     166              : E_V8SFmode) != 0)
     167              :         return -1;
     168              :       return 4;
     169              : 
     170          726 :     case E_V4SFmode:
     171          726 :       if (pattern26 (x3, 
     172              : E_V4SFmode) != 0)
     173              :         return -1;
     174              :       return 5;
     175              : 
     176           22 :     case E_V8DFmode:
     177           22 :       if (pattern26 (x3, 
     178              : E_V8DFmode) != 0)
     179              :         return -1;
     180              :       return 6;
     181              : 
     182           38 :     case E_V4DFmode:
     183           38 :       if (pattern26 (x3, 
     184              : E_V4DFmode) != 0)
     185              :         return -1;
     186              :       return 7;
     187              : 
     188          736 :     case E_V2DFmode:
     189          736 :       if (pattern26 (x3, 
     190              : E_V2DFmode) != 0)
     191              :         return -1;
     192              :       return 8;
     193              : 
     194          387 :     case E_V32QImode:
     195          387 :       if (pattern3 (x3, 
     196              : E_V32QImode) != 0)
     197              :         return -1;
     198              :       return 9;
     199              : 
     200          741 :     case E_V16HImode:
     201          741 :       if (pattern3 (x3, 
     202              : E_V16HImode) != 0)
     203              :         return -1;
     204              :       return 10;
     205              : 
     206          945 :     case E_V8SImode:
     207          945 :       if (pattern3 (x3, 
     208              : E_V8SImode) != 0)
     209              :         return -1;
     210              :       return 11;
     211              : 
     212          172 :     case E_V16SImode:
     213          172 :       if (pattern3 (x3, 
     214              : E_V16SImode) != 0)
     215              :         return -1;
     216              :       return 12;
     217              : 
     218         3150 :     case E_V4SImode:
     219         3150 :       if (!register_operand (operands[0], E_V4SImode)
     220         3150 :           || GET_MODE (x3) != E_V4SImode)
     221              :         return -1;
     222              :       return 13;
     223              : 
     224         1442 :     case E_V8DImode:
     225         1442 :       if (pattern3 (x3, 
     226              : E_V8DImode) != 0)
     227              :         return -1;
     228              :       return 14;
     229              : 
     230          585 :     case E_V4DImode:
     231          585 :       if (pattern3 (x3, 
     232              : E_V4DImode) != 0)
     233              :         return -1;
     234              :       return 15;
     235              : 
     236          180 :     case E_V2DImode:
     237          180 :       if (pattern3 (x3, 
     238              : E_V2DImode) != 0)
     239              :         return -1;
     240              :       return 16;
     241              : 
     242          211 :     case E_V64QImode:
     243          211 :       if (pattern3 (x3, 
     244              : E_V64QImode) != 0)
     245              :         return -1;
     246              :       return 17;
     247              : 
     248         6126 :     case E_V16QImode:
     249         6126 :       if (!register_operand (operands[0], E_V16QImode)
     250         6126 :           || GET_MODE (x3) != E_V16QImode)
     251              :         return -1;
     252              :       return 18;
     253              : 
     254          142 :     case E_V32HImode:
     255          142 :       if (pattern3 (x3, 
     256              : E_V32HImode) != 0)
     257              :         return -1;
     258              :       return 19;
     259              : 
     260         9156 :     case E_V8HImode:
     261         9156 :       if (!register_operand (operands[0], E_V8HImode)
     262         9156 :           || GET_MODE (x3) != E_V8HImode)
     263              :         return -1;
     264              :       return 20;
     265              : 
     266          222 :     case E_V32BFmode:
     267          222 :       if (pattern12 (x3, 
     268              : E_V32BFmode) != 0)
     269              :         return -1;
     270              :       return 21;
     271              : 
     272          258 :     case E_V16BFmode:
     273          258 :       if (pattern12 (x3, 
     274              : E_V16BFmode) != 0)
     275              :         return -1;
     276              :       return 22;
     277              : 
     278          218 :     case E_V8BFmode:
     279          218 :       if (pattern12 (x3, 
     280              : E_V8BFmode) != 0)
     281              :         return -1;
     282              :       return 23;
     283              : 
     284              :     default:
     285              :       return -1;
     286              :     }
     287              : }
     288              : 
     289              : int
     290       145077 : pattern51 (rtx x1, int *pnum_clobbers)
     291              : {
     292       145077 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     293       145077 :   rtx x2, x3, x4, x5;
     294       145077 :   int res ATTRIBUTE_UNUSED;
     295       145077 :   if (pnum_clobbers == NULL)
     296              :     return -1;
     297       145071 :   x2 = XEXP (x1, 1);
     298       145071 :   x3 = XEXP (x2, 1);
     299       145071 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     300              :     return -1;
     301       126485 :   x4 = XEXP (x1, 0);
     302       126485 :   if (GET_CODE (x4) != REG
     303       126485 :       || REGNO (x4) != 17)
     304              :     return -1;
     305       126485 :   x5 = XEXP (x2, 0);
     306       126485 :   return pattern50 (x5); /* [-1, 3] */
     307              : }
     308              : 
     309              : int
     310          298 : pattern56 (rtx x1)
     311              : {
     312          298 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     313          298 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     314          298 :   int res ATTRIBUTE_UNUSED;
     315          298 :   x2 = XEXP (x1, 0);
     316          298 :   x3 = XEXP (x2, 0);
     317          298 :   x4 = XEXP (x3, 0);
     318          298 :   operands[1] = x4;
     319          298 :   if (!register_operand (operands[1], E_V4HImode))
     320              :     return -1;
     321          298 :   x5 = XEXP (x3, 1);
     322          298 :   operands[2] = x5;
     323          298 :   if (!register_mmxmem_operand (operands[2], E_V4HImode))
     324              :     return -1;
     325          290 :   x6 = XEXP (x1, 1);
     326          290 :   x7 = XEXP (x6, 0);
     327          290 :   x8 = XEXP (x7, 0);
     328          290 :   if (!rtx_equal_p (x8, operands[1]))
     329              :     return -1;
     330          290 :   x9 = XEXP (x7, 1);
     331          290 :   if (!rtx_equal_p (x9, operands[2]))
     332              :     return -1;
     333              :   return 0;
     334              : }
     335              : 
     336              : int
     337         3089 : pattern61 (rtx x1)
     338              : {
     339         3089 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     340         3089 :   rtx x2, x3, x4;
     341         3089 :   int res ATTRIBUTE_UNUSED;
     342         3089 :   x2 = XEXP (x1, 0);
     343         3089 :   operands[0] = x2;
     344         3089 :   x3 = XEXP (x1, 1);
     345         3089 :   x4 = XVECEXP (x3, 0, 0);
     346         3089 :   operands[1] = x4;
     347         3089 :   switch (GET_MODE (operands[0]))
     348              :     {
     349          221 :     case E_SFmode:
     350          221 :       if (!register_operand (operands[0], E_SFmode)
     351          221 :           || GET_MODE (x3) != E_SFmode
     352          442 :           || !nonimmediate_operand (operands[1], E_SFmode))
     353           31 :         return -1;
     354              :       return 0;
     355              : 
     356          356 :     case E_HFmode:
     357          356 :       if (!register_operand (operands[0], E_HFmode)
     358          356 :           || GET_MODE (x3) != E_HFmode
     359          712 :           || !nonimmediate_operand (operands[1], E_HFmode))
     360            0 :         return -1;
     361              :       return 1;
     362              : 
     363              :     default:
     364              :       return -1;
     365              :     }
     366              : }
     367              : 
     368              : int
     369        13897 : pattern70 (rtx x1)
     370              : {
     371        13897 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     372        13897 :   int res ATTRIBUTE_UNUSED;
     373        13897 :   switch (GET_MODE (operands[0]))
     374              :     {
     375         3479 :     case E_HImode:
     376         3479 :       if (!register_operand (operands[0], E_HImode)
     377         3479 :           || GET_MODE (x1) != E_HImode)
     378              :         return -1;
     379         3425 :       switch (GET_MODE (operands[1]))
     380              :         {
     381          856 :         case E_V16QImode:
     382          856 :           if (!register_operand (operands[1], E_V16QImode)
     383          856 :               || !nonimmediate_operand (operands[2], E_V16QImode))
     384           87 :             return -1;
     385              :           return 0;
     386              : 
     387         1398 :         case E_V16HImode:
     388         1398 :           if (!register_operand (operands[1], E_V16HImode)
     389         1398 :               || !nonimmediate_operand (operands[2], E_V16HImode))
     390          151 :             return -1;
     391              :           return 1;
     392              : 
     393         1171 :         case E_V16SImode:
     394         1171 :           if (!register_operand (operands[1], E_V16SImode)
     395         1171 :               || !nonimmediate_operand (operands[2], E_V16SImode))
     396          165 :             return -1;
     397              :           return 2;
     398              : 
     399              :         default:
     400              :           return -1;
     401              :         }
     402              : 
     403         6864 :     case E_QImode:
     404         6864 :       if (!register_operand (operands[0], E_QImode)
     405         6864 :           || GET_MODE (x1) != E_QImode)
     406              :         return -1;
     407         6667 :       switch (GET_MODE (operands[1]))
     408              :         {
     409         1544 :         case E_V8HImode:
     410         1544 :           if (!register_operand (operands[1], E_V8HImode)
     411         1544 :               || !nonimmediate_operand (operands[2], E_V8HImode))
     412           83 :             return -1;
     413              :           return 3;
     414              : 
     415         1302 :         case E_V8SImode:
     416         1302 :           if (!register_operand (operands[1], E_V8SImode)
     417         1302 :               || !nonimmediate_operand (operands[2], E_V8SImode))
     418          115 :             return -1;
     419              :           return 4;
     420              : 
     421          931 :         case E_V4SImode:
     422          931 :           if (!register_operand (operands[1], E_V4SImode)
     423          931 :               || !nonimmediate_operand (operands[2], E_V4SImode))
     424           87 :             return -1;
     425              :           return 5;
     426              : 
     427         1136 :         case E_V8DImode:
     428         1136 :           if (!register_operand (operands[1], E_V8DImode)
     429         1136 :               || !nonimmediate_operand (operands[2], E_V8DImode))
     430          120 :             return -1;
     431              :           return 6;
     432              : 
     433         1039 :         case E_V4DImode:
     434         1039 :           if (!register_operand (operands[1], E_V4DImode)
     435         1039 :               || !nonimmediate_operand (operands[2], E_V4DImode))
     436           98 :             return -1;
     437              :           return 7;
     438              : 
     439          715 :         case E_V2DImode:
     440          715 :           if (!register_operand (operands[1], E_V2DImode)
     441          715 :               || !nonimmediate_operand (operands[2], E_V2DImode))
     442           68 :             return -1;
     443              :           return 8;
     444              : 
     445              :         default:
     446              :           return -1;
     447              :         }
     448              : 
     449              :     default:
     450              :       return -1;
     451              :     }
     452              : }
     453              : 
     454              : int
     455          168 : pattern100 (rtx x1)
     456              : {
     457          168 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     458          168 :   rtx x2, x3, x4, x5;
     459          168 :   int res ATTRIBUTE_UNUSED;
     460          168 :   x2 = XEXP (x1, 1);
     461          168 :   if (GET_MODE (x2) != E_CCZmode)
     462              :     return -1;
     463          168 :   x3 = XEXP (x1, 0);
     464          168 :   if (GET_CODE (x3) != REG
     465          168 :       || REGNO (x3) != 17
     466          336 :       || GET_MODE (x3) != E_CCZmode)
     467              :     return -1;
     468          168 :   x4 = XVECEXP (x2, 0, 0);
     469          168 :   operands[0] = x4;
     470          168 :   x5 = XVECEXP (x2, 0, 1);
     471          168 :   operands[1] = x5;
     472          168 :   if (!memory_operand (operands[1], E_XImode))
     473              :     return -1;
     474          168 :   switch (GET_MODE (operands[0]))
     475              :     {
     476            0 :     case E_SImode:
     477            0 :       if (!register_operand (operands[0], E_SImode))
     478              :         return -1;
     479              :       return 0;
     480              : 
     481          168 :     case E_DImode:
     482          168 :       if (!register_operand (operands[0], E_DImode))
     483              :         return -1;
     484              :       return 1;
     485              : 
     486              :     default:
     487              :       return -1;
     488              :     }
     489              : }
     490              : 
     491              : int
     492         1632 : pattern111 (rtx x1, machine_mode i1)
     493              : {
     494         1632 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     495         1632 :   rtx x2;
     496         1632 :   int res ATTRIBUTE_UNUSED;
     497         1632 :   if (!nonimmediate_operand (operands[0], i1)
     498         1632 :       || GET_MODE (x1) != i1)
     499              :     return -1;
     500         1632 :   x2 = XEXP (x1, 0);
     501         1632 :   if (GET_MODE (x2) != i1
     502         1632 :       || !x86_64_general_operand (operands[1], i1))
     503          187 :     return -1;
     504              :   return 0;
     505              : }
     506              : 
     507              : int
     508        47332 : pattern116 (rtx x1)
     509              : {
     510        47332 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     511        47332 :   rtx x2, x3, x4;
     512        47332 :   int res ATTRIBUTE_UNUSED;
     513        47332 :   x2 = XEXP (x1, 0);
     514        47332 :   x3 = XEXP (x2, 0);
     515        47332 :   operands[1] = x3;
     516        47332 :   x4 = XEXP (x2, 1);
     517        47332 :   operands[2] = x4;
     518        47332 :   switch (GET_MODE (operands[0]))
     519              :     {
     520        39173 :     case E_DImode:
     521        39173 :       if (!register_operand (operands[0], E_DImode)
     522        39173 :           || GET_MODE (x1) != E_DImode)
     523              :         return -1;
     524        39072 :       switch (GET_MODE (x2))
     525              :         {
     526        35042 :         case E_SImode:
     527        35042 :           if (!nonimmediate_operand (operands[1], E_SImode))
     528              :             return -1;
     529              :           return 0;
     530              : 
     531         3099 :         case E_QImode:
     532         3099 :           if (!nonimmediate_operand (operands[1], E_QImode)
     533         3099 :               || !nonmemory_operand (operands[2], E_QImode))
     534          184 :             return -1;
     535              :           return 1;
     536              : 
     537          931 :         case E_HImode:
     538          931 :           if (!nonimmediate_operand (operands[1], E_HImode)
     539          931 :               || !nonmemory_operand (operands[2], E_QImode))
     540           12 :             return -1;
     541              :           return 2;
     542              : 
     543              :         default:
     544              :           return -1;
     545              :         }
     546              : 
     547         7461 :     case E_SImode:
     548         7461 :       if (!register_operand (operands[0], E_SImode)
     549         7461 :           || GET_MODE (x1) != E_SImode
     550        14922 :           || !nonmemory_operand (operands[2], E_QImode))
     551          140 :         return -1;
     552         7321 :       switch (GET_MODE (x2))
     553              :         {
     554         5530 :         case E_QImode:
     555         5530 :           if (!nonimmediate_operand (operands[1], E_QImode))
     556              :             return -1;
     557              :           return 3;
     558              : 
     559         1791 :         case E_HImode:
     560         1791 :           if (!nonimmediate_operand (operands[1], E_HImode))
     561              :             return -1;
     562              :           return 4;
     563              : 
     564              :         default:
     565              :           return -1;
     566              :         }
     567              : 
     568              :     default:
     569              :       return -1;
     570              :     }
     571              : }
     572              : 
     573              : int
     574         9327 : pattern133 (rtx x1, machine_mode i1, machine_mode i2)
     575              : {
     576         9327 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     577         9327 :   rtx x2;
     578         9327 :   int res ATTRIBUTE_UNUSED;
     579         9327 :   if (!register_operand (operands[0], i1)
     580         9327 :       || GET_MODE (x1) != i1)
     581              :     return -1;
     582         8924 :   x2 = XEXP (x1, 0);
     583         8924 :   if (GET_MODE (x2) != i1
     584         8924 :       || !vector_operand (operands[1], i1)
     585         8826 :       || !vector_operand (operands[2], i1)
     586         8348 :       || !nonimm_or_0_operand (operands[3], i1)
     587        16986 :       || !register_operand (operands[4], i2))
     588         1300 :     return -1;
     589              :   return 0;
     590              : }
     591              : 
     592              : int
     593         3478 : pattern145 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
     594              : {
     595         3478 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     596         3478 :   rtx x2;
     597         3478 :   int res ATTRIBUTE_UNUSED;
     598         3478 :   if (!nonimmediate_operand (operands[0], i1)
     599         3478 :       || GET_MODE (x1) != i1)
     600              :     return -1;
     601         3478 :   x2 = XEXP (x1, 0);
     602         3478 :   if (GET_MODE (x2) != i1
     603         3478 :       || !register_operand (operands[1], i3)
     604         3477 :       || !nonimm_or_0_operand (operands[2], i1)
     605         6943 :       || !register_operand (operands[3], i2))
     606          229 :     return -1;
     607              :   return 0;
     608              : }
     609              : 
     610              : int
     611         7140 : pattern152 (rtx x1, machine_mode i1, machine_mode i2)
     612              : {
     613         7140 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     614         7140 :   rtx x2;
     615         7140 :   int res ATTRIBUTE_UNUSED;
     616         7140 :   if (!register_operand (operands[0], i1)
     617         7140 :       || GET_MODE (x1) != i1)
     618              :     return -1;
     619         6814 :   x2 = XEXP (x1, 0);
     620         6814 :   if (GET_MODE (x2) != i1
     621         6814 :       || !nonimmediate_operand (operands[1], i1)
     622         6763 :       || !nonimm_or_0_operand (operands[2], i1)
     623        13435 :       || !register_operand (operands[3], i2))
     624          642 :     return -1;
     625              :   return 0;
     626              : }
     627              : 
     628              : int
     629         5603 : pattern154 (rtx x1)
     630              : {
     631         5603 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     632         5603 :   rtx x2, x3, x4, x5;
     633         5603 :   int res ATTRIBUTE_UNUSED;
     634         5603 :   x2 = XEXP (x1, 0);
     635         5603 :   x3 = XEXP (x2, 0);
     636         5603 :   operands[1] = x3;
     637         5603 :   x4 = XEXP (x1, 1);
     638         5603 :   operands[2] = x4;
     639         5603 :   x5 = XEXP (x1, 2);
     640         5603 :   operands[3] = x5;
     641         5603 :   switch (GET_MODE (operands[0]))
     642              :     {
     643          457 :     case E_V16SImode:
     644          457 :       return pattern152 (x1, 
     645              : E_V16SImode, 
     646          457 : E_HImode); /* [-1, 0] */
     647              : 
     648          446 :     case E_V8SImode:
     649          446 :       if (pattern152 (x1, 
     650              : E_V8SImode, 
     651              : E_QImode) != 0)
     652              :         return -1;
     653              :       return 1;
     654              : 
     655          398 :     case E_V4SImode:
     656          398 :       if (pattern152 (x1, 
     657              : E_V4SImode, 
     658              : E_QImode) != 0)
     659              :         return -1;
     660              :       return 2;
     661              : 
     662          534 :     case E_V8DImode:
     663          534 :       if (pattern152 (x1, 
     664              : E_V8DImode, 
     665              : E_QImode) != 0)
     666              :         return -1;
     667              :       return 3;
     668              : 
     669          500 :     case E_V4DImode:
     670          500 :       if (pattern152 (x1, 
     671              : E_V4DImode, 
     672              : E_QImode) != 0)
     673              :         return -1;
     674              :       return 4;
     675              : 
     676          406 :     case E_V2DImode:
     677          406 :       if (pattern152 (x1, 
     678              : E_V2DImode, 
     679              : E_QImode) != 0)
     680              :         return -1;
     681              :       return 5;
     682              : 
     683          484 :     case E_V64QImode:
     684          484 :       if (pattern152 (x1, 
     685              : E_V64QImode, 
     686              : E_DImode) != 0)
     687              :         return -1;
     688              :       return 6;
     689              : 
     690          486 :     case E_V16QImode:
     691          486 :       if (pattern152 (x1, 
     692              : E_V16QImode, 
     693              : E_HImode) != 0)
     694              :         return -1;
     695              :       return 7;
     696              : 
     697          574 :     case E_V32QImode:
     698          574 :       if (pattern152 (x1, 
     699              : E_V32QImode, 
     700              : E_SImode) != 0)
     701              :         return -1;
     702              :       return 8;
     703              : 
     704          449 :     case E_V32HImode:
     705          449 :       if (pattern152 (x1, 
     706              : E_V32HImode, 
     707              : E_SImode) != 0)
     708              :         return -1;
     709              :       return 9;
     710              : 
     711          500 :     case E_V16HImode:
     712          500 :       if (pattern153 (x1, 
     713              : E_V16HImode) != 0)
     714              :         return -1;
     715              :       return 10;
     716              : 
     717          369 :     case E_V8HImode:
     718          369 :       if (pattern152 (x1, 
     719              : E_V8HImode, 
     720              : E_QImode) != 0)
     721              :         return -1;
     722              :       return 11;
     723              : 
     724              :     default:
     725              :       return -1;
     726              :     }
     727              : }
     728              : 
     729              : int
     730          564 : pattern168 (rtx x1)
     731              : {
     732          564 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     733          564 :   rtx x2, x3, x4, x5;
     734          564 :   int res ATTRIBUTE_UNUSED;
     735          564 :   x2 = XEXP (x1, 0);
     736          564 :   operands[0] = x2;
     737          564 :   x3 = XEXP (x1, 1);
     738          564 :   x4 = XVECEXP (x3, 0, 0);
     739          564 :   operands[1] = x4;
     740          564 :   x5 = XVECEXP (x3, 0, 1);
     741          564 :   operands[2] = x5;
     742          564 :   switch (GET_MODE (operands[0]))
     743              :     {
     744          308 :     case E_V32QImode:
     745          308 :       return pattern158 (x3, 
     746          308 : E_V32QImode); /* [-1, 0] */
     747              : 
     748            0 :     case E_V16QImode:
     749            0 :       if (pattern158 (x3, 
     750              : E_V16QImode) != 0)
     751              :         return -1;
     752              :       return 1;
     753              : 
     754          256 :     case E_V64QImode:
     755          256 :       if (pattern158 (x3, 
     756              : E_V64QImode) != 0)
     757              :         return -1;
     758              :       return 2;
     759              : 
     760              :     default:
     761              :       return -1;
     762              :     }
     763              : }
     764              : 
     765              : int
     766          199 : pattern177 (rtx x1)
     767              : {
     768          199 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     769          199 :   rtx x2, x3;
     770          199 :   int res ATTRIBUTE_UNUSED;
     771          199 :   x2 = XEXP (x1, 1);
     772          199 :   if (GET_MODE (x2) != E_V4SImode)
     773              :     return -1;
     774          199 :   x3 = XEXP (x1, 0);
     775          199 :   operands[0] = x3;
     776          199 :   return pattern176 (x2); /* [-1, 0] */
     777              : }
     778              : 
     779              : int
     780         1442 : pattern181 (rtx x1)
     781              : {
     782         1442 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     783         1442 :   rtx x2, x3, x4, x5, x6;
     784         1442 :   int res ATTRIBUTE_UNUSED;
     785         1442 :   x2 = XEXP (x1, 0);
     786         1442 :   operands[0] = x2;
     787         1442 :   x3 = XEXP (x1, 1);
     788         1442 :   x4 = XVECEXP (x3, 0, 0);
     789         1442 :   operands[1] = x4;
     790         1442 :   x5 = XVECEXP (x3, 0, 1);
     791         1442 :   operands[2] = x5;
     792         1442 :   x6 = XVECEXP (x3, 0, 2);
     793         1442 :   operands[3] = x6;
     794         1442 :   if (!const_0_to_255_operand (operands[3], E_SImode))
     795              :     return -1;
     796         1442 :   switch (GET_MODE (operands[0]))
     797              :     {
     798          150 :     case E_V32HImode:
     799          150 :       return pattern64 (x3, 
     800          150 : E_V32HImode); /* [-1, 0] */
     801              : 
     802          168 :     case E_V16SImode:
     803          168 :       if (pattern64 (x3, 
     804              : E_V16SImode) != 0)
     805              :         return -1;
     806              :       return 1;
     807              : 
     808          183 :     case E_V8DImode:
     809          183 :       if (pattern64 (x3, 
     810              : E_V8DImode) != 0)
     811              :         return -1;
     812              :       return 2;
     813              : 
     814          144 :     case E_V16HImode:
     815          144 :       if (pattern64 (x3, 
     816              : E_V16HImode) != 0)
     817              :         return -1;
     818              :       return 3;
     819              : 
     820          162 :     case E_V8SImode:
     821          162 :       if (pattern64 (x3, 
     822              : E_V8SImode) != 0)
     823              :         return -1;
     824              :       return 4;
     825              : 
     826          172 :     case E_V4DImode:
     827          172 :       if (pattern64 (x3, 
     828              : E_V4DImode) != 0)
     829              :         return -1;
     830              :       return 5;
     831              : 
     832          141 :     case E_V8HImode:
     833          141 :       if (pattern64 (x3, 
     834              : E_V8HImode) != 0)
     835              :         return -1;
     836              :       return 6;
     837              : 
     838          156 :     case E_V4SImode:
     839          156 :       if (pattern64 (x3, 
     840              : E_V4SImode) != 0)
     841              :         return -1;
     842              :       return 7;
     843              : 
     844          166 :     case E_V2DImode:
     845          166 :       if (pattern64 (x3, 
     846              : E_V2DImode) != 0)
     847              :         return -1;
     848              :       return 8;
     849              : 
     850              :     default:
     851              :       return -1;
     852              :     }
     853              : }
     854              : 
     855              : int
     856          386 : pattern196 (rtx x1)
     857              : {
     858          386 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     859          386 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     860          386 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
     861          386 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
     862          386 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
     863          386 :   rtx x34, x35, x36, x37;
     864          386 :   int res ATTRIBUTE_UNUSED;
     865          386 :   x2 = XEXP (x1, 0);
     866          386 :   x3 = XEXP (x2, 1);
     867          386 :   x4 = XVECEXP (x3, 0, 0);
     868          386 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     869              :     return -1;
     870          386 :   x5 = XVECEXP (x3, 0, 1);
     871          386 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     872              :     return -1;
     873          386 :   x6 = XVECEXP (x3, 0, 2);
     874          386 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
     875              :     return -1;
     876          386 :   x7 = XVECEXP (x3, 0, 3);
     877          386 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
     878              :     return -1;
     879          386 :   x8 = XVECEXP (x3, 0, 4);
     880          386 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
     881              :     return -1;
     882          386 :   x9 = XVECEXP (x3, 0, 5);
     883          386 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 18])
     884              :     return -1;
     885          386 :   x10 = XVECEXP (x3, 0, 6);
     886          386 :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 20])
     887              :     return -1;
     888          386 :   x11 = XVECEXP (x3, 0, 7);
     889          386 :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 22])
     890              :     return -1;
     891          386 :   x12 = XVECEXP (x3, 0, 8);
     892          386 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
     893              :     return -1;
     894          386 :   x13 = XVECEXP (x3, 0, 9);
     895          386 :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
     896              :     return -1;
     897          386 :   x14 = XVECEXP (x3, 0, 10);
     898          386 :   if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
     899              :     return -1;
     900          386 :   x15 = XVECEXP (x3, 0, 11);
     901          386 :   if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
     902              :     return -1;
     903          386 :   x16 = XVECEXP (x3, 0, 12);
     904          386 :   if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 24])
     905              :     return -1;
     906          386 :   x17 = XVECEXP (x3, 0, 13);
     907          386 :   if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 26])
     908              :     return -1;
     909          386 :   x18 = XVECEXP (x3, 0, 14);
     910          386 :   if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 28])
     911              :     return -1;
     912          386 :   x19 = XVECEXP (x3, 0, 15);
     913          386 :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 30])
     914              :     return -1;
     915          386 :   x20 = XEXP (x1, 1);
     916          386 :   x21 = XEXP (x20, 1);
     917          386 :   if (XVECLEN (x21, 0) != 16)
     918              :     return -1;
     919          386 :   x22 = XVECEXP (x21, 0, 0);
     920          386 :   if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
     921              :     return -1;
     922          386 :   x23 = XVECEXP (x21, 0, 1);
     923          386 :   if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
     924              :     return -1;
     925          386 :   x24 = XVECEXP (x21, 0, 2);
     926          386 :   if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
     927              :     return -1;
     928          386 :   x25 = XVECEXP (x21, 0, 3);
     929          386 :   if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
     930              :     return -1;
     931          386 :   x26 = XVECEXP (x21, 0, 4);
     932          386 :   if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 17])
     933              :     return -1;
     934          386 :   x27 = XVECEXP (x21, 0, 5);
     935          386 :   if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 19])
     936              :     return -1;
     937          386 :   x28 = XVECEXP (x21, 0, 6);
     938          386 :   if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 21])
     939              :     return -1;
     940          386 :   x29 = XVECEXP (x21, 0, 7);
     941          386 :   if (x29 != const_int_rtx[MAX_SAVED_CONST_INT + 23])
     942              :     return -1;
     943          386 :   x30 = XVECEXP (x21, 0, 8);
     944          386 :   if (x30 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
     945              :     return -1;
     946          386 :   x31 = XVECEXP (x21, 0, 9);
     947          386 :   if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
     948              :     return -1;
     949          386 :   x32 = XVECEXP (x21, 0, 10);
     950          386 :   if (x32 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
     951              :     return -1;
     952          386 :   x33 = XVECEXP (x21, 0, 11);
     953          386 :   if (x33 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
     954              :     return -1;
     955          386 :   x34 = XVECEXP (x21, 0, 12);
     956          386 :   if (x34 != const_int_rtx[MAX_SAVED_CONST_INT + 25])
     957              :     return -1;
     958          386 :   x35 = XVECEXP (x21, 0, 13);
     959          386 :   if (x35 != const_int_rtx[MAX_SAVED_CONST_INT + 27])
     960              :     return -1;
     961          386 :   x36 = XVECEXP (x21, 0, 14);
     962          386 :   if (x36 != const_int_rtx[MAX_SAVED_CONST_INT + 29])
     963              :     return -1;
     964          386 :   x37 = XVECEXP (x21, 0, 15);
     965          386 :   if (x37 != const_int_rtx[MAX_SAVED_CONST_INT + 31]
     966          386 :       || pattern195 (x1, 
     967              : E_V32HImode, 
     968              : E_V16HImode) != 0)
     969           24 :     return -1;
     970              :   return 0;
     971              : }
     972              : 
     973              : int
     974         1007 : pattern218 (rtx x1, machine_mode i1)
     975              : {
     976         1007 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     977         1007 :   rtx x2;
     978         1007 :   int res ATTRIBUTE_UNUSED;
     979         1007 :   if (GET_MODE (x1) != i1)
     980              :     return -1;
     981         1007 :   x2 = XEXP (x1, 0);
     982         1007 :   if (GET_MODE (x2) != i1
     983         1007 :       || !nonimmediate_operand (operands[1], i1)
     984         1658 :       || !general_operand (operands[2], i1))
     985          356 :     return -1;
     986              :   return 0;
     987              : }
     988              : 
     989              : int
     990        19776 : pattern220 (rtx x1)
     991              : {
     992        19776 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     993        19776 :   int res ATTRIBUTE_UNUSED;
     994        19776 :   switch (GET_MODE (operands[0]))
     995              :     {
     996           19 :     case E_HImode:
     997           19 :       if (!register_operand (operands[0], E_HImode)
     998           19 :           || pattern218 (x1, 
     999              : E_HImode) != 0)
    1000            0 :         return -1;
    1001              :       return 0;
    1002              : 
    1003         4797 :     case E_SImode:
    1004         4797 :       if (!register_operand (operands[0], E_SImode)
    1005         4797 :           || pattern219 (x1, 
    1006              : E_SImode) != 0)
    1007           40 :         return -1;
    1008              :       return 1;
    1009              : 
    1010        14940 :     case E_DImode:
    1011        14940 :       if (!register_operand (operands[0], E_DImode)
    1012        14940 :           || pattern219 (x1, 
    1013              : E_DImode) != 0)
    1014         1335 :         return -1;
    1015              :       return 2;
    1016              : 
    1017              :     default:
    1018              :       return -1;
    1019              :     }
    1020              : }
    1021              : 
    1022              : int
    1023       382699 : pattern227 (rtx x1, machine_mode i1, machine_mode i2)
    1024              : {
    1025       382699 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1026       382699 :   int res ATTRIBUTE_UNUSED;
    1027       382699 :   if (!register_operand (operands[0], i2)
    1028       382093 :       || GET_MODE (x1) != i2
    1029       382093 :       || !register_operand (operands[1], i2)
    1030       687246 :       || !vector_operand (operands[2], i1))
    1031       126778 :     return -1;
    1032              :   return 0;
    1033              : }
    1034              : 
    1035              : int
    1036      2929540 : pattern231 (rtx x1)
    1037              : {
    1038      2929540 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1039      2929540 :   rtx x2, x3;
    1040      2929540 :   int res ATTRIBUTE_UNUSED;
    1041      2929540 :   if (GET_CODE (x1) != CLOBBER)
    1042              :     return -1;
    1043      1783438 :   x2 = XEXP (x1, 0);
    1044      1783438 :   if (GET_CODE (x2) != MEM
    1045      1783438 :       || GET_MODE (x2) != E_BLKmode)
    1046              :     return -1;
    1047      1783438 :   x3 = XEXP (x2, 0);
    1048      1783438 :   if (GET_CODE (x3) != SCRATCH)
    1049            0 :     return -1;
    1050              :   return 0;
    1051              : }
    1052              : 
    1053              : int
    1054       134021 : pattern236 (rtx x1)
    1055              : {
    1056       134021 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1057       134021 :   rtx x2, x3, x4, x5, x6;
    1058       134021 :   int res ATTRIBUTE_UNUSED;
    1059       134021 :   x2 = XVECEXP (x1, 0, 0);
    1060       134021 :   x3 = XEXP (x2, 0);
    1061       134021 :   if (GET_CODE (x3) != MEM)
    1062              :     return -1;
    1063        27583 :   x4 = XVECEXP (x1, 0, 1);
    1064        27583 :   if (GET_CODE (x4) != SET)
    1065              :     return -1;
    1066        27583 :   x5 = XEXP (x4, 1);
    1067        27583 :   if (GET_CODE (x5) != PLUS)
    1068              :     return -1;
    1069         7213 :   x6 = XEXP (x5, 1);
    1070         7213 :   if (GET_CODE (x6) != CONST_INT)
    1071         4894 :     return -1;
    1072              :   return 0;
    1073              : }
    1074              : 
    1075              : int
    1076           94 : pattern245 (rtx x1, machine_mode i1)
    1077              : {
    1078           94 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1079           94 :   int res ATTRIBUTE_UNUSED;
    1080           94 :   if (!register_operand (operands[0], i1)
    1081           94 :       || GET_MODE (x1) != i1
    1082           94 :       || !nonimmediate_operand (operands[1], i1)
    1083           97 :       || !const_vector_duplicate_operand (operands[2], i1))
    1084           91 :     return -1;
    1085              :   return 0;
    1086              : }
    1087              : 
    1088              : int
    1089       291271 : pattern250 (rtx x1)
    1090              : {
    1091       291271 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1092       291271 :   rtx x2, x3, x4, x5, x6, x7;
    1093       291271 :   int res ATTRIBUTE_UNUSED;
    1094       291271 :   x2 = XVECEXP (x1, 0, 1);
    1095       291271 :   if (GET_CODE (x2) != CLOBBER)
    1096              :     return -1;
    1097       290185 :   x3 = XEXP (x2, 0);
    1098       290185 :   if (GET_CODE (x3) != REG
    1099       290185 :       || REGNO (x3) != 17
    1100       580370 :       || GET_MODE (x3) != E_CCmode)
    1101              :     return -1;
    1102       290185 :   x4 = XVECEXP (x1, 0, 0);
    1103       290185 :   x5 = XEXP (x4, 0);
    1104       290185 :   operands[0] = x5;
    1105       290185 :   x6 = XEXP (x4, 1);
    1106       290185 :   x7 = XEXP (x6, 0);
    1107       290185 :   operands[1] = x7;
    1108       290185 :   return 0;
    1109              : }
    1110              : 
    1111              : int
    1112         2386 : pattern256 (rtx x1)
    1113              : {
    1114         2386 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1115         2386 :   rtx x2, x3, x4;
    1116         2386 :   int res ATTRIBUTE_UNUSED;
    1117         2386 :   x2 = XEXP (x1, 1);
    1118         2386 :   x3 = XVECEXP (x2, 0, 1);
    1119         2386 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1120              :     return -1;
    1121         2386 :   x4 = XEXP (x1, 0);
    1122         2386 :   if (GET_CODE (x4) != REG
    1123         2386 :       || REGNO (x4) != 17
    1124         4772 :       || GET_MODE (x4) != E_CCCmode)
    1125            0 :     return -1;
    1126              :   return 0;
    1127              : }
    1128              : 
    1129              : int
    1130          525 : pattern265 (rtx x1, machine_mode i1)
    1131              : {
    1132          525 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1133          525 :   int res ATTRIBUTE_UNUSED;
    1134          525 :   if (!register_operand (operands[0], i1)
    1135          525 :       || GET_MODE (x1) != i1)
    1136              :     return -1;
    1137          507 :   return pattern264 (); /* [-1, 2] */
    1138              : }
    1139              : 
    1140              : int
    1141         1469 : pattern268 (rtx x1, int *pnum_clobbers, machine_mode i1)
    1142              : {
    1143         1469 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1144         1469 :   int res ATTRIBUTE_UNUSED;
    1145         1469 :   if (pnum_clobbers == NULL
    1146         1469 :       || !register_operand (operands[0], i1)
    1147         1381 :       || GET_MODE (x1) != i1
    1148         2850 :       || !general_operand (operands[1], i1))
    1149          501 :     return -1;
    1150              :   return 0;
    1151              : }
    1152              : 
    1153              : int
    1154         5241 : pattern277 (rtx x1)
    1155              : {
    1156         5241 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1157         5241 :   rtx x2, x3, x4, x5, x6;
    1158         5241 :   int res ATTRIBUTE_UNUSED;
    1159         5241 :   x2 = XEXP (x1, 0);
    1160         5241 :   if (XVECLEN (x2, 0) != 1
    1161         1573 :       || XINT (x2, 1) != 47
    1162          630 :       || GET_MODE (x2) != E_V4SImode)
    1163              :     return -1;
    1164          630 :   x3 = XEXP (x1, 1);
    1165          630 :   if (XVECLEN (x3, 0) != 2)
    1166              :     return -1;
    1167          630 :   x4 = XVECEXP (x3, 0, 0);
    1168          630 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1169              :     return -1;
    1170          630 :   x5 = XVECEXP (x3, 0, 1);
    1171          630 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    1172          630 :       || !register_operand (operands[0], E_V2SImode)
    1173         1259 :       || GET_MODE (x1) != E_V2SImode)
    1174            1 :     return -1;
    1175          629 :   x6 = XVECEXP (x2, 0, 0);
    1176          629 :   operands[1] = x6;
    1177          629 :   if (!nonimmediate_operand (operands[1], E_V4SFmode))
    1178              :     return -1;
    1179              :   return 0;
    1180              : }
    1181              : 
    1182              : int
    1183          160 : pattern287 (rtx x1)
    1184              : {
    1185          160 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1186          160 :   rtx x2;
    1187          160 :   int res ATTRIBUTE_UNUSED;
    1188          160 :   x2 = XEXP (x1, 1);
    1189          160 :   operands[3] = x2;
    1190          160 :   switch (GET_MODE (operands[0]))
    1191              :     {
    1192           58 :     case E_SImode:
    1193           58 :       return pattern286 (x1, 
    1194           58 : E_SImode); /* [-1, 0] */
    1195              : 
    1196           72 :     case E_DImode:
    1197           72 :       if (pattern286 (x1, 
    1198              : E_DImode) != 0)
    1199              :         return -1;
    1200              :       return 1;
    1201              : 
    1202              :     default:
    1203              :       return -1;
    1204              :     }
    1205              : }
    1206              : 
    1207              : int
    1208       170861 : pattern292 (rtx x1)
    1209              : {
    1210       170861 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1211       170861 :   rtx x2, x3, x4, x5, x6, x7;
    1212       170861 :   int res ATTRIBUTE_UNUSED;
    1213       170861 :   x2 = XEXP (x1, 0);
    1214       170861 :   x3 = XEXP (x2, 0);
    1215       170861 :   operands[1] = x3;
    1216       170861 :   x4 = XEXP (x1, 1);
    1217       170861 :   operands[2] = x4;
    1218       170861 :   x5 = XEXP (x2, 1);
    1219       170861 :   switch (GET_CODE (x5))
    1220              :     {
    1221        10141 :     case LTU:
    1222        10141 :     case UNLT:
    1223        10141 :       operands[4] = x5;
    1224        10141 :       x6 = XEXP (x5, 1);
    1225        10141 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1226              :         return -1;
    1227        10019 :       x7 = XEXP (x5, 0);
    1228        10019 :       operands[3] = x7;
    1229        10019 :       if (!flags_reg_operand (operands[3], E_VOIDmode))
    1230              :         return -1;
    1231              :       return 0;
    1232              : 
    1233          592 :     case EQ:
    1234          592 :       x6 = XEXP (x5, 1);
    1235          592 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1236              :         return -1;
    1237          484 :       x7 = XEXP (x5, 0);
    1238          484 :       operands[3] = x7;
    1239          484 :       if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
    1240              :         return -1;
    1241              :       return 1;
    1242              : 
    1243              :     default:
    1244              :       return -1;
    1245              :     }
    1246              : }
    1247              : 
    1248              : int
    1249          178 : pattern305 (rtx x1)
    1250              : {
    1251          178 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1252          178 :   rtx x2;
    1253          178 :   int res ATTRIBUTE_UNUSED;
    1254          178 :   x2 = XVECEXP (x1, 0, 0);
    1255          178 :   operands[1] = x2;
    1256          178 :   switch (GET_MODE (operands[0]))
    1257              :     {
    1258           87 :     case E_SImode:
    1259           87 :       if (!register_operand (operands[0], E_SImode)
    1260           87 :           || GET_MODE (x1) != E_SImode
    1261          174 :           || !nonimmediate_operand (operands[1], E_SImode))
    1262            2 :         return -1;
    1263              :       return 0;
    1264              : 
    1265           88 :     case E_DImode:
    1266           88 :       if (!register_operand (operands[0], E_DImode)
    1267           88 :           || GET_MODE (x1) != E_DImode
    1268          176 :           || !nonimmediate_operand (operands[1], E_DImode))
    1269            2 :         return -1;
    1270              :       return 1;
    1271              : 
    1272              :     default:
    1273              :       return -1;
    1274              :     }
    1275              : }
    1276              : 
    1277              : int
    1278          261 : pattern313 (rtx x1, machine_mode i1, machine_mode i2)
    1279              : {
    1280          261 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1281          261 :   rtx x2, x3, x4;
    1282          261 :   int res ATTRIBUTE_UNUSED;
    1283          261 :   if (!register_operand (operands[0], i2)
    1284          261 :       || GET_MODE (x1) != i2)
    1285              :     return -1;
    1286          237 :   x2 = XEXP (x1, 0);
    1287          237 :   if (GET_MODE (x2) != i2)
    1288              :     return -1;
    1289          237 :   x3 = XEXP (x2, 0);
    1290          237 :   if (GET_MODE (x3) != i1)
    1291              :     return -1;
    1292          237 :   x4 = XEXP (x3, 0);
    1293          237 :   if (GET_MODE (x4) != i1
    1294          237 :       || !register_operand (operands[1], i2)
    1295          446 :       || !nonimmediate_operand (operands[2], i1))
    1296          149 :     return -1;
    1297              :   return 0;
    1298              : }
    1299              : 
    1300              : int
    1301           65 : pattern320 (rtx x1, machine_mode i1, machine_mode i2)
    1302              : {
    1303           65 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1304           65 :   rtx x2;
    1305           65 :   int res ATTRIBUTE_UNUSED;
    1306           65 :   if (!register_operand (operands[0], i1)
    1307           65 :       || GET_MODE (x1) != i1)
    1308              :     return -1;
    1309           65 :   x2 = XEXP (x1, 2);
    1310           65 :   if (GET_MODE (x2) != i2
    1311           65 :       || !nonimmediate_operand (operands[3], i1)
    1312          124 :       || !nonimmediate_operand (operands[4], i1))
    1313            6 :     return -1;
    1314              :   return 0;
    1315              : }
    1316              : 
    1317              : int
    1318           61 : pattern326 (rtx x1)
    1319              : {
    1320           61 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1321           61 :   rtx x2;
    1322           61 :   int res ATTRIBUTE_UNUSED;
    1323           61 :   x2 = XVECEXP (x1, 0, 0);
    1324           61 :   operands[1] = x2;
    1325           61 :   switch (GET_MODE (operands[0]))
    1326              :     {
    1327           14 :     case E_V16SImode:
    1328           14 :       if (!register_operand (operands[0], E_V16SImode)
    1329           14 :           || GET_MODE (x1) != E_V16SImode
    1330           28 :           || !memory_operand (operands[1], E_V16SImode))
    1331            0 :         return -1;
    1332              :       return 0;
    1333              : 
    1334           14 :     case E_V8SImode:
    1335           14 :       if (!register_operand (operands[0], E_V8SImode)
    1336           14 :           || GET_MODE (x1) != E_V8SImode
    1337           28 :           || !memory_operand (operands[1], E_V8SImode))
    1338            0 :         return -1;
    1339              :       return 1;
    1340              : 
    1341           14 :     case E_V4SImode:
    1342           14 :       if (!register_operand (operands[0], E_V4SImode)
    1343           14 :           || GET_MODE (x1) != E_V4SImode
    1344           28 :           || !memory_operand (operands[1], E_V4SImode))
    1345            0 :         return -1;
    1346              :       return 2;
    1347              : 
    1348            0 :     case E_V8DImode:
    1349            0 :       if (!register_operand (operands[0], E_V8DImode)
    1350            0 :           || GET_MODE (x1) != E_V8DImode
    1351            0 :           || !memory_operand (operands[1], E_V8DImode))
    1352            0 :         return -1;
    1353              :       return 3;
    1354              : 
    1355            0 :     case E_V4DImode:
    1356            0 :       if (!register_operand (operands[0], E_V4DImode)
    1357            0 :           || GET_MODE (x1) != E_V4DImode
    1358            0 :           || !memory_operand (operands[1], E_V4DImode))
    1359            0 :         return -1;
    1360              :       return 4;
    1361              : 
    1362            0 :     case E_V2DImode:
    1363            0 :       if (!register_operand (operands[0], E_V2DImode)
    1364            0 :           || GET_MODE (x1) != E_V2DImode
    1365            0 :           || !memory_operand (operands[1], E_V2DImode))
    1366            0 :         return -1;
    1367              :       return 5;
    1368              : 
    1369            0 :     case E_V16SFmode:
    1370            0 :       if (!register_operand (operands[0], E_V16SFmode)
    1371            0 :           || GET_MODE (x1) != E_V16SFmode
    1372            0 :           || !memory_operand (operands[1], E_V16SFmode))
    1373            0 :         return -1;
    1374              :       return 6;
    1375              : 
    1376            0 :     case E_V8SFmode:
    1377            0 :       if (!register_operand (operands[0], E_V8SFmode)
    1378            0 :           || GET_MODE (x1) != E_V8SFmode
    1379            0 :           || !memory_operand (operands[1], E_V8SFmode))
    1380            0 :         return -1;
    1381              :       return 7;
    1382              : 
    1383            0 :     case E_V4SFmode:
    1384            0 :       if (!register_operand (operands[0], E_V4SFmode)
    1385            0 :           || GET_MODE (x1) != E_V4SFmode
    1386            0 :           || !memory_operand (operands[1], E_V4SFmode))
    1387            0 :         return -1;
    1388              :       return 8;
    1389              : 
    1390           19 :     case E_V8DFmode:
    1391           19 :       if (!register_operand (operands[0], E_V8DFmode)
    1392           19 :           || GET_MODE (x1) != E_V8DFmode
    1393           38 :           || !memory_operand (operands[1], E_V8DFmode))
    1394            0 :         return -1;
    1395              :       return 9;
    1396              : 
    1397            0 :     case E_V4DFmode:
    1398            0 :       if (!register_operand (operands[0], E_V4DFmode)
    1399            0 :           || GET_MODE (x1) != E_V4DFmode
    1400            0 :           || !memory_operand (operands[1], E_V4DFmode))
    1401            0 :         return -1;
    1402              :       return 10;
    1403              : 
    1404            0 :     case E_V2DFmode:
    1405            0 :       if (!register_operand (operands[0], E_V2DFmode)
    1406            0 :           || GET_MODE (x1) != E_V2DFmode
    1407            0 :           || !memory_operand (operands[1], E_V2DFmode))
    1408            0 :         return -1;
    1409              :       return 11;
    1410              : 
    1411            0 :     case E_V64QImode:
    1412            0 :       if (!register_operand (operands[0], E_V64QImode)
    1413            0 :           || GET_MODE (x1) != E_V64QImode
    1414            0 :           || !memory_operand (operands[1], E_V64QImode))
    1415            0 :         return -1;
    1416              :       return 12;
    1417              : 
    1418            0 :     case E_V16QImode:
    1419            0 :       if (!register_operand (operands[0], E_V16QImode)
    1420            0 :           || GET_MODE (x1) != E_V16QImode
    1421            0 :           || !memory_operand (operands[1], E_V16QImode))
    1422            0 :         return -1;
    1423              :       return 13;
    1424              : 
    1425            0 :     case E_V32QImode:
    1426            0 :       if (!register_operand (operands[0], E_V32QImode)
    1427            0 :           || GET_MODE (x1) != E_V32QImode
    1428            0 :           || !memory_operand (operands[1], E_V32QImode))
    1429            0 :         return -1;
    1430              :       return 14;
    1431              : 
    1432            0 :     case E_V32HImode:
    1433            0 :       if (!register_operand (operands[0], E_V32HImode)
    1434            0 :           || GET_MODE (x1) != E_V32HImode
    1435            0 :           || !memory_operand (operands[1], E_V32HImode))
    1436            0 :         return -1;
    1437              :       return 15;
    1438              : 
    1439            0 :     case E_V16HImode:
    1440            0 :       if (!register_operand (operands[0], E_V16HImode)
    1441            0 :           || GET_MODE (x1) != E_V16HImode
    1442            0 :           || !memory_operand (operands[1], E_V16HImode))
    1443            0 :         return -1;
    1444              :       return 16;
    1445              : 
    1446            0 :     case E_V8HImode:
    1447            0 :       if (!register_operand (operands[0], E_V8HImode)
    1448            0 :           || GET_MODE (x1) != E_V8HImode
    1449            0 :           || !memory_operand (operands[1], E_V8HImode))
    1450            0 :         return -1;
    1451              :       return 17;
    1452              : 
    1453            0 :     case E_V32HFmode:
    1454            0 :       if (!register_operand (operands[0], E_V32HFmode)
    1455            0 :           || GET_MODE (x1) != E_V32HFmode
    1456            0 :           || !memory_operand (operands[1], E_V32HFmode))
    1457            0 :         return -1;
    1458              :       return 18;
    1459              : 
    1460            0 :     case E_V16HFmode:
    1461            0 :       if (!register_operand (operands[0], E_V16HFmode)
    1462            0 :           || GET_MODE (x1) != E_V16HFmode
    1463            0 :           || !memory_operand (operands[1], E_V16HFmode))
    1464            0 :         return -1;
    1465              :       return 19;
    1466              : 
    1467            0 :     case E_V8HFmode:
    1468            0 :       if (!register_operand (operands[0], E_V8HFmode)
    1469            0 :           || GET_MODE (x1) != E_V8HFmode
    1470            0 :           || !memory_operand (operands[1], E_V8HFmode))
    1471            0 :         return -1;
    1472              :       return 20;
    1473              : 
    1474            0 :     case E_V32BFmode:
    1475            0 :       if (!register_operand (operands[0], E_V32BFmode)
    1476            0 :           || GET_MODE (x1) != E_V32BFmode
    1477            0 :           || !memory_operand (operands[1], E_V32BFmode))
    1478            0 :         return -1;
    1479              :       return 21;
    1480              : 
    1481            0 :     case E_V16BFmode:
    1482            0 :       if (!register_operand (operands[0], E_V16BFmode)
    1483            0 :           || GET_MODE (x1) != E_V16BFmode
    1484            0 :           || !memory_operand (operands[1], E_V16BFmode))
    1485            0 :         return -1;
    1486              :       return 22;
    1487              : 
    1488            0 :     case E_V8BFmode:
    1489            0 :       if (!register_operand (operands[0], E_V8BFmode)
    1490            0 :           || GET_MODE (x1) != E_V8BFmode
    1491            0 :           || !memory_operand (operands[1], E_V8BFmode))
    1492            0 :         return -1;
    1493              :       return 23;
    1494              : 
    1495              :     default:
    1496              :       return -1;
    1497              :     }
    1498              : }
    1499              : 
    1500              : int
    1501        30162 : pattern366 (rtx x1)
    1502              : {
    1503        30162 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1504        30162 :   rtx x2, x3, x4, x5, x6, x7;
    1505        30162 :   int res ATTRIBUTE_UNUSED;
    1506        30162 :   x2 = XVECEXP (x1, 0, 0);
    1507        30162 :   x3 = XEXP (x2, 1);
    1508        30162 :   x4 = XEXP (x3, 0);
    1509        30162 :   x5 = XEXP (x4, 1);
    1510        30162 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1511              :     return -1;
    1512        22788 :   x6 = XVECEXP (x1, 0, 1);
    1513        22788 :   if (GET_CODE (x6) != CLOBBER)
    1514              :     return -1;
    1515        21842 :   x7 = XEXP (x6, 0);
    1516        21842 :   if (GET_CODE (x7) != REG
    1517        21842 :       || REGNO (x7) != 17
    1518        43684 :       || GET_MODE (x7) != E_CCmode)
    1519              :     return -1;
    1520        21842 :   return pattern365 (x2); /* [-1, 3] */
    1521              : }
    1522              : 
    1523              : int
    1524        75537 : pattern372 (rtx x1)
    1525              : {
    1526        75537 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1527        75537 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1528        75537 :   int res ATTRIBUTE_UNUSED;
    1529        75537 :   x2 = XVECEXP (x1, 0, 0);
    1530        75537 :   x3 = XEXP (x2, 1);
    1531        75537 :   if (GET_MODE (x3) != E_V2SImode)
    1532              :     return -1;
    1533          500 :   x4 = XVECEXP (x1, 0, 1);
    1534          500 :   if (GET_CODE (x4) != UNSPEC
    1535          140 :       || XVECLEN (x4, 0) != 1
    1536          140 :       || XINT (x4, 1) != 111)
    1537              :     return -1;
    1538          140 :   x5 = XVECEXP (x4, 0, 0);
    1539          140 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1540              :     return -1;
    1541          140 :   x6 = XEXP (x2, 0);
    1542          140 :   operands[0] = x6;
    1543          140 :   if (!register_operand (operands[0], E_V2SImode))
    1544              :     return -1;
    1545          140 :   x7 = XEXP (x3, 0);
    1546          140 :   operands[1] = x7;
    1547          140 :   if (!register_operand (operands[1], E_V2SFmode))
    1548              :     return -1;
    1549          140 :   x8 = XEXP (x3, 1);
    1550          140 :   operands[2] = x8;
    1551          140 :   if (!nonimmediate_operand (operands[2], E_V2SFmode))
    1552              :     return -1;
    1553              :   return 0;
    1554              : }
    1555              : 
    1556              : int
    1557          318 : pattern379 (rtx x1)
    1558              : {
    1559          318 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1560          318 :   int res ATTRIBUTE_UNUSED;
    1561          318 :   switch (GET_MODE (operands[0]))
    1562              :     {
    1563          303 :     case E_QImode:
    1564          303 :       if (!register_operand (operands[0], E_QImode)
    1565          303 :           || GET_MODE (x1) != E_QImode
    1566          606 :           || !register_operand (operands[1], E_QImode))
    1567           37 :         return -1;
    1568              :       return 0;
    1569              : 
    1570           15 :     case E_HImode:
    1571           15 :       if (!register_operand (operands[0], E_HImode)
    1572           15 :           || GET_MODE (x1) != E_HImode
    1573           30 :           || !register_operand (operands[1], E_HImode))
    1574            0 :         return -1;
    1575              :       return 1;
    1576              : 
    1577              :     default:
    1578              :       return -1;
    1579              :     }
    1580              : }
    1581              : 
    1582              : int
    1583         2515 : pattern387 (rtx x1, int i1)
    1584              : {
    1585         2515 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1586         2515 :   rtx x2;
    1587         2515 :   int res ATTRIBUTE_UNUSED;
    1588         2515 :   if (GET_CODE (x1) != UNSPEC
    1589           12 :       || XVECLEN (x1, 0) != 1
    1590           12 :       || XINT (x1, 1) != i1)
    1591              :     return -1;
    1592           12 :   x2 = XVECEXP (x1, 0, 0);
    1593           12 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1594            0 :     return -1;
    1595              :   return 0;
    1596              : }
    1597              : 
    1598              : int
    1599         3346 : pattern392 (rtx x1)
    1600              : {
    1601         3346 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1602         3346 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1603         3346 :   rtx x10, x11;
    1604         3346 :   int res ATTRIBUTE_UNUSED;
    1605         3346 :   x2 = XVECEXP (x1, 0, 1);
    1606         3346 :   if (GET_CODE (x2) != CLOBBER)
    1607              :     return -1;
    1608         3346 :   x3 = XVECEXP (x1, 0, 2);
    1609         3346 :   if (GET_CODE (x3) != CLOBBER)
    1610              :     return -1;
    1611         3346 :   x4 = XVECEXP (x1, 0, 0);
    1612         3346 :   x5 = XEXP (x4, 0);
    1613         3346 :   operands[0] = x5;
    1614         3346 :   x6 = XEXP (x4, 1);
    1615         3346 :   x7 = XEXP (x6, 0);
    1616         3346 :   operands[1] = x7;
    1617         3346 :   if (!register_operand (operands[1], E_DImode))
    1618              :     return -1;
    1619         3343 :   x8 = XEXP (x2, 0);
    1620         3343 :   operands[2] = x8;
    1621         3343 :   if (!memory_operand (operands[2], E_DImode))
    1622              :     return -1;
    1623         3343 :   x9 = XEXP (x3, 0);
    1624         3343 :   operands[3] = x9;
    1625         3343 :   if (!scratch_operand (operands[3], E_V4SImode))
    1626              :     return -1;
    1627         3343 :   x10 = XVECEXP (x1, 0, 3);
    1628         3343 :   x11 = XEXP (x10, 0);
    1629         3343 :   operands[4] = x11;
    1630         3343 :   if (!scratch_operand (operands[4], E_V4SImode))
    1631              :     return -1;
    1632         3343 :   return pattern391 (x6); /* [-1, 2] */
    1633              : }
    1634              : 
    1635              : int
    1636        12402 : pattern407 (rtx x1)
    1637              : {
    1638        12402 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1639        12402 :   rtx x2, x3, x4, x5, x6;
    1640        12402 :   int res ATTRIBUTE_UNUSED;
    1641        12402 :   x2 = XEXP (x1, 0);
    1642        12402 :   x3 = XEXP (x2, 0);
    1643        12402 :   operands[1] = x3;
    1644        12402 :   x4 = XEXP (x1, 1);
    1645        12402 :   switch (GET_CODE (x4))
    1646              :     {
    1647            0 :     case ASHIFT:
    1648            0 :       x5 = XEXP (x4, 1);
    1649            0 :       operands[3] = x5;
    1650            0 :       if (!const_int_operand (operands[3], E_QImode))
    1651              :         return -1;
    1652            0 :       x6 = XEXP (x4, 0);
    1653            0 :       switch (GET_CODE (x6))
    1654              :         {
    1655            0 :         case REG:
    1656            0 :         case SUBREG:
    1657            0 :           operands[2] = x6;
    1658            0 :           switch (GET_MODE (operands[0]))
    1659              :             {
    1660            0 :             case E_DImode:
    1661            0 :               return pattern403 (x1, 
    1662              : E_DImode, 
    1663            0 : E_SImode); /* [-1, 0] */
    1664              : 
    1665            0 :             case E_TImode:
    1666            0 :               if (pattern403 (x1, 
    1667              : E_TImode, 
    1668              : E_DImode) != 0)
    1669              :                 return -1;
    1670              :               return 1;
    1671              : 
    1672              :             default:
    1673              :               return -1;
    1674              :             }
    1675              : 
    1676            0 :         case SIGN_EXTEND:
    1677            0 :           res = pattern405 (x1);
    1678            0 :           if (res >= 0)
    1679            0 :             return res + 2; /* [2, 3] */
    1680              :           return -1;
    1681              : 
    1682            0 :         case ZERO_EXTEND:
    1683            0 :           res = pattern405 (x1);
    1684            0 :           if (res >= 0)
    1685            0 :             return res + 4; /* [4, 5] */
    1686              :           return -1;
    1687              : 
    1688              :         default:
    1689              :           return -1;
    1690              :         }
    1691              : 
    1692         2806 :     case CONST_INT:
    1693         2806 :     case CONST_WIDE_INT:
    1694         2806 :       operands[2] = x4;
    1695         2806 :       switch (GET_MODE (operands[0]))
    1696              :         {
    1697          834 :         case E_DImode:
    1698          834 :           if (pattern406 (x1, 
    1699              : E_DImode, 
    1700              : E_SImode) != 0)
    1701              :             return -1;
    1702              :           return 6;
    1703              : 
    1704         1509 :         case E_TImode:
    1705         1509 :           if (pattern406 (x1, 
    1706              : E_TImode, 
    1707              : E_DImode) != 0)
    1708              :             return -1;
    1709              :           return 7;
    1710              : 
    1711              :         default:
    1712              :           return -1;
    1713              :         }
    1714              : 
    1715              :     default:
    1716              :       return -1;
    1717              :     }
    1718              : }
    1719              : 
    1720              : int
    1721       145943 : pattern427 (rtx x1)
    1722              : {
    1723       145943 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1724       145943 :   rtx x2, x3, x4, x5, x6;
    1725       145943 :   int res ATTRIBUTE_UNUSED;
    1726       145943 :   x2 = XEXP (x1, 1);
    1727       145943 :   x3 = XEXP (x2, 0);
    1728       145943 :   x4 = XEXP (x3, 0);
    1729       145943 :   if (GET_CODE (x4) != SUBREG
    1730        39092 :       || maybe_ne (SUBREG_BYTE (x4), 0)
    1731       184264 :       || GET_MODE (x4) != E_QImode)
    1732              :     return -1;
    1733          138 :   x5 = XEXP (x4, 0);
    1734          138 :   switch (GET_CODE (x5))
    1735              :     {
    1736            3 :     case ASHIFTRT:
    1737            3 :     case LSHIFTRT:
    1738            3 :     case SIGN_EXTRACT:
    1739            3 :     case ZERO_EXTRACT:
    1740            3 :       operands[3] = x5;
    1741            3 :       x6 = XEXP (x1, 0);
    1742            3 :       return pattern426 (x6); /* [-1, 0] */
    1743              : 
    1744              :     default:
    1745              :       return -1;
    1746              :     }
    1747              : }
    1748              : 
    1749              : int
    1750          374 : pattern434 (rtx x1, machine_mode i1)
    1751              : {
    1752          374 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1753          374 :   rtx x2, x3;
    1754          374 :   int res ATTRIBUTE_UNUSED;
    1755          374 :   if (!register_operand (operands[0], i1)
    1756          374 :       || GET_MODE (x1) != i1)
    1757              :     return -1;
    1758          306 :   x2 = XEXP (x1, 0);
    1759          306 :   if (GET_MODE (x2) != i1)
    1760              :     return -1;
    1761          306 :   x3 = XEXP (x2, 0);
    1762          306 :   if (GET_MODE (x3) != i1
    1763          306 :       || !register_no_SP_operand (operands[1], i1)
    1764          291 :       || !register_operand (operands[3], i1)
    1765          563 :       || !immediate_operand (operands[4], i1))
    1766          116 :     return -1;
    1767              :   return 0;
    1768              : }
    1769              : 
    1770              : int
    1771          330 : pattern443 (rtx x1)
    1772              : {
    1773          330 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1774          330 :   rtx x2, x3;
    1775          330 :   int res ATTRIBUTE_UNUSED;
    1776          330 :   if (GET_MODE (x1) != E_SImode)
    1777              :     return -1;
    1778          318 :   x2 = XEXP (x1, 0);
    1779          318 :   if (GET_CODE (x2) != ASHIFT
    1780           72 :       || GET_MODE (x2) != E_SImode)
    1781              :     return -1;
    1782           72 :   x3 = XEXP (x2, 0);
    1783           72 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1784           46 :     return -1;
    1785              :   return 0;
    1786              : }
    1787              : 
    1788              : int
    1789         4495 : pattern449 (rtx x1, int *pnum_clobbers)
    1790              : {
    1791         4495 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1792         4495 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1793         4495 :   int res ATTRIBUTE_UNUSED;
    1794         4495 :   x2 = XEXP (x1, 1);
    1795         4495 :   x3 = XEXP (x2, 1);
    1796         4495 :   switch (GET_CODE (x3))
    1797              :     {
    1798         1518 :     case CONST_INT:
    1799         1518 :       operands[3] = x3;
    1800         1518 :       x4 = XEXP (x1, 0);
    1801         1518 :       x5 = XEXP (x4, 0);
    1802         1518 :       operands[4] = x5;
    1803         1518 :       x6 = XEXP (x4, 1);
    1804         1518 :       operands[2] = x6;
    1805         1518 :       x7 = XEXP (x2, 0);
    1806         1518 :       operands[1] = x7;
    1807         1518 :       return pattern447 (x1); /* [-1, 1] */
    1808              : 
    1809          305 :     case MINUS:
    1810          305 :       if (pnum_clobbers == NULL
    1811          305 :           || GET_MODE (x3) != E_QImode)
    1812              :         return -1;
    1813          298 :       x8 = XEXP (x3, 0);
    1814          298 :       if (GET_CODE (x8) != CONST_INT)
    1815              :         return -1;
    1816          119 :       x4 = XEXP (x1, 0);
    1817          119 :       x6 = XEXP (x4, 1);
    1818          119 :       if (!nonmemory_operand (x6, E_QImode))
    1819              :         return -1;
    1820          119 :       switch (XWINT (x8, 0))
    1821              :         {
    1822           93 :         case 64L:
    1823           93 :           if (pattern448 (x1, 
    1824              : E_DImode) != 0)
    1825              :             return -1;
    1826              :           return 2;
    1827              : 
    1828           20 :         case 32L:
    1829           20 :           if (pattern448 (x1, 
    1830              : E_SImode) != 0)
    1831              :             return -1;
    1832              :           return 3;
    1833              : 
    1834              :         default:
    1835              :           return -1;
    1836              :         }
    1837              : 
    1838              :     default:
    1839              :       return -1;
    1840              :     }
    1841              : }
    1842              : 
    1843              : int
    1844         3663 : pattern462 (rtx x1)
    1845              : {
    1846         3663 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1847         3663 :   rtx x2;
    1848         3663 :   int res ATTRIBUTE_UNUSED;
    1849         3663 :   x2 = XEXP (x1, 1);
    1850         3663 :   if (!rtx_equal_p (x2, operands[1]))
    1851              :     return -1;
    1852         3246 :   switch (GET_MODE (operands[0]))
    1853              :     {
    1854          569 :     case E_V8HFmode:
    1855          569 :       return pattern461 (x1, 
    1856          569 : E_V8HFmode); /* [-1, 0] */
    1857              : 
    1858         1684 :     case E_V4SFmode:
    1859         1684 :       if (pattern461 (x1, 
    1860              : E_V4SFmode) != 0)
    1861              :         return -1;
    1862              :       return 1;
    1863              : 
    1864          993 :     case E_V2DFmode:
    1865          993 :       if (pattern461 (x1, 
    1866              : E_V2DFmode) != 0)
    1867              :         return -1;
    1868              :       return 2;
    1869              : 
    1870              :     default:
    1871              :       return -1;
    1872              :     }
    1873              : }
    1874              : 
    1875              : int
    1876         6227 : pattern472 (rtx x1, machine_mode i1, machine_mode i2)
    1877              : {
    1878         6227 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1879         6227 :   rtx x2;
    1880         6227 :   int res ATTRIBUTE_UNUSED;
    1881         6227 :   if (!register_operand (operands[0], i1)
    1882         6227 :       || GET_MODE (x1) != i1)
    1883              :     return -1;
    1884         5834 :   x2 = XEXP (x1, 0);
    1885         5834 :   if (GET_MODE (x2) != i1
    1886         5834 :       || !nonimmediate_operand (operands[1], i1)
    1887         5772 :       || !nonimm_or_0_operand (operands[3], i1)
    1888        11522 :       || !register_operand (operands[4], i2))
    1889          403 :     return -1;
    1890              :   return 0;
    1891              : }
    1892              : 
    1893              : int
    1894         7367 : pattern477 (rtx x1, machine_mode i1, machine_mode i2)
    1895              : {
    1896         7367 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1897         7367 :   rtx x2;
    1898         7367 :   int res ATTRIBUTE_UNUSED;
    1899         7367 :   if (!register_operand (operands[0], i1)
    1900         7367 :       || GET_MODE (x1) != i1)
    1901              :     return -1;
    1902         6903 :   x2 = XEXP (x1, 0);
    1903         6903 :   if (GET_MODE (x2) != i1
    1904         6903 :       || !register_operand (operands[1], i1)
    1905         6890 :       || !vector_operand (operands[2], i1)
    1906         6848 :       || !nonimm_or_0_operand (operands[4], i1)
    1907        13612 :       || !register_operand (operands[5], i2))
    1908          290 :     return -1;
    1909              :   return 0;
    1910              : }
    1911              : 
    1912              : int
    1913         6199 : pattern482 (rtx x1, machine_mode i1, machine_mode i2)
    1914              : {
    1915         6199 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1916         6199 :   rtx x2;
    1917         6199 :   int res ATTRIBUTE_UNUSED;
    1918         6199 :   if (!register_operand (operands[0], i1)
    1919         6199 :       || GET_MODE (x1) != i1)
    1920              :     return -1;
    1921         5941 :   x2 = XEXP (x1, 0);
    1922         5941 :   if (GET_MODE (x2) != i1
    1923         5941 :       || !register_operand (operands[1], i1)
    1924         5941 :       || !nonimmediate_operand (operands[2], i1)
    1925         5941 :       || !nonimm_or_0_operand (operands[4], i1)
    1926        11710 :       || !register_operand (operands[5], i2))
    1927          416 :     return -1;
    1928              :   return 0;
    1929              : }
    1930              : 
    1931              : int
    1932        18478 : pattern491 (rtx x1, machine_mode i1, machine_mode i2)
    1933              : {
    1934        18478 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1935        18478 :   rtx x2;
    1936        18478 :   int res ATTRIBUTE_UNUSED;
    1937        18478 :   if (!register_operand (operands[0], i1)
    1938        18478 :       || GET_MODE (x1) != i1)
    1939              :     return -1;
    1940        17528 :   x2 = XEXP (x1, 0);
    1941        17528 :   if (GET_MODE (x2) != i1
    1942        17528 :       || !bcst_vector_operand (operands[1], i1)
    1943        16248 :       || !bcst_vector_operand (operands[2], i1)
    1944        15136 :       || !nonimm_or_0_operand (operands[3], i1)
    1945        32150 :       || !register_operand (operands[4], i2))
    1946         3400 :     return -1;
    1947              :   return 0;
    1948              : }
    1949              : 
    1950              : int
    1951          379 : pattern496 (rtx x1, machine_mode i1, machine_mode i2)
    1952              : {
    1953          379 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1954          379 :   rtx x2;
    1955          379 :   int res ATTRIBUTE_UNUSED;
    1956          379 :   if (!register_operand (operands[0], i2)
    1957          379 :       || GET_MODE (x1) != i2)
    1958              :     return -1;
    1959          366 :   x2 = XVECEXP (x1, 0, 0);
    1960          366 :   if (GET_MODE (x2) != i2
    1961          366 :       || !register_operand (operands[1], i1))
    1962           21 :     return -1;
    1963              :   return 0;
    1964              : }
    1965              : 
    1966              : int
    1967            0 : pattern497 (rtx x1)
    1968              : {
    1969            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1970            0 :   rtx x2, x3, x4;
    1971            0 :   int res ATTRIBUTE_UNUSED;
    1972            0 :   x2 = XVECEXP (x1, 0, 0);
    1973            0 :   x3 = XEXP (x2, 0);
    1974            0 :   operands[1] = x3;
    1975            0 :   x4 = XVECEXP (x1, 0, 1);
    1976            0 :   operands[2] = x4;
    1977            0 :   if (!const48_operand (operands[2], E_SImode))
    1978              :     return -1;
    1979            0 :   switch (GET_MODE (operands[0]))
    1980              :     {
    1981            0 :     case E_V8HImode:
    1982            0 :       return pattern496 (x1, 
    1983              : E_V8HFmode, 
    1984            0 : E_V8HImode); /* [-1, 0] */
    1985              : 
    1986            0 :     case E_V16HImode:
    1987            0 :       if (pattern496 (x1, 
    1988              : E_V16HFmode, 
    1989              : E_V16HImode) != 0)
    1990              :         return -1;
    1991              :       return 1;
    1992              : 
    1993            0 :     case E_V32HImode:
    1994            0 :       if (pattern496 (x1, 
    1995              : E_V32HFmode, 
    1996              : E_V32HImode) != 0)
    1997              :         return -1;
    1998              :       return 2;
    1999              : 
    2000            0 :     case E_V8SImode:
    2001            0 :       if (!register_operand (operands[0], E_V8SImode)
    2002            0 :           || GET_MODE (x1) != E_V8SImode
    2003            0 :           || GET_MODE (x2) != E_V8SImode)
    2004              :         return -1;
    2005            0 :       switch (GET_MODE (operands[1]))
    2006              :         {
    2007            0 :         case E_V8HFmode:
    2008            0 :           if (!register_operand (operands[1], E_V8HFmode))
    2009              :             return -1;
    2010              :           return 3;
    2011              : 
    2012            0 :         case E_V8DFmode:
    2013            0 :           if (!register_operand (operands[1], E_V8DFmode))
    2014              :             return -1;
    2015              :           return 4;
    2016              : 
    2017              :         default:
    2018              :           return -1;
    2019              :         }
    2020              : 
    2021            0 :     case E_V16SImode:
    2022            0 :       if (!register_operand (operands[0], E_V16SImode)
    2023            0 :           || GET_MODE (x1) != E_V16SImode
    2024            0 :           || GET_MODE (x2) != E_V16SImode)
    2025              :         return -1;
    2026            0 :       switch (GET_MODE (operands[1]))
    2027              :         {
    2028            0 :         case E_V16HFmode:
    2029            0 :           if (!register_operand (operands[1], E_V16HFmode))
    2030              :             return -1;
    2031              :           return 5;
    2032              : 
    2033            0 :         case E_V16SFmode:
    2034            0 :           if (!register_operand (operands[1], E_V16SFmode))
    2035              :             return -1;
    2036              :           return 6;
    2037              : 
    2038              :         default:
    2039              :           return -1;
    2040              :         }
    2041              : 
    2042            0 :     case E_V8DImode:
    2043            0 :       if (!register_operand (operands[0], E_V8DImode)
    2044            0 :           || GET_MODE (x1) != E_V8DImode
    2045            0 :           || GET_MODE (x2) != E_V8DImode)
    2046              :         return -1;
    2047            0 :       switch (GET_MODE (operands[1]))
    2048              :         {
    2049            0 :         case E_V8HFmode:
    2050            0 :           if (!register_operand (operands[1], E_V8HFmode))
    2051              :             return -1;
    2052              :           return 7;
    2053              : 
    2054            0 :         case E_V8DFmode:
    2055            0 :           if (!register_operand (operands[1], E_V8DFmode))
    2056              :             return -1;
    2057              :           return 8;
    2058              : 
    2059            0 :         case E_V8SFmode:
    2060            0 :           if (!register_operand (operands[1], E_V8SFmode))
    2061              :             return -1;
    2062              :           return 9;
    2063              : 
    2064              :         default:
    2065              :           return -1;
    2066              :         }
    2067              : 
    2068              :     default:
    2069              :       return -1;
    2070              :     }
    2071              : }
    2072              : 
    2073              : int
    2074        24047 : pattern518 (rtx x1, machine_mode i1)
    2075              : {
    2076        24047 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2077        24047 :   int res ATTRIBUTE_UNUSED;
    2078        24047 :   if (!register_operand (operands[0], i1)
    2079        20801 :       || GET_MODE (x1) != i1
    2080        20801 :       || !register_operand (operands[1], i1)
    2081        39568 :       || !bcst_vector_operand (operands[2], i1))
    2082        10450 :     return -1;
    2083              :   return 0;
    2084              : }
    2085              : 
    2086              : int
    2087          388 : pattern522 (rtx x1, machine_mode i1)
    2088              : {
    2089          388 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2090          388 :   int res ATTRIBUTE_UNUSED;
    2091          388 :   if (!register_operand (operands[0], i1)
    2092          388 :       || GET_MODE (x1) != i1)
    2093              :     return -1;
    2094          351 :   switch (GET_MODE (operands[1]))
    2095              :     {
    2096          245 :     case E_V8SImode:
    2097          245 :       if (!nonimmediate_operand (operands[1], E_V8SImode))
    2098              :         return -1;
    2099              :       return 0;
    2100              : 
    2101          104 :     case E_V8DImode:
    2102          104 :       if (!nonimmediate_operand (operands[1], E_V8DImode))
    2103              :         return -1;
    2104              :       return 1;
    2105              : 
    2106              :     default:
    2107              :       return -1;
    2108              :     }
    2109              : }
    2110              : 
    2111              : int
    2112       218954 : pattern527 (rtx x1)
    2113              : {
    2114       218954 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2115       218954 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2116       218954 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2117       218954 :   rtx x18, x19, x20, x21, x22;
    2118       218954 :   int res ATTRIBUTE_UNUSED;
    2119       218954 :   x2 = XEXP (x1, 0);
    2120       218954 :   if (maybe_ne (SUBREG_BYTE (x2), 0))
    2121              :     return -1;
    2122       218954 :   x3 = XEXP (x2, 0);
    2123       218954 :   if (GET_CODE (x3) != UNSPEC
    2124        18521 :       || XVECLEN (x3, 0) != 2
    2125         7520 :       || XINT (x3, 1) != 152)
    2126              :     return -1;
    2127           40 :   x4 = XVECEXP (x3, 0, 0);
    2128           40 :   operands[1] = x4;
    2129           40 :   x5 = XVECEXP (x3, 0, 1);
    2130           40 :   operands[2] = x5;
    2131           40 :   x6 = XEXP (x1, 1);
    2132           40 :   switch (XVECLEN (x6, 0))
    2133              :     {
    2134            3 :     case 16:
    2135            3 :       x7 = XVECEXP (x6, 0, 0);
    2136            3 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2137              :         return -1;
    2138            3 :       x8 = XVECEXP (x6, 0, 1);
    2139            3 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2140              :         return -1;
    2141            3 :       x9 = XVECEXP (x6, 0, 2);
    2142            3 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2143              :         return -1;
    2144            3 :       x10 = XVECEXP (x6, 0, 3);
    2145            3 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2146              :         return -1;
    2147            3 :       x11 = XVECEXP (x6, 0, 4);
    2148            3 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2149              :         return -1;
    2150            3 :       x12 = XVECEXP (x6, 0, 5);
    2151            3 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2152              :         return -1;
    2153            3 :       x13 = XVECEXP (x6, 0, 6);
    2154            3 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2155              :         return -1;
    2156            3 :       x14 = XVECEXP (x6, 0, 7);
    2157            3 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    2158              :         return -1;
    2159            3 :       x15 = XVECEXP (x6, 0, 8);
    2160            3 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2161              :         return -1;
    2162            3 :       x16 = XVECEXP (x6, 0, 9);
    2163            3 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    2164              :         return -1;
    2165            3 :       x17 = XVECEXP (x6, 0, 10);
    2166            3 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    2167              :         return -1;
    2168            3 :       x18 = XVECEXP (x6, 0, 11);
    2169            3 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    2170              :         return -1;
    2171            3 :       x19 = XVECEXP (x6, 0, 12);
    2172            3 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    2173              :         return -1;
    2174            3 :       x20 = XVECEXP (x6, 0, 13);
    2175            3 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    2176              :         return -1;
    2177            3 :       x21 = XVECEXP (x6, 0, 14);
    2178            3 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    2179              :         return -1;
    2180            3 :       x22 = XVECEXP (x6, 0, 15);
    2181            3 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 15]
    2182            3 :           || pattern526 (x1, 
    2183              : E_V32HImode, 
    2184              : E_V32HFmode, 
    2185              : E_V16HFmode) != 0)
    2186            1 :         return -1;
    2187              :       return 0;
    2188              : 
    2189            3 :     case 8:
    2190            3 :       x7 = XVECEXP (x6, 0, 0);
    2191            3 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2192              :         return -1;
    2193            3 :       x8 = XVECEXP (x6, 0, 1);
    2194            3 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2195              :         return -1;
    2196            3 :       x9 = XVECEXP (x6, 0, 2);
    2197            3 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2198              :         return -1;
    2199            3 :       x10 = XVECEXP (x6, 0, 3);
    2200            3 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2201              :         return -1;
    2202            3 :       x11 = XVECEXP (x6, 0, 4);
    2203            3 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2204              :         return -1;
    2205            3 :       x12 = XVECEXP (x6, 0, 5);
    2206            3 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2207              :         return -1;
    2208            3 :       x13 = XVECEXP (x6, 0, 6);
    2209            3 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2210              :         return -1;
    2211            3 :       x14 = XVECEXP (x6, 0, 7);
    2212            3 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
    2213            3 :           || pattern526 (x1, 
    2214              : E_V16HImode, 
    2215              : E_V16HFmode, 
    2216              : E_V8HFmode) != 0)
    2217            1 :         return -1;
    2218              :       return 1;
    2219              : 
    2220              :     default:
    2221              :       return -1;
    2222              :     }
    2223              : }
    2224              : 
    2225              : int
    2226         1160 : pattern553 (rtx x1)
    2227              : {
    2228         1160 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2229         1160 :   rtx x2, x3, x4, x5, x6, x7;
    2230         1160 :   int res ATTRIBUTE_UNUSED;
    2231         1160 :   x2 = XVECEXP (x1, 0, 0);
    2232         1160 :   x3 = XEXP (x2, 1);
    2233         1160 :   if (GET_MODE (x3) != E_XFmode)
    2234              :     return -1;
    2235         1160 :   x4 = XVECEXP (x1, 0, 1);
    2236         1160 :   if (GET_CODE (x4) != CLOBBER)
    2237              :     return -1;
    2238         1155 :   x5 = XEXP (x4, 0);
    2239         1155 :   if (GET_CODE (x5) != REG
    2240         1155 :       || REGNO (x5) != 17
    2241         2310 :       || GET_MODE (x5) != E_CCmode)
    2242              :     return -1;
    2243         1155 :   x6 = XEXP (x2, 0);
    2244         1155 :   operands[0] = x6;
    2245         1155 :   if (!register_operand (operands[0], E_XFmode))
    2246              :     return -1;
    2247         1155 :   x7 = XVECEXP (x3, 0, 0);
    2248         1155 :   operands[1] = x7;
    2249         1155 :   if (!register_operand (operands[1], E_XFmode))
    2250              :     return -1;
    2251              :   return 0;
    2252              : }
    2253              : 
    2254              : int
    2255           35 : pattern559 (rtx x1, int *pnum_clobbers)
    2256              : {
    2257           35 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2258           35 :   rtx x2, x3, x4, x5, x6, x7;
    2259           35 :   int res ATTRIBUTE_UNUSED;
    2260           35 :   x2 = XVECEXP (x1, 0, 0);
    2261           35 :   x3 = XEXP (x2, 1);
    2262           35 :   x4 = XEXP (x3, 0);
    2263           35 :   x5 = XEXP (x4, 0);
    2264           35 :   operands[1] = x5;
    2265           35 :   x6 = XVECEXP (x1, 0, 1);
    2266           35 :   switch (GET_CODE (x6))
    2267              :     {
    2268           35 :     case CLOBBER:
    2269           35 :       x7 = XEXP (x6, 0);
    2270           35 :       if (GET_CODE (x7) != REG
    2271           35 :           || REGNO (x7) != 17
    2272           70 :           || GET_MODE (x7) != E_CCmode)
    2273            0 :         return -1;
    2274              :       return 0;
    2275              : 
    2276            0 :     case UNSPEC:
    2277            0 :       if (pnum_clobbers == NULL
    2278            0 :           || XVECLEN (x6, 0) != 1
    2279            0 :           || XINT (x6, 1) != 39)
    2280            0 :         return -1;
    2281              :       return 1;
    2282              : 
    2283              :     default:
    2284              :       return -1;
    2285              :     }
    2286              : }
    2287              : 
    2288              : int
    2289       463230 : pattern567 (rtx x1, rtx_code i1)
    2290              : {
    2291       463230 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2292       463230 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2293       463230 :   int res ATTRIBUTE_UNUSED;
    2294       463230 :   x2 = XVECEXP (x1, 0, 0);
    2295       463230 :   x3 = XEXP (x2, 1);
    2296       463230 :   x4 = XEXP (x3, 1);
    2297       463230 :   if (GET_CODE (x4) != i1)
    2298              :     return -1;
    2299       253142 :   x5 = XVECEXP (x1, 0, 1);
    2300       253142 :   if (GET_CODE (x5) != CLOBBER)
    2301              :     return -1;
    2302       234219 :   x6 = XEXP (x5, 0);
    2303       234219 :   if (GET_CODE (x6) != REG
    2304       234219 :       || REGNO (x6) != 17
    2305       468438 :       || GET_MODE (x6) != E_CCmode)
    2306              :     return -1;
    2307       234219 :   x7 = XEXP (x3, 0);
    2308       234219 :   x8 = XEXP (x7, 0);
    2309       234219 :   operands[1] = x8;
    2310       234219 :   x9 = XEXP (x4, 0);
    2311       234219 :   operands[2] = x9;
    2312       234219 :   switch (GET_MODE (operands[0]))
    2313              :     {
    2314       119767 :     case E_DImode:
    2315       119767 :       return pattern566 (x3, 
    2316              : E_SImode, 
    2317       119767 : E_DImode); /* [-1, 0] */
    2318              : 
    2319       108850 :     case E_TImode:
    2320       108850 :       if (pattern566 (x3, 
    2321              : E_DImode, 
    2322              : E_TImode) != 0)
    2323              :         return -1;
    2324              :       return 1;
    2325              : 
    2326         4926 :     case E_HImode:
    2327         4926 :       if (pattern566 (x3, 
    2328              : E_QImode, 
    2329              : E_HImode) != 0)
    2330              :         return -1;
    2331              :       return 2;
    2332              : 
    2333              :     default:
    2334              :       return -1;
    2335              :     }
    2336              : }
    2337              : 
    2338              : int
    2339          638 : pattern578 (rtx x1)
    2340              : {
    2341          638 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2342          638 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2343          638 :   int res ATTRIBUTE_UNUSED;
    2344          638 :   x2 = XVECEXP (x1, 0, 0);
    2345          638 :   x3 = XEXP (x2, 0);
    2346          638 :   operands[0] = x3;
    2347          638 :   x4 = XEXP (x2, 1);
    2348          638 :   x5 = XEXP (x4, 0);
    2349          638 :   operands[1] = x5;
    2350          638 :   if (!nonimmediate_operand (operands[1], E_SImode))
    2351              :     return -1;
    2352          605 :   x6 = XVECEXP (x1, 0, 1);
    2353          605 :   x7 = XEXP (x6, 0);
    2354          605 :   operands[2] = x7;
    2355          605 :   if (!memory_operand (operands[2], E_DImode))
    2356              :     return -1;
    2357          605 :   x8 = XVECEXP (x1, 0, 2);
    2358          605 :   x9 = XEXP (x8, 0);
    2359          605 :   operands[3] = x9;
    2360          605 :   if (!scratch_operand (operands[3], E_DImode))
    2361              :     return -1;
    2362          604 :   return pattern391 (x4); /* [-1, 2] */
    2363              : }
    2364              : 
    2365              : int
    2366       397191 : pattern588 (rtx x1, rtx_code i1, machine_mode i2)
    2367              : {
    2368       397191 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2369       397191 :   rtx x2, x3, x4, x5;
    2370       397191 :   int res ATTRIBUTE_UNUSED;
    2371       397191 :   x2 = XVECEXP (x1, 0, 0);
    2372       397191 :   x3 = XEXP (x2, 0);
    2373       397191 :   if (GET_CODE (x3) != REG
    2374       397191 :       || REGNO (x3) != 17
    2375       794382 :       || GET_MODE (x3) != i2)
    2376              :     return -1;
    2377       115766 :   x4 = XVECEXP (x1, 0, 1);
    2378       115766 :   if (GET_CODE (x4) != SET)
    2379              :     return -1;
    2380        91298 :   x5 = XEXP (x4, 1);
    2381        91298 :   if (GET_CODE (x5) != i1)
    2382          736 :     return -1;
    2383              :   return 0;
    2384              : }
    2385              : 
    2386              : int
    2387       322624 : pattern592 (rtx x1, rtx_code i1)
    2388              : {
    2389       322624 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2390       322624 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2391       322624 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2392       322624 :   rtx x18;
    2393       322624 :   int res ATTRIBUTE_UNUSED;
    2394       322624 :   x2 = XVECEXP (x1, 0, 0);
    2395       322624 :   x3 = XEXP (x2, 1);
    2396       322624 :   x4 = XEXP (x3, 0);
    2397       322624 :   if (GET_MODE (x4) != E_QImode)
    2398              :     return -1;
    2399        57263 :   x5 = XEXP (x4, 0);
    2400        57263 :   if (GET_CODE (x5) != SUBREG
    2401         1354 :       || maybe_ne (SUBREG_BYTE (x5), 0)
    2402        58617 :       || GET_MODE (x5) != E_QImode)
    2403              :     return -1;
    2404         1354 :   x6 = XEXP (x5, 0);
    2405         1354 :   switch (GET_CODE (x6))
    2406              :     {
    2407          259 :     case ASHIFTRT:
    2408          259 :     case LSHIFTRT:
    2409          259 :     case SIGN_EXTRACT:
    2410          259 :     case ZERO_EXTRACT:
    2411          259 :       operands[3] = x6;
    2412          259 :       x7 = XEXP (x3, 1);
    2413          259 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2414              :         return -1;
    2415          237 :       x8 = XVECEXP (x1, 0, 1);
    2416          237 :       if (GET_CODE (x8) != SET)
    2417              :         return -1;
    2418            0 :       x9 = XEXP (x8, 1);
    2419            0 :       if (GET_CODE (x9) != SUBREG
    2420            0 :           || maybe_ne (SUBREG_BYTE (x9), 0))
    2421              :         return -1;
    2422            0 :       x10 = XEXP (x9, 0);
    2423            0 :       if (GET_CODE (x10) != i1
    2424            0 :           || GET_MODE (x10) != E_QImode)
    2425              :         return -1;
    2426            0 :       x11 = XEXP (x10, 0);
    2427            0 :       if (GET_CODE (x11) != SUBREG
    2428            0 :           || maybe_ne (SUBREG_BYTE (x11), 0)
    2429            0 :           || GET_MODE (x11) != E_QImode)
    2430              :         return -1;
    2431            0 :       x12 = XEXP (x11, 0);
    2432            0 :       if (GET_CODE (x12) != ZERO_EXTRACT)
    2433              :         return -1;
    2434            0 :       x13 = XEXP (x12, 1);
    2435            0 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2436              :         return -1;
    2437            0 :       x14 = XEXP (x12, 2);
    2438            0 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2439              :         return -1;
    2440            0 :       x15 = XEXP (x8, 0);
    2441            0 :       if (GET_CODE (x15) != ZERO_EXTRACT)
    2442              :         return -1;
    2443            0 :       x16 = XEXP (x15, 1);
    2444            0 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2445              :         return -1;
    2446            0 :       x17 = XEXP (x15, 2);
    2447            0 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2448              :         return -1;
    2449            0 :       x18 = XEXP (x2, 0);
    2450            0 :       operands[4] = x18;
    2451            0 :       if (!flags_reg_operand (operands[4], E_VOIDmode))
    2452              :         return -1;
    2453            0 :       operands[5] = x3;
    2454            0 :       if (!compare_operator (operands[5], E_VOIDmode))
    2455              :         return -1;
    2456            0 :       return pattern591 (x1); /* [-1, 2] */
    2457              : 
    2458              :     default:
    2459              :       return -1;
    2460              :     }
    2461              : }
    2462              : 
    2463              : int
    2464          424 : pattern615 (rtx x1)
    2465              : {
    2466          424 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2467          424 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2468          424 :   rtx x10, x11, x12, x13;
    2469          424 :   int res ATTRIBUTE_UNUSED;
    2470          424 :   x2 = XEXP (x1, 1);
    2471          424 :   x3 = XVECEXP (x2, 0, 0);
    2472          424 :   x4 = XEXP (x3, 0);
    2473          424 :   if (GET_CODE (x4) != EQ)
    2474              :     return -1;
    2475          113 :   x5 = XVECEXP (x2, 0, 1);
    2476          113 :   if (GET_CODE (x5) != EQ)
    2477              :     return -1;
    2478          113 :   x6 = XEXP (x5, 0);
    2479          113 :   if (GET_CODE (x6) != EQ)
    2480              :     return -1;
    2481          113 :   x7 = XEXP (x1, 0);
    2482          113 :   if (GET_MODE (x7) != E_CCZmode
    2483          113 :       || GET_MODE (x2) != E_CCZmode)
    2484              :     return -1;
    2485          113 :   x8 = XEXP (x4, 0);
    2486          113 :   operands[0] = x8;
    2487          113 :   x9 = XEXP (x4, 1);
    2488          113 :   operands[1] = x9;
    2489          113 :   x10 = XEXP (x3, 1);
    2490          113 :   operands[2] = x10;
    2491          113 :   x11 = XEXP (x6, 0);
    2492          113 :   if (!rtx_equal_p (x11, operands[0]))
    2493              :     return -1;
    2494          113 :   x12 = XEXP (x6, 1);
    2495          113 :   if (!rtx_equal_p (x12, operands[1]))
    2496              :     return -1;
    2497          113 :   x13 = XEXP (x5, 1);
    2498          113 :   if (!rtx_equal_p (x13, operands[2]))
    2499              :     return -1;
    2500          113 :   switch (GET_MODE (x3))
    2501              :     {
    2502           14 :     case E_V32QImode:
    2503           14 :       return pattern614 (x2, 
    2504           14 : E_V32QImode); /* [-1, 0] */
    2505              : 
    2506            0 :     case E_V16QImode:
    2507            0 :       if (pattern614 (x2, 
    2508              : E_V16QImode) != 0)
    2509              :         return -1;
    2510              :       return 1;
    2511              : 
    2512            0 :     case E_V16HImode:
    2513            0 :       if (pattern614 (x2, 
    2514              : E_V16HImode) != 0)
    2515              :         return -1;
    2516              :       return 2;
    2517              : 
    2518            0 :     case E_V8HImode:
    2519            0 :       if (pattern614 (x2, 
    2520              : E_V8HImode) != 0)
    2521              :         return -1;
    2522              :       return 3;
    2523              : 
    2524            7 :     case E_V8SImode:
    2525            7 :       if (pattern614 (x2, 
    2526              : E_V8SImode) != 0)
    2527              :         return -1;
    2528              :       return 4;
    2529              : 
    2530            0 :     case E_V4SImode:
    2531            0 :       if (pattern614 (x2, 
    2532              : E_V4SImode) != 0)
    2533              :         return -1;
    2534              :       return 5;
    2535              : 
    2536           70 :     case E_V4DImode:
    2537           70 :       if (pattern614 (x2, 
    2538              : E_V4DImode) != 0)
    2539              :         return -1;
    2540              :       return 6;
    2541              : 
    2542           22 :     case E_V2DImode:
    2543           22 :       if (pattern614 (x2, 
    2544              : E_V2DImode) != 0)
    2545              :         return -1;
    2546              :       return 7;
    2547              : 
    2548              :     default:
    2549              :       return -1;
    2550              :     }
    2551              : }
    2552              : 
    2553              : int
    2554          658 : pattern638 (rtx x1, machine_mode i1)
    2555              : {
    2556          658 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2557          658 :   rtx x2;
    2558          658 :   int res ATTRIBUTE_UNUSED;
    2559          658 :   if (!memory_operand (operands[0], i1)
    2560          658 :       || GET_MODE (x1) != i1)
    2561              :     return -1;
    2562          626 :   x2 = XVECEXP (x1, 0, 0);
    2563          626 :   if (GET_MODE (x2) != i1
    2564          626 :       || !register_operand (operands[1], i1))
    2565           23 :     return -1;
    2566              :   return 0;
    2567              : }
    2568              : 
    2569              : int
    2570         2960 : pattern644 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2571              : {
    2572         2960 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2573         2960 :   rtx x2;
    2574         2960 :   int res ATTRIBUTE_UNUSED;
    2575         2960 :   if (!register_operand (operands[0], i1)
    2576         2960 :       || GET_MODE (x1) != i1)
    2577              :     return -1;
    2578         2838 :   x2 = XEXP (x1, 0);
    2579         2838 :   if (GET_MODE (x2) != i1
    2580         2838 :       || !nonimmediate_operand (operands[1], i3)
    2581         2838 :       || !nonimm_or_0_operand (operands[2], i1)
    2582         5605 :       || !register_operand (operands[3], i2))
    2583          206 :     return -1;
    2584              :   return 0;
    2585              : }
    2586              : 
    2587              : int
    2588         6178 : pattern649 (rtx x1)
    2589              : {
    2590         6178 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2591         6178 :   rtx x2, x3, x4;
    2592         6178 :   int res ATTRIBUTE_UNUSED;
    2593         6178 :   x2 = XEXP (x1, 0);
    2594         6178 :   x3 = XVECEXP (x2, 0, 0);
    2595         6178 :   operands[1] = x3;
    2596         6178 :   x4 = XEXP (x1, 2);
    2597         6178 :   operands[3] = x4;
    2598         6178 :   switch (GET_MODE (operands[0]))
    2599              :     {
    2600          512 :     case E_V16SImode:
    2601          512 :       return pattern646 (x1, 
    2602              : E_V16SImode, 
    2603              : E_HImode, 
    2604          512 : E_V16SFmode); /* [-1, 0] */
    2605              : 
    2606         1032 :     case E_V8SImode:
    2607         1032 :       if (!register_operand (operands[0], E_V8SImode)
    2608          980 :           || GET_MODE (x1) != E_V8SImode
    2609          980 :           || GET_MODE (x2) != E_V8SImode
    2610          980 :           || !nonimm_or_0_operand (operands[2], E_V8SImode)
    2611         1980 :           || !register_operand (operands[3], E_QImode))
    2612          124 :         return -1;
    2613          908 :       switch (GET_MODE (operands[1]))
    2614              :         {
    2615          448 :         case E_V8SFmode:
    2616          448 :           if (!vector_operand (operands[1], E_V8SFmode))
    2617              :             return -1;
    2618              :           return 1;
    2619              : 
    2620          460 :         case E_V8DFmode:
    2621          460 :           if (!vector_operand (operands[1], E_V8DFmode))
    2622              :             return -1;
    2623              :           return 2;
    2624              : 
    2625              :         default:
    2626              :           return -1;
    2627              :         }
    2628              : 
    2629         1480 :     case E_V4SImode:
    2630         1480 :       if (!register_operand (operands[0], E_V4SImode)
    2631         1468 :           || GET_MODE (x1) != E_V4SImode
    2632         1468 :           || GET_MODE (x2) != E_V4SImode
    2633         1468 :           || !nonimm_or_0_operand (operands[2], E_V4SImode)
    2634         2898 :           || !register_operand (operands[3], E_QImode))
    2635          126 :         return -1;
    2636         1354 :       switch (GET_MODE (operands[1]))
    2637              :         {
    2638          450 :         case E_V4SFmode:
    2639          450 :           if (!vector_operand (operands[1], E_V4SFmode))
    2640              :             return -1;
    2641              :           return 3;
    2642              : 
    2643          452 :         case E_V4DFmode:
    2644          452 :           if (!vector_operand (operands[1], E_V4DFmode))
    2645              :             return -1;
    2646              :           return 4;
    2647              : 
    2648          452 :         case E_V2DFmode:
    2649          452 :           if (!vector_operand (operands[1], E_V2DFmode))
    2650              :             return -1;
    2651              :           return 5;
    2652              : 
    2653              :         default:
    2654              :           return -1;
    2655              :         }
    2656              : 
    2657         1072 :     case E_V8DImode:
    2658         1072 :       if (!register_operand (operands[0], E_V8DImode)
    2659          988 :           || GET_MODE (x1) != E_V8DImode
    2660          988 :           || GET_MODE (x2) != E_V8DImode
    2661          988 :           || !nonimm_or_0_operand (operands[2], E_V8DImode)
    2662         2024 :           || !register_operand (operands[3], E_QImode))
    2663          160 :         return -1;
    2664          912 :       switch (GET_MODE (operands[1]))
    2665              :         {
    2666          460 :         case E_V8DFmode:
    2667          460 :           if (!vector_operand (operands[1], E_V8DFmode))
    2668              :             return -1;
    2669              :           return 6;
    2670              : 
    2671          452 :         case E_V8SFmode:
    2672          452 :           if (!vector_operand (operands[1], E_V8SFmode))
    2673              :             return -1;
    2674              :           return 7;
    2675              : 
    2676              :         default:
    2677              :           return -1;
    2678              :         }
    2679              : 
    2680         1059 :     case E_V4DImode:
    2681         1059 :       if (!register_operand (operands[0], E_V4DImode)
    2682          975 :           || GET_MODE (x1) != E_V4DImode
    2683          975 :           || GET_MODE (x2) != E_V4DImode
    2684          975 :           || !nonimm_or_0_operand (operands[2], E_V4DImode)
    2685         1999 :           || !register_operand (operands[3], E_QImode))
    2686          159 :         return -1;
    2687          900 :       switch (GET_MODE (operands[1]))
    2688              :         {
    2689          456 :         case E_V4DFmode:
    2690          456 :           if (!vector_operand (operands[1], E_V4DFmode))
    2691              :             return -1;
    2692              :           return 8;
    2693              : 
    2694          444 :         case E_V4SFmode:
    2695          444 :           if (!vector_operand (operands[1], E_V4SFmode))
    2696              :             return -1;
    2697              :           return 9;
    2698              : 
    2699              :         default:
    2700              :           return -1;
    2701              :         }
    2702              : 
    2703         1023 :     case E_V2DImode:
    2704         1023 :       if (!register_operand (operands[0], E_V2DImode)
    2705          983 :           || GET_MODE (x1) != E_V2DImode
    2706          983 :           || GET_MODE (x2) != E_V2DImode
    2707          983 :           || !nonimm_or_0_operand (operands[2], E_V2DImode)
    2708         1967 :           || !register_operand (operands[3], E_QImode))
    2709          118 :         return -1;
    2710          905 :       switch (GET_MODE (operands[1]))
    2711              :         {
    2712          454 :         case E_V2DFmode:
    2713          454 :           if (!vector_operand (operands[1], E_V2DFmode))
    2714              :             return -1;
    2715              :           return 10;
    2716              : 
    2717          451 :         case E_V4SFmode:
    2718          451 :           if (!vector_operand (operands[1], E_V4SFmode))
    2719              :             return -1;
    2720              :           return 11;
    2721              : 
    2722              :         default:
    2723              :           return -1;
    2724              :         }
    2725              : 
    2726              :     default:
    2727              :       return -1;
    2728              :     }
    2729              : }
    2730              : 
    2731              : int
    2732          400 : pattern688 (rtx x1)
    2733              : {
    2734          400 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2735          400 :   rtx x2, x3, x4, x5, x6;
    2736          400 :   int res ATTRIBUTE_UNUSED;
    2737          400 :   x2 = XEXP (x1, 0);
    2738          400 :   x3 = XEXP (x2, 0);
    2739          400 :   x4 = XEXP (x3, 0);
    2740          400 :   operands[2] = x4;
    2741          400 :   x5 = XEXP (x3, 1);
    2742          400 :   operands[3] = x5;
    2743          400 :   x6 = XEXP (x1, 1);
    2744          400 :   operands[4] = x6;
    2745          400 :   switch (GET_MODE (operands[0]))
    2746              :     {
    2747           90 :     case E_V8SFmode:
    2748           90 :       return pattern687 (x1, 
    2749           90 : E_V8SFmode); /* [-1, 0] */
    2750              : 
    2751          122 :     case E_V4SFmode:
    2752          122 :       if (pattern687 (x1, 
    2753              : E_V4SFmode) != 0)
    2754              :         return -1;
    2755              :       return 1;
    2756              : 
    2757            0 :     case E_V4DFmode:
    2758            0 :       if (pattern687 (x1, 
    2759              : E_V4DFmode) != 0)
    2760              :         return -1;
    2761              :       return 2;
    2762              : 
    2763           93 :     case E_V2DFmode:
    2764           93 :       if (pattern687 (x1, 
    2765              : E_V2DFmode) != 0)
    2766              :         return -1;
    2767              :       return 3;
    2768              : 
    2769              :     default:
    2770              :       return -1;
    2771              :     }
    2772              : }
    2773              : 
    2774              : int
    2775          120 : pattern695 (rtx x1, machine_mode i1, machine_mode i2)
    2776              : {
    2777          120 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2778          120 :   rtx x2, x3, x4, x5;
    2779          120 :   int res ATTRIBUTE_UNUSED;
    2780          120 :   x2 = XVECEXP (x1, 0, 1);
    2781          120 :   if (XVECLEN (x2, 0) != 1
    2782          120 :       || XINT (x2, 1) != 111)
    2783              :     return -1;
    2784          120 :   x3 = XVECEXP (x2, 0, 0);
    2785          120 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2786          120 :       || !register_operand (operands[0], i2))
    2787            0 :     return -1;
    2788          120 :   x4 = XVECEXP (x1, 0, 0);
    2789          120 :   x5 = XEXP (x4, 1);
    2790          120 :   if (GET_MODE (x5) != i2
    2791          120 :       || !nonimmediate_operand (operands[1], i1))
    2792            0 :     return -1;
    2793              :   return 0;
    2794              : }
    2795              : 
    2796              : int
    2797          249 : pattern701 (rtx x1, machine_mode i1)
    2798              : {
    2799          249 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2800          249 :   rtx x2;
    2801          249 :   int res ATTRIBUTE_UNUSED;
    2802          249 :   if (!nonimmediate_operand (operands[0], i1)
    2803          249 :       || GET_MODE (x1) != i1
    2804          498 :       || !general_operand (operands[1], i1))
    2805            0 :     return -1;
    2806          249 :   x2 = XEXP (x1, 1);
    2807          249 :   if (GET_MODE (x2) != i1)
    2808              :     return -1;
    2809              :   return 0;
    2810              : }
    2811              : 
    2812              : int
    2813      1996345 : pattern705 (rtx x1)
    2814              : {
    2815      1996345 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2816      1996345 :   rtx x2, x3, x4, x5, x6, x7;
    2817      1996345 :   int res ATTRIBUTE_UNUSED;
    2818      1996345 :   x2 = XVECEXP (x1, 0, 1);
    2819      1996345 :   if (GET_CODE (x2) != CLOBBER)
    2820              :     return -1;
    2821       287144 :   x3 = XEXP (x2, 0);
    2822       287144 :   if (GET_CODE (x3) != REG
    2823       287144 :       || REGNO (x3) != 17
    2824       535686 :       || GET_MODE (x3) != E_CCmode)
    2825              :     return -1;
    2826        52848 :   x4 = XVECEXP (x1, 0, 0);
    2827        52848 :   x5 = XEXP (x4, 1);
    2828        52848 :   x6 = XEXP (x5, 0);
    2829        52848 :   x7 = XEXP (x6, 0);
    2830        52848 :   switch (GET_CODE (x7))
    2831              :     {
    2832              :     case REG:
    2833              :     case SUBREG:
    2834              :       return 0;
    2835              : 
    2836        17205 :     case ZERO_EXTRACT:
    2837        17205 :       return 1;
    2838              : 
    2839              :     default:
    2840              :       return -1;
    2841              :     }
    2842              : }
    2843              : 
    2844              : int
    2845          166 : pattern715 (rtx x1, machine_mode i1, int i2)
    2846              : {
    2847          166 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2848          166 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2849          166 :   int res ATTRIBUTE_UNUSED;
    2850          166 :   x2 = XVECEXP (x1, 0, 0);
    2851          166 :   x3 = XEXP (x2, 1);
    2852          166 :   if (GET_MODE (x3) != E_DImode)
    2853              :     return -1;
    2854          166 :   x4 = XVECEXP (x3, 0, 0);
    2855          166 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2856              :     return -1;
    2857          166 :   x5 = XVECEXP (x1, 0, 1);
    2858          166 :   if (GET_CODE (x5) != SET)
    2859              :     return -1;
    2860          166 :   x6 = XEXP (x5, 1);
    2861          166 :   if (GET_CODE (x6) != UNSPEC_VOLATILE
    2862          166 :       || XVECLEN (x6, 0) != 1
    2863          166 :       || XINT (x6, 1) != i2
    2864          166 :       || GET_MODE (x6) != i1)
    2865              :     return -1;
    2866          166 :   x7 = XVECEXP (x6, 0, 0);
    2867          166 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2868          166 :       || !register_operand (operands[0], E_DImode))
    2869            0 :     return -1;
    2870          166 :   x8 = XEXP (x5, 0);
    2871          166 :   operands[1] = x8;
    2872          166 :   if (!register_operand (operands[1], i1))
    2873              :     return -1;
    2874              :   return 0;
    2875              : }
    2876              : 
    2877              : int
    2878        99395 : pattern723 (rtx x1, machine_mode i1, machine_mode i2)
    2879              : {
    2880        99395 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2881        99395 :   rtx x2, x3, x4;
    2882        99395 :   int res ATTRIBUTE_UNUSED;
    2883        99395 :   if (!nonimmediate_operand (operands[0], i2)
    2884        99395 :       || GET_MODE (x1) != i2)
    2885              :     return -1;
    2886        99335 :   x2 = XEXP (x1, 0);
    2887        99335 :   if (GET_MODE (x2) != i2)
    2888              :     return -1;
    2889        99335 :   x3 = XEXP (x2, 0);
    2890        99335 :   if (GET_MODE (x3) != i2
    2891        99335 :       || !nonimmediate_operand (operands[1], i1))
    2892         2567 :     return -1;
    2893        96768 :   x4 = XEXP (x1, 1);
    2894        96768 :   if (GET_MODE (x4) != i2
    2895        96768 :       || !nonimmediate_operand (operands[3], i1))
    2896         1185 :     return -1;
    2897              :   return 0;
    2898              : }
    2899              : 
    2900              : int
    2901          858 : pattern732 (rtx x1, int i1, int i2)
    2902              : {
    2903          858 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2904          858 :   rtx x2, x3, x4, x5, x6, x7;
    2905          858 :   int res ATTRIBUTE_UNUSED;
    2906          858 :   x2 = XVECEXP (x1, 0, 0);
    2907          858 :   x3 = XEXP (x2, 1);
    2908          858 :   if (XINT (x3, 1) != i1
    2909          858 :       || GET_MODE (x3) != E_SImode)
    2910              :     return -1;
    2911          448 :   x4 = XVECEXP (x1, 0, 1);
    2912          448 :   if (GET_CODE (x4) != SET)
    2913              :     return -1;
    2914          448 :   x5 = XEXP (x4, 1);
    2915          448 :   if (GET_CODE (x5) != UNSPEC
    2916          448 :       || XVECLEN (x5, 0) != i2
    2917          448 :       || XINT (x5, 1) != i1
    2918          448 :       || GET_MODE (x5) != E_V16QImode)
    2919              :     return -1;
    2920          448 :   x6 = XVECEXP (x1, 0, 2);
    2921          448 :   if (GET_CODE (x6) != SET)
    2922              :     return -1;
    2923          448 :   x7 = XEXP (x6, 1);
    2924          448 :   if (GET_CODE (x7) != UNSPEC
    2925          448 :       || XVECLEN (x7, 0) != i2
    2926          448 :       || XINT (x7, 1) != i1
    2927          896 :       || pattern731 (x6, 
    2928              : E_CCmode, 
    2929              : 17) != 0)
    2930            0 :     return -1;
    2931              :   return 0;
    2932              : }
    2933              : 
    2934              : int
    2935          290 : pattern740 (rtx x1, machine_mode i1)
    2936              : {
    2937          290 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2938          290 :   int res ATTRIBUTE_UNUSED;
    2939          290 :   if (!register_operand (operands[0], i1)
    2940          290 :       || GET_MODE (x1) != i1
    2941          290 :       || !register_operand (operands[1], i1)
    2942          540 :       || !register_mmxmem_operand (operands[2], i1))
    2943           56 :     return -1;
    2944              :   return 0;
    2945              : }
    2946              : 
    2947              : int
    2948         1214 : pattern745 (rtx x1)
    2949              : {
    2950         1214 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2951         1214 :   rtx x2, x3, x4, x5, x6;
    2952         1214 :   int res ATTRIBUTE_UNUSED;
    2953         1214 :   x2 = XVECEXP (x1, 0, 2);
    2954         1214 :   x3 = XEXP (x2, 0);
    2955         1214 :   if (GET_CODE (x3) != EQ)
    2956              :     return -1;
    2957          290 :   x4 = XEXP (x3, 0);
    2958          290 :   operands[3] = x4;
    2959          290 :   x5 = XEXP (x3, 1);
    2960          290 :   operands[4] = x5;
    2961          290 :   x6 = XEXP (x2, 1);
    2962          290 :   operands[5] = x6;
    2963          290 :   switch (GET_MODE (operands[0]))
    2964              :     {
    2965            0 :     case E_V8QImode:
    2966            0 :       return pattern744 (x1, 
    2967            0 : E_V8QImode); /* [-1, 0] */
    2968              : 
    2969           90 :     case E_V4QImode:
    2970           90 :       if (pattern744 (x1, 
    2971              : E_V4QImode) != 0)
    2972              :         return -1;
    2973              :       return 1;
    2974              : 
    2975          180 :     case E_V2QImode:
    2976          180 :       if (pattern744 (x1, 
    2977              : E_V2QImode) != 0)
    2978              :         return -1;
    2979              :       return 2;
    2980              : 
    2981            0 :     case E_V2HImode:
    2982            0 :       if (pattern744 (x1, 
    2983              : E_V2HImode) != 0)
    2984              :         return -1;
    2985              :       return 3;
    2986              : 
    2987              :     default:
    2988              :       return -1;
    2989              :     }
    2990              : }
    2991              : 
    2992              : int
    2993       551022 : pattern756 (rtx x1)
    2994              : {
    2995       551022 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2996       551022 :   rtx x2, x3, x4;
    2997       551022 :   int res ATTRIBUTE_UNUSED;
    2998       551022 :   if (!const_0_to_3_operand (operands[2], E_VOIDmode))
    2999              :     return -1;
    3000       488589 :   x2 = XVECEXP (x1, 0, 1);
    3001       488589 :   operands[3] = x2;
    3002       488589 :   if (!const_0_to_3_operand (operands[3], E_VOIDmode))
    3003              :     return -1;
    3004       488404 :   x3 = XVECEXP (x1, 0, 2);
    3005       488404 :   operands[4] = x3;
    3006       488404 :   if (!const_0_to_3_operand (operands[4], E_VOIDmode))
    3007              :     return -1;
    3008       483551 :   x4 = XVECEXP (x1, 0, 3);
    3009       483551 :   operands[5] = x4;
    3010       483551 :   if (!const_0_to_3_operand (operands[5], E_VOIDmode))
    3011              :     return -1;
    3012              :   return 0;
    3013              : }
    3014              : 
    3015              : int
    3016           84 : pattern765 (rtx x1, machine_mode i1)
    3017              : {
    3018           84 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3019           84 :   rtx x2, x3;
    3020           84 :   int res ATTRIBUTE_UNUSED;
    3021           84 :   if (!register_operand (operands[0], i1)
    3022           84 :       || GET_MODE (x1) != i1)
    3023              :     return -1;
    3024           84 :   x2 = XEXP (x1, 0);
    3025           84 :   if (GET_MODE (x2) != i1
    3026           84 :       || !nonimmediate_operand (operands[1], i1))
    3027            0 :     return -1;
    3028           84 :   x3 = XEXP (x1, 1);
    3029           84 :   if (GET_MODE (x3) != i1)
    3030              :     return -1;
    3031              :   return 0;
    3032              : }
    3033              : 
    3034              : int
    3035            2 : pattern773 (rtx x1)
    3036              : {
    3037            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3038            2 :   rtx x2, x3, x4, x5, x6, x7;
    3039            2 :   int res ATTRIBUTE_UNUSED;
    3040            2 :   x2 = XEXP (x1, 2);
    3041            2 :   switch (GET_CODE (x2))
    3042              :     {
    3043            1 :     case UNSPEC:
    3044            1 :       if (XVECLEN (x2, 0) != 3
    3045            1 :           || XINT (x2, 1) != 60)
    3046              :         return -1;
    3047            1 :       x3 = XVECEXP (x2, 0, 2);
    3048            1 :       if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3049              :         return -1;
    3050            0 :       x4 = XEXP (x1, 0);
    3051            0 :       operands[3] = x4;
    3052            0 :       x5 = XEXP (x1, 1);
    3053            0 :       operands[4] = x5;
    3054            0 :       x6 = XVECEXP (x2, 0, 0);
    3055            0 :       operands[1] = x6;
    3056            0 :       x7 = XVECEXP (x2, 0, 1);
    3057            0 :       operands[2] = x7;
    3058            0 :       switch (GET_MODE (x1))
    3059              :         {
    3060            0 :         case E_V32QImode:
    3061            0 :           return pattern772 (x2, 
    3062              : E_V32QImode, 
    3063            0 : E_SImode); /* [-1, 0] */
    3064              : 
    3065            0 :         case E_V16QImode:
    3066            0 :           if (pattern772 (x2, 
    3067              : E_V16QImode, 
    3068              : E_HImode) != 0)
    3069              :             return -1;
    3070              :           return 1;
    3071              : 
    3072              :         default:
    3073              :           return -1;
    3074              :         }
    3075              : 
    3076            1 :     case REG:
    3077            1 :     case SUBREG:
    3078            1 :       operands[1] = x2;
    3079            1 :       x4 = XEXP (x1, 0);
    3080            1 :       operands[2] = x4;
    3081            1 :       x5 = XEXP (x1, 1);
    3082            1 :       operands[3] = x5;
    3083            1 :       switch (GET_MODE (x1))
    3084              :         {
    3085            1 :         case E_V16QImode:
    3086            1 :           if (!vector_all_ones_operand (operands[2], E_V16QImode)
    3087            1 :               || !const0_operand (operands[3], E_V16QImode)
    3088            2 :               || !register_operand (operands[1], E_HImode))
    3089            0 :             return -1;
    3090              :           return 2;
    3091              : 
    3092            0 :         case E_V32QImode:
    3093            0 :           if (!vector_all_ones_operand (operands[2], E_V32QImode)
    3094            0 :               || !const0_operand (operands[3], E_V32QImode)
    3095            0 :               || !register_operand (operands[1], E_SImode))
    3096            0 :             return -1;
    3097              :           return 3;
    3098              : 
    3099              :         default:
    3100              :           return -1;
    3101              :         }
    3102              : 
    3103              :     default:
    3104              :       return -1;
    3105              :     }
    3106              : }
    3107              : 
    3108              : int
    3109          152 : pattern799 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    3110              : {
    3111          152 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3112          152 :   rtx x2, x3;
    3113          152 :   int res ATTRIBUTE_UNUSED;
    3114          152 :   if (!register_operand (operands[0], i3)
    3115          152 :       || GET_MODE (x1) != i3)
    3116              :     return -1;
    3117          142 :   x2 = XEXP (x1, 0);
    3118          142 :   if (GET_MODE (x2) != i2
    3119          142 :       || !vector_operand (operands[2], i1))
    3120            0 :     return -1;
    3121          142 :   x3 = XEXP (x1, 1);
    3122          142 :   if (GET_MODE (x3) != i2
    3123          142 :       || !register_operand (operands[1], i1))
    3124            7 :     return -1;
    3125              :   return 0;
    3126              : }
    3127              : 
    3128              : int
    3129         1174 : pattern811 (rtx x1, machine_mode i1, machine_mode i2)
    3130              : {
    3131         1174 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3132         1174 :   rtx x2;
    3133         1174 :   int res ATTRIBUTE_UNUSED;
    3134         1174 :   if (!register_operand (operands[0], i1)
    3135         1174 :       || GET_MODE (x1) != i1)
    3136              :     return -1;
    3137         1153 :   x2 = XEXP (x1, 0);
    3138         1153 :   if (GET_MODE (x2) != i2
    3139         1153 :       || !nonimmediate_operand (operands[1], i1)
    3140         2262 :       || !const0_operand (operands[2], i1))
    3141          422 :     return -1;
    3142              :   return 0;
    3143              : }
    3144              : 
    3145              : int
    3146          183 : pattern818 (rtx x1, machine_mode i1)
    3147              : {
    3148          183 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3149          183 :   rtx x2;
    3150          183 :   int res ATTRIBUTE_UNUSED;
    3151          183 :   if (!register_operand (operands[0], i1)
    3152          183 :       || GET_MODE (x1) != i1)
    3153              :     return -1;
    3154          183 :   x2 = XEXP (x1, 0);
    3155          183 :   if (GET_MODE (x2) != i1
    3156          183 :       || !bcst_vector_operand (operands[1], i1)
    3157          358 :       || !bcst_vector_operand (operands[2], i1))
    3158            8 :     return -1;
    3159              :   return 0;
    3160              : }
    3161              : 
    3162              : int
    3163        13904 : pattern823 (rtx x1)
    3164              : {
    3165        13904 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3166        13904 :   int res ATTRIBUTE_UNUSED;
    3167        13904 :   switch (GET_MODE (operands[0]))
    3168              :     {
    3169         1573 :     case E_QImode:
    3170         1573 :       if (!register_operand (operands[0], E_QImode)
    3171         1553 :           || GET_MODE (x1) != E_QImode
    3172         3126 :           || !register_operand (operands[1], E_QImode))
    3173           46 :         return -1;
    3174              :       return 0;
    3175              : 
    3176         9394 :     case E_HImode:
    3177         9394 :       if (!register_operand (operands[0], E_HImode)
    3178         9374 :           || GET_MODE (x1) != E_HImode
    3179        18768 :           || !register_operand (operands[1], E_HImode))
    3180         2969 :         return -1;
    3181              :       return 1;
    3182              : 
    3183         1959 :     case E_SImode:
    3184         1959 :       if (!register_operand (operands[0], E_SImode)
    3185         1939 :           || GET_MODE (x1) != E_SImode
    3186         3898 :           || !register_operand (operands[1], E_SImode))
    3187           52 :         return -1;
    3188              :       return 2;
    3189              : 
    3190          978 :     case E_DImode:
    3191          978 :       if (!register_operand (operands[0], E_DImode)
    3192          958 :           || GET_MODE (x1) != E_DImode
    3193         1936 :           || !register_operand (operands[1], E_DImode))
    3194           87 :         return -1;
    3195              :       return 3;
    3196              : 
    3197              :     default:
    3198              :       return -1;
    3199              :     }
    3200              : }
    3201              : 
    3202              : int
    3203        63026 : pattern834 (rtx x1)
    3204              : {
    3205        63026 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3206        63026 :   rtx x2, x3;
    3207        63026 :   int res ATTRIBUTE_UNUSED;
    3208        63026 :   switch (GET_CODE (x1))
    3209              :     {
    3210        56292 :     case CLOBBER:
    3211        56292 :       x2 = XEXP (x1, 0);
    3212        56292 :       if (GET_CODE (x2) != REG
    3213        56292 :           || REGNO (x2) != 17
    3214       112584 :           || GET_MODE (x2) != E_CCmode)
    3215            0 :         return -1;
    3216              :       return 0;
    3217              : 
    3218          705 :     case UNSPEC:
    3219          705 :       if (XVECLEN (x1, 0) != 1
    3220          705 :           || XINT (x1, 1) != 175)
    3221              :         return -1;
    3222          705 :       x3 = XVECEXP (x1, 0, 0);
    3223          705 :       if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3224              :         return -1;
    3225          705 :       switch (GET_MODE (operands[0]))
    3226              :         {
    3227              :         case E_QImode:
    3228              :           return 1;
    3229              : 
    3230              :         case E_HImode:
    3231              :           return 2;
    3232              : 
    3233              :         case E_SImode:
    3234              :           return 3;
    3235              : 
    3236              :         case E_DImode:
    3237              :           return 4;
    3238              : 
    3239              :         default:
    3240              :           return -1;
    3241              :         }
    3242              : 
    3243              :     default:
    3244              :       return -1;
    3245              :     }
    3246              : }
    3247              : 
    3248              : int
    3249         6475 : pattern842 (rtx x1, machine_mode i1)
    3250              : {
    3251         6475 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3252         6475 :   int res ATTRIBUTE_UNUSED;
    3253         6475 :   if (!register_operand (operands[0], i1)
    3254         4489 :       || GET_MODE (x1) != i1
    3255         4489 :       || !register_operand (operands[1], i1)
    3256         6500 :       || !nonmemory_operand (operands[2], i1))
    3257         6475 :     return -1;
    3258              :   return 0;
    3259              : }
    3260              : 
    3261              : int
    3262         7901 : pattern846 (rtx x1)
    3263              : {
    3264         7901 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3265         7901 :   rtx x2, x3, x4, x5;
    3266         7901 :   int res ATTRIBUTE_UNUSED;
    3267         7901 :   if (!register_operand (operands[0], E_TFmode))
    3268              :     return -1;
    3269         4658 :   x2 = XVECEXP (x1, 0, 0);
    3270         4658 :   x3 = XEXP (x2, 1);
    3271         4658 :   if (GET_MODE (x3) != E_TFmode
    3272         4658 :       || !vector_operand (operands[1], E_TFmode))
    3273            0 :     return -1;
    3274         4658 :   x4 = XVECEXP (x1, 0, 1);
    3275         4658 :   x5 = XEXP (x4, 0);
    3276         4658 :   operands[2] = x5;
    3277         4658 :   if (!vector_operand (operands[2], E_TFmode))
    3278              :     return -1;
    3279              :   return 0;
    3280              : }
    3281              : 
    3282              : int
    3283       856429 : pattern852 (rtx x1, machine_mode i1)
    3284              : {
    3285       856429 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3286       856429 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3287       856429 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3288       856429 :   rtx x18;
    3289       856429 :   int res ATTRIBUTE_UNUSED;
    3290       856429 :   if (peep2_current_count < 4
    3291       856429 :       || peep2_current_count < 5
    3292       482428 :       || !memory_operand (operands[1], i1)
    3293       988265 :       || !register_operand (operands[0], i1))
    3294       724782 :     return -1;
    3295       131647 :   x2 = XEXP (x1, 0);
    3296       131647 :   operands[3] = x2;
    3297       131647 :   if (!register_operand (operands[3], i1))
    3298              :     return -1;
    3299        23448 :   x3 = XEXP (x1, 1);
    3300        23448 :   if (!rtx_equal_p (x3, operands[0]))
    3301              :     return -1;
    3302         4666 :   x4 = PATTERN (peep2_next_insn (2));
    3303         4666 :   if (GET_CODE (x4) != PARALLEL
    3304         2757 :       || XVECLEN (x4, 0) != 2)
    3305              :     return -1;
    3306         2753 :   x5 = XVECEXP (x4, 0, 0);
    3307         2753 :   if (GET_CODE (x5) != SET)
    3308              :     return -1;
    3309         2753 :   x6 = XEXP (x5, 1);
    3310         2753 :   if (GET_CODE (x6) != XOR)
    3311              :     return -1;
    3312          133 :   x7 = XVECEXP (x4, 0, 1);
    3313          133 :   if (GET_CODE (x7) != CLOBBER)
    3314              :     return -1;
    3315          133 :   x8 = XEXP (x7, 0);
    3316          133 :   if (GET_CODE (x8) != REG
    3317          133 :       || REGNO (x8) != 17
    3318          266 :       || GET_MODE (x8) != E_CCmode)
    3319              :     return -1;
    3320          133 :   x9 = XEXP (x5, 0);
    3321          133 :   operands[4] = x9;
    3322          133 :   x10 = XEXP (x6, 1);
    3323          133 :   operands[2] = x10;
    3324          133 :   x11 = XEXP (x6, 0);
    3325          133 :   if (!rtx_equal_p (x11, operands[4]))
    3326              :     return -1;
    3327          131 :   x12 = PATTERN (peep2_next_insn (3));
    3328          131 :   if (GET_CODE (x12) != SET)
    3329              :     return -1;
    3330          124 :   x13 = XEXP (x12, 0);
    3331          124 :   if (!rtx_equal_p (x13, operands[1]))
    3332              :     return -1;
    3333           28 :   x14 = PATTERN (peep2_next_insn (4));
    3334           28 :   if (GET_CODE (x14) != SET)
    3335              :     return -1;
    3336           26 :   x15 = XEXP (x14, 1);
    3337           26 :   if (GET_CODE (x15) != COMPARE
    3338           22 :       || GET_MODE (x15) != E_CCZmode)
    3339              :     return -1;
    3340           22 :   x16 = XEXP (x14, 0);
    3341           22 :   if (GET_CODE (x16) != REG
    3342           22 :       || REGNO (x16) != 17
    3343           44 :       || GET_MODE (x16) != E_CCZmode)
    3344              :     return -1;
    3345           22 :   x17 = XEXP (x15, 0);
    3346           22 :   if (!register_operand (x17, i1))
    3347              :     return -1;
    3348           22 :   x18 = XEXP (x15, 1);
    3349           22 :   if (!nonmemory_operand (x18, i1))
    3350              :     return -1;
    3351              :   return 0;
    3352              : }
    3353              : 
    3354              : int
    3355        40981 : pattern870 (rtx x1, machine_mode i1)
    3356              : {
    3357        40981 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3358        40981 :   int res ATTRIBUTE_UNUSED;
    3359        40981 :   if (!register_operand (operands[0], i1)
    3360        31407 :       || !binary_fp_operator (operands[3], i1)
    3361        31407 :       || !register_operand (operands[1], i1)
    3362        72162 :       || GET_MODE (x1) != i1)
    3363         9800 :     return -1;
    3364        31181 :   switch (GET_MODE (operands[2]))
    3365              :     {
    3366           16 :     case E_HImode:
    3367           16 :       if (!nonimmediate_operand (operands[2], E_HImode))
    3368              :         return -1;
    3369              :       return 0;
    3370              : 
    3371        30160 :     case E_SImode:
    3372        30160 :       if (!nonimmediate_operand (operands[2], E_SImode))
    3373              :         return -1;
    3374              :       return 1;
    3375              : 
    3376              :     default:
    3377              :       return -1;
    3378              :     }
    3379              : }
    3380              : 
    3381              : int
    3382         8870 : pattern880 (rtx x1, machine_mode i1)
    3383              : {
    3384         8870 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3385         8870 :   rtx x2, x3;
    3386         8870 :   int res ATTRIBUTE_UNUSED;
    3387         8870 :   if (!register_operand (operands[0], i1)
    3388         8870 :       || GET_MODE (x1) != i1)
    3389              :     return -1;
    3390         8846 :   x2 = XEXP (x1, 0);
    3391         8846 :   if (GET_MODE (x2) != i1)
    3392              :     return -1;
    3393         8846 :   x3 = XEXP (x1, 2);
    3394         8846 :   if (GET_MODE (x3) != i1)
    3395            0 :     return -1;
    3396              :   return 0;
    3397              : }
    3398              : 
    3399              : int
    3400         1390 : pattern886 (rtx x1)
    3401              : {
    3402         1390 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3403         1390 :   rtx x2;
    3404         1390 :   int res ATTRIBUTE_UNUSED;
    3405         1390 :   switch (GET_MODE (operands[0]))
    3406              :     {
    3407          276 :     case E_DImode:
    3408          276 :       return pattern885 (x1, 
    3409              : E_DImode, 
    3410          276 : E_V64QImode); /* [-1, 0] */
    3411              : 
    3412          584 :     case E_SImode:
    3413          584 :       if (!register_operand (operands[0], E_SImode)
    3414          584 :           || GET_MODE (x1) != E_SImode)
    3415              :         return -1;
    3416          568 :       x2 = XEXP (x1, 0);
    3417          568 :       if (GET_MODE (x2) != E_SImode
    3418          568 :           || !register_operand (operands[3], E_SImode))
    3419           96 :         return -1;
    3420          472 :       res = pattern882 ();
    3421          472 :       if (res >= 0)
    3422          472 :         return res + 1; /* [1, 2] */
    3423              :       return -1;
    3424              : 
    3425              :     default:
    3426              :       return -1;
    3427              :     }
    3428              : }
    3429              : 
    3430              : int
    3431          614 : pattern895 (rtx x1)
    3432              : {
    3433          614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3434          614 :   rtx x2;
    3435          614 :   int res ATTRIBUTE_UNUSED;
    3436          614 :   x2 = XEXP (x1, 2);
    3437          614 :   if (XWINT (x2, 0) != 1L)
    3438              :     return -1;
    3439          434 :   switch (GET_MODE (operands[0]))
    3440              :     {
    3441          210 :     case E_V4SFmode:
    3442          210 :       return pattern641 (x1, 
    3443          210 : E_V4SFmode); /* [-1, 0] */
    3444              : 
    3445          224 :     case E_V8HFmode:
    3446          224 :       if (pattern641 (x1, 
    3447              : E_V8HFmode) != 0)
    3448              :         return -1;
    3449              :       return 1;
    3450              : 
    3451              :     default:
    3452              :       return -1;
    3453              :     }
    3454              : }
    3455              : 
    3456              : int
    3457         1104 : pattern904 (rtx x1)
    3458              : {
    3459         1104 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3460         1104 :   rtx x2;
    3461         1104 :   int res ATTRIBUTE_UNUSED;
    3462         1104 :   if (!register_operand (operands[0], E_V8HFmode)
    3463         1104 :       || GET_MODE (x1) != E_V8HFmode)
    3464              :     return -1;
    3465         1038 :   x2 = XEXP (x1, 0);
    3466         1038 :   if (GET_MODE (x2) != E_V8HFmode
    3467         1038 :       || !nonimm_or_0_operand (operands[2], E_V8HFmode)
    3468         2074 :       || !register_operand (operands[3], E_QImode))
    3469           82 :     return -1;
    3470          956 :   switch (GET_MODE (operands[1]))
    3471              :     {
    3472          408 :     case E_V8HImode:
    3473          408 :       if (!vector_operand (operands[1], E_V8HImode))
    3474              :         return -1;
    3475              :       return 0;
    3476              : 
    3477          406 :     case E_V8SImode:
    3478          406 :       if (!vector_operand (operands[1], E_V8SImode))
    3479              :         return -1;
    3480              :       return 1;
    3481              : 
    3482          142 :     case E_V8DImode:
    3483          142 :       if (!vector_operand (operands[1], E_V8DImode))
    3484              :         return -1;
    3485              :       return 2;
    3486              : 
    3487              :     default:
    3488              :       return -1;
    3489              :     }
    3490              : }
    3491              : 
    3492              : int
    3493         1286 : pattern917 (rtx x1)
    3494              : {
    3495         1286 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3496         1286 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3497         1286 :   int res ATTRIBUTE_UNUSED;
    3498         1286 :   x2 = XVECEXP (x1, 0, 0);
    3499         1286 :   x3 = XEXP (x2, 0);
    3500         1286 :   x4 = XVECEXP (x3, 0, 0);
    3501         1286 :   operands[1] = x4;
    3502         1286 :   x5 = XVECEXP (x3, 0, 1);
    3503         1286 :   operands[2] = x5;
    3504         1286 :   x6 = XVECEXP (x1, 0, 1);
    3505         1286 :   if (!const_4_or_8_to_11_operand (x6, E_SImode))
    3506              :     return -1;
    3507         1286 :   x7 = XEXP (x2, 2);
    3508         1286 :   switch (GET_CODE (x7))
    3509              :     {
    3510          926 :     case UNSPEC:
    3511          926 :       if (XVECLEN (x7, 0) != 1
    3512          926 :           || XINT (x7, 1) != 224
    3513          926 :           || GET_MODE (x7) != E_SImode
    3514          926 :           || !register_operand (operands[0], E_V32HFmode)
    3515          870 :           || GET_MODE (x1) != E_V32HFmode
    3516          870 :           || GET_MODE (x2) != E_V32HFmode
    3517          870 :           || GET_MODE (x3) != E_V32HFmode
    3518          870 :           || !register_operand (operands[1], E_V32HFmode)
    3519         1776 :           || !register_operand (operands[2], E_V32HFmode))
    3520           92 :         return -1;
    3521          834 :       x8 = XEXP (x2, 1);
    3522          834 :       operands[3] = x8;
    3523          834 :       if (!nonimm_or_0_operand (operands[3], E_V32HFmode))
    3524              :         return -1;
    3525          830 :       x9 = XVECEXP (x7, 0, 0);
    3526          830 :       operands[4] = x9;
    3527          830 :       if (!register_operand (operands[4], E_HImode))
    3528              :         return -1;
    3529          766 :       operands[5] = x6;
    3530          766 :       return 0;
    3531              : 
    3532          360 :     case CONST_INT:
    3533          360 :       if (XWINT (x7, 0) != 3L
    3534          360 :           || !register_operand (operands[0], E_V8HFmode)
    3535          334 :           || GET_MODE (x1) != E_V8HFmode
    3536          334 :           || GET_MODE (x2) != E_V8HFmode
    3537          334 :           || GET_MODE (x3) != E_V8HFmode
    3538          334 :           || !nonimmediate_operand (operands[1], E_V8HFmode)
    3539          694 :           || !register_operand (operands[2], E_V8HFmode))
    3540           36 :         return -1;
    3541          324 :       operands[3] = x6;
    3542          324 :       x8 = XEXP (x2, 1);
    3543          324 :       if (!rtx_equal_p (x8, operands[1]))
    3544              :         return -1;
    3545              :       return 1;
    3546              : 
    3547              :     default:
    3548              :       return -1;
    3549              :     }
    3550              : }
    3551              : 
    3552              : int
    3553        73229 : pattern937 (rtx x1, machine_mode i1)
    3554              : {
    3555        73229 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3556        73229 :   int res ATTRIBUTE_UNUSED;
    3557        73229 :   if (!register_operand (operands[0], i1)
    3558        72645 :       || GET_MODE (x1) != i1
    3559        72645 :       || !bcst_vector_operand (operands[1], i1)
    3560       145145 :       || !vector_all_ones_operand (operands[2], i1))
    3561        68507 :     return -1;
    3562              :   return 0;
    3563              : }
    3564              : 
    3565              : int
    3566        30565 : pattern939 (rtx x1, machine_mode i1)
    3567              : {
    3568        30565 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3569        30565 :   rtx x2;
    3570        30565 :   int res ATTRIBUTE_UNUSED;
    3571        30565 :   if (!register_operand (operands[0], i1)
    3572        30565 :       || GET_MODE (x1) != i1)
    3573              :     return -1;
    3574        30337 :   x2 = XEXP (x1, 0);
    3575        30337 :   if (GET_MODE (x2) != i1
    3576        30337 :       || !nonimmediate_operand (operands[1], i1))
    3577         3036 :     return -1;
    3578              :   return 0;
    3579              : }
    3580              : 
    3581              : int
    3582       235450 : pattern945 (rtx x1)
    3583              : {
    3584       235450 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3585       235450 :   rtx x2, x3, x4, x5, x6;
    3586       235450 :   int res ATTRIBUTE_UNUSED;
    3587       235450 :   x2 = XEXP (x1, 0);
    3588       235450 :   operands[0] = x2;
    3589       235450 :   x3 = XEXP (x1, 1);
    3590       235450 :   x4 = XEXP (x3, 0);
    3591       235450 :   x5 = XEXP (x4, 0);
    3592       235450 :   operands[2] = x5;
    3593       235450 :   x6 = XEXP (x3, 1);
    3594       235450 :   operands[1] = x6;
    3595       235450 :   switch (GET_MODE (operands[0]))
    3596              :     {
    3597       198019 :     case E_DImode:
    3598       198019 :       return pattern944 (x3, 
    3599              : E_DImode, 
    3600       198019 : E_SImode); /* [-1, 0] */
    3601              : 
    3602         3012 :     case E_TImode:
    3603         3012 :       if (pattern944 (x3, 
    3604              : E_TImode, 
    3605              : E_DImode) != 0)
    3606              :         return -1;
    3607              :       return 1;
    3608              : 
    3609              :     default:
    3610              :       return -1;
    3611              :     }
    3612              : }
    3613              : 
    3614              : int
    3615         8391 : pattern954 (rtx x1, rtx_code i1)
    3616              : {
    3617         8391 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3618         8391 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3619         8391 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3620         8391 :   rtx x18;
    3621         8391 :   int res ATTRIBUTE_UNUSED;
    3622         8391 :   x2 = XVECEXP (x1, 0, 0);
    3623         8391 :   x3 = XEXP (x2, 1);
    3624         8391 :   x4 = XEXP (x3, 0);
    3625         8391 :   x5 = XEXP (x4, 0);
    3626         8391 :   if (GET_CODE (x5) != SUBREG
    3627         1551 :       || maybe_ne (SUBREG_BYTE (x5), 0)
    3628         9942 :       || GET_MODE (x5) != E_QImode)
    3629              :     return -1;
    3630         1551 :   x6 = XEXP (x5, 0);
    3631         1551 :   switch (GET_CODE (x6))
    3632              :     {
    3633          760 :     case ASHIFTRT:
    3634          760 :     case LSHIFTRT:
    3635          760 :     case SIGN_EXTRACT:
    3636          760 :     case ZERO_EXTRACT:
    3637          760 :       operands[3] = x6;
    3638          760 :       x7 = XVECEXP (x1, 0, 1);
    3639          760 :       if (GET_CODE (x7) != SET)
    3640              :         return -1;
    3641          443 :       x8 = XEXP (x7, 1);
    3642          443 :       if (GET_CODE (x8) != SUBREG
    3643          443 :           || maybe_ne (SUBREG_BYTE (x8), 0))
    3644              :         return -1;
    3645            0 :       x9 = XEXP (x8, 0);
    3646            0 :       if (GET_CODE (x9) != i1
    3647            0 :           || GET_MODE (x9) != E_QImode)
    3648              :         return -1;
    3649            0 :       x10 = XEXP (x9, 0);
    3650            0 :       if (GET_CODE (x10) != SUBREG
    3651            0 :           || maybe_ne (SUBREG_BYTE (x10), 0)
    3652            0 :           || GET_MODE (x10) != E_QImode)
    3653              :         return -1;
    3654            0 :       x11 = XEXP (x10, 0);
    3655            0 :       if (GET_CODE (x11) != ZERO_EXTRACT)
    3656              :         return -1;
    3657            0 :       x12 = XEXP (x11, 1);
    3658            0 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    3659              :         return -1;
    3660            0 :       x13 = XEXP (x11, 2);
    3661            0 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    3662              :         return -1;
    3663            0 :       x14 = XEXP (x7, 0);
    3664            0 :       if (GET_CODE (x14) != ZERO_EXTRACT)
    3665              :         return -1;
    3666            0 :       x15 = XEXP (x14, 1);
    3667            0 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    3668              :         return -1;
    3669            0 :       x16 = XEXP (x14, 2);
    3670            0 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    3671              :         return -1;
    3672            0 :       x17 = XEXP (x2, 0);
    3673            0 :       operands[4] = x17;
    3674            0 :       if (!flags_reg_operand (operands[4], E_VOIDmode))
    3675              :         return -1;
    3676            0 :       operands[5] = x3;
    3677            0 :       if (!compare_operator (operands[5], E_VOIDmode)
    3678            0 :           || GET_MODE (x4) != E_QImode)
    3679              :         return -1;
    3680            0 :       x18 = XEXP (x6, 0);
    3681            0 :       operands[1] = x18;
    3682            0 :       if (!int248_register_operand (operands[1], E_VOIDmode))
    3683              :         return -1;
    3684            0 :       return pattern590 (x7); /* [-1, 2] */
    3685              : 
    3686              :     default:
    3687              :       return -1;
    3688              :     }
    3689              : }
    3690              : 
    3691              : int
    3692         1807 : pattern979 (rtx x1)
    3693              : {
    3694         1807 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3695         1807 :   rtx x2, x3, x4, x5, x6, x7;
    3696         1807 :   int res ATTRIBUTE_UNUSED;
    3697         1807 :   x2 = XEXP (x1, 0);
    3698         1807 :   x3 = XEXP (x2, 1);
    3699         1807 :   if (XVECLEN (x3, 0) != 1)
    3700              :     return -1;
    3701         1799 :   x4 = XVECEXP (x3, 0, 0);
    3702         1799 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3703              :     return -1;
    3704          362 :   x5 = XEXP (x1, 1);
    3705          362 :   x6 = XEXP (x5, 1);
    3706          362 :   if (XVECLEN (x6, 0) != 1)
    3707              :     return -1;
    3708          362 :   x7 = XVECEXP (x6, 0, 0);
    3709          362 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3710          154 :     return -1;
    3711              :   return 0;
    3712              : }
    3713              : 
    3714              : int
    3715         3241 : pattern981 (rtx x1)
    3716              : {
    3717         3241 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3718         3241 :   int res ATTRIBUTE_UNUSED;
    3719         3241 :   if (!nonimmediate_operand (operands[0], E_HFmode)
    3720         3241 :       || GET_MODE (x1) != E_HFmode)
    3721              :     return -1;
    3722         3241 :   switch (GET_MODE (operands[1]))
    3723              :     {
    3724           46 :     case E_V32HFmode:
    3725           46 :       if (!nonimmediate_operand (operands[1], E_V32HFmode))
    3726              :         return -1;
    3727              :       return 0;
    3728              : 
    3729           81 :     case E_V16HFmode:
    3730           81 :       if (!nonimmediate_operand (operands[1], E_V16HFmode))
    3731              :         return -1;
    3732              :       return 1;
    3733              : 
    3734         2346 :     case E_V8HFmode:
    3735         2346 :       if (!nonimmediate_operand (operands[1], E_V8HFmode))
    3736              :         return -1;
    3737              :       return 2;
    3738              : 
    3739              :     default:
    3740              :       return -1;
    3741              :     }
    3742              : }
    3743              : 
    3744              : int
    3745       268867 : pattern984 (rtx x1)
    3746              : {
    3747       268867 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3748       268867 :   rtx x2, x3;
    3749       268867 :   int res ATTRIBUTE_UNUSED;
    3750       268867 :   if (!const_0_to_3_operand (operands[3], E_VOIDmode))
    3751              :     return -1;
    3752       268867 :   x2 = XEXP (x1, 1);
    3753       268867 :   x3 = XVECEXP (x2, 0, 1);
    3754       268867 :   operands[4] = x3;
    3755       268867 :   if (!const_0_to_3_operand (operands[4], E_VOIDmode))
    3756              :     return -1;
    3757       268867 :   switch (GET_MODE (operands[0]))
    3758              :     {
    3759            0 :     case E_V2HFmode:
    3760            0 :       return pattern274 (x1, 
    3761              : E_V2HFmode, 
    3762            0 : E_V4HFmode); /* [-1, 0] */
    3763              : 
    3764            0 :     case E_V2BFmode:
    3765            0 :       if (pattern274 (x1, 
    3766              : E_V2BFmode, 
    3767              : E_V4BFmode) != 0)
    3768              :         return -1;
    3769              :       return 1;
    3770              : 
    3771         2966 :     case E_V2HImode:
    3772         2966 :       if (pattern274 (x1, 
    3773              : E_V2HImode, 
    3774              : E_V4HImode) != 0)
    3775              :         return -1;
    3776              :       return 2;
    3777              : 
    3778              :     default:
    3779              :       return -1;
    3780              :     }
    3781              : }
    3782              : 
    3783              : int
    3784           14 : pattern993 (rtx x1, machine_mode i1)
    3785              : {
    3786           14 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3787           14 :   rtx x2, x3;
    3788           14 :   int res ATTRIBUTE_UNUSED;
    3789           14 :   if (!register_operand (operands[0], i1)
    3790           14 :       || GET_MODE (x1) != i1)
    3791              :     return -1;
    3792           14 :   x2 = XEXP (x1, 0);
    3793           14 :   if (GET_MODE (x2) != i1)
    3794              :     return -1;
    3795           14 :   x3 = XEXP (x2, 0);
    3796           14 :   if (GET_MODE (x3) != i1
    3797           14 :       || !nonimmediate_operand (operands[1], i1))
    3798           10 :     return -1;
    3799              :   return 0;
    3800              : }
    3801              : 
    3802              : int
    3803         1762 : pattern996 (rtx x1)
    3804              : {
    3805         1762 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3806         1762 :   rtx x2;
    3807         1762 :   int res ATTRIBUTE_UNUSED;
    3808         1762 :   if (!register_operand (operands[0], E_DImode)
    3809         1762 :       || GET_MODE (x1) != E_DImode)
    3810              :     return -1;
    3811         1736 :   x2 = XEXP (x1, 0);
    3812         1736 :   if (GET_MODE (x2) != E_DImode
    3813         1736 :       || !register_operand (operands[1], E_V64QImode)
    3814         1587 :       || !nonimmediate_operand (operands[2], E_V64QImode)
    3815         3317 :       || !const_0_to_7_operand (operands[3], E_SImode))
    3816          155 :     return -1;
    3817              :   return 0;
    3818              : }
    3819              : 
    3820              : int
    3821          517 : pattern1000 (rtx x1)
    3822              : {
    3823          517 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3824          517 :   rtx x2;
    3825          517 :   int res ATTRIBUTE_UNUSED;
    3826          517 :   if (!register_operand (operands[0], E_V16SImode)
    3827          517 :       || GET_MODE (x1) != E_V16SImode)
    3828              :     return -1;
    3829          462 :   x2 = XEXP (x1, 0);
    3830          462 :   if (GET_MODE (x2) != E_V16SImode
    3831          462 :       || !nonimm_or_0_operand (operands[2], E_V16SImode)
    3832          897 :       || !register_operand (operands[3], E_HImode))
    3833           96 :     return -1;
    3834          366 :   switch (GET_MODE (operands[1]))
    3835              :     {
    3836          198 :     case E_V16HFmode:
    3837          198 :       if (!vector_operand (operands[1], E_V16HFmode))
    3838              :         return -1;
    3839              :       return 0;
    3840              : 
    3841          168 :     case E_V16SFmode:
    3842          168 :       if (!vector_operand (operands[1], E_V16SFmode))
    3843              :         return -1;
    3844              :       return 1;
    3845              : 
    3846              :     default:
    3847              :       return -1;
    3848              :     }
    3849              : }
    3850              : 
    3851              : int
    3852          199 : pattern1005 (rtx x1, machine_mode i1)
    3853              : {
    3854          199 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3855          199 :   rtx x2;
    3856          199 :   int res ATTRIBUTE_UNUSED;
    3857          199 :   if (!register_operand (operands[0], i1)
    3858          199 :       || GET_MODE (x1) != i1)
    3859              :     return -1;
    3860          199 :   x2 = XEXP (x1, 0);
    3861          199 :   if (GET_MODE (x2) != i1
    3862          199 :       || !nonimmediate_operand (operands[1], i1)
    3863          398 :       || !const0_operand (operands[2], i1))
    3864           66 :     return -1;
    3865              :   return 0;
    3866              : }
    3867              : 
    3868              : int
    3869         4161 : pattern1013 (rtx x1, machine_mode i1, machine_mode i2)
    3870              : {
    3871         4161 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3872         4161 :   rtx x2;
    3873         4161 :   int res ATTRIBUTE_UNUSED;
    3874         4161 :   if (!register_operand (operands[0], i1)
    3875         4161 :       || GET_MODE (x1) != i1)
    3876              :     return -1;
    3877         3984 :   x2 = XEXP (x1, 0);
    3878         3984 :   if (GET_MODE (x2) != i1
    3879         3984 :       || !nonimmediate_operand (operands[2], i2)
    3880         7939 :       || !reg_or_0_operand (operands[1], i1))
    3881          437 :     return -1;
    3882              :   return 0;
    3883              : }
    3884              : 
    3885              : int
    3886         8894 : pattern1020 (rtx x1)
    3887              : {
    3888         8894 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3889         8894 :   rtx x2, x3, x4, x5, x6, x7;
    3890         8894 :   int res ATTRIBUTE_UNUSED;
    3891         8894 :   x2 = XEXP (x1, 1);
    3892         8894 :   operands[2] = x2;
    3893         8894 :   x3 = XEXP (x1, 2);
    3894         8894 :   x4 = XVECEXP (x3, 0, 1);
    3895         8894 :   operands[4] = x4;
    3896         8894 :   x5 = XVECEXP (x3, 0, 2);
    3897         8894 :   operands[5] = x5;
    3898         8894 :   x6 = XVECEXP (x3, 0, 0);
    3899         8894 :   switch (GET_CODE (x6))
    3900              :     {
    3901              :     case REG:
    3902              :     case SUBREG:
    3903              :     case MEM:
    3904              :       return 0;
    3905              : 
    3906            0 :     case NOT:
    3907            0 :       x7 = XEXP (x6, 0);
    3908            0 :       operands[3] = x7;
    3909            0 :       if (!const_0_to_7_operand (operands[5], E_SImode))
    3910              :         return -1;
    3911            0 :       switch (GET_MODE (operands[0]))
    3912              :         {
    3913            0 :         case E_V32QImode:
    3914            0 :           if (pattern1019 (x1, 
    3915              : E_V32QImode, 
    3916              : E_SImode) != 0)
    3917              :             return -1;
    3918              :           return 1;
    3919              : 
    3920            0 :         case E_V16QImode:
    3921            0 :           if (pattern1019 (x1, 
    3922              : E_V16QImode, 
    3923              : E_HImode) != 0)
    3924              :             return -1;
    3925              :           return 2;
    3926              : 
    3927              :         default:
    3928              :           return -1;
    3929              :         }
    3930              : 
    3931              :     default:
    3932              :       return -1;
    3933              :     }
    3934              : }
    3935              : 
    3936              : int
    3937          217 : pattern1037 (rtx x1, machine_mode i1, machine_mode i2)
    3938              : {
    3939          217 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3940          217 :   rtx x2;
    3941          217 :   int res ATTRIBUTE_UNUSED;
    3942          217 :   if (!register_operand (operands[0], i2)
    3943          217 :       || GET_MODE (x1) != i2)
    3944              :     return -1;
    3945          209 :   x2 = XVECEXP (x1, 0, 0);
    3946          209 :   if (GET_MODE (x2) != i2
    3947          209 :       || !nonimmediate_operand (operands[1], i1))
    3948            3 :     return -1;
    3949              :   return 0;
    3950              : }
    3951              : 
    3952              : int
    3953          450 : pattern1042 (rtx x1, machine_mode i1)
    3954              : {
    3955          450 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3956          450 :   int res ATTRIBUTE_UNUSED;
    3957          450 :   if (!register_operand (operands[0], i1)
    3958          396 :       || GET_MODE (x1) != i1
    3959          396 :       || !register_operand (operands[1], i1)
    3960          789 :       || !bcst_vector_operand (operands[2], i1))
    3961          111 :     return -1;
    3962              :   return 0;
    3963              : }
    3964              : 
    3965              : int
    3966        21441 : pattern1047 (rtx x1)
    3967              : {
    3968        21441 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3969        21441 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3970        21441 :   rtx x10;
    3971        21441 :   int res ATTRIBUTE_UNUSED;
    3972        21441 :   x2 = XEXP (x1, 1);
    3973        21441 :   x3 = XEXP (x2, 0);
    3974        21441 :   if (GET_MODE (x3) != E_QImode)
    3975              :     return -1;
    3976        21098 :   x4 = XEXP (x3, 0);
    3977        21098 :   if (GET_CODE (x4) != SUBREG
    3978        21092 :       || maybe_ne (SUBREG_BYTE (x4), 0)
    3979        42190 :       || GET_MODE (x4) != E_QImode)
    3980              :     return -1;
    3981        21092 :   x5 = XEXP (x4, 0);
    3982        21092 :   switch (GET_CODE (x5))
    3983              :     {
    3984        21092 :     case ASHIFTRT:
    3985        21092 :     case LSHIFTRT:
    3986        21092 :     case SIGN_EXTRACT:
    3987        21092 :     case ZERO_EXTRACT:
    3988        21092 :       operands[3] = x5;
    3989        21092 :       x6 = XEXP (x1, 0);
    3990        21092 :       if (GET_CODE (x6) != ZERO_EXTRACT)
    3991              :         return -1;
    3992        21092 :       x7 = XEXP (x6, 1);
    3993        21092 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    3994              :         return -1;
    3995        21092 :       x8 = XEXP (x6, 2);
    3996        21092 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    3997              :         return -1;
    3998        21092 :       x9 = XEXP (x6, 0);
    3999        21092 :       operands[0] = x9;
    4000        21092 :       if (!int248_register_operand (operands[0], E_VOIDmode))
    4001              :         return -1;
    4002        21092 :       x10 = XEXP (x5, 0);
    4003        21092 :       operands[1] = x10;
    4004        21092 :       if (!int248_register_operand (operands[1], E_VOIDmode))
    4005              :         return -1;
    4006              :       return 0;
    4007              : 
    4008              :     default:
    4009              :       return -1;
    4010              :     }
    4011              : }
    4012              : 
    4013              : int
    4014          633 : pattern1057 (rtx x1)
    4015              : {
    4016          633 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4017          633 :   rtx x2, x3, x4, x5, x6, x7;
    4018          633 :   int res ATTRIBUTE_UNUSED;
    4019          633 :   x2 = XEXP (x1, 1);
    4020          633 :   x3 = XEXP (x2, 1);
    4021          633 :   x4 = XEXP (x3, 0);
    4022          633 :   x5 = XEXP (x4, 0);
    4023          633 :   operands[2] = x5;
    4024          633 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    4025              :     return -1;
    4026          427 :   x6 = XEXP (x1, 0);
    4027          427 :   switch (GET_CODE (x6))
    4028              :     {
    4029           65 :     case STRICT_LOW_PART:
    4030           65 :       x7 = XEXP (x6, 0);
    4031           65 :       operands[0] = x7;
    4032           65 :       if (!register_operand (operands[0], E_QImode))
    4033              :         return -1;
    4034           65 :       return pattern1056 (); /* [-1, 2] */
    4035              : 
    4036          362 :     case REG:
    4037          362 :     case SUBREG:
    4038          362 :       operands[0] = x6;
    4039          362 :       if (!register_operand (operands[0], E_QImode))
    4040              :         return -1;
    4041          362 :       res = pattern1056 ();
    4042          362 :       if (res >= 0)
    4043          194 :         return res + 3; /* [3, 5] */
    4044              :       return -1;
    4045              : 
    4046              :     default:
    4047              :       return -1;
    4048              :     }
    4049              : }
    4050              : 
    4051              : int
    4052         1231 : pattern1063 (rtx x1)
    4053              : {
    4054         1231 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4055         1231 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4056         1231 :   int res ATTRIBUTE_UNUSED;
    4057         1231 :   x2 = XEXP (x1, 0);
    4058         1231 :   operands[0] = x2;
    4059         1231 :   x3 = XEXP (x1, 1);
    4060         1231 :   x4 = XEXP (x3, 0);
    4061         1231 :   x5 = XEXP (x4, 0);
    4062         1231 :   x6 = XEXP (x5, 0);
    4063         1231 :   operands[1] = x6;
    4064         1231 :   x7 = XEXP (x5, 1);
    4065         1231 :   operands[2] = x7;
    4066         1231 :   x8 = XEXP (x4, 1);
    4067         1231 :   operands[3] = x8;
    4068         1231 :   x9 = XEXP (x3, 1);
    4069         1231 :   if (!rtx_equal_p (x9, operands[1]))
    4070              :     return -1;
    4071          833 :   switch (GET_MODE (operands[0]))
    4072              :     {
    4073           84 :     case E_HImode:
    4074           84 :       return pattern1062 (x3, 
    4075           84 : E_HImode); /* [-1, 0] */
    4076              : 
    4077          749 :     case E_SImode:
    4078          749 :       if (pattern1062 (x3, 
    4079              : E_SImode) != 0)
    4080              :         return -1;
    4081              :       return 1;
    4082              : 
    4083            0 :     case E_DImode:
    4084            0 :       if (pattern1062 (x3, 
    4085              : E_DImode) != 0)
    4086              :         return -1;
    4087              :       return 2;
    4088              : 
    4089              :     default:
    4090              :       return -1;
    4091              :     }
    4092              : }
    4093              : 
    4094              : int
    4095         3932 : pattern1071 (rtx x1, int i1)
    4096              : {
    4097         3932 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4098         3932 :   rtx x2, x3, x4, x5;
    4099         3932 :   int res ATTRIBUTE_UNUSED;
    4100         3932 :   x2 = XEXP (x1, 1);
    4101         3932 :   x3 = XEXP (x2, 0);
    4102         3932 :   x4 = XEXP (x3, 0);
    4103         3932 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4104              :     return -1;
    4105          567 :   x5 = XEXP (x1, 0);
    4106          567 :   operands[0] = x5;
    4107          567 :   return pattern1070 (x2); /* [-1, 3] */
    4108              : }
    4109              : 
    4110              : int
    4111            4 : pattern1076 (rtx x1, machine_mode i1, machine_mode i2)
    4112              : {
    4113            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4114            4 :   rtx x2, x3;
    4115            4 :   int res ATTRIBUTE_UNUSED;
    4116            4 :   if (!register_operand (operands[0], i1)
    4117            4 :       || GET_MODE (x1) != i1)
    4118              :     return -1;
    4119            4 :   x2 = XEXP (x1, 0);
    4120            4 :   if (GET_MODE (x2) != i1)
    4121              :     return -1;
    4122            4 :   x3 = XEXP (x2, 0);
    4123            4 :   if (GET_MODE (x3) != i2
    4124            4 :       || !vector_operand (operands[2], i1))
    4125            0 :     return -1;
    4126              :   return 0;
    4127              : }
    4128              : 
    4129              : int
    4130        15868 : pattern1082 ()
    4131              : {
    4132        15868 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4133        15868 :   int res ATTRIBUTE_UNUSED;
    4134        15868 :   switch (GET_MODE (operands[3]))
    4135              :     {
    4136          946 :     case E_HImode:
    4137          946 :       if (!extract_high_operator (operands[3], E_HImode))
    4138              :         return -1;
    4139              :       return 0;
    4140              : 
    4141        10013 :     case E_SImode:
    4142        10013 :       if (!extract_high_operator (operands[3], E_SImode))
    4143              :         return -1;
    4144              :       return 1;
    4145              : 
    4146         4909 :     case E_DImode:
    4147         4909 :       if (!extract_high_operator (operands[3], E_DImode))
    4148              :         return -1;
    4149              :       return 2;
    4150              : 
    4151              :     default:
    4152              :       return -1;
    4153              :     }
    4154              : }
    4155              : 
    4156              : int
    4157            2 : pattern1087 (rtx x1)
    4158              : {
    4159            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4160            2 :   rtx x2, x3, x4, x5;
    4161            2 :   int res ATTRIBUTE_UNUSED;
    4162            2 :   x2 = XEXP (x1, 0);
    4163            2 :   x3 = XEXP (x2, 0);
    4164            2 :   if (GET_CODE (x3) != REG
    4165            2 :       || REGNO (x3) != 17)
    4166              :     return -1;
    4167            2 :   x4 = XEXP (x2, 1);
    4168            2 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4169              :     return -1;
    4170            2 :   x5 = XEXP (x1, 1);
    4171            2 :   operands[1] = x5;
    4172            2 :   if (!nonimmediate_operand (operands[1], E_QImode))
    4173              :     return -1;
    4174              :   return 0;
    4175              : }
    4176              : 
    4177              : int
    4178          309 : pattern1095 (rtx x1, int i1, int i2, int i3, int i4)
    4179              : {
    4180          309 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4181          309 :   rtx x2, x3, x4, x5;
    4182          309 :   int res ATTRIBUTE_UNUSED;
    4183          309 :   x2 = XVECEXP (x1, 0, 0);
    4184          309 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    4185              :     return -1;
    4186          309 :   x3 = XVECEXP (x1, 0, 1);
    4187          309 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    4188              :     return -1;
    4189          309 :   x4 = XVECEXP (x1, 0, 2);
    4190          309 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    4191              :     return -1;
    4192          309 :   x5 = XVECEXP (x1, 0, 3);
    4193          309 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4194            0 :     return -1;
    4195              :   return 0;
    4196              : }
    4197              : 
    4198              : int
    4199            0 : pattern1107 (rtx x1, machine_mode i1)
    4200              : {
    4201            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4202            0 :   int res ATTRIBUTE_UNUSED;
    4203            0 :   if (GET_MODE (x1) != i1
    4204            0 :       || !vector_all_ones_operand (operands[3], i1)
    4205            0 :       || !const0_operand (operands[4], i1)
    4206            0 :       || !register_operand (operands[1], i1)
    4207            0 :       || !const0_operand (operands[2], i1))
    4208            0 :     return -1;
    4209              :   return 0;
    4210              : }
    4211              : 
    4212              : int
    4213          460 : pattern1113 (rtx x1)
    4214              : {
    4215          460 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4216          460 :   rtx x2, x3, x4;
    4217          460 :   int res ATTRIBUTE_UNUSED;
    4218          460 :   x2 = XEXP (x1, 2);
    4219          460 :   x3 = XEXP (x2, 0);
    4220          460 :   operands[3] = x3;
    4221          460 :   if (!register_operand (operands[3], E_QImode))
    4222              :     return -1;
    4223          431 :   x4 = XEXP (x2, 1);
    4224          431 :   switch (XWINT (x4, 0))
    4225              :     {
    4226          284 :     case 15L:
    4227          284 :       switch (GET_MODE (operands[0]))
    4228              :         {
    4229            0 :         case E_V4SFmode:
    4230            0 :           return pattern1112 (x1, 
    4231            0 : E_V4SFmode); /* [-1, 0] */
    4232              : 
    4233           58 :         case E_V4DFmode:
    4234           58 :           if (pattern1112 (x1, 
    4235              : E_V4DFmode) != 0)
    4236              :             return -1;
    4237              :           return 1;
    4238              : 
    4239          142 :         case E_V4SImode:
    4240          142 :           if (pattern1112 (x1, 
    4241              : E_V4SImode) != 0)
    4242              :             return -1;
    4243              :           return 2;
    4244              : 
    4245           84 :         case E_V4DImode:
    4246           84 :           if (pattern1112 (x1, 
    4247              : E_V4DImode) != 0)
    4248              :             return -1;
    4249              :           return 3;
    4250              : 
    4251              :         default:
    4252              :           return -1;
    4253              :         }
    4254              : 
    4255          147 :     case 3L:
    4256          147 :       switch (GET_MODE (operands[0]))
    4257              :         {
    4258            5 :         case E_V2DFmode:
    4259            5 :           if (pattern1112 (x1, 
    4260              : E_V2DFmode) != 0)
    4261              :             return -1;
    4262              :           return 4;
    4263              : 
    4264          142 :         case E_V2DImode:
    4265          142 :           if (pattern1112 (x1, 
    4266              : E_V2DImode) != 0)
    4267              :             return -1;
    4268              :           return 5;
    4269              : 
    4270              :         default:
    4271              :           return -1;
    4272              :         }
    4273              : 
    4274              :     default:
    4275              :       return -1;
    4276              :     }
    4277              : }
    4278              : 
    4279              : int
    4280         1406 : pattern1121 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4281              : {
    4282         1406 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4283         1406 :   rtx x2;
    4284         1406 :   int res ATTRIBUTE_UNUSED;
    4285         1406 :   if (!register_operand (operands[0], i1)
    4286         1406 :       || GET_MODE (x1) != i1)
    4287              :     return -1;
    4288         1317 :   x2 = XEXP (x1, 0);
    4289         1317 :   if (GET_MODE (x2) != i1
    4290         1317 :       || !register_operand (operands[1], i1)
    4291         1315 :       || !nonimmediate_operand (operands[2], i2)
    4292         1315 :       || !nonimm_or_0_operand (operands[3], i1)
    4293         2599 :       || !register_operand (operands[4], i3))
    4294          122 :     return -1;
    4295              :   return 0;
    4296              : }
    4297              : 
    4298              : int
    4299        48125 : pattern1130 (rtx x1, machine_mode i1)
    4300              : {
    4301        48125 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4302        48125 :   int res ATTRIBUTE_UNUSED;
    4303        48125 :   if (!register_operand (operands[0], i1)
    4304        47835 :       || GET_MODE (x1) != i1
    4305        47835 :       || !vector_operand (operands[2], i1)
    4306        37693 :       || !register_operand (operands[1], i1)
    4307        74055 :       || !const_0_to_255_operand (operands[3], E_SImode))
    4308        22568 :     return -1;
    4309              :   return 0;
    4310              : }
    4311              : 
    4312              : int
    4313          296 : pattern1134 (rtx x1, machine_mode i1, machine_mode i2)
    4314              : {
    4315          296 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4316          296 :   rtx x2;
    4317          296 :   int res ATTRIBUTE_UNUSED;
    4318          296 :   if (!register_operand (operands[0], i2)
    4319          287 :       || GET_MODE (x1) != i2
    4320          583 :       || !register_operand (operands[1], i2))
    4321           10 :     return -1;
    4322          286 :   x2 = XEXP (x1, 1);
    4323          286 :   if (GET_MODE (x2) != i2
    4324          286 :       || !nonimmediate_operand (operands[2], i1))
    4325            0 :     return -1;
    4326              :   return 0;
    4327              : }
    4328              : 
    4329              : int
    4330          964 : pattern1143 (rtx x1)
    4331              : {
    4332          964 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4333          964 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4334          964 :   rtx x10, x11, x12;
    4335          964 :   int res ATTRIBUTE_UNUSED;
    4336          964 :   x2 = XVECEXP (x1, 0, 0);
    4337          964 :   x3 = XEXP (x2, 0);
    4338          964 :   x4 = XEXP (x3, 0);
    4339          964 :   if (GET_MODE (x4) != E_V8HFmode)
    4340              :     return -1;
    4341          964 :   x5 = XEXP (x3, 2);
    4342          964 :   if (GET_CODE (x5) != UNSPEC
    4343          964 :       || XVECLEN (x5, 0) != 1
    4344          964 :       || XINT (x5, 1) != 224
    4345          964 :       || GET_MODE (x5) != E_QImode)
    4346              :     return -1;
    4347          964 :   x6 = XEXP (x2, 2);
    4348          964 :   if (XWINT (x6, 0) != 3L
    4349          964 :       || !register_operand (operands[0], E_V8HFmode)
    4350          900 :       || GET_MODE (x1) != E_V8HFmode
    4351          900 :       || GET_MODE (x2) != E_V8HFmode
    4352         1864 :       || GET_MODE (x3) != E_V8HFmode)
    4353           64 :     return -1;
    4354          900 :   x7 = XVECEXP (x4, 0, 0);
    4355          900 :   operands[1] = x7;
    4356          900 :   if (!nonimmediate_operand (operands[1], E_V8HFmode))
    4357              :     return -1;
    4358          900 :   x8 = XVECEXP (x4, 0, 1);
    4359          900 :   operands[2] = x8;
    4360          900 :   if (!register_operand (operands[2], E_V8HFmode))
    4361              :     return -1;
    4362          876 :   x9 = XEXP (x3, 1);
    4363          876 :   operands[3] = x9;
    4364          876 :   if (!nonimm_or_0_operand (operands[3], E_V8HFmode))
    4365              :     return -1;
    4366          876 :   x10 = XVECEXP (x5, 0, 0);
    4367          876 :   operands[4] = x10;
    4368          876 :   if (!register_operand (operands[4], E_QImode))
    4369              :     return -1;
    4370          796 :   x11 = XVECEXP (x1, 0, 1);
    4371          796 :   operands[5] = x11;
    4372          796 :   if (!const_4_or_8_to_11_operand (operands[5], E_SImode))
    4373              :     return -1;
    4374          796 :   x12 = XEXP (x2, 1);
    4375          796 :   if (!rtx_equal_p (x12, operands[1]))
    4376              :     return -1;
    4377              :   return 0;
    4378              : }
    4379              : 
    4380              : int
    4381         2375 : pattern1164 (rtx x1)
    4382              : {
    4383         2375 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4384         2375 :   int res ATTRIBUTE_UNUSED;
    4385         2375 :   switch (GET_MODE (operands[0]))
    4386              :     {
    4387          466 :     case E_SImode:
    4388          466 :       if (!register_operand (operands[0], E_SImode)
    4389          466 :           || GET_MODE (x1) != E_SImode)
    4390              :         return -1;
    4391          456 :       switch (GET_MODE (operands[1]))
    4392              :         {
    4393          138 :         case E_QImode:
    4394          138 :           if (!nonimmediate_operand (operands[1], E_QImode))
    4395              :             return -1;
    4396              :           return 0;
    4397              : 
    4398          318 :         case E_HImode:
    4399          318 :           if (!nonimmediate_operand (operands[1], E_HImode))
    4400              :             return -1;
    4401              :           return 1;
    4402              : 
    4403              :         default:
    4404              :           return -1;
    4405              :         }
    4406              : 
    4407          106 :     case E_HImode:
    4408          106 :       if (!register_operand (operands[0], E_HImode)
    4409          106 :           || GET_MODE (x1) != E_HImode
    4410          212 :           || !nonimmediate_operand (operands[1], E_QImode))
    4411            0 :         return -1;
    4412              :       return 2;
    4413              : 
    4414              :     default:
    4415              :       return -1;
    4416              :     }
    4417              : }
    4418              : 
    4419              : int
    4420        35250 : pattern1177 (rtx x1)
    4421              : {
    4422        35250 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4423        35250 :   rtx x2, x3, x4, x5;
    4424        35250 :   int res ATTRIBUTE_UNUSED;
    4425        35250 :   x2 = XEXP (x1, 0);
    4426        35250 :   operands[0] = x2;
    4427        35250 :   x3 = XEXP (x1, 1);
    4428        35250 :   x4 = XEXP (x3, 1);
    4429        35250 :   x5 = XEXP (x4, 0);
    4430        35250 :   operands[2] = x5;
    4431        35250 :   switch (GET_MODE (operands[0]))
    4432              :     {
    4433        22372 :     case E_DImode:
    4434        22372 :       return pattern1176 (x3, 
    4435              : E_SImode, 
    4436        22372 : E_DImode); /* [-1, 0] */
    4437              : 
    4438         3160 :     case E_TImode:
    4439         3160 :       if (pattern1176 (x3, 
    4440              : E_DImode, 
    4441              : E_TImode) != 0)
    4442              :         return -1;
    4443              :       return 1;
    4444              : 
    4445              :     default:
    4446              :       return -1;
    4447              :     }
    4448              : }
    4449              : 
    4450              : int
    4451        11965 : pattern1185 (rtx x1)
    4452              : {
    4453        11965 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4454        11965 :   rtx x2, x3, x4;
    4455        11965 :   int res ATTRIBUTE_UNUSED;
    4456        11965 :   x2 = XEXP (x1, 0);
    4457        11965 :   if (GET_MODE (x2) != E_SImode
    4458        11933 :       || !register_operand (operands[0], E_DImode)
    4459        23898 :       || GET_MODE (x1) != E_DImode)
    4460           32 :     return -1;
    4461        11933 :   x3 = XEXP (x2, 0);
    4462        11933 :   operands[1] = x3;
    4463        11933 :   if (!nonimmediate_operand (operands[1], E_SImode))
    4464              :     return -1;
    4465        11909 :   x4 = XEXP (x2, 1);
    4466        11909 :   operands[2] = x4;
    4467        11909 :   if (!register_operand (operands[2], E_QImode))
    4468              :     return -1;
    4469              :   return 0;
    4470              : }
    4471              : 
    4472              : int
    4473           42 : pattern1194 (rtx x1, machine_mode i1)
    4474              : {
    4475           42 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4476           42 :   int res ATTRIBUTE_UNUSED;
    4477           42 :   if (!register_operand (operands[0], i1)
    4478           42 :       || GET_MODE (x1) != i1
    4479           42 :       || !nonimmediate_operand (operands[2], i1)
    4480           84 :       || !nonimmediate_operand (operands[3], i1))
    4481            0 :     return -1;
    4482           42 :   return pattern1193 (); /* [-1, 3] */
    4483              : }
    4484              : 
    4485              : int
    4486          184 : pattern1201 (rtx x1, machine_mode i1)
    4487              : {
    4488          184 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4489          184 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4490          184 :   rtx x10, x11, x12;
    4491          184 :   int res ATTRIBUTE_UNUSED;
    4492          184 :   x2 = XVECEXP (x1, 0, 0);
    4493          184 :   x3 = XEXP (x2, 1);
    4494          184 :   x4 = XEXP (x3, 0);
    4495          184 :   if (!rtx_equal_p (x4, operands[0]))
    4496              :     return -1;
    4497          184 :   x5 = XVECEXP (x1, 0, 1);
    4498          184 :   x6 = XEXP (x5, 1);
    4499          184 :   if (GET_CODE (x6) != MINUS)
    4500              :     return -1;
    4501          184 :   x7 = XEXP (x2, 0);
    4502          184 :   if (GET_MODE (x7) != E_CCmode
    4503          184 :       || GET_MODE (x3) != E_CCmode)
    4504              :     return -1;
    4505          184 :   x8 = XEXP (x3, 1);
    4506          184 :   operands[2] = x8;
    4507          184 :   if (!memory_operand (operands[2], i1))
    4508              :     return -1;
    4509          106 :   x9 = XEXP (x6, 0);
    4510          106 :   if (!rtx_equal_p (x9, operands[0]))
    4511              :     return -1;
    4512          106 :   x10 = XEXP (x6, 1);
    4513          106 :   if (!rtx_equal_p (x10, operands[2]))
    4514              :     return -1;
    4515          106 :   x11 = PATTERN (peep2_next_insn (2));
    4516          106 :   x12 = XEXP (x11, 0);
    4517          106 :   if (!rtx_equal_p (x12, operands[1]))
    4518              :     return -1;
    4519              :   return 0;
    4520              : }
    4521              : 
    4522              : int
    4523      1230209 : pattern1210 (rtx x1, machine_mode i1)
    4524              : {
    4525      1230209 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4526      1230209 :   int res ATTRIBUTE_UNUSED;
    4527      1230209 :   if (!register_operand (operands[0], i1)
    4528      1222365 :       || GET_MODE (x1) != i1
    4529      1222365 :       || !ix86_comparison_operator (operands[1], E_VOIDmode)
    4530      1222365 :       || !nonimmediate_operand (operands[2], i1)
    4531      2422878 :       || !nonimmediate_operand (operands[3], i1))
    4532        42626 :     return -1;
    4533              :   return 0;
    4534              : }
    4535              : 
    4536              : int
    4537        25768 : pattern1214 ()
    4538              : {
    4539        25768 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4540        25768 :   int res ATTRIBUTE_UNUSED;
    4541        25768 :   switch (GET_MODE (operands[2]))
    4542              :     {
    4543          975 :     case E_HImode:
    4544          975 :       if (!extract_high_operator (operands[2], E_HImode))
    4545              :         return -1;
    4546              :       return 0;
    4547              : 
    4548        11516 :     case E_SImode:
    4549        11516 :       if (!extract_high_operator (operands[2], E_SImode))
    4550              :         return -1;
    4551              :       return 1;
    4552              : 
    4553        13277 :     case E_DImode:
    4554        13277 :       if (!extract_high_operator (operands[2], E_DImode))
    4555              :         return -1;
    4556              :       return 2;
    4557              : 
    4558              :     default:
    4559              :       return -1;
    4560              :     }
    4561              : }
    4562              : 
    4563              : int
    4564          254 : pattern1221 (rtx x1, machine_mode i1)
    4565              : {
    4566          254 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4567          254 :   rtx x2;
    4568          254 :   int res ATTRIBUTE_UNUSED;
    4569          254 :   if (!register_operand (operands[0], i1)
    4570          254 :       || GET_MODE (x1) != i1
    4571          508 :       || !register_operand (operands[2], i1))
    4572          166 :     return -1;
    4573           88 :   x2 = XVECEXP (x1, 0, 2);
    4574           88 :   if (GET_MODE (x2) != i1)
    4575              :     return -1;
    4576              :   return 0;
    4577              : }
    4578              : 
    4579              : int
    4580          725 : pattern1229 (rtx x1, int i1, int i2, int i3, int i4)
    4581              : {
    4582          725 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4583          725 :   rtx x2, x3, x4, x5;
    4584          725 :   int res ATTRIBUTE_UNUSED;
    4585          725 :   x2 = XVECEXP (x1, 0, 0);
    4586          725 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    4587              :     return -1;
    4588          725 :   x3 = XVECEXP (x1, 0, 1);
    4589          725 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    4590              :     return -1;
    4591          725 :   x4 = XVECEXP (x1, 0, 2);
    4592          725 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    4593              :     return -1;
    4594          725 :   x5 = XVECEXP (x1, 0, 3);
    4595          725 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4596            0 :     return -1;
    4597              :   return 0;
    4598              : }
    4599              : 
    4600              : int
    4601         1904 : pattern1237 (rtx x1)
    4602              : {
    4603         1904 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4604         1904 :   rtx x2, x3, x4;
    4605         1904 :   int res ATTRIBUTE_UNUSED;
    4606         1904 :   x2 = XVECEXP (x1, 0, 2);
    4607         1904 :   x3 = XEXP (x2, 0);
    4608         1904 :   x4 = XEXP (x3, 1);
    4609         1904 :   operands[4] = x4;
    4610         1904 :   switch (GET_MODE (operands[0]))
    4611              :     {
    4612         1462 :     case E_V16QImode:
    4613         1462 :       if (!register_operand (operands[0], E_V16QImode)
    4614         1462 :           || GET_MODE (x1) != E_V16QImode
    4615         1462 :           || !vector_operand (operands[1], E_V16QImode)
    4616         1204 :           || !register_operand (operands[2], E_V16QImode)
    4617         2044 :           || GET_MODE (x2) != E_V16QImode)
    4618          880 :         return -1;
    4619          582 :       switch (GET_MODE (x3))
    4620              :         {
    4621          272 :         case E_V4SImode:
    4622          272 :           if (!register_operand (operands[3], E_V4SImode)
    4623          272 :               || !vector_all_ones_operand (operands[4], E_V4SImode))
    4624          272 :             return -1;
    4625              :           return 0;
    4626              : 
    4627          303 :         case E_V2DImode:
    4628          303 :           if (!register_operand (operands[3], E_V2DImode)
    4629          303 :               || !vector_all_ones_operand (operands[4], E_V2DImode))
    4630          303 :             return -1;
    4631              :           return 1;
    4632              : 
    4633              :         default:
    4634              :           return -1;
    4635              :         }
    4636              : 
    4637          190 :     case E_V32QImode:
    4638          190 :       if (!register_operand (operands[0], E_V32QImode)
    4639          190 :           || GET_MODE (x1) != E_V32QImode
    4640          190 :           || !vector_operand (operands[1], E_V32QImode)
    4641          126 :           || !register_operand (operands[2], E_V32QImode)
    4642          284 :           || GET_MODE (x2) != E_V32QImode)
    4643           96 :         return -1;
    4644           94 :       switch (GET_MODE (x3))
    4645              :         {
    4646           64 :         case E_V8SImode:
    4647           64 :           if (!register_operand (operands[3], E_V8SImode)
    4648           64 :               || !vector_all_ones_operand (operands[4], E_V8SImode))
    4649           64 :             return -1;
    4650              :           return 2;
    4651              : 
    4652           29 :         case E_V4DImode:
    4653           29 :           if (!register_operand (operands[3], E_V4DImode)
    4654           29 :               || !vector_all_ones_operand (operands[4], E_V4DImode))
    4655           29 :             return -1;
    4656              :           return 3;
    4657              : 
    4658              :         default:
    4659              :           return -1;
    4660              :         }
    4661              : 
    4662              :     default:
    4663              :       return -1;
    4664              :     }
    4665              : }
    4666              : 
    4667              : int
    4668           50 : pattern1256 (rtx x1)
    4669              : {
    4670           50 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4671           50 :   rtx x2, x3;
    4672           50 :   int res ATTRIBUTE_UNUSED;
    4673           50 :   switch (GET_MODE (operands[0]))
    4674              :     {
    4675           40 :     case E_SImode:
    4676           40 :       if (!register_operand (operands[0], E_SImode)
    4677           40 :           || GET_MODE (x1) != E_SImode)
    4678              :         return -1;
    4679           40 :       x2 = XEXP (x1, 0);
    4680           40 :       if (GET_MODE (x2) != E_SImode)
    4681              :         return -1;
    4682           40 :       x3 = XEXP (x2, 0);
    4683           40 :       if (GET_MODE (x3) != E_SImode
    4684           40 :           || !nonimmediate_operand (operands[1], E_SImode))
    4685           10 :         return -1;
    4686              :       return 0;
    4687              : 
    4688           10 :     case E_DImode:
    4689           10 :       if (!register_operand (operands[0], E_DImode)
    4690           10 :           || GET_MODE (x1) != E_DImode)
    4691              :         return -1;
    4692           10 :       x2 = XEXP (x1, 0);
    4693           10 :       if (GET_MODE (x2) != E_DImode)
    4694              :         return -1;
    4695           10 :       x3 = XEXP (x2, 0);
    4696           10 :       if (GET_MODE (x3) != E_DImode
    4697           10 :           || !nonimmediate_operand (operands[1], E_DImode))
    4698            0 :         return -1;
    4699              :       return 1;
    4700              : 
    4701              :     default:
    4702              :       return -1;
    4703              :     }
    4704              : }
    4705              : 
    4706              : int
    4707        24119 : pattern1269 (rtx x1, machine_mode i1)
    4708              : {
    4709        24119 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4710        24119 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4711        24119 :   int res ATTRIBUTE_UNUSED;
    4712        24119 :   x2 = XVECEXP (x1, 0, 0);
    4713        24119 :   x3 = XEXP (x2, 1);
    4714        24119 :   x4 = XEXP (x3, 0);
    4715        24119 :   if (!plusminuslogic_operator (x4, i1))
    4716              :     return -1;
    4717        19658 :   operands[3] = x4;
    4718        19658 :   x5 = XEXP (x3, 1);
    4719        19658 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4720              :     return -1;
    4721        18308 :   x6 = XEXP (x2, 0);
    4722        18308 :   if (GET_CODE (x6) != REG
    4723        18308 :       || REGNO (x6) != 17)
    4724              :     return -1;
    4725        18308 :   x7 = XVECEXP (x1, 0, 1);
    4726        18308 :   if (GET_CODE (x7) != SET)
    4727              :     return -1;
    4728        14024 :   x8 = XEXP (x4, 1);
    4729        14024 :   operands[2] = x8;
    4730        14024 :   if (!x86_64_nonmemory_operand (operands[2], i1))
    4731              :     return -1;
    4732              :   return 0;
    4733              : }
    4734              : 
    4735              : int
    4736            0 : pattern1276 (rtx x1, machine_mode i1)
    4737              : {
    4738            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4739            0 :   rtx x2, x3;
    4740            0 :   int res ATTRIBUTE_UNUSED;
    4741            0 :   if (!nonimmediate_operand (operands[0], i1)
    4742            0 :       || GET_MODE (x1) != i1)
    4743              :     return -1;
    4744            0 :   x2 = XEXP (x1, 0);
    4745            0 :   if (GET_MODE (x2) != i1)
    4746              :     return -1;
    4747            0 :   x3 = XEXP (x2, 0);
    4748            0 :   if (GET_MODE (x3) != i1
    4749            0 :       || !nonimmediate_operand (operands[1], i1)
    4750            0 :       || !immediate_operand (operands[2], i1))
    4751            0 :     return -1;
    4752              :   return 0;
    4753              : }
    4754              : 
    4755              : int
    4756         1442 : pattern1283 (rtx x1, machine_mode i1, machine_mode i2)
    4757              : {
    4758         1442 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4759         1442 :   rtx x2, x3;
    4760         1442 :   int res ATTRIBUTE_UNUSED;
    4761         1442 :   if (!register_operand (operands[0], i1)
    4762         1442 :       || GET_MODE (x1) != i1)
    4763              :     return -1;
    4764         1333 :   x2 = XEXP (x1, 0);
    4765         1333 :   if (GET_MODE (x2) != i1
    4766         1333 :       || !nonimmediate_operand (operands[1], i1)
    4767         2666 :       || !vector_operand (operands[2], i1))
    4768            0 :     return -1;
    4769         1333 :   x3 = XVECEXP (x2, 0, 2);
    4770         1333 :   if (GET_MODE (x3) != i1
    4771         1333 :       || !register_operand (operands[4], i2))
    4772           57 :     return -1;
    4773              :   return 0;
    4774              : }
    4775              : 
    4776              : int
    4777          442 : pattern1292 (rtx x1)
    4778              : {
    4779          442 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4780          442 :   rtx x2, x3;
    4781          442 :   int res ATTRIBUTE_UNUSED;
    4782          442 :   x2 = XEXP (x1, 0);
    4783          442 :   x3 = XEXP (x2, 0);
    4784          442 :   if (GET_MODE (x3) != E_V8HFmode
    4785          442 :       || !register_operand (operands[0], E_V8HFmode)
    4786          430 :       || GET_MODE (x1) != E_V8HFmode
    4787          430 :       || GET_MODE (x2) != E_V8HFmode
    4788          430 :       || !nonimmediate_operand (operands[1], E_V8HFmode)
    4789          430 :       || !nonimm_or_0_operand (operands[3], E_V8HFmode)
    4790          872 :       || !register_operand (operands[2], E_V8HFmode))
    4791           12 :     return -1;
    4792              :   return 0;
    4793              : }
    4794              : 
    4795              : int
    4796         2048 : pattern1300 (rtx x1, machine_mode i1, machine_mode i2)
    4797              : {
    4798         2048 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4799         2048 :   rtx x2, x3;
    4800         2048 :   int res ATTRIBUTE_UNUSED;
    4801         2048 :   if (!register_operand (operands[0], i1)
    4802         2048 :       || GET_MODE (x1) != i1)
    4803              :     return -1;
    4804         1917 :   x2 = XEXP (x1, 0);
    4805         1917 :   if (GET_MODE (x2) != i1
    4806         1917 :       || !vector_operand (operands[2], i1))
    4807            4 :     return -1;
    4808         1913 :   x3 = XEXP (x2, 2);
    4809         1913 :   if (GET_MODE (x3) != i1
    4810         1913 :       || !register_operand (operands[4], i2))
    4811            0 :     return -1;
    4812              :   return 0;
    4813              : }
    4814              : 
    4815              : int
    4816         2854 : pattern1310 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4817              : {
    4818         2854 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4819         2854 :   rtx x2, x3;
    4820         2854 :   int res ATTRIBUTE_UNUSED;
    4821         2854 :   if (!register_operand (operands[0], i2)
    4822         2854 :       || GET_MODE (x1) != i2)
    4823              :     return -1;
    4824         2744 :   x2 = XVECEXP (x1, 0, 0);
    4825         2744 :   if (GET_MODE (x2) != i2)
    4826              :     return -1;
    4827         2744 :   x3 = XEXP (x2, 0);
    4828         2744 :   if (GET_MODE (x3) != i2
    4829         2744 :       || !register_operand (operands[1], i3)
    4830         2712 :       || !nonimm_or_0_operand (operands[2], i2)
    4831         5420 :       || !register_operand (operands[3], i1))
    4832          152 :     return -1;
    4833              :   return 0;
    4834              : }
    4835              : 
    4836              : int
    4837          972 : pattern1318 (rtx x1)
    4838              : {
    4839          972 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4840          972 :   rtx x2, x3;
    4841          972 :   int res ATTRIBUTE_UNUSED;
    4842          972 :   if (!register_operand (operands[0], E_V16HFmode)
    4843          972 :       || GET_MODE (x1) != E_V16HFmode)
    4844              :     return -1;
    4845          944 :   x2 = XVECEXP (x1, 0, 0);
    4846          944 :   if (GET_MODE (x2) != E_V16HFmode)
    4847              :     return -1;
    4848          944 :   x3 = XEXP (x2, 0);
    4849          944 :   if (GET_MODE (x3) != E_V16HFmode
    4850          944 :       || !nonimm_or_0_operand (operands[2], E_V16HFmode)
    4851         1888 :       || !register_operand (operands[3], E_HImode))
    4852           20 :     return -1;
    4853          924 :   switch (GET_MODE (operands[1]))
    4854              :     {
    4855            0 :     case E_V16HImode:
    4856            0 :       if (!register_operand (operands[1], E_V16HImode))
    4857              :         return -1;
    4858              :       return 0;
    4859              : 
    4860          924 :     case E_V16SImode:
    4861          924 :       if (!register_operand (operands[1], E_V16SImode))
    4862              :         return -1;
    4863              :       return 1;
    4864              : 
    4865              :     default:
    4866              :       return -1;
    4867              :     }
    4868              : }
    4869              : 
    4870              : int
    4871            3 : pattern1328 (rtx x1)
    4872              : {
    4873            3 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4874            3 :   rtx x2, x3, x4, x5, x6;
    4875            3 :   int res ATTRIBUTE_UNUSED;
    4876            3 :   x2 = XVECEXP (x1, 0, 1);
    4877            3 :   x3 = XEXP (x2, 1);
    4878            3 :   x4 = XEXP (x3, 0);
    4879            3 :   operands[2] = x4;
    4880            3 :   if (!nonimmediate_operand (operands[2], E_SImode))
    4881              :     return -1;
    4882            3 :   switch (GET_MODE (operands[0]))
    4883              :     {
    4884            0 :     case E_SImode:
    4885            0 :       if (!memory_operand (operands[0], E_SImode))
    4886              :         return -1;
    4887            0 :       x5 = XVECEXP (x1, 0, 0);
    4888            0 :       x6 = XEXP (x5, 1);
    4889            0 :       if (GET_MODE (x6) != E_SImode
    4890            0 :           || !memory_operand (operands[3], E_SImode))
    4891            0 :         return -1;
    4892              :       return 0;
    4893              : 
    4894            3 :     case E_DImode:
    4895            3 :       if (!memory_operand (operands[0], E_DImode))
    4896              :         return -1;
    4897            3 :       x5 = XVECEXP (x1, 0, 0);
    4898            3 :       x6 = XEXP (x5, 1);
    4899            3 :       if (GET_MODE (x6) != E_DImode
    4900            3 :           || !memory_operand (operands[3], E_DImode))
    4901            0 :         return -1;
    4902              :       return 1;
    4903              : 
    4904              :     default:
    4905              :       return -1;
    4906              :     }
    4907              : }
    4908              : 
    4909              : int
    4910          323 : pattern1340 (rtx x1, machine_mode i1)
    4911              : {
    4912          323 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4913          323 :   rtx x2;
    4914          323 :   int res ATTRIBUTE_UNUSED;
    4915          323 :   if (!register_operand (operands[0], i1)
    4916          323 :       || GET_MODE (x1) != i1)
    4917              :     return -1;
    4918          323 :   x2 = XEXP (x1, 0);
    4919          323 :   if (GET_MODE (x2) != i1
    4920          323 :       || !register_operand (operands[1], i1)
    4921          646 :       || !register_operand (operands[2], i1))
    4922            0 :     return -1;
    4923              :   return 0;
    4924              : }
    4925              : 
    4926              : int
    4927      1404722 : pattern1346 (rtx x1)
    4928              : {
    4929      1404722 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4930      1404722 :   rtx x2, x3;
    4931      1404722 :   int res ATTRIBUTE_UNUSED;
    4932      1404722 :   x2 = XEXP (x1, 0);
    4933      1404722 :   switch (GET_CODE (x2))
    4934              :     {
    4935      1400471 :     case REG:
    4936      1400471 :     case SUBREG:
    4937      1400471 :       operands[0] = x2;
    4938      1400471 :       switch (GET_MODE (operands[0]))
    4939              :         {
    4940       904563 :         case E_DImode:
    4941       904563 :           if (!register_operand (operands[0], E_DImode))
    4942              :             return -1;
    4943       904563 :           x3 = XEXP (x1, 1);
    4944       904563 :           if (GET_MODE (x3) != E_DImode)
    4945              :             return -1;
    4946              :           return 0;
    4947              : 
    4948        23905 :         case E_TImode:
    4949        23905 :           x3 = XEXP (x1, 1);
    4950        23905 :           if (pattern1344 (x3, 
    4951              : E_TImode) != 0)
    4952              :             return -1;
    4953              :           return 1;
    4954              : 
    4955              :         default:
    4956              :           return -1;
    4957              :         }
    4958              : 
    4959          108 :     case STRICT_LOW_PART:
    4960          108 :       res = pattern1345 (x1);
    4961          108 :       if (res >= 0)
    4962          108 :         return res + 2; /* [2, 3] */
    4963              :       return -1;
    4964              : 
    4965              :     default:
    4966              :       return -1;
    4967              :     }
    4968              : }
    4969              : 
    4970              : int
    4971         2221 : pattern1360 (rtx x1, machine_mode i1)
    4972              : {
    4973         2221 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4974         2221 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4975         2221 :   rtx x10, x11, x12, x13, x14, x15, x16;
    4976         2221 :   int res ATTRIBUTE_UNUSED;
    4977         2221 :   x2 = XVECEXP (x1, 0, 0);
    4978         2221 :   x3 = XEXP (x2, 1);
    4979         2221 :   if (GET_MODE (x3) != i1)
    4980              :     return -1;
    4981         1451 :   x4 = XVECEXP (x1, 0, 1);
    4982         1451 :   if (GET_CODE (x4) != CLOBBER)
    4983              :     return -1;
    4984         1451 :   x5 = XEXP (x4, 0);
    4985         1451 :   if (GET_CODE (x5) != REG
    4986         1451 :       || REGNO (x5) != 17
    4987         2902 :       || GET_MODE (x5) != E_CCmode)
    4988              :     return -1;
    4989         1451 :   x6 = XEXP (x2, 0);
    4990         1451 :   operands[4] = x6;
    4991         1451 :   if (!register_operand (operands[4], i1))
    4992              :     return -1;
    4993         1334 :   x7 = XEXP (x3, 0);
    4994         1334 :   operands[3] = x7;
    4995         1334 :   if (!register_operand (operands[3], i1))
    4996              :     return -1;
    4997         1330 :   x8 = XEXP (x3, 1);
    4998         1330 :   operands[2] = x8;
    4999         1330 :   if (!nonmemory_operand (operands[2], i1))
    5000              :     return -1;
    5001          405 :   x9 = PATTERN (peep2_next_insn (2));
    5002          405 :   if (GET_CODE (x9) != SET)
    5003              :     return -1;
    5004          348 :   x10 = XEXP (x9, 1);
    5005          348 :   if (!rtx_equal_p (x10, operands[4]))
    5006              :     return -1;
    5007            7 :   x11 = XEXP (x9, 0);
    5008            7 :   if (!rtx_equal_p (x11, operands[1]))
    5009              :     return -1;
    5010            0 :   x12 = PATTERN (peep2_next_insn (3));
    5011            0 :   if (GET_CODE (x12) != SET)
    5012              :     return -1;
    5013            0 :   x13 = XEXP (x12, 1);
    5014            0 :   if (GET_CODE (x13) != COMPARE
    5015            0 :       || GET_MODE (x13) != E_CCZmode)
    5016              :     return -1;
    5017            0 :   x14 = XEXP (x12, 0);
    5018            0 :   if (GET_CODE (x14) != REG
    5019            0 :       || REGNO (x14) != 17
    5020            0 :       || GET_MODE (x14) != E_CCZmode)
    5021              :     return -1;
    5022            0 :   x15 = XEXP (x13, 0);
    5023            0 :   operands[5] = x15;
    5024            0 :   if (!register_operand (operands[5], i1))
    5025              :     return -1;
    5026            0 :   x16 = XEXP (x13, 1);
    5027            0 :   operands[6] = x16;
    5028            0 :   if (!nonmemory_operand (operands[6], i1))
    5029              :     return -1;
    5030              :   return 0;
    5031              : }
    5032              : 
    5033              : int
    5034          276 : pattern1379 (rtx x1, machine_mode i1, machine_mode i2)
    5035              : {
    5036          276 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5037          276 :   rtx x2;
    5038          276 :   int res ATTRIBUTE_UNUSED;
    5039          276 :   if (!register_operand (operands[0], i2)
    5040          276 :       || GET_MODE (x1) != i2)
    5041              :     return -1;
    5042          264 :   x2 = XEXP (x1, 0);
    5043          264 :   if (GET_MODE (x2) != i2
    5044          264 :       || !register_operand (operands[1], i2)
    5045          264 :       || !register_operand (operands[2], i1)
    5046          524 :       || !nonimmediate_operand (operands[3], i1))
    5047            4 :     return -1;
    5048              :   return 0;
    5049              : }
    5050              : 
    5051              : int
    5052          950 : pattern1389 (rtx x1, machine_mode i1, machine_mode i2)
    5053              : {
    5054          950 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5055          950 :   rtx x2, x3;
    5056          950 :   int res ATTRIBUTE_UNUSED;
    5057          950 :   if (!register_operand (operands[0], i1)
    5058          950 :       || GET_MODE (x1) != i1)
    5059              :     return -1;
    5060          903 :   x2 = XEXP (x1, 0);
    5061          903 :   if (GET_MODE (x2) != i1
    5062          903 :       || !bcst_vector_operand (operands[1], i1))
    5063            0 :     return -1;
    5064          903 :   x3 = XEXP (x2, 2);
    5065          903 :   return pattern1388 (x3, 
    5066              : i2, 
    5067          903 : i1); /* [-1, 0] */
    5068              : }
    5069              : 
    5070              : int
    5071          269 : pattern1398 (rtx x1, machine_mode i1)
    5072              : {
    5073          269 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5074          269 :   rtx x2, x3;
    5075          269 :   int res ATTRIBUTE_UNUSED;
    5076          269 :   if (!register_operand (operands[0], i1)
    5077          269 :       || GET_MODE (x1) != i1)
    5078              :     return -1;
    5079          258 :   x2 = XEXP (x1, 0);
    5080          258 :   if (GET_MODE (x2) != i1)
    5081              :     return -1;
    5082          258 :   x3 = XEXP (x2, 0);
    5083          258 :   if (GET_MODE (x3) != i1
    5084          258 :       || !nonimmediate_operand (operands[1], i1)
    5085          258 :       || !nonimmediate_operand (operands[2], i1)
    5086          516 :       || !nonimmediate_operand (operands[3], i1))
    5087            0 :     return -1;
    5088              :   return 0;
    5089              : }
    5090              : 
    5091              : int
    5092          971 : pattern1407 (rtx x1)
    5093              : {
    5094          971 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5095          971 :   rtx x2, x3;
    5096          971 :   int res ATTRIBUTE_UNUSED;
    5097          971 :   x2 = XVECEXP (x1, 0, 0);
    5098          971 :   x3 = XEXP (x2, 2);
    5099          971 :   if (XWINT (x3, 0) != 1L
    5100          971 :       || !const_0_to_255_operand (operands[3], E_SImode))
    5101            0 :     return -1;
    5102          971 :   return pattern1406 (x1); /* [-1, 2] */
    5103              : }
    5104              : 
    5105              : int
    5106          195 : pattern1412 (rtx x1, machine_mode i1)
    5107              : {
    5108          195 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5109          195 :   rtx x2, x3;
    5110          195 :   int res ATTRIBUTE_UNUSED;
    5111          195 :   if (!register_operand (operands[0], i1)
    5112          195 :       || GET_MODE (x1) != i1)
    5113              :     return -1;
    5114          184 :   x2 = XVECEXP (x1, 0, 0);
    5115          184 :   if (GET_MODE (x2) != i1)
    5116              :     return -1;
    5117          184 :   x3 = XEXP (x2, 0);
    5118          184 :   if (GET_MODE (x3) != i1
    5119          184 :       || !nonimmediate_operand (operands[1], i1)
    5120          366 :       || !register_operand (operands[2], i1))
    5121           27 :     return -1;
    5122              :   return 0;
    5123              : }
    5124              : 
    5125              : int
    5126          321 : pattern1419 (rtx x1, machine_mode i1)
    5127              : {
    5128          321 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5129          321 :   rtx x2;
    5130          321 :   int res ATTRIBUTE_UNUSED;
    5131          321 :   if (!register_operand (operands[0], i1)
    5132          321 :       || GET_MODE (x1) != i1)
    5133              :     return -1;
    5134          312 :   x2 = XVECEXP (x1, 0, 0);
    5135          312 :   if (GET_MODE (x2) != i1
    5136          312 :       || !register_operand (operands[1], i1)
    5137          312 :       || !register_operand (operands[2], i1)
    5138          619 :       || !register_operand (operands[3], i1))
    5139            5 :     return -1;
    5140              :   return 0;
    5141              : }
    5142              : 
    5143              : int
    5144          828 : pattern1426 (rtx x1, machine_mode i1, machine_mode i2)
    5145              : {
    5146          828 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5147          828 :   rtx x2, x3, x4, x5, x6;
    5148          828 :   int res ATTRIBUTE_UNUSED;
    5149          828 :   if (!register_operand (operands[0], i2)
    5150          828 :       || GET_MODE (x1) != i2)
    5151              :     return -1;
    5152          776 :   x2 = XEXP (x1, 0);
    5153          776 :   if (GET_MODE (x2) != i1)
    5154              :     return -1;
    5155          776 :   x3 = XEXP (x2, 0);
    5156          776 :   if (GET_MODE (x3) != i1)
    5157              :     return -1;
    5158          776 :   x4 = XEXP (x3, 0);
    5159          776 :   if (GET_MODE (x4) != i1)
    5160              :     return -1;
    5161          776 :   x5 = XEXP (x4, 0);
    5162          776 :   if (GET_MODE (x5) != i1
    5163          776 :       || !vector_operand (operands[1], i2))
    5164           31 :     return -1;
    5165          745 :   x6 = XEXP (x4, 1);
    5166          745 :   if (GET_MODE (x6) != i1
    5167          745 :       || !vector_operand (operands[2], i2)
    5168         1462 :       || !const1_operand (operands[3], i1))
    5169           28 :     return -1;
    5170              :   return 0;
    5171              : }
    5172              : 
    5173              : int
    5174        97096 : pattern1439 (rtx x1)
    5175              : {
    5176        97096 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5177        97096 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5178        97096 :   int res ATTRIBUTE_UNUSED;
    5179        97096 :   x2 = XVECEXP (x1, 0, 1);
    5180        97096 :   x3 = XEXP (x2, 1);
    5181        97096 :   x4 = XEXP (x3, 1);
    5182        97096 :   if (!rtx_equal_p (x4, operands[2]))
    5183              :     return -1;
    5184        97085 :   x5 = XEXP (x3, 0);
    5185        97085 :   switch (GET_CODE (x5))
    5186              :     {
    5187        97073 :     case REG:
    5188        97073 :     case SUBREG:
    5189        97073 :     case MEM:
    5190        97073 :       if (!rtx_equal_p (x5, operands[1]))
    5191              :         return -1;
    5192        97073 :       x6 = XVECEXP (x1, 0, 0);
    5193        97073 :       x7 = XEXP (x6, 1);
    5194        97073 :       x8 = XEXP (x7, 0);
    5195        97073 :       switch (GET_MODE (x8))
    5196              :         {
    5197         3079 :         case E_QImode:
    5198         3079 :           return pattern1437 (x3, 
    5199         3079 : E_QImode); /* [-1, 0] */
    5200              : 
    5201          196 :         case E_HImode:
    5202          196 :           if (pattern1437 (x3, 
    5203              : E_HImode) != 0)
    5204              :             return -1;
    5205              :           return 1;
    5206              : 
    5207        32942 :         case E_SImode:
    5208        32942 :           if (pattern1438 (x3, 
    5209              : E_SImode) != 0)
    5210              :             return -1;
    5211              :           return 2;
    5212              : 
    5213        60847 :         case E_DImode:
    5214        60847 :           if (pattern1438 (x3, 
    5215              : E_DImode) != 0)
    5216              :             return -1;
    5217              :           return 3;
    5218              : 
    5219              :         default:
    5220              :           return -1;
    5221              :         }
    5222              : 
    5223            0 :     case ZERO_EXTEND:
    5224            0 :       if (GET_MODE (x5) != E_DImode)
    5225              :         return -1;
    5226            0 :       x6 = XVECEXP (x1, 0, 0);
    5227            0 :       x7 = XEXP (x6, 1);
    5228            0 :       x8 = XEXP (x7, 0);
    5229            0 :       if (GET_MODE (x8) != E_SImode
    5230            0 :           || !nonimmediate_operand (operands[1], E_SImode)
    5231            0 :           || !x86_64_zext_immediate_operand (operands[2], E_SImode)
    5232            0 :           || !register_operand (operands[0], E_DImode)
    5233            0 :           || GET_MODE (x3) != E_DImode)
    5234            0 :         return -1;
    5235            0 :       x9 = XEXP (x5, 0);
    5236            0 :       if (!rtx_equal_p (x9, operands[1]))
    5237              :         return -1;
    5238              :       return 4;
    5239              : 
    5240              :     default:
    5241              :       return -1;
    5242              :     }
    5243              : }
    5244              : 
    5245              : int
    5246          651 : pattern1467 (rtx x1, machine_mode i1, machine_mode i2)
    5247              : {
    5248          651 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5249          651 :   rtx x2;
    5250          651 :   int res ATTRIBUTE_UNUSED;
    5251          651 :   if (!register_operand (operands[0], i1)
    5252          651 :       || GET_MODE (x1) != i1)
    5253              :     return -1;
    5254          620 :   x2 = XEXP (x1, 0);
    5255          620 :   if (GET_MODE (x2) != i1
    5256          620 :       || !register_operand (operands[1], i1)
    5257          620 :       || !register_operand (operands[2], i1)
    5258          620 :       || !bcst_vector_operand (operands[3], i1)
    5259         1239 :       || !register_operand (operands[5], i2))
    5260           31 :     return -1;
    5261              :   return 0;
    5262              : }
    5263              : 
    5264              : int
    5265           48 : pattern1476 (rtx x1, machine_mode i1, machine_mode i2)
    5266              : {
    5267           48 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5268           48 :   rtx x2, x3, x4;
    5269           48 :   int res ATTRIBUTE_UNUSED;
    5270           48 :   if (!register_operand (operands[0], i1)
    5271           48 :       || GET_MODE (x1) != i1
    5272           48 :       || !vector_operand (operands[1], i1)
    5273           96 :       || !vector_operand (operands[2], i1))
    5274            0 :     return -1;
    5275           48 :   x2 = XEXP (x1, 2);
    5276           48 :   if (GET_MODE (x2) != E_QImode)
    5277              :     return -1;
    5278           48 :   x3 = XVECEXP (x2, 0, 0);
    5279           48 :   if (GET_MODE (x3) != i1)
    5280              :     return -1;
    5281           48 :   x4 = XEXP (x3, 0);
    5282           48 :   if (GET_MODE (x4) != i2
    5283           48 :       || !vector_operand (operands[3], i2)
    5284           96 :       || !const0_operand (operands[4], i1))
    5285           24 :     return -1;
    5286              :   return 0;
    5287              : }
    5288              : 
    5289              : int
    5290         2581 : pattern1486 (rtx x1, machine_mode i1)
    5291              : {
    5292         2581 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5293         2581 :   rtx x2, x3;
    5294         2581 :   int res ATTRIBUTE_UNUSED;
    5295         2581 :   if (!register_operand (operands[0], i1)
    5296         2581 :       || GET_MODE (x1) != i1)
    5297              :     return -1;
    5298         2561 :   x2 = XVECEXP (x1, 0, 0);
    5299         2561 :   if (GET_MODE (x2) != i1)
    5300              :     return -1;
    5301         2561 :   x3 = XEXP (x2, 0);
    5302         2561 :   if (GET_MODE (x3) != i1)
    5303            0 :     return -1;
    5304              :   return 0;
    5305              : }
    5306              : 
    5307              : int
    5308          226 : pattern1491 (rtx x1)
    5309              : {
    5310          226 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5311          226 :   rtx x2;
    5312          226 :   int res ATTRIBUTE_UNUSED;
    5313          226 :   if (!register_operand (operands[0], E_V4SFmode)
    5314          226 :       || GET_MODE (x1) != E_V4SFmode)
    5315              :     return -1;
    5316          222 :   x2 = XEXP (x1, 0);
    5317          222 :   switch (GET_MODE (x2))
    5318              :     {
    5319          112 :     case E_V4HFmode:
    5320          112 :       if (!memory_operand (operands[1], E_V8HFmode))
    5321              :         return -1;
    5322              :       return 0;
    5323              : 
    5324          110 :     case E_V4BFmode:
    5325          110 :       if (!memory_operand (operands[1], E_V8BFmode))
    5326              :         return -1;
    5327              :       return 1;
    5328              : 
    5329              :     default:
    5330              :       return -1;
    5331              :     }
    5332              : }
    5333              : 
    5334              : int
    5335         1228 : pattern1500 (rtx x1)
    5336              : {
    5337         1228 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5338         1228 :   int res ATTRIBUTE_UNUSED;
    5339         1228 :   switch (GET_MODE (operands[1]))
    5340              :     {
    5341          897 :     case E_SImode:
    5342          897 :       if (!nonimmediate_operand (operands[1], E_SImode)
    5343          894 :           || !register_operand (operands[0], E_SImode)
    5344         1791 :           || GET_MODE (x1) != E_SImode)
    5345            3 :         return -1;
    5346              :       return 0;
    5347              : 
    5348          331 :     case E_DImode:
    5349          331 :       if (!nonimmediate_operand (operands[1], E_DImode)
    5350          331 :           || !register_operand (operands[0], E_DImode)
    5351          662 :           || GET_MODE (x1) != E_DImode)
    5352            0 :         return -1;
    5353              :       return 1;
    5354              : 
    5355              :     default:
    5356              :       return -1;
    5357              :     }
    5358              : }
    5359              : 
    5360              : int
    5361          265 : pattern1508 (rtx x1)
    5362              : {
    5363          265 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5364          265 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5365          265 :   int res ATTRIBUTE_UNUSED;
    5366          265 :   x2 = XVECEXP (x1, 0, 1);
    5367          265 :   x3 = XEXP (x2, 1);
    5368          265 :   x4 = XEXP (x3, 0);
    5369          265 :   if (!rtx_equal_p (x4, operands[2]))
    5370              :     return -1;
    5371          265 :   x5 = XEXP (x3, 1);
    5372          265 :   if (!rtx_equal_p (x5, operands[3]))
    5373              :     return -1;
    5374          265 :   x6 = XVECEXP (x1, 0, 2);
    5375          265 :   switch (GET_CODE (x6))
    5376              :     {
    5377           12 :     case UNSPEC:
    5378           12 :       if (XVECLEN (x6, 0) != 1
    5379           12 :           || XINT (x6, 1) != 33)
    5380              :         return -1;
    5381           12 :       x7 = XVECEXP (x6, 0, 0);
    5382           12 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5383              :         return -1;
    5384              :       return 0;
    5385              : 
    5386          253 :     case USE:
    5387          253 :       x8 = XEXP (x6, 0);
    5388          253 :       operands[4] = x8;
    5389          253 :       if (!register_operand (operands[4], E_SImode))
    5390              :         return -1;
    5391              :       return 1;
    5392              : 
    5393              :     default:
    5394              :       return -1;
    5395              :     }
    5396              : }
    5397              : 
    5398              : int
    5399          183 : pattern1523 (rtx x1, machine_mode i1, machine_mode i2)
    5400              : {
    5401          183 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5402          183 :   rtx x2, x3;
    5403          183 :   int res ATTRIBUTE_UNUSED;
    5404          183 :   if (!register_operand (operands[0], i2)
    5405          183 :       || GET_MODE (x1) != i2)
    5406              :     return -1;
    5407          173 :   x2 = XEXP (x1, 0);
    5408          173 :   if (GET_MODE (x2) != i1)
    5409              :     return -1;
    5410          173 :   x3 = XEXP (x2, 0);
    5411          173 :   return pattern1522 (x3, 
    5412          173 : i1); /* [-1, 0] */
    5413              : }
    5414              : 
    5415              : int
    5416       693330 : pattern1529 ()
    5417              : {
    5418       693330 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5419       693330 :   int res ATTRIBUTE_UNUSED;
    5420       693330 :   if (!const_0_to_3_operand (operands[3], E_VOIDmode)
    5421       645678 :       || !const_0_to_3_operand (operands[4], E_VOIDmode)
    5422       441609 :       || !const_4_to_7_operand (operands[5], E_VOIDmode)
    5423      1131491 :       || !const_4_to_7_operand (operands[6], E_VOIDmode))
    5424       258632 :     return -1;
    5425              :   return 0;
    5426              : }
    5427              : 
    5428              : int
    5429        10699 : pattern1533 ()
    5430              : {
    5431        10699 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5432        10699 :   int res ATTRIBUTE_UNUSED;
    5433        10699 :   switch (GET_MODE (operands[3]))
    5434              :     {
    5435          856 :     case E_HImode:
    5436          856 :       if (!extract_high_operator (operands[3], E_HImode))
    5437              :         return -1;
    5438              :       return 0;
    5439              : 
    5440         7201 :     case E_SImode:
    5441         7201 :       if (!extract_high_operator (operands[3], E_SImode))
    5442              :         return -1;
    5443              :       return 1;
    5444              : 
    5445         2642 :     case E_DImode:
    5446         2642 :       if (!extract_high_operator (operands[3], E_DImode))
    5447              :         return -1;
    5448              :       return 2;
    5449              : 
    5450              :     default:
    5451              :       return -1;
    5452              :     }
    5453              : }
    5454              : 
    5455              : int
    5456         4378 : pattern1543 (rtx x1)
    5457              : {
    5458         4378 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5459         4378 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5460         4378 :   rtx x10, x11, x12;
    5461         4378 :   int res ATTRIBUTE_UNUSED;
    5462         4378 :   x2 = XEXP (x1, 1);
    5463         4378 :   x3 = XEXP (x2, 0);
    5464         4378 :   x4 = XEXP (x3, 0);
    5465         4378 :   x5 = XEXP (x4, 2);
    5466         4378 :   if (maybe_ne (SUBREG_BYTE (x5), 0)
    5467         4378 :       || GET_MODE (x5) != E_QImode)
    5468              :     return -1;
    5469         4378 :   x6 = XEXP (x5, 0);
    5470         4378 :   if (GET_CODE (x6) != AND)
    5471              :     return -1;
    5472          459 :   x7 = XEXP (x2, 1);
    5473          459 :   if (GET_CODE (x7) != LABEL_REF)
    5474              :     return -1;
    5475          459 :   x8 = XEXP (x2, 2);
    5476          459 :   if (GET_CODE (x8) != PC)
    5477              :     return -1;
    5478          459 :   x9 = XEXP (x1, 0);
    5479          459 :   if (GET_CODE (x9) != PC)
    5480              :     return -1;
    5481          459 :   operands[0] = x3;
    5482          459 :   x10 = XEXP (x6, 0);
    5483          459 :   operands[2] = x10;
    5484          459 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    5485              :     return -1;
    5486          409 :   x11 = XEXP (x6, 1);
    5487          409 :   operands[3] = x11;
    5488          409 :   if (!const_int_operand (operands[3], E_VOIDmode))
    5489              :     return -1;
    5490          409 :   x12 = XEXP (x7, 0);
    5491          409 :   operands[4] = x12;
    5492          409 :   switch (GET_MODE (x4))
    5493              :     {
    5494          267 :     case E_SImode:
    5495          267 :       if (!nonimmediate_operand (operands[1], E_SImode))
    5496              :         return -1;
    5497              :       return 0;
    5498              : 
    5499          142 :     case E_DImode:
    5500          142 :       if (!nonimmediate_operand (operands[1], E_DImode))
    5501              :         return -1;
    5502              :       return 1;
    5503              : 
    5504              :     default:
    5505              :       return -1;
    5506              :     }
    5507              : }
    5508              : 
    5509              : int
    5510          366 : pattern1560 (rtx x1)
    5511              : {
    5512          366 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5513          366 :   rtx x2, x3, x4, x5;
    5514          366 :   int res ATTRIBUTE_UNUSED;
    5515          366 :   x2 = XVECEXP (x1, 0, 4);
    5516          366 :   operands[2] = x2;
    5517          366 :   if (!const_4_to_7_operand (operands[2], E_VOIDmode))
    5518              :     return -1;
    5519          366 :   x3 = XVECEXP (x1, 0, 5);
    5520          366 :   operands[3] = x3;
    5521          366 :   if (!const_4_to_7_operand (operands[3], E_VOIDmode))
    5522              :     return -1;
    5523          366 :   x4 = XVECEXP (x1, 0, 6);
    5524          366 :   operands[4] = x4;
    5525          366 :   if (!const_4_to_7_operand (operands[4], E_VOIDmode))
    5526              :     return -1;
    5527          366 :   x5 = XVECEXP (x1, 0, 7);
    5528          366 :   operands[5] = x5;
    5529          366 :   if (!const_4_to_7_operand (operands[5], E_VOIDmode))
    5530              :     return -1;
    5531              :   return 0;
    5532              : }
    5533              : 
    5534              : int
    5535        67674 : pattern1570 (rtx x1)
    5536              : {
    5537        67674 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5538        67674 :   rtx x2, x3;
    5539        67674 :   int res ATTRIBUTE_UNUSED;
    5540        67674 :   if (!nonimmediate_operand (operands[0], E_V4SFmode)
    5541        67674 :       || GET_MODE (x1) != E_V4SFmode)
    5542              :     return -1;
    5543        59084 :   x2 = XEXP (x1, 0);
    5544        59084 :   if (GET_MODE (x2) != E_V8SFmode
    5545        59084 :       || !nonimmediate_operand (operands[1], E_V4SFmode))
    5546           25 :     return -1;
    5547        59059 :   x3 = XEXP (x2, 1);
    5548        59059 :   operands[2] = x3;
    5549        59059 :   if (!nonimmediate_operand (operands[2], E_V4SFmode))
    5550              :     return -1;
    5551              :   return 0;
    5552              : }
    5553              : 
    5554              : int
    5555        13426 : pattern1577 (rtx x1, machine_mode i1)
    5556              : {
    5557        13426 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5558        13426 :   int res ATTRIBUTE_UNUSED;
    5559        13426 :   if (!nonimmediate_operand (operands[0], i1)
    5560        13426 :       || GET_MODE (x1) != i1
    5561        13426 :       || !nonimmediate_operand (operands[1], i1)
    5562        25459 :       || !ix86_carry_flag_operator (operands[2], i1))
    5563         1393 :     return -1;
    5564              :   return 0;
    5565              : }
    5566              : 
    5567              : int
    5568          137 : pattern1584 (rtx x1, int *pnum_clobbers)
    5569              : {
    5570          137 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5571          137 :   rtx x2, x3;
    5572          137 :   int res ATTRIBUTE_UNUSED;
    5573          137 :   switch (GET_CODE (x1))
    5574              :     {
    5575            6 :     case UNSPEC:
    5576            6 :       if (pnum_clobbers == NULL
    5577            6 :           || XVECLEN (x1, 0) != 1
    5578            6 :           || XINT (x1, 1) != 33)
    5579              :         return -1;
    5580            6 :       x2 = XVECEXP (x1, 0, 0);
    5581            6 :       if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5582              :         return -1;
    5583              :       return 0;
    5584              : 
    5585           95 :     case CLOBBER:
    5586           95 :       x3 = XEXP (x1, 0);
    5587           95 :       if (GET_CODE (x3) != REG
    5588           95 :           || REGNO (x3) != 17
    5589          190 :           || GET_MODE (x3) != E_CCmode)
    5590              :         return -1;
    5591              :       return 1;
    5592              : 
    5593            0 :     case USE:
    5594            0 :       if (pnum_clobbers == NULL)
    5595              :         return -1;
    5596            0 :       x3 = XEXP (x1, 0);
    5597            0 :       operands[4] = x3;
    5598            0 :       if (!register_operand (operands[4], E_SImode))
    5599              :         return -1;
    5600              :       return 2;
    5601              : 
    5602              :     default:
    5603              :       return -1;
    5604              :     }
    5605              : }
    5606              : 
    5607              : int
    5608          261 : pattern1596 (rtx x1, machine_mode i1)
    5609              : {
    5610          261 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5611          261 :   rtx x2, x3;
    5612          261 :   int res ATTRIBUTE_UNUSED;
    5613          261 :   if (!register_operand (operands[0], i1)
    5614          261 :       || GET_MODE (x1) != i1
    5615          522 :       || !nonimmediate_operand (operands[3], i1))
    5616           95 :     return -1;
    5617          166 :   x2 = XEXP (x1, 0);
    5618          166 :   x3 = XEXP (x2, 0);
    5619          166 :   return pattern1595 (x3, 
    5620          166 : i1); /* [-1, 1] */
    5621              : }
    5622              : 
    5623              : int
    5624         1535 : pattern1603 (rtx x1, machine_mode i1, machine_mode i2)
    5625              : {
    5626         1535 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5627         1535 :   rtx x2, x3;
    5628         1535 :   int res ATTRIBUTE_UNUSED;
    5629         1535 :   if (!register_operand (operands[0], i1)
    5630         1535 :       || GET_MODE (x1) != i1)
    5631              :     return -1;
    5632         1502 :   x2 = XVECEXP (x1, 0, 0);
    5633         1502 :   if (GET_MODE (x2) != i1)
    5634              :     return -1;
    5635         1502 :   x3 = XEXP (x2, 0);
    5636         1502 :   if (GET_MODE (x3) != i1
    5637         1502 :       || !register_operand (operands[2], i1)
    5638         2992 :       || !register_operand (operands[4], i2))
    5639           22 :     return -1;
    5640              :   return 0;
    5641              : }
    5642              : 
    5643              : int
    5644          507 : pattern1613 (rtx x1, machine_mode i1, machine_mode i2)
    5645              : {
    5646          507 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5647          507 :   rtx x2, x3, x4;
    5648          507 :   int res ATTRIBUTE_UNUSED;
    5649          507 :   if (!register_operand (operands[0], i2)
    5650          507 :       || GET_MODE (x1) != i2)
    5651              :     return -1;
    5652          493 :   x2 = XVECEXP (x1, 0, 0);
    5653          493 :   if (GET_MODE (x2) != i2)
    5654              :     return -1;
    5655          493 :   x3 = XEXP (x2, 0);
    5656          493 :   if (GET_MODE (x3) != i2)
    5657              :     return -1;
    5658          493 :   x4 = XEXP (x3, 0);
    5659          493 :   if (GET_MODE (x4) != i2
    5660          493 :       || !register_operand (operands[1], i2)
    5661          981 :       || pattern1605 (
    5662              : i1, 
    5663              : i2) != 0)
    5664           17 :     return -1;
    5665              :   return 0;
    5666              : }
    5667              : 
    5668              : int
    5669          356 : pattern1621 (rtx x1, machine_mode i1)
    5670              : {
    5671          356 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5672          356 :   rtx x2, x3, x4;
    5673          356 :   int res ATTRIBUTE_UNUSED;
    5674          356 :   if (!vsib_mem_operator (operands[5], i1)
    5675          356 :       || !register_operand (operands[6], E_QImode))
    5676          114 :     return -1;
    5677          242 :   x2 = XEXP (x1, 1);
    5678          242 :   if (GET_MODE (x2) != i1)
    5679              :     return -1;
    5680          242 :   x3 = XEXP (x1, 0);
    5681          242 :   x4 = XEXP (x3, 0);
    5682          242 :   switch (GET_MODE (x4))
    5683              :     {
    5684              :     case E_SImode:
    5685              :       return 0;
    5686              : 
    5687          242 :     case E_DImode:
    5688          242 :       return 1;
    5689              : 
    5690              :     default:
    5691              :       return -1;
    5692              :     }
    5693              : }
    5694              : 
    5695              : int
    5696         1101 : pattern1629 (rtx x1, machine_mode i1, machine_mode i2)
    5697              : {
    5698         1101 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5699         1101 :   rtx x2, x3;
    5700         1101 :   int res ATTRIBUTE_UNUSED;
    5701         1101 :   if (!register_operand (operands[0], i2)
    5702         1043 :       || GET_MODE (x1) != i2
    5703         1043 :       || !register_operand (operands[6], E_QImode)
    5704         1319 :       || !vsib_mem_operator (operands[5], i1))
    5705          883 :     return -1;
    5706          218 :   x2 = XVECEXP (x1, 0, 2);
    5707          218 :   x3 = XEXP (x2, 0);
    5708          218 :   switch (GET_MODE (x3))
    5709              :     {
    5710            0 :     case E_SImode:
    5711            0 :       return pattern1628 (
    5712            0 : E_SImode); /* [-1, 1] */
    5713              : 
    5714          218 :     case E_DImode:
    5715          218 :       res = pattern1628 (
    5716              : E_DImode);
    5717          218 :       if (res >= 0)
    5718           96 :         return res + 2; /* [2, 3] */
    5719              :       return -1;
    5720              : 
    5721              :     default:
    5722              :       return -1;
    5723              :     }
    5724              : }
    5725              : 
    5726              : int
    5727           44 : pattern1641 (rtx x1, machine_mode i1)
    5728              : {
    5729           44 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5730           44 :   rtx x2;
    5731           44 :   int res ATTRIBUTE_UNUSED;
    5732           44 :   if (!nonimmediate_operand (operands[0], i1)
    5733           44 :       || GET_MODE (x1) != i1)
    5734              :     return -1;
    5735           44 :   x2 = XEXP (x1, 0);
    5736           44 :   if (GET_MODE (x2) != i1
    5737           44 :       || !ix86_carry_flag_operator (operands[4], i1)
    5738           44 :       || !nonimmediate_operand (operands[1], i1)
    5739           88 :       || !general_operand (operands[2], i1))
    5740            0 :     return -1;
    5741              :   return 0;
    5742              : }
    5743              : 
    5744              : int
    5745           13 : pattern1647 (rtx x1, int *pnum_clobbers)
    5746              : {
    5747           13 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5748           13 :   rtx x2, x3, x4, x5, x6;
    5749           13 :   int res ATTRIBUTE_UNUSED;
    5750           13 :   x2 = XVECEXP (x1, 0, 1);
    5751           13 :   x3 = XEXP (x2, 1);
    5752           13 :   x4 = XEXP (x3, 0);
    5753           13 :   if (!rtx_equal_p (x4, operands[2]))
    5754              :     return -1;
    5755           13 :   x5 = XEXP (x3, 1);
    5756           13 :   if (!rtx_equal_p (x5, operands[3]))
    5757              :     return -1;
    5758           13 :   x6 = XVECEXP (x1, 0, 2);
    5759           13 :   return pattern1584 (x6, pnum_clobbers); /* [-1, 2] */
    5760              : }
    5761              : 
    5762              : int
    5763          422 : pattern1657 (rtx x1, machine_mode i1, machine_mode i2)
    5764              : {
    5765          422 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5766          422 :   rtx x2, x3, x4, x5, x6;
    5767          422 :   int res ATTRIBUTE_UNUSED;
    5768          422 :   if (!register_operand (operands[0], i1)
    5769          422 :       || GET_MODE (x1) != i1)
    5770              :     return -1;
    5771          402 :   x2 = XEXP (x1, 0);
    5772          402 :   if (GET_MODE (x2) != i2)
    5773              :     return -1;
    5774          402 :   x3 = XEXP (x2, 0);
    5775          402 :   if (GET_MODE (x3) != i2)
    5776              :     return -1;
    5777          402 :   x4 = XEXP (x3, 0);
    5778          402 :   if (GET_MODE (x4) != i2)
    5779              :     return -1;
    5780          402 :   x5 = XEXP (x4, 0);
    5781          402 :   if (GET_MODE (x5) != i2
    5782          402 :       || !register_mmxmem_operand (operands[1], i1))
    5783           16 :     return -1;
    5784          386 :   x6 = XEXP (x4, 1);
    5785          386 :   if (GET_MODE (x6) != i2
    5786          386 :       || !register_mmxmem_operand (operands[2], i1))
    5787           12 :     return -1;
    5788              :   return 0;
    5789              : }
    5790              : 
    5791              : int
    5792         1084 : pattern1667 (rtx x1)
    5793              : {
    5794         1084 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5795         1084 :   rtx x2, x3;
    5796         1084 :   int res ATTRIBUTE_UNUSED;
    5797         1084 :   x2 = XVECEXP (x1, 0, 0);
    5798         1084 :   x3 = XEXP (x2, 1);
    5799         1084 :   if (!rtx_equal_p (x3, operands[1]))
    5800              :     return -1;
    5801         1084 :   switch (GET_MODE (operands[0]))
    5802              :     {
    5803          484 :     case E_V8HFmode:
    5804          484 :       return pattern1666 (x1, 
    5805          484 : E_V8HFmode); /* [-1, 0] */
    5806              : 
    5807          300 :     case E_V4SFmode:
    5808          300 :       if (pattern1666 (x1, 
    5809              : E_V4SFmode) != 0)
    5810              :         return -1;
    5811              :       return 1;
    5812              : 
    5813          300 :     case E_V2DFmode:
    5814          300 :       if (pattern1666 (x1, 
    5815              : E_V2DFmode) != 0)
    5816              :         return -1;
    5817              :       return 2;
    5818              : 
    5819              :     default:
    5820              :       return -1;
    5821              :     }
    5822              : }
    5823              : 
    5824              : int
    5825          258 : pattern1676 (rtx x1, machine_mode i1, machine_mode i2)
    5826              : {
    5827          258 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5828          258 :   rtx x2, x3;
    5829          258 :   int res ATTRIBUTE_UNUSED;
    5830          258 :   if (!register_operand (operands[0], i2)
    5831          238 :       || GET_MODE (x1) != i2
    5832          238 :       || !register_operand (operands[1], i2)
    5833          238 :       || !register_operand (operands[7], E_QImode)
    5834          402 :       || !vsib_mem_operator (operands[6], i1))
    5835          114 :     return -1;
    5836          144 :   x2 = XVECEXP (x1, 0, 2);
    5837          144 :   x3 = XEXP (x2, 0);
    5838          144 :   switch (GET_MODE (x3))
    5839              :     {
    5840            0 :     case E_SImode:
    5841            0 :       return pattern1675 (
    5842            0 : E_SImode); /* [-1, 1] */
    5843              : 
    5844          144 :     case E_DImode:
    5845          144 :       res = pattern1675 (
    5846              : E_DImode);
    5847          144 :       if (res >= 0)
    5848          100 :         return res + 2; /* [2, 3] */
    5849              :       return -1;
    5850              : 
    5851              :     default:
    5852              :       return -1;
    5853              :     }
    5854              : }
    5855              : 
    5856              : int
    5857            0 : pattern1689 (rtx x1, machine_mode i1, machine_mode i2)
    5858              : {
    5859            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5860            0 :   rtx x2, x3;
    5861            0 :   int res ATTRIBUTE_UNUSED;
    5862            0 :   if (!register_operand (operands[0], i1)
    5863            0 :       || !addsub_vs_operator (operands[7], i1)
    5864            0 :       || GET_MODE (x1) != i2)
    5865            0 :     return -1;
    5866            0 :   x2 = XEXP (x1, 0);
    5867            0 :   if (GET_MODE (x2) != i1
    5868            0 :       || !vector_operand (operands[1], i1)
    5869            0 :       || !vector_operand (operands[2], i1))
    5870            0 :     return -1;
    5871            0 :   x3 = XEXP (x1, 1);
    5872            0 :   if (GET_MODE (x3) != i1
    5873            0 :       || !register_operand (operands[3], i1)
    5874            0 :       || !vector_operand (operands[4], i1))
    5875            0 :     return -1;
    5876              :   return 0;
    5877              : }
    5878              : 
    5879              : int
    5880         5803 : pattern1701 (rtx x1, machine_mode i1, machine_mode i2)
    5881              : {
    5882         5803 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5883         5803 :   rtx x2;
    5884         5803 :   int res ATTRIBUTE_UNUSED;
    5885         5803 :   if (!register_operand (operands[0], i1)
    5886         5803 :       || GET_MODE (x1) != i1)
    5887              :     return -1;
    5888         5782 :   x2 = XEXP (x1, 0);
    5889         5782 :   if (GET_MODE (x2) != i2
    5890         5782 :       || !register_operand (operands[1], i1)
    5891         5701 :       || !nonimmediate_operand (operands[2], i1)
    5892         5665 :       || !const_0_to_7_operand (operands[3], E_VOIDmode)
    5893        10289 :       || pattern1700 () != 0)
    5894         4114 :     return -1;
    5895              :   return 0;
    5896              : }
    5897              : 
    5898              : int
    5899       242695 : pattern1709 (rtx x1, machine_mode i1)
    5900              : {
    5901       242695 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5902       242695 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5903       242695 :   int res ATTRIBUTE_UNUSED;
    5904       242695 :   x2 = XVECEXP (x1, 0, 0);
    5905       242695 :   x3 = XEXP (x2, 0);
    5906       242695 :   if (GET_MODE (x3) != i1)
    5907              :     return -1;
    5908       242695 :   x4 = XEXP (x2, 1);
    5909       242695 :   if (GET_MODE (x4) != i1)
    5910              :     return -1;
    5911       242695 :   x5 = XEXP (x4, 0);
    5912       242695 :   if (GET_MODE (x5) != i1)
    5913              :     return -1;
    5914       242695 :   x6 = XVECEXP (x1, 0, 1);
    5915       242695 :   x7 = XEXP (x6, 0);
    5916       242695 :   if (GET_MODE (x7) != i1)
    5917              :     return -1;
    5918       242695 :   x8 = XEXP (x6, 1);
    5919       242695 :   if (GET_MODE (x8) != i1)
    5920              :     return -1;
    5921       242695 :   x9 = XEXP (x8, 0);
    5922       242695 :   if (GET_MODE (x9) != i1)
    5923            0 :     return -1;
    5924              :   return 0;
    5925              : }
    5926              : 
    5927              : int
    5928          447 : pattern1720 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5929              : {
    5930          447 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5931          447 :   rtx x2, x3;
    5932          447 :   int res ATTRIBUTE_UNUSED;
    5933          447 :   if (!register_operand (operands[0], i2)
    5934          447 :       || GET_MODE (x1) != i2)
    5935              :     return -1;
    5936          441 :   x2 = XVECEXP (x1, 0, 0);
    5937          441 :   if (GET_MODE (x2) != i2)
    5938              :     return -1;
    5939          441 :   x3 = XEXP (x2, 0);
    5940          441 :   if (GET_MODE (x3) != i2
    5941          441 :       || !register_operand (operands[1], i2)
    5942          441 :       || !register_operand (operands[2], i2)
    5943          441 :       || !nonimmediate_operand (operands[3], i1)
    5944          882 :       || !register_operand (operands[5], i3))
    5945            0 :     return -1;
    5946              :   return 0;
    5947              : }
    5948              : 
    5949              : int
    5950       100540 : pattern1729 (rtx x1)
    5951              : {
    5952       100540 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5953       100540 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5954       100540 :   int res ATTRIBUTE_UNUSED;
    5955       100540 :   x2 = XEXP (x1, 1);
    5956       100540 :   x3 = XVECEXP (x2, 0, 4);
    5957       100540 :   if (XWINT (x3, 0) != 6L)
    5958              :     return -1;
    5959       100540 :   x4 = XVECEXP (x2, 0, 5);
    5960       100540 :   if (XWINT (x4, 0) != 14L)
    5961              :     return -1;
    5962       100540 :   x5 = XVECEXP (x2, 0, 6);
    5963       100540 :   if (XWINT (x5, 0) != 7L)
    5964              :     return -1;
    5965       100540 :   x6 = XVECEXP (x2, 0, 7);
    5966       100540 :   if (XWINT (x6, 0) != 15L)
    5967              :     return -1;
    5968       100540 :   x7 = XEXP (x1, 0);
    5969       100540 :   x8 = XEXP (x7, 1);
    5970       100540 :   operands[2] = x8;
    5971       100540 :   return 0;
    5972              : }
    5973              : 
    5974              : int
    5975         1570 : pattern1736 (machine_mode i1)
    5976              : {
    5977         1570 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5978         1570 :   int res ATTRIBUTE_UNUSED;
    5979         1570 :   if (!vsib_address_operand (operands[0], i1))
    5980              :     return -1;
    5981         1518 :   switch (GET_MODE (operands[2]))
    5982              :     {
    5983          790 :     case E_V4SImode:
    5984          790 :       if (!register_operand (operands[2], E_V4SImode))
    5985              :         return -1;
    5986              :       return 0;
    5987              : 
    5988          728 :     case E_V2DImode:
    5989          728 :       if (!register_operand (operands[2], E_V2DImode))
    5990              :         return -1;
    5991              :       return 1;
    5992              : 
    5993              :     default:
    5994              :       return -1;
    5995              :     }
    5996              : }
    5997              : 
    5998              : int
    5999          123 : pattern1744 (machine_mode i1)
    6000              : {
    6001          123 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6002          123 :   int res ATTRIBUTE_UNUSED;
    6003          123 :   if (!vsib_address_operand (operands[3], i1))
    6004              :     return -1;
    6005          119 :   switch (GET_MODE (operands[2]))
    6006              :     {
    6007           34 :     case E_V4SImode:
    6008           34 :       if (!register_operand (operands[2], E_V4SImode))
    6009              :         return -1;
    6010              :       return 0;
    6011              : 
    6012           85 :     case E_V4DImode:
    6013           85 :       if (!register_operand (operands[2], E_V4DImode))
    6014              :         return -1;
    6015              :       return 1;
    6016              : 
    6017              :     default:
    6018              :       return -1;
    6019              :     }
    6020              : }
    6021              : 
    6022              : int
    6023        13974 : pattern1752 (rtx x1, machine_mode i1)
    6024              : {
    6025        13974 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6026        13974 :   rtx x2, x3, x4, x5;
    6027        13974 :   int res ATTRIBUTE_UNUSED;
    6028        13974 :   if (!register_operand (operands[0], i1))
    6029              :     return -1;
    6030        13974 :   x2 = XVECEXP (x1, 0, 0);
    6031        13974 :   x3 = XEXP (x2, 1);
    6032        13974 :   if (GET_MODE (x3) != i1)
    6033              :     return -1;
    6034        13974 :   x4 = XVECEXP (x1, 0, 1);
    6035        13974 :   if (GET_MODE (x4) != i1)
    6036              :     return -1;
    6037        13974 :   x5 = XVECEXP (x4, 0, 1);
    6038        13974 :   if (GET_MODE (x5) != i1
    6039        13974 :       || !register_operand (operands[4], i1))
    6040            0 :     return -1;
    6041              :   return 0;
    6042              : }
    6043              : 
    6044              : int
    6045           81 : pattern1760 (rtx x1, machine_mode i1)
    6046              : {
    6047           81 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6048           81 :   rtx x2, x3, x4, x5, x6;
    6049           81 :   int res ATTRIBUTE_UNUSED;
    6050           81 :   if (!register_operand (operands[0], i1)
    6051           81 :       || GET_MODE (x1) != i1)
    6052              :     return -1;
    6053           78 :   x2 = XVECEXP (x1, 0, 0);
    6054           78 :   if (GET_MODE (x2) != i1)
    6055              :     return -1;
    6056           78 :   x3 = XEXP (x2, 0);
    6057           78 :   if (GET_MODE (x3) != i1)
    6058              :     return -1;
    6059           78 :   x4 = XEXP (x3, 0);
    6060           78 :   if (GET_MODE (x4) != i1)
    6061              :     return -1;
    6062           78 :   x5 = XEXP (x4, 0);
    6063           78 :   if (GET_MODE (x5) != i1
    6064           78 :       || !register_operand (operands[2], i1)
    6065          156 :       || !nonimmediate_operand (operands[1], i1))
    6066            0 :     return -1;
    6067           78 :   x6 = XEXP (x4, 2);
    6068           78 :   if (GET_MODE (x6) != i1
    6069           78 :       || !register_operand (operands[3], i1)
    6070          156 :       || !const0_operand (operands[4], i1))
    6071            0 :     return -1;
    6072              :   return 0;
    6073              : }
    6074              : 
    6075              : int
    6076          519 : pattern1770 (machine_mode i1)
    6077              : {
    6078          519 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6079          519 :   int res ATTRIBUTE_UNUSED;
    6080          519 :   if (!vsib_address_operand (operands[4], i1))
    6081              :     return -1;
    6082          519 :   switch (GET_MODE (operands[3]))
    6083              :     {
    6084          291 :     case E_V4SImode:
    6085          291 :       if (!register_operand (operands[3], E_V4SImode))
    6086              :         return -1;
    6087              :       return 0;
    6088              : 
    6089          228 :     case E_V4DImode:
    6090          228 :       if (!register_operand (operands[3], E_V4DImode))
    6091              :         return -1;
    6092              :       return 1;
    6093              : 
    6094              :     default:
    6095              :       return -1;
    6096              :     }
    6097              : }
    6098              : 
    6099              : int
    6100            9 : pattern1778 (rtx x1, machine_mode i1)
    6101              : {
    6102            9 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6103            9 :   int res ATTRIBUTE_UNUSED;
    6104            9 :   if (!memory_operand (operands[0], i1)
    6105            1 :       || !const_int_operand (operands[2], i1)
    6106            1 :       || GET_MODE (x1) != i1
    6107           10 :       || !const_int_operand (operands[1], i1))
    6108            8 :     return -1;
    6109              :   return 0;
    6110              : }
    6111              : 
    6112              : int
    6113            0 : pattern1787 (rtx x1, machine_mode i1)
    6114              : {
    6115            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6116            0 :   rtx x2, x3, x4, x5;
    6117            0 :   int res ATTRIBUTE_UNUSED;
    6118            0 :   x2 = XVECEXP (x1, 0, 0);
    6119            0 :   x3 = XEXP (x2, 0);
    6120            0 :   if (GET_MODE (x3) != i1
    6121            0 :       || !register_operand (operands[1], i1)
    6122            0 :       || !register_operand (operands[2], i1))
    6123            0 :     return -1;
    6124            0 :   x4 = XVECEXP (x1, 0, 1);
    6125            0 :   if (GET_MODE (x4) != i1)
    6126              :     return -1;
    6127            0 :   x5 = XEXP (x4, 0);
    6128            0 :   if (GET_MODE (x5) != i1)
    6129              :     return -1;
    6130              :   return 0;
    6131              : }
    6132              : 
    6133              : int
    6134         1277 : pattern1794 (machine_mode i1, machine_mode i2, machine_mode i3)
    6135              : {
    6136         1277 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6137         1277 :   int res ATTRIBUTE_UNUSED;
    6138         1277 :   if (!register_operand (operands[2], i3)
    6139         1201 :       || !register_operand (operands[6], i1)
    6140          993 :       || !register_operand (operands[3], i2)
    6141         2162 :       || !scratch_operand (operands[1], i1))
    6142          392 :     return -1;
    6143              :   return 0;
    6144              : }
    6145              : 
    6146              : int
    6147         1016 : pattern1798 (machine_mode i1)
    6148              : {
    6149         1016 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6150         1016 :   int res ATTRIBUTE_UNUSED;
    6151         1016 :   if (!vsib_address_operand (operands[2], i1))
    6152              :     return -1;
    6153          976 :   switch (GET_MODE (operands[3]))
    6154              :     {
    6155          377 :     case E_V4SImode:
    6156          377 :       if (!register_operand (operands[3], E_V4SImode))
    6157              :         return -1;
    6158              :       return 0;
    6159              : 
    6160          599 :     case E_V2DImode:
    6161          599 :       if (!register_operand (operands[3], E_V2DImode))
    6162              :         return -1;
    6163              :       return 1;
    6164              : 
    6165              :     default:
    6166              :       return -1;
    6167              :     }
    6168              : }
    6169              : 
    6170              : int
    6171          822 : pattern1806 (rtx x1)
    6172              : {
    6173          822 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6174          822 :   rtx x2, x3, x4, x5, x6, x7;
    6175          822 :   int res ATTRIBUTE_UNUSED;
    6176          822 :   x2 = XEXP (x1, 1);
    6177          822 :   x3 = XEXP (x2, 0);
    6178          822 :   x4 = XEXP (x3, 0);
    6179          822 :   if (GET_CODE (x4) != REG
    6180          822 :       || REGNO (x4) != 17
    6181         1644 :       || GET_MODE (x4) != E_CCZmode)
    6182              :     return -1;
    6183          822 :   x5 = XEXP (x3, 1);
    6184          822 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6185              :     return -1;
    6186          822 :   x6 = XEXP (x2, 2);
    6187          822 :   if (GET_CODE (x6) != PC)
    6188              :     return -1;
    6189          773 :   x7 = XEXP (x1, 0);
    6190          773 :   if (GET_CODE (x7) != PC)
    6191            0 :     return -1;
    6192              :   return 0;
    6193              : }
    6194              : 
    6195              : int
    6196         1020 : pattern1816 (machine_mode i1)
    6197              : {
    6198         1020 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6199         1020 :   int res ATTRIBUTE_UNUSED;
    6200         1020 :   if (!vsib_address_operand (operands[3], i1))
    6201              :     return -1;
    6202          988 :   switch (GET_MODE (operands[4]))
    6203              :     {
    6204          441 :     case E_V4SImode:
    6205          441 :       if (!register_operand (operands[4], E_V4SImode))
    6206              :         return -1;
    6207              :       return 0;
    6208              : 
    6209          547 :     case E_V2DImode:
    6210          547 :       if (!register_operand (operands[4], E_V2DImode))
    6211              :         return -1;
    6212              :       return 1;
    6213              : 
    6214              :     default:
    6215              :       return -1;
    6216              :     }
    6217              : }
    6218              : 
    6219              : int
    6220         3806 : pattern1823 (rtx x1, machine_mode i1)
    6221              : {
    6222         3806 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6223         3806 :   rtx x2;
    6224         3806 :   int res ATTRIBUTE_UNUSED;
    6225         3806 :   if (!x86_64_general_operand (operands[2], i1)
    6226         3766 :       || !nonimmediate_operand (operands[0], i1)
    6227         7572 :       || GET_MODE (x1) != i1)
    6228           40 :     return -1;
    6229         3766 :   x2 = XEXP (x1, 0);
    6230         3766 :   if (GET_MODE (x2) != i1)
    6231              :     return -1;
    6232              :   return 0;
    6233              : }
    6234              : 
    6235              : int
    6236        28737 : pattern1828 (rtx x1, machine_mode i1, machine_mode i2)
    6237              : {
    6238        28737 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6239        28737 :   rtx x2, x3, x4, x5, x6;
    6240        28737 :   int res ATTRIBUTE_UNUSED;
    6241        28737 :   x2 = XVECEXP (x1, 0, 0);
    6242        28737 :   x3 = XEXP (x2, 1);
    6243        28737 :   x4 = XEXP (x3, 0);
    6244        28737 :   x5 = XEXP (x4, 0);
    6245        28737 :   if (GET_MODE (x5) != i2
    6246        28737 :       || !nonimmediate_operand (operands[1], i1))
    6247          150 :     return -1;
    6248        28587 :   x6 = XEXP (x4, 1);
    6249        28587 :   if (GET_MODE (x6) != i2
    6250        28587 :       || !x86_64_sext_operand (operands[2], i1)
    6251        57174 :       || pattern1827 (x1, 
    6252              : i1, 
    6253              : i2) != 0)
    6254            0 :     return -1;
    6255              :   return 0;
    6256              : }
    6257              : 
    6258              : int
    6259          894 : pattern1837 (rtx x1, machine_mode i1, machine_mode i2)
    6260              : {
    6261          894 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6262          894 :   rtx x2, x3, x4, x5, x6;
    6263          894 :   int res ATTRIBUTE_UNUSED;
    6264          894 :   if (!register_operand (operands[0], i1)
    6265          894 :       || GET_MODE (x1) != i1)
    6266              :     return -1;
    6267          842 :   x2 = XEXP (x1, 0);
    6268          842 :   if (GET_MODE (x2) != i1)
    6269              :     return -1;
    6270          842 :   x3 = XEXP (x2, 0);
    6271          842 :   if (GET_MODE (x3) != i2
    6272          842 :       || !nonimmediate_operand (operands[1], i1))
    6273            0 :     return -1;
    6274          842 :   x4 = XEXP (x1, 1);
    6275          842 :   operands[2] = x4;
    6276          842 :   if (!nonimm_or_0_operand (operands[2], i1))
    6277              :     return -1;
    6278          822 :   x5 = XEXP (x1, 2);
    6279          822 :   operands[3] = x5;
    6280          822 :   x6 = XEXP (x3, 1);
    6281          822 :   if (!rtx_equal_p (x6, operands[1]))
    6282              :     return -1;
    6283              :   return 0;
    6284              : }
    6285              : 
    6286              : int
    6287          380 : pattern1847 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    6288              : {
    6289          380 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6290          380 :   rtx x2, x3, x4;
    6291          380 :   int res ATTRIBUTE_UNUSED;
    6292          380 :   if (!register_operand (operands[0], i3)
    6293          380 :       || GET_MODE (x1) != i3)
    6294              :     return -1;
    6295          364 :   x2 = XEXP (x1, 0);
    6296          364 :   if (GET_MODE (x2) != i3)
    6297              :     return -1;
    6298          364 :   x3 = XEXP (x2, 0);
    6299          364 :   if (GET_MODE (x3) != i2
    6300          364 :       || !register_operand (operands[1], i1))
    6301            0 :     return -1;
    6302          364 :   x4 = XEXP (x2, 1);
    6303          364 :   if (GET_MODE (x4) != i2
    6304          364 :       || !vector_operand (operands[2], i1))
    6305            0 :     return -1;
    6306              :   return 0;
    6307              : }
    6308              : 
    6309              : int
    6310          625 : pattern1854 (rtx x1, machine_mode i1, machine_mode i2)
    6311              : {
    6312          625 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6313          625 :   int res ATTRIBUTE_UNUSED;
    6314          625 :   if (!register_operand (operands[7], i1)
    6315          589 :       || !register_operand (operands[3], i2)
    6316         1197 :       || !scratch_operand (operands[2], i1))
    6317           53 :     return -1;
    6318          572 :   switch (GET_MODE (x1))
    6319              :     {
    6320            0 :     case E_SImode:
    6321            0 :       if (!vsib_address_operand (operands[4], E_SImode))
    6322              :         return -1;
    6323              :       return 0;
    6324              : 
    6325          572 :     case E_DImode:
    6326          572 :       if (!vsib_address_operand (operands[4], E_DImode))
    6327              :         return -1;
    6328              :       return 1;
    6329              : 
    6330              :     default:
    6331              :       return -1;
    6332              :     }
    6333              : }
    6334              : 
    6335              : int
    6336          580 : pattern1864 (rtx x1, machine_mode i1)
    6337              : {
    6338          580 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6339          580 :   int res ATTRIBUTE_UNUSED;
    6340          580 :   if (!register_operand (operands[3], i1))
    6341              :     return -1;
    6342          558 :   switch (GET_MODE (x1))
    6343              :     {
    6344            0 :     case E_SImode:
    6345            0 :       if (!vsib_address_operand (operands[4], E_SImode))
    6346              :         return -1;
    6347              :       return 0;
    6348              : 
    6349          558 :     case E_DImode:
    6350          558 :       if (!vsib_address_operand (operands[4], E_DImode))
    6351              :         return -1;
    6352              :       return 1;
    6353              : 
    6354              :     default:
    6355              :       return -1;
    6356              :     }
    6357              : }
    6358              : 
    6359              : int
    6360          666 : pattern1868 (rtx x1)
    6361              : {
    6362          666 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6363          666 :   rtx x2, x3, x4, x5;
    6364          666 :   int res ATTRIBUTE_UNUSED;
    6365          666 :   x2 = XVECEXP (x1, 0, 4);
    6366          666 :   if (XWINT (x2, 0) != 6L)
    6367              :     return -1;
    6368          666 :   x3 = XVECEXP (x1, 0, 5);
    6369          666 :   if (XWINT (x3, 0) != 22L)
    6370              :     return -1;
    6371          666 :   x4 = XVECEXP (x1, 0, 6);
    6372          666 :   if (XWINT (x4, 0) != 7L)
    6373              :     return -1;
    6374          666 :   x5 = XVECEXP (x1, 0, 7);
    6375          666 :   if (XWINT (x5, 0) != 23L)
    6376            0 :     return -1;
    6377              :   return 0;
    6378              : }
    6379              : 
    6380              : int
    6381          503 : pattern1873 (rtx x1, machine_mode i1, machine_mode i2)
    6382              : {
    6383          503 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6384          503 :   rtx x2, x3, x4, x5, x6, x7;
    6385          503 :   int res ATTRIBUTE_UNUSED;
    6386          503 :   if (!nonimmediate_operand (operands[1], i1))
    6387              :     return -1;
    6388          503 :   x2 = XVECEXP (x1, 0, 0);
    6389          503 :   x3 = XEXP (x2, 1);
    6390          503 :   x4 = XEXP (x3, 1);
    6391          503 :   if (GET_MODE (x4) != i2
    6392          503 :       || !ix86_carry_flag_operator (operands[4], i2)
    6393          503 :       || !const_scalar_int_operand (operands[6], i2)
    6394         1006 :       || !nonimmediate_operand (operands[0], i1))
    6395            0 :     return -1;
    6396          503 :   x5 = XVECEXP (x1, 0, 1);
    6397          503 :   x6 = XEXP (x5, 1);
    6398          503 :   if (GET_MODE (x6) != i1)
    6399              :     return -1;
    6400          503 :   x7 = XEXP (x6, 0);
    6401          503 :   if (GET_MODE (x7) != i1
    6402          503 :       || !ix86_carry_flag_operator (operands[5], i1)
    6403         1006 :       || !x86_64_immediate_operand (operands[2], i1))
    6404          348 :     return -1;
    6405              :   return 0;
    6406              : }
    6407              : 
    6408              : int
    6409          402 : pattern1884 ()
    6410              : {
    6411          402 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6412          402 :   int res ATTRIBUTE_UNUSED;
    6413          402 :   if (!const_0_to_15_operand (operands[2], E_VOIDmode)
    6414          402 :       || !const_0_to_15_operand (operands[3], E_VOIDmode)
    6415          402 :       || !const_0_to_15_operand (operands[4], E_VOIDmode)
    6416          402 :       || !const_0_to_15_operand (operands[5], E_VOIDmode)
    6417          402 :       || !const_0_to_15_operand (operands[6], E_VOIDmode)
    6418          402 :       || !const_0_to_15_operand (operands[7], E_VOIDmode)
    6419          402 :       || !const_0_to_15_operand (operands[8], E_VOIDmode)
    6420          402 :       || !const_0_to_15_operand (operands[9], E_VOIDmode)
    6421          402 :       || !const_0_to_15_operand (operands[10], E_VOIDmode)
    6422          402 :       || !const_0_to_15_operand (operands[11], E_VOIDmode)
    6423          402 :       || !const_0_to_15_operand (operands[12], E_VOIDmode)
    6424          402 :       || !const_0_to_15_operand (operands[13], E_VOIDmode)
    6425          402 :       || !const_0_to_15_operand (operands[14], E_VOIDmode)
    6426          402 :       || !const_0_to_15_operand (operands[15], E_VOIDmode)
    6427          402 :       || !const_0_to_15_operand (operands[16], E_VOIDmode)
    6428          804 :       || !const_0_to_15_operand (operands[17], E_VOIDmode))
    6429            0 :     return -1;
    6430              :   return 0;
    6431              : }
    6432              : 
    6433              : int
    6434         1003 : pattern1893 (rtx x1, machine_mode i1)
    6435              : {
    6436         1003 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6437         1003 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6438         1003 :   rtx x10;
    6439         1003 :   int res ATTRIBUTE_UNUSED;
    6440         1003 :   x2 = XVECEXP (x1, 0, 1);
    6441         1003 :   x3 = XEXP (x2, 1);
    6442         1003 :   if (XINT (x3, 1) != 109
    6443         1003 :       || GET_MODE (x3) != i1)
    6444              :     return -1;
    6445         1003 :   x4 = XVECEXP (x1, 0, 2);
    6446         1003 :   x5 = XEXP (x4, 1);
    6447         1003 :   if (GET_CODE (x5) != UNSPEC_VOLATILE
    6448         1003 :       || XVECLEN (x5, 0) != 1
    6449         1003 :       || XINT (x5, 1) != 109
    6450         1003 :       || GET_MODE (x5) != E_CCZmode)
    6451              :     return -1;
    6452         1003 :   x6 = XVECEXP (x5, 0, 0);
    6453         1003 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    6454         1003 :       || !memory_operand (operands[2], i1)
    6455         2006 :       || !register_operand (operands[3], i1))
    6456            0 :     return -1;
    6457         1003 :   x7 = XEXP (x4, 0);
    6458         1003 :   if (GET_MODE (x7) != E_CCZmode)
    6459              :     return -1;
    6460         1003 :   x8 = PATTERN (peep2_next_insn (2));
    6461         1003 :   x9 = XEXP (x8, 0);
    6462         1003 :   if (GET_MODE (x9) != E_CCZmode)
    6463              :     return -1;
    6464         1003 :   x10 = XEXP (x8, 1);
    6465         1003 :   if (GET_MODE (x10) != E_CCZmode
    6466         1003 :       || !register_operand (operands[5], i1)
    6467         2001 :       || !general_operand (operands[6], i1))
    6468            5 :     return -1;
    6469              :   return 0;
    6470              : }
    6471              : 
    6472              : int
    6473            0 : pattern1903 (rtx x1, machine_mode i1, machine_mode i2)
    6474              : {
    6475            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6476            0 :   rtx x2, x3, x4, x5, x6, x7;
    6477            0 :   int res ATTRIBUTE_UNUSED;
    6478            0 :   x2 = XVECEXP (x1, 0, 0);
    6479            0 :   x3 = XEXP (x2, 1);
    6480            0 :   x4 = XEXP (x3, 0);
    6481            0 :   x5 = XEXP (x4, 0);
    6482            0 :   if (GET_MODE (x5) != i2
    6483            0 :       || !ix86_carry_flag_operator (operands[4], i2))
    6484            0 :     return -1;
    6485            0 :   x6 = XEXP (x5, 1);
    6486            0 :   if (GET_MODE (x6) != i2
    6487            0 :       || !nonimmediate_operand (operands[1], i1))
    6488            0 :     return -1;
    6489            0 :   x7 = XEXP (x4, 1);
    6490            0 :   if (GET_MODE (x7) != i2
    6491            0 :       || !sext_operand (operands[2], i1)
    6492            0 :       || pattern1902 (x1, 
    6493              : i1, 
    6494              : i2) != 0)
    6495            0 :     return -1;
    6496              :   return 0;
    6497              : }
    6498              : 
    6499              : int
    6500          178 : pattern1910 (rtx x1, machine_mode i1, machine_mode i2)
    6501              : {
    6502          178 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6503          178 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6504          178 :   rtx x10, x11;
    6505          178 :   int res ATTRIBUTE_UNUSED;
    6506          178 :   x2 = XVECEXP (x1, 0, 0);
    6507          178 :   x3 = XEXP (x2, 1);
    6508          178 :   x4 = XEXP (x3, 0);
    6509          178 :   x5 = XEXP (x4, 0);
    6510          178 :   if (GET_MODE (x5) != i2)
    6511              :     return -1;
    6512          178 :   x6 = XEXP (x5, 0);
    6513          178 :   if (GET_MODE (x6) != i2
    6514          178 :       || !nonimmediate_operand (operands[1], i1)
    6515          178 :       || !ix86_carry_flag_operator (operands[4], i2)
    6516          356 :       || !const_int_operand (operands[6], i2))
    6517            0 :     return -1;
    6518          178 :   x7 = XEXP (x3, 1);
    6519          178 :   if (GET_MODE (x7) != i2)
    6520              :     return -1;
    6521          178 :   x8 = XEXP (x7, 0);
    6522          178 :   if (GET_MODE (x8) != i1)
    6523              :     return -1;
    6524          178 :   x9 = XEXP (x8, 0);
    6525          178 :   if (GET_MODE (x9) != i1
    6526          178 :       || !ix86_carry_flag_operator (operands[5], i1))
    6527            0 :     return -1;
    6528          178 :   x10 = XVECEXP (x1, 0, 1);
    6529          178 :   x11 = XEXP (x10, 1);
    6530          178 :   return pattern1905 (x11, 
    6531          178 : i1); /* [-1, 0] */
    6532              : }
    6533              : 
    6534              : int
    6535         1060 : pattern1920 (rtx x1)
    6536              : {
    6537         1060 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6538         1060 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6539         1060 :   int res ATTRIBUTE_UNUSED;
    6540         1060 :   x2 = XVECEXP (x1, 0, 24);
    6541         1060 :   if (XWINT (x2, 0) != 28L)
    6542              :     return -1;
    6543         1060 :   x3 = XVECEXP (x1, 0, 25);
    6544         1060 :   if (XWINT (x3, 0) != 60L)
    6545              :     return -1;
    6546         1060 :   x4 = XVECEXP (x1, 0, 26);
    6547         1060 :   if (XWINT (x4, 0) != 29L)
    6548              :     return -1;
    6549         1060 :   x5 = XVECEXP (x1, 0, 27);
    6550         1060 :   if (XWINT (x5, 0) != 61L)
    6551              :     return -1;
    6552         1060 :   x6 = XVECEXP (x1, 0, 28);
    6553         1060 :   if (XWINT (x6, 0) != 30L)
    6554              :     return -1;
    6555         1060 :   x7 = XVECEXP (x1, 0, 29);
    6556         1060 :   if (XWINT (x7, 0) != 62L)
    6557              :     return -1;
    6558         1060 :   x8 = XVECEXP (x1, 0, 30);
    6559         1060 :   if (XWINT (x8, 0) != 31L)
    6560              :     return -1;
    6561         1060 :   x9 = XVECEXP (x1, 0, 31);
    6562         1060 :   if (XWINT (x9, 0) != 63L)
    6563            0 :     return -1;
    6564              :   return 0;
    6565              : }
    6566              : 
    6567              :  int
    6568      3261935 : recog_7 (rtx x1 ATTRIBUTE_UNUSED,
    6569              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6570              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6571              : {
    6572      3261935 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6573      3261935 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6574      3261935 :   rtx x10, x11, x12;
    6575      3261935 :   int res ATTRIBUTE_UNUSED;
    6576      3261935 :   if (pattern59 (x1, 
    6577              : E_CCFPmode) != 0)
    6578              :     return -1;
    6579      3230379 :   x2 = XEXP (x1, 1);
    6580      3230379 :   x3 = XVECEXP (x2, 0, 0);
    6581      3230379 :   if (GET_MODE (x3) != E_CCFPmode)
    6582              :     return -1;
    6583      3230379 :   switch (GET_CODE (x3))
    6584              :     {
    6585      3213643 :     case COMPARE:
    6586      3213643 :       x4 = XEXP (x3, 0);
    6587      3213643 :       switch (GET_CODE (x4))
    6588              :         {
    6589      2824687 :         case REG:
    6590      2824687 :         case SUBREG:
    6591      2824687 :           operands[0] = x4;
    6592      2824687 :           x5 = XEXP (x3, 1);
    6593      2824687 :           operands[1] = x5;
    6594      2824687 :           switch (GET_MODE (operands[0]))
    6595              :             {
    6596       635303 :             case E_XFmode:
    6597       635303 :               if (!register_operand (operands[0], E_XFmode)
    6598       635303 :                   || !register_operand (operands[1], E_XFmode)
    6599      1167072 :                   || !
    6600              : #line 2066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6601              : (TARGET_80387 && TARGET_CMOVE))
    6602              :                 return -1;
    6603              :               return 53; /* *cmpiuxf_i387 */
    6604              : 
    6605              :             case E_SFmode:
    6606              :               if (!register_operand (operands[0], E_SFmode)
    6607              :                   || !register_ssemem_operand (operands[1], E_SFmode)
    6608              :                   || !
    6609              : #line 2107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6610              : ((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
    6611              :    || (TARGET_80387 && TARGET_CMOVE)))
    6612              :                 return -1;
    6613              :               return 61; /* *cmpiusf */
    6614              : 
    6615              :             case E_DFmode:
    6616              :               if (!register_operand (operands[0], E_DFmode)
    6617              :                   || !register_ssemem_operand (operands[1], E_DFmode)
    6618              :                   || !
    6619              : #line 2107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6620              : ((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
    6621              :    || (TARGET_80387 && TARGET_CMOVE)))
    6622              :                 return -1;
    6623              :               return 63; /* *cmpiudf */
    6624              : 
    6625              :             case E_HFmode:
    6626              :               if (!register_operand (operands[0], E_HFmode)
    6627              :                   || !nonimmediate_operand (operands[1], E_HFmode)
    6628              :                   || !
    6629              : #line 2145 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6630              : (TARGET_AVX512FP16))
    6631              :                 return -1;
    6632              :               return 65; /* *cmpiuhf */
    6633              : 
    6634              :             default:
    6635              :               return -1;
    6636              :             }
    6637              : 
    6638              :         case VEC_SELECT:
    6639              :           if (pattern612 (x3) != 0)
    6640              :             return -1;
    6641              :           x6 = XEXP (x4, 0);
    6642              :           operands[0] = x6;
    6643              :           x5 = XEXP (x3, 1);
    6644              :           x7 = XEXP (x5, 0);
    6645              :           operands[1] = x7;
    6646              :           switch (GET_MODE (x4))
    6647              :             {
    6648              :             case E_HFmode:
    6649              :               if (!register_operand (operands[0], E_V8HFmode)
    6650              :                   || GET_MODE (x5) != E_HFmode
    6651              :                   || !nonimmediate_operand (operands[1], E_V8HFmode)
    6652              :                   || !(
    6653              : #line 5273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6654              : (SSE_FLOAT_MODE_P (HFmode) || HFmode == E_HFmode) && 
    6655              : #line 1386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6656              : (TARGET_AVX512FP16)))
    6657              :                 return -1;
    6658              :               return 3760; /* avx512fp16_ucomi */
    6659              : 
    6660              :             case E_SFmode:
    6661              :               if (!register_operand (operands[0], E_V4SFmode)
    6662              :                   || GET_MODE (x5) != E_SFmode
    6663              :                   || !nonimmediate_operand (operands[1], E_V4SFmode)
    6664              :                   || !
    6665              : #line 5273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6666              : (SSE_FLOAT_MODE_P (SFmode) || SFmode == E_HFmode))
    6667              :                 return -1;
    6668              :               return 3764; /* sse_ucomi */
    6669              : 
    6670              :             case E_DFmode:
    6671              :               if (!register_operand (operands[0], E_V2DFmode)
    6672              :                   || GET_MODE (x5) != E_DFmode
    6673              :                   || !nonimmediate_operand (operands[1], E_V2DFmode)
    6674              :                   || !
    6675              : #line 5273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6676              : (SSE_FLOAT_MODE_P (DFmode) || DFmode == E_HFmode))
    6677              :                 return -1;
    6678              :               return 3768; /* sse2_ucomi */
    6679              : 
    6680              :             default:
    6681              :               return -1;
    6682              :             }
    6683              : 
    6684              :         default:
    6685              :           return -1;
    6686              :         }
    6687              : 
    6688              :     case UNSPEC:
    6689              :       switch (XVECLEN (x3, 0))
    6690              :         {
    6691              :         case 1:
    6692              :           if (XINT (x3, 1) != 45)
    6693              :             return -1;
    6694              :           x8 = XVECEXP (x3, 0, 0);
    6695              :           if (GET_CODE (x8) != COMPARE
    6696              :               || GET_MODE (x8) != E_CCFPmode)
    6697              :             return -1;
    6698              :           x9 = XEXP (x8, 0);
    6699              :           operands[0] = x9;
    6700              :           x10 = XEXP (x8, 1);
    6701              :           operands[1] = x10;
    6702              :           switch (GET_MODE (operands[0]))
    6703              :             {
    6704              :             case E_SFmode:
    6705              :               if (!register_operand (operands[0], E_SFmode)
    6706              :                   || !nonimmediate_operand (operands[1], E_SFmode)
    6707              :                   || !
    6708              : #line 2083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6709              : (TARGET_AVX10_2))
    6710              :                 return -1;
    6711              :               return 55; /* *cmpxusf */
    6712              : 
    6713              :             case E_DFmode:
    6714              :               if (!register_operand (operands[0], E_DFmode)
    6715              :                   || !nonimmediate_operand (operands[1], E_DFmode)
    6716              :                   || !
    6717              : #line 2083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6718              : (TARGET_AVX10_2))
    6719              :                 return -1;
    6720              :               return 57; /* *cmpxudf */
    6721              : 
    6722              :             case E_HFmode:
    6723              :               if (!register_operand (operands[0], E_HFmode)
    6724              :                   || !nonimmediate_operand (operands[1], E_HFmode)
    6725              :                   || !
    6726              : #line 2096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6727              : (TARGET_AVX10_2))
    6728              :                 return -1;
    6729              :               return 59; /* *cmpxuhf */
    6730              : 
    6731              :             default:
    6732              :               return -1;
    6733              :             }
    6734              : 
    6735              :         case 2:
    6736              :           if (XINT (x3, 1) != 62
    6737              :               || pattern858 (x3) != 0)
    6738              :             return -1;
    6739              :           x8 = XVECEXP (x3, 0, 0);
    6740              :           x9 = XEXP (x8, 0);
    6741              :           operands[0] = x9;
    6742              :           x11 = XVECEXP (x3, 0, 1);
    6743              :           x12 = XEXP (x11, 0);
    6744              :           operands[1] = x12;
    6745              :           switch (GET_MODE (x8))
    6746              :             {
    6747              :             case E_HFmode:
    6748              :               if (!register_operand (operands[0], E_V8HFmode)
    6749              :                   || GET_MODE (x11) != E_HFmode
    6750              :                   || !nonimmediate_operand (operands[1], E_V8HFmode)
    6751              :                   || !(
    6752              : #line 5258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6753              : (TARGET_AVX10_2) && 
    6754              : #line 1386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6755              : (TARGET_AVX512FP16)))
    6756              :                 return -1;
    6757              :               return 3748; /* avx10_2_ucomxhf */
    6758              : 
    6759              :             case E_SFmode:
    6760              :               if (!register_operand (operands[0], E_V4SFmode)
    6761              :                   || GET_MODE (x11) != E_SFmode
    6762              :                   || !nonimmediate_operand (operands[1], E_V4SFmode)
    6763              :                   || !
    6764              : #line 5258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6765              : (TARGET_AVX10_2))
    6766              :                 return -1;
    6767              :               return 3752; /* avx10_2_ucomxsf */
    6768              : 
    6769              :             case E_DFmode:
    6770              :               if (!register_operand (operands[0], E_V2DFmode)
    6771              :                   || GET_MODE (x11) != E_DFmode
    6772              :                   || !nonimmediate_operand (operands[1], E_V2DFmode)
    6773              :                   || !
    6774              : #line 5258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6775              : (TARGET_AVX10_2))
    6776              :                 return -1;
    6777              :               return 3756; /* avx10_2_ucomxdf */
    6778              : 
    6779              :             default:
    6780              :               return -1;
    6781              :             }
    6782              : 
    6783              :         default:
    6784              :           return -1;
    6785              :         }
    6786              : 
    6787              :     default:
    6788              :       return -1;
    6789              :     }
    6790              : }
    6791              : 
    6792              :  int
    6793              : recog_17 (rtx x1 ATTRIBUTE_UNUSED,
    6794              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6795              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6796              : {
    6797              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6798              :   rtx x2, x3, x4;
    6799              :   int res ATTRIBUTE_UNUSED;
    6800              :   x2 = XEXP (x1, 0);
    6801              :   operands[0] = x2;
    6802              :   x3 = XEXP (x1, 1);
    6803              :   operands[1] = x3;
    6804              :   switch (GET_MODE (operands[0]))
    6805              :     {
    6806              :     case E_V1TImode:
    6807              :       if (push_operand (operands[0], E_V1TImode)
    6808              :           && register_operand (operands[1], E_V1TImode))
    6809              :         {
    6810              :           if ((
    6811              : #line 2214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6812              : (TARGET_64BIT && TARGET_STV) && 
    6813              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6814              : (Pmode == SImode)))
    6815              :             return 69; /* *pushv1ti2 */
    6816              :           if ((
    6817              : #line 2214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6818              : (TARGET_64BIT && TARGET_STV) && 
    6819              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6820              : (Pmode == DImode)))
    6821              :             return 70; /* *pushv1ti2 */
    6822              :         }
    6823              :       break;
    6824              : 
    6825              :     case E_DImode:
    6826              :       if (push_operand (operands[0], E_DImode)
    6827              :           && general_no_elim_operand (operands[1], E_DImode))
    6828              :         {
    6829              :           if (
    6830              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6831              : (!TARGET_64BIT))
    6832              :             return 71; /* *pushdi2 */
    6833              :           if (
    6834              : #line 2245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6835              : (TARGET_64BIT))
    6836              :             return 73; /* *pushdi2_rex64 */
    6837              :         }
    6838              :       if (nonimmediate_operand (operands[0], E_DImode)
    6839              :           && pop_operand (operands[1], E_DImode)
    6840              :           && 
    6841              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6842              : (word_mode == DImode))
    6843              :         return 81; /* *popdi1 */
    6844              :       if (pnum_clobbers != NULL
    6845              :           && const0_operand (operands[1], E_DImode))
    6846              :         {
    6847              :           if (register_operand (operands[0], E_DImode)
    6848              :               && (
    6849              : #line 2463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6850              : (reload_completed) && 
    6851              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6852              : (TARGET_64BIT)))
    6853              :             {
    6854              :               *pnum_clobbers = 1;
    6855              :               return 89; /* *movdi_xor */
    6856              :             }
    6857              :           if (memory_operand (operands[0], E_DImode)
    6858              :               && (
    6859              : #line 2475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6860              : (reload_completed) && 
    6861              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6862              : (TARGET_64BIT)))
    6863              :             {
    6864              :               *pnum_clobbers = 1;
    6865              :               return 92; /* *movdi_and */
    6866              :             }
    6867              :         }
    6868              :       if (nonimmediate_operand (operands[0], E_DImode))
    6869              :         {
    6870              :           if (pnum_clobbers != NULL
    6871              :               && constm1_operand (operands[1], E_DImode)
    6872              :               && (
    6873              : #line 2490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6874              : (reload_completed) && 
    6875              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6876              : (TARGET_64BIT)))
    6877              :             {
    6878              :               *pnum_clobbers = 1;
    6879              :               return 95; /* *movdi_or */
    6880              :             }
    6881              :           if (general_operand (operands[1], E_DImode)
    6882              :               && 
    6883              : #line 2639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6884              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    6885              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    6886              :             return 99; /* *movdi_internal */
    6887              :         }
    6888              :       break;
    6889              : 
    6890              :     case E_TImode:
    6891              :       if (push_operand (operands[0], E_TImode)
    6892              :           && general_no_elim_operand (operands[1], E_TImode)
    6893              :           && 
    6894              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6895              : (TARGET_64BIT))
    6896              :         return 72; /* *pushti2 */
    6897              :       if (nonimmediate_operand (operands[0], E_TImode)
    6898              :           && general_operand (operands[1], E_TImode)
    6899              :           && 
    6900              : #line 2551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6901              : ((TARGET_64BIT
    6902              :     && !(MEM_P (operands[0]) && MEM_P (operands[1])))
    6903              :    || (TARGET_SSE
    6904              :        && nonimmediate_or_sse_const_operand (operands[1], TImode)
    6905              :        && (register_operand (operands[0], TImode)
    6906              :            || register_operand (operands[1], TImode)))))
    6907              :         return 98; /* *movti_internal */
    6908              :       break;
    6909              : 
    6910              :     case E_SImode:
    6911              :       res = recog_16 (x1, insn, pnum_clobbers);
    6912              :       if (res >= 0)
    6913              :         return res;
    6914              :       break;
    6915              : 
    6916              :     case E_QImode:
    6917              :       if (push_operand (operands[0], E_QImode)
    6918              :           && nonmemory_no_elim_operand (operands[1], E_QImode))
    6919              :         return 76; /* *pushqi2 */
    6920              :       if (nonimmediate_operand (operands[0], E_QImode)
    6921              :           && general_operand (operands[1], E_QImode)
    6922              :           && 
    6923              : #line 3213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6924              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    6925              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    6926              :         return 102; /* *movqi_internal */
    6927              :       break;
    6928              : 
    6929              :     case E_HImode:
    6930              :       if (push_operand (operands[0], E_HImode)
    6931              :           && nonmemory_no_elim_operand (operands[1], E_HImode))
    6932              :         return 77; /* *pushhi2 */
    6933              :       if (pnum_clobbers != NULL
    6934              :           && memory_operand (operands[0], E_HImode)
    6935              :           && const0_operand (operands[1], E_HImode)
    6936              :           && 
    6937              : #line 2475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6938              : (reload_completed))
    6939              :         {
    6940              :           *pnum_clobbers = 1;
    6941              :           return 90; /* *movhi_and */
    6942              :         }
    6943              :       if (nonimmediate_operand (operands[0], E_HImode))
    6944              :         {
    6945              :           if (pnum_clobbers != NULL
    6946              :               && constm1_operand (operands[1], E_HImode)
    6947              :               && 
    6948              : #line 2490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6949              : (reload_completed))
    6950              :             {
    6951              :               *pnum_clobbers = 1;
    6952              :               return 93; /* *movhi_or */
    6953              :             }
    6954              :           if (general_operand (operands[1], E_HImode)
    6955              :               && 
    6956              : #line 3046 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6957              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    6958              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    6959              :             return 101; /* *movhi_internal */
    6960              :         }
    6961              :       break;
    6962              : 
    6963              :     case E_TFmode:
    6964              :       if (push_operand (operands[0], E_TFmode)
    6965              :           && general_no_elim_operand (operands[1], E_TFmode)
    6966              :           && 
    6967              : #line 3830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6968              : (TARGET_64BIT || TARGET_SSE))
    6969              :         return 156; /* *pushtf */
    6970              :       if (nonimmediate_operand (operands[0], E_TFmode)
    6971              :           && general_operand (operands[1], E_TFmode)
    6972              :           && 
    6973              : #line 4099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6974              : ((TARGET_64BIT || TARGET_SSE)
    6975              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    6976              :    && (lra_in_progress || reload_completed
    6977              :        || !CONST_DOUBLE_P (operands[1])
    6978              :        || (standard_sse_constant_p (operands[1], TFmode) == 1
    6979              :            && !memory_operand (operands[0], TFmode))
    6980              :        || (!TARGET_MEMORY_MISMATCH_STALL
    6981              :            && memory_operand (operands[0], TFmode)))))
    6982              :         return 171; /* *movtf_internal */
    6983              :       break;
    6984              : 
    6985              :     case E_XFmode:
    6986              :       if (push_operand (operands[0], E_XFmode)
    6987              :           && general_no_elim_operand (operands[1], E_XFmode))
    6988              :         return 157; /* *pushxf */
    6989              :       if (nonimmediate_operand (operands[0], E_XFmode)
    6990              :           && general_operand (operands[1], E_XFmode)
    6991              :           && 
    6992              : #line 4160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6993              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    6994              :    && (lra_in_progress || reload_completed
    6995              :        || !CONST_DOUBLE_P (operands[1])
    6996              :        || ((optimize_function_for_size_p (cfun)
    6997              :             || (ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC))
    6998              :            && standard_80387_constant_p (operands[1]) > 0
    6999              :            && !memory_operand (operands[0], XFmode))
    7000              :        || (!TARGET_MEMORY_MISMATCH_STALL
    7001              :            && memory_operand (operands[0], XFmode))
    7002              :        || !TARGET_HARD_XF_REGS)))
    7003              :         return 172; /* *movxf_internal */
    7004              :       break;
    7005              : 
    7006              :     case E_DFmode:
    7007              :       if (push_operand (operands[0], E_DFmode)
    7008              :           && general_no_elim_operand (operands[1], E_DFmode))
    7009              :         return 158; /* *pushdf */
    7010              :       if (nonimmediate_operand (operands[0], E_DFmode)
    7011              :           && general_operand (operands[1], E_DFmode)
    7012              :           && 
    7013              : #line 4232 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7014              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7015              :    && (lra_in_progress || reload_completed
    7016              :        || !CONST_DOUBLE_P (operands[1])
    7017              :        || ((optimize_function_for_size_p (cfun)
    7018              :             || (ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC))
    7019              :            && IS_STACK_MODE (DFmode)
    7020              :            && standard_80387_constant_p (operands[1]) > 0
    7021              :            && !memory_operand (operands[0], DFmode))
    7022              :        || (TARGET_SSE2 && TARGET_SSE_MATH
    7023              :            && standard_sse_constant_p (operands[1], DFmode) == 1
    7024              :            && !memory_operand (operands[0], DFmode))
    7025              :        || ((TARGET_64BIT || !TARGET_MEMORY_MISMATCH_STALL)
    7026              :            && memory_operand (operands[0], DFmode))
    7027              :        || !TARGET_HARD_DF_REGS)))
    7028              :         return 173; /* *movdf_internal */
    7029              :       break;
    7030              : 
    7031              :     case E_HFmode:
    7032              :       if (push_operand (operands[0], E_HFmode))
    7033              :         {
    7034              :           if (nonmemory_no_elim_operand (operands[1], E_HFmode)
    7035              :               && 
    7036              : #line 3926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7037              : (TARGET_64BIT))
    7038              :             return 159; /* *pushhf_rex64 */
    7039              :           if (general_no_elim_operand (operands[1], E_HFmode)
    7040              :               && 
    7041              : #line 3939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7042              : (!TARGET_64BIT))
    7043              :             return 161; /* *pushhf */
    7044              :         }
    7045              :       if (nonimmediate_operand (operands[0], E_HFmode)
    7046              :           && general_operand (operands[1], E_HFmode)
    7047              :           && 
    7048              : #line 4552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7049              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7050              :   && (lra_in_progress
    7051              :       || reload_completed
    7052              :       || !CONST_DOUBLE_P (operands[1])
    7053              :       || (TARGET_SSE2
    7054              :           && standard_sse_constant_p (operands[1], HFmode) == 1)
    7055              :       || memory_operand (operands[0], HFmode))))
    7056              :         return 175; /* *movhf_internal */
    7057              :       break;
    7058              : 
    7059              :     case E_BFmode:
    7060              :       if (push_operand (operands[0], E_BFmode))
    7061              :         {
    7062              :           if (nonmemory_no_elim_operand (operands[1], E_BFmode)
    7063              :               && 
    7064              : #line 3926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7065              : (TARGET_64BIT))
    7066              :             return 160; /* *pushbf_rex64 */
    7067              :           if (general_no_elim_operand (operands[1], E_BFmode)
    7068              :               && 
    7069              : #line 3939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7070              : (!TARGET_64BIT))
    7071              :             return 162; /* *pushbf */
    7072              :         }
    7073              :       if (nonimmediate_operand (operands[0], E_BFmode)
    7074              :           && general_operand (operands[1], E_BFmode)
    7075              :           && 
    7076              : #line 4552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7077              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7078              :   && (lra_in_progress
    7079              :       || reload_completed
    7080              :       || !CONST_DOUBLE_P (operands[1])
    7081              :       || (TARGET_SSE2
    7082              :           && standard_sse_constant_p (operands[1], BFmode) == 1)
    7083              :       || memory_operand (operands[0], BFmode))))
    7084              :         return 176; /* *movbf_internal */
    7085              :       break;
    7086              : 
    7087              :     case E_SFmode:
    7088              :       if (push_operand (operands[0], E_SFmode))
    7089              :         {
    7090              :           if (nonmemory_no_elim_operand (operands[1], E_SFmode)
    7091              :               && 
    7092              : #line 4014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7093              : (TARGET_64BIT))
    7094              :             return 169; /* *pushsf_rex64 */
    7095              :           if (general_no_elim_operand (operands[1], E_SFmode)
    7096              :               && 
    7097              : #line 4028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7098              : (!TARGET_64BIT))
    7099              :             return 170; /* *pushsf */
    7100              :         }
    7101              :       if (nonimmediate_operand (operands[0], E_SFmode)
    7102              :           && general_operand (operands[1], E_SFmode)
    7103              :           && 
    7104              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7105              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7106              :    && (lra_in_progress || reload_completed
    7107              :        || !CONST_DOUBLE_P (operands[1])
    7108              :        || ((optimize_function_for_size_p (cfun)
    7109              :             || (ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC))
    7110              :            && IS_STACK_MODE (SFmode)
    7111              :            && standard_80387_constant_p (operands[1]) > 0)
    7112              :        || (TARGET_SSE && TARGET_SSE_MATH
    7113              :            && standard_sse_constant_p (operands[1], SFmode) == 1)
    7114              :        || memory_operand (operands[0], SFmode)
    7115              :        || !TARGET_HARD_SF_REGS)))
    7116              :         return 174; /* *movsf_internal */
    7117              :       break;
    7118              : 
    7119              :     case E_V8QImode:
    7120              :       if (nonimmediate_operand (operands[0], E_V8QImode)
    7121              :           && nonimm_or_0_operand (operands[1], E_V8QImode)
    7122              :           && 
    7123              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7124              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7125              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7126              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7127              :         return 2070; /* *movv8qi_internal */
    7128              :       if (memory_operand (operands[0], E_V8QImode)
    7129              :           && x86_64_const_vector_operand (operands[1], E_V8QImode)
    7130              :           && (
    7131              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7132              : (!TARGET_LCP_STALL || V8QImode != V2QImode) && 
    7133              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7134              : (TARGET_64BIT)))
    7135              :         return 2094; /* *movv8qi_imm */
    7136              :       break;
    7137              : 
    7138              :     case E_V4HImode:
    7139              :       if (nonimmediate_operand (operands[0], E_V4HImode)
    7140              :           && nonimm_or_0_operand (operands[1], E_V4HImode)
    7141              :           && 
    7142              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7143              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7144              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7145              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7146              :         return 2071; /* *movv4hi_internal */
    7147              :       if (memory_operand (operands[0], E_V4HImode)
    7148              :           && x86_64_const_vector_operand (operands[1], E_V4HImode)
    7149              :           && (
    7150              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7151              : (!TARGET_LCP_STALL || V4HImode != V2QImode) && 
    7152              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7153              : (TARGET_64BIT)))
    7154              :         return 2095; /* *movv4hi_imm */
    7155              :       break;
    7156              : 
    7157              :     case E_V2SImode:
    7158              :       if (nonimmediate_operand (operands[0], E_V2SImode)
    7159              :           && nonimm_or_0_operand (operands[1], E_V2SImode)
    7160              :           && 
    7161              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7162              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7163              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7164              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7165              :         return 2072; /* *movv2si_internal */
    7166              :       if (memory_operand (operands[0], E_V2SImode)
    7167              :           && x86_64_const_vector_operand (operands[1], E_V2SImode)
    7168              :           && (
    7169              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7170              : (!TARGET_LCP_STALL || V2SImode != V2QImode) && 
    7171              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7172              : (TARGET_64BIT)))
    7173              :         return 2098; /* *movv2si_imm */
    7174              :       break;
    7175              : 
    7176              :     case E_V1DImode:
    7177              :       if (nonimmediate_operand (operands[0], E_V1DImode)
    7178              :           && nonimm_or_0_operand (operands[1], E_V1DImode)
    7179              :           && 
    7180              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7181              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7182              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7183              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7184              :         return 2073; /* *movv1di_internal */
    7185              :       if (memory_operand (operands[0], E_V1DImode)
    7186              :           && x86_64_const_vector_operand (operands[1], E_V1DImode)
    7187              :           && (
    7188              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7189              : (!TARGET_LCP_STALL || V1DImode != V2QImode) && 
    7190              : #line 90 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7191              : (TARGET_64BIT)))
    7192              :         return 2100; /* *movv1di_imm */
    7193              :       break;
    7194              : 
    7195              :     case E_V2SFmode:
    7196              :       if (nonimmediate_operand (operands[0], E_V2SFmode)
    7197              :           && nonimm_or_0_operand (operands[1], E_V2SFmode)
    7198              :           && 
    7199              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7200              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7201              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7202              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7203              :         return 2074; /* *movv2sf_internal */
    7204              :       if (memory_operand (operands[0], E_V2SFmode)
    7205              :           && x86_64_const_vector_operand (operands[1], E_V2SFmode)
    7206              :           && (
    7207              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7208              : (!TARGET_LCP_STALL || V2SFmode != V2QImode) && 
    7209              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7210              : (TARGET_64BIT)))
    7211              :         return 2099; /* *movv2sf_imm */
    7212              :       break;
    7213              : 
    7214              :     case E_V4HFmode:
    7215              :       if (nonimmediate_operand (operands[0], E_V4HFmode)
    7216              :           && nonimm_or_0_operand (operands[1], E_V4HFmode)
    7217              :           && 
    7218              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7219              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7220              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7221              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7222              :         return 2075; /* *movv4hf_internal */
    7223              :       if (memory_operand (operands[0], E_V4HFmode)
    7224              :           && x86_64_const_vector_operand (operands[1], E_V4HFmode)
    7225              :           && (
    7226              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7227              : (!TARGET_LCP_STALL || V4HFmode != V2QImode) && 
    7228              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7229              : (TARGET_64BIT)))
    7230              :         return 2096; /* *movv4hf_imm */
    7231              :       break;
    7232              : 
    7233              :     case E_V4BFmode:
    7234              :       if (nonimmediate_operand (operands[0], E_V4BFmode)
    7235              :           && nonimm_or_0_operand (operands[1], E_V4BFmode)
    7236              :           && 
    7237              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7238              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7239              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7240              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7241              :         return 2076; /* *movv4bf_internal */
    7242              :       if (memory_operand (operands[0], E_V4BFmode)
    7243              :           && x86_64_const_vector_operand (operands[1], E_V4BFmode)
    7244              :           && (
    7245              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7246              : (!TARGET_LCP_STALL || V4BFmode != V2QImode) && 
    7247              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7248              : (TARGET_64BIT)))
    7249              :         return 2097; /* *movv4bf_imm */
    7250              :       break;
    7251              : 
    7252              :     case E_V4QImode:
    7253              :       if (nonimmediate_operand (operands[0], E_V4QImode)
    7254              :           && nonimm_or_0_operand (operands[1], E_V4QImode)
    7255              :           && 
    7256              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7257              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7258              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7259              :         return 2077; /* *movv4qi_internal */
    7260              :       if (push_operand (operands[0], E_V4QImode)
    7261              :           && nonmemory_no_elim_operand (operands[1], E_V4QImode)
    7262              :           && 
    7263              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7264              : (TARGET_64BIT))
    7265              :         return 2082; /* *pushv4qi2_rex64 */
    7266              :       if (memory_operand (operands[0], E_V4QImode)
    7267              :           && x86_64_const_vector_operand (operands[1], E_V4QImode))
    7268              :         return 2089; /* *movv4qi_imm */
    7269              :       break;
    7270              : 
    7271              :     case E_V2HImode:
    7272              :       if (nonimmediate_operand (operands[0], E_V2HImode)
    7273              :           && nonimm_or_0_operand (operands[1], E_V2HImode)
    7274              :           && 
    7275              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7276              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7277              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7278              :         return 2078; /* *movv2hi_internal */
    7279              :       if (push_operand (operands[0], E_V2HImode)
    7280              :           && nonmemory_no_elim_operand (operands[1], E_V2HImode)
    7281              :           && 
    7282              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7283              : (TARGET_64BIT))
    7284              :         return 2083; /* *pushv2hi2_rex64 */
    7285              :       if (memory_operand (operands[0], E_V2HImode)
    7286              :           && x86_64_const_vector_operand (operands[1], E_V2HImode))
    7287              :         return 2090; /* *movv2hi_imm */
    7288              :       break;
    7289              : 
    7290              :     case E_V1SImode:
    7291              :       if (nonimmediate_operand (operands[0], E_V1SImode)
    7292              :           && nonimm_or_0_operand (operands[1], E_V1SImode)
    7293              :           && 
    7294              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7295              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7296              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7297              :         return 2079; /* *movv1si_internal */
    7298              :       if (push_operand (operands[0], E_V1SImode)
    7299              :           && nonmemory_no_elim_operand (operands[1], E_V1SImode)
    7300              :           && 
    7301              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7302              : (TARGET_64BIT))
    7303              :         return 2084; /* *pushv1si2_rex64 */
    7304              :       if (memory_operand (operands[0], E_V1SImode)
    7305              :           && x86_64_const_vector_operand (operands[1], E_V1SImode))
    7306              :         return 2091; /* *movv1si_imm */
    7307              :       break;
    7308              : 
    7309              :     case E_V2HFmode:
    7310              :       if (nonimmediate_operand (operands[0], E_V2HFmode)
    7311              :           && nonimm_or_0_operand (operands[1], E_V2HFmode)
    7312              :           && 
    7313              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7314              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7315              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7316              :         return 2080; /* *movv2hf_internal */
    7317              :       if (push_operand (operands[0], E_V2HFmode)
    7318              :           && nonmemory_no_elim_operand (operands[1], E_V2HFmode)
    7319              :           && 
    7320              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7321              : (TARGET_64BIT))
    7322              :         return 2085; /* *pushv2hf2_rex64 */
    7323              :       if (memory_operand (operands[0], E_V2HFmode)
    7324              :           && x86_64_const_vector_operand (operands[1], E_V2HFmode))
    7325              :         return 2092; /* *movv2hf_imm */
    7326              :       break;
    7327              : 
    7328              :     case E_V2BFmode:
    7329              :       if (nonimmediate_operand (operands[0], E_V2BFmode)
    7330              :           && nonimm_or_0_operand (operands[1], E_V2BFmode)
    7331              :           && 
    7332              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7333              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7334              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7335              :         return 2081; /* *movv2bf_internal */
    7336              :       if (push_operand (operands[0], E_V2BFmode)
    7337              :           && nonmemory_no_elim_operand (operands[1], E_V2BFmode)
    7338              :           && 
    7339              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7340              : (TARGET_64BIT))
    7341              :         return 2086; /* *pushv2bf2_rex64 */
    7342              :       if (memory_operand (operands[0], E_V2BFmode)
    7343              :           && x86_64_const_vector_operand (operands[1], E_V2BFmode))
    7344              :         return 2093; /* *movv2bf_imm */
    7345              :       break;
    7346              : 
    7347              :     case E_V2QImode:
    7348              :       if (nonimmediate_operand (operands[0], E_V2QImode)
    7349              :           && nonimm_or_0_operand (operands[1], E_V2QImode)
    7350              :           && 
    7351              : #line 458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7352              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7353              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7354              :         return 2087; /* *movv2qi_internal */
    7355              :       if (memory_operand (operands[0], E_V2QImode)
    7356              :           && x86_64_const_vector_operand (operands[1], E_V2QImode)
    7357              :           && 
    7358              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7359              : (!TARGET_LCP_STALL || V2QImode != V2QImode))
    7360              :         return 2088; /* *movv2qi_imm */
    7361              :       if (push_operand (operands[0], E_V2QImode)
    7362              :           && nonmemory_no_elim_operand (operands[1], E_V2QImode))
    7363              :         return 2101; /* *pushv2qi2 */
    7364              :       break;
    7365              : 
    7366              :     case E_P2QImode:
    7367              :       if (nonimmediate_operand (operands[0], E_P2QImode)
    7368              :           && nonimmediate_operand (operands[1], E_P2QImode)
    7369              :           && 
    7370              : #line 32024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7371              : (TARGET_AVX512VP2INTERSECT
    7372              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    7373              :         return 10434; /* *movp2qi_internal */
    7374              :       break;
    7375              : 
    7376              :     case E_P2HImode:
    7377              :       if (nonimmediate_operand (operands[0], E_P2HImode)
    7378              :           && nonimmediate_operand (operands[1], E_P2HImode)
    7379              :           && 
    7380              : #line 32024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7381              : (TARGET_AVX512VP2INTERSECT
    7382              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    7383              :         return 10435; /* *movp2hi_internal */
    7384              :       break;
    7385              : 
    7386              :     default:
    7387              :       break;
    7388              :     }
    7389              :   if (GET_CODE (x2) != MEM)
    7390              :     return -1;
    7391              :   x4 = XEXP (x2, 0);
    7392              :   operands[0] = x4;
    7393              :   if (!x86_64_movabs_operand (operands[0], E_DImode))
    7394              :     return -1;
    7395              :   operands[1] = x3;
    7396              :   switch (GET_MODE (x2))
    7397              :     {
    7398              :     case E_QImode:
    7399              :       if (!nonmemory_operand (operands[1], E_QImode)
    7400              :           || !
    7401              : #line 3364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7402              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7403              :         return -1;
    7404              :       return 103; /* *movabsqi_1 */
    7405              : 
    7406              :     case E_HImode:
    7407              :       if (!nonmemory_operand (operands[1], E_HImode)
    7408              :           || !
    7409              : #line 3364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7410              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7411              :         return -1;
    7412              :       return 104; /* *movabshi_1 */
    7413              : 
    7414              :     case E_SImode:
    7415              :       if (!nonmemory_operand (operands[1], E_SImode)
    7416              :           || !
    7417              : #line 3364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7418              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7419              :         return -1;
    7420              :       return 105; /* *movabssi_1 */
    7421              : 
    7422              :     case E_DImode:
    7423              :       if (!nonmemory_operand (operands[1], E_DImode)
    7424              :           || !
    7425              : #line 3364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7426              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7427              :         return -1;
    7428              :       return 106; /* *movabsdi_1 */
    7429              : 
    7430              :     default:
    7431              :       return -1;
    7432              :     }
    7433              : }
    7434              : 
    7435              :  int
    7436              : recog_34 (rtx x1 ATTRIBUTE_UNUSED,
    7437              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7438              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7439              : {
    7440              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7441              :   rtx x2, x3, x4;
    7442              :   int res ATTRIBUTE_UNUSED;
    7443              :   x2 = XEXP (x1, 0);
    7444              :   operands[0] = x2;
    7445              :   x3 = XEXP (x1, 1);
    7446              :   x4 = XEXP (x3, 0);
    7447              :   operands[1] = x4;
    7448              :   switch (GET_MODE (operands[0]))
    7449              :     {
    7450              :     case E_SImode:
    7451              :       if (GET_MODE (x3) != E_SImode)
    7452              :         return -1;
    7453              :       if (register_operand (operands[0], E_SImode))
    7454              :         {
    7455              :           switch (pattern264 ())
    7456              :             {
    7457              :             case 0:
    7458              :               if (
    7459              : #line 5880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7460              : (TARGET_AVX512FP16))
    7461              :                 return 216; /* fix_trunchfsi2 */
    7462              :               break;
    7463              : 
    7464              :             case 1:
    7465              :               if (
    7466              : #line 6056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7467              : (SSE_FLOAT_MODE_P (SFmode)
    7468              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)))
    7469              :                 return 229; /* fix_truncsfsi_sse */
    7470              :               break;
    7471              : 
    7472              :             case 2:
    7473              :               if (
    7474              : #line 6056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7475              : (SSE_FLOAT_MODE_P (DFmode)
    7476              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)))
    7477              :                 return 231; /* fix_truncdfsi_sse */
    7478              :               break;
    7479              : 
    7480              :             default:
    7481              :               break;
    7482              :             }
    7483              :         }
    7484              :       if (pnum_clobbers == NULL
    7485              :           || !nonimmediate_operand (operands[0], E_SImode)
    7486              :           || !register_operand (operands[1], E_VOIDmode))
    7487              :         return -1;
    7488              :       if (
    7489              : #line 6086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7490              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7491              :    && TARGET_FISTTP
    7492              :    && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7493              :          && (TARGET_64BIT || SImode != DImode))
    7494              :         && TARGET_SSE_MATH)))
    7495              :         {
    7496              :           *pnum_clobbers = 1;
    7497              :           return 234; /* fix_truncsi_i387_fisttp */
    7498              :         }
    7499              :       if (!
    7500              : #line 6104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7501              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7502              :    && !TARGET_FISTTP
    7503              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7504              :          && (TARGET_64BIT || SImode != DImode))
    7505              :    && ix86_pre_reload_split ()))
    7506              :         return -1;
    7507              :       *pnum_clobbers = 1;
    7508              :       return 237; /* *fix_truncsi_i387_1 */
    7509              : 
    7510              :     case E_DImode:
    7511              :       if (GET_MODE (x3) != E_DImode)
    7512              :         return -1;
    7513              :       if (register_operand (operands[0], E_DImode))
    7514              :         {
    7515              :           switch (pattern264 ())
    7516              :             {
    7517              :             case 0:
    7518              :               if ((
    7519              : #line 5880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7520              : (TARGET_AVX512FP16) && 
    7521              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7522              : (TARGET_64BIT)))
    7523              :                 return 218; /* fix_trunchfdi2 */
    7524              :               break;
    7525              : 
    7526              :             case 1:
    7527              :               if ((
    7528              : #line 6056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7529              : (SSE_FLOAT_MODE_P (SFmode)
    7530              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)) && 
    7531              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7532              : (TARGET_64BIT)))
    7533              :                 return 230; /* fix_truncsfdi_sse */
    7534              :               break;
    7535              : 
    7536              :             case 2:
    7537              :               if ((
    7538              : #line 6056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7539              : (SSE_FLOAT_MODE_P (DFmode)
    7540              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)) && 
    7541              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7542              : (TARGET_64BIT)))
    7543              :                 return 232; /* fix_truncdfdi_sse */
    7544              :               break;
    7545              : 
    7546              :             default:
    7547              :               break;
    7548              :             }
    7549              :         }
    7550              :       if (pnum_clobbers == NULL
    7551              :           || !nonimmediate_operand (operands[0], E_DImode)
    7552              :           || !register_operand (operands[1], E_VOIDmode))
    7553              :         return -1;
    7554              :       if (
    7555              : #line 6086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7556              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7557              :    && TARGET_FISTTP
    7558              :    && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7559              :          && (TARGET_64BIT || DImode != DImode))
    7560              :         && TARGET_SSE_MATH)))
    7561              :         {
    7562              :           *pnum_clobbers = 1;
    7563              :           return 235; /* fix_truncdi_i387_fisttp */
    7564              :         }
    7565              :       if (!
    7566              : #line 6104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7567              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7568              :    && !TARGET_FISTTP
    7569              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7570              :          && (TARGET_64BIT || DImode != DImode))
    7571              :    && ix86_pre_reload_split ()))
    7572              :         return -1;
    7573              :       *pnum_clobbers = 1;
    7574              :       return 238; /* *fix_truncdi_i387_1 */
    7575              : 
    7576              :     case E_HImode:
    7577              :       if (pattern263 (x3, pnum_clobbers, 
    7578              : E_VOIDmode, 
    7579              : E_HImode) != 0)
    7580              :         return -1;
    7581              :       if (
    7582              : #line 6086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7583              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7584              :    && TARGET_FISTTP
    7585              :    && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7586              :          && (TARGET_64BIT || HImode != DImode))
    7587              :         && TARGET_SSE_MATH)))
    7588              :         {
    7589              :           *pnum_clobbers = 1;
    7590              :           return 233; /* fix_trunchi_i387_fisttp */
    7591              :         }
    7592              :       if (!
    7593              : #line 6104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7594              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7595              :    && !TARGET_FISTTP
    7596              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7597              :          && (TARGET_64BIT || HImode != DImode))
    7598              :    && ix86_pre_reload_split ()))
    7599              :         return -1;
    7600              :       *pnum_clobbers = 1;
    7601              :       return 236; /* *fix_trunchi_i387_1 */
    7602              : 
    7603              :     case E_V2SImode:
    7604              :       if (!register_operand (operands[0], E_V2SImode)
    7605              :           || GET_MODE (x3) != E_V2SImode
    7606              :           || !vector_operand (operands[1], E_V2DFmode)
    7607              :           || !
    7608              : #line 9323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7609              : (TARGET_SSE2))
    7610              :         return -1;
    7611              :       return 4944; /* sse2_cvttpd2pi */
    7612              : 
    7613              :     default:
    7614              :       return -1;
    7615              :     }
    7616              : }
    7617              : 
    7618              :  int
    7619              : recog_42 (rtx x1 ATTRIBUTE_UNUSED,
    7620              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7621              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7622              : {
    7623              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7624              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    7625              :   rtx x10, x11, x12, x13, x14, x15, x16;
    7626              :   int res ATTRIBUTE_UNUSED;
    7627              :   x2 = XEXP (x1, 1);
    7628              :   x3 = XEXP (x2, 0);
    7629              :   switch (GET_CODE (x3))
    7630              :     {
    7631              :     case REG:
    7632              :     case SUBREG:
    7633              :     case MEM:
    7634              :       operands[1] = x3;
    7635              :       res = recog_38 (x1, insn, pnum_clobbers);
    7636              :       if (res >= 0)
    7637              :         return res;
    7638              :       if (pnum_clobbers == NULL
    7639              :           || GET_CODE (x3) != SUBREG
    7640              :           || maybe_ne (SUBREG_BYTE (x3), 0))
    7641              :         return -1;
    7642              :       x4 = XEXP (x3, 0);
    7643              :       switch (GET_CODE (x4))
    7644              :         {
    7645              :         case ASHIFTRT:
    7646              :         case LSHIFTRT:
    7647              :         case SIGN_EXTRACT:
    7648              :         case ZERO_EXTRACT:
    7649              :           operands[3] = x4;
    7650              :           if (GET_MODE (x2) != E_QImode
    7651              :               || GET_MODE (x3) != E_QImode)
    7652              :             return -1;
    7653              :           x5 = XEXP (x4, 0);
    7654              :           operands[2] = x5;
    7655              :           switch (pattern1083 (x1))
    7656              :             {
    7657              :             case 0:
    7658              :               if (
    7659              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7660              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7661              :                 {
    7662              :                   *pnum_clobbers = 1;
    7663              :                   return 759; /* *andqi_exthi_1_slp */
    7664              :                 }
    7665              :               break;
    7666              : 
    7667              :             case 1:
    7668              :               if (
    7669              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7670              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7671              :                 {
    7672              :                   *pnum_clobbers = 1;
    7673              :                   return 762; /* *andqi_extsi_1_slp */
    7674              :                 }
    7675              :               break;
    7676              : 
    7677              :             case 2:
    7678              :               if ((
    7679              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7680              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    7681              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7682              : (TARGET_64BIT)))
    7683              :                 {
    7684              :                   *pnum_clobbers = 1;
    7685              :                   return 765; /* *andqi_extdi_1_slp */
    7686              :                 }
    7687              :               break;
    7688              : 
    7689              :             case 3:
    7690              :               *pnum_clobbers = 1;
    7691              :               return 783; /* *andqi_exthi_0 */
    7692              : 
    7693              :             case 4:
    7694              :               *pnum_clobbers = 1;
    7695              :               return 786; /* *andqi_extsi_0 */
    7696              : 
    7697              :             case 5:
    7698              :               if (
    7699              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7700              : (TARGET_64BIT))
    7701              :                 {
    7702              :                   *pnum_clobbers = 1;
    7703              :                   return 789; /* *andqi_extdi_0 */
    7704              :                 }
    7705              :               break;
    7706              : 
    7707              :             default:
    7708              :               break;
    7709              :             }
    7710              :           x6 = XEXP (x2, 1);
    7711              :           if (GET_CODE (x6) != SUBREG)
    7712              :             return -1;
    7713              :           switch (pattern1086 (x1))
    7714              :             {
    7715              :             case 0:
    7716              :               if (!
    7717              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7718              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7719              :                 return -1;
    7720              :               *pnum_clobbers = 1;
    7721              :               return 768; /* *andqi_exthi_2_slp */
    7722              : 
    7723              :             case 1:
    7724              :               if (!
    7725              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7726              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7727              :                 return -1;
    7728              :               *pnum_clobbers = 1;
    7729              :               return 771; /* *andqi_extsi_2_slp */
    7730              : 
    7731              :             case 2:
    7732              :               if (!(
    7733              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7734              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    7735              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7736              : (TARGET_64BIT)))
    7737              :                 return -1;
    7738              :               *pnum_clobbers = 1;
    7739              :               return 774; /* *andqi_extdi_2_slp */
    7740              : 
    7741              :             case 3:
    7742              :               *pnum_clobbers = 1;
    7743              :               return 792; /* *andqi_ext2hi_0 */
    7744              : 
    7745              :             case 4:
    7746              :               *pnum_clobbers = 1;
    7747              :               return 795; /* *andqi_ext2si_0 */
    7748              : 
    7749              :             case 5:
    7750              :               if (!
    7751              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7752              : (TARGET_64BIT))
    7753              :                 return -1;
    7754              :               *pnum_clobbers = 1;
    7755              :               return 798; /* *andqi_ext2di_0 */
    7756              : 
    7757              :             default:
    7758              :               return -1;
    7759              :             }
    7760              : 
    7761              :         case ROTATE:
    7762              :           if (GET_MODE (x4) != E_SImode)
    7763              :             return -1;
    7764              :           x5 = XEXP (x4, 0);
    7765              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
    7766              :             return -1;
    7767              :           x7 = XEXP (x1, 0);
    7768              :           operands[0] = x7;
    7769              :           x8 = XEXP (x4, 1);
    7770              :           operands[2] = x8;
    7771              :           if (!register_operand (operands[2], E_QImode))
    7772              :             return -1;
    7773              :           x6 = XEXP (x2, 1);
    7774              :           operands[1] = x6;
    7775              :           switch (GET_MODE (operands[0]))
    7776              :             {
    7777              :             case E_QImode:
    7778              :               if (pattern1368 (x2, 
    7779              : E_QImode) != 0
    7780              :                   || !
    7781              : #line 19902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7782              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    7783              :                 return -1;
    7784              :               *pnum_clobbers = 1;
    7785              :               return 1441; /* *btrqi_1 */
    7786              : 
    7787              :             case E_HImode:
    7788              :               if (pattern1368 (x2, 
    7789              : E_HImode) != 0
    7790              :                   || !
    7791              : #line 19902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7792              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    7793              :                 return -1;
    7794              :               *pnum_clobbers = 1;
    7795              :               return 1442; /* *btrhi_1 */
    7796              : 
    7797              :             default:
    7798              :               return -1;
    7799              :             }
    7800              : 
    7801              :         default:
    7802              :           return -1;
    7803              :         }
    7804              : 
    7805              :     case NOT:
    7806              :       x7 = XEXP (x1, 0);
    7807              :       operands[0] = x7;
    7808              :       x4 = XEXP (x3, 0);
    7809              :       operands[1] = x4;
    7810              :       res = recog_39 (x1, insn, pnum_clobbers);
    7811              :       if (res >= 0)
    7812              :         return res;
    7813              :       if (pnum_clobbers == NULL
    7814              :           || !register_operand (operands[0], E_QImode)
    7815              :           || GET_CODE (x4) != SUBREG
    7816              :           || maybe_ne (SUBREG_BYTE (x4), 0)
    7817              :           || GET_MODE (x4) != E_QImode)
    7818              :         return -1;
    7819              :       x5 = XEXP (x4, 0);
    7820              :       if (GET_CODE (x5) != LSHIFTRT)
    7821              :         return -1;
    7822              :       x6 = XEXP (x2, 1);
    7823              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    7824              :           || GET_MODE (x2) != E_QImode
    7825              :           || GET_MODE (x3) != E_QImode)
    7826              :         return -1;
    7827              :       x9 = XEXP (x5, 0);
    7828              :       operands[1] = x9;
    7829              :       x10 = XEXP (x5, 1);
    7830              :       operands[2] = x10;
    7831              :       if (!register_operand (operands[2], E_QImode))
    7832              :         return -1;
    7833              :       switch (GET_MODE (x5))
    7834              :         {
    7835              :         case E_SImode:
    7836              :           if (!nonimmediate_operand (operands[1], E_SImode)
    7837              :               || !
    7838              : #line 20342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7839              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    7840              :             return -1;
    7841              :           *pnum_clobbers = 1;
    7842              :           return 1466; /* *btsi_setncqi */
    7843              : 
    7844              :         case E_DImode:
    7845              :           if (!nonimmediate_operand (operands[1], E_DImode)
    7846              :               || !(
    7847              : #line 20342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7848              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
    7849              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7850              : (TARGET_64BIT)))
    7851              :             return -1;
    7852              :           *pnum_clobbers = 1;
    7853              :           return 1467; /* *btdi_setncqi */
    7854              : 
    7855              :         default:
    7856              :           return -1;
    7857              :         }
    7858              : 
    7859              :     case UNSPEC:
    7860              :       x7 = XEXP (x1, 0);
    7861              :       operands[0] = x7;
    7862              :       switch (XVECLEN (x3, 0))
    7863              :         {
    7864              :         case 3:
    7865              :           x11 = XVECEXP (x3, 0, 2);
    7866              :           if (GET_CODE (x11) != CONST_INT)
    7867              :             return -1;
    7868              :           x12 = XVECEXP (x3, 0, 0);
    7869              :           operands[1] = x12;
    7870              :           x13 = XVECEXP (x3, 0, 1);
    7871              :           operands[2] = x13;
    7872              :           switch (XINT (x3, 1))
    7873              :             {
    7874              :             case 60:
    7875              :               operands[3] = x11;
    7876              :               res = recog_40 (x1, insn, pnum_clobbers);
    7877              :               if (res >= 0)
    7878              :                 return res;
    7879              :               if (XWINT (x11, 0) != 0L)
    7880              :                 return -1;
    7881              :               switch (pattern976 (x2))
    7882              :                 {
    7883              :                 case 0:
    7884              :                   if (!(
    7885              : #line 4811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7886              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7887              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7888              : (TARGET_AVX512VL)))
    7889              :                     return -1;
    7890              :                   return 3467; /* *avx512vl_eqv4si3_and15 */
    7891              : 
    7892              :                 case 1:
    7893              :                   if (!(
    7894              : #line 4811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7895              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7896              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7897              : (TARGET_AVX512VL)))
    7898              :                     return -1;
    7899              :                   return 3469; /* *avx512vl_eqv4di3_and15 */
    7900              : 
    7901              :                 case 2:
    7902              :                   if (!
    7903              : #line 4860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7904              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7905              :                     return -1;
    7906              :                   return 3474; /* *avx512vl_eqv2di_and3 */
    7907              : 
    7908              :                 case 3:
    7909              :                   if (!(
    7910              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7911              : (TARGET_AVX512F) && (
    7912              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7913              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7914              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7915              : (TARGET_AVX512VL))))
    7916              :                     return -1;
    7917              :                   return 3577; /* *avx512vl_eqv16qi3_mask_1 */
    7918              : 
    7919              :                 case 4:
    7920              :                   if (!(
    7921              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7922              : (TARGET_AVX512F) && (
    7923              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7924              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7925              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7926              : (TARGET_AVX512VL))))
    7927              :                     return -1;
    7928              :                   return 3589; /* *avx512vl_eqv16hi3_mask_1 */
    7929              : 
    7930              :                 case 5:
    7931              :                   if (!(
    7932              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7933              : (TARGET_AVX512F) && 
    7934              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7935              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    7936              :                     return -1;
    7937              :                   return 3633; /* *avx512f_eqv16si3_mask_1 */
    7938              : 
    7939              :                 case 6:
    7940              :                   if (!(
    7941              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7942              : (TARGET_AVX512F) && (
    7943              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7944              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7945              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7946              : (TARGET_AVX512VL))))
    7947              :                     return -1;
    7948              :                   return 3593; /* *avx512vl_eqv8hi3_mask_1 */
    7949              : 
    7950              :                 case 7:
    7951              :                   if (!(
    7952              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7953              : (TARGET_AVX512F) && (
    7954              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7955              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7956              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7957              : (TARGET_AVX512VL))))
    7958              :                     return -1;
    7959              :                   return 3637; /* *avx512vl_eqv8si3_mask_1 */
    7960              : 
    7961              :                 case 8:
    7962              :                   if (!(
    7963              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7964              : (TARGET_AVX512F) && (
    7965              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7966              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7967              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7968              : (TARGET_AVX512VL))))
    7969              :                     return -1;
    7970              :                   return 3641; /* *avx512vl_eqv4si3_mask_1 */
    7971              : 
    7972              :                 case 9:
    7973              :                   if (!(
    7974              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7975              : (TARGET_AVX512F) && 
    7976              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7977              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    7978              :                     return -1;
    7979              :                   return 3645; /* *avx512f_eqv8di3_mask_1 */
    7980              : 
    7981              :                 case 10:
    7982              :                   if (!(
    7983              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7984              : (TARGET_AVX512F) && (
    7985              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7986              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7987              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7988              : (TARGET_AVX512VL))))
    7989              :                     return -1;
    7990              :                   return 3649; /* *avx512vl_eqv4di3_mask_1 */
    7991              : 
    7992              :                 case 11:
    7993              :                   if (!(
    7994              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7995              : (TARGET_AVX512F) && (
    7996              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7997              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7998              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7999              : (TARGET_AVX512VL))))
    8000              :                     return -1;
    8001              :                   return 3653; /* *avx512vl_eqv2di3_mask_1 */
    8002              : 
    8003              :                 default:
    8004              :                   return -1;
    8005              :                 }
    8006              : 
    8007              :             case 158:
    8008              :               if (GET_MODE (x3) == E_QImode)
    8009              :                 {
    8010              :                   res = recog_41 (x1, insn, pnum_clobbers);
    8011              :                   if (res >= 0)
    8012              :                     return res;
    8013              :                 }
    8014              :               if (XWINT (x11, 0) == 0L)
    8015              :                 {
    8016              :                   switch (pattern976 (x2))
    8017              :                     {
    8018              :                     case 0:
    8019              :                       if ((
    8020              : #line 4811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8021              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8022              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8023              : (TARGET_AVX512VL)))
    8024              :                         return 3468; /* *avx512vl_eqv4si3_and15 */
    8025              :                       break;
    8026              : 
    8027              :                     case 1:
    8028              :                       if ((
    8029              : #line 4811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8030              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8031              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8032              : (TARGET_AVX512VL)))
    8033              :                         return 3470; /* *avx512vl_eqv4di3_and15 */
    8034              :                       break;
    8035              : 
    8036              :                     case 2:
    8037              :                       if (
    8038              : #line 4860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8039              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8040              :                         return 3475; /* *avx512vl_eqv2di_and3 */
    8041              :                       break;
    8042              : 
    8043              :                     case 3:
    8044              :                       if ((
    8045              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8046              : (TARGET_AVX512F) && (
    8047              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8048              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8049              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8050              : (TARGET_AVX512VL))))
    8051              :                         return 3579; /* *avx512vl_eqv16qi3_mask_1 */
    8052              :                       break;
    8053              : 
    8054              :                     case 4:
    8055              :                       if ((
    8056              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8057              : (TARGET_AVX512F) && (
    8058              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8059              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8060              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8061              : (TARGET_AVX512VL))))
    8062              :                         return 3591; /* *avx512vl_eqv16hi3_mask_1 */
    8063              :                       break;
    8064              : 
    8065              :                     case 5:
    8066              :                       if ((
    8067              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8068              : (TARGET_AVX512F) && 
    8069              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8070              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    8071              :                         return 3635; /* *avx512f_eqv16si3_mask_1 */
    8072              :                       break;
    8073              : 
    8074              :                     case 6:
    8075              :                       if ((
    8076              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8077              : (TARGET_AVX512F) && (
    8078              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8079              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8080              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8081              : (TARGET_AVX512VL))))
    8082              :                         return 3595; /* *avx512vl_eqv8hi3_mask_1 */
    8083              :                       break;
    8084              : 
    8085              :                     case 7:
    8086              :                       if ((
    8087              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8088              : (TARGET_AVX512F) && (
    8089              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8090              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8091              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8092              : (TARGET_AVX512VL))))
    8093              :                         return 3639; /* *avx512vl_eqv8si3_mask_1 */
    8094              :                       break;
    8095              : 
    8096              :                     case 8:
    8097              :                       if ((
    8098              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8099              : (TARGET_AVX512F) && (
    8100              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8101              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8102              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8103              : (TARGET_AVX512VL))))
    8104              :                         return 3643; /* *avx512vl_eqv4si3_mask_1 */
    8105              :                       break;
    8106              : 
    8107              :                     case 9:
    8108              :                       if ((
    8109              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8110              : (TARGET_AVX512F) && 
    8111              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8112              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    8113              :                         return 3647; /* *avx512f_eqv8di3_mask_1 */
    8114              :                       break;
    8115              : 
    8116              :                     case 10:
    8117              :                       if ((
    8118              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8119              : (TARGET_AVX512F) && (
    8120              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8121              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8122              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8123              : (TARGET_AVX512VL))))
    8124              :                         return 3651; /* *avx512vl_eqv4di3_mask_1 */
    8125              :                       break;
    8126              : 
    8127              :                     case 11:
    8128              :                       if ((
    8129              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8130              : (TARGET_AVX512F) && (
    8131              : #line 5072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8132              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8133              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8134              : (TARGET_AVX512VL))))
    8135              :                         return 3655; /* *avx512vl_eqv2di3_mask_1 */
    8136              :                       break;
    8137              : 
    8138              :                     default:
    8139              :                       break;
    8140              :                     }
    8141              :                 }
    8142              :               operands[3] = x11;
    8143              :               if (!const_0_to_7_operand (operands[3], E_SImode))
    8144              :                 return -1;
    8145              :               switch (pattern1089 (x2))
    8146              :                 {
    8147              :                 case 0:
    8148              :                   switch (pattern748 ())
    8149              :                     {
    8150              :                     case 0:
    8151              :                       if (!(
    8152              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8153              : (TARGET_AVX512F) && (
    8154              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8155              : (TARGET_AVX512F) && 
    8156              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8157              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8158              :                         return -1;
    8159              :                       return 3661; /* avx512vl_ucmpv16qi3_mask */
    8160              : 
    8161              :                     case 1:
    8162              :                       if (!(
    8163              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8164              : (TARGET_AVX512F) && (
    8165              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8166              : (TARGET_AVX512F) && 
    8167              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8168              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8169              :                         return -1;
    8170              :                       return 3665; /* avx512vl_ucmpv16hi3_mask */
    8171              : 
    8172              :                     case 2:
    8173              :                       if (!
    8174              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8175              : (TARGET_AVX512F))
    8176              :                         return -1;
    8177              :                       return 3669; /* avx512f_ucmpv16si3_mask */
    8178              : 
    8179              :                     default:
    8180              :                       return -1;
    8181              :                     }
    8182              : 
    8183              :                 case 1:
    8184              :                   switch (pattern749 ())
    8185              :                     {
    8186              :                     case 0:
    8187              :                       if (!(
    8188              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8189              : (TARGET_AVX512F) && (
    8190              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8191              : (TARGET_AVX512F) && 
    8192              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8193              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8194              :                         return -1;
    8195              :                       return 3667; /* avx512vl_ucmpv8hi3_mask */
    8196              : 
    8197              :                     case 1:
    8198              :                       if (!(
    8199              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8200              : (TARGET_AVX512F) && (
    8201              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8202              : (TARGET_AVX512F) && 
    8203              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8204              : (TARGET_AVX512VL))))
    8205              :                         return -1;
    8206              :                       return 3671; /* avx512vl_ucmpv8si3_mask */
    8207              : 
    8208              :                     case 2:
    8209              :                       if (!(
    8210              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8211              : (TARGET_AVX512F) && (
    8212              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8213              : (TARGET_AVX512F) && 
    8214              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8215              : (TARGET_AVX512VL))))
    8216              :                         return -1;
    8217              :                       return 3673; /* avx512vl_ucmpv4si3_mask */
    8218              : 
    8219              :                     case 3:
    8220              :                       if (!
    8221              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8222              : (TARGET_AVX512F))
    8223              :                         return -1;
    8224              :                       return 3675; /* avx512f_ucmpv8di3_mask */
    8225              : 
    8226              :                     case 4:
    8227              :                       if (!(
    8228              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8229              : (TARGET_AVX512F) && (
    8230              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8231              : (TARGET_AVX512F) && 
    8232              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8233              : (TARGET_AVX512VL))))
    8234              :                         return -1;
    8235              :                       return 3677; /* avx512vl_ucmpv4di3_mask */
    8236              : 
    8237              :                     case 5:
    8238              :                       if (!(
    8239              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8240              : (TARGET_AVX512F) && (
    8241              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8242              : (TARGET_AVX512F) && 
    8243              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8244              : (TARGET_AVX512VL))))
    8245              :                         return -1;
    8246              :                       return 3679; /* avx512vl_ucmpv2di3_mask */
    8247              : 
    8248              :                     default:
    8249              :                       return -1;
    8250              :                     }
    8251              : 
    8252              :                 default:
    8253              :                   return -1;
    8254              :                 }
    8255              : 
    8256              :             default:
    8257              :               return -1;
    8258              :             }
    8259              : 
    8260              :         case 2:
    8261              :           x12 = XVECEXP (x3, 0, 0);
    8262              :           operands[1] = x12;
    8263              :           x13 = XVECEXP (x3, 0, 1);
    8264              :           operands[2] = x13;
    8265              :           switch (XINT (x3, 1))
    8266              :             {
    8267              :             case 159:
    8268              :               switch (pattern750 (x2))
    8269              :                 {
    8270              :                 case 0:
    8271              :                   if (!(
    8272              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8273              : (TARGET_AVX512F) && (
    8274              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8275              : (TARGET_AVX512F) && 
    8276              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8277              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8278              :                     return -1;
    8279              :                   return 8189; /* avx512vl_testmv16qi3_mask */
    8280              : 
    8281              :                 case 1:
    8282              :                   if (!(
    8283              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8284              : (TARGET_AVX512F) && (
    8285              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8286              : (TARGET_AVX512F) && 
    8287              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8288              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8289              :                     return -1;
    8290              :                   return 8193; /* avx512vl_testmv16hi3_mask */
    8291              : 
    8292              :                 case 2:
    8293              :                   if (!
    8294              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8295              : (TARGET_AVX512F))
    8296              :                     return -1;
    8297              :                   return 8197; /* avx512f_testmv16si3_mask */
    8298              : 
    8299              :                 case 3:
    8300              :                   if (!(
    8301              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8302              : (TARGET_AVX512F) && (
    8303              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8304              : (TARGET_AVX512F) && 
    8305              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8306              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8307              :                     return -1;
    8308              :                   return 8195; /* avx512vl_testmv8hi3_mask */
    8309              : 
    8310              :                 case 4:
    8311              :                   if (!(
    8312              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8313              : (TARGET_AVX512F) && (
    8314              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8315              : (TARGET_AVX512F) && 
    8316              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8317              : (TARGET_AVX512VL))))
    8318              :                     return -1;
    8319              :                   return 8199; /* avx512vl_testmv8si3_mask */
    8320              : 
    8321              :                 case 5:
    8322              :                   if (!(
    8323              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8324              : (TARGET_AVX512F) && (
    8325              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8326              : (TARGET_AVX512F) && 
    8327              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8328              : (TARGET_AVX512VL))))
    8329              :                     return -1;
    8330              :                   return 8201; /* avx512vl_testmv4si3_mask */
    8331              : 
    8332              :                 case 6:
    8333              :                   if (!
    8334              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8335              : (TARGET_AVX512F))
    8336              :                     return -1;
    8337              :                   return 8203; /* avx512f_testmv8di3_mask */
    8338              : 
    8339              :                 case 7:
    8340              :                   if (!(
    8341              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8342              : (TARGET_AVX512F) && (
    8343              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8344              : (TARGET_AVX512F) && 
    8345              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8346              : (TARGET_AVX512VL))))
    8347              :                     return -1;
    8348              :                   return 8205; /* avx512vl_testmv4di3_mask */
    8349              : 
    8350              :                 case 8:
    8351              :                   if (!(
    8352              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8353              : (TARGET_AVX512F) && (
    8354              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8355              : (TARGET_AVX512F) && 
    8356              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8357              : (TARGET_AVX512VL))))
    8358              :                     return -1;
    8359              :                   return 8207; /* avx512vl_testmv2di3_mask */
    8360              : 
    8361              :                 default:
    8362              :                   return -1;
    8363              :                 }
    8364              : 
    8365              :             case 160:
    8366              :               switch (pattern750 (x2))
    8367              :                 {
    8368              :                 case 0:
    8369              :                   if (!(
    8370              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8371              : (TARGET_AVX512F) && (
    8372              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8373              : (TARGET_AVX512F) && 
    8374              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8375              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8376              :                     return -1;
    8377              :                   return 8213; /* avx512vl_testnmv16qi3_mask */
    8378              : 
    8379              :                 case 1:
    8380              :                   if (!(
    8381              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8382              : (TARGET_AVX512F) && (
    8383              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8384              : (TARGET_AVX512F) && 
    8385              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8386              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8387              :                     return -1;
    8388              :                   return 8217; /* avx512vl_testnmv16hi3_mask */
    8389              : 
    8390              :                 case 2:
    8391              :                   if (!
    8392              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8393              : (TARGET_AVX512F))
    8394              :                     return -1;
    8395              :                   return 8221; /* avx512f_testnmv16si3_mask */
    8396              : 
    8397              :                 case 3:
    8398              :                   if (!(
    8399              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8400              : (TARGET_AVX512F) && (
    8401              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8402              : (TARGET_AVX512F) && 
    8403              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8404              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8405              :                     return -1;
    8406              :                   return 8219; /* avx512vl_testnmv8hi3_mask */
    8407              : 
    8408              :                 case 4:
    8409              :                   if (!(
    8410              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8411              : (TARGET_AVX512F) && (
    8412              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8413              : (TARGET_AVX512F) && 
    8414              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8415              : (TARGET_AVX512VL))))
    8416              :                     return -1;
    8417              :                   return 8223; /* avx512vl_testnmv8si3_mask */
    8418              : 
    8419              :                 case 5:
    8420              :                   if (!(
    8421              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8422              : (TARGET_AVX512F) && (
    8423              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8424              : (TARGET_AVX512F) && 
    8425              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8426              : (TARGET_AVX512VL))))
    8427              :                     return -1;
    8428              :                   return 8225; /* avx512vl_testnmv4si3_mask */
    8429              : 
    8430              :                 case 6:
    8431              :                   if (!
    8432              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8433              : (TARGET_AVX512F))
    8434              :                     return -1;
    8435              :                   return 8227; /* avx512f_testnmv8di3_mask */
    8436              : 
    8437              :                 case 7:
    8438              :                   if (!(
    8439              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8440              : (TARGET_AVX512F) && (
    8441              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8442              : (TARGET_AVX512F) && 
    8443              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8444              : (TARGET_AVX512VL))))
    8445              :                     return -1;
    8446              :                   return 8229; /* avx512vl_testnmv4di3_mask */
    8447              : 
    8448              :                 case 8:
    8449              :                   if (!(
    8450              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8451              : (TARGET_AVX512F) && (
    8452              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8453              : (TARGET_AVX512F) && 
    8454              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8455              : (TARGET_AVX512VL))))
    8456              :                     return -1;
    8457              :                   return 8231; /* avx512vl_testnmv2di3_mask */
    8458              : 
    8459              :                 default:
    8460              :                   return -1;
    8461              :                 }
    8462              : 
    8463              :             case 194:
    8464              :               if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    8465              :                 return -1;
    8466              :               x6 = XEXP (x2, 1);
    8467              :               switch (GET_CODE (x6))
    8468              :                 {
    8469              :                 case REG:
    8470              :                 case SUBREG:
    8471              :                   operands[3] = x6;
    8472              :                   switch (GET_MODE (operands[0]))
    8473              :                     {
    8474              :                     case E_HImode:
    8475              :                       if (pattern286 (x2, 
    8476              : E_HImode) != 0)
    8477              :                         return -1;
    8478              :                       switch (GET_MODE (operands[1]))
    8479              :                         {
    8480              :                         case E_V16HFmode:
    8481              :                           if (!vector_operand (operands[1], E_V16HFmode)
    8482              :                               || !(
    8483              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8484              : (TARGET_AVX512F) && (
    8485              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8486              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V16HFmode)) && 
    8487              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8488              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
    8489              :                             return -1;
    8490              :                           return 10089; /* avx512dq_fpclassv16hf_mask */
    8491              : 
    8492              :                         case E_V16SFmode:
    8493              :                           if (!vector_operand (operands[1], E_V16SFmode)
    8494              :                               || !(
    8495              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8496              : (TARGET_AVX512F) && 
    8497              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8498              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V16SFmode))))
    8499              :                             return -1;
    8500              :                           return 10093; /* avx512dq_fpclassv16sf_mask */
    8501              : 
    8502              :                         default:
    8503              :                           return -1;
    8504              :                         }
    8505              : 
    8506              :                     case E_QImode:
    8507              :                       if (pattern286 (x2, 
    8508              : E_QImode) != 0)
    8509              :                         return -1;
    8510              :                       switch (GET_MODE (operands[1]))
    8511              :                         {
    8512              :                         case E_V8HFmode:
    8513              :                           if (!vector_operand (operands[1], E_V8HFmode)
    8514              :                               || !(
    8515              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8516              : (TARGET_AVX512F) && (
    8517              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8518              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8HFmode)) && 
    8519              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8520              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
    8521              :                             return -1;
    8522              :                           return 10091; /* avx512dq_fpclassv8hf_mask */
    8523              : 
    8524              :                         case E_V8SFmode:
    8525              :                           if (!vector_operand (operands[1], E_V8SFmode)
    8526              :                               || !(
    8527              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8528              : (TARGET_AVX512F) && (
    8529              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8530              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8SFmode)) && 
    8531              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8532              : (TARGET_AVX512VL))))
    8533              :                             return -1;
    8534              :                           return 10095; /* avx512dq_fpclassv8sf_mask */
    8535              : 
    8536              :                         case E_V4SFmode:
    8537              :                           if (!vector_operand (operands[1], E_V4SFmode)
    8538              :                               || !(
    8539              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8540              : (TARGET_AVX512F) && (
    8541              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8542              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4SFmode)) && 
    8543              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8544              : (TARGET_AVX512VL))))
    8545              :                             return -1;
    8546              :                           return 10097; /* avx512dq_fpclassv4sf_mask */
    8547              : 
    8548              :                         case E_V8DFmode:
    8549              :                           if (!vector_operand (operands[1], E_V8DFmode)
    8550              :                               || !(
    8551              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8552              : (TARGET_AVX512F) && 
    8553              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8554              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8DFmode))))
    8555              :                             return -1;
    8556              :                           return 10099; /* avx512dq_fpclassv8df_mask */
    8557              : 
    8558              :                         case E_V4DFmode:
    8559              :                           if (!vector_operand (operands[1], E_V4DFmode)
    8560              :                               || !(
    8561              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8562              : (TARGET_AVX512F) && (
    8563              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8564              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4DFmode)) && 
    8565              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8566              : (TARGET_AVX512VL))))
    8567              :                             return -1;
    8568              :                           return 10101; /* avx512dq_fpclassv4df_mask */
    8569              : 
    8570              :                         case E_V2DFmode:
    8571              :                           if (!vector_operand (operands[1], E_V2DFmode)
    8572              :                               || !(
    8573              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8574              : (TARGET_AVX512F) && (
    8575              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8576              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V2DFmode)) && 
    8577              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8578              : (TARGET_AVX512VL))))
    8579              :                             return -1;
    8580              :                           return 10103; /* avx512dq_fpclassv2df_mask */
    8581              : 
    8582              :                         default:
    8583              :                           return -1;
    8584              :                         }
    8585              : 
    8586              :                     default:
    8587              :                       return -1;
    8588              :                     }
    8589              : 
    8590              :                 case CONST_INT:
    8591              :                   if (XWINT (x6, 0) != 1L
    8592              :                       || !register_operand (operands[0], E_QImode)
    8593              :                       || GET_MODE (x2) != E_QImode
    8594              :                       || GET_MODE (x3) != E_QImode)
    8595              :                     return -1;
    8596              :                   switch (GET_MODE (operands[1]))
    8597              :                     {
    8598              :                     case E_V8HFmode:
    8599              :                       if (!nonimmediate_operand (operands[1], E_V8HFmode)
    8600              :                           || !(
    8601              : #line 30922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8602              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8HFmode)) && 
    8603              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8604              : (TARGET_AVX512FP16)))
    8605              :                         return -1;
    8606              :                       return 10104; /* avx512dq_vmfpclassv8hf */
    8607              : 
    8608              :                     case E_V4SFmode:
    8609              :                       if (!nonimmediate_operand (operands[1], E_V4SFmode)
    8610              :                           || !
    8611              : #line 30922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8612              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4SFmode)))
    8613              :                         return -1;
    8614              :                       return 10106; /* avx512dq_vmfpclassv4sf */
    8615              : 
    8616              :                     case E_V2DFmode:
    8617              :                       if (!nonimmediate_operand (operands[1], E_V2DFmode)
    8618              :                           || !(
    8619              : #line 30922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8620              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V2DFmode)) && 
    8621              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8622              : (TARGET_SSE2)))
    8623              :                         return -1;
    8624              :                       return 10108; /* avx512dq_vmfpclassv2df */
    8625              : 
    8626              :                     default:
    8627              :                       return -1;
    8628              :                     }
    8629              : 
    8630              :                 default:
    8631              :                   return -1;
    8632              :                 }
    8633              : 
    8634              :             case 215:
    8635              :               if (GET_MODE (x3) != E_HImode
    8636              :                   || !register_operand (operands[0], E_HImode)
    8637              :                   || GET_MODE (x2) != E_HImode
    8638              :                   || !register_operand (operands[1], E_V16QImode)
    8639              :                   || !nonimmediate_operand (operands[2], E_V16QImode))
    8640              :                 return -1;
    8641              :               x6 = XEXP (x2, 1);
    8642              :               operands[3] = x6;
    8643              :               if (!register_operand (operands[3], E_HImode)
    8644              :                   || !(
    8645              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8646              : (TARGET_AVX512F) && (
    8647              : #line 32001 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8648              : (TARGET_AVX512BITALG) && 
    8649              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8650              : (TARGET_AVX512VL))))
    8651              :                 return -1;
    8652              :               return 10431; /* avx512vl_vpshufbitqmbv16qi_mask */
    8653              : 
    8654              :             case 263:
    8655              :               if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    8656              :                 return -1;
    8657              :               x6 = XEXP (x2, 1);
    8658              :               operands[3] = x6;
    8659              :               switch (GET_MODE (operands[0]))
    8660              :                 {
    8661              :                 case E_HImode:
    8662              :                   if (pattern1090 (x2, 
    8663              : E_HImode, 
    8664              : E_V16BFmode) != 0
    8665              :                       || !(
    8666              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8667              : (TARGET_AVX512F) && 
    8668              : #line 33521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8669              : (TARGET_AVX10_2)))
    8670              :                     return -1;
    8671              :                   return 10825; /* avx10_2_fpclassbf16_v16bf_mask */
    8672              : 
    8673              :                 case E_QImode:
    8674              :                   if (pattern1090 (x2, 
    8675              : E_QImode, 
    8676              : E_V8BFmode) != 0
    8677              :                       || !(
    8678              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8679              : (TARGET_AVX512F) && 
    8680              : #line 33521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8681              : (TARGET_AVX10_2)))
    8682              :                     return -1;
    8683              :                   return 10827; /* avx10_2_fpclassbf16_v8bf_mask */
    8684              : 
    8685              :                 default:
    8686              :                   return -1;
    8687              :                 }
    8688              : 
    8689              :             default:
    8690              :               return -1;
    8691              :             }
    8692              : 
    8693              :         default:
    8694              :           return -1;
    8695              :         }
    8696              : 
    8697              :     case AND:
    8698              :       if (GET_MODE (x3) != E_QImode)
    8699              :         return -1;
    8700              :       x4 = XEXP (x3, 0);
    8701              :       if (pattern89 (x4, 
    8702              : E_QImode, 
    8703              : 194, 
    8704              : 2) != 0)
    8705              :         return -1;
    8706              :       x14 = XEXP (x3, 1);
    8707              :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    8708              :         return -1;
    8709              :       x7 = XEXP (x1, 0);
    8710              :       operands[0] = x7;
    8711              :       if (!register_operand (operands[0], E_QImode)
    8712              :           || GET_MODE (x2) != E_QImode)
    8713              :         return -1;
    8714              :       x15 = XVECEXP (x4, 0, 0);
    8715              :       operands[1] = x15;
    8716              :       x16 = XVECEXP (x4, 0, 1);
    8717              :       operands[2] = x16;
    8718              :       if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    8719              :         return -1;
    8720              :       x6 = XEXP (x2, 1);
    8721              :       operands[3] = x6;
    8722              :       if (!register_operand (operands[3], E_QImode))
    8723              :         return -1;
    8724              :       switch (GET_MODE (operands[1]))
    8725              :         {
    8726              :         case E_V8HFmode:
    8727              :           if (!nonimmediate_operand (operands[1], E_V8HFmode)
    8728              :               || !(
    8729              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8730              : (TARGET_AVX512F) && (
    8731              : #line 30922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8732              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8HFmode)) && 
    8733              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8734              : (TARGET_AVX512FP16))))
    8735              :             return -1;
    8736              :           return 10105; /* avx512dq_vmfpclassv8hf_mask */
    8737              : 
    8738              :         case E_V4SFmode:
    8739              :           if (!nonimmediate_operand (operands[1], E_V4SFmode)
    8740              :               || !(
    8741              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8742              : (TARGET_AVX512F) && 
    8743              : #line 30922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8744              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4SFmode))))
    8745              :             return -1;
    8746              :           return 10107; /* avx512dq_vmfpclassv4sf_mask */
    8747              : 
    8748              :         case E_V2DFmode:
    8749              :           if (!nonimmediate_operand (operands[1], E_V2DFmode)
    8750              :               || !(
    8751              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8752              : (TARGET_AVX512F) && (
    8753              : #line 30922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8754              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V2DFmode)) && 
    8755              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8756              : (TARGET_SSE2))))
    8757              :             return -1;
    8758              :           return 10109; /* avx512dq_vmfpclassv2df_mask */
    8759              : 
    8760              :         default:
    8761              :           return -1;
    8762              :         }
    8763              : 
    8764              :     default:
    8765              :       return -1;
    8766              :     }
    8767              : }
    8768              : 
    8769              :  int
    8770              : recog_81 (rtx x1 ATTRIBUTE_UNUSED,
    8771              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8772              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8773              : {
    8774              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8775              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8776              :   rtx x10, x11;
    8777              :   int res ATTRIBUTE_UNUSED;
    8778              :   x2 = XEXP (x1, 1);
    8779              :   x3 = XEXP (x2, 0);
    8780              :   switch (GET_CODE (x3))
    8781              :     {
    8782              :     case NEG:
    8783              :       if (pnum_clobbers == NULL)
    8784              :         return -1;
    8785              :       x4 = XEXP (x1, 0);
    8786              :       if (GET_CODE (x4) != REG
    8787              :           || REGNO (x4) != 17)
    8788              :         return -1;
    8789              :       x5 = XEXP (x3, 0);
    8790              :       operands[2] = x5;
    8791              :       x6 = XEXP (x2, 1);
    8792              :       operands[1] = x6;
    8793              :       switch (GET_MODE (x3))
    8794              :         {
    8795              :         case E_QImode:
    8796              :           if (!general_operand (operands[2], E_QImode)
    8797              :               || !nonimmediate_operand (operands[1], E_QImode)
    8798              :               || !
    8799              : #line 7421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8800              : (ix86_match_ccmode (insn, CCZmode)
    8801              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8802              :             return -1;
    8803              :           *pnum_clobbers = 1;
    8804              :           return 318; /* *addqi_3 */
    8805              : 
    8806              :         case E_HImode:
    8807              :           if (!general_operand (operands[2], E_HImode)
    8808              :               || !nonimmediate_operand (operands[1], E_HImode)
    8809              :               || !
    8810              : #line 7421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8811              : (ix86_match_ccmode (insn, CCZmode)
    8812              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8813              :             return -1;
    8814              :           *pnum_clobbers = 1;
    8815              :           return 319; /* *addhi_3 */
    8816              : 
    8817              :         case E_SImode:
    8818              :           if (!x86_64_general_operand (operands[2], E_SImode)
    8819              :               || !nonimmediate_operand (operands[1], E_SImode)
    8820              :               || !
    8821              : #line 7421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8822              : (ix86_match_ccmode (insn, CCZmode)
    8823              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8824              :             return -1;
    8825              :           *pnum_clobbers = 1;
    8826              :           return 320; /* *addsi_3 */
    8827              : 
    8828              :         case E_DImode:
    8829              :           if (!x86_64_general_operand (operands[2], E_DImode)
    8830              :               || !nonimmediate_operand (operands[1], E_DImode)
    8831              :               || !(
    8832              : #line 7421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8833              : (ix86_match_ccmode (insn, CCZmode)
    8834              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8835              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8836              : (TARGET_64BIT)))
    8837              :             return -1;
    8838              :           *pnum_clobbers = 1;
    8839              :           return 321; /* *adddi_3 */
    8840              : 
    8841              :         default:
    8842              :           return -1;
    8843              :         }
    8844              : 
    8845              :     case REG:
    8846              :     case SUBREG:
    8847              :     case MEM:
    8848              :       if (pnum_clobbers == NULL)
    8849              :         return -1;
    8850              :       operands[1] = x3;
    8851              :       x4 = XEXP (x1, 0);
    8852              :       if (GET_CODE (x4) != REG
    8853              :           || REGNO (x4) != 17)
    8854              :         return -1;
    8855              :       x6 = XEXP (x2, 1);
    8856              :       operands[2] = x6;
    8857              :       switch (GET_MODE (operands[1]))
    8858              :         {
    8859              :         case E_DImode:
    8860              :           if (!nonimmediate_operand (operands[1], E_DImode)
    8861              :               || !x86_64_immediate_operand (operands[2], E_DImode)
    8862              :               || !
    8863              : #line 7530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8864              : (TARGET_64BIT
    8865              :    && ix86_match_ccmode (insn, CCGCmode)))
    8866              :             return -1;
    8867              :           *pnum_clobbers = 1;
    8868              :           return 323; /* *adddi_4 */
    8869              : 
    8870              :         case E_QImode:
    8871              :           if (!nonimmediate_operand (operands[1], E_QImode)
    8872              :               || !const_int_operand (operands[2], E_QImode)
    8873              :               || !
    8874              : #line 7575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8875              : (ix86_match_ccmode (insn, CCGCmode)))
    8876              :             return -1;
    8877              :           *pnum_clobbers = 1;
    8878              :           return 324; /* *addqi_4 */
    8879              : 
    8880              :         case E_HImode:
    8881              :           if (!nonimmediate_operand (operands[1], E_HImode)
    8882              :               || !const_int_operand (operands[2], E_HImode)
    8883              :               || !
    8884              : #line 7575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8885              : (ix86_match_ccmode (insn, CCGCmode)))
    8886              :             return -1;
    8887              :           *pnum_clobbers = 1;
    8888              :           return 325; /* *addhi_4 */
    8889              : 
    8890              :         case E_SImode:
    8891              :           if (!nonimmediate_operand (operands[1], E_SImode)
    8892              :               || !const_int_operand (operands[2], E_SImode)
    8893              :               || !
    8894              : #line 7575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8895              : (ix86_match_ccmode (insn, CCGCmode)))
    8896              :             return -1;
    8897              :           *pnum_clobbers = 1;
    8898              :           return 326; /* *addsi_4 */
    8899              : 
    8900              :         default:
    8901              :           return -1;
    8902              :         }
    8903              : 
    8904              :     case PLUS:
    8905              :       if (pnum_clobbers == NULL)
    8906              :         return -1;
    8907              :       x4 = XEXP (x1, 0);
    8908              :       if (GET_CODE (x4) != REG
    8909              :           || REGNO (x4) != 17)
    8910              :         return -1;
    8911              :       x5 = XEXP (x3, 0);
    8912              :       operands[1] = x5;
    8913              :       x7 = XEXP (x3, 1);
    8914              :       operands[2] = x7;
    8915              :       x6 = XEXP (x2, 1);
    8916              :       if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8917              :         {
    8918              :           switch (pattern49 (x3))
    8919              :             {
    8920              :             case 0:
    8921              :               if (
    8922              : #line 7614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8923              : (ix86_match_ccmode (insn, CCGOCmode)
    8924              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8925              :                 {
    8926              :                   *pnum_clobbers = 1;
    8927              :                   return 327; /* *addqi_5 */
    8928              :                 }
    8929              :               break;
    8930              : 
    8931              :             case 1:
    8932              :               if (
    8933              : #line 7614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8934              : (ix86_match_ccmode (insn, CCGOCmode)
    8935              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8936              :                 {
    8937              :                   *pnum_clobbers = 1;
    8938              :                   return 328; /* *addhi_5 */
    8939              :                 }
    8940              :               break;
    8941              : 
    8942              :             case 2:
    8943              :               if (
    8944              : #line 7614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8945              : (ix86_match_ccmode (insn, CCGOCmode)
    8946              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8947              :                 {
    8948              :                   *pnum_clobbers = 1;
    8949              :                   return 329; /* *addsi_5 */
    8950              :                 }
    8951              :               break;
    8952              : 
    8953              :             case 3:
    8954              :               if ((
    8955              : #line 7614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8956              : (ix86_match_ccmode (insn, CCGOCmode)
    8957              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8958              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8959              : (TARGET_64BIT)))
    8960              :                 {
    8961              :                   *pnum_clobbers = 1;
    8962              :                   return 330; /* *adddi_5 */
    8963              :                 }
    8964              :               break;
    8965              : 
    8966              :             default:
    8967              :               break;
    8968              :             }
    8969              :         }
    8970              :       if (GET_MODE (x4) != E_CCCmode
    8971              :           || GET_MODE (x2) != E_CCCmode
    8972              :           || !rtx_equal_p (x6, operands[2]))
    8973              :         return -1;
    8974              :       switch (pattern49 (x3))
    8975              :         {
    8976              :         case 0:
    8977              :           if (!
    8978              : #line 10760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8979              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8980              :             return -1;
    8981              :           *pnum_clobbers = 1;
    8982              :           return 571; /* *addqi3_cconly_overflow_2 */
    8983              : 
    8984              :         case 1:
    8985              :           if (!
    8986              : #line 10760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8987              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8988              :             return -1;
    8989              :           *pnum_clobbers = 1;
    8990              :           return 572; /* *addhi3_cconly_overflow_2 */
    8991              : 
    8992              :         case 2:
    8993              :           if (!
    8994              : #line 10760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8995              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8996              :             return -1;
    8997              :           *pnum_clobbers = 1;
    8998              :           return 573; /* *addsi3_cconly_overflow_2 */
    8999              : 
    9000              :         case 3:
    9001              :           if (!(
    9002              : #line 10760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9003              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    9004              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9005              : (TARGET_64BIT)))
    9006              :             return -1;
    9007              :           *pnum_clobbers = 1;
    9008              :           return 574; /* *adddi3_cconly_overflow_2 */
    9009              : 
    9010              :         default:
    9011              :           return -1;
    9012              :         }
    9013              : 
    9014              :     case AND:
    9015              :       x6 = XEXP (x2, 1);
    9016              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9017              :         return -1;
    9018              :       x4 = XEXP (x1, 0);
    9019              :       if (GET_CODE (x4) != REG
    9020              :           || REGNO (x4) != 17)
    9021              :         return -1;
    9022              :       x5 = XEXP (x3, 0);
    9023              :       switch (GET_CODE (x5))
    9024              :         {
    9025              :         case REG:
    9026              :         case SUBREG:
    9027              :         case MEM:
    9028              :           operands[0] = x5;
    9029              :           x7 = XEXP (x3, 1);
    9030              :           operands[1] = x7;
    9031              :           switch (GET_MODE (x3))
    9032              :             {
    9033              :             case E_DImode:
    9034              :               if (nonimmediate_operand (operands[0], E_DImode)
    9035              :                   && x86_64_szext_general_operand (operands[1], E_DImode)
    9036              :                   && 
    9037              : #line 12847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9038              : (TARGET_64BIT
    9039              :    && ix86_match_ccmode
    9040              :         (insn,
    9041              :          /* If we are going to emit testl instead of testq, and the operands[1]
    9042              :             constant might have the SImode sign bit set, make sure the sign
    9043              :             flag isn't tested, because the instruction will set the sign flag
    9044              :             based on bit 31 rather than bit 63.  If it isn't CONST_INT,
    9045              :             conservatively assume it might have bit 31 set.  */
    9046              :          (satisfies_constraint_Z (operands[1])
    9047              :           && (!CONST_INT_P (operands[1])
    9048              :               || val_signbit_known_set_p (SImode, INTVAL (operands[1]))))
    9049              :          ? CCZmode : CCNOmode)
    9050              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    9051              :                 return 710; /* *testdi_1 */
    9052              :               break;
    9053              : 
    9054              :             case E_QImode:
    9055              :               if (nonimmediate_operand (operands[0], E_QImode)
    9056              :                   && general_operand (operands[1], E_QImode))
    9057              :                 {
    9058              :                   if (
    9059              : #line 12873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9060              : (ix86_match_ccmode (insn,
    9061              :                       CONST_INT_P (operands[1])
    9062              :                       && INTVAL (operands[1]) >= 0 ? CCNOmode : CCZmode)
    9063              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    9064              :                     return 711; /* *testqi_1_maybe_si */
    9065              :                   if (
    9066              : #line 12905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9067              : (ix86_match_ccmode (insn, CCNOmode)
    9068              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    9069              :                     return 712; /* *testqi_1 */
    9070              :                 }
    9071              :               break;
    9072              : 
    9073              :             case E_HImode:
    9074              :               if (nonimmediate_operand (operands[0], E_HImode)
    9075              :                   && general_operand (operands[1], E_HImode)
    9076              :                   && 
    9077              : #line 12905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9078              : (ix86_match_ccmode (insn, CCNOmode)
    9079              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    9080              :                 return 713; /* *testhi_1 */
    9081              :               break;
    9082              : 
    9083              :             case E_SImode:
    9084              :               if (nonimmediate_operand (operands[0], E_SImode)
    9085              :                   && x86_64_general_operand (operands[1], E_SImode)
    9086              :                   && 
    9087              : #line 12905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9088              : (ix86_match_ccmode (insn, CCNOmode)
    9089              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    9090              :                 return 714; /* *testsi_1 */
    9091              :               break;
    9092              : 
    9093              :             default:
    9094              :               break;
    9095              :             }
    9096              :           if (GET_CODE (x5) != SUBREG
    9097              :               || maybe_ne (SUBREG_BYTE (x5), 0)
    9098              :               || GET_MODE (x5) != E_QImode)
    9099              :             return -1;
    9100              :           x8 = XEXP (x5, 0);
    9101              :           switch (GET_CODE (x8))
    9102              :             {
    9103              :             case ASHIFTRT:
    9104              :             case LSHIFTRT:
    9105              :             case SIGN_EXTRACT:
    9106              :             case ZERO_EXTRACT:
    9107              :               operands[2] = x8;
    9108              :               if (GET_MODE (x3) != E_QImode)
    9109              :                 return -1;
    9110              :               x9 = XEXP (x8, 0);
    9111              :               operands[0] = x9;
    9112              :               if (!int248_register_operand (operands[0], E_VOIDmode))
    9113              :                 return -1;
    9114              :               operands[1] = x7;
    9115              :               if (general_operand (operands[1], E_QImode))
    9116              :                 {
    9117              :                   switch (GET_MODE (operands[2]))
    9118              :                     {
    9119              :                     case E_HImode:
    9120              :                       if (extract_high_operator (operands[2], E_HImode)
    9121              :                           && 
    9122              : #line 12933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9123              : (ix86_match_ccmode (insn, CCNOmode)))
    9124              :                         return 715; /* *testqi_exthi_1 */
    9125              :                       break;
    9126              : 
    9127              :                     case E_SImode:
    9128              :                       if (extract_high_operator (operands[2], E_SImode)
    9129              :                           && 
    9130              : #line 12933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9131              : (ix86_match_ccmode (insn, CCNOmode)))
    9132              :                         return 716; /* *testqi_extsi_1 */
    9133              :                       break;
    9134              : 
    9135              :                     case E_DImode:
    9136              :                       if (extract_high_operator (operands[2], E_DImode)
    9137              :                           && (
    9138              : #line 12933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9139              : (ix86_match_ccmode (insn, CCNOmode)) && 
    9140              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9141              : (TARGET_64BIT)))
    9142              :                         return 717; /* *testqi_extdi_1 */
    9143              :                       break;
    9144              : 
    9145              :                     default:
    9146              :                       break;
    9147              :                     }
    9148              :                 }
    9149              :               if (GET_CODE (x7) != SUBREG
    9150              :                   || maybe_ne (SUBREG_BYTE (x7), 0)
    9151              :                   || GET_MODE (x7) != E_QImode)
    9152              :                 return -1;
    9153              :               x10 = XEXP (x7, 0);
    9154              :               switch (GET_CODE (x10))
    9155              :                 {
    9156              :                 case ASHIFTRT:
    9157              :                 case LSHIFTRT:
    9158              :                 case SIGN_EXTRACT:
    9159              :                 case ZERO_EXTRACT:
    9160              :                   operands[3] = x10;
    9161              :                   x11 = XEXP (x10, 0);
    9162              :                   operands[1] = x11;
    9163              :                   if (!int248_register_operand (operands[1], E_VOIDmode))
    9164              :                     return -1;
    9165              :                   switch (GET_MODE (operands[2]))
    9166              :                     {
    9167              :                     case E_HImode:
    9168              :                       if (!extract_high_operator (operands[2], E_HImode)
    9169              :                           || !extract_high_operator (operands[3], E_HImode)
    9170              :                           || !
    9171              : #line 12950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9172              : (ix86_match_ccmode (insn, CCNOmode)))
    9173              :                         return -1;
    9174              :                       return 718; /* *testqi_exthi_2 */
    9175              : 
    9176              :                     case E_SImode:
    9177              :                       if (!extract_high_operator (operands[2], E_SImode)
    9178              :                           || !extract_high_operator (operands[3], E_SImode)
    9179              :                           || !
    9180              : #line 12950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9181              : (ix86_match_ccmode (insn, CCNOmode)))
    9182              :                         return -1;
    9183              :                       return 719; /* *testqi_extsi_2 */
    9184              : 
    9185              :                     case E_DImode:
    9186              :                       if (!extract_high_operator (operands[2], E_DImode)
    9187              :                           || !extract_high_operator (operands[3], E_DImode)
    9188              :                           || !(
    9189              : #line 12950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9190              : (ix86_match_ccmode (insn, CCNOmode)) && 
    9191              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9192              : (TARGET_64BIT)))
    9193              :                         return -1;
    9194              :                       return 720; /* *testqi_extdi_2 */
    9195              : 
    9196              :                     default:
    9197              :                       return -1;
    9198              :                     }
    9199              : 
    9200              :                 default:
    9201              :                   return -1;
    9202              :                 }
    9203              : 
    9204              :             default:
    9205              :               return -1;
    9206              :             }
    9207              : 
    9208              :         case NOT:
    9209              :           if (pnum_clobbers == NULL)
    9210              :             return -1;
    9211              :           x8 = XEXP (x5, 0);
    9212              :           operands[1] = x8;
    9213              :           x7 = XEXP (x3, 1);
    9214              :           operands[2] = x7;
    9215              :           switch (GET_MODE (x3))
    9216              :             {
    9217              :             case E_SImode:
    9218              :               if (GET_MODE (x5) != E_SImode
    9219              :                   || !register_operand (operands[1], E_SImode)
    9220              :                   || !nonimmediate_operand (operands[2], E_SImode)
    9221              :                   || !
    9222              : #line 14195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9223              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
    9224              :                 return -1;
    9225              :               *pnum_clobbers = 1;
    9226              :               return 845; /* *andn_si_ccno */
    9227              : 
    9228              :             case E_DImode:
    9229              :               if (GET_MODE (x5) != E_DImode
    9230              :                   || !register_operand (operands[1], E_DImode)
    9231              :                   || !nonimmediate_operand (operands[2], E_DImode)
    9232              :                   || !(
    9233              : #line 14195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9234              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
    9235              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9236              : (TARGET_64BIT)))
    9237              :                 return -1;
    9238              :               *pnum_clobbers = 1;
    9239              :               return 846; /* *andn_di_ccno */
    9240              : 
    9241              :             default:
    9242              :               return -1;
    9243              :             }
    9244              : 
    9245              :         case NEG:
    9246              :           if (pnum_clobbers == NULL)
    9247              :             return -1;
    9248              :           switch (pattern763 (x3))
    9249              :             {
    9250              :             case 0:
    9251              :               if (!
    9252              : #line 22875 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9253              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)))
    9254              :                 return -1;
    9255              :               *pnum_clobbers = 1;
    9256              :               return 1608; /* *bmi_blsi_si_ccno */
    9257              : 
    9258              :             case 1:
    9259              :               if (!(
    9260              : #line 22875 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9261              : (TARGET_BMI && ix86_match_ccmode (insn, CCNOmode)) && 
    9262              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9263              : (TARGET_64BIT)))
    9264              :                 return -1;
    9265              :               *pnum_clobbers = 1;
    9266              :               return 1609; /* *bmi_blsi_di_ccno */
    9267              : 
    9268              :             default:
    9269              :               return -1;
    9270              :             }
    9271              : 
    9272              :         default:
    9273              :           return -1;
    9274              :         }
    9275              : 
    9276              :     case ZERO_EXTRACT:
    9277              :       switch (pattern48 (x1))
    9278              :         {
    9279              :         case 0:
    9280              :           if (!
    9281              : #line 12985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9282              : (/* Ensure that resulting mask is zero or sign extended operand.  */
    9283              :    INTVAL (operands[4]) >= 0
    9284              :    && ((INTVAL (operands[3]) > 0
    9285              :         && INTVAL (operands[3]) + INTVAL (operands[4]) <= 32)
    9286              :        || (HImode == DImode
    9287              :            && INTVAL (operands[3]) > 32
    9288              :            && INTVAL (operands[3]) + INTVAL (operands[4]) == 64))
    9289              :    && ix86_match_ccmode (insn,
    9290              :                          /* If zero_extract mode precision is the same
    9291              :                             as len, the SF of the zero_extract
    9292              :                             comparison will be the most significant
    9293              :                             extracted bit, but this could be matched
    9294              :                             after splitting only for pos 0 len all bits
    9295              :                             trivial extractions.  Require CCZmode.  */
    9296              :                          (GET_MODE_PRECISION (HImode)
    9297              :                           == INTVAL (operands[3]))
    9298              :                          /* Otherwise, require CCZmode if we'd use a mask
    9299              :                             with the most significant bit set and can't
    9300              :                             widen it to wider mode.  *testdi_1 also
    9301              :                             requires CCZmode if the mask has bit
    9302              :                             31 set and all bits above it clear.  */
    9303              :                          || (INTVAL (operands[3]) + INTVAL (operands[4])
    9304              :                              >= 32)
    9305              :                          /* We can't widen also if val is not a REG.  */
    9306              :                          || (INTVAL (operands[3]) + INTVAL (operands[4])
    9307              :                              == GET_MODE_PRECISION (GET_MODE (operands[2]))
    9308              :                              && !register_operand (operands[2],
    9309              :                                                    GET_MODE (operands[2])))
    9310              :                          /* And we shouldn't widen if
    9311              :                             TARGET_PARTIAL_REG_STALL.  */
    9312              :                          || (TARGET_PARTIAL_REG_STALL
    9313              :                              && (INTVAL (operands[3]) + INTVAL (operands[4])
    9314              :                                  >= (paradoxical_subreg_p (operands[2])
    9315              :                                      && (GET_MODE_CLASS
    9316              :                                           (GET_MODE (SUBREG_REG (operands[2])))
    9317              :                                          == MODE_INT)
    9318              :                                      ? GET_MODE_PRECISION
    9319              :                                          (GET_MODE (SUBREG_REG (operands[2])))
    9320              :                                      : GET_MODE_PRECISION
    9321              :                                          (GET_MODE (operands[2])))))
    9322              :                          ? CCZmode : CCNOmode)))
    9323              :             return -1;
    9324              :           return 722; /* *testqi_ext_3 */
    9325              : 
    9326              :         case 1:
    9327              :           if (!
    9328              : #line 12985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9329              : (/* Ensure that resulting mask is zero or sign extended operand.  */
    9330              :    INTVAL (operands[4]) >= 0
    9331              :    && ((INTVAL (operands[3]) > 0
    9332              :         && INTVAL (operands[3]) + INTVAL (operands[4]) <= 32)
    9333              :        || (SImode == DImode
    9334              :            && INTVAL (operands[3]) > 32
    9335              :            && INTVAL (operands[3]) + INTVAL (operands[4]) == 64))
    9336              :    && ix86_match_ccmode (insn,
    9337              :                          /* If zero_extract mode precision is the same
    9338              :                             as len, the SF of the zero_extract
    9339              :                             comparison will be the most significant
    9340              :                             extracted bit, but this could be matched
    9341              :                             after splitting only for pos 0 len all bits
    9342              :                             trivial extractions.  Require CCZmode.  */
    9343              :                          (GET_MODE_PRECISION (SImode)
    9344              :                           == INTVAL (operands[3]))
    9345              :                          /* Otherwise, require CCZmode if we'd use a mask
    9346              :                             with the most significant bit set and can't
    9347              :                             widen it to wider mode.  *testdi_1 also
    9348              :                             requires CCZmode if the mask has bit
    9349              :                             31 set and all bits above it clear.  */
    9350              :                          || (INTVAL (operands[3]) + INTVAL (operands[4])
    9351              :                              >= 32)
    9352              :                          /* We can't widen also if val is not a REG.  */
    9353              :                          || (INTVAL (operands[3]) + INTVAL (operands[4])
    9354              :                              == GET_MODE_PRECISION (GET_MODE (operands[2]))
    9355              :                              && !register_operand (operands[2],
    9356              :                                                    GET_MODE (operands[2])))
    9357              :                          /* And we shouldn't widen if
    9358              :                             TARGET_PARTIAL_REG_STALL.  */
    9359              :                          || (TARGET_PARTIAL_REG_STALL
    9360              :                              && (INTVAL (operands[3]) + INTVAL (operands[4])
    9361              :                                  >= (paradoxical_subreg_p (operands[2])
    9362              :                                      && (GET_MODE_CLASS
    9363              :                                           (GET_MODE (SUBREG_REG (operands[2])))
    9364              :                                          == MODE_INT)
    9365              :                                      ? GET_MODE_PRECISION
    9366              :                                          (GET_MODE (SUBREG_REG (operands[2])))
    9367              :                                      : GET_MODE_PRECISION
    9368              :                                          (GET_MODE (operands[2])))))
    9369              :                          ? CCZmode : CCNOmode)))
    9370              :             return -1;
    9371              :           return 723; /* *testqi_ext_3 */
    9372              : 
    9373              :         case 2:
    9374              :           if (!(
    9375              : #line 12985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9376              : (/* Ensure that resulting mask is zero or sign extended operand.  */
    9377              :    INTVAL (operands[4]) >= 0
    9378              :    && ((INTVAL (operands[3]) > 0
    9379              :         && INTVAL (operands[3]) + INTVAL (operands[4]) <= 32)
    9380              :        || (DImode == DImode
    9381              :            && INTVAL (operands[3]) > 32
    9382              :            && INTVAL (operands[3]) + INTVAL (operands[4]) == 64))
    9383              :    && ix86_match_ccmode (insn,
    9384              :                          /* If zero_extract mode precision is the same
    9385              :                             as len, the SF of the zero_extract
    9386              :                             comparison will be the most significant
    9387              :                             extracted bit, but this could be matched
    9388              :                             after splitting only for pos 0 len all bits
    9389              :                             trivial extractions.  Require CCZmode.  */
    9390              :                          (GET_MODE_PRECISION (DImode)
    9391              :                           == INTVAL (operands[3]))
    9392              :                          /* Otherwise, require CCZmode if we'd use a mask
    9393              :                             with the most significant bit set and can't
    9394              :                             widen it to wider mode.  *testdi_1 also
    9395              :                             requires CCZmode if the mask has bit
    9396              :                             31 set and all bits above it clear.  */
    9397              :                          || (INTVAL (operands[3]) + INTVAL (operands[4])
    9398              :                              >= 32)
    9399              :                          /* We can't widen also if val is not a REG.  */
    9400              :                          || (INTVAL (operands[3]) + INTVAL (operands[4])
    9401              :                              == GET_MODE_PRECISION (GET_MODE (operands[2]))
    9402              :                              && !register_operand (operands[2],
    9403              :                                                    GET_MODE (operands[2])))
    9404              :                          /* And we shouldn't widen if
    9405              :                             TARGET_PARTIAL_REG_STALL.  */
    9406              :                          || (TARGET_PARTIAL_REG_STALL
    9407              :                              && (INTVAL (operands[3]) + INTVAL (operands[4])
    9408              :                                  >= (paradoxical_subreg_p (operands[2])
    9409              :                                      && (GET_MODE_CLASS
    9410              :                                           (GET_MODE (SUBREG_REG (operands[2])))
    9411              :                                          == MODE_INT)
    9412              :                                      ? GET_MODE_PRECISION
    9413              :                                          (GET_MODE (SUBREG_REG (operands[2])))
    9414              :                                      : GET_MODE_PRECISION
    9415              :                                          (GET_MODE (operands[2])))))
    9416              :                          ? CCZmode : CCNOmode)) && 
    9417              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9418              : (TARGET_64BIT)))
    9419              :             return -1;
    9420              :           return 724; /* *testqi_ext_3 */
    9421              : 
    9422              :         default:
    9423              :           return -1;
    9424              :         }
    9425              : 
    9426              :     case IOR:
    9427              :       switch (pattern51 (x1, pnum_clobbers))
    9428              :         {
    9429              :         case 0:
    9430              :           if (!
    9431              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9432              : (ix86_match_ccmode (insn, CCNOmode)
    9433              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9434              :             return -1;
    9435              :           *pnum_clobbers = 1;
    9436              :           return 916; /* *iorqi_3 */
    9437              : 
    9438              :         case 1:
    9439              :           if (!
    9440              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9441              : (ix86_match_ccmode (insn, CCNOmode)
    9442              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9443              :             return -1;
    9444              :           *pnum_clobbers = 1;
    9445              :           return 918; /* *iorhi_3 */
    9446              : 
    9447              :         case 2:
    9448              :           if (!
    9449              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9450              : (ix86_match_ccmode (insn, CCNOmode)
    9451              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9452              :             return -1;
    9453              :           *pnum_clobbers = 1;
    9454              :           return 920; /* *iorsi_3 */
    9455              : 
    9456              :         case 3:
    9457              :           if (!(
    9458              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9459              : (ix86_match_ccmode (insn, CCNOmode)
    9460              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    9461              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9462              : (TARGET_64BIT)))
    9463              :             return -1;
    9464              :           *pnum_clobbers = 1;
    9465              :           return 922; /* *iordi_3 */
    9466              : 
    9467              :         default:
    9468              :           return -1;
    9469              :         }
    9470              : 
    9471              :     case XOR:
    9472              :       switch (pattern51 (x1, pnum_clobbers))
    9473              :         {
    9474              :         case 0:
    9475              :           if (!
    9476              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9477              : (ix86_match_ccmode (insn, CCNOmode)
    9478              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9479              :             return -1;
    9480              :           *pnum_clobbers = 1;
    9481              :           return 917; /* *xorqi_3 */
    9482              : 
    9483              :         case 1:
    9484              :           if (!
    9485              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9486              : (ix86_match_ccmode (insn, CCNOmode)
    9487              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9488              :             return -1;
    9489              :           *pnum_clobbers = 1;
    9490              :           return 919; /* *xorhi_3 */
    9491              : 
    9492              :         case 2:
    9493              :           if (!
    9494              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9495              : (ix86_match_ccmode (insn, CCNOmode)
    9496              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9497              :             return -1;
    9498              :           *pnum_clobbers = 1;
    9499              :           return 921; /* *xorsi_3 */
    9500              : 
    9501              :         case 3:
    9502              :           if (!(
    9503              : #line 14819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9504              : (ix86_match_ccmode (insn, CCNOmode)
    9505              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    9506              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9507              : (TARGET_64BIT)))
    9508              :             return -1;
    9509              :           *pnum_clobbers = 1;
    9510              :           return 923; /* *xordi_3 */
    9511              : 
    9512              :         default:
    9513              :           return -1;
    9514              :         }
    9515              : 
    9516              :     case ASHIFT:
    9517              :       switch (pattern52 (x1, pnum_clobbers))
    9518              :         {
    9519              :         case 0:
    9520              :           if (!
    9521              : #line 17402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9522              : ((optimize_function_for_size_p (cfun)
    9523              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9524              :     || operands[2] == const1_rtx)
    9525              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9526              :             return -1;
    9527              :           *pnum_clobbers = 1;
    9528              :           return 1147; /* *ashlqi3_cconly */
    9529              : 
    9530              :         case 1:
    9531              :           if (!
    9532              : #line 17402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9533              : ((optimize_function_for_size_p (cfun)
    9534              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9535              :     || operands[2] == const1_rtx)
    9536              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9537              :             return -1;
    9538              :           *pnum_clobbers = 1;
    9539              :           return 1148; /* *ashlhi3_cconly */
    9540              : 
    9541              :         case 2:
    9542              :           if (!
    9543              : #line 17402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9544              : ((optimize_function_for_size_p (cfun)
    9545              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9546              :     || operands[2] == const1_rtx)
    9547              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9548              :             return -1;
    9549              :           *pnum_clobbers = 1;
    9550              :           return 1149; /* *ashlsi3_cconly */
    9551              : 
    9552              :         case 3:
    9553              :           if (!(
    9554              : #line 17402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9555              : ((optimize_function_for_size_p (cfun)
    9556              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9557              :     || operands[2] == const1_rtx)
    9558              :    && ix86_match_ccmode (insn, CCGOCmode)) && 
    9559              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9560              : (TARGET_64BIT)))
    9561              :             return -1;
    9562              :           *pnum_clobbers = 1;
    9563              :           return 1150; /* *ashldi3_cconly */
    9564              : 
    9565              :         default:
    9566              :           return -1;
    9567              :         }
    9568              : 
    9569              :     case LSHIFTRT:
    9570              :       switch (pattern52 (x1, pnum_clobbers))
    9571              :         {
    9572              :         case 0:
    9573              :           if (!
    9574              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9575              : ((optimize_function_for_size_p (cfun)
    9576              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9577              :     || operands[2] == const1_rtx)
    9578              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9579              :             return -1;
    9580              :           *pnum_clobbers = 1;
    9581              :           return 1262; /* *lshrqi3_cconly */
    9582              : 
    9583              :         case 1:
    9584              :           if (!
    9585              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9586              : ((optimize_function_for_size_p (cfun)
    9587              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9588              :     || operands[2] == const1_rtx)
    9589              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9590              :             return -1;
    9591              :           *pnum_clobbers = 1;
    9592              :           return 1264; /* *lshrhi3_cconly */
    9593              : 
    9594              :         case 2:
    9595              :           if (!
    9596              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9597              : ((optimize_function_for_size_p (cfun)
    9598              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9599              :     || operands[2] == const1_rtx)
    9600              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9601              :             return -1;
    9602              :           *pnum_clobbers = 1;
    9603              :           return 1266; /* *lshrsi3_cconly */
    9604              : 
    9605              :         case 3:
    9606              :           if (!(
    9607              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9608              : ((optimize_function_for_size_p (cfun)
    9609              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9610              :     || operands[2] == const1_rtx)
    9611              :    && ix86_match_ccmode (insn, CCGOCmode)) && 
    9612              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9613              : (TARGET_64BIT)))
    9614              :             return -1;
    9615              :           *pnum_clobbers = 1;
    9616              :           return 1268; /* *lshrdi3_cconly */
    9617              : 
    9618              :         default:
    9619              :           return -1;
    9620              :         }
    9621              : 
    9622              :     case ASHIFTRT:
    9623              :       switch (pattern52 (x1, pnum_clobbers))
    9624              :         {
    9625              :         case 0:
    9626              :           if (!
    9627              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9628              : ((optimize_function_for_size_p (cfun)
    9629              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9630              :     || operands[2] == const1_rtx)
    9631              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9632              :             return -1;
    9633              :           *pnum_clobbers = 1;
    9634              :           return 1263; /* *ashrqi3_cconly */
    9635              : 
    9636              :         case 1:
    9637              :           if (!
    9638              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9639              : ((optimize_function_for_size_p (cfun)
    9640              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9641              :     || operands[2] == const1_rtx)
    9642              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9643              :             return -1;
    9644              :           *pnum_clobbers = 1;
    9645              :           return 1265; /* *ashrhi3_cconly */
    9646              : 
    9647              :         case 2:
    9648              :           if (!
    9649              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9650              : ((optimize_function_for_size_p (cfun)
    9651              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9652              :     || operands[2] == const1_rtx)
    9653              :    && ix86_match_ccmode (insn, CCGOCmode)))
    9654              :             return -1;
    9655              :           *pnum_clobbers = 1;
    9656              :           return 1267; /* *ashrsi3_cconly */
    9657              : 
    9658              :         case 3:
    9659              :           if (!(
    9660              : #line 18695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9661              : ((optimize_function_for_size_p (cfun)
    9662              :     || !TARGET_PARTIAL_FLAG_REG_STALL
    9663              :     || operands[2] == const1_rtx)
    9664              :    && ix86_match_ccmode (insn, CCGOCmode)) && 
    9665              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9666              : (TARGET_64BIT)))
    9667              :             return -1;
    9668              :           *pnum_clobbers = 1;
    9669              :           return 1269; /* *ashrdi3_cconly */
    9670              : 
    9671              :         default:
    9672              :           return -1;
    9673              :         }
    9674              : 
    9675              :     default:
    9676              :       return -1;
    9677              :     }
    9678              : }
    9679              : 
    9680              :  int
    9681              : recog_110 (rtx x1 ATTRIBUTE_UNUSED,
    9682              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9683              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9684              : {
    9685              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9686              :   rtx x2, x3, x4, x5;
    9687              :   int res ATTRIBUTE_UNUSED;
    9688              :   x2 = XEXP (x1, 1);
    9689              :   operands[1] = x2;
    9690              :   x3 = XEXP (x2, 0);
    9691              :   if (GET_CODE (x3) != REG
    9692              :       || REGNO (x3) != 17)
    9693              :     return -1;
    9694              :   x4 = XEXP (x2, 1);
    9695              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9696              :     return -1;
    9697              :   x5 = XEXP (x1, 0);
    9698              :   operands[0] = x5;
    9699              :   switch (GET_MODE (operands[0]))
    9700              :     {
    9701              :     case E_SImode:
    9702              :       if (!register_operand (operands[0], E_SImode)
    9703              :           || !ix86_comparison_operator (operands[1], E_SImode))
    9704              :         return -1;
    9705              :       if (
    9706              : #line 20471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9707              : (TARGET_APX_ZU && !TARGET_DISABLE_SETZUCC))
    9708              :         return 1475; /* *setcc_si_zu */
    9709              :       if (pnum_clobbers != NULL
    9710              :           && 
    9711              : #line 20496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9712              : (!TARGET_PARTIAL_REG_STALL
    9713              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    9714              :         {
    9715              :           *pnum_clobbers = 1;
    9716              :           return 1479; /* *setcc_si_1_and */
    9717              :         }
    9718              :       if (!
    9719              : #line 20513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9720              : ((!TARGET_APX_ZU || TARGET_DISABLE_SETZUCC) && !TARGET_PARTIAL_REG_STALL
    9721              :    && (!TARGET_ZERO_EXTEND_WITH_AND || optimize_function_for_size_p (cfun))))
    9722              :         return -1;
    9723              :       return 1481; /* *setcc_si_1_movzbl */
    9724              : 
    9725              :     case E_DImode:
    9726              :       if (!register_operand (operands[0], E_DImode)
    9727              :           || !ix86_comparison_operator (operands[1], E_DImode))
    9728              :         return -1;
    9729              :       if ((
    9730              : #line 20471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9731              : (TARGET_APX_ZU && !TARGET_DISABLE_SETZUCC) && 
    9732              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9733              : (TARGET_64BIT)))
    9734              :         return 1476; /* *setcc_di_zu */
    9735              :       if (!
    9736              : #line 20479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9737              : ((!TARGET_APX_ZU || TARGET_DISABLE_SETZUCC)
    9738              :    && TARGET_64BIT && !TARGET_PARTIAL_REG_STALL))
    9739              :         return -1;
    9740              :       return 1477; /* *setcc_di_1 */
    9741              : 
    9742              :     default:
    9743              :       return -1;
    9744              :     }
    9745              : }
    9746              : 
    9747              :  int
    9748              : recog_113 (rtx x1 ATTRIBUTE_UNUSED,
    9749              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9750              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9751              : {
    9752              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9753              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9754              :   rtx x10, x11, x12, x13;
    9755              :   int res ATTRIBUTE_UNUSED;
    9756              :   x2 = XEXP (x1, 0);
    9757              :   operands[0] = x2;
    9758              :   x3 = XEXP (x1, 1);
    9759              :   switch (XINT (x3, 1))
    9760              :     {
    9761              :     case 46:
    9762              :       if (pattern301 (x3) != 0
    9763              :           || !register_operand (operands[0], E_SImode))
    9764              :         return -1;
    9765              :       x4 = XVECEXP (x3, 0, 1);
    9766              :       operands[2] = x4;
    9767              :       if (!register_operand (operands[2], E_SImode)
    9768              :           || !
    9769              : #line 20567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9770              : (ix86_pre_reload_split ()))
    9771              :         return -1;
    9772              :       return 1484; /* *setcc_si_slp */
    9773              : 
    9774              :     case 99:
    9775              :       if (pnum_clobbers == NULL)
    9776              :         return -1;
    9777              :       x5 = XVECEXP (x3, 0, 0);
    9778              :       operands[1] = x5;
    9779              :       x4 = XVECEXP (x3, 0, 1);
    9780              :       operands[2] = x4;
    9781              :       switch (GET_MODE (operands[0]))
    9782              :         {
    9783              :         case E_SImode:
    9784              :           if (pattern789 (x3, 
    9785              : E_SImode) != 0
    9786              :               || !
    9787              : #line 22760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9788              : (TARGET_BMI))
    9789              :             return -1;
    9790              :           *pnum_clobbers = 1;
    9791              :           return 1598; /* bmi_bextr_si */
    9792              : 
    9793              :         case E_DImode:
    9794              :           if (pattern789 (x3, 
    9795              : E_DImode) != 0
    9796              :               || !(
    9797              : #line 22760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9798              : (TARGET_BMI) && 
    9799              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9800              : (TARGET_64BIT)))
    9801              :             return -1;
    9802              :           *pnum_clobbers = 1;
    9803              :           return 1599; /* bmi_bextr_di */
    9804              : 
    9805              :         default:
    9806              :           return -1;
    9807              :         }
    9808              : 
    9809              :     case 100:
    9810              :       switch (pattern302 (x3))
    9811              :         {
    9812              :         case 0:
    9813              :           if (!
    9814              : #line 23153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9815              : (TARGET_BMI2))
    9816              :             return -1;
    9817              :           return 1632; /* bmi2_pdep_si3 */
    9818              : 
    9819              :         case 1:
    9820              :           if (!(
    9821              : #line 23153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9822              : (TARGET_BMI2) && 
    9823              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9824              : (TARGET_64BIT)))
    9825              :             return -1;
    9826              :           return 1633; /* bmi2_pdep_di3 */
    9827              : 
    9828              :         default:
    9829              :           return -1;
    9830              :         }
    9831              : 
    9832              :     case 101:
    9833              :       switch (pattern302 (x3))
    9834              :         {
    9835              :         case 0:
    9836              :           if (!
    9837              : #line 23164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9838              : (TARGET_BMI2))
    9839              :             return -1;
    9840              :           return 1634; /* bmi2_pext_si3 */
    9841              : 
    9842              :         case 1:
    9843              :           if (!(
    9844              : #line 23164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9845              : (TARGET_BMI2) && 
    9846              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9847              : (TARGET_64BIT)))
    9848              :             return -1;
    9849              :           return 1635; /* bmi2_pext_di3 */
    9850              : 
    9851              :         default:
    9852              :           return -1;
    9853              :         }
    9854              : 
    9855              :     case 94:
    9856              :       if (pnum_clobbers == NULL
    9857              :           || GET_MODE (x3) != E_CCZmode
    9858              :           || !flags_reg_operand (operands[0], E_CCZmode))
    9859              :         return -1;
    9860              :       x5 = XVECEXP (x3, 0, 0);
    9861              :       operands[1] = x5;
    9862              :       x4 = XVECEXP (x3, 0, 1);
    9863              :       operands[2] = x4;
    9864              :       switch (GET_MODE (operands[1]))
    9865              :         {
    9866              :         case E_SImode:
    9867              :           if (!memory_operand (operands[1], E_SImode)
    9868              :               || !memory_operand (operands[2], E_SImode)
    9869              :               || !
    9870              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9871              : (ptr_mode == SImode))
    9872              :             return -1;
    9873              :           *pnum_clobbers = 1;
    9874              :           return 1934; /* stack_protect_test_1_si */
    9875              : 
    9876              :         case E_DImode:
    9877              :           if (!memory_operand (operands[1], E_DImode)
    9878              :               || !memory_operand (operands[2], E_DImode)
    9879              :               || !
    9880              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9881              : (ptr_mode == DImode))
    9882              :             return -1;
    9883              :           *pnum_clobbers = 1;
    9884              :           return 1935; /* stack_protect_test_1_di */
    9885              : 
    9886              :         default:
    9887              :           return -1;
    9888              :         }
    9889              : 
    9890              :     case 96:
    9891              :       if (GET_MODE (x3) != E_SImode
    9892              :           || !register_operand (operands[0], E_SImode))
    9893              :         return -1;
    9894              :       x5 = XVECEXP (x3, 0, 0);
    9895              :       operands[1] = x5;
    9896              :       if (!register_operand (operands[1], E_SImode))
    9897              :         return -1;
    9898              :       x4 = XVECEXP (x3, 0, 1);
    9899              :       operands[2] = x4;
    9900              :       switch (GET_MODE (operands[2]))
    9901              :         {
    9902              :         case E_QImode:
    9903              :           if (!nonimmediate_operand (operands[2], E_QImode)
    9904              :               || !
    9905              : #line 30435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9906              : (TARGET_CRC32))
    9907              :             return -1;
    9908              :           return 1942; /* sse4_2_crc32qi */
    9909              : 
    9910              :         case E_HImode:
    9911              :           if (!nonimmediate_operand (operands[2], E_HImode)
    9912              :               || !
    9913              : #line 30435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9914              : (TARGET_CRC32))
    9915              :             return -1;
    9916              :           return 1943; /* sse4_2_crc32hi */
    9917              : 
    9918              :         case E_SImode:
    9919              :           if (!nonimmediate_operand (operands[2], E_SImode)
    9920              :               || !
    9921              : #line 30435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9922              : (TARGET_CRC32))
    9923              :             return -1;
    9924              :           return 1944; /* sse4_2_crc32si */
    9925              : 
    9926              :         default:
    9927              :           return -1;
    9928              :         }
    9929              : 
    9930              :     case 179:
    9931              :       x5 = XVECEXP (x3, 0, 0);
    9932              :       switch (GET_CODE (x5))
    9933              :         {
    9934              :         case UNSPEC:
    9935              :           switch (XVECLEN (x5, 0))
    9936              :             {
    9937              :             case 3:
    9938              :               if (XINT (x5, 1) != 60
    9939              :                   || GET_MODE (x5) != E_SImode
    9940              :                   || !register_operand (operands[0], E_SImode)
    9941              :                   || GET_MODE (x3) != E_SImode)
    9942              :                 return -1;
    9943              :               x6 = XVECEXP (x5, 0, 0);
    9944              :               operands[1] = x6;
    9945              :               if (!register_operand (operands[1], E_V32HFmode))
    9946              :                 return -1;
    9947              :               x7 = XVECEXP (x5, 0, 1);
    9948              :               operands[2] = x7;
    9949              :               if (!nonimmediate_operand (operands[2], E_V32HFmode))
    9950              :                 return -1;
    9951              :               x8 = XVECEXP (x5, 0, 2);
    9952              :               operands[3] = x8;
    9953              :               if (!const_0_to_31_operand (operands[3], E_SImode))
    9954              :                 return -1;
    9955              :               x4 = XVECEXP (x3, 0, 1);
    9956              :               operands[4] = x4;
    9957              :               if (!const48_operand (operands[4], E_SImode)
    9958              :                   || !(
    9959              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    9960              : (TARGET_AVX512F) && (
    9961              : #line 4681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9962              : (TARGET_AVX512F && (V32HFmode == V16SFmode
    9963              :                                                                               || V32HFmode == V8DFmode
    9964              :                                                                               || V32HFmode == V8DImode
    9965              :                                                                               || V32HFmode == V16SImode
    9966              :                                                                               || V32HFmode == V32HFmode)) && 
    9967              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9968              : (TARGET_AVX512FP16))))
    9969              :                 return -1;
    9970              :               return 3333; /* avx512bw_cmpv32hf3_round */
    9971              : 
    9972              :             case 1:
    9973              :               x4 = XVECEXP (x3, 0, 1);
    9974              :               operands[2] = x4;
    9975              :               switch (XINT (x5, 1))
    9976              :                 {
    9977              :                 case 157:
    9978              :                   switch (pattern888 (x3))
    9979              :                     {
    9980              :                     case 0:
    9981              :                       if (!(
    9982              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    9983              : (TARGET_AVX512F) && 
    9984              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9985              : (TARGET_AVX512FP16)))
    9986              :                         return -1;
    9987              :                       return 4591; /* avx512fp16_vcvtsh2usi_round */
    9988              : 
    9989              :                     case 1:
    9990              :                       if (!
    9991              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    9992              : (TARGET_AVX512F))
    9993              :                         return -1;
    9994              :                       return 4951; /* avx512f_vcvtss2usi_round */
    9995              : 
    9996              :                     case 2:
    9997              :                       if (!
    9998              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    9999              : (TARGET_AVX512F))
   10000              :                         return -1;
   10001              :                       return 4963; /* avx512f_vcvtsd2usi_round */
   10002              : 
   10003              :                     case 3:
   10004              :                       if (!(
   10005              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10006              : (TARGET_AVX512F) && (
   10007              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10008              : (TARGET_AVX512FP16) && 
   10009              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10010              : (TARGET_64BIT))))
   10011              :                         return -1;
   10012              :                       return 4595; /* avx512fp16_vcvtsh2usiq_round */
   10013              : 
   10014              :                     case 4:
   10015              :                       if (!(
   10016              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10017              : (TARGET_AVX512F) && (
   10018              : #line 9415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10019              : (TARGET_AVX512F) && 
   10020              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10021              : (TARGET_64BIT))))
   10022              :                         return -1;
   10023              :                       return 4953; /* avx512f_vcvtss2usiq_round */
   10024              : 
   10025              :                     case 5:
   10026              :                       if (!(
   10027              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10028              : (TARGET_AVX512F) && (
   10029              : #line 9451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10030              : (TARGET_AVX512F) && 
   10031              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10032              : (TARGET_64BIT))))
   10033              :                         return -1;
   10034              :                       return 4965; /* avx512f_vcvtsd2usiq_round */
   10035              : 
   10036              :                     default:
   10037              :                       return -1;
   10038              :                     }
   10039              : 
   10040              :                 case 47:
   10041              :                   switch (pattern888 (x3))
   10042              :                     {
   10043              :                     case 0:
   10044              :                       if (!(
   10045              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10046              : (TARGET_AVX512F) && 
   10047              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10048              : (TARGET_AVX512FP16)))
   10049              :                         return -1;
   10050              :                       return 4593; /* avx512fp16_vcvtsh2si_round */
   10051              : 
   10052              :                     case 1:
   10053              :                       if (!(
   10054              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10055              : (TARGET_AVX512F) && 
   10056              : #line 8943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10057              : (TARGET_SSE)))
   10058              :                         return -1;
   10059              :                       return 4840; /* sse_cvtss2si_round */
   10060              : 
   10061              :                     case 2:
   10062              :                       if (!(
   10063              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10064              : (TARGET_AVX512F) && 
   10065              : #line 9487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10066              : (TARGET_SSE2)))
   10067              :                         return -1;
   10068              :                       return 4975; /* sse2_cvtsd2si_round */
   10069              : 
   10070              :                     case 3:
   10071              :                       if (!(
   10072              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10073              : (TARGET_AVX512F) && (
   10074              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10075              : (TARGET_AVX512FP16) && 
   10076              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10077              : (TARGET_64BIT))))
   10078              :                         return -1;
   10079              :                       return 4597; /* avx512fp16_vcvtsh2siq_round */
   10080              : 
   10081              :                     case 4:
   10082              :                       if (!(
   10083              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10084              : (TARGET_AVX512F) && (
   10085              : #line 8943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10086              : (TARGET_SSE) && 
   10087              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10088              : (TARGET_64BIT))))
   10089              :                         return -1;
   10090              :                       return 4842; /* sse_cvtss2siq_round */
   10091              : 
   10092              :                     case 5:
   10093              :                       if (!(
   10094              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10095              : (TARGET_AVX512F) && (
   10096              : #line 9487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10097              : (TARGET_SSE2) && 
   10098              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10099              : (TARGET_64BIT))))
   10100              :                         return -1;
   10101              :                       return 4977; /* sse2_cvtsd2siq_round */
   10102              : 
   10103              :                     default:
   10104              :                       return -1;
   10105              :                     }
   10106              : 
   10107              :                 case 173:
   10108              :                   switch (pattern890 (x3))
   10109              :                     {
   10110              :                     case 0:
   10111              :                       if (!(
   10112              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10113              : (TARGET_AVX512F) && 
   10114              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10115              : (TARGET_AVX512FP16)))
   10116              :                         return -1;
   10117              :                       return 4743; /* unspec_avx512fp16_fix_truncsi2_round */
   10118              : 
   10119              :                     case 1:
   10120              :                       if (!(
   10121              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10122              : (TARGET_AVX512F) && 
   10123              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10124              : (TARGET_SSE)))
   10125              :                         return -1;
   10126              :                       return 4846; /* unspec_sse_cvttss2si_round */
   10127              : 
   10128              :                     case 2:
   10129              :                       if (!(
   10130              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10131              : (TARGET_AVX512F) && 
   10132              : #line 9516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10133              : (TARGET_SSE2)))
   10134              :                         return -1;
   10135              :                       return 4981; /* unspec_sse2_cvttsd2si_round */
   10136              : 
   10137              :                     case 3:
   10138              :                       if (!(
   10139              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10140              : (TARGET_AVX512F) && (
   10141              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10142              : (TARGET_AVX512FP16) && 
   10143              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10144              : (TARGET_64BIT))))
   10145              :                         return -1;
   10146              :                       return 4747; /* unspec_avx512fp16_fix_truncdi2_round */
   10147              : 
   10148              :                     case 4:
   10149              :                       if (!(
   10150              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10151              : (TARGET_AVX512F) && (
   10152              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10153              : (TARGET_SSE) && 
   10154              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10155              : (TARGET_64BIT))))
   10156              :                         return -1;
   10157              :                       return 4848; /* unspec_sse_cvttss2siq_round */
   10158              : 
   10159              :                     case 5:
   10160              :                       if (!(
   10161              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10162              : (TARGET_AVX512F) && (
   10163              : #line 9516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10164              : (TARGET_SSE2) && 
   10165              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10166              : (TARGET_64BIT))))
   10167              :                         return -1;
   10168              :                       return 4983; /* unspec_sse2_cvttsd2siq_round */
   10169              : 
   10170              :                     default:
   10171              :                       return -1;
   10172              :                     }
   10173              : 
   10174              :                 case 174:
   10175              :                   switch (pattern890 (x3))
   10176              :                     {
   10177              :                     case 0:
   10178              :                       if (!(
   10179              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10180              : (TARGET_AVX512F) && 
   10181              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10182              : (TARGET_AVX512FP16)))
   10183              :                         return -1;
   10184              :                       return 4745; /* unspec_avx512fp16_fixuns_truncsi2_round */
   10185              : 
   10186              :                     case 1:
   10187              :                       if (!
   10188              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10189              : (TARGET_AVX512F))
   10190              :                         return -1;
   10191              :                       return 4955; /* unspec_avx512f_vcvttss2usi_round */
   10192              : 
   10193              :                     case 2:
   10194              :                       if (!
   10195              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10196              : (TARGET_AVX512F))
   10197              :                         return -1;
   10198              :                       return 4967; /* unspec_avx512f_vcvttsd2usi_round */
   10199              : 
   10200              :                     case 3:
   10201              :                       if (!(
   10202              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10203              : (TARGET_AVX512F) && (
   10204              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10205              : (TARGET_AVX512FP16) && 
   10206              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10207              : (TARGET_64BIT))))
   10208              :                         return -1;
   10209              :                       return 4749; /* unspec_avx512fp16_fixuns_truncdi2_round */
   10210              : 
   10211              :                     case 4:
   10212              :                       if (!(
   10213              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10214              : (TARGET_AVX512F) && (
   10215              : #line 9426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10216              : (TARGET_AVX512F) && 
   10217              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10218              : (TARGET_64BIT))))
   10219              :                         return -1;
   10220              :                       return 4957; /* unspec_avx512f_vcvttss2usiq_round */
   10221              : 
   10222              :                     case 5:
   10223              :                       if (!(
   10224              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10225              : (TARGET_AVX512F) && (
   10226              : #line 9462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10227              : (TARGET_AVX512F) && 
   10228              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10229              : (TARGET_64BIT))))
   10230              :                         return -1;
   10231              :                       return 4969; /* unspec_avx512f_vcvttsd2usiq_round */
   10232              : 
   10233              :                     default:
   10234              :                       return -1;
   10235              :                     }
   10236              : 
   10237              :                 case 276:
   10238              :                   switch (pattern892 (x3))
   10239              :                     {
   10240              :                     case 0:
   10241              :                       if (!(
   10242              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10243              : (TARGET_AVX512F) && 
   10244              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10245              : (TARGET_AVX10_2)))
   10246              :                         return -1;
   10247              :                       return 10987; /* avx10_2_vcvttsd2sissi_round */
   10248              : 
   10249              :                     case 1:
   10250              :                       if (!(
   10251              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10252              : (TARGET_AVX512F) && 
   10253              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10254              : (TARGET_AVX10_2)))
   10255              :                         return -1;
   10256              :                       return 10995; /* avx10_2_vcvttss2sissi_round */
   10257              : 
   10258              :                     case 2:
   10259              :                       if (!(
   10260              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10261              : (TARGET_AVX512F) && (
   10262              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10263              : (TARGET_AVX10_2) && 
   10264              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10265              : (TARGET_64BIT))))
   10266              :                         return -1;
   10267              :                       return 10991; /* avx10_2_vcvttsd2sisdi_round */
   10268              : 
   10269              :                     case 3:
   10270              :                       if (!(
   10271              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10272              : (TARGET_AVX512F) && (
   10273              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10274              : (TARGET_AVX10_2) && 
   10275              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10276              : (TARGET_64BIT))))
   10277              :                         return -1;
   10278              :                       return 10999; /* avx10_2_vcvttss2sisdi_round */
   10279              : 
   10280              :                     default:
   10281              :                       return -1;
   10282              :                     }
   10283              : 
   10284              :                 case 277:
   10285              :                   switch (pattern892 (x3))
   10286              :                     {
   10287              :                     case 0:
   10288              :                       if (!(
   10289              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10290              : (TARGET_AVX512F) && 
   10291              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10292              : (TARGET_AVX10_2)))
   10293              :                         return -1;
   10294              :                       return 10989; /* avx10_2_vcvttsd2usissi_round */
   10295              : 
   10296              :                     case 1:
   10297              :                       if (!(
   10298              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10299              : (TARGET_AVX512F) && 
   10300              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10301              : (TARGET_AVX10_2)))
   10302              :                         return -1;
   10303              :                       return 10997; /* avx10_2_vcvttss2usissi_round */
   10304              : 
   10305              :                     case 2:
   10306              :                       if (!(
   10307              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10308              : (TARGET_AVX512F) && (
   10309              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10310              : (TARGET_AVX10_2) && 
   10311              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10312              : (TARGET_64BIT))))
   10313              :                         return -1;
   10314              :                       return 10993; /* avx10_2_vcvttsd2usisdi_round */
   10315              : 
   10316              :                     case 3:
   10317              :                       if (!(
   10318              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10319              : (TARGET_AVX512F) && (
   10320              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10321              : (TARGET_AVX10_2) && 
   10322              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10323              : (TARGET_64BIT))))
   10324              :                         return -1;
   10325              :                       return 11001; /* avx10_2_vcvttss2usisdi_round */
   10326              : 
   10327              :                     default:
   10328              :                       return -1;
   10329              :                     }
   10330              : 
   10331              :                 default:
   10332              :                   return -1;
   10333              :                 }
   10334              : 
   10335              :             default:
   10336              :               return -1;
   10337              :             }
   10338              : 
   10339              :         case AND:
   10340              :           if (GET_MODE (x5) != E_SImode)
   10341              :             return -1;
   10342              :           x9 = XEXP (x5, 0);
   10343              :           if (GET_CODE (x9) != UNSPEC
   10344              :               || XVECLEN (x9, 0) != 3
   10345              :               || XINT (x9, 1) != 60
   10346              :               || GET_MODE (x9) != E_SImode
   10347              :               || !register_operand (operands[0], E_SImode)
   10348              :               || GET_MODE (x3) != E_SImode)
   10349              :             return -1;
   10350              :           x10 = XVECEXP (x9, 0, 0);
   10351              :           operands[1] = x10;
   10352              :           if (!register_operand (operands[1], E_V32HFmode))
   10353              :             return -1;
   10354              :           x11 = XVECEXP (x9, 0, 1);
   10355              :           operands[2] = x11;
   10356              :           if (!nonimmediate_operand (operands[2], E_V32HFmode))
   10357              :             return -1;
   10358              :           x12 = XVECEXP (x9, 0, 2);
   10359              :           operands[3] = x12;
   10360              :           if (!const_0_to_31_operand (operands[3], E_SImode))
   10361              :             return -1;
   10362              :           x13 = XEXP (x5, 1);
   10363              :           operands[4] = x13;
   10364              :           if (!register_operand (operands[4], E_SImode))
   10365              :             return -1;
   10366              :           x4 = XVECEXP (x3, 0, 1);
   10367              :           operands[5] = x4;
   10368              :           if (!const48_operand (operands[5], E_SImode)
   10369              :               || !(
   10370              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10371              : (TARGET_AVX512F) && (
   10372              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10373              : (TARGET_AVX512F) && (
   10374              : #line 4681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10375              : (TARGET_AVX512F && (V32HFmode == V16SFmode
   10376              :                                                                               || V32HFmode == V8DFmode
   10377              :                                                                               || V32HFmode == V8DImode
   10378              :                                                                               || V32HFmode == V16SImode
   10379              :                                                                               || V32HFmode == V32HFmode)) && 
   10380              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10381              : (TARGET_AVX512FP16)))))
   10382              :             return -1;
   10383              :           return 3335; /* avx512bw_cmpv32hf3_mask_round */
   10384              : 
   10385              :         case FIX:
   10386              :           switch (pattern458 (x3))
   10387              :             {
   10388              :             case 0:
   10389              :               if (!(
   10390              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10391              : (TARGET_AVX512F) && 
   10392              : #line 8392 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10393              : (TARGET_AVX512FP16)))
   10394              :                 return -1;
   10395              :               return 4751; /* avx512fp16_fix_truncsi2_round */
   10396              : 
   10397              :             case 1:
   10398              :               if (!(
   10399              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10400              : (TARGET_AVX512F) && 
   10401              : #line 8987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10402              : (TARGET_SSE)))
   10403              :                 return -1;
   10404              :               return 4850; /* sse_cvttss2si_round */
   10405              : 
   10406              :             case 2:
   10407              :               if (!(
   10408              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10409              : (TARGET_AVX512F) && 
   10410              : #line 9533 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10411              : (TARGET_SSE2)))
   10412              :                 return -1;
   10413              :               return 4985; /* sse2_cvttsd2si_round */
   10414              : 
   10415              :             case 3:
   10416              :               if (!(
   10417              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10418              : (TARGET_AVX512F) && (
   10419              : #line 8392 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10420              : (TARGET_AVX512FP16) && 
   10421              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10422              : (TARGET_64BIT))))
   10423              :                 return -1;
   10424              :               return 4755; /* avx512fp16_fix_truncdi2_round */
   10425              : 
   10426              :             case 4:
   10427              :               if (!(
   10428              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10429              : (TARGET_AVX512F) && (
   10430              : #line 8987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10431              : (TARGET_SSE) && 
   10432              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10433              : (TARGET_64BIT))))
   10434              :                 return -1;
   10435              :               return 4852; /* sse_cvttss2siq_round */
   10436              : 
   10437              :             case 5:
   10438              :               if (!(
   10439              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10440              : (TARGET_AVX512F) && (
   10441              : #line 9533 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10442              : (TARGET_SSE2) && 
   10443              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10444              : (TARGET_64BIT))))
   10445              :                 return -1;
   10446              :               return 4987; /* sse2_cvttsd2siq_round */
   10447              : 
   10448              :             default:
   10449              :               return -1;
   10450              :             }
   10451              : 
   10452              :         case UNSIGNED_FIX:
   10453              :           switch (pattern458 (x3))
   10454              :             {
   10455              :             case 0:
   10456              :               if (!(
   10457              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10458              : (TARGET_AVX512F) && 
   10459              : #line 8392 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10460              : (TARGET_AVX512FP16)))
   10461              :                 return -1;
   10462              :               return 4753; /* avx512fp16_fixuns_truncsi2_round */
   10463              : 
   10464              :             case 1:
   10465              :               if (!
   10466              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10467              : (TARGET_AVX512F))
   10468              :                 return -1;
   10469              :               return 4959; /* avx512f_vcvttss2usi_round */
   10470              : 
   10471              :             case 2:
   10472              :               if (!
   10473              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10474              : (TARGET_AVX512F))
   10475              :                 return -1;
   10476              :               return 4971; /* avx512f_vcvttsd2usi_round */
   10477              : 
   10478              :             case 3:
   10479              :               if (!(
   10480              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10481              : (TARGET_AVX512F) && (
   10482              : #line 8392 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10483              : (TARGET_AVX512FP16) && 
   10484              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10485              : (TARGET_64BIT))))
   10486              :                 return -1;
   10487              :               return 4757; /* avx512fp16_fixuns_truncdi2_round */
   10488              : 
   10489              :             case 4:
   10490              :               if (!(
   10491              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10492              : (TARGET_AVX512F) && (
   10493              : #line 9438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10494              : (TARGET_AVX512F) && 
   10495              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10496              : (TARGET_64BIT))))
   10497              :                 return -1;
   10498              :               return 4961; /* avx512f_vcvttss2usiq_round */
   10499              : 
   10500              :             case 5:
   10501              :               if (!(
   10502              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10503              : (TARGET_AVX512F) && (
   10504              : #line 9474 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10505              : (TARGET_AVX512F) && 
   10506              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10507              : (TARGET_64BIT))))
   10508              :                 return -1;
   10509              :               return 4973; /* avx512f_vcvttsd2usiq_round */
   10510              : 
   10511              :             default:
   10512              :               return -1;
   10513              :             }
   10514              : 
   10515              :         default:
   10516              :           return -1;
   10517              :         }
   10518              : 
   10519              :     case 159:
   10520              :       switch (pattern304 (x3))
   10521              :         {
   10522              :         case 0:
   10523              :           if (!(
   10524              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10525              : (TARGET_AVX512F) && 
   10526              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10527              : (TARGET_AVX512BW)))
   10528              :             return -1;
   10529              :           return 8184; /* avx512bw_testmv64qi3 */
   10530              : 
   10531              :         case 1:
   10532              :           if (!(
   10533              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10534              : (TARGET_AVX512F) && 
   10535              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10536              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   10537              :             return -1;
   10538              :           return 8186; /* avx512vl_testmv32qi3 */
   10539              : 
   10540              :         case 2:
   10541              :           if (!(
   10542              : #line 19519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10543              : (TARGET_AVX512F) && 
   10544              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10545              : (TARGET_AVX512BW)))
   10546              :             return -1;
   10547              :           return 8190; /* avx512bw_testmv32hi3 */
   10548              : 
   10549              :         default:
   10550              :           return -1;
   10551              :         }
   10552              : 
   10553              :     case 160:
   10554              :       switch (pattern304 (x3))
   10555              :         {
   10556              :         case 0:
   10557              :           if (!(
   10558              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10559              : (TARGET_AVX512F) && 
   10560              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10561              : (TARGET_AVX512BW)))
   10562              :             return -1;
   10563              :           return 8208; /* avx512bw_testnmv64qi3 */
   10564              : 
   10565              :         case 1:
   10566              :           if (!(
   10567              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10568              : (TARGET_AVX512F) && 
   10569              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10570              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   10571              :             return -1;
   10572              :           return 8210; /* avx512vl_testnmv32qi3 */
   10573              : 
   10574              :         case 2:
   10575              :           if (!(
   10576              : #line 19530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10577              : (TARGET_AVX512F) && 
   10578              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10579              : (TARGET_AVX512BW)))
   10580              :             return -1;
   10581              :           return 8214; /* avx512bw_testnmv32hi3 */
   10582              : 
   10583              :         default:
   10584              :           return -1;
   10585              :         }
   10586              : 
   10587              :     case 194:
   10588              :       if (GET_MODE (x3) != E_SImode
   10589              :           || !register_operand (operands[0], E_SImode))
   10590              :         return -1;
   10591              :       x5 = XVECEXP (x3, 0, 0);
   10592              :       operands[1] = x5;
   10593              :       if (!vector_operand (operands[1], E_V32HFmode))
   10594              :         return -1;
   10595              :       x4 = XVECEXP (x3, 0, 1);
   10596              :       operands[2] = x4;
   10597              :       if (!const_0_to_255_operand (operands[2], E_VOIDmode)
   10598              :           || !(
   10599              : #line 30907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10600              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V32HFmode)) && 
   10601              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10602              : (TARGET_AVX512FP16)))
   10603              :         return -1;
   10604              :       return 10086; /* avx512dq_fpclassv32hf */
   10605              : 
   10606              :     case 215:
   10607              :       x5 = XVECEXP (x3, 0, 0);
   10608              :       operands[1] = x5;
   10609              :       x4 = XVECEXP (x3, 0, 1);
   10610              :       operands[2] = x4;
   10611              :       switch (GET_MODE (operands[0]))
   10612              :         {
   10613              :         case E_DImode:
   10614              :           if (pattern169 (x3, 
   10615              : E_DImode, 
   10616              : E_V64QImode) != 0
   10617              :               || !
   10618              : #line 32001 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10619              : (TARGET_AVX512BITALG))
   10620              :             return -1;
   10621              :           return 10428; /* avx512vl_vpshufbitqmbv64qi */
   10622              : 
   10623              :         case E_SImode:
   10624              :           if (pattern169 (x3, 
   10625              : E_SImode, 
   10626              : E_V32QImode) != 0
   10627              :               || !(
   10628              : #line 32001 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10629              : (TARGET_AVX512BITALG) && 
   10630              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10631              : (TARGET_AVX512VL)))
   10632              :             return -1;
   10633              :           return 10432; /* avx512vl_vpshufbitqmbv32qi */
   10634              : 
   10635              :         default:
   10636              :           return -1;
   10637              :         }
   10638              : 
   10639              :     case 263:
   10640              :       if (GET_MODE (x3) != E_SImode
   10641              :           || !register_operand (operands[0], E_SImode))
   10642              :         return -1;
   10643              :       x5 = XVECEXP (x3, 0, 0);
   10644              :       operands[1] = x5;
   10645              :       if (!nonimmediate_operand (operands[1], E_V32BFmode))
   10646              :         return -1;
   10647              :       x4 = XVECEXP (x3, 0, 1);
   10648              :       operands[2] = x4;
   10649              :       if (!const_0_to_255_operand (operands[2], E_VOIDmode)
   10650              :           || !
   10651              : #line 33521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10652              : (TARGET_AVX10_2))
   10653              :         return -1;
   10654              :       return 10822; /* avx10_2_fpclassbf16_v32bf */
   10655              : 
   10656              :     case 292:
   10657              :       x5 = XVECEXP (x3, 0, 0);
   10658              :       operands[1] = x5;
   10659              :       x4 = XVECEXP (x3, 0, 1);
   10660              :       operands[2] = x4;
   10661              :       if (!const_int_operand (operands[2], E_SImode))
   10662              :         return -1;
   10663              :       switch (GET_MODE (operands[0]))
   10664              :         {
   10665              :         case E_SImode:
   10666              :           if (!memory_operand (operands[0], E_SImode)
   10667              :               || GET_MODE (x3) != E_SImode
   10668              :               || !x86_64_nonmemory_operand (operands[1], E_SImode))
   10669              :             return -1;
   10670              :           return 11097; /* atomic_storesi_1 */
   10671              : 
   10672              :         case E_DImode:
   10673              :           if (!memory_operand (operands[0], E_DImode)
   10674              :               || GET_MODE (x3) != E_DImode
   10675              :               || !x86_64_nonmemory_operand (operands[1], E_DImode)
   10676              :               || !
   10677              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10678              : (TARGET_64BIT))
   10679              :             return -1;
   10680              :           return 11098; /* atomic_storedi_1 */
   10681              : 
   10682              :         default:
   10683              :           return -1;
   10684              :         }
   10685              : 
   10686              :     default:
   10687              :       return -1;
   10688              :     }
   10689              : }
   10690              : 
   10691              :  int
   10692              : recog_154 (rtx x1 ATTRIBUTE_UNUSED,
   10693              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10694              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10695              : {
   10696              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10697              :   rtx x2, x3, x4, x5;
   10698              :   int res ATTRIBUTE_UNUSED;
   10699              :   x2 = XEXP (x1, 1);
   10700              :   if (GET_MODE (x2) != E_V8BFmode)
   10701              :     return -1;
   10702              :   x3 = XEXP (x2, 2);
   10703              :   if (!register_operand (x3, E_QImode))
   10704              :     return -1;
   10705              :   operands[3] = x3;
   10706              :   if (register_operand (operands[0], E_V8BFmode))
   10707              :     {
   10708              :       x4 = XEXP (x2, 0);
   10709              :       operands[2] = x4;
   10710              :       if (nonimmediate_operand (operands[2], E_V8BFmode))
   10711              :         {
   10712              :           x5 = XEXP (x2, 1);
   10713              :           operands[1] = x5;
   10714              :           if (nonimm_or_0_operand (operands[1], E_V8BFmode)
   10715              :               && (
   10716              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10717              : (TARGET_AVX512BW) && 
   10718              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10719              : (TARGET_AVX512VL)))
   10720              :             return 2589; /* avx512vl_blendmv8bf */
   10721              :         }
   10722              :     }
   10723              :   operands[2] = x3;
   10724              :   if (!memory_operand (operands[0], E_V8BFmode))
   10725              :     return -1;
   10726              :   x4 = XEXP (x2, 0);
   10727              :   operands[1] = x4;
   10728              :   if (!register_operand (operands[1], E_V8BFmode))
   10729              :     return -1;
   10730              :   x5 = XEXP (x2, 1);
   10731              :   if (!rtx_equal_p (x5, operands[0])
   10732              :       || !(
   10733              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10734              : (TARGET_AVX512BW) && 
   10735              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10736              : (TARGET_AVX512VL)))
   10737              :     return -1;
   10738              :   return 2613; /* *avx512vl_storev8bf_mask */
   10739              : }
   10740              : 
   10741              :  int
   10742              : recog_155 (rtx x1 ATTRIBUTE_UNUSED,
   10743              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10744              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10745              : {
   10746              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10747              :   rtx x2, x3, x4, x5;
   10748              :   int res ATTRIBUTE_UNUSED;
   10749              :   x2 = XEXP (x1, 1);
   10750              :   if (GET_MODE (x2) != E_V16BFmode)
   10751              :     return -1;
   10752              :   x3 = XEXP (x2, 2);
   10753              :   if (!register_operand (x3, E_HImode))
   10754              :     return -1;
   10755              :   operands[3] = x3;
   10756              :   if (register_operand (operands[0], E_V16BFmode))
   10757              :     {
   10758              :       x4 = XEXP (x2, 0);
   10759              :       operands[2] = x4;
   10760              :       if (nonimmediate_operand (operands[2], E_V16BFmode))
   10761              :         {
   10762              :           x5 = XEXP (x2, 1);
   10763              :           operands[1] = x5;
   10764              :           if (nonimm_or_0_operand (operands[1], E_V16BFmode)
   10765              :               && (
   10766              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10767              : (TARGET_AVX512BW) && 
   10768              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10769              : (TARGET_AVX512VL)))
   10770              :             return 2588; /* avx512vl_blendmv16bf */
   10771              :         }
   10772              :     }
   10773              :   operands[2] = x3;
   10774              :   if (!memory_operand (operands[0], E_V16BFmode))
   10775              :     return -1;
   10776              :   x4 = XEXP (x2, 0);
   10777              :   operands[1] = x4;
   10778              :   if (!register_operand (operands[1], E_V16BFmode))
   10779              :     return -1;
   10780              :   x5 = XEXP (x2, 1);
   10781              :   if (!rtx_equal_p (x5, operands[0])
   10782              :       || !(
   10783              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10784              : (TARGET_AVX512BW) && 
   10785              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10786              : (TARGET_AVX512VL)))
   10787              :     return -1;
   10788              :   return 2612; /* *avx512vl_storev16bf_mask */
   10789              : }
   10790              : 
   10791              :  int
   10792              : recog_156 (rtx x1 ATTRIBUTE_UNUSED,
   10793              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10794              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10795              : {
   10796              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10797              :   rtx x2, x3, x4, x5;
   10798              :   int res ATTRIBUTE_UNUSED;
   10799              :   x2 = XEXP (x1, 1);
   10800              :   if (GET_MODE (x2) != E_V32BFmode)
   10801              :     return -1;
   10802              :   x3 = XEXP (x2, 2);
   10803              :   if (!register_operand (x3, E_SImode))
   10804              :     return -1;
   10805              :   operands[3] = x3;
   10806              :   if (register_operand (operands[0], E_V32BFmode))
   10807              :     {
   10808              :       x4 = XEXP (x2, 0);
   10809              :       operands[2] = x4;
   10810              :       if (nonimmediate_operand (operands[2], E_V32BFmode))
   10811              :         {
   10812              :           x5 = XEXP (x2, 1);
   10813              :           operands[1] = x5;
   10814              :           if (nonimm_or_0_operand (operands[1], E_V32BFmode)
   10815              :               && 
   10816              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10817              : (TARGET_AVX512BW))
   10818              :             return 2587; /* avx512bw_blendmv32bf */
   10819              :         }
   10820              :     }
   10821              :   operands[2] = x3;
   10822              :   if (!memory_operand (operands[0], E_V32BFmode))
   10823              :     return -1;
   10824              :   x4 = XEXP (x2, 0);
   10825              :   operands[1] = x4;
   10826              :   if (!register_operand (operands[1], E_V32BFmode))
   10827              :     return -1;
   10828              :   x5 = XEXP (x2, 1);
   10829              :   if (!rtx_equal_p (x5, operands[0])
   10830              :       || !
   10831              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10832              : (TARGET_AVX512BW))
   10833              :     return -1;
   10834              :   return 2611; /* *avx512bw_storev32bf_mask */
   10835              : }
   10836              : 
   10837              :  int
   10838              : recog_157 (rtx x1 ATTRIBUTE_UNUSED,
   10839              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10840              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10841              : {
   10842              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10843              :   rtx x2, x3, x4, x5;
   10844              :   int res ATTRIBUTE_UNUSED;
   10845              :   x2 = XEXP (x1, 1);
   10846              :   if (GET_MODE (x2) != E_V8HFmode)
   10847              :     return -1;
   10848              :   x3 = XEXP (x2, 2);
   10849              :   if (!register_operand (x3, E_QImode))
   10850              :     return -1;
   10851              :   operands[3] = x3;
   10852              :   if (register_operand (operands[0], E_V8HFmode))
   10853              :     {
   10854              :       x4 = XEXP (x2, 0);
   10855              :       operands[2] = x4;
   10856              :       if (nonimmediate_operand (operands[2], E_V8HFmode))
   10857              :         {
   10858              :           x5 = XEXP (x2, 1);
   10859              :           operands[1] = x5;
   10860              :           if (nonimm_or_0_operand (operands[1], E_V8HFmode)
   10861              :               && (
   10862              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10863              : (TARGET_AVX512BW) && 
   10864              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10865              : (TARGET_AVX512VL)))
   10866              :             return 2586; /* avx512fp16_blendmv8hf */
   10867              :         }
   10868              :     }
   10869              :   operands[2] = x3;
   10870              :   if (!memory_operand (operands[0], E_V8HFmode))
   10871              :     return -1;
   10872              :   x4 = XEXP (x2, 0);
   10873              :   operands[1] = x4;
   10874              :   if (!register_operand (operands[1], E_V8HFmode))
   10875              :     return -1;
   10876              :   x5 = XEXP (x2, 1);
   10877              :   if (!rtx_equal_p (x5, operands[0])
   10878              :       || !(
   10879              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10880              : (TARGET_AVX512BW) && 
   10881              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10882              : (TARGET_AVX512VL)))
   10883              :     return -1;
   10884              :   return 2610; /* *avx512fp16_storev8hf_mask */
   10885              : }
   10886              : 
   10887              :  int
   10888              : recog_158 (rtx x1 ATTRIBUTE_UNUSED,
   10889              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10890              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10891              : {
   10892              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10893              :   rtx x2, x3, x4, x5;
   10894              :   int res ATTRIBUTE_UNUSED;
   10895              :   x2 = XEXP (x1, 1);
   10896              :   if (GET_MODE (x2) != E_V16HFmode)
   10897              :     return -1;
   10898              :   x3 = XEXP (x2, 2);
   10899              :   if (!register_operand (x3, E_HImode))
   10900              :     return -1;
   10901              :   operands[3] = x3;
   10902              :   if (register_operand (operands[0], E_V16HFmode))
   10903              :     {
   10904              :       x4 = XEXP (x2, 0);
   10905              :       operands[2] = x4;
   10906              :       if (nonimmediate_operand (operands[2], E_V16HFmode))
   10907              :         {
   10908              :           x5 = XEXP (x2, 1);
   10909              :           operands[1] = x5;
   10910              :           if (nonimm_or_0_operand (operands[1], E_V16HFmode)
   10911              :               && (
   10912              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10913              : (TARGET_AVX512BW) && 
   10914              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10915              : (TARGET_AVX512VL)))
   10916              :             return 2585; /* avx512vl_blendmv16hf */
   10917              :         }
   10918              :     }
   10919              :   operands[2] = x3;
   10920              :   if (!memory_operand (operands[0], E_V16HFmode))
   10921              :     return -1;
   10922              :   x4 = XEXP (x2, 0);
   10923              :   operands[1] = x4;
   10924              :   if (!register_operand (operands[1], E_V16HFmode))
   10925              :     return -1;
   10926              :   x5 = XEXP (x2, 1);
   10927              :   if (!rtx_equal_p (x5, operands[0])
   10928              :       || !(
   10929              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10930              : (TARGET_AVX512BW) && 
   10931              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10932              : (TARGET_AVX512VL)))
   10933              :     return -1;
   10934              :   return 2609; /* *avx512vl_storev16hf_mask */
   10935              : }
   10936              : 
   10937              :  int
   10938              : recog_159 (rtx x1 ATTRIBUTE_UNUSED,
   10939              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10940              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10941              : {
   10942              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10943              :   rtx x2, x3, x4, x5;
   10944              :   int res ATTRIBUTE_UNUSED;
   10945              :   switch (GET_MODE (operands[0]))
   10946              :     {
   10947              :     case E_V16SImode:
   10948              :       x2 = XEXP (x1, 1);
   10949              :       if (GET_MODE (x2) != E_V16SImode)
   10950              :         return -1;
   10951              :       x3 = XEXP (x2, 2);
   10952              :       if (!register_operand (x3, E_HImode))
   10953              :         return -1;
   10954              :       operands[3] = x3;
   10955              :       if (register_operand (operands[0], E_V16SImode))
   10956              :         {
   10957              :           x4 = XEXP (x2, 0);
   10958              :           operands[2] = x4;
   10959              :           if (nonimmediate_operand (operands[2], E_V16SImode))
   10960              :             {
   10961              :               x5 = XEXP (x2, 1);
   10962              :               operands[1] = x5;
   10963              :               if (nonimm_or_0_operand (operands[1], E_V16SImode)
   10964              :                   && 
   10965              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10966              : (TARGET_AVX512F))
   10967              :                 return 2566; /* avx512f_blendmv16si */
   10968              :             }
   10969              :         }
   10970              :       operands[2] = x3;
   10971              :       if (!memory_operand (operands[0], E_V16SImode))
   10972              :         return -1;
   10973              :       x4 = XEXP (x2, 0);
   10974              :       operands[1] = x4;
   10975              :       if (!register_operand (operands[1], E_V16SImode))
   10976              :         return -1;
   10977              :       x5 = XEXP (x2, 1);
   10978              :       if (!rtx_equal_p (x5, operands[0])
   10979              :           || !
   10980              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10981              : (TARGET_AVX512F))
   10982              :         return -1;
   10983              :       return 2590; /* *avx512f_storev16si_mask */
   10984              : 
   10985              :     case E_V8SImode:
   10986              :       x2 = XEXP (x1, 1);
   10987              :       if (GET_MODE (x2) != E_V8SImode)
   10988              :         return -1;
   10989              :       x3 = XEXP (x2, 2);
   10990              :       if (!register_operand (x3, E_QImode))
   10991              :         return -1;
   10992              :       operands[3] = x3;
   10993              :       if (register_operand (operands[0], E_V8SImode))
   10994              :         {
   10995              :           x4 = XEXP (x2, 0);
   10996              :           operands[2] = x4;
   10997              :           if (nonimmediate_operand (operands[2], E_V8SImode))
   10998              :             {
   10999              :               x5 = XEXP (x2, 1);
   11000              :               operands[1] = x5;
   11001              :               if (nonimm_or_0_operand (operands[1], E_V8SImode)
   11002              :                   && (
   11003              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11004              : (TARGET_AVX512F) && 
   11005              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11006              : (TARGET_AVX512VL)))
   11007              :                 return 2567; /* avx512vl_blendmv8si */
   11008              :             }
   11009              :         }
   11010              :       operands[2] = x3;
   11011              :       if (!memory_operand (operands[0], E_V8SImode))
   11012              :         return -1;
   11013              :       x4 = XEXP (x2, 0);
   11014              :       operands[1] = x4;
   11015              :       if (!register_operand (operands[1], E_V8SImode))
   11016              :         return -1;
   11017              :       x5 = XEXP (x2, 1);
   11018              :       if (!rtx_equal_p (x5, operands[0])
   11019              :           || !(
   11020              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11021              : (TARGET_AVX512F) && 
   11022              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11023              : (TARGET_AVX512VL)))
   11024              :         return -1;
   11025              :       return 2591; /* *avx512vl_storev8si_mask */
   11026              : 
   11027              :     case E_V4SImode:
   11028              :       x2 = XEXP (x1, 1);
   11029              :       if (GET_MODE (x2) != E_V4SImode)
   11030              :         return -1;
   11031              :       x3 = XEXP (x2, 2);
   11032              :       if (!register_operand (x3, E_QImode))
   11033              :         return -1;
   11034              :       operands[3] = x3;
   11035              :       if (register_operand (operands[0], E_V4SImode))
   11036              :         {
   11037              :           x4 = XEXP (x2, 0);
   11038              :           operands[2] = x4;
   11039              :           if (nonimmediate_operand (operands[2], E_V4SImode))
   11040              :             {
   11041              :               x5 = XEXP (x2, 1);
   11042              :               operands[1] = x5;
   11043              :               if (nonimm_or_0_operand (operands[1], E_V4SImode)
   11044              :                   && (
   11045              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11046              : (TARGET_AVX512F) && 
   11047              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11048              : (TARGET_AVX512VL)))
   11049              :                 return 2568; /* avx512vl_blendmv4si */
   11050              :             }
   11051              :         }
   11052              :       operands[2] = x3;
   11053              :       if (!memory_operand (operands[0], E_V4SImode))
   11054              :         return -1;
   11055              :       x4 = XEXP (x2, 0);
   11056              :       operands[1] = x4;
   11057              :       if (!register_operand (operands[1], E_V4SImode))
   11058              :         return -1;
   11059              :       x5 = XEXP (x2, 1);
   11060              :       if (!rtx_equal_p (x5, operands[0])
   11061              :           || !(
   11062              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11063              : (TARGET_AVX512F) && 
   11064              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11065              : (TARGET_AVX512VL)))
   11066              :         return -1;
   11067              :       return 2592; /* *avx512vl_storev4si_mask */
   11068              : 
   11069              :     case E_V8DImode:
   11070              :       x2 = XEXP (x1, 1);
   11071              :       if (GET_MODE (x2) != E_V8DImode)
   11072              :         return -1;
   11073              :       x3 = XEXP (x2, 2);
   11074              :       if (!register_operand (x3, E_QImode))
   11075              :         return -1;
   11076              :       operands[3] = x3;
   11077              :       if (register_operand (operands[0], E_V8DImode))
   11078              :         {
   11079              :           x4 = XEXP (x2, 0);
   11080              :           operands[2] = x4;
   11081              :           if (nonimmediate_operand (operands[2], E_V8DImode))
   11082              :             {
   11083              :               x5 = XEXP (x2, 1);
   11084              :               operands[1] = x5;
   11085              :               if (nonimm_or_0_operand (operands[1], E_V8DImode)
   11086              :                   && 
   11087              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11088              : (TARGET_AVX512F))
   11089              :                 return 2569; /* avx512f_blendmv8di */
   11090              :             }
   11091              :         }
   11092              :       operands[2] = x3;
   11093              :       if (!memory_operand (operands[0], E_V8DImode))
   11094              :         return -1;
   11095              :       x4 = XEXP (x2, 0);
   11096              :       operands[1] = x4;
   11097              :       if (!register_operand (operands[1], E_V8DImode))
   11098              :         return -1;
   11099              :       x5 = XEXP (x2, 1);
   11100              :       if (!rtx_equal_p (x5, operands[0])
   11101              :           || !
   11102              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11103              : (TARGET_AVX512F))
   11104              :         return -1;
   11105              :       return 2593; /* *avx512f_storev8di_mask */
   11106              : 
   11107              :     case E_V4DImode:
   11108              :       x2 = XEXP (x1, 1);
   11109              :       if (GET_MODE (x2) != E_V4DImode)
   11110              :         return -1;
   11111              :       x3 = XEXP (x2, 2);
   11112              :       if (!register_operand (x3, E_QImode))
   11113              :         return -1;
   11114              :       operands[3] = x3;
   11115              :       if (register_operand (operands[0], E_V4DImode))
   11116              :         {
   11117              :           x4 = XEXP (x2, 0);
   11118              :           operands[2] = x4;
   11119              :           if (nonimmediate_operand (operands[2], E_V4DImode))
   11120              :             {
   11121              :               x5 = XEXP (x2, 1);
   11122              :               operands[1] = x5;
   11123              :               if (nonimm_or_0_operand (operands[1], E_V4DImode)
   11124              :                   && (
   11125              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11126              : (TARGET_AVX512F) && 
   11127              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11128              : (TARGET_AVX512VL)))
   11129              :                 return 2570; /* avx512vl_blendmv4di */
   11130              :             }
   11131              :         }
   11132              :       operands[2] = x3;
   11133              :       if (!memory_operand (operands[0], E_V4DImode))
   11134              :         return -1;
   11135              :       x4 = XEXP (x2, 0);
   11136              :       operands[1] = x4;
   11137              :       if (!register_operand (operands[1], E_V4DImode))
   11138              :         return -1;
   11139              :       x5 = XEXP (x2, 1);
   11140              :       if (!rtx_equal_p (x5, operands[0])
   11141              :           || !(
   11142              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11143              : (TARGET_AVX512F) && 
   11144              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11145              : (TARGET_AVX512VL)))
   11146              :         return -1;
   11147              :       return 2594; /* *avx512vl_storev4di_mask */
   11148              : 
   11149              :     case E_V2DImode:
   11150              :       x2 = XEXP (x1, 1);
   11151              :       if (GET_MODE (x2) != E_V2DImode)
   11152              :         return -1;
   11153              :       x3 = XEXP (x2, 2);
   11154              :       if (!register_operand (x3, E_QImode))
   11155              :         return -1;
   11156              :       operands[3] = x3;
   11157              :       if (register_operand (operands[0], E_V2DImode))
   11158              :         {
   11159              :           x4 = XEXP (x2, 0);
   11160              :           operands[2] = x4;
   11161              :           if (nonimmediate_operand (operands[2], E_V2DImode))
   11162              :             {
   11163              :               x5 = XEXP (x2, 1);
   11164              :               operands[1] = x5;
   11165              :               if (nonimm_or_0_operand (operands[1], E_V2DImode)
   11166              :                   && (
   11167              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11168              : (TARGET_AVX512F) && 
   11169              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11170              : (TARGET_AVX512VL)))
   11171              :                 return 2571; /* avx512vl_blendmv2di */
   11172              :             }
   11173              :         }
   11174              :       operands[2] = x3;
   11175              :       if (!memory_operand (operands[0], E_V2DImode))
   11176              :         return -1;
   11177              :       x4 = XEXP (x2, 0);
   11178              :       operands[1] = x4;
   11179              :       if (!register_operand (operands[1], E_V2DImode))
   11180              :         return -1;
   11181              :       x5 = XEXP (x2, 1);
   11182              :       if (!rtx_equal_p (x5, operands[0])
   11183              :           || !(
   11184              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11185              : (TARGET_AVX512F) && 
   11186              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11187              : (TARGET_AVX512VL)))
   11188              :         return -1;
   11189              :       return 2595; /* *avx512vl_storev2di_mask */
   11190              : 
   11191              :     case E_V16SFmode:
   11192              :       x2 = XEXP (x1, 1);
   11193              :       if (GET_MODE (x2) != E_V16SFmode)
   11194              :         return -1;
   11195              :       x3 = XEXP (x2, 2);
   11196              :       if (!register_operand (x3, E_HImode))
   11197              :         return -1;
   11198              :       operands[3] = x3;
   11199              :       if (register_operand (operands[0], E_V16SFmode))
   11200              :         {
   11201              :           x4 = XEXP (x2, 0);
   11202              :           operands[2] = x4;
   11203              :           if (nonimmediate_operand (operands[2], E_V16SFmode))
   11204              :             {
   11205              :               x5 = XEXP (x2, 1);
   11206              :               operands[1] = x5;
   11207              :               if (nonimm_or_0_operand (operands[1], E_V16SFmode)
   11208              :                   && 
   11209              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11210              : (TARGET_AVX512F))
   11211              :                 return 2572; /* avx512f_blendmv16sf */
   11212              :             }
   11213              :         }
   11214              :       operands[2] = x3;
   11215              :       if (!memory_operand (operands[0], E_V16SFmode))
   11216              :         return -1;
   11217              :       x4 = XEXP (x2, 0);
   11218              :       operands[1] = x4;
   11219              :       if (!register_operand (operands[1], E_V16SFmode))
   11220              :         return -1;
   11221              :       x5 = XEXP (x2, 1);
   11222              :       if (!rtx_equal_p (x5, operands[0])
   11223              :           || !
   11224              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11225              : (TARGET_AVX512F))
   11226              :         return -1;
   11227              :       return 2596; /* *avx512f_storev16sf_mask */
   11228              : 
   11229              :     case E_V8SFmode:
   11230              :       x2 = XEXP (x1, 1);
   11231              :       if (GET_MODE (x2) != E_V8SFmode)
   11232              :         return -1;
   11233              :       x3 = XEXP (x2, 2);
   11234              :       if (!register_operand (x3, E_QImode))
   11235              :         return -1;
   11236              :       operands[3] = x3;
   11237              :       if (register_operand (operands[0], E_V8SFmode))
   11238              :         {
   11239              :           x4 = XEXP (x2, 0);
   11240              :           operands[2] = x4;
   11241              :           if (nonimmediate_operand (operands[2], E_V8SFmode))
   11242              :             {
   11243              :               x5 = XEXP (x2, 1);
   11244              :               operands[1] = x5;
   11245              :               if (nonimm_or_0_operand (operands[1], E_V8SFmode)
   11246              :                   && (
   11247              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11248              : (TARGET_AVX512F) && 
   11249              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11250              : (TARGET_AVX512VL)))
   11251              :                 return 2573; /* avx512vl_blendmv8sf */
   11252              :             }
   11253              :         }
   11254              :       operands[2] = x3;
   11255              :       if (!memory_operand (operands[0], E_V8SFmode))
   11256              :         return -1;
   11257              :       x4 = XEXP (x2, 0);
   11258              :       operands[1] = x4;
   11259              :       if (!register_operand (operands[1], E_V8SFmode))
   11260              :         return -1;
   11261              :       x5 = XEXP (x2, 1);
   11262              :       if (!rtx_equal_p (x5, operands[0])
   11263              :           || !(
   11264              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11265              : (TARGET_AVX512F) && 
   11266              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11267              : (TARGET_AVX512VL)))
   11268              :         return -1;
   11269              :       return 2597; /* *avx512vl_storev8sf_mask */
   11270              : 
   11271              :     case E_V4SFmode:
   11272              :       x2 = XEXP (x1, 1);
   11273              :       if (GET_MODE (x2) != E_V4SFmode)
   11274              :         return -1;
   11275              :       x3 = XEXP (x2, 2);
   11276              :       if (!register_operand (x3, E_QImode))
   11277              :         return -1;
   11278              :       operands[3] = x3;
   11279              :       if (register_operand (operands[0], E_V4SFmode))
   11280              :         {
   11281              :           x4 = XEXP (x2, 0);
   11282              :           operands[2] = x4;
   11283              :           if (nonimmediate_operand (operands[2], E_V4SFmode))
   11284              :             {
   11285              :               x5 = XEXP (x2, 1);
   11286              :               operands[1] = x5;
   11287              :               if (nonimm_or_0_operand (operands[1], E_V4SFmode)
   11288              :                   && (
   11289              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11290              : (TARGET_AVX512F) && 
   11291              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11292              : (TARGET_AVX512VL)))
   11293              :                 return 2574; /* avx512vl_blendmv4sf */
   11294              :             }
   11295              :         }
   11296              :       operands[2] = x3;
   11297              :       if (!memory_operand (operands[0], E_V4SFmode))
   11298              :         return -1;
   11299              :       x4 = XEXP (x2, 0);
   11300              :       operands[1] = x4;
   11301              :       if (!register_operand (operands[1], E_V4SFmode))
   11302              :         return -1;
   11303              :       x5 = XEXP (x2, 1);
   11304              :       if (!rtx_equal_p (x5, operands[0])
   11305              :           || !(
   11306              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11307              : (TARGET_AVX512F) && 
   11308              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11309              : (TARGET_AVX512VL)))
   11310              :         return -1;
   11311              :       return 2598; /* *avx512vl_storev4sf_mask */
   11312              : 
   11313              :     case E_V8DFmode:
   11314              :       x2 = XEXP (x1, 1);
   11315              :       if (GET_MODE (x2) != E_V8DFmode)
   11316              :         return -1;
   11317              :       x3 = XEXP (x2, 2);
   11318              :       if (!register_operand (x3, E_QImode))
   11319              :         return -1;
   11320              :       operands[3] = x3;
   11321              :       if (register_operand (operands[0], E_V8DFmode))
   11322              :         {
   11323              :           x4 = XEXP (x2, 0);
   11324              :           operands[2] = x4;
   11325              :           if (nonimmediate_operand (operands[2], E_V8DFmode))
   11326              :             {
   11327              :               x5 = XEXP (x2, 1);
   11328              :               operands[1] = x5;
   11329              :               if (nonimm_or_0_operand (operands[1], E_V8DFmode)
   11330              :                   && 
   11331              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11332              : (TARGET_AVX512F))
   11333              :                 return 2575; /* avx512f_blendmv8df */
   11334              :             }
   11335              :         }
   11336              :       operands[2] = x3;
   11337              :       if (!memory_operand (operands[0], E_V8DFmode))
   11338              :         return -1;
   11339              :       x4 = XEXP (x2, 0);
   11340              :       operands[1] = x4;
   11341              :       if (!register_operand (operands[1], E_V8DFmode))
   11342              :         return -1;
   11343              :       x5 = XEXP (x2, 1);
   11344              :       if (!rtx_equal_p (x5, operands[0])
   11345              :           || !
   11346              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11347              : (TARGET_AVX512F))
   11348              :         return -1;
   11349              :       return 2599; /* *avx512f_storev8df_mask */
   11350              : 
   11351              :     case E_V4DFmode:
   11352              :       x2 = XEXP (x1, 1);
   11353              :       if (GET_MODE (x2) != E_V4DFmode)
   11354              :         return -1;
   11355              :       x3 = XEXP (x2, 2);
   11356              :       if (!register_operand (x3, E_QImode))
   11357              :         return -1;
   11358              :       operands[3] = x3;
   11359              :       if (register_operand (operands[0], E_V4DFmode))
   11360              :         {
   11361              :           x4 = XEXP (x2, 0);
   11362              :           operands[2] = x4;
   11363              :           if (nonimmediate_operand (operands[2], E_V4DFmode))
   11364              :             {
   11365              :               x5 = XEXP (x2, 1);
   11366              :               operands[1] = x5;
   11367              :               if (nonimm_or_0_operand (operands[1], E_V4DFmode)
   11368              :                   && (
   11369              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11370              : (TARGET_AVX512F) && 
   11371              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11372              : (TARGET_AVX512VL)))
   11373              :                 return 2576; /* avx512vl_blendmv4df */
   11374              :             }
   11375              :         }
   11376              :       operands[2] = x3;
   11377              :       if (!memory_operand (operands[0], E_V4DFmode))
   11378              :         return -1;
   11379              :       x4 = XEXP (x2, 0);
   11380              :       operands[1] = x4;
   11381              :       if (!register_operand (operands[1], E_V4DFmode))
   11382              :         return -1;
   11383              :       x5 = XEXP (x2, 1);
   11384              :       if (!rtx_equal_p (x5, operands[0])
   11385              :           || !(
   11386              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11387              : (TARGET_AVX512F) && 
   11388              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11389              : (TARGET_AVX512VL)))
   11390              :         return -1;
   11391              :       return 2600; /* *avx512vl_storev4df_mask */
   11392              : 
   11393              :     case E_V2DFmode:
   11394              :       x2 = XEXP (x1, 1);
   11395              :       if (GET_MODE (x2) != E_V2DFmode)
   11396              :         return -1;
   11397              :       x3 = XEXP (x2, 2);
   11398              :       if (!register_operand (x3, E_QImode))
   11399              :         return -1;
   11400              :       operands[3] = x3;
   11401              :       if (register_operand (operands[0], E_V2DFmode))
   11402              :         {
   11403              :           x4 = XEXP (x2, 0);
   11404              :           operands[2] = x4;
   11405              :           if (nonimmediate_operand (operands[2], E_V2DFmode))
   11406              :             {
   11407              :               x5 = XEXP (x2, 1);
   11408              :               operands[1] = x5;
   11409              :               if (nonimm_or_0_operand (operands[1], E_V2DFmode)
   11410              :                   && (
   11411              : #line 1773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11412              : (TARGET_AVX512F) && 
   11413              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11414              : (TARGET_AVX512VL)))
   11415              :                 return 2577; /* avx512vl_blendmv2df */
   11416              :             }
   11417              :         }
   11418              :       operands[2] = x3;
   11419              :       if (!memory_operand (operands[0], E_V2DFmode))
   11420              :         return -1;
   11421              :       x4 = XEXP (x2, 0);
   11422              :       operands[1] = x4;
   11423              :       if (!register_operand (operands[1], E_V2DFmode))
   11424              :         return -1;
   11425              :       x5 = XEXP (x2, 1);
   11426              :       if (!rtx_equal_p (x5, operands[0])
   11427              :           || !(
   11428              : #line 1824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11429              : (TARGET_AVX512F) && 
   11430              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11431              : (TARGET_AVX512VL)))
   11432              :         return -1;
   11433              :       return 2601; /* *avx512vl_storev2df_mask */
   11434              : 
   11435              :     case E_V64QImode:
   11436              :       x2 = XEXP (x1, 1);
   11437              :       if (GET_MODE (x2) != E_V64QImode)
   11438              :         return -1;
   11439              :       x3 = XEXP (x2, 2);
   11440              :       if (!register_operand (x3, E_DImode))
   11441              :         return -1;
   11442              :       operands[3] = x3;
   11443              :       if (register_operand (operands[0], E_V64QImode))
   11444              :         {
   11445              :           x4 = XEXP (x2, 0);
   11446              :           operands[2] = x4;
   11447              :           if (nonimmediate_operand (operands[2], E_V64QImode))
   11448              :             {
   11449              :               x5 = XEXP (x2, 1);
   11450              :               operands[1] = x5;
   11451              :               if (nonimm_or_0_operand (operands[1], E_V64QImode)
   11452              :                   && 
   11453              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11454              : (TARGET_AVX512BW))
   11455              :                 return 2578; /* avx512bw_blendmv64qi */
   11456              :             }
   11457              :         }
   11458              :       operands[2] = x3;
   11459              :       if (!memory_operand (operands[0], E_V64QImode))
   11460              :         return -1;
   11461              :       x4 = XEXP (x2, 0);
   11462              :       operands[1] = x4;
   11463              :       if (!register_operand (operands[1], E_V64QImode))
   11464              :         return -1;
   11465              :       x5 = XEXP (x2, 1);
   11466              :       if (!rtx_equal_p (x5, operands[0])
   11467              :           || !
   11468              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11469              : (TARGET_AVX512BW))
   11470              :         return -1;
   11471              :       return 2602; /* *avx512bw_storev64qi_mask */
   11472              : 
   11473              :     case E_V16QImode:
   11474              :       x2 = XEXP (x1, 1);
   11475              :       if (GET_MODE (x2) != E_V16QImode)
   11476              :         return -1;
   11477              :       x3 = XEXP (x2, 2);
   11478              :       if (!register_operand (x3, E_HImode))
   11479              :         return -1;
   11480              :       operands[3] = x3;
   11481              :       if (register_operand (operands[0], E_V16QImode))
   11482              :         {
   11483              :           x4 = XEXP (x2, 0);
   11484              :           operands[2] = x4;
   11485              :           if (nonimmediate_operand (operands[2], E_V16QImode))
   11486              :             {
   11487              :               x5 = XEXP (x2, 1);
   11488              :               operands[1] = x5;
   11489              :               if (nonimm_or_0_operand (operands[1], E_V16QImode)
   11490              :                   && (
   11491              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11492              : (TARGET_AVX512BW) && 
   11493              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11494              : (TARGET_AVX512VL)))
   11495              :                 return 2579; /* avx512vl_blendmv16qi */
   11496              :             }
   11497              :         }
   11498              :       operands[2] = x3;
   11499              :       if (!memory_operand (operands[0], E_V16QImode))
   11500              :         return -1;
   11501              :       x4 = XEXP (x2, 0);
   11502              :       operands[1] = x4;
   11503              :       if (!register_operand (operands[1], E_V16QImode))
   11504              :         return -1;
   11505              :       x5 = XEXP (x2, 1);
   11506              :       if (!rtx_equal_p (x5, operands[0])
   11507              :           || !(
   11508              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11509              : (TARGET_AVX512BW) && 
   11510              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11511              : (TARGET_AVX512VL)))
   11512              :         return -1;
   11513              :       return 2603; /* *avx512vl_storev16qi_mask */
   11514              : 
   11515              :     case E_V32QImode:
   11516              :       x2 = XEXP (x1, 1);
   11517              :       if (GET_MODE (x2) != E_V32QImode)
   11518              :         return -1;
   11519              :       x3 = XEXP (x2, 2);
   11520              :       if (!register_operand (x3, E_SImode))
   11521              :         return -1;
   11522              :       operands[3] = x3;
   11523              :       if (register_operand (operands[0], E_V32QImode))
   11524              :         {
   11525              :           x4 = XEXP (x2, 0);
   11526              :           operands[2] = x4;
   11527              :           if (nonimmediate_operand (operands[2], E_V32QImode))
   11528              :             {
   11529              :               x5 = XEXP (x2, 1);
   11530              :               operands[1] = x5;
   11531              :               if (nonimm_or_0_operand (operands[1], E_V32QImode)
   11532              :                   && (
   11533              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11534              : (TARGET_AVX512BW) && 
   11535              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11536              : (TARGET_AVX512VL)))
   11537              :                 return 2580; /* avx512vl_blendmv32qi */
   11538              :             }
   11539              :         }
   11540              :       operands[2] = x3;
   11541              :       if (!memory_operand (operands[0], E_V32QImode))
   11542              :         return -1;
   11543              :       x4 = XEXP (x2, 0);
   11544              :       operands[1] = x4;
   11545              :       if (!register_operand (operands[1], E_V32QImode))
   11546              :         return -1;
   11547              :       x5 = XEXP (x2, 1);
   11548              :       if (!rtx_equal_p (x5, operands[0])
   11549              :           || !(
   11550              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11551              : (TARGET_AVX512BW) && 
   11552              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11553              : (TARGET_AVX512VL)))
   11554              :         return -1;
   11555              :       return 2604; /* *avx512vl_storev32qi_mask */
   11556              : 
   11557              :     case E_V32HImode:
   11558              :       x2 = XEXP (x1, 1);
   11559              :       if (GET_MODE (x2) != E_V32HImode)
   11560              :         return -1;
   11561              :       x3 = XEXP (x2, 2);
   11562              :       if (!register_operand (x3, E_SImode))
   11563              :         return -1;
   11564              :       operands[3] = x3;
   11565              :       if (register_operand (operands[0], E_V32HImode))
   11566              :         {
   11567              :           x4 = XEXP (x2, 0);
   11568              :           operands[2] = x4;
   11569              :           if (nonimmediate_operand (operands[2], E_V32HImode))
   11570              :             {
   11571              :               x5 = XEXP (x2, 1);
   11572              :               operands[1] = x5;
   11573              :               if (nonimm_or_0_operand (operands[1], E_V32HImode)
   11574              :                   && 
   11575              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11576              : (TARGET_AVX512BW))
   11577              :                 return 2581; /* avx512bw_blendmv32hi */
   11578              :             }
   11579              :         }
   11580              :       operands[2] = x3;
   11581              :       if (!memory_operand (operands[0], E_V32HImode))
   11582              :         return -1;
   11583              :       x4 = XEXP (x2, 0);
   11584              :       operands[1] = x4;
   11585              :       if (!register_operand (operands[1], E_V32HImode))
   11586              :         return -1;
   11587              :       x5 = XEXP (x2, 1);
   11588              :       if (!rtx_equal_p (x5, operands[0])
   11589              :           || !
   11590              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11591              : (TARGET_AVX512BW))
   11592              :         return -1;
   11593              :       return 2605; /* *avx512bw_storev32hi_mask */
   11594              : 
   11595              :     case E_V16HImode:
   11596              :       x2 = XEXP (x1, 1);
   11597              :       if (GET_MODE (x2) != E_V16HImode)
   11598              :         return -1;
   11599              :       x3 = XEXP (x2, 2);
   11600              :       if (!register_operand (x3, E_HImode))
   11601              :         return -1;
   11602              :       operands[3] = x3;
   11603              :       if (register_operand (operands[0], E_V16HImode))
   11604              :         {
   11605              :           x4 = XEXP (x2, 0);
   11606              :           operands[2] = x4;
   11607              :           if (nonimmediate_operand (operands[2], E_V16HImode))
   11608              :             {
   11609              :               x5 = XEXP (x2, 1);
   11610              :               operands[1] = x5;
   11611              :               if (nonimm_or_0_operand (operands[1], E_V16HImode)
   11612              :                   && (
   11613              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11614              : (TARGET_AVX512BW) && 
   11615              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11616              : (TARGET_AVX512VL)))
   11617              :                 return 2582; /* avx512vl_blendmv16hi */
   11618              :             }
   11619              :         }
   11620              :       operands[2] = x3;
   11621              :       if (!memory_operand (operands[0], E_V16HImode))
   11622              :         return -1;
   11623              :       x4 = XEXP (x2, 0);
   11624              :       operands[1] = x4;
   11625              :       if (!register_operand (operands[1], E_V16HImode))
   11626              :         return -1;
   11627              :       x5 = XEXP (x2, 1);
   11628              :       if (!rtx_equal_p (x5, operands[0])
   11629              :           || !(
   11630              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11631              : (TARGET_AVX512BW) && 
   11632              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11633              : (TARGET_AVX512VL)))
   11634              :         return -1;
   11635              :       return 2606; /* *avx512vl_storev16hi_mask */
   11636              : 
   11637              :     case E_V8HImode:
   11638              :       x2 = XEXP (x1, 1);
   11639              :       if (GET_MODE (x2) != E_V8HImode)
   11640              :         return -1;
   11641              :       x3 = XEXP (x2, 2);
   11642              :       if (!register_operand (x3, E_QImode))
   11643              :         return -1;
   11644              :       operands[3] = x3;
   11645              :       if (register_operand (operands[0], E_V8HImode))
   11646              :         {
   11647              :           x4 = XEXP (x2, 0);
   11648              :           operands[2] = x4;
   11649              :           if (nonimmediate_operand (operands[2], E_V8HImode))
   11650              :             {
   11651              :               x5 = XEXP (x2, 1);
   11652              :               operands[1] = x5;
   11653              :               if (nonimm_or_0_operand (operands[1], E_V8HImode)
   11654              :                   && (
   11655              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11656              : (TARGET_AVX512BW) && 
   11657              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11658              : (TARGET_AVX512VL)))
   11659              :                 return 2583; /* avx512vl_blendmv8hi */
   11660              :             }
   11661              :         }
   11662              :       operands[2] = x3;
   11663              :       if (!memory_operand (operands[0], E_V8HImode))
   11664              :         return -1;
   11665              :       x4 = XEXP (x2, 0);
   11666              :       operands[1] = x4;
   11667              :       if (!register_operand (operands[1], E_V8HImode))
   11668              :         return -1;
   11669              :       x5 = XEXP (x2, 1);
   11670              :       if (!rtx_equal_p (x5, operands[0])
   11671              :           || !(
   11672              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11673              : (TARGET_AVX512BW) && 
   11674              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11675              : (TARGET_AVX512VL)))
   11676              :         return -1;
   11677              :       return 2607; /* *avx512vl_storev8hi_mask */
   11678              : 
   11679              :     case E_V32HFmode:
   11680              :       x2 = XEXP (x1, 1);
   11681              :       if (GET_MODE (x2) != E_V32HFmode)
   11682              :         return -1;
   11683              :       x3 = XEXP (x2, 2);
   11684              :       if (!register_operand (x3, E_SImode))
   11685              :         return -1;
   11686              :       operands[3] = x3;
   11687              :       if (register_operand (operands[0], E_V32HFmode))
   11688              :         {
   11689              :           x4 = XEXP (x2, 0);
   11690              :           operands[2] = x4;
   11691              :           if (nonimmediate_operand (operands[2], E_V32HFmode))
   11692              :             {
   11693              :               x5 = XEXP (x2, 1);
   11694              :               operands[1] = x5;
   11695              :               if (nonimm_or_0_operand (operands[1], E_V32HFmode)
   11696              :                   && 
   11697              : #line 1809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11698              : (TARGET_AVX512BW))
   11699              :                 return 2584; /* avx512bw_blendmv32hf */
   11700              :             }
   11701              :         }
   11702              :       operands[2] = x3;
   11703              :       if (!memory_operand (operands[0], E_V32HFmode))
   11704              :         return -1;
   11705              :       x4 = XEXP (x2, 0);
   11706              :       operands[1] = x4;
   11707              :       if (!register_operand (operands[1], E_V32HFmode))
   11708              :         return -1;
   11709              :       x5 = XEXP (x2, 1);
   11710              :       if (!rtx_equal_p (x5, operands[0])
   11711              :           || !
   11712              : #line 1852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11713              : (TARGET_AVX512BW))
   11714              :         return -1;
   11715              :       return 2608; /* *avx512bw_storev32hf_mask */
   11716              : 
   11717              :     case E_V16HFmode:
   11718              :       return recog_158 (x1, insn, pnum_clobbers);
   11719              : 
   11720              :     case E_V8HFmode:
   11721              :       return recog_157 (x1, insn, pnum_clobbers);
   11722              : 
   11723              :     case E_V32BFmode:
   11724              :       return recog_156 (x1, insn, pnum_clobbers);
   11725              : 
   11726              :     case E_V16BFmode:
   11727              :       return recog_155 (x1, insn, pnum_clobbers);
   11728              : 
   11729              :     case E_V8BFmode:
   11730              :       return recog_154 (x1, insn, pnum_clobbers);
   11731              : 
   11732              :     default:
   11733              :       return -1;
   11734              :     }
   11735              : }
   11736              : 
   11737              :  int
   11738              : recog_166 (rtx x1 ATTRIBUTE_UNUSED,
   11739              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11740              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11741              : {
   11742              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11743              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   11744              :   rtx x10, x11, x12, x13, x14, x15, x16;
   11745              :   int res ATTRIBUTE_UNUSED;
   11746              :   x2 = XEXP (x1, 1);
   11747              :   x3 = XEXP (x2, 0);
   11748              :   x4 = XEXP (x3, 1);
   11749              :   if (pattern932 (x4) != 0)
   11750              :     return -1;
   11751              :   x5 = XEXP (x2, 2);
   11752              :   if (!register_operand (x5, E_QImode))
   11753              :     return -1;
   11754              :   x6 = XVECEXP (x4, 0, 0);
   11755              :   switch (XWINT (x6, 0))
   11756              :     {
   11757              :     case 2L:
   11758              :       x7 = XVECEXP (x4, 0, 1);
   11759              :       if (XWINT (x7, 0) != 10L)
   11760              :         return -1;
   11761              :       x8 = XVECEXP (x4, 0, 2);
   11762              :       if (XWINT (x8, 0) != 3L)
   11763              :         return -1;
   11764              :       x9 = XVECEXP (x4, 0, 3);
   11765              :       if (XWINT (x9, 0) != 11L
   11766              :           || pattern1754 (x2) != 0)
   11767              :         return -1;
   11768              :       switch (GET_MODE (operands[0]))
   11769              :         {
   11770              :         case E_V8SFmode:
   11771              :           if (pattern1598 (x2, 
   11772              : E_V8SFmode, 
   11773              : E_V16SFmode) != 0
   11774              :               || !(
   11775              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11776              : (TARGET_AVX512F) && 
   11777              : #line 11557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11778              : (TARGET_AVX && TARGET_AVX512VL)))
   11779              :             return -1;
   11780              :           return 5269; /* avx_unpckhps256_mask */
   11781              : 
   11782              :         case E_V8SImode:
   11783              :           if (pattern1598 (x2, 
   11784              : E_V8SImode, 
   11785              : E_V16SImode) != 0
   11786              :               || !(
   11787              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11788              : (TARGET_AVX512F) && 
   11789              : #line 20191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11790              : (TARGET_AVX2 && TARGET_AVX512VL)))
   11791              :             return -1;
   11792              :           return 8443; /* avx2_interleave_highv8si_mask */
   11793              : 
   11794              :         default:
   11795              :           return -1;
   11796              :         }
   11797              : 
   11798              :     case 0L:
   11799              :       x7 = XVECEXP (x4, 0, 1);
   11800              :       switch (XWINT (x7, 0))
   11801              :         {
   11802              :         case 8L:
   11803              :           x8 = XVECEXP (x4, 0, 2);
   11804              :           switch (XWINT (x8, 0))
   11805              :             {
   11806              :             case 1L:
   11807              :               x9 = XVECEXP (x4, 0, 3);
   11808              :               if (XWINT (x9, 0) != 9L)
   11809              :                 return -1;
   11810              :               x10 = XEXP (x3, 0);
   11811              :               x11 = XEXP (x10, 1);
   11812              :               operands[2] = x11;
   11813              :               x12 = XEXP (x2, 1);
   11814              :               operands[3] = x12;
   11815              :               operands[4] = x5;
   11816              :               x13 = XVECEXP (x4, 0, 4);
   11817              :               switch (XWINT (x13, 0))
   11818              :                 {
   11819              :                 case 4L:
   11820              :                   x14 = XVECEXP (x4, 0, 5);
   11821              :                   if (XWINT (x14, 0) != 12L)
   11822              :                     return -1;
   11823              :                   x15 = XVECEXP (x4, 0, 6);
   11824              :                   if (XWINT (x15, 0) != 5L)
   11825              :                     return -1;
   11826              :                   x16 = XVECEXP (x4, 0, 7);
   11827              :                   if (XWINT (x16, 0) != 13L)
   11828              :                     return -1;
   11829              :                   switch (GET_MODE (operands[0]))
   11830              :                     {
   11831              :                     case E_V8SFmode:
   11832              :                       if (pattern1598 (x2, 
   11833              : E_V8SFmode, 
   11834              : E_V16SFmode) != 0
   11835              :                           || !(
   11836              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11837              : (TARGET_AVX512F) && 
   11838              : #line 11645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11839              : (TARGET_AVX && TARGET_AVX512VL)))
   11840              :                         return -1;
   11841              :                       return 5275; /* avx_unpcklps256_mask */
   11842              : 
   11843              :                     case E_V8SImode:
   11844              :                       if (pattern1598 (x2, 
   11845              : E_V8SImode, 
   11846              : E_V16SImode) != 0
   11847              :                           || !(
   11848              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11849              : (TARGET_AVX512F) && 
   11850              : #line 20246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11851              : (TARGET_AVX2 && TARGET_AVX512VL)))
   11852              :                         return -1;
   11853              :                       return 8449; /* avx2_interleave_lowv8si_mask */
   11854              : 
   11855              :                     default:
   11856              :                       return -1;
   11857              :                     }
   11858              : 
   11859              :                 case 2L:
   11860              :                   x14 = XVECEXP (x4, 0, 5);
   11861              :                   if (XWINT (x14, 0) != 10L)
   11862              :                     return -1;
   11863              :                   x15 = XVECEXP (x4, 0, 6);
   11864              :                   if (XWINT (x15, 0) != 3L)
   11865              :                     return -1;
   11866              :                   x16 = XVECEXP (x4, 0, 7);
   11867              :                   if (XWINT (x16, 0) != 11L)
   11868              :                     return -1;
   11869              :                   switch (GET_MODE (operands[0]))
   11870              :                     {
   11871              :                     case E_V8HImode:
   11872              :                       if (pattern1599 (x2, 
   11873              : E_V8HImode, 
   11874              : E_V16HImode) != 0
   11875              :                           || !(
   11876              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11877              : (TARGET_AVX512F) && 
   11878              : #line 20171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11879              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   11880              :                         return -1;
   11881              :                       return 8437; /* vec_interleave_lowv8hi_mask */
   11882              : 
   11883              :                     case E_V8HFmode:
   11884              :                       if (pattern1599 (x2, 
   11885              : E_V8HFmode, 
   11886              : E_V16HFmode) != 0
   11887              :                           || !(
   11888              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11889              : (TARGET_AVX512F) && 
   11890              : #line 20171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11891              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   11892              :                         return -1;
   11893              :                       return 8439; /* vec_interleave_lowv8hf_mask */
   11894              : 
   11895              :                     case E_V8BFmode:
   11896              :                       if (pattern1599 (x2, 
   11897              : E_V8BFmode, 
   11898              : E_V16BFmode) != 0
   11899              :                           || !(
   11900              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11901              : (TARGET_AVX512F) && 
   11902              : #line 20171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11903              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   11904              :                         return -1;
   11905              :                       return 8441; /* vec_interleave_lowv8bf_mask */
   11906              : 
   11907              :                     default:
   11908              :                       return -1;
   11909              :                     }
   11910              : 
   11911              :                 default:
   11912              :                   return -1;
   11913              :                 }
   11914              : 
   11915              :             case 2L:
   11916              :               x9 = XVECEXP (x4, 0, 3);
   11917              :               if (XWINT (x9, 0) != 10L)
   11918              :                 return -1;
   11919              :               x13 = XVECEXP (x4, 0, 4);
   11920              :               if (XWINT (x13, 0) != 4L)
   11921              :                 return -1;
   11922              :               x14 = XVECEXP (x4, 0, 5);
   11923              :               if (XWINT (x14, 0) != 12L)
   11924              :                 return -1;
   11925              :               x15 = XVECEXP (x4, 0, 6);
   11926              :               if (XWINT (x15, 0) != 6L)
   11927              :                 return -1;
   11928              :               x16 = XVECEXP (x4, 0, 7);
   11929              :               if (XWINT (x16, 0) != 14L)
   11930              :                 return -1;
   11931              :               switch (GET_MODE (operands[0]))
   11932              :                 {
   11933              :                 case E_V8DFmode:
   11934              :                   if (pattern1661 (x2, 
   11935              : E_V8DFmode, 
   11936              : E_V16DFmode) != 0)
   11937              :                     return -1;
   11938              :                   x12 = XEXP (x2, 1);
   11939              :                   operands[2] = x12;
   11940              :                   if (nonimmediate_operand (operands[1], E_V8DFmode))
   11941              :                     {
   11942              :                       operands[3] = x5;
   11943              :                       x10 = XEXP (x3, 0);
   11944              :                       x11 = XEXP (x10, 1);
   11945              :                       if (rtx_equal_p (x11, operands[1])
   11946              :                           && 
   11947              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11948              : (TARGET_AVX512F))
   11949              :                         return 5427; /* avx512f_movddup512_mask */
   11950              :                     }
   11951              :                   operands[3] = x12;
   11952              :                   if (!register_operand (operands[1], E_V8DFmode))
   11953              :                     return -1;
   11954              :                   x10 = XEXP (x3, 0);
   11955              :                   x11 = XEXP (x10, 1);
   11956              :                   operands[2] = x11;
   11957              :                   if (!nonimmediate_operand (operands[2], E_V8DFmode))
   11958              :                     return -1;
   11959              :                   operands[4] = x5;
   11960              :                   if (!
   11961              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11962              : (TARGET_AVX512F))
   11963              :                     return -1;
   11964              :                   return 5429; /* avx512f_unpcklpd512_mask */
   11965              : 
   11966              :                 case E_V8DImode:
   11967              :                   if (pattern1662 (x2, 
   11968              : E_V8DImode, 
   11969              : E_V16DImode) != 0
   11970              :                       || !
   11971              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11972              : (TARGET_AVX512F))
   11973              :                     return -1;
   11974              :                   return 7248; /* avx512f_interleave_lowv8di_mask */
   11975              : 
   11976              :                 default:
   11977              :                   return -1;
   11978              :                 }
   11979              : 
   11980              :             default:
   11981              :               return -1;
   11982              :             }
   11983              : 
   11984              :         case 0L:
   11985              :           if (pattern1693 (x4) != 0
   11986              :               || pattern1837 (x2, 
   11987              : E_V8SFmode, 
   11988              : E_V16SFmode) != 0
   11989              :               || !(
   11990              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11991              : (TARGET_AVX512F) && 
   11992              : #line 11784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11993              : (TARGET_AVX && TARGET_AVX512VL)))
   11994              :             return -1;
   11995              :           return 5285; /* avx_movsldup256_mask */
   11996              : 
   11997              :         default:
   11998              :           return -1;
   11999              :         }
   12000              : 
   12001              :     case 1L:
   12002              :       x8 = XVECEXP (x4, 0, 2);
   12003              :       if (XWINT (x8, 0) != 3L)
   12004              :         return -1;
   12005              :       x13 = XVECEXP (x4, 0, 4);
   12006              :       if (XWINT (x13, 0) != 5L)
   12007              :         return -1;
   12008              :       x15 = XVECEXP (x4, 0, 6);
   12009              :       if (XWINT (x15, 0) != 7L)
   12010              :         return -1;
   12011              :       x7 = XVECEXP (x4, 0, 1);
   12012              :       switch (XWINT (x7, 0))
   12013              :         {
   12014              :         case 1L:
   12015              :           x9 = XVECEXP (x4, 0, 3);
   12016              :           if (XWINT (x9, 0) != 3L)
   12017              :             return -1;
   12018              :           x14 = XVECEXP (x4, 0, 5);
   12019              :           if (XWINT (x14, 0) != 5L)
   12020              :             return -1;
   12021              :           x16 = XVECEXP (x4, 0, 7);
   12022              :           if (XWINT (x16, 0) != 7L
   12023              :               || pattern1837 (x2, 
   12024              : E_V8SFmode, 
   12025              : E_V16SFmode) != 0
   12026              :               || !(
   12027              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12028              : (TARGET_AVX512F) && 
   12029              : #line 11731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12030              : (TARGET_AVX && TARGET_AVX512VL)))
   12031              :             return -1;
   12032              :           return 5279; /* avx_movshdup256_mask */
   12033              : 
   12034              :         case 9L:
   12035              :           x9 = XVECEXP (x4, 0, 3);
   12036              :           if (XWINT (x9, 0) != 11L)
   12037              :             return -1;
   12038              :           x14 = XVECEXP (x4, 0, 5);
   12039              :           if (XWINT (x14, 0) != 13L)
   12040              :             return -1;
   12041              :           x16 = XVECEXP (x4, 0, 7);
   12042              :           if (XWINT (x16, 0) != 15L)
   12043              :             return -1;
   12044              :           x10 = XEXP (x3, 0);
   12045              :           x11 = XEXP (x10, 1);
   12046              :           operands[2] = x11;
   12047              :           x12 = XEXP (x2, 1);
   12048              :           operands[3] = x12;
   12049              :           operands[4] = x5;
   12050              :           switch (GET_MODE (operands[0]))
   12051              :             {
   12052              :             case E_V8DFmode:
   12053              :               if (pattern1598 (x2, 
   12054              : E_V8DFmode, 
   12055              : E_V16DFmode) != 0
   12056              :                   || !
   12057              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12058              : (TARGET_AVX512F))
   12059              :                 return -1;
   12060              :               return 5421; /* avx512f_unpckhpd512_mask */
   12061              : 
   12062              :             case E_V8DImode:
   12063              :               if (pattern1598 (x2, 
   12064              : E_V8DImode, 
   12065              : E_V16DImode) != 0
   12066              :                   || !
   12067              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12068              : (TARGET_AVX512F))
   12069              :                 return -1;
   12070              :               return 7242; /* avx512f_interleave_highv8di_mask */
   12071              : 
   12072              :             default:
   12073              :               return -1;
   12074              :             }
   12075              : 
   12076              :         default:
   12077              :           return -1;
   12078              :         }
   12079              : 
   12080              :     case 4L:
   12081              :       x7 = XVECEXP (x4, 0, 1);
   12082              :       if (XWINT (x7, 0) != 12L)
   12083              :         return -1;
   12084              :       x8 = XVECEXP (x4, 0, 2);
   12085              :       if (XWINT (x8, 0) != 5L)
   12086              :         return -1;
   12087              :       x9 = XVECEXP (x4, 0, 3);
   12088              :       if (XWINT (x9, 0) != 13L
   12089              :           || pattern1754 (x2) != 0)
   12090              :         return -1;
   12091              :       switch (GET_MODE (operands[0]))
   12092              :         {
   12093              :         case E_V8HImode:
   12094              :           if (pattern1599 (x2, 
   12095              : E_V8HImode, 
   12096              : E_V16HImode) != 0
   12097              :               || !(
   12098              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12099              : (TARGET_AVX512F) && 
   12100              : #line 20103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12101              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12102              :             return -1;
   12103              :           return 8419; /* vec_interleave_highv8hi_mask */
   12104              : 
   12105              :         case E_V8HFmode:
   12106              :           if (pattern1599 (x2, 
   12107              : E_V8HFmode, 
   12108              : E_V16HFmode) != 0
   12109              :               || !(
   12110              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12111              : (TARGET_AVX512F) && 
   12112              : #line 20103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12113              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12114              :             return -1;
   12115              :           return 8421; /* vec_interleave_highv8hf_mask */
   12116              : 
   12117              :         case E_V8BFmode:
   12118              :           if (pattern1599 (x2, 
   12119              : E_V8BFmode, 
   12120              : E_V16BFmode) != 0
   12121              :               || !(
   12122              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12123              : (TARGET_AVX512F) && 
   12124              : #line 20103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12125              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12126              :             return -1;
   12127              :           return 8423; /* vec_interleave_highv8bf_mask */
   12128              : 
   12129              :         default:
   12130              :           return -1;
   12131              :         }
   12132              : 
   12133              :     default:
   12134              :       return -1;
   12135              :     }
   12136              : }
   12137              : 
   12138              :  int
   12139              : recog_182 (rtx x1 ATTRIBUTE_UNUSED,
   12140              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12141              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12142              : {
   12143              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12144              :   rtx x2, x3;
   12145              :   int res ATTRIBUTE_UNUSED;
   12146              :   x2 = XEXP (x1, 1);
   12147              :   x3 = XEXP (x2, 0);
   12148              :   switch (GET_CODE (x3))
   12149              :     {
   12150              :     case REG:
   12151              :     case SUBREG:
   12152              :     case MEM:
   12153              :       res = recog_160 (x1, insn, pnum_clobbers);
   12154              :       if (res >= 0)
   12155              :         return res;
   12156              :       break;
   12157              : 
   12158              :     case CONST_INT:
   12159              :     case CONST_DOUBLE:
   12160              :     case CONST_VECTOR:
   12161              :       switch (pattern322 (x2))
   12162              :         {
   12163              :         case 0:
   12164              :           res = recog_161 (x1, insn, pnum_clobbers);
   12165              :           if (res >= 0)
   12166              :             return res;
   12167              :           break;
   12168              : 
   12169              :         case 1:
   12170              :           if (vector_all_ones_operand (operands[1], E_V16QImode)
   12171              :               && const0_operand (operands[2], E_V16QImode)
   12172              :               && 
   12173              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12174              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12175              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12176              :             return 7988; /* *avx2_pcmpv16qi3_6 */
   12177              :           if (const0_operand (operands[1], E_V16QImode)
   12178              :               && vector_all_ones_operand (operands[2], E_V16QImode)
   12179              :               && 
   12180              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12181              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12182              :      /* NE is commutative.  */
   12183              :    && INTVAL (operands[5]) == 4))
   12184              :             return 8011; /* *avx2_pcmpv16qi3_8 */
   12185              :           break;
   12186              : 
   12187              :         case 2:
   12188              :           if (vector_all_ones_operand (operands[1], E_V8HImode)
   12189              :               && const0_operand (operands[2], E_V8HImode)
   12190              :               && 
   12191              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12192              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12193              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12194              :             return 7990; /* *avx2_pcmpv8hi3_6 */
   12195              :           if (const0_operand (operands[1], E_V8HImode)
   12196              :               && vector_all_ones_operand (operands[2], E_V8HImode)
   12197              :               && 
   12198              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12199              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12200              :      /* NE is commutative.  */
   12201              :    && INTVAL (operands[5]) == 4))
   12202              :             return 8012; /* *avx2_pcmpv8hi3_8 */
   12203              :           break;
   12204              : 
   12205              :         case 3:
   12206              :           if (vector_all_ones_operand (operands[1], E_V4SImode)
   12207              :               && const0_operand (operands[2], E_V4SImode)
   12208              :               && 
   12209              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12210              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12211              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12212              :             return 7992; /* *avx2_pcmpv4si3_6 */
   12213              :           if (const0_operand (operands[1], E_V4SImode)
   12214              :               && vector_all_ones_operand (operands[2], E_V4SImode)
   12215              :               && 
   12216              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12217              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12218              :      /* NE is commutative.  */
   12219              :    && INTVAL (operands[5]) == 4))
   12220              :             return 8013; /* *avx2_pcmpv4si3_8 */
   12221              :           break;
   12222              : 
   12223              :         case 4:
   12224              :           if (vector_all_ones_operand (operands[1], E_V2DImode)
   12225              :               && const0_operand (operands[2], E_V2DImode)
   12226              :               && 
   12227              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12228              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12229              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12230              :             return 7994; /* *avx2_pcmpv2di3_6 */
   12231              :           if (const0_operand (operands[1], E_V2DImode)
   12232              :               && vector_all_ones_operand (operands[2], E_V2DImode)
   12233              :               && 
   12234              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12235              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12236              :      /* NE is commutative.  */
   12237              :    && INTVAL (operands[5]) == 4))
   12238              :             return 8014; /* *avx2_pcmpv2di3_8 */
   12239              :           break;
   12240              : 
   12241              :         case 5:
   12242              :           if (vector_all_ones_operand (operands[1], E_V32QImode)
   12243              :               && const0_operand (operands[2], E_V32QImode)
   12244              :               && 
   12245              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12246              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12247              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12248              :             return 7996; /* *avx2_pcmpv32qi3_6 */
   12249              :           if (const0_operand (operands[1], E_V32QImode)
   12250              :               && vector_all_ones_operand (operands[2], E_V32QImode)
   12251              :               && 
   12252              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12253              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12254              :      /* NE is commutative.  */
   12255              :    && INTVAL (operands[5]) == 4))
   12256              :             return 8015; /* *avx2_pcmpv32qi3_8 */
   12257              :           break;
   12258              : 
   12259              :         case 6:
   12260              :           if (vector_all_ones_operand (operands[1], E_V16HImode)
   12261              :               && const0_operand (operands[2], E_V16HImode)
   12262              :               && 
   12263              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12264              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12265              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12266              :             return 7998; /* *avx2_pcmpv16hi3_6 */
   12267              :           if (const0_operand (operands[1], E_V16HImode)
   12268              :               && vector_all_ones_operand (operands[2], E_V16HImode)
   12269              :               && 
   12270              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12271              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12272              :      /* NE is commutative.  */
   12273              :    && INTVAL (operands[5]) == 4))
   12274              :             return 8016; /* *avx2_pcmpv16hi3_8 */
   12275              :           break;
   12276              : 
   12277              :         case 7:
   12278              :           if (vector_all_ones_operand (operands[1], E_V8SImode)
   12279              :               && const0_operand (operands[2], E_V8SImode)
   12280              :               && 
   12281              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12282              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12283              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12284              :             return 8000; /* *avx2_pcmpv8si3_6 */
   12285              :           if (const0_operand (operands[1], E_V8SImode)
   12286              :               && vector_all_ones_operand (operands[2], E_V8SImode)
   12287              :               && 
   12288              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12289              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12290              :      /* NE is commutative.  */
   12291              :    && INTVAL (operands[5]) == 4))
   12292              :             return 8017; /* *avx2_pcmpv8si3_8 */
   12293              :           break;
   12294              : 
   12295              :         case 8:
   12296              :           if (vector_all_ones_operand (operands[1], E_V4DImode)
   12297              :               && const0_operand (operands[2], E_V4DImode)
   12298              :               && 
   12299              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12300              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12301              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12302              :             return 8002; /* *avx2_pcmpv4di3_6 */
   12303              :           if (const0_operand (operands[1], E_V4DImode)
   12304              :               && vector_all_ones_operand (operands[2], E_V4DImode)
   12305              :               && 
   12306              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12307              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12308              :      /* NE is commutative.  */
   12309              :    && INTVAL (operands[5]) == 4))
   12310              :             return 8018; /* *avx2_pcmpv4di3_8 */
   12311              :           break;
   12312              : 
   12313              :         case 9:
   12314              :           if ((
   12315              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12316              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12317              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12318              : (TARGET_AVX)))
   12319              :             return 3292; /* *avx_cmpv8sf3_2 */
   12320              :           break;
   12321              : 
   12322              :         case 10:
   12323              :           if (
   12324              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12325              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12326              :    /* NE is commutative.  */
   12327              :    && ((INTVAL (operands[5]) == 4
   12328              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12329              :           /* LE, 3 must be register.  */
   12330              :        || (INTVAL (operands[5]) == 2
   12331              :            && !MEM_P (operands[3]))
   12332              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12333              :        || (INTVAL (operands[5]) == 5
   12334              :            && !MEM_P (operands[4])))))
   12335              :             return 7979; /* *avx2_pcmpv8si3_2 */
   12336              :           break;
   12337              : 
   12338              :         case 11:
   12339              :           if (
   12340              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12341              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   12342              :             return 3293; /* *avx_cmpv4sf3_2 */
   12343              :           break;
   12344              : 
   12345              :         case 12:
   12346              :           if (
   12347              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12348              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12349              :    /* NE is commutative.  */
   12350              :    && ((INTVAL (operands[5]) == 4
   12351              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12352              :           /* LE, 3 must be register.  */
   12353              :        || (INTVAL (operands[5]) == 2
   12354              :            && !MEM_P (operands[3]))
   12355              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12356              :        || (INTVAL (operands[5]) == 5
   12357              :            && !MEM_P (operands[4])))))
   12358              :             return 7975; /* *avx2_pcmpv4si3_2 */
   12359              :           break;
   12360              : 
   12361              :         case 13:
   12362              :           if ((
   12363              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12364              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12365              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12366              : (TARGET_AVX)))
   12367              :             return 3294; /* *avx_cmpv4df3_2 */
   12368              :           break;
   12369              : 
   12370              :         case 14:
   12371              :           if (
   12372              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12373              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12374              :    /* NE is commutative.  */
   12375              :    && ((INTVAL (operands[5]) == 4
   12376              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12377              :           /* LE, 3 must be register.  */
   12378              :        || (INTVAL (operands[5]) == 2
   12379              :            && !MEM_P (operands[3]))
   12380              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12381              :        || (INTVAL (operands[5]) == 5
   12382              :            && !MEM_P (operands[4])))))
   12383              :             return 7980; /* *avx2_pcmpv4di3_2 */
   12384              :           break;
   12385              : 
   12386              :         case 15:
   12387              :           if ((
   12388              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12389              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12390              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12391              : (TARGET_SSE2)))
   12392              :             return 3295; /* *avx_cmpv2df3_2 */
   12393              :           break;
   12394              : 
   12395              :         case 16:
   12396              :           if (
   12397              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12398              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12399              :    /* NE is commutative.  */
   12400              :    && ((INTVAL (operands[5]) == 4
   12401              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12402              :           /* LE, 3 must be register.  */
   12403              :        || (INTVAL (operands[5]) == 2
   12404              :            && !MEM_P (operands[3]))
   12405              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12406              :        || (INTVAL (operands[5]) == 5
   12407              :            && !MEM_P (operands[4])))))
   12408              :             return 7976; /* *avx2_pcmpv2di3_2 */
   12409              :           break;
   12410              : 
   12411              :         case 17:
   12412              :           if (
   12413              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12414              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12415              :    /* NE is commutative.  */
   12416              :    && ((INTVAL (operands[5]) == 4
   12417              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12418              :           /* LE, 3 must be register.  */
   12419              :        || (INTVAL (operands[5]) == 2
   12420              :            && !MEM_P (operands[3]))
   12421              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12422              :        || (INTVAL (operands[5]) == 5
   12423              :            && !MEM_P (operands[4])))))
   12424              :             return 7973; /* *avx2_pcmpv16qi3_2 */
   12425              :           break;
   12426              : 
   12427              :         case 18:
   12428              :           if (
   12429              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12430              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12431              :    /* NE is commutative.  */
   12432              :    && ((INTVAL (operands[5]) == 4
   12433              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12434              :           /* LE, 3 must be register.  */
   12435              :        || (INTVAL (operands[5]) == 2
   12436              :            && !MEM_P (operands[3]))
   12437              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12438              :        || (INTVAL (operands[5]) == 5
   12439              :            && !MEM_P (operands[4])))))
   12440              :             return 7974; /* *avx2_pcmpv8hi3_2 */
   12441              :           break;
   12442              : 
   12443              :         case 19:
   12444              :           if (
   12445              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12446              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12447              :    /* NE is commutative.  */
   12448              :    && ((INTVAL (operands[5]) == 4
   12449              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12450              :           /* LE, 3 must be register.  */
   12451              :        || (INTVAL (operands[5]) == 2
   12452              :            && !MEM_P (operands[3]))
   12453              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12454              :        || (INTVAL (operands[5]) == 5
   12455              :            && !MEM_P (operands[4])))))
   12456              :             return 7977; /* *avx2_pcmpv32qi3_2 */
   12457              :           break;
   12458              : 
   12459              :         case 20:
   12460              :           if (
   12461              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12462              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12463              :    /* NE is commutative.  */
   12464              :    && ((INTVAL (operands[5]) == 4
   12465              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12466              :           /* LE, 3 must be register.  */
   12467              :        || (INTVAL (operands[5]) == 2
   12468              :            && !MEM_P (operands[3]))
   12469              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12470              :        || (INTVAL (operands[5]) == 5
   12471              :            && !MEM_P (operands[4])))))
   12472              :             return 7978; /* *avx2_pcmpv16hi3_2 */
   12473              :           break;
   12474              : 
   12475              :         case 21:
   12476              :           switch (GET_MODE (operands[0]))
   12477              :             {
   12478              :             case E_V64QImode:
   12479              :               if (register_operand (operands[0], E_V64QImode)
   12480              :                   && GET_MODE (x2) == E_V64QImode
   12481              :                   && register_operand (operands[1], E_DImode))
   12482              :                 {
   12483              :                   if (vector_all_ones_operand (operands[2], E_V64QImode)
   12484              :                       && const0_operand (operands[3], E_V64QImode)
   12485              :                       && 
   12486              : #line 10681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12487              : (TARGET_AVX512BW))
   12488              :                     return 5227; /* *avx512bw_cvtmask2bv64qi */
   12489              :                   if (const0_operand (operands[2], E_V64QImode)
   12490              :                       && vector_all_ones_operand (operands[3], E_V64QImode)
   12491              :                       && (
   12492              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12493              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12494              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12495              : (TARGET_AVX512BW)))
   12496              :                     return 5239; /* *avx512bw_cvtmask2bv64qi_not */
   12497              :                 }
   12498              :               break;
   12499              : 
   12500              :             case E_V16QImode:
   12501              :               if (register_operand (operands[0], E_V16QImode)
   12502              :                   && GET_MODE (x2) == E_V16QImode
   12503              :                   && register_operand (operands[1], E_HImode))
   12504              :                 {
   12505              :                   if (vector_all_ones_operand (operands[2], E_V16QImode)
   12506              :                       && const0_operand (operands[3], E_V16QImode)
   12507              :                       && (
   12508              : #line 10681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12509              : (TARGET_AVX512BW) && 
   12510              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12511              : (TARGET_AVX512VL)))
   12512              :                     return 5228; /* *avx512vl_cvtmask2bv16qi */
   12513              :                   if (const0_operand (operands[2], E_V16QImode)
   12514              :                       && vector_all_ones_operand (operands[3], E_V16QImode)
   12515              :                       && (
   12516              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12517              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12518              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12519              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   12520              :                     return 5241; /* *avx512vl_cvtmask2bv16qi_not */
   12521              :                 }
   12522              :               break;
   12523              : 
   12524              :             case E_V32QImode:
   12525              :               if (register_operand (operands[0], E_V32QImode)
   12526              :                   && GET_MODE (x2) == E_V32QImode
   12527              :                   && register_operand (operands[1], E_SImode))
   12528              :                 {
   12529              :                   if (vector_all_ones_operand (operands[2], E_V32QImode)
   12530              :                       && const0_operand (operands[3], E_V32QImode)
   12531              :                       && (
   12532              : #line 10681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12533              : (TARGET_AVX512BW) && 
   12534              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12535              : (TARGET_AVX512VL)))
   12536              :                     return 5229; /* *avx512vl_cvtmask2bv32qi */
   12537              :                   if (const0_operand (operands[2], E_V32QImode)
   12538              :                       && vector_all_ones_operand (operands[3], E_V32QImode)
   12539              :                       && (
   12540              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12541              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12542              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12543              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   12544              :                     return 5240; /* *avx512vl_cvtmask2bv32qi_not */
   12545              :                 }
   12546              :               break;
   12547              : 
   12548              :             case E_V32HImode:
   12549              :               if (register_operand (operands[0], E_V32HImode)
   12550              :                   && GET_MODE (x2) == E_V32HImode
   12551              :                   && register_operand (operands[1], E_SImode))
   12552              :                 {
   12553              :                   if (vector_all_ones_operand (operands[2], E_V32HImode)
   12554              :                       && const0_operand (operands[3], E_V32HImode)
   12555              :                       && 
   12556              : #line 10681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12557              : (TARGET_AVX512BW))
   12558              :                     return 5230; /* *avx512bw_cvtmask2wv32hi */
   12559              :                   if (const0_operand (operands[2], E_V32HImode)
   12560              :                       && vector_all_ones_operand (operands[3], E_V32HImode)
   12561              :                       && (
   12562              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12563              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12564              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12565              : (TARGET_AVX512BW)))
   12566              :                     return 5242; /* *avx512bw_cvtmask2wv32hi_not */
   12567              :                 }
   12568              :               break;
   12569              : 
   12570              :             case E_V16HImode:
   12571              :               if (register_operand (operands[0], E_V16HImode)
   12572              :                   && GET_MODE (x2) == E_V16HImode
   12573              :                   && register_operand (operands[1], E_HImode))
   12574              :                 {
   12575              :                   if (vector_all_ones_operand (operands[2], E_V16HImode)
   12576              :                       && const0_operand (operands[3], E_V16HImode)
   12577              :                       && (
   12578              : #line 10681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12579              : (TARGET_AVX512BW) && 
   12580              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12581              : (TARGET_AVX512VL)))
   12582              :                     return 5231; /* *avx512vl_cvtmask2wv16hi */
   12583              :                   if (const0_operand (operands[2], E_V16HImode)
   12584              :                       && vector_all_ones_operand (operands[3], E_V16HImode)
   12585              :                       && (
   12586              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12587              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12588              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12589              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   12590              :                     return 5243; /* *avx512vl_cvtmask2wv16hi_not */
   12591              :                 }
   12592              :               break;
   12593              : 
   12594              :             case E_V8HImode:
   12595              :               if (register_operand (operands[0], E_V8HImode)
   12596              :                   && GET_MODE (x2) == E_V8HImode
   12597              :                   && register_operand (operands[1], E_QImode))
   12598              :                 {
   12599              :                   if (vector_all_ones_operand (operands[2], E_V8HImode)
   12600              :                       && const0_operand (operands[3], E_V8HImode)
   12601              :                       && (
   12602              : #line 10681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12603              : (TARGET_AVX512BW) && 
   12604              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12605              : (TARGET_AVX512VL)))
   12606              :                     return 5232; /* *avx512vl_cvtmask2wv8hi */
   12607              :                   if (const0_operand (operands[2], E_V8HImode)
   12608              :                       && vector_all_ones_operand (operands[3], E_V8HImode)
   12609              :                       && (
   12610              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12611              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12612              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12613              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   12614              :                     return 5244; /* *avx512vl_cvtmask2wv8hi_not */
   12615              :                 }
   12616              :               break;
   12617              : 
   12618              :             case E_V16SImode:
   12619              :               if (register_operand (operands[0], E_V16SImode)
   12620              :                   && GET_MODE (x2) == E_V16SImode
   12621              :                   && register_operand (operands[1], E_HImode))
   12622              :                 {
   12623              :                   if (vector_all_ones_operand (operands[2], E_V16SImode)
   12624              :                       && const0_operand (operands[3], E_V16SImode)
   12625              :                       && 
   12626              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12627              : (TARGET_AVX512F))
   12628              :                     return 5233; /* *avx512f_cvtmask2dv16si */
   12629              :                   if (const0_operand (operands[2], E_V16SImode)
   12630              :                       && vector_all_ones_operand (operands[3], E_V16SImode)
   12631              :                       && 
   12632              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12633              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   12634              :                     return 5245; /* *avx512f_cvtmask2dv16si_not */
   12635              :                 }
   12636              :               break;
   12637              : 
   12638              :             case E_V8SImode:
   12639              :               if (register_operand (operands[0], E_V8SImode)
   12640              :                   && GET_MODE (x2) == E_V8SImode
   12641              :                   && register_operand (operands[1], E_QImode))
   12642              :                 {
   12643              :                   if (vector_all_ones_operand (operands[2], E_V8SImode)
   12644              :                       && const0_operand (operands[3], E_V8SImode)
   12645              :                       && (
   12646              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12647              : (TARGET_AVX512F) && 
   12648              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12649              : (TARGET_AVX512VL)))
   12650              :                     return 5234; /* *avx512vl_cvtmask2dv8si */
   12651              :                   if (const0_operand (operands[2], E_V8SImode)
   12652              :                       && vector_all_ones_operand (operands[3], E_V8SImode)
   12653              :                       && (
   12654              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12655              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12656              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12657              : (TARGET_AVX512VL)))
   12658              :                     return 5246; /* *avx512vl_cvtmask2dv8si_not */
   12659              :                 }
   12660              :               break;
   12661              : 
   12662              :             case E_V4SImode:
   12663              :               if (register_operand (operands[0], E_V4SImode)
   12664              :                   && GET_MODE (x2) == E_V4SImode
   12665              :                   && register_operand (operands[1], E_QImode))
   12666              :                 {
   12667              :                   if (vector_all_ones_operand (operands[2], E_V4SImode)
   12668              :                       && const0_operand (operands[3], E_V4SImode)
   12669              :                       && (
   12670              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12671              : (TARGET_AVX512F) && 
   12672              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12673              : (TARGET_AVX512VL)))
   12674              :                     return 5235; /* *avx512vl_cvtmask2dv4si */
   12675              :                   if (const0_operand (operands[2], E_V4SImode)
   12676              :                       && vector_all_ones_operand (operands[3], E_V4SImode)
   12677              :                       && (
   12678              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12679              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12680              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12681              : (TARGET_AVX512VL)))
   12682              :                     return 5247; /* *avx512vl_cvtmask2dv4si_not */
   12683              :                 }
   12684              :               break;
   12685              : 
   12686              :             case E_V8DImode:
   12687              :               if (register_operand (operands[0], E_V8DImode)
   12688              :                   && GET_MODE (x2) == E_V8DImode
   12689              :                   && register_operand (operands[1], E_QImode))
   12690              :                 {
   12691              :                   if (vector_all_ones_operand (operands[2], E_V8DImode)
   12692              :                       && const0_operand (operands[3], E_V8DImode)
   12693              :                       && 
   12694              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12695              : (TARGET_AVX512F))
   12696              :                     return 5236; /* *avx512f_cvtmask2qv8di */
   12697              :                   if (const0_operand (operands[2], E_V8DImode)
   12698              :                       && vector_all_ones_operand (operands[3], E_V8DImode)
   12699              :                       && 
   12700              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12701              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   12702              :                     return 5248; /* *avx512f_cvtmask2qv8di_not */
   12703              :                 }
   12704              :               break;
   12705              : 
   12706              :             case E_V4DImode:
   12707              :               if (register_operand (operands[0], E_V4DImode)
   12708              :                   && GET_MODE (x2) == E_V4DImode
   12709              :                   && register_operand (operands[1], E_QImode))
   12710              :                 {
   12711              :                   if (vector_all_ones_operand (operands[2], E_V4DImode)
   12712              :                       && const0_operand (operands[3], E_V4DImode)
   12713              :                       && (
   12714              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12715              : (TARGET_AVX512F) && 
   12716              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12717              : (TARGET_AVX512VL)))
   12718              :                     return 5237; /* *avx512vl_cvtmask2qv4di */
   12719              :                   if (const0_operand (operands[2], E_V4DImode)
   12720              :                       && vector_all_ones_operand (operands[3], E_V4DImode)
   12721              :                       && (
   12722              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12723              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12724              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12725              : (TARGET_AVX512VL)))
   12726              :                     return 5249; /* *avx512vl_cvtmask2qv4di_not */
   12727              :                 }
   12728              :               break;
   12729              : 
   12730              :             case E_V2DImode:
   12731              :               if (register_operand (operands[0], E_V2DImode)
   12732              :                   && GET_MODE (x2) == E_V2DImode
   12733              :                   && register_operand (operands[1], E_QImode))
   12734              :                 {
   12735              :                   if (vector_all_ones_operand (operands[2], E_V2DImode)
   12736              :                       && const0_operand (operands[3], E_V2DImode)
   12737              :                       && (
   12738              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12739              : (TARGET_AVX512F) && 
   12740              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12741              : (TARGET_AVX512VL)))
   12742              :                     return 5238; /* *avx512vl_cvtmask2qv2di */
   12743              :                   if (const0_operand (operands[2], E_V2DImode)
   12744              :                       && vector_all_ones_operand (operands[3], E_V2DImode)
   12745              :                       && (
   12746              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12747              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   12748              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12749              : (TARGET_AVX512VL)))
   12750              :                     return 5250; /* *avx512vl_cvtmask2qv2di_not */
   12751              :                 }
   12752              :               break;
   12753              : 
   12754              :             default:
   12755              :               break;
   12756              :             }
   12757              :           break;
   12758              : 
   12759              :         default:
   12760              :           break;
   12761              :         }
   12762              :       break;
   12763              : 
   12764              :     default:
   12765              :       break;
   12766              :     }
   12767              :   operands[1] = x3;
   12768              :   switch (pattern325 (x2))
   12769              :     {
   12770              :     case 0:
   12771              :       if (!(
   12772              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12773              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12774              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12775              : (TARGET_AVX)))
   12776              :         return -1;
   12777              :       return 3296; /* *avx_cmpv8sf3_3 */
   12778              : 
   12779              :     case 1:
   12780              :       if (!
   12781              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12782              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   12783              :         return -1;
   12784              :       return 3297; /* *avx_cmpv4sf3_3 */
   12785              : 
   12786              :     case 2:
   12787              :       if (!(
   12788              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12789              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12790              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12791              : (TARGET_AVX)))
   12792              :         return -1;
   12793              :       return 3298; /* *avx_cmpv4df3_3 */
   12794              : 
   12795              :     case 3:
   12796              :       if (!(
   12797              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12798              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12799              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12800              : (TARGET_SSE2)))
   12801              :         return -1;
   12802              :       return 3299; /* *avx_cmpv2df3_3 */
   12803              : 
   12804              :     case 4:
   12805              :       if (!(
   12806              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12807              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12808              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12809              : (TARGET_AVX)))
   12810              :         return -1;
   12811              :       return 3300; /* *avx_cmpv8sf3_4 */
   12812              : 
   12813              :     case 5:
   12814              :       if (!
   12815              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12816              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   12817              :         return -1;
   12818              :       return 3301; /* *avx_cmpv4sf3_4 */
   12819              : 
   12820              :     case 6:
   12821              :       if (!(
   12822              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12823              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12824              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12825              : (TARGET_AVX)))
   12826              :         return -1;
   12827              :       return 3302; /* *avx_cmpv4df3_4 */
   12828              : 
   12829              :     case 7:
   12830              :       if (!(
   12831              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12832              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   12833              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12834              : (TARGET_SSE2)))
   12835              :         return -1;
   12836              :       return 3303; /* *avx_cmpv2df3_4 */
   12837              : 
   12838              :     default:
   12839              :       return -1;
   12840              :     }
   12841              : }
   12842              : 
   12843              :  int
   12844              : recog_202 (rtx x1 ATTRIBUTE_UNUSED,
   12845              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12846              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12847              : {
   12848              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12849              :   rtx x2, x3, x4, x5, x6;
   12850              :   int res ATTRIBUTE_UNUSED;
   12851              :   x2 = XEXP (x1, 1);
   12852              :   x3 = XEXP (x2, 0);
   12853              :   x4 = XEXP (x3, 0);
   12854              :   operands[1] = x4;
   12855              :   x5 = XEXP (x2, 1);
   12856              :   operands[2] = x5;
   12857              :   x6 = XEXP (x2, 2);
   12858              :   switch (GET_CODE (x6))
   12859              :     {
   12860              :     case REG:
   12861              :     case SUBREG:
   12862              :       operands[3] = x6;
   12863              :       switch (GET_MODE (operands[0]))
   12864              :         {
   12865              :         case E_V32HFmode:
   12866              :           if (pattern901 (x2, 
   12867              : E_V32HFmode, 
   12868              : E_SImode) != 0
   12869              :               || !(
   12870              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12871              : (TARGET_AVX512F) && (
   12872              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12873              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12874              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12875              : (TARGET_AVX512FP16))))
   12876              :             return -1;
   12877              :           return 2975; /* avx512fp16_sqrtv32hf2_mask */
   12878              : 
   12879              :         case E_V16HFmode:
   12880              :           if (pattern901 (x2, 
   12881              : E_V16HFmode, 
   12882              : E_HImode) != 0
   12883              :               || !(
   12884              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12885              : (TARGET_AVX512F) && (
   12886              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12887              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12888              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12889              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   12890              :             return -1;
   12891              :           return 2978; /* avx512fp16_sqrtv16hf2_mask */
   12892              : 
   12893              :         case E_V8HFmode:
   12894              :           if (pattern901 (x2, 
   12895              : E_V8HFmode, 
   12896              : E_QImode) != 0
   12897              :               || !(
   12898              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12899              : (TARGET_AVX512F) && (
   12900              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12901              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12902              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12903              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   12904              :             return -1;
   12905              :           return 2980; /* avx512fp16_sqrtv8hf2_mask */
   12906              : 
   12907              :         case E_V16SFmode:
   12908              :           if (pattern901 (x2, 
   12909              : E_V16SFmode, 
   12910              : E_HImode) != 0
   12911              :               || !(
   12912              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12913              : (TARGET_AVX512F) && (
   12914              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12915              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12916              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12917              : (TARGET_AVX512F))))
   12918              :             return -1;
   12919              :           return 2983; /* avx512f_sqrtv16sf2_mask */
   12920              : 
   12921              :         case E_V8SFmode:
   12922              :           if (pattern901 (x2, 
   12923              : E_V8SFmode, 
   12924              : E_QImode) != 0
   12925              :               || !(
   12926              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12927              : (TARGET_AVX512F) && (
   12928              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12929              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12930              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12931              : (TARGET_AVX))))
   12932              :             return -1;
   12933              :           return 2986; /* avx_sqrtv8sf2_mask */
   12934              : 
   12935              :         case E_V4SFmode:
   12936              :           if (pattern901 (x2, 
   12937              : E_V4SFmode, 
   12938              : E_QImode) != 0
   12939              :               || !(
   12940              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12941              : (TARGET_AVX512F) && 
   12942              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12943              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1)))
   12944              :             return -1;
   12945              :           return 2988; /* sse_sqrtv4sf2_mask */
   12946              : 
   12947              :         case E_V8DFmode:
   12948              :           if (pattern901 (x2, 
   12949              : E_V8DFmode, 
   12950              : E_QImode) != 0
   12951              :               || !(
   12952              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12953              : (TARGET_AVX512F) && (
   12954              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12955              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12956              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12957              : (TARGET_AVX512F))))
   12958              :             return -1;
   12959              :           return 2991; /* avx512f_sqrtv8df2_mask */
   12960              : 
   12961              :         case E_V4DFmode:
   12962              :           if (pattern901 (x2, 
   12963              : E_V4DFmode, 
   12964              : E_QImode) != 0
   12965              :               || !(
   12966              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12967              : (TARGET_AVX512F) && (
   12968              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12969              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12970              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12971              : (TARGET_AVX))))
   12972              :             return -1;
   12973              :           return 2994; /* avx_sqrtv4df2_mask */
   12974              : 
   12975              :         case E_V2DFmode:
   12976              :           if (pattern901 (x2, 
   12977              : E_V2DFmode, 
   12978              : E_QImode) != 0
   12979              :               || !(
   12980              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12981              : (TARGET_AVX512F) && (
   12982              : #line 3111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12983              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12984              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12985              : (TARGET_SSE2))))
   12986              :             return -1;
   12987              :           return 2996; /* sse2_sqrtv2df2_mask */
   12988              : 
   12989              :         case E_V32BFmode:
   12990              :           if (pattern152 (x2, 
   12991              : E_V32BFmode, 
   12992              : E_SImode) != 0
   12993              :               || !(
   12994              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12995              : (TARGET_AVX512F) && 
   12996              : #line 33473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12997              : (TARGET_AVX10_2)))
   12998              :             return -1;
   12999              :           return 10787; /* avx10_2_sqrtbf16_v32bf_mask */
   13000              : 
   13001              :         case E_V16BFmode:
   13002              :           if (pattern152 (x2, 
   13003              : E_V16BFmode, 
   13004              : E_HImode) != 0
   13005              :               || !(
   13006              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13007              : (TARGET_AVX512F) && 
   13008              : #line 33473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13009              : (TARGET_AVX10_2)))
   13010              :             return -1;
   13011              :           return 10789; /* avx10_2_sqrtbf16_v16bf_mask */
   13012              : 
   13013              :         case E_V8BFmode:
   13014              :           if (pattern152 (x2, 
   13015              : E_V8BFmode, 
   13016              : E_QImode) != 0
   13017              :               || !(
   13018              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13019              : (TARGET_AVX512F) && 
   13020              : #line 33473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13021              : (TARGET_AVX10_2)))
   13022              :             return -1;
   13023              :           return 10791; /* avx10_2_sqrtbf16_v8bf_mask */
   13024              : 
   13025              :         default:
   13026              :           return -1;
   13027              :         }
   13028              : 
   13029              :     case CONST_INT:
   13030              :       if (XWINT (x6, 0) != 1L)
   13031              :         return -1;
   13032              :       switch (GET_MODE (operands[0]))
   13033              :         {
   13034              :         case E_V8HFmode:
   13035              :           if (pattern902 (x2, 
   13036              : E_V8HFmode) != 0
   13037              :               || !(
   13038              : #line 3130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13039              : (TARGET_SSE) && 
   13040              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13041              : (TARGET_AVX512FP16)))
   13042              :             return -1;
   13043              :           return 2997; /* avx512fp16_vmsqrtv8hf2 */
   13044              : 
   13045              :         case E_V4SFmode:
   13046              :           if (pattern902 (x2, 
   13047              : E_V4SFmode) != 0
   13048              :               || !
   13049              : #line 3130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13050              : (TARGET_SSE))
   13051              :             return -1;
   13052              :           return 3001; /* sse_vmsqrtv4sf2 */
   13053              : 
   13054              :         case E_V2DFmode:
   13055              :           if (pattern902 (x2, 
   13056              : E_V2DFmode) != 0
   13057              :               || !(
   13058              : #line 3130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13059              : (TARGET_SSE) && 
   13060              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13061              : (TARGET_SSE2)))
   13062              :             return -1;
   13063              :           return 3005; /* sse2_vmsqrtv2df2 */
   13064              : 
   13065              :         default:
   13066              :           return -1;
   13067              :         }
   13068              : 
   13069              :     default:
   13070              :       return -1;
   13071              :     }
   13072              : }
   13073              : 
   13074              :  int
   13075              : recog_208 (rtx x1 ATTRIBUTE_UNUSED,
   13076              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13077              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13078              : {
   13079              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13080              :   rtx x2, x3, x4, x5;
   13081              :   int res ATTRIBUTE_UNUSED;
   13082              :   x2 = XEXP (x1, 1);
   13083              :   x3 = XEXP (x2, 0);
   13084              :   x4 = XEXP (x3, 0);
   13085              :   operands[1] = x4;
   13086              :   x5 = XEXP (x3, 1);
   13087              :   operands[2] = x5;
   13088              :   switch (pattern492 (x2))
   13089              :     {
   13090              :     case 0:
   13091              :       if (!(
   13092              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13093              : (TARGET_AVX512F) && (
   13094              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13095              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V32HFmode, operands)
   13096              :    && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13097              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13098              : (TARGET_AVX512FP16))))
   13099              :         return -1;
   13100              :       return 2754; /* *addv32hf3_mask */
   13101              : 
   13102              :     case 1:
   13103              :       if (!(
   13104              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13105              : (TARGET_AVX512F) && (
   13106              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13107              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16HFmode, operands)
   13108              :    && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13109              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13110              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13111              :         return -1;
   13112              :       return 2762; /* *addv16hf3_mask */
   13113              : 
   13114              :     case 2:
   13115              :       if (!(
   13116              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13117              : (TARGET_AVX512F) && (
   13118              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13119              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8HFmode, operands)
   13120              :    && (16 == 64 || TARGET_AVX512VL) && 1) && 
   13121              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13122              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13123              :         return -1;
   13124              :       return 2770; /* *addv8hf3_mask */
   13125              : 
   13126              :     case 3:
   13127              :       if (!(
   13128              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13129              : (TARGET_AVX512F) && (
   13130              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13131              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands)
   13132              :    && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13133              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13134              : (TARGET_AVX512F))))
   13135              :         return -1;
   13136              :       return 2778; /* *addv16sf3_mask */
   13137              : 
   13138              :     case 4:
   13139              :       if (!(
   13140              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13141              : (TARGET_AVX512F) && (
   13142              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13143              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands)
   13144              :    && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13145              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13146              : (TARGET_AVX))))
   13147              :         return -1;
   13148              :       return 2786; /* *addv8sf3_mask */
   13149              : 
   13150              :     case 5:
   13151              :       if (!(
   13152              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13153              : (TARGET_AVX512F) && 
   13154              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13155              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands)
   13156              :    && (16 == 64 || TARGET_AVX512VL) && 1)))
   13157              :         return -1;
   13158              :       return 2794; /* *addv4sf3_mask */
   13159              : 
   13160              :     case 6:
   13161              :       if (!(
   13162              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13163              : (TARGET_AVX512F) && (
   13164              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13165              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands)
   13166              :    && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13167              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13168              : (TARGET_AVX512F))))
   13169              :         return -1;
   13170              :       return 2802; /* *addv8df3_mask */
   13171              : 
   13172              :     case 7:
   13173              :       if (!(
   13174              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13175              : (TARGET_AVX512F) && (
   13176              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13177              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands)
   13178              :    && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13179              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13180              : (TARGET_AVX))))
   13181              :         return -1;
   13182              :       return 2810; /* *addv4df3_mask */
   13183              : 
   13184              :     case 8:
   13185              :       if (!(
   13186              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13187              : (TARGET_AVX512F) && (
   13188              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13189              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands)
   13190              :    && (16 == 64 || TARGET_AVX512VL) && 1) && 
   13191              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13192              : (TARGET_SSE2))))
   13193              :         return -1;
   13194              :       return 2818; /* *addv2df3_mask */
   13195              : 
   13196              :     case 9:
   13197              :       if (!
   13198              : #line 16697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13199              : (TARGET_AVX512F && ix86_binary_operator_ok (PLUS, V16SImode, operands)))
   13200              :         return -1;
   13201              :       return 7529; /* *addv16si3_mask */
   13202              : 
   13203              :     case 10:
   13204              :       if (!(
   13205              : #line 16697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13206              : (TARGET_AVX512F && ix86_binary_operator_ok (PLUS, V8SImode, operands)) && 
   13207              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13208              : (TARGET_AVX512VL)))
   13209              :         return -1;
   13210              :       return 7531; /* *addv8si3_mask */
   13211              : 
   13212              :     case 11:
   13213              :       if (!(
   13214              : #line 16697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13215              : (TARGET_AVX512F && ix86_binary_operator_ok (PLUS, V4SImode, operands)) && 
   13216              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13217              : (TARGET_AVX512VL)))
   13218              :         return -1;
   13219              :       return 7533; /* *addv4si3_mask */
   13220              : 
   13221              :     case 12:
   13222              :       if (!
   13223              : #line 16697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13224              : (TARGET_AVX512F && ix86_binary_operator_ok (PLUS, V8DImode, operands)))
   13225              :         return -1;
   13226              :       return 7535; /* *addv8di3_mask */
   13227              : 
   13228              :     case 13:
   13229              :       if (!(
   13230              : #line 16697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13231              : (TARGET_AVX512F && ix86_binary_operator_ok (PLUS, V4DImode, operands)) && 
   13232              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13233              : (TARGET_AVX512VL)))
   13234              :         return -1;
   13235              :       return 7537; /* *addv4di3_mask */
   13236              : 
   13237              :     case 14:
   13238              :       if (!(
   13239              : #line 16697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13240              : (TARGET_AVX512F && ix86_binary_operator_ok (PLUS, V2DImode, operands)) && 
   13241              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13242              : (TARGET_AVX512VL)))
   13243              :         return -1;
   13244              :       return 7539; /* *addv2di3_mask */
   13245              : 
   13246              :     case 15:
   13247              :       if (!
   13248              : #line 16711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13249              : (TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V64QImode, operands)))
   13250              :         return -1;
   13251              :       return 7541; /* *addv64qi3_mask */
   13252              : 
   13253              :     case 16:
   13254              :       if (!(
   13255              : #line 16711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13256              : (TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V16QImode, operands)) && 
   13257              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13258              : (TARGET_AVX512VL)))
   13259              :         return -1;
   13260              :       return 7543; /* *addv16qi3_mask */
   13261              : 
   13262              :     case 17:
   13263              :       if (!(
   13264              : #line 16711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13265              : (TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
   13266              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13267              : (TARGET_AVX512VL)))
   13268              :         return -1;
   13269              :       return 7545; /* *addv32qi3_mask */
   13270              : 
   13271              :     case 18:
   13272              :       if (!
   13273              : #line 16711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13274              : (TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V32HImode, operands)))
   13275              :         return -1;
   13276              :       return 7547; /* *addv32hi3_mask */
   13277              : 
   13278              :     case 19:
   13279              :       if (!(
   13280              : #line 16711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13281              : (TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
   13282              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13283              : (TARGET_AVX512VL)))
   13284              :         return -1;
   13285              :       return 7549; /* *addv16hi3_mask */
   13286              : 
   13287              :     case 20:
   13288              :       if (!(
   13289              : #line 16711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13290              : (TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V8HImode, operands)) && 
   13291              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13292              : (TARGET_AVX512VL)))
   13293              :         return -1;
   13294              :       return 7551; /* *addv8hi3_mask */
   13295              : 
   13296              :     case 21:
   13297              :       if (!(
   13298              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13299              : (TARGET_AVX512F) && 
   13300              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13301              : (TARGET_AVX10_2)))
   13302              :         return -1;
   13303              :       return 10709; /* avx10_2_addbf16_v32bf_mask */
   13304              : 
   13305              :     case 22:
   13306              :       if (!(
   13307              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13308              : (TARGET_AVX512F) && 
   13309              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13310              : (TARGET_AVX10_2)))
   13311              :         return -1;
   13312              :       return 10717; /* avx10_2_addbf16_v16bf_mask */
   13313              : 
   13314              :     case 23:
   13315              :       if (!(
   13316              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13317              : (TARGET_AVX512F) && 
   13318              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13319              : (TARGET_AVX10_2)))
   13320              :         return -1;
   13321              :       return 10725; /* avx10_2_addbf16_v8bf_mask */
   13322              : 
   13323              :     case 24:
   13324              :       if (!(
   13325              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13326              : (TARGET_SSE) && 
   13327              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13328              : (TARGET_AVX512FP16)))
   13329              :         return -1;
   13330              :       return 2830; /* avx512fp16_vmaddv8hf3 */
   13331              : 
   13332              :     case 25:
   13333              :       if (!
   13334              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13335              : (TARGET_SSE))
   13336              :         return -1;
   13337              :       return 2838; /* sse_vmaddv4sf3 */
   13338              : 
   13339              :     case 26:
   13340              :       if (!(
   13341              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13342              : (TARGET_SSE) && 
   13343              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13344              : (TARGET_SSE2)))
   13345              :         return -1;
   13346              :       return 2846; /* sse2_vmaddv2df3 */
   13347              : 
   13348              :     default:
   13349              :       return -1;
   13350              :     }
   13351              : }
   13352              : 
   13353              :  int
   13354              : recog_224 (rtx x1 ATTRIBUTE_UNUSED,
   13355              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13356              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13357              : {
   13358              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13359              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13360              :   int res ATTRIBUTE_UNUSED;
   13361              :   x2 = XEXP (x1, 1);
   13362              :   x3 = XVECEXP (x2, 0, 0);
   13363              :   x4 = XEXP (x3, 0);
   13364              :   switch (XINT (x4, 1))
   13365              :     {
   13366              :     case 64:
   13367              :       switch (pattern916 (x2))
   13368              :         {
   13369              :         case 0:
   13370              :           if (!(
   13371              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13372              : (TARGET_AVX512F) && (
   13373              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13374              : (TARGET_AVX512F) && (
   13375              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13376              : (TARGET_SSE
   13377              :    && (64 == 64 || TARGET_AVX512VL)
   13378              :    && (V32HFmode == V16SFmode
   13379              :                                                                               || V32HFmode == V8DFmode
   13380              :                                                                               || V32HFmode == V8DImode
   13381              :                                                                               || V32HFmode == V16SImode
   13382              :                                                                               || V32HFmode == V32HFmode)) && 
   13383              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13384              : (TARGET_AVX512FP16)))))
   13385              :             return -1;
   13386              :           return 3123; /* ieee_maxv32hf3_mask_round */
   13387              : 
   13388              :         case 1:
   13389              :           if (!(
   13390              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13391              : (TARGET_AVX512F) && (
   13392              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13393              : (TARGET_AVX512F) && (
   13394              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13395              : (TARGET_SSE
   13396              :    && (64 == 64 || TARGET_AVX512VL)
   13397              :    && (V16SFmode == V16SFmode
   13398              :                                                                               || V16SFmode == V8DFmode
   13399              :                                                                               || V16SFmode == V8DImode
   13400              :                                                                               || V16SFmode == V16SImode
   13401              :                                                                               || V16SFmode == V32HFmode)) && 
   13402              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13403              : (TARGET_AVX512F)))))
   13404              :             return -1;
   13405              :           return 3139; /* ieee_maxv16sf3_mask_round */
   13406              : 
   13407              :         case 2:
   13408              :           if (!(
   13409              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13410              : (TARGET_AVX512F) && (
   13411              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13412              : (TARGET_AVX512F) && (
   13413              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13414              : (TARGET_SSE
   13415              :    && (64 == 64 || TARGET_AVX512VL)
   13416              :    && (V8DFmode == V16SFmode
   13417              :                                                                               || V8DFmode == V8DFmode
   13418              :                                                                               || V8DFmode == V8DImode
   13419              :                                                                               || V8DFmode == V16SImode
   13420              :                                                                               || V8DFmode == V32HFmode)) && 
   13421              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13422              : (TARGET_AVX512F)))))
   13423              :             return -1;
   13424              :           return 3155; /* ieee_maxv8df3_mask_round */
   13425              : 
   13426              :         case 3:
   13427              :           if (!(
   13428              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13429              : (TARGET_AVX512F) && (
   13430              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13431              : (TARGET_SSE) && 
   13432              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13433              : (TARGET_AVX512FP16))))
   13434              :             return -1;
   13435              :           return 3200; /* avx512fp16_ieee_vmmaxv8hf3_round */
   13436              : 
   13437              :         case 4:
   13438              :           if (!(
   13439              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13440              : (TARGET_AVX512F) && 
   13441              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13442              : (TARGET_SSE)))
   13443              :             return -1;
   13444              :           return 3208; /* sse_ieee_vmmaxv4sf3_round */
   13445              : 
   13446              :         case 5:
   13447              :           if (!(
   13448              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13449              : (TARGET_AVX512F) && (
   13450              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13451              : (TARGET_SSE) && 
   13452              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13453              : (TARGET_SSE2))))
   13454              :             return -1;
   13455              :           return 3216; /* sse2_ieee_vmmaxv2df3_round */
   13456              : 
   13457              :         default:
   13458              :           return -1;
   13459              :         }
   13460              : 
   13461              :     case 63:
   13462              :       switch (pattern916 (x2))
   13463              :         {
   13464              :         case 0:
   13465              :           if (!(
   13466              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13467              : (TARGET_AVX512F) && (
   13468              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13469              : (TARGET_AVX512F) && (
   13470              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13471              : (TARGET_SSE
   13472              :    && (64 == 64 || TARGET_AVX512VL)
   13473              :    && (V32HFmode == V16SFmode
   13474              :                                                                               || V32HFmode == V8DFmode
   13475              :                                                                               || V32HFmode == V8DImode
   13476              :                                                                               || V32HFmode == V16SImode
   13477              :                                                                               || V32HFmode == V32HFmode)) && 
   13478              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13479              : (TARGET_AVX512FP16)))))
   13480              :             return -1;
   13481              :           return 3127; /* ieee_minv32hf3_mask_round */
   13482              : 
   13483              :         case 1:
   13484              :           if (!(
   13485              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13486              : (TARGET_AVX512F) && (
   13487              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13488              : (TARGET_AVX512F) && (
   13489              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13490              : (TARGET_SSE
   13491              :    && (64 == 64 || TARGET_AVX512VL)
   13492              :    && (V16SFmode == V16SFmode
   13493              :                                                                               || V16SFmode == V8DFmode
   13494              :                                                                               || V16SFmode == V8DImode
   13495              :                                                                               || V16SFmode == V16SImode
   13496              :                                                                               || V16SFmode == V32HFmode)) && 
   13497              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13498              : (TARGET_AVX512F)))))
   13499              :             return -1;
   13500              :           return 3143; /* ieee_minv16sf3_mask_round */
   13501              : 
   13502              :         case 2:
   13503              :           if (!(
   13504              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13505              : (TARGET_AVX512F) && (
   13506              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13507              : (TARGET_AVX512F) && (
   13508              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13509              : (TARGET_SSE
   13510              :    && (64 == 64 || TARGET_AVX512VL)
   13511              :    && (V8DFmode == V16SFmode
   13512              :                                                                               || V8DFmode == V8DFmode
   13513              :                                                                               || V8DFmode == V8DImode
   13514              :                                                                               || V8DFmode == V16SImode
   13515              :                                                                               || V8DFmode == V32HFmode)) && 
   13516              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13517              : (TARGET_AVX512F)))))
   13518              :             return -1;
   13519              :           return 3159; /* ieee_minv8df3_mask_round */
   13520              : 
   13521              :         case 3:
   13522              :           if (!(
   13523              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13524              : (TARGET_AVX512F) && (
   13525              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13526              : (TARGET_SSE) && 
   13527              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13528              : (TARGET_AVX512FP16))))
   13529              :             return -1;
   13530              :           return 3204; /* avx512fp16_ieee_vmminv8hf3_round */
   13531              : 
   13532              :         case 4:
   13533              :           if (!(
   13534              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13535              : (TARGET_AVX512F) && 
   13536              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13537              : (TARGET_SSE)))
   13538              :             return -1;
   13539              :           return 3212; /* sse_ieee_vmminv4sf3_round */
   13540              : 
   13541              :         case 5:
   13542              :           if (!(
   13543              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13544              : (TARGET_AVX512F) && (
   13545              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13546              : (TARGET_SSE) && 
   13547              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13548              : (TARGET_SSE2))))
   13549              :             return -1;
   13550              :           return 3220; /* sse2_ieee_vmminv2df3_round */
   13551              : 
   13552              :         default:
   13553              :           return -1;
   13554              :         }
   13555              : 
   13556              :     case 193:
   13557              :       x5 = XVECEXP (x4, 0, 0);
   13558              :       operands[1] = x5;
   13559              :       x6 = XVECEXP (x4, 0, 1);
   13560              :       operands[2] = x6;
   13561              :       if (!const_0_to_255_operand (operands[2], E_SImode))
   13562              :         return -1;
   13563              :       x7 = XEXP (x3, 1);
   13564              :       operands[3] = x7;
   13565              :       x8 = XEXP (x3, 2);
   13566              :       operands[4] = x8;
   13567              :       x9 = XVECEXP (x2, 0, 1);
   13568              :       operands[5] = x9;
   13569              :       if (!const48_operand (operands[5], E_SImode))
   13570              :         return -1;
   13571              :       switch (GET_MODE (operands[0]))
   13572              :         {
   13573              :         case E_V32HFmode:
   13574              :           if (pattern1563 (x2, 
   13575              : E_V32HFmode, 
   13576              : E_SImode) != 0
   13577              :               || !(
   13578              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13579              : (TARGET_AVX512F) && (
   13580              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13581              : (TARGET_AVX512F) && (
   13582              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13583              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V32HFmode))) && 
   13584              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13585              : (TARGET_AVX512FP16)))))
   13586              :             return -1;
   13587              :           return 3239; /* reducepv32hf_mask_round */
   13588              : 
   13589              :         case E_V16HFmode:
   13590              :           if (pattern1563 (x2, 
   13591              : E_V16HFmode, 
   13592              : E_HImode) != 0
   13593              :               || !(
   13594              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13595              : (TARGET_AVX512F) && (
   13596              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13597              : (TARGET_AVX512F) && (
   13598              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13599              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16HFmode))) && 
   13600              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13601              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   13602              :             return -1;
   13603              :           return 3243; /* reducepv16hf_mask_round */
   13604              : 
   13605              :         case E_V8HFmode:
   13606              :           if (pattern1563 (x2, 
   13607              : E_V8HFmode, 
   13608              : E_QImode) != 0
   13609              :               || !(
   13610              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13611              : (TARGET_AVX512F) && (
   13612              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13613              : (TARGET_AVX512F) && (
   13614              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13615              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8HFmode))) && 
   13616              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13617              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   13618              :             return -1;
   13619              :           return 3247; /* reducepv8hf_mask_round */
   13620              : 
   13621              :         case E_V16SFmode:
   13622              :           if (pattern1563 (x2, 
   13623              : E_V16SFmode, 
   13624              : E_HImode) != 0
   13625              :               || !(
   13626              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13627              : (TARGET_AVX512F) && (
   13628              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13629              : (TARGET_AVX512F) && 
   13630              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13631              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16SFmode))))))
   13632              :             return -1;
   13633              :           return 3251; /* reducepv16sf_mask_round */
   13634              : 
   13635              :         case E_V8SFmode:
   13636              :           if (pattern1563 (x2, 
   13637              : E_V8SFmode, 
   13638              : E_QImode) != 0
   13639              :               || !(
   13640              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13641              : (TARGET_AVX512F) && (
   13642              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13643              : (TARGET_AVX512F) && (
   13644              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13645              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8SFmode))) && 
   13646              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13647              : (TARGET_AVX512VL)))))
   13648              :             return -1;
   13649              :           return 3255; /* reducepv8sf_mask_round */
   13650              : 
   13651              :         case E_V4SFmode:
   13652              :           if (pattern1563 (x2, 
   13653              : E_V4SFmode, 
   13654              : E_QImode) != 0
   13655              :               || !(
   13656              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13657              : (TARGET_AVX512F) && (
   13658              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13659              : (TARGET_AVX512F) && (
   13660              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13661              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4SFmode))) && 
   13662              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13663              : (TARGET_AVX512VL)))))
   13664              :             return -1;
   13665              :           return 3259; /* reducepv4sf_mask_round */
   13666              : 
   13667              :         case E_V8DFmode:
   13668              :           if (pattern1563 (x2, 
   13669              : E_V8DFmode, 
   13670              : E_QImode) != 0
   13671              :               || !(
   13672              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13673              : (TARGET_AVX512F) && (
   13674              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13675              : (TARGET_AVX512F) && 
   13676              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13677              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8DFmode))))))
   13678              :             return -1;
   13679              :           return 3263; /* reducepv8df_mask_round */
   13680              : 
   13681              :         case E_V4DFmode:
   13682              :           if (pattern1563 (x2, 
   13683              : E_V4DFmode, 
   13684              : E_QImode) != 0
   13685              :               || !(
   13686              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13687              : (TARGET_AVX512F) && (
   13688              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13689              : (TARGET_AVX512F) && (
   13690              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13691              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4DFmode))) && 
   13692              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13693              : (TARGET_AVX512VL)))))
   13694              :             return -1;
   13695              :           return 3267; /* reducepv4df_mask_round */
   13696              : 
   13697              :         case E_V2DFmode:
   13698              :           if (pattern1563 (x2, 
   13699              : E_V2DFmode, 
   13700              : E_QImode) != 0
   13701              :               || !(
   13702              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13703              : (TARGET_AVX512F) && (
   13704              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13705              : (TARGET_AVX512F) && (
   13706              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13707              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V2DFmode))) && 
   13708              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13709              : (TARGET_AVX512VL)))))
   13710              :             return -1;
   13711              :           return 3271; /* reducepv2df_mask_round */
   13712              : 
   13713              :         default:
   13714              :           return -1;
   13715              :         }
   13716              : 
   13717              :     case 222:
   13718              :       switch (pattern917 (x2))
   13719              :         {
   13720              :         case 0:
   13721              :           if (!(
   13722              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13723              : (TARGET_AVX512F) && (
   13724              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13725              : (TARGET_AVX512F) && 
   13726              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13727              : (TARGET_AVX512FP16 && (V32HFmode == V16SFmode
   13728              :                                                               || V32HFmode == V8DFmode
   13729              :                                                               || V32HFmode == V8DImode
   13730              :                                                               || V32HFmode == V16SImode
   13731              :                                                               || V32HFmode == V32HFmode)))))
   13732              :             return -1;
   13733              :           return 4419; /* avx512bw_fmulc_v32hf_mask_round */
   13734              : 
   13735              :         case 1:
   13736              :           if (!(
   13737              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13738              : (TARGET_AVX512F) && 
   13739              : #line 7926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13740              : (TARGET_AVX512FP16)))
   13741              :             return -1;
   13742              :           return 4445; /* avx512fp16_fmulcsh_v8hf_round */
   13743              : 
   13744              :         default:
   13745              :           return -1;
   13746              :         }
   13747              : 
   13748              :     case 223:
   13749              :       switch (pattern917 (x2))
   13750              :         {
   13751              :         case 0:
   13752              :           if (!(
   13753              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13754              : (TARGET_AVX512F) && (
   13755              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13756              : (TARGET_AVX512F) && 
   13757              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13758              : (TARGET_AVX512FP16 && (V32HFmode == V16SFmode
   13759              :                                                               || V32HFmode == V8DFmode
   13760              :                                                               || V32HFmode == V8DImode
   13761              :                                                               || V32HFmode == V16SImode
   13762              :                                                               || V32HFmode == V32HFmode)))))
   13763              :             return -1;
   13764              :           return 4423; /* avx512bw_fcmulc_v32hf_mask_round */
   13765              : 
   13766              :         case 1:
   13767              :           if (!(
   13768              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13769              : (TARGET_AVX512F) && 
   13770              : #line 7926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13771              : (TARGET_AVX512FP16)))
   13772              :             return -1;
   13773              :           return 4449; /* avx512fp16_fcmulcsh_v8hf_round */
   13774              : 
   13775              :         default:
   13776              :           return -1;
   13777              :         }
   13778              : 
   13779              :     case 59:
   13780              :       x5 = XVECEXP (x4, 0, 0);
   13781              :       operands[1] = x5;
   13782              :       x6 = XVECEXP (x4, 0, 1);
   13783              :       operands[2] = x6;
   13784              :       x9 = XVECEXP (x2, 0, 1);
   13785              :       if (!const_4_or_8_to_11_operand (x9, E_SImode))
   13786              :         return -1;
   13787              :       x8 = XEXP (x3, 2);
   13788              :       switch (GET_CODE (x8))
   13789              :         {
   13790              :         case CONST_INT:
   13791              :           if (XWINT (x8, 0) != 1L)
   13792              :             return -1;
   13793              :           operands[3] = x9;
   13794              :           switch (pattern1416 (x2))
   13795              :             {
   13796              :             case 0:
   13797              :               if (!(
   13798              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13799              : (TARGET_AVX512F) && (
   13800              : #line 14013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13801              : (TARGET_AVX512F) && 
   13802              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13803              : (TARGET_AVX512FP16))))
   13804              :                 return -1;
   13805              :               return 5437; /* avx512f_vmscalefv8hf_round */
   13806              : 
   13807              :             case 1:
   13808              :               if (!
   13809              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13810              : (TARGET_AVX512F))
   13811              :                 return -1;
   13812              :               return 5441; /* avx512f_vmscalefv4sf_round */
   13813              : 
   13814              :             case 2:
   13815              :               if (!(
   13816              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13817              : (TARGET_AVX512F) && (
   13818              : #line 14013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13819              : (TARGET_AVX512F) && 
   13820              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13821              : (TARGET_SSE2))))
   13822              :                 return -1;
   13823              :               return 5445; /* avx512f_vmscalefv2df_round */
   13824              : 
   13825              :             default:
   13826              :               return -1;
   13827              :             }
   13828              : 
   13829              :         case REG:
   13830              :         case SUBREG:
   13831              :           operands[4] = x8;
   13832              :           x7 = XEXP (x3, 1);
   13833              :           operands[3] = x7;
   13834              :           operands[5] = x9;
   13835              :           switch (GET_MODE (operands[0]))
   13836              :             {
   13837              :             case E_V32HFmode:
   13838              :               if (pattern1564 (x2, 
   13839              : E_V32HFmode, 
   13840              : E_SImode) != 0
   13841              :                   || !(
   13842              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13843              : (TARGET_AVX512F) && (
   13844              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13845              : (TARGET_AVX512F) && (
   13846              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13847              : (TARGET_AVX512F) && 
   13848              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13849              : (TARGET_AVX512FP16)))))
   13850              :                 return -1;
   13851              :               return 5451; /* avx512bw_scalefv32hf_mask_round */
   13852              : 
   13853              :             case E_V16HFmode:
   13854              :               if (pattern1564 (x2, 
   13855              : E_V16HFmode, 
   13856              : E_HImode) != 0
   13857              :                   || !(
   13858              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13859              : (TARGET_AVX512F) && (
   13860              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13861              : (TARGET_AVX512F) && (
   13862              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13863              : (TARGET_AVX512F) && 
   13864              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13865              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   13866              :                 return -1;
   13867              :               return 5455; /* avx512vl_scalefv16hf_mask_round */
   13868              : 
   13869              :             case E_V8HFmode:
   13870              :               if (pattern1564 (x2, 
   13871              : E_V8HFmode, 
   13872              : E_QImode) != 0
   13873              :                   || !(
   13874              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13875              : (TARGET_AVX512F) && (
   13876              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13877              : (TARGET_AVX512F) && (
   13878              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13879              : (TARGET_AVX512F) && 
   13880              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13881              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   13882              :                 return -1;
   13883              :               return 5459; /* avx512fp16_scalefv8hf_mask_round */
   13884              : 
   13885              :             case E_V16SFmode:
   13886              :               if (pattern1564 (x2, 
   13887              : E_V16SFmode, 
   13888              : E_HImode) != 0
   13889              :                   || !
   13890              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13891              : (TARGET_AVX512F))
   13892              :                 return -1;
   13893              :               return 5463; /* avx512f_scalefv16sf_mask_round */
   13894              : 
   13895              :             case E_V8SFmode:
   13896              :               if (pattern1564 (x2, 
   13897              : E_V8SFmode, 
   13898              : E_QImode) != 0
   13899              :                   || !(
   13900              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13901              : (TARGET_AVX512F) && (
   13902              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13903              : (TARGET_AVX512F) && (
   13904              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13905              : (TARGET_AVX512F) && 
   13906              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13907              : (TARGET_AVX512VL)))))
   13908              :                 return -1;
   13909              :               return 5467; /* avx512vl_scalefv8sf_mask_round */
   13910              : 
   13911              :             case E_V4SFmode:
   13912              :               if (pattern1564 (x2, 
   13913              : E_V4SFmode, 
   13914              : E_QImode) != 0
   13915              :                   || !(
   13916              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13917              : (TARGET_AVX512F) && (
   13918              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13919              : (TARGET_AVX512F) && (
   13920              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13921              : (TARGET_AVX512F) && 
   13922              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13923              : (TARGET_AVX512VL)))))
   13924              :                 return -1;
   13925              :               return 5471; /* avx512vl_scalefv4sf_mask_round */
   13926              : 
   13927              :             case E_V8DFmode:
   13928              :               if (pattern1564 (x2, 
   13929              : E_V8DFmode, 
   13930              : E_QImode) != 0
   13931              :                   || !
   13932              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13933              : (TARGET_AVX512F))
   13934              :                 return -1;
   13935              :               return 5475; /* avx512f_scalefv8df_mask_round */
   13936              : 
   13937              :             case E_V4DFmode:
   13938              :               if (pattern1564 (x2, 
   13939              : E_V4DFmode, 
   13940              : E_QImode) != 0
   13941              :                   || !(
   13942              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13943              : (TARGET_AVX512F) && (
   13944              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13945              : (TARGET_AVX512F) && (
   13946              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13947              : (TARGET_AVX512F) && 
   13948              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13949              : (TARGET_AVX512VL)))))
   13950              :                 return -1;
   13951              :               return 5479; /* avx512vl_scalefv4df_mask_round */
   13952              : 
   13953              :             case E_V2DFmode:
   13954              :               if (pattern1564 (x2, 
   13955              : E_V2DFmode, 
   13956              : E_QImode) != 0
   13957              :                   || !(
   13958              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13959              : (TARGET_AVX512F) && (
   13960              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13961              : (TARGET_AVX512F) && (
   13962              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13963              : (TARGET_AVX512F) && 
   13964              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13965              : (TARGET_AVX512VL)))))
   13966              :                 return -1;
   13967              :               return 5483; /* avx512vl_scalefv2df_mask_round */
   13968              : 
   13969              :             default:
   13970              :               return -1;
   13971              :             }
   13972              : 
   13973              :         default:
   13974              :           return -1;
   13975              :         }
   13976              : 
   13977              :     case 166:
   13978              :       x8 = XEXP (x3, 2);
   13979              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13980              :         return -1;
   13981              :       x5 = XVECEXP (x4, 0, 0);
   13982              :       operands[1] = x5;
   13983              :       x6 = XVECEXP (x4, 0, 1);
   13984              :       operands[2] = x6;
   13985              :       x9 = XVECEXP (x2, 0, 1);
   13986              :       operands[3] = x9;
   13987              :       if (!const48_operand (operands[3], E_SImode))
   13988              :         return -1;
   13989              :       switch (pattern1416 (x2))
   13990              :         {
   13991              :         case 0:
   13992              :           if (!(
   13993              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13994              : (TARGET_AVX512F) && (
   13995              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13996              : (TARGET_AVX512F) && 
   13997              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13998              : (TARGET_AVX512FP16))))
   13999              :             return -1;
   14000              :           return 7100; /* avx512f_sgetexpv8hf_round */
   14001              : 
   14002              :         case 1:
   14003              :           if (!
   14004              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14005              : (TARGET_AVX512F))
   14006              :             return -1;
   14007              :           return 7104; /* avx512f_sgetexpv4sf_round */
   14008              : 
   14009              :         case 2:
   14010              :           if (!(
   14011              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14012              : (TARGET_AVX512F) && (
   14013              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14014              : (TARGET_AVX512F) && 
   14015              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14016              : (TARGET_SSE2))))
   14017              :             return -1;
   14018              :           return 7108; /* avx512f_sgetexpv2df_round */
   14019              : 
   14020              :         default:
   14021              :           return -1;
   14022              :         }
   14023              : 
   14024              :     case 95:
   14025              :       x6 = XVECEXP (x4, 0, 1);
   14026              :       if (!const_0_to_255_operand (x6, E_SImode))
   14027              :         return -1;
   14028              :       x9 = XVECEXP (x2, 0, 1);
   14029              :       if (!const48_operand (x9, E_SImode))
   14030              :         return -1;
   14031              :       x8 = XEXP (x3, 2);
   14032              :       switch (GET_CODE (x8))
   14033              :         {
   14034              :         case REG:
   14035              :         case SUBREG:
   14036              :           operands[4] = x8;
   14037              :           x5 = XVECEXP (x4, 0, 0);
   14038              :           operands[1] = x5;
   14039              :           operands[2] = x6;
   14040              :           x7 = XEXP (x3, 1);
   14041              :           operands[3] = x7;
   14042              :           operands[5] = x9;
   14043              :           switch (GET_MODE (operands[0]))
   14044              :             {
   14045              :             case E_V32HFmode:
   14046              :               if (pattern1565 (x2, 
   14047              : E_V32HFmode, 
   14048              : E_SImode) != 0
   14049              :                   || !(
   14050              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14051              : (TARGET_AVX512F) && (
   14052              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14053              : (TARGET_AVX512F) && (
   14054              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14055              : (TARGET_AVX512F) && 
   14056              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14057              : (TARGET_AVX512FP16)))))
   14058              :                 return -1;
   14059              :               return 7181; /* avx512bw_rndscalev32hf_mask_round */
   14060              : 
   14061              :             case E_V16HFmode:
   14062              :               if (pattern1565 (x2, 
   14063              : E_V16HFmode, 
   14064              : E_HImode) != 0
   14065              :                   || !(
   14066              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14067              : (TARGET_AVX512F) && (
   14068              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14069              : (TARGET_AVX512F) && (
   14070              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14071              : (TARGET_AVX512F) && 
   14072              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14073              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14074              :                 return -1;
   14075              :               return 7185; /* avx512vl_rndscalev16hf_mask_round */
   14076              : 
   14077              :             case E_V8HFmode:
   14078              :               if (pattern1565 (x2, 
   14079              : E_V8HFmode, 
   14080              : E_QImode) != 0
   14081              :                   || !(
   14082              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14083              : (TARGET_AVX512F) && (
   14084              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14085              : (TARGET_AVX512F) && (
   14086              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14087              : (TARGET_AVX512F) && 
   14088              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14089              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14090              :                 return -1;
   14091              :               return 7189; /* avx512fp16_rndscalev8hf_mask_round */
   14092              : 
   14093              :             case E_V16SFmode:
   14094              :               if (pattern1565 (x2, 
   14095              : E_V16SFmode, 
   14096              : E_HImode) != 0
   14097              :                   || !
   14098              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14099              : (TARGET_AVX512F))
   14100              :                 return -1;
   14101              :               return 7193; /* avx512f_rndscalev16sf_mask_round */
   14102              : 
   14103              :             case E_V8SFmode:
   14104              :               if (pattern1565 (x2, 
   14105              : E_V8SFmode, 
   14106              : E_QImode) != 0
   14107              :                   || !(
   14108              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14109              : (TARGET_AVX512F) && (
   14110              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14111              : (TARGET_AVX512F) && (
   14112              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14113              : (TARGET_AVX512F) && 
   14114              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14115              : (TARGET_AVX512VL)))))
   14116              :                 return -1;
   14117              :               return 7197; /* avx512vl_rndscalev8sf_mask_round */
   14118              : 
   14119              :             case E_V4SFmode:
   14120              :               if (pattern1565 (x2, 
   14121              : E_V4SFmode, 
   14122              : E_QImode) != 0
   14123              :                   || !(
   14124              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14125              : (TARGET_AVX512F) && (
   14126              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14127              : (TARGET_AVX512F) && (
   14128              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14129              : (TARGET_AVX512F) && 
   14130              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14131              : (TARGET_AVX512VL)))))
   14132              :                 return -1;
   14133              :               return 7201; /* avx512vl_rndscalev4sf_mask_round */
   14134              : 
   14135              :             case E_V8DFmode:
   14136              :               if (pattern1565 (x2, 
   14137              : E_V8DFmode, 
   14138              : E_QImode) != 0
   14139              :                   || !
   14140              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14141              : (TARGET_AVX512F))
   14142              :                 return -1;
   14143              :               return 7205; /* avx512f_rndscalev8df_mask_round */
   14144              : 
   14145              :             case E_V4DFmode:
   14146              :               if (pattern1565 (x2, 
   14147              : E_V4DFmode, 
   14148              : E_QImode) != 0
   14149              :                   || !(
   14150              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14151              : (TARGET_AVX512F) && (
   14152              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14153              : (TARGET_AVX512F) && (
   14154              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14155              : (TARGET_AVX512F) && 
   14156              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14157              : (TARGET_AVX512VL)))))
   14158              :                 return -1;
   14159              :               return 7209; /* avx512vl_rndscalev4df_mask_round */
   14160              : 
   14161              :             case E_V2DFmode:
   14162              :               if (pattern1565 (x2, 
   14163              : E_V2DFmode, 
   14164              : E_QImode) != 0
   14165              :                   || !(
   14166              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14167              : (TARGET_AVX512F) && (
   14168              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14169              : (TARGET_AVX512F) && (
   14170              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14171              : (TARGET_AVX512F) && 
   14172              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14173              : (TARGET_AVX512VL)))))
   14174              :                 return -1;
   14175              :               return 7213; /* avx512vl_rndscalev2df_mask_round */
   14176              : 
   14177              :             default:
   14178              :               return -1;
   14179              :             }
   14180              : 
   14181              :         case CONST_INT:
   14182              :           if (XWINT (x8, 0) != 1L)
   14183              :             return -1;
   14184              :           x5 = XVECEXP (x4, 0, 0);
   14185              :           operands[2] = x5;
   14186              :           operands[3] = x6;
   14187              :           x7 = XEXP (x3, 1);
   14188              :           operands[1] = x7;
   14189              :           operands[4] = x9;
   14190              :           switch (GET_MODE (operands[0]))
   14191              :             {
   14192              :             case E_V8HFmode:
   14193              :               if (pattern1602 (x2, 
   14194              : E_V8HFmode) != 0
   14195              :                   || !(
   14196              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14197              : (TARGET_AVX512F) && (
   14198              : #line 14641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14199              : (TARGET_AVX512F) && 
   14200              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14201              : (TARGET_AVX512FP16))))
   14202              :                 return -1;
   14203              :               return 7216; /* avx512f_rndscalev8hf_round */
   14204              : 
   14205              :             case E_V4SFmode:
   14206              :               if (pattern1602 (x2, 
   14207              : E_V4SFmode) != 0
   14208              :                   || !
   14209              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14210              : (TARGET_AVX512F))
   14211              :                 return -1;
   14212              :               return 7220; /* avx512f_rndscalev4sf_round */
   14213              : 
   14214              :             case E_V2DFmode:
   14215              :               if (pattern1602 (x2, 
   14216              : E_V2DFmode) != 0
   14217              :                   || !(
   14218              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14219              : (TARGET_AVX512F) && (
   14220              : #line 14641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14221              : (TARGET_AVX512F) && 
   14222              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14223              : (TARGET_SSE2))))
   14224              :                 return -1;
   14225              :               return 7224; /* avx512f_rndscalev2df_round */
   14226              : 
   14227              :             default:
   14228              :               return -1;
   14229              :             }
   14230              : 
   14231              :         default:
   14232              :           return -1;
   14233              :         }
   14234              : 
   14235              :     case 151:
   14236              :       if (GET_MODE (x4) != E_V16HImode
   14237              :           || !register_operand (operands[0], E_V16HImode)
   14238              :           || GET_MODE (x2) != E_V16HImode
   14239              :           || GET_MODE (x3) != E_V16HImode)
   14240              :         return -1;
   14241              :       x5 = XVECEXP (x4, 0, 0);
   14242              :       operands[1] = x5;
   14243              :       if (!register_operand (operands[1], E_V16SFmode))
   14244              :         return -1;
   14245              :       x6 = XVECEXP (x4, 0, 1);
   14246              :       operands[2] = x6;
   14247              :       if (!const_0_to_255_operand (operands[2], E_SImode))
   14248              :         return -1;
   14249              :       x7 = XEXP (x3, 1);
   14250              :       operands[3] = x7;
   14251              :       if (!nonimm_or_0_operand (operands[3], E_V16HImode))
   14252              :         return -1;
   14253              :       x8 = XEXP (x3, 2);
   14254              :       operands[4] = x8;
   14255              :       if (!register_operand (operands[4], E_HImode))
   14256              :         return -1;
   14257              :       x9 = XVECEXP (x2, 0, 1);
   14258              :       operands[5] = x9;
   14259              :       if (!const48_operand (operands[5], E_SImode)
   14260              :           || !
   14261              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14262              : (TARGET_AVX512F))
   14263              :         return -1;
   14264              :       return 9771; /* avx512f_vcvtps2ph512_mask_round */
   14265              : 
   14266              :     case 167:
   14267              :       x5 = XVECEXP (x4, 0, 0);
   14268              :       operands[1] = x5;
   14269              :       x6 = XVECEXP (x4, 0, 1);
   14270              :       operands[2] = x6;
   14271              :       if (!const_0_to_15_operand (operands[2], E_SImode))
   14272              :         return -1;
   14273              :       x7 = XEXP (x3, 1);
   14274              :       operands[3] = x7;
   14275              :       x8 = XEXP (x3, 2);
   14276              :       operands[4] = x8;
   14277              :       x9 = XVECEXP (x2, 0, 1);
   14278              :       operands[5] = x9;
   14279              :       if (!const48_operand (operands[5], E_SImode))
   14280              :         return -1;
   14281              :       switch (GET_MODE (operands[0]))
   14282              :         {
   14283              :         case E_V32HFmode:
   14284              :           if (pattern1565 (x2, 
   14285              : E_V32HFmode, 
   14286              : E_SImode) != 0
   14287              :               || !(
   14288              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14289              : (TARGET_AVX512F) && (
   14290              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14291              : (TARGET_AVX512F) && (
   14292              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14293              : (TARGET_AVX512F) && 
   14294              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14295              : (TARGET_AVX512FP16)))))
   14296              :             return -1;
   14297              :           return 10113; /* avx512bw_getmantv32hf_mask_round */
   14298              : 
   14299              :         case E_V16HFmode:
   14300              :           if (pattern1565 (x2, 
   14301              : E_V16HFmode, 
   14302              : E_HImode) != 0
   14303              :               || !(
   14304              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14305              : (TARGET_AVX512F) && (
   14306              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14307              : (TARGET_AVX512F) && (
   14308              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14309              : (TARGET_AVX512F) && 
   14310              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14311              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14312              :             return -1;
   14313              :           return 10117; /* avx512vl_getmantv16hf_mask_round */
   14314              : 
   14315              :         case E_V8HFmode:
   14316              :           if (pattern1565 (x2, 
   14317              : E_V8HFmode, 
   14318              : E_QImode) != 0
   14319              :               || !(
   14320              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14321              : (TARGET_AVX512F) && (
   14322              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14323              : (TARGET_AVX512F) && (
   14324              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14325              : (TARGET_AVX512F) && 
   14326              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14327              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14328              :             return -1;
   14329              :           return 10121; /* avx512fp16_getmantv8hf_mask_round */
   14330              : 
   14331              :         case E_V16SFmode:
   14332              :           if (pattern1565 (x2, 
   14333              : E_V16SFmode, 
   14334              : E_HImode) != 0
   14335              :               || !
   14336              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14337              : (TARGET_AVX512F))
   14338              :             return -1;
   14339              :           return 10125; /* avx512f_getmantv16sf_mask_round */
   14340              : 
   14341              :         case E_V8SFmode:
   14342              :           if (pattern1565 (x2, 
   14343              : E_V8SFmode, 
   14344              : E_QImode) != 0
   14345              :               || !(
   14346              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14347              : (TARGET_AVX512F) && (
   14348              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14349              : (TARGET_AVX512F) && (
   14350              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14351              : (TARGET_AVX512F) && 
   14352              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14353              : (TARGET_AVX512VL)))))
   14354              :             return -1;
   14355              :           return 10129; /* avx512vl_getmantv8sf_mask_round */
   14356              : 
   14357              :         case E_V4SFmode:
   14358              :           if (pattern1565 (x2, 
   14359              : E_V4SFmode, 
   14360              : E_QImode) != 0
   14361              :               || !(
   14362              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14363              : (TARGET_AVX512F) && (
   14364              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14365              : (TARGET_AVX512F) && (
   14366              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14367              : (TARGET_AVX512F) && 
   14368              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14369              : (TARGET_AVX512VL)))))
   14370              :             return -1;
   14371              :           return 10133; /* avx512vl_getmantv4sf_mask_round */
   14372              : 
   14373              :         case E_V8DFmode:
   14374              :           if (pattern1565 (x2, 
   14375              : E_V8DFmode, 
   14376              : E_QImode) != 0
   14377              :               || !
   14378              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14379              : (TARGET_AVX512F))
   14380              :             return -1;
   14381              :           return 10137; /* avx512f_getmantv8df_mask_round */
   14382              : 
   14383              :         case E_V4DFmode:
   14384              :           if (pattern1565 (x2, 
   14385              : E_V4DFmode, 
   14386              : E_QImode) != 0
   14387              :               || !(
   14388              : #line 263 "/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 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14393              : (TARGET_AVX512F) && 
   14394              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14395              : (TARGET_AVX512VL)))))
   14396              :             return -1;
   14397              :           return 10141; /* avx512vl_getmantv4df_mask_round */
   14398              : 
   14399              :         case E_V2DFmode:
   14400              :           if (pattern1565 (x2, 
   14401              : E_V2DFmode, 
   14402              : E_QImode) != 0
   14403              :               || !(
   14404              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14405              : (TARGET_AVX512F) && (
   14406              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14407              : (TARGET_AVX512F) && (
   14408              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14409              : (TARGET_AVX512F) && 
   14410              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14411              : (TARGET_AVX512VL)))))
   14412              :             return -1;
   14413              :           return 10145; /* avx512vl_getmantv2df_mask_round */
   14414              : 
   14415              :         default:
   14416              :           return -1;
   14417              :         }
   14418              : 
   14419              :     default:
   14420              :       return -1;
   14421              :     }
   14422              : }
   14423              : 
   14424              :  int
   14425              : recog_240 (rtx x1 ATTRIBUTE_UNUSED,
   14426              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14427              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14428              : {
   14429              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14430              :   rtx x2, x3, x4, x5;
   14431              :   int res ATTRIBUTE_UNUSED;
   14432              :   x2 = XEXP (x1, 0);
   14433              :   operands[0] = x2;
   14434              :   x3 = XEXP (x1, 1);
   14435              :   x4 = XVECEXP (x3, 0, 0);
   14436              :   operands[1] = x4;
   14437              :   x5 = XVECEXP (x3, 0, 1);
   14438              :   operands[2] = x5;
   14439              :   if (!const_0_to_15_operand (operands[2], E_SImode))
   14440              :     return -1;
   14441              :   switch (GET_MODE (operands[0]))
   14442              :     {
   14443              :     case E_V32HFmode:
   14444              :       if (!register_operand (operands[0], E_V32HFmode)
   14445              :           || GET_MODE (x3) != E_V32HFmode
   14446              :           || !nonimmediate_operand (operands[1], E_V32HFmode)
   14447              :           || !(
   14448              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14449              : (TARGET_AVX512F) && 
   14450              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14451              : (TARGET_AVX512FP16)))
   14452              :         return -1;
   14453              :       return 10110; /* avx512bw_getmantv32hf */
   14454              : 
   14455              :     case E_V16HFmode:
   14456              :       if (!register_operand (operands[0], E_V16HFmode)
   14457              :           || GET_MODE (x3) != E_V16HFmode
   14458              :           || !nonimmediate_operand (operands[1], E_V16HFmode)
   14459              :           || !(
   14460              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14461              : (TARGET_AVX512F) && 
   14462              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14463              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   14464              :         return -1;
   14465              :       return 10114; /* avx512vl_getmantv16hf */
   14466              : 
   14467              :     case E_V8HFmode:
   14468              :       if (!register_operand (operands[0], E_V8HFmode)
   14469              :           || GET_MODE (x3) != E_V8HFmode
   14470              :           || !nonimmediate_operand (operands[1], E_V8HFmode)
   14471              :           || !(
   14472              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14473              : (TARGET_AVX512F) && 
   14474              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14475              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   14476              :         return -1;
   14477              :       return 10118; /* avx512fp16_getmantv8hf */
   14478              : 
   14479              :     case E_V16SFmode:
   14480              :       if (!register_operand (operands[0], E_V16SFmode)
   14481              :           || GET_MODE (x3) != E_V16SFmode
   14482              :           || !nonimmediate_operand (operands[1], E_V16SFmode)
   14483              :           || !
   14484              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14485              : (TARGET_AVX512F))
   14486              :         return -1;
   14487              :       return 10122; /* avx512f_getmantv16sf */
   14488              : 
   14489              :     case E_V8SFmode:
   14490              :       if (!register_operand (operands[0], E_V8SFmode)
   14491              :           || GET_MODE (x3) != E_V8SFmode
   14492              :           || !nonimmediate_operand (operands[1], E_V8SFmode)
   14493              :           || !(
   14494              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14495              : (TARGET_AVX512F) && 
   14496              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14497              : (TARGET_AVX512VL)))
   14498              :         return -1;
   14499              :       return 10126; /* avx512vl_getmantv8sf */
   14500              : 
   14501              :     case E_V4SFmode:
   14502              :       if (!register_operand (operands[0], E_V4SFmode)
   14503              :           || GET_MODE (x3) != E_V4SFmode
   14504              :           || !nonimmediate_operand (operands[1], E_V4SFmode)
   14505              :           || !(
   14506              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14507              : (TARGET_AVX512F) && 
   14508              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14509              : (TARGET_AVX512VL)))
   14510              :         return -1;
   14511              :       return 10130; /* avx512vl_getmantv4sf */
   14512              : 
   14513              :     case E_V8DFmode:
   14514              :       if (!register_operand (operands[0], E_V8DFmode)
   14515              :           || GET_MODE (x3) != E_V8DFmode
   14516              :           || !nonimmediate_operand (operands[1], E_V8DFmode)
   14517              :           || !
   14518              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14519              : (TARGET_AVX512F))
   14520              :         return -1;
   14521              :       return 10134; /* avx512f_getmantv8df */
   14522              : 
   14523              :     case E_V4DFmode:
   14524              :       if (!register_operand (operands[0], E_V4DFmode)
   14525              :           || GET_MODE (x3) != E_V4DFmode
   14526              :           || !nonimmediate_operand (operands[1], E_V4DFmode)
   14527              :           || !(
   14528              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14529              : (TARGET_AVX512F) && 
   14530              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14531              : (TARGET_AVX512VL)))
   14532              :         return -1;
   14533              :       return 10138; /* avx512vl_getmantv4df */
   14534              : 
   14535              :     case E_V2DFmode:
   14536              :       if (!register_operand (operands[0], E_V2DFmode)
   14537              :           || GET_MODE (x3) != E_V2DFmode
   14538              :           || !nonimmediate_operand (operands[1], E_V2DFmode)
   14539              :           || !(
   14540              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14541              : (TARGET_AVX512F) && 
   14542              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14543              : (TARGET_AVX512VL)))
   14544              :         return -1;
   14545              :       return 10142; /* avx512vl_getmantv2df */
   14546              : 
   14547              :     default:
   14548              :       return -1;
   14549              :     }
   14550              : }
   14551              : 
   14552              :  int
   14553              : recog_242 (rtx x1 ATTRIBUTE_UNUSED,
   14554              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14555              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14556              : {
   14557              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14558              :   rtx x2, x3, x4, x5;
   14559              :   int res ATTRIBUTE_UNUSED;
   14560              :   x2 = XEXP (x1, 0);
   14561              :   if (GET_CODE (x2) != REG
   14562              :       || REGNO (x2) != 17)
   14563              :     return -1;
   14564              :   x3 = XEXP (x1, 1);
   14565              :   x4 = XVECEXP (x3, 0, 0);
   14566              :   operands[0] = x4;
   14567              :   x5 = XVECEXP (x3, 0, 1);
   14568              :   operands[1] = x5;
   14569              :   switch (GET_MODE (operands[0]))
   14570              :     {
   14571              :     case E_QImode:
   14572              :       if (register_operand (operands[0], E_QImode)
   14573              :           && register_operand (operands[1], E_QImode)
   14574              :           && (
   14575              : #line 2382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14576              : (TARGET_AVX512F) && 
   14577              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14578              : (TARGET_AVX512DQ)))
   14579              :         return 2683; /* *kortestqi */
   14580              :       break;
   14581              : 
   14582              :     case E_HImode:
   14583              :       if (register_operand (operands[0], E_HImode)
   14584              :           && register_operand (operands[1], E_HImode)
   14585              :           && 
   14586              : #line 2382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14587              : (TARGET_AVX512F))
   14588              :         return 2684; /* *kortesthi */
   14589              :       break;
   14590              : 
   14591              :     case E_SImode:
   14592              :       if (register_operand (operands[0], E_SImode)
   14593              :           && register_operand (operands[1], E_SImode)
   14594              :           && (
   14595              : #line 2382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14596              : (TARGET_AVX512F) && 
   14597              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14598              : (TARGET_AVX512BW)))
   14599              :         return 2685; /* *kortestsi */
   14600              :       break;
   14601              : 
   14602              :     case E_DImode:
   14603              :       if (register_operand (operands[0], E_DImode)
   14604              :           && register_operand (operands[1], E_DImode)
   14605              :           && (
   14606              : #line 2382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14607              : (TARGET_AVX512F) && 
   14608              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14609              : (TARGET_AVX512BW)))
   14610              :         return 2686; /* *kortestdi */
   14611              :       break;
   14612              : 
   14613              :     default:
   14614              :       break;
   14615              :     }
   14616              :   switch (GET_MODE (x2))
   14617              :     {
   14618              :     case E_CCCmode:
   14619              :       if (GET_MODE (x3) != E_CCCmode)
   14620              :         return -1;
   14621              :       switch (pattern969 ())
   14622              :         {
   14623              :         case 0:
   14624              :           if (!(
   14625              : #line 2395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14626              : (TARGET_AVX512F) && 
   14627              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14628              : (TARGET_AVX512DQ)))
   14629              :             return -1;
   14630              :           return 2687; /* kortestqi_ccc */
   14631              : 
   14632              :         case 1:
   14633              :           if (!
   14634              : #line 2395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14635              : (TARGET_AVX512F))
   14636              :             return -1;
   14637              :           return 2688; /* kortesthi_ccc */
   14638              : 
   14639              :         case 2:
   14640              :           if (!(
   14641              : #line 2395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14642              : (TARGET_AVX512F) && 
   14643              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14644              : (TARGET_AVX512BW)))
   14645              :             return -1;
   14646              :           return 2689; /* kortestsi_ccc */
   14647              : 
   14648              :         case 3:
   14649              :           if (!(
   14650              : #line 2395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14651              : (TARGET_AVX512F) && 
   14652              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14653              : (TARGET_AVX512BW)))
   14654              :             return -1;
   14655              :           return 2690; /* kortestdi_ccc */
   14656              : 
   14657              :         default:
   14658              :           return -1;
   14659              :         }
   14660              : 
   14661              :     case E_CCZmode:
   14662              :       if (GET_MODE (x3) != E_CCZmode)
   14663              :         return -1;
   14664              :       switch (pattern969 ())
   14665              :         {
   14666              :         case 0:
   14667              :           if (!(
   14668              : #line 2403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14669              : (TARGET_AVX512F) && 
   14670              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14671              : (TARGET_AVX512DQ)))
   14672              :             return -1;
   14673              :           return 2691; /* kortestqi_ccz */
   14674              : 
   14675              :         case 1:
   14676              :           if (!
   14677              : #line 2403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14678              : (TARGET_AVX512F))
   14679              :             return -1;
   14680              :           return 2692; /* kortesthi_ccz */
   14681              : 
   14682              :         case 2:
   14683              :           if (!(
   14684              : #line 2403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14685              : (TARGET_AVX512F) && 
   14686              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14687              : (TARGET_AVX512BW)))
   14688              :             return -1;
   14689              :           return 2693; /* kortestsi_ccz */
   14690              : 
   14691              :         case 3:
   14692              :           if (!(
   14693              : #line 2403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14694              : (TARGET_AVX512F) && 
   14695              : #line 2104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14696              : (TARGET_AVX512BW)))
   14697              :             return -1;
   14698              :           return 2694; /* kortestdi_ccz */
   14699              : 
   14700              :         default:
   14701              :           return -1;
   14702              :         }
   14703              : 
   14704              :     default:
   14705              :       return -1;
   14706              :     }
   14707              : }
   14708              : 
   14709              :  int
   14710              : recog_251 (rtx x1 ATTRIBUTE_UNUSED,
   14711              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14712              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14713              : {
   14714              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14715              :   rtx x2, x3, x4, x5, x6, x7, x8;
   14716              :   int res ATTRIBUTE_UNUSED;
   14717              :   x2 = XEXP (x1, 0);
   14718              :   operands[0] = x2;
   14719              :   x3 = XEXP (x1, 1);
   14720              :   x4 = XVECEXP (x3, 0, 2);
   14721              :   switch (GET_CODE (x4))
   14722              :     {
   14723              :     case LT:
   14724              :       x5 = XVECEXP (x3, 0, 0);
   14725              :       operands[1] = x5;
   14726              :       switch (pattern670 (x3))
   14727              :         {
   14728              :         case 0:
   14729              :           if ((
   14730              : #line 3416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14731              : (TARGET_SSE && ix86_pre_reload_split ()
   14732              :    && ((rtx_equal_p (operands[1], operands[3])
   14733              :         && rtx_equal_p (operands[2], operands[4]))
   14734              :        || (rtx_equal_p (operands[1], operands[4])
   14735              :            && rtx_equal_p (operands[2], operands[3])))) && 
   14736              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14737              : (TARGET_AVX)))
   14738              :             return 3108; /* *minmaxv8sf3_2 */
   14739              :           break;
   14740              : 
   14741              :         case 1:
   14742              :           if (
   14743              : #line 3416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14744              : (TARGET_SSE && ix86_pre_reload_split ()
   14745              :    && ((rtx_equal_p (operands[1], operands[3])
   14746              :         && rtx_equal_p (operands[2], operands[4]))
   14747              :        || (rtx_equal_p (operands[1], operands[4])
   14748              :            && rtx_equal_p (operands[2], operands[3])))))
   14749              :             return 3109; /* *minmaxv4sf3_2 */
   14750              :           break;
   14751              : 
   14752              :         case 2:
   14753              :           if ((
   14754              : #line 3416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14755              : (TARGET_SSE && ix86_pre_reload_split ()
   14756              :    && ((rtx_equal_p (operands[1], operands[3])
   14757              :         && rtx_equal_p (operands[2], operands[4]))
   14758              :        || (rtx_equal_p (operands[1], operands[4])
   14759              :            && rtx_equal_p (operands[2], operands[3])))) && 
   14760              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14761              : (TARGET_AVX)))
   14762              :             return 3110; /* *minmaxv4df3_2 */
   14763              :           break;
   14764              : 
   14765              :         case 3:
   14766              :           if ((
   14767              : #line 3416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14768              : (TARGET_SSE && ix86_pre_reload_split ()
   14769              :    && ((rtx_equal_p (operands[1], operands[3])
   14770              :         && rtx_equal_p (operands[2], operands[4]))
   14771              :        || (rtx_equal_p (operands[1], operands[4])
   14772              :            && rtx_equal_p (operands[2], operands[3])))) && 
   14773              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14774              : (TARGET_SSE2)))
   14775              :             return 3111; /* *minmaxv2df3_2 */
   14776              :           break;
   14777              : 
   14778              :         case 4:
   14779              :           if ((
   14780              : #line 24124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14781              : (TARGET_SSE4_1) && 
   14782              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14783              : (TARGET_AVX)))
   14784              :             return 8764; /* *avx_blendvps256_lt */
   14785              :           break;
   14786              : 
   14787              :         case 5:
   14788              :           if (
   14789              : #line 24124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14790              : (TARGET_SSE4_1))
   14791              :             return 8765; /* *sse4_1_blendvps_lt */
   14792              :           break;
   14793              : 
   14794              :         case 6:
   14795              :           if ((
   14796              : #line 24124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14797              : (TARGET_SSE4_1) && 
   14798              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14799              : (TARGET_AVX)))
   14800              :             return 8766; /* *avx_blendvpd256_lt */
   14801              :           break;
   14802              : 
   14803              :         case 7:
   14804              :           if ((
   14805              : #line 24124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14806              : (TARGET_SSE4_1) && 
   14807              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14808              : (TARGET_SSE2)))
   14809              :             return 8767; /* *sse4_1_blendvpd_lt */
   14810              :           break;
   14811              : 
   14812              :         case 8:
   14813              :           if ((
   14814              : #line 24451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14815              : (TARGET_SSE4_1) && 
   14816              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14817              : (TARGET_AVX2)))
   14818              :             return 8811; /* *avx2_pblendvb_lt */
   14819              :           break;
   14820              : 
   14821              :         case 9:
   14822              :           if (
   14823              : #line 24451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14824              : (TARGET_SSE4_1))
   14825              :             return 8812; /* *sse4_1_pblendvb_lt */
   14826              :           break;
   14827              : 
   14828              :         default:
   14829              :           break;
   14830              :         }
   14831              :       x6 = XEXP (x4, 0);
   14832              :       if (GET_CODE (x6) != SUBREG)
   14833              :         return -1;
   14834              :       switch (pattern672 (x3))
   14835              :         {
   14836              :         case 0:
   14837              :           if (!(
   14838              : #line 24501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14839              : (TARGET_SSE4_1
   14840              :    && GET_MODE_CLASS (GET_MODE (operands[3])) == MODE_VECTOR_INT
   14841              :    && GET_MODE_SIZE (GET_MODE (operands[3])) == 32
   14842              :    && ix86_pre_reload_split ()) && 
   14843              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14844              : (TARGET_AVX2)))
   14845              :             return -1;
   14846              :           return 8815; /* *avx2_pblendvb_lt_subreg_not */
   14847              : 
   14848              :         case 1:
   14849              :           if (!
   14850              : #line 24501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14851              : (TARGET_SSE4_1
   14852              :    && GET_MODE_CLASS (GET_MODE (operands[3])) == MODE_VECTOR_INT
   14853              :    && GET_MODE_SIZE (GET_MODE (operands[3])) == 16
   14854              :    && ix86_pre_reload_split ()))
   14855              :             return -1;
   14856              :           return 8816; /* *sse4_1_pblendvb_lt_subreg_not */
   14857              : 
   14858              :         default:
   14859              :           return -1;
   14860              :         }
   14861              : 
   14862              :     case REG:
   14863              :     case SUBREG:
   14864              :       operands[3] = x4;
   14865              :       x5 = XVECEXP (x3, 0, 0);
   14866              :       operands[1] = x5;
   14867              :       x7 = XVECEXP (x3, 0, 1);
   14868              :       operands[2] = x7;
   14869              :       switch (GET_MODE (operands[0]))
   14870              :         {
   14871              :         case E_V8SFmode:
   14872              :           if (pattern1038 (x3, 
   14873              : E_V8SFmode) == 0
   14874              :               && (
   14875              : #line 24058 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14876              : (TARGET_SSE4_1) && 
   14877              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14878              : (TARGET_AVX)))
   14879              :             return 8758; /* avx_blendvps256 */
   14880              :           break;
   14881              : 
   14882              :         case E_V4SFmode:
   14883              :           if (pattern1038 (x3, 
   14884              : E_V4SFmode) == 0
   14885              :               && 
   14886              : #line 24058 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14887              : (TARGET_SSE4_1))
   14888              :             return 8759; /* sse4_1_blendvps */
   14889              :           break;
   14890              : 
   14891              :         case E_V4DFmode:
   14892              :           if (pattern1038 (x3, 
   14893              : E_V4DFmode) == 0
   14894              :               && (
   14895              : #line 24058 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14896              : (TARGET_SSE4_1) && 
   14897              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14898              : (TARGET_AVX)))
   14899              :             return 8760; /* avx_blendvpd256 */
   14900              :           break;
   14901              : 
   14902              :         case E_V2DFmode:
   14903              :           if (pattern1038 (x3, 
   14904              : E_V2DFmode) == 0
   14905              :               && (
   14906              : #line 24058 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14907              : (TARGET_SSE4_1) && 
   14908              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14909              : (TARGET_SSE2)))
   14910              :             return 8761; /* sse4_1_blendvpd */
   14911              :           break;
   14912              : 
   14913              :         default:
   14914              :           break;
   14915              :         }
   14916              :       operands[1] = x5;
   14917              :       operands[2] = x7;
   14918              :       if (GET_CODE (x4) == SUBREG
   14919              :           && known_eq (SUBREG_BYTE (x4), 0))
   14920              :         {
   14921              :           x6 = XEXP (x4, 0);
   14922              :           switch (GET_CODE (x6))
   14923              :             {
   14924              :             case LT:
   14925              :               x8 = XEXP (x6, 0);
   14926              :               operands[3] = x8;
   14927              :               switch (pattern1235 (x3))
   14928              :                 {
   14929              :                 case 0:
   14930              :                   if (
   14931              : #line 24177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14932              : (TARGET_SSE4_1))
   14933              :                     return 8772; /* *sse4_1_blendvps_ltint */
   14934              :                   break;
   14935              : 
   14936              :                 case 1:
   14937              :                   if (
   14938              : #line 24177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14939              : (TARGET_SSE4_1))
   14940              :                     return 8773; /* *sse4_1_blendvpd_ltint */
   14941              :                   break;
   14942              : 
   14943              :                 case 2:
   14944              :                   if ((
   14945              : #line 24177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14946              : (TARGET_SSE4_1) && 
   14947              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14948              : (TARGET_AVX)))
   14949              :                     return 8774; /* *avx_blendvps256_ltint */
   14950              :                   break;
   14951              : 
   14952              :                 case 3:
   14953              :                   if ((
   14954              : #line 24177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14955              : (TARGET_SSE4_1) && 
   14956              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14957              : (TARGET_AVX)))
   14958              :                     return 8775; /* *avx_blendvpd256_ltint */
   14959              :                   break;
   14960              : 
   14961              :                 default:
   14962              :                   break;
   14963              :                 }
   14964              :               if (GET_CODE (x8) == SUBREG)
   14965              :                 {
   14966              :                   switch (pattern1236 (x3))
   14967              :                     {
   14968              :                     case 0:
   14969              :                       if (
   14970              : #line 24244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14971              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   14972              :                         return 8780; /* *sse4_1_blendvps_not_ltint */
   14973              :                       break;
   14974              : 
   14975              :                     case 1:
   14976              :                       if (
   14977              : #line 24244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14978              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   14979              :                         return 8781; /* *sse4_1_blendvpd_not_ltint */
   14980              :                       break;
   14981              : 
   14982              :                     case 2:
   14983              :                       if ((
   14984              : #line 24244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14985              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   14986              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14987              : (TARGET_AVX)))
   14988              :                         return 8782; /* *avx_blendvps256_not_ltint */
   14989              :                       break;
   14990              : 
   14991              :                     case 3:
   14992              :                       if ((
   14993              : #line 24244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14994              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   14995              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14996              : (TARGET_AVX)))
   14997              :                         return 8783; /* *avx_blendvpd256_not_ltint */
   14998              :                       break;
   14999              : 
   15000              :                     default:
   15001              :                       break;
   15002              :                     }
   15003              :                 }
   15004              :               break;
   15005              : 
   15006              :             case GT:
   15007              :               x8 = XEXP (x6, 0);
   15008              :               operands[3] = x8;
   15009              :               switch (pattern1237 (x3))
   15010              :                 {
   15011              :                 case 0:
   15012              :                   if (
   15013              : #line 24209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15014              : (TARGET_SSE4_1))
   15015              :                     return 8776; /* *sse4_1_blendvps_gtint */
   15016              :                   break;
   15017              : 
   15018              :                 case 1:
   15019              :                   if (
   15020              : #line 24209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15021              : (TARGET_SSE4_1))
   15022              :                     return 8777; /* *sse4_1_blendvpd_gtint */
   15023              :                   break;
   15024              : 
   15025              :                 case 2:
   15026              :                   if ((
   15027              : #line 24209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15028              : (TARGET_SSE4_1) && 
   15029              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15030              : (TARGET_AVX)))
   15031              :                     return 8778; /* *avx_blendvps256_gtint */
   15032              :                   break;
   15033              : 
   15034              :                 case 3:
   15035              :                   if ((
   15036              : #line 24209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15037              : (TARGET_SSE4_1) && 
   15038              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15039              : (TARGET_AVX)))
   15040              :                     return 8779; /* *avx_blendvpd256_gtint */
   15041              :                   break;
   15042              : 
   15043              :                 default:
   15044              :                   break;
   15045              :                 }
   15046              :               if (GET_CODE (x8) == SUBREG)
   15047              :                 {
   15048              :                   switch (pattern1238 (x3))
   15049              :                     {
   15050              :                     case 0:
   15051              :                       if (
   15052              : #line 24270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15053              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   15054              :                         return 8784; /* *sse4_1_blendvps_not_gtint */
   15055              :                       break;
   15056              : 
   15057              :                     case 1:
   15058              :                       if (
   15059              : #line 24270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15060              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   15061              :                         return 8785; /* *sse4_1_blendvpd_not_gtint */
   15062              :                       break;
   15063              : 
   15064              :                     case 2:
   15065              :                       if ((
   15066              : #line 24270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15067              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   15068              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15069              : (TARGET_AVX)))
   15070              :                         return 8786; /* *avx_blendvps256_not_gtint */
   15071              :                       break;
   15072              : 
   15073              :                     case 3:
   15074              :                       if ((
   15075              : #line 24270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15076              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   15077              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15078              : (TARGET_AVX)))
   15079              :                         return 8787; /* *avx_blendvpd256_not_gtint */
   15080              :                       break;
   15081              : 
   15082              :                     default:
   15083              :                       break;
   15084              :                     }
   15085              :                 }
   15086              :               break;
   15087              : 
   15088              :             default:
   15089              :               break;
   15090              :             }
   15091              :         }
   15092              :       operands[3] = x4;
   15093              :       switch (GET_MODE (operands[0]))
   15094              :         {
   15095              :         case E_V32QImode:
   15096              :           if (pattern1038 (x3, 
   15097              : E_V32QImode) != 0
   15098              :               || !(
   15099              : #line 24399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15100              : (TARGET_SSE4_1) && 
   15101              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15102              : (TARGET_AVX2)))
   15103              :             return -1;
   15104              :           return 8809; /* avx2_pblendvb */
   15105              : 
   15106              :         case E_V16QImode:
   15107              :           if (pattern1038 (x3, 
   15108              : E_V16QImode) != 0
   15109              :               || !
   15110              : #line 24399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15111              : (TARGET_SSE4_1))
   15112              :             return -1;
   15113              :           return 8810; /* sse4_1_pblendvb */
   15114              : 
   15115              :         default:
   15116              :           return -1;
   15117              :         }
   15118              : 
   15119              :     case GT:
   15120              :       x5 = XVECEXP (x3, 0, 0);
   15121              :       operands[1] = x5;
   15122              :       switch (pattern675 (x3))
   15123              :         {
   15124              :         case 0:
   15125              :           if ((
   15126              : #line 24150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15127              : (TARGET_SSE4_1) && 
   15128              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15129              : (TARGET_AVX)))
   15130              :             return 8768; /* *avx_blendvps256_gt */
   15131              :           break;
   15132              : 
   15133              :         case 1:
   15134              :           if (
   15135              : #line 24150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15136              : (TARGET_SSE4_1))
   15137              :             return 8769; /* *sse4_1_blendvps_gt */
   15138              :           break;
   15139              : 
   15140              :         case 2:
   15141              :           if ((
   15142              : #line 24150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15143              : (TARGET_SSE4_1) && 
   15144              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15145              : (TARGET_AVX)))
   15146              :             return 8770; /* *avx_blendvpd256_gt */
   15147              :           break;
   15148              : 
   15149              :         case 3:
   15150              :           if ((
   15151              : #line 24150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15152              : (TARGET_SSE4_1) && 
   15153              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15154              : (TARGET_SSE2)))
   15155              :             return 8771; /* *sse4_1_blendvpd_gt */
   15156              :           break;
   15157              : 
   15158              :         case 4:
   15159              :           if ((
   15160              : #line 24475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15161              : (TARGET_SSE4_1) && 
   15162              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15163              : (TARGET_AVX2)))
   15164              :             return 8813; /* *avx2_pblendvb_gt */
   15165              :           break;
   15166              : 
   15167              :         case 5:
   15168              :           if (
   15169              : #line 24475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15170              : (TARGET_SSE4_1))
   15171              :             return 8814; /* *sse4_1_pblendvb_gt */
   15172              :           break;
   15173              : 
   15174              :         default:
   15175              :           break;
   15176              :         }
   15177              :       x6 = XEXP (x4, 0);
   15178              :       if (GET_CODE (x6) != SUBREG)
   15179              :         return -1;
   15180              :       switch (pattern677 (x3))
   15181              :         {
   15182              :         case 0:
   15183              :           if (!(
   15184              : #line 24523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15185              : (TARGET_SSE4_1
   15186              :    && GET_MODE_CLASS (GET_MODE (operands[3])) == MODE_VECTOR_INT
   15187              :    && GET_MODE_SIZE (GET_MODE (operands[3])) == 32
   15188              :    && ix86_pre_reload_split ()) && 
   15189              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15190              : (TARGET_AVX2)))
   15191              :             return -1;
   15192              :           return 8817; /* *avx2_pblendvb_gt_subreg_not */
   15193              : 
   15194              :         case 1:
   15195              :           if (!
   15196              : #line 24523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15197              : (TARGET_SSE4_1
   15198              :    && GET_MODE_CLASS (GET_MODE (operands[3])) == MODE_VECTOR_INT
   15199              :    && GET_MODE_SIZE (GET_MODE (operands[3])) == 16
   15200              :    && ix86_pre_reload_split ()))
   15201              :             return -1;
   15202              :           return 8818; /* *sse4_1_pblendvb_gt_subreg_not */
   15203              : 
   15204              :         default:
   15205              :           return -1;
   15206              :         }
   15207              : 
   15208              :     default:
   15209              :       return -1;
   15210              :     }
   15211              : }
   15212              : 
   15213              :  int
   15214              : recog_260 (rtx x1 ATTRIBUTE_UNUSED,
   15215              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15216              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15217              : {
   15218              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15219              :   int res ATTRIBUTE_UNUSED;
   15220              :   switch (pattern181 (x1))
   15221              :     {
   15222              :     case 0:
   15223              :       if (!
   15224              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15225              : (TARGET_AVX512VBMI2))
   15226              :         return -1;
   15227              :       return 10305; /* vpshld_v32hi */
   15228              : 
   15229              :     case 1:
   15230              :       if (!
   15231              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15232              : (TARGET_AVX512VBMI2))
   15233              :         return -1;
   15234              :       return 10307; /* vpshld_v16si */
   15235              : 
   15236              :     case 2:
   15237              :       if (!
   15238              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15239              : (TARGET_AVX512VBMI2))
   15240              :         return -1;
   15241              :       return 10309; /* vpshld_v8di */
   15242              : 
   15243              :     case 3:
   15244              :       if (!(
   15245              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15246              : (TARGET_AVX512VBMI2) && 
   15247              : #line 747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15248              : (TARGET_AVX512VL)))
   15249              :         return -1;
   15250              :       return 10311; /* vpshld_v16hi */
   15251              : 
   15252              :     case 4:
   15253              :       if (!(
   15254              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15255              : (TARGET_AVX512VBMI2) && 
   15256              : #line 747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15257              : (TARGET_AVX512VL)))
   15258              :         return -1;
   15259              :       return 10313; /* vpshld_v8si */
   15260              : 
   15261              :     case 5:
   15262              :       if (!(
   15263              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15264              : (TARGET_AVX512VBMI2) && 
   15265              : #line 748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15266              : (TARGET_AVX512VL)))
   15267              :         return -1;
   15268              :       return 10315; /* vpshld_v4di */
   15269              : 
   15270              :     case 6:
   15271              :       if (!(
   15272              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15273              : (TARGET_AVX512VBMI2) && 
   15274              : #line 748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15275              : (TARGET_AVX512VL)))
   15276              :         return -1;
   15277              :       return 10317; /* vpshld_v8hi */
   15278              : 
   15279              :     case 7:
   15280              :       if (!(
   15281              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15282              : (TARGET_AVX512VBMI2) && 
   15283              : #line 749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15284              : (TARGET_AVX512VL)))
   15285              :         return -1;
   15286              :       return 10319; /* vpshld_v4si */
   15287              : 
   15288              :     case 8:
   15289              :       if (!(
   15290              : #line 31467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15291              : (TARGET_AVX512VBMI2) && 
   15292              : #line 749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15293              : (TARGET_AVX512VL)))
   15294              :         return -1;
   15295              :       return 10321; /* vpshld_v2di */
   15296              : 
   15297              :     default:
   15298              :       return -1;
   15299              :     }
   15300              : }
   15301              : 
   15302              :  int
   15303              : recog_266 (rtx x1 ATTRIBUTE_UNUSED,
   15304              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15305              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15306              : {
   15307              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15308              :   rtx x2, x3, x4, x5;
   15309              :   int res ATTRIBUTE_UNUSED;
   15310              :   x2 = XEXP (x1, 0);
   15311              :   operands[0] = x2;
   15312              :   x3 = XEXP (x1, 1);
   15313              :   x4 = XVECEXP (x3, 0, 0);
   15314              :   operands[1] = x4;
   15315              :   x5 = XVECEXP (x3, 0, 1);
   15316              :   operands[2] = x5;
   15317              :   switch (pattern679 (x3))
   15318              :     {
   15319              :     case 0:
   15320              :       if (
   15321              : #line 7564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15322              : (TARGET_AVX512FP16 && 1 && 1))
   15323              :         return 4368; /* fma_fmaddc_v32hf */
   15324              :       break;
   15325              : 
   15326              :     case 1:
   15327              :       if ((
   15328              : #line 7564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15329              : (TARGET_AVX512FP16 && 1 && 1) && 
   15330              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15331              : (TARGET_AVX512VL)))
   15332              :         return 4376; /* fma_fmaddc_v16hf */
   15333              :       break;
   15334              : 
   15335              :     case 2:
   15336              :       if ((
   15337              : #line 7564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15338              : (TARGET_AVX512FP16 && 1 && 1) && 
   15339              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15340              : (TARGET_AVX512VL)))
   15341              :         return 4380; /* fma_fmaddc_v8hf */
   15342              :       break;
   15343              : 
   15344              :     default:
   15345              :       break;
   15346              :     }
   15347              :   if (GET_CODE (x5) != SUBREG
   15348              :       || maybe_ne (SUBREG_BYTE (x5), 0))
   15349              :     return -1;
   15350              :   switch (pattern604 (x3))
   15351              :     {
   15352              :     case 0:
   15353              :       if (!
   15354              : #line 7643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15355              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()))
   15356              :         return -1;
   15357              :       return 4402; /* fma_v32hf_fmaddc_bcst */
   15358              : 
   15359              :     case 1:
   15360              :       if (!(
   15361              : #line 7643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15362              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   15363              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15364              : (TARGET_AVX512VL)))
   15365              :         return -1;
   15366              :       return 4403; /* fma_v16hf_fmaddc_bcst */
   15367              : 
   15368              :     case 2:
   15369              :       if (!(
   15370              : #line 7643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15371              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   15372              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15373              : (TARGET_AVX512VL)))
   15374              :         return -1;
   15375              :       return 4404; /* fma_v8hf_fmaddc_bcst */
   15376              : 
   15377              :     default:
   15378              :       return -1;
   15379              :     }
   15380              : }
   15381              : 
   15382              :  int
   15383              : recog_273 (rtx x1 ATTRIBUTE_UNUSED,
   15384              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15385              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15386              : {
   15387              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15388              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   15389              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   15390              :   int res ATTRIBUTE_UNUSED;
   15391              :   x2 = XEXP (x1, 1);
   15392              :   x3 = XEXP (x2, 0);
   15393              :   x4 = XEXP (x3, 2);
   15394              :   if (!register_operand (x4, E_QImode))
   15395              :     return -1;
   15396              :   x5 = XEXP (x3, 0);
   15397              :   switch (GET_CODE (x5))
   15398              :     {
   15399              :     case FLOAT:
   15400              :       switch (pattern505 (x2))
   15401              :         {
   15402              :         case 0:
   15403              :           if (!
   15404              : #line 8111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15405              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15406              :             return -1;
   15407              :           return 4576; /* *avx512fp16_vcvtdq2ph_v4si_mask */
   15408              : 
   15409              :         case 1:
   15410              :           if (!
   15411              : #line 8111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15412              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15413              :             return -1;
   15414              :           return 4578; /* *avx512fp16_vcvtqq2ph_v4di_mask */
   15415              : 
   15416              :         case 2:
   15417              :           if (!
   15418              : #line 8187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15419              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15420              :             return -1;
   15421              :           return 4586; /* *avx512fp16_vcvtqq2ph_v2di_mask */
   15422              : 
   15423              :         case 3:
   15424              :           if (!
   15425              : #line 9702 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15426              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   15427              :             return -1;
   15428              :           return 5030; /* *floatv2div2sf2_mask */
   15429              : 
   15430              :         case 4:
   15431              :           if (!
   15432              : #line 8126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15433              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15434              :             return -1;
   15435              :           return 4580; /* *avx512fp16_vcvtdq2ph_v4si_mask_1 */
   15436              : 
   15437              :         case 5:
   15438              :           if (!
   15439              : #line 8126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15440              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15441              :             return -1;
   15442              :           return 4582; /* *avx512fp16_vcvtqq2ph_v4di_mask_1 */
   15443              : 
   15444              :         case 6:
   15445              :           if (!
   15446              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15447              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15448              :             return -1;
   15449              :           return 4588; /* *avx512fp16_vcvtqq2ph_v2di_mask_1 */
   15450              : 
   15451              :         case 7:
   15452              :           if (!
   15453              : #line 9717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15454              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   15455              :             return -1;
   15456              :           return 5032; /* *floatv2div2sf2_mask_1 */
   15457              : 
   15458              :         default:
   15459              :           return -1;
   15460              :         }
   15461              : 
   15462              :     case UNSIGNED_FLOAT:
   15463              :       switch (pattern505 (x2))
   15464              :         {
   15465              :         case 0:
   15466              :           if (!
   15467              : #line 8111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15468              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15469              :             return -1;
   15470              :           return 4577; /* *avx512fp16_vcvtudq2ph_v4si_mask */
   15471              : 
   15472              :         case 1:
   15473              :           if (!
   15474              : #line 8111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15475              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15476              :             return -1;
   15477              :           return 4579; /* *avx512fp16_vcvtuqq2ph_v4di_mask */
   15478              : 
   15479              :         case 2:
   15480              :           if (!
   15481              : #line 8187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15482              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15483              :             return -1;
   15484              :           return 4587; /* *avx512fp16_vcvtuqq2ph_v2di_mask */
   15485              : 
   15486              :         case 3:
   15487              :           if (!
   15488              : #line 9702 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15489              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   15490              :             return -1;
   15491              :           return 5031; /* *floatunsv2div2sf2_mask */
   15492              : 
   15493              :         case 4:
   15494              :           if (!
   15495              : #line 8126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15496              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15497              :             return -1;
   15498              :           return 4581; /* *avx512fp16_vcvtudq2ph_v4si_mask_1 */
   15499              : 
   15500              :         case 5:
   15501              :           if (!
   15502              : #line 8126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15503              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15504              :             return -1;
   15505              :           return 4583; /* *avx512fp16_vcvtuqq2ph_v4di_mask_1 */
   15506              : 
   15507              :         case 6:
   15508              :           if (!
   15509              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15510              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15511              :             return -1;
   15512              :           return 4589; /* *avx512fp16_vcvtuqq2ph_v2di_mask_1 */
   15513              : 
   15514              :         case 7:
   15515              :           if (!
   15516              : #line 9717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15517              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   15518              :             return -1;
   15519              :           return 5033; /* *floatunsv2div2sf2_mask_1 */
   15520              : 
   15521              :         default:
   15522              :           return -1;
   15523              :         }
   15524              : 
   15525              :     case FLOAT_TRUNCATE:
   15526              :       x6 = XEXP (x5, 0);
   15527              :       operands[1] = x6;
   15528              :       x7 = XEXP (x2, 1);
   15529              :       operands[4] = x7;
   15530              :       x8 = XEXP (x3, 1);
   15531              :       switch (GET_CODE (x8))
   15532              :         {
   15533              :         case VEC_SELECT:
   15534              :           x9 = XEXP (x8, 1);
   15535              :           if (GET_CODE (x9) != PARALLEL)
   15536              :             return -1;
   15537              :           x10 = XEXP (x8, 0);
   15538              :           operands[2] = x10;
   15539              :           operands[3] = x4;
   15540              :           switch (XVECLEN (x9, 0))
   15541              :             {
   15542              :             case 4:
   15543              :               if (pattern1229 (x9, 
   15544              : 3, 
   15545              : 2, 
   15546              : 1, 
   15547              : 0) != 0)
   15548              :                 return -1;
   15549              :               switch (GET_MODE (operands[0]))
   15550              :                 {
   15551              :                 case E_V8HFmode:
   15552              :                   if (!register_operand (operands[0], E_V8HFmode)
   15553              :                       || GET_MODE (x2) != E_V8HFmode
   15554              :                       || GET_MODE (x3) != E_V4HFmode
   15555              :                       || GET_MODE (x5) != E_V4HFmode
   15556              :                       || GET_MODE (x8) != E_V4HFmode
   15557              :                       || !nonimm_or_0_operand (operands[2], E_V8HFmode))
   15558              :                     return -1;
   15559              :                   switch (pattern1568 ())
   15560              :                     {
   15561              :                     case 0:
   15562              :                       if (!
   15563              : #line 8582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15564              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15565              :                         return -1;
   15566              :                       return 4800; /* *avx512fp16_vcvtpd2ph_v4df_mask */
   15567              : 
   15568              :                     case 1:
   15569              :                       if (!
   15570              : #line 8582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15571              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15572              :                         return -1;
   15573              :                       return 4801; /* *avx512fp16_vcvtps2ph_v4sf_mask */
   15574              : 
   15575              :                     default:
   15576              :                       return -1;
   15577              :                     }
   15578              : 
   15579              :                 case E_V8BFmode:
   15580              :                   if (pattern501 (x2, 
   15581              : E_V4BFmode, 
   15582              : E_V8BFmode, 
   15583              : E_V4SFmode) != 0
   15584              :                       || !
   15585              : #line 32170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15586              : (TARGET_AVX512BF16 && TARGET_AVX512VL))
   15587              :                     return -1;
   15588              :                   return 10449; /* avx512f_cvtneps2bf16_v4sf_mask_1 */
   15589              : 
   15590              :                 default:
   15591              :                   return -1;
   15592              :                 }
   15593              : 
   15594              :             case 2:
   15595              :               switch (pattern502 (x2, 
   15596              : E_V2DFmode))
   15597              :                 {
   15598              :                 case 0:
   15599              :                   if (!
   15600              : #line 8658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15601              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15602              :                     return -1;
   15603              :                   return 4805; /* *avx512fp16_vcvtpd2ph_v2df_mask */
   15604              : 
   15605              :                 case 1:
   15606              :                   if (!
   15607              : #line 10566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15608              : (TARGET_AVX512VL))
   15609              :                     return -1;
   15610              :                   return 5205; /* *sse2_cvtpd2ps_mask */
   15611              : 
   15612              :                 default:
   15613              :                   return -1;
   15614              :                 }
   15615              : 
   15616              :             default:
   15617              :               return -1;
   15618              :             }
   15619              : 
   15620              :         case CONST_INT:
   15621              :         case CONST_DOUBLE:
   15622              :         case CONST_VECTOR:
   15623              :           operands[3] = x8;
   15624              :           operands[2] = x4;
   15625              :           switch (GET_MODE (operands[0]))
   15626              :             {
   15627              :             case E_V8HFmode:
   15628              :               if (!register_operand (operands[0], E_V8HFmode)
   15629              :                   || GET_MODE (x2) != E_V8HFmode)
   15630              :                 return -1;
   15631              :               switch (GET_MODE (x3))
   15632              :                 {
   15633              :                 case E_V4HFmode:
   15634              :                   if (GET_MODE (x5) != E_V4HFmode
   15635              :                       || !const0_operand (operands[3], E_V4HFmode))
   15636              :                     return -1;
   15637              :                   switch (pattern1568 ())
   15638              :                     {
   15639              :                     case 0:
   15640              :                       if (!
   15641              : #line 8597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15642              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15643              :                         return -1;
   15644              :                       return 4802; /* *avx512fp16_vcvtpd2ph_v4df_mask_1 */
   15645              : 
   15646              :                     case 1:
   15647              :                       if (!
   15648              : #line 8597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15649              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15650              :                         return -1;
   15651              :                       return 4803; /* *avx512fp16_vcvtps2ph_v4sf_mask_1 */
   15652              : 
   15653              :                     default:
   15654              :                       return -1;
   15655              :                     }
   15656              : 
   15657              :                 case E_V2HFmode:
   15658              :                   if (pattern503 (x5, 
   15659              : E_V2DFmode) != 0
   15660              :                       || !
   15661              : #line 8673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15662              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   15663              :                     return -1;
   15664              :                   return 4806; /* *avx512fp16_vcvtpd2ph_v2df_mask_1 */
   15665              : 
   15666              :                 default:
   15667              :                   return -1;
   15668              :                 }
   15669              : 
   15670              :             case E_V4SFmode:
   15671              :               if (pattern504 (x2, 
   15672              : E_V2DFmode) != 0
   15673              :                   || !
   15674              : #line 10581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15675              : (TARGET_AVX512VL))
   15676              :                 return -1;
   15677              :               return 5206; /* *sse2_cvtpd2ps_mask_1 */
   15678              : 
   15679              :             default:
   15680              :               return -1;
   15681              :             }
   15682              : 
   15683              :         default:
   15684              :           return -1;
   15685              :         }
   15686              : 
   15687              :     case UNSPEC:
   15688              :       switch (XVECLEN (x5, 0))
   15689              :         {
   15690              :         case 1:
   15691              :           x11 = XVECEXP (x5, 0, 0);
   15692              :           operands[1] = x11;
   15693              :           switch (XINT (x5, 1))
   15694              :             {
   15695              :             case 47:
   15696              :               switch (pattern923 (x2))
   15697              :                 {
   15698              :                 case 0:
   15699              :                   if (!
   15700              : #line 9861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15701              : (TARGET_AVX512VL))
   15702              :                     return -1;
   15703              :                   return 5052; /* sse2_cvtpd2dq_mask */
   15704              : 
   15705              :                 case 1:
   15706              :                   if (!
   15707              : #line 9876 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15708              : (TARGET_AVX512VL))
   15709              :                     return -1;
   15710              :                   return 5053; /* *sse2_cvtpd2dq_mask_1 */
   15711              : 
   15712              :                 default:
   15713              :                   return -1;
   15714              :                 }
   15715              : 
   15716              :             case 157:
   15717              :               switch (pattern923 (x2))
   15718              :                 {
   15719              :                 case 0:
   15720              :                   if (!
   15721              : #line 9922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15722              : (TARGET_AVX512VL))
   15723              :                     return -1;
   15724              :                   return 5063; /* fixuns_notruncv2dfv2si2_mask */
   15725              : 
   15726              :                 case 1:
   15727              :                   if (!
   15728              : #line 9938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15729              : (TARGET_AVX512VL))
   15730              :                     return -1;
   15731              :                   return 5064; /* *fixuns_notruncv2dfv2si2_mask_1 */
   15732              : 
   15733              :                 default:
   15734              :                   return -1;
   15735              :                 }
   15736              : 
   15737              :             case 174:
   15738              :               if (GET_MODE (x5) != E_V2SImode)
   15739              :                 return -1;
   15740              :               x8 = XEXP (x3, 1);
   15741              :               if (pattern680 (x8, 
   15742              : 2, 
   15743              : E_V2SImode) != 0)
   15744              :                 return -1;
   15745              :               x9 = XEXP (x8, 1);
   15746              :               x12 = XVECEXP (x9, 0, 0);
   15747              :               if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15748              :                 return -1;
   15749              :               x13 = XVECEXP (x9, 0, 1);
   15750              :               if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   15751              :                 return -1;
   15752              :               x7 = XEXP (x2, 1);
   15753              :               if (GET_CODE (x7) != CONST_VECTOR
   15754              :                   || XVECLEN (x7, 0) != 2
   15755              :                   || GET_MODE (x7) != E_V2SImode)
   15756              :                 return -1;
   15757              :               x14 = XVECEXP (x7, 0, 0);
   15758              :               if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15759              :                 return -1;
   15760              :               x15 = XVECEXP (x7, 0, 1);
   15761              :               if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   15762              :                   || !register_operand (operands[0], E_V4SImode)
   15763              :                   || GET_MODE (x2) != E_V4SImode
   15764              :                   || GET_MODE (x3) != E_V2SImode
   15765              :                   || !nonimmediate_operand (operands[1], E_V2DFmode))
   15766              :                 return -1;
   15767              :               x10 = XEXP (x8, 0);
   15768              :               operands[2] = x10;
   15769              :               if (!nonimm_or_0_operand (operands[2], E_V4SImode))
   15770              :                 return -1;
   15771              :               operands[3] = x4;
   15772              :               if (!
   15773              : #line 9999 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15774              : (TARGET_AVX512VL))
   15775              :                 return -1;
   15776              :               return 5083; /* unspec_fixuns_truncv2dfv2si2_mask */
   15777              : 
   15778              :             case 254:
   15779              :               if (pattern924 (x2) != 0
   15780              :                   || !
   15781              : #line 32978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15782              : (TARGET_AVX10_2))
   15783              :                 return -1;
   15784              :               return 10601; /* *vcvtph2bf8v8hf_mask */
   15785              : 
   15786              :             case 255:
   15787              :               if (pattern924 (x2) != 0
   15788              :                   || !
   15789              : #line 32978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15790              : (TARGET_AVX10_2))
   15791              :                 return -1;
   15792              :               return 10602; /* *vcvtph2bf8sv8hf_mask */
   15793              : 
   15794              :             case 256:
   15795              :               if (pattern924 (x2) != 0
   15796              :                   || !
   15797              : #line 32978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15798              : (TARGET_AVX10_2))
   15799              :                 return -1;
   15800              :               return 10603; /* *vcvtph2hf8v8hf_mask */
   15801              : 
   15802              :             case 257:
   15803              :               if (pattern924 (x2) != 0
   15804              :                   || !
   15805              : #line 32978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15806              : (TARGET_AVX10_2))
   15807              :                 return -1;
   15808              :               return 10604; /* *vcvtph2hf8sv8hf_mask */
   15809              : 
   15810              :             default:
   15811              :               return -1;
   15812              :             }
   15813              : 
   15814              :         case 2:
   15815              :           x8 = XEXP (x3, 1);
   15816              :           if (pattern680 (x8, 
   15817              : 8, 
   15818              : E_V8QImode) != 0)
   15819              :             return -1;
   15820              :           x9 = XEXP (x8, 1);
   15821              :           x12 = XVECEXP (x9, 0, 0);
   15822              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15823              :             return -1;
   15824              :           x13 = XVECEXP (x9, 0, 1);
   15825              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   15826              :             return -1;
   15827              :           x16 = XVECEXP (x9, 0, 2);
   15828              :           if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 2]
   15829              :               || pattern1423 (x9, 
   15830              : 7, 
   15831              : 6, 
   15832              : 5, 
   15833              : 4, 
   15834              : 3) != 0
   15835              :               || !register_operand (operands[0], E_V16QImode)
   15836              :               || GET_MODE (x2) != E_V16QImode
   15837              :               || GET_MODE (x3) != E_V8QImode
   15838              :               || GET_MODE (x5) != E_V8QImode)
   15839              :             return -1;
   15840              :           x11 = XVECEXP (x5, 0, 0);
   15841              :           operands[1] = x11;
   15842              :           if (!register_operand (operands[1], E_V16QImode))
   15843              :             return -1;
   15844              :           x17 = XVECEXP (x5, 0, 1);
   15845              :           operands[2] = x17;
   15846              :           if (!nonimmediate_operand (operands[2], E_V8HFmode))
   15847              :             return -1;
   15848              :           x10 = XEXP (x8, 0);
   15849              :           operands[3] = x10;
   15850              :           if (!nonimm_or_0_operand (operands[3], E_V16QImode))
   15851              :             return -1;
   15852              :           operands[4] = x4;
   15853              :           x7 = XEXP (x2, 1);
   15854              :           operands[5] = x7;
   15855              :           if (!const0_operand (operands[5], E_V8QImode))
   15856              :             return -1;
   15857              :           switch (XINT (x5, 1))
   15858              :             {
   15859              :             case 246:
   15860              :               if (!
   15861              : #line 32890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15862              : (TARGET_AVX10_2))
   15863              :                 return -1;
   15864              :               return 10577; /* *vcvtbiasph2bf8v8hf_mask */
   15865              : 
   15866              :             case 247:
   15867              :               if (!
   15868              : #line 32890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15869              : (TARGET_AVX10_2))
   15870              :                 return -1;
   15871              :               return 10578; /* *vcvtbiasph2bf8sv8hf_mask */
   15872              : 
   15873              :             case 248:
   15874              :               if (!
   15875              : #line 32890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15876              : (TARGET_AVX10_2))
   15877              :                 return -1;
   15878              :               return 10579; /* *vcvtbiasph2hf8v8hf_mask */
   15879              : 
   15880              :             case 249:
   15881              :               if (!
   15882              : #line 32890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15883              : (TARGET_AVX10_2))
   15884              :                 return -1;
   15885              :               return 10580; /* *vcvtbiasph2hf8sv8hf_mask */
   15886              : 
   15887              :             default:
   15888              :               return -1;
   15889              :             }
   15890              : 
   15891              :         default:
   15892              :           return -1;
   15893              :         }
   15894              : 
   15895              :     case UNSIGNED_FIX:
   15896              :       switch (pattern507 (x2))
   15897              :         {
   15898              :         case 0:
   15899              :           if (!
   15900              : #line 10015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15901              : (TARGET_AVX512VL))
   15902              :             return -1;
   15903              :           return 5084; /* fixuns_truncv2dfv2si2_mask */
   15904              : 
   15905              :         case 1:
   15906              :           if (!
   15907              : #line 10029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15908              : (TARGET_AVX512VL))
   15909              :             return -1;
   15910              :           return 5085; /* *fixuns_truncv2dfv2si2_mask_1 */
   15911              : 
   15912              :         default:
   15913              :           return -1;
   15914              :         }
   15915              : 
   15916              :     case FIX:
   15917              :       switch (pattern507 (x2))
   15918              :         {
   15919              :         case 0:
   15920              :           if (!
   15921              : #line 10364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15922              : (TARGET_AVX512VL))
   15923              :             return -1;
   15924              :           return 5185; /* sse2_cvttpd2dq_mask */
   15925              : 
   15926              :         case 1:
   15927              :           if (!
   15928              : #line 10378 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15929              : (TARGET_AVX512VL))
   15930              :             return -1;
   15931              :           return 5186; /* *sse2_cvttpd2dq_mask_1 */
   15932              : 
   15933              :         default:
   15934              :           return -1;
   15935              :         }
   15936              : 
   15937              :     case SS_TRUNCATE:
   15938              :       switch (pattern513 (x2))
   15939              :         {
   15940              :         case 0:
   15941              :           if (!
   15942              : #line 15838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15943              : (TARGET_AVX512VL))
   15944              :             return -1;
   15945              :           return 7344; /* avx512vl_ss_truncatev2div2qi2_mask */
   15946              : 
   15947              :         case 1:
   15948              :           if (!
   15949              : #line 16276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15950              : (TARGET_AVX512VL))
   15951              :             return -1;
   15952              :           return 7459; /* avx512vl_ss_truncatev2div2hi2_mask */
   15953              : 
   15954              :         case 2:
   15955              :           if (!
   15956              : #line 16424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15957              : (TARGET_AVX512VL))
   15958              :             return -1;
   15959              :           return 7478; /* avx512vl_ss_truncatev2div2si2_mask */
   15960              : 
   15961              :         case 3:
   15962              :           if (!
   15963              : #line 15933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15964              : (TARGET_AVX512VL))
   15965              :             return -1;
   15966              :           return 7365; /* avx512vl_ss_truncatev4siv4qi2_mask */
   15967              : 
   15968              :         case 4:
   15969              :           if (!
   15970              : #line 15933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15971              : (TARGET_AVX512VL))
   15972              :             return -1;
   15973              :           return 7368; /* avx512vl_ss_truncatev4div4qi2_mask */
   15974              : 
   15975              :         case 5:
   15976              :           if (!
   15977              : #line 16189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15978              : (TARGET_AVX512VL))
   15979              :             return -1;
   15980              :           return 7435; /* avx512vl_ss_truncatev4siv4hi2_mask */
   15981              : 
   15982              :         case 6:
   15983              :           if (!
   15984              : #line 16189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15985              : (TARGET_AVX512VL))
   15986              :             return -1;
   15987              :           return 7438; /* avx512vl_ss_truncatev4div4hi2_mask */
   15988              : 
   15989              :         case 7:
   15990              :           if (!(
   15991              : #line 16031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15992              : (TARGET_AVX512VL) && 
   15993              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15994              : (TARGET_AVX512BW)))
   15995              :             return -1;
   15996              :           return 7395; /* avx512vl_ss_truncatev8hiv8qi2_mask */
   15997              : 
   15998              :         case 8:
   15999              :           if (!
   16000              : #line 16031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16001              : (TARGET_AVX512VL))
   16002              :             return -1;
   16003              :           return 7398; /* avx512vl_ss_truncatev8siv8qi2_mask */
   16004              : 
   16005              :         case 9:
   16006              :           if (!
   16007              : #line 16543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16008              : (TARGET_AVX512F))
   16009              :             return -1;
   16010              :           return 7496; /* avx512f_ss_truncatev8div16qi2_mask */
   16011              : 
   16012              :         case 10:
   16013              :           if (!
   16014              : #line 15859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16015              : (TARGET_AVX512VL))
   16016              :             return -1;
   16017              :           return 7347; /* *avx512vl_ss_truncatev2div2qi2_mask_1 */
   16018              : 
   16019              :         case 11:
   16020              :           if (!
   16021              : #line 16293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16022              : (TARGET_AVX512VL))
   16023              :             return -1;
   16024              :           return 7462; /* *avx512vl_ss_truncatev2div2hi2_mask_1 */
   16025              : 
   16026              :         case 12:
   16027              :           if (!
   16028              : #line 16439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16029              : (TARGET_AVX512VL))
   16030              :             return -1;
   16031              :           return 7481; /* *avx512vl_ss_truncatev2div2si2_mask_1 */
   16032              : 
   16033              :         case 13:
   16034              :           if (!
   16035              : #line 15954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16036              : (TARGET_AVX512VL))
   16037              :             return -1;
   16038              :           return 7371; /* *avx512vl_ss_truncatev4siv4qi2_mask_1 */
   16039              : 
   16040              :         case 14:
   16041              :           if (!
   16042              : #line 15954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16043              : (TARGET_AVX512VL))
   16044              :             return -1;
   16045              :           return 7374; /* *avx512vl_ss_truncatev4div4qi2_mask_1 */
   16046              : 
   16047              :         case 15:
   16048              :           if (!
   16049              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16050              : (TARGET_AVX512VL))
   16051              :             return -1;
   16052              :           return 7441; /* *avx512vl_ss_truncatev4siv4hi2_mask_1 */
   16053              : 
   16054              :         case 16:
   16055              :           if (!
   16056              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16057              : (TARGET_AVX512VL))
   16058              :             return -1;
   16059              :           return 7444; /* *avx512vl_ss_truncatev4div4hi2_mask_1 */
   16060              : 
   16061              :         case 17:
   16062              :           if (!(
   16063              : #line 16052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16064              : (TARGET_AVX512VL) && 
   16065              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16066              : (TARGET_AVX512BW)))
   16067              :             return -1;
   16068              :           return 7401; /* *avx512vl_ss_truncatev8hiv8qi2_mask_1 */
   16069              : 
   16070              :         case 18:
   16071              :           if (!
   16072              : #line 16052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16073              : (TARGET_AVX512VL))
   16074              :             return -1;
   16075              :           return 7404; /* *avx512vl_ss_truncatev8siv8qi2_mask_1 */
   16076              : 
   16077              :         case 19:
   16078              :           if (!
   16079              : #line 16564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16080              : (TARGET_AVX512F))
   16081              :             return -1;
   16082              :           return 7499; /* *avx512f_ss_truncatev8div16qi2_mask_1 */
   16083              : 
   16084              :         default:
   16085              :           return -1;
   16086              :         }
   16087              : 
   16088              :     case TRUNCATE:
   16089              :       switch (pattern513 (x2))
   16090              :         {
   16091              :         case 0:
   16092              :           if (!
   16093              : #line 15838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16094              : (TARGET_AVX512VL))
   16095              :             return -1;
   16096              :           return 7345; /* avx512vl_truncatev2div2qi2_mask */
   16097              : 
   16098              :         case 1:
   16099              :           if (!
   16100              : #line 16276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16101              : (TARGET_AVX512VL))
   16102              :             return -1;
   16103              :           return 7460; /* avx512vl_truncatev2div2hi2_mask */
   16104              : 
   16105              :         case 2:
   16106              :           if (!
   16107              : #line 16424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16108              : (TARGET_AVX512VL))
   16109              :             return -1;
   16110              :           return 7479; /* avx512vl_truncatev2div2si2_mask */
   16111              : 
   16112              :         case 3:
   16113              :           if (!
   16114              : #line 15933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16115              : (TARGET_AVX512VL))
   16116              :             return -1;
   16117              :           return 7366; /* avx512vl_truncatev4siv4qi2_mask */
   16118              : 
   16119              :         case 4:
   16120              :           if (!
   16121              : #line 15933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16122              : (TARGET_AVX512VL))
   16123              :             return -1;
   16124              :           return 7369; /* avx512vl_truncatev4div4qi2_mask */
   16125              : 
   16126              :         case 5:
   16127              :           if (!
   16128              : #line 16189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16129              : (TARGET_AVX512VL))
   16130              :             return -1;
   16131              :           return 7436; /* avx512vl_truncatev4siv4hi2_mask */
   16132              : 
   16133              :         case 6:
   16134              :           if (!
   16135              : #line 16189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16136              : (TARGET_AVX512VL))
   16137              :             return -1;
   16138              :           return 7439; /* avx512vl_truncatev4div4hi2_mask */
   16139              : 
   16140              :         case 7:
   16141              :           if (!(
   16142              : #line 16031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16143              : (TARGET_AVX512VL) && 
   16144              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16145              : (TARGET_AVX512BW)))
   16146              :             return -1;
   16147              :           return 7396; /* avx512vl_truncatev8hiv8qi2_mask */
   16148              : 
   16149              :         case 8:
   16150              :           if (!
   16151              : #line 16031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16152              : (TARGET_AVX512VL))
   16153              :             return -1;
   16154              :           return 7399; /* avx512vl_truncatev8siv8qi2_mask */
   16155              : 
   16156              :         case 9:
   16157              :           if (!
   16158              : #line 16543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16159              : (TARGET_AVX512F))
   16160              :             return -1;
   16161              :           return 7497; /* avx512f_truncatev8div16qi2_mask */
   16162              : 
   16163              :         case 10:
   16164              :           if (!
   16165              : #line 15859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16166              : (TARGET_AVX512VL))
   16167              :             return -1;
   16168              :           return 7348; /* *avx512vl_truncatev2div2qi2_mask_1 */
   16169              : 
   16170              :         case 11:
   16171              :           if (!
   16172              : #line 16293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16173              : (TARGET_AVX512VL))
   16174              :             return -1;
   16175              :           return 7463; /* *avx512vl_truncatev2div2hi2_mask_1 */
   16176              : 
   16177              :         case 12:
   16178              :           if (!
   16179              : #line 16439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16180              : (TARGET_AVX512VL))
   16181              :             return -1;
   16182              :           return 7482; /* *avx512vl_truncatev2div2si2_mask_1 */
   16183              : 
   16184              :         case 13:
   16185              :           if (!
   16186              : #line 15954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16187              : (TARGET_AVX512VL))
   16188              :             return -1;
   16189              :           return 7372; /* *avx512vl_truncatev4siv4qi2_mask_1 */
   16190              : 
   16191              :         case 14:
   16192              :           if (!
   16193              : #line 15954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16194              : (TARGET_AVX512VL))
   16195              :             return -1;
   16196              :           return 7375; /* *avx512vl_truncatev4div4qi2_mask_1 */
   16197              : 
   16198              :         case 15:
   16199              :           if (!
   16200              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16201              : (TARGET_AVX512VL))
   16202              :             return -1;
   16203              :           return 7442; /* *avx512vl_truncatev4siv4hi2_mask_1 */
   16204              : 
   16205              :         case 16:
   16206              :           if (!
   16207              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16208              : (TARGET_AVX512VL))
   16209              :             return -1;
   16210              :           return 7445; /* *avx512vl_truncatev4div4hi2_mask_1 */
   16211              : 
   16212              :         case 17:
   16213              :           if (!(
   16214              : #line 16052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16215              : (TARGET_AVX512VL) && 
   16216              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16217              : (TARGET_AVX512BW)))
   16218              :             return -1;
   16219              :           return 7402; /* *avx512vl_truncatev8hiv8qi2_mask_1 */
   16220              : 
   16221              :         case 18:
   16222              :           if (!
   16223              : #line 16052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16224              : (TARGET_AVX512VL))
   16225              :             return -1;
   16226              :           return 7405; /* *avx512vl_truncatev8siv8qi2_mask_1 */
   16227              : 
   16228              :         case 19:
   16229              :           if (!
   16230              : #line 16564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16231              : (TARGET_AVX512F))
   16232              :             return -1;
   16233              :           return 7500; /* *avx512f_truncatev8div16qi2_mask_1 */
   16234              : 
   16235              :         default:
   16236              :           return -1;
   16237              :         }
   16238              : 
   16239              :     case US_TRUNCATE:
   16240              :       switch (pattern513 (x2))
   16241              :         {
   16242              :         case 0:
   16243              :           if (!
   16244              : #line 15838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16245              : (TARGET_AVX512VL))
   16246              :             return -1;
   16247              :           return 7346; /* avx512vl_us_truncatev2div2qi2_mask */
   16248              : 
   16249              :         case 1:
   16250              :           if (!
   16251              : #line 16276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16252              : (TARGET_AVX512VL))
   16253              :             return -1;
   16254              :           return 7461; /* avx512vl_us_truncatev2div2hi2_mask */
   16255              : 
   16256              :         case 2:
   16257              :           if (!
   16258              : #line 16424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16259              : (TARGET_AVX512VL))
   16260              :             return -1;
   16261              :           return 7480; /* avx512vl_us_truncatev2div2si2_mask */
   16262              : 
   16263              :         case 3:
   16264              :           if (!
   16265              : #line 15933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16266              : (TARGET_AVX512VL))
   16267              :             return -1;
   16268              :           return 7367; /* avx512vl_us_truncatev4siv4qi2_mask */
   16269              : 
   16270              :         case 4:
   16271              :           if (!
   16272              : #line 15933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16273              : (TARGET_AVX512VL))
   16274              :             return -1;
   16275              :           return 7370; /* avx512vl_us_truncatev4div4qi2_mask */
   16276              : 
   16277              :         case 5:
   16278              :           if (!
   16279              : #line 16189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16280              : (TARGET_AVX512VL))
   16281              :             return -1;
   16282              :           return 7437; /* avx512vl_us_truncatev4siv4hi2_mask */
   16283              : 
   16284              :         case 6:
   16285              :           if (!
   16286              : #line 16189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16287              : (TARGET_AVX512VL))
   16288              :             return -1;
   16289              :           return 7440; /* avx512vl_us_truncatev4div4hi2_mask */
   16290              : 
   16291              :         case 7:
   16292              :           if (!(
   16293              : #line 16031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16294              : (TARGET_AVX512VL) && 
   16295              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16296              : (TARGET_AVX512BW)))
   16297              :             return -1;
   16298              :           return 7397; /* avx512vl_us_truncatev8hiv8qi2_mask */
   16299              : 
   16300              :         case 8:
   16301              :           if (!
   16302              : #line 16031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16303              : (TARGET_AVX512VL))
   16304              :             return -1;
   16305              :           return 7400; /* avx512vl_us_truncatev8siv8qi2_mask */
   16306              : 
   16307              :         case 9:
   16308              :           if (!
   16309              : #line 16543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16310              : (TARGET_AVX512F))
   16311              :             return -1;
   16312              :           return 7498; /* avx512f_us_truncatev8div16qi2_mask */
   16313              : 
   16314              :         case 10:
   16315              :           if (!
   16316              : #line 15859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16317              : (TARGET_AVX512VL))
   16318              :             return -1;
   16319              :           return 7349; /* *avx512vl_us_truncatev2div2qi2_mask_1 */
   16320              : 
   16321              :         case 11:
   16322              :           if (!
   16323              : #line 16293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16324              : (TARGET_AVX512VL))
   16325              :             return -1;
   16326              :           return 7464; /* *avx512vl_us_truncatev2div2hi2_mask_1 */
   16327              : 
   16328              :         case 12:
   16329              :           if (!
   16330              : #line 16439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16331              : (TARGET_AVX512VL))
   16332              :             return -1;
   16333              :           return 7483; /* *avx512vl_us_truncatev2div2si2_mask_1 */
   16334              : 
   16335              :         case 13:
   16336              :           if (!
   16337              : #line 15954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16338              : (TARGET_AVX512VL))
   16339              :             return -1;
   16340              :           return 7373; /* *avx512vl_us_truncatev4siv4qi2_mask_1 */
   16341              : 
   16342              :         case 14:
   16343              :           if (!
   16344              : #line 15954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16345              : (TARGET_AVX512VL))
   16346              :             return -1;
   16347              :           return 7376; /* *avx512vl_us_truncatev4div4qi2_mask_1 */
   16348              : 
   16349              :         case 15:
   16350              :           if (!
   16351              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16352              : (TARGET_AVX512VL))
   16353              :             return -1;
   16354              :           return 7443; /* *avx512vl_us_truncatev4siv4hi2_mask_1 */
   16355              : 
   16356              :         case 16:
   16357              :           if (!
   16358              : #line 16206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16359              : (TARGET_AVX512VL))
   16360              :             return -1;
   16361              :           return 7446; /* *avx512vl_us_truncatev4div4hi2_mask_1 */
   16362              : 
   16363              :         case 17:
   16364              :           if (!(
   16365              : #line 16052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16366              : (TARGET_AVX512VL) && 
   16367              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16368              : (TARGET_AVX512BW)))
   16369              :             return -1;
   16370              :           return 7403; /* *avx512vl_us_truncatev8hiv8qi2_mask_1 */
   16371              : 
   16372              :         case 18:
   16373              :           if (!
   16374              : #line 16052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16375              : (TARGET_AVX512VL))
   16376              :             return -1;
   16377              :           return 7406; /* *avx512vl_us_truncatev8siv8qi2_mask_1 */
   16378              : 
   16379              :         case 19:
   16380              :           if (!
   16381              : #line 16564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16382              : (TARGET_AVX512F))
   16383              :             return -1;
   16384              :           return 7501; /* *avx512f_us_truncatev8div16qi2_mask_1 */
   16385              : 
   16386              :         default:
   16387              :           return -1;
   16388              :         }
   16389              : 
   16390              :     default:
   16391              :       return -1;
   16392              :     }
   16393              : }
   16394              : 
   16395              :  int
   16396              : recog_292 (rtx x1 ATTRIBUTE_UNUSED,
   16397              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16398              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16399              : {
   16400              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16401              :   rtx x2, x3, x4, x5, x6, x7;
   16402              :   int res ATTRIBUTE_UNUSED;
   16403              :   x2 = XEXP (x1, 1);
   16404              :   x3 = XEXP (x2, 1);
   16405              :   x4 = XVECEXP (x3, 0, 0);
   16406              :   if (GET_CODE (x4) != CONST_INT)
   16407              :     return -1;
   16408              :   operands[2] = x4;
   16409              :   res = recog_291 (x1, insn, pnum_clobbers);
   16410              :   if (res >= 0)
   16411              :     return res;
   16412              :   x5 = XVECEXP (x3, 0, 1);
   16413              :   if (GET_CODE (x5) != CONST_INT)
   16414              :     return -1;
   16415              :   x6 = XVECEXP (x3, 0, 2);
   16416              :   if (GET_CODE (x6) != CONST_INT)
   16417              :     return -1;
   16418              :   x7 = XVECEXP (x3, 0, 3);
   16419              :   if (GET_CODE (x7) != CONST_INT)
   16420              :     return -1;
   16421              :   switch (XWINT (x4, 0))
   16422              :     {
   16423              :     case 0L:
   16424              :       if (XWINT (x5, 0) != 1L
   16425              :           || XWINT (x6, 0) != 2L
   16426              :           || XWINT (x7, 0) != 3L)
   16427              :         return -1;
   16428              :       switch (GET_MODE (operands[0]))
   16429              :         {
   16430              :         case E_V4DFmode:
   16431              :           if (!nonimmediate_operand (operands[0], E_V4DFmode)
   16432              :               || GET_MODE (x2) != E_V4DFmode
   16433              :               || !nonimmediate_operand (operands[1], E_V8DFmode)
   16434              :               || !
   16435              : #line 13033 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16436              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   16437              :             return -1;
   16438              :           return 5366; /* vec_extract_lo_v8df */
   16439              : 
   16440              :         case E_V4DImode:
   16441              :           if (!nonimmediate_operand (operands[0], E_V4DImode)
   16442              :               || GET_MODE (x2) != E_V4DImode
   16443              :               || !nonimmediate_operand (operands[1], E_V8DImode)
   16444              :               || !
   16445              : #line 13033 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16446              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   16447              :             return -1;
   16448              :           return 5367; /* vec_extract_lo_v8di */
   16449              : 
   16450              :         case E_V4SImode:
   16451              :           if (!nonimmediate_operand (operands[0], E_V4SImode)
   16452              :               || GET_MODE (x2) != E_V4SImode
   16453              :               || !nonimmediate_operand (operands[1], E_V8SImode)
   16454              :               || !
   16455              : #line 13366 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16456              : (TARGET_AVX
   16457              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   16458              :             return -1;
   16459              :           return 5390; /* vec_extract_lo_v8si */
   16460              : 
   16461              :         case E_V4SFmode:
   16462              :           if (!nonimmediate_operand (operands[0], E_V4SFmode)
   16463              :               || GET_MODE (x2) != E_V4SFmode
   16464              :               || !nonimmediate_operand (operands[1], E_V8SFmode)
   16465              :               || !
   16466              : #line 13366 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16467              : (TARGET_AVX
   16468              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   16469              :             return -1;
   16470              :           return 5391; /* vec_extract_lo_v8sf */
   16471              : 
   16472              :         default:
   16473              :           return -1;
   16474              :         }
   16475              : 
   16476              :     case 4L:
   16477              :       if (XWINT (x5, 0) != 5L
   16478              :           || XWINT (x6, 0) != 6L
   16479              :           || XWINT (x7, 0) != 7L)
   16480              :         return -1;
   16481              :       switch (GET_MODE (operands[0]))
   16482              :         {
   16483              :         case E_V4DFmode:
   16484              :           if (!nonimmediate_operand (operands[0], E_V4DFmode)
   16485              :               || GET_MODE (x2) != E_V4DFmode
   16486              :               || !register_operand (operands[1], E_V8DFmode)
   16487              :               || !
   16488              : #line 13069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16489              : (TARGET_AVX512F))
   16490              :             return -1;
   16491              :           return 5370; /* vec_extract_hi_v8df */
   16492              : 
   16493              :         case E_V4DImode:
   16494              :           if (!nonimmediate_operand (operands[0], E_V4DImode)
   16495              :               || GET_MODE (x2) != E_V4DImode
   16496              :               || !register_operand (operands[1], E_V8DImode)
   16497              :               || !
   16498              : #line 13069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16499              : (TARGET_AVX512F))
   16500              :             return -1;
   16501              :           return 5371; /* vec_extract_hi_v8di */
   16502              : 
   16503              :         case E_V4SImode:
   16504              :           if (!nonimmediate_operand (operands[0], E_V4SImode)
   16505              :               || GET_MODE (x2) != E_V4SImode
   16506              :               || !register_operand (operands[1], E_V8SImode)
   16507              :               || !
   16508              : #line 13398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16509              : (TARGET_AVX))
   16510              :             return -1;
   16511              :           return 5394; /* vec_extract_hi_v8si */
   16512              : 
   16513              :         case E_V4SFmode:
   16514              :           if (!nonimmediate_operand (operands[0], E_V4SFmode)
   16515              :               || GET_MODE (x2) != E_V4SFmode
   16516              :               || !register_operand (operands[1], E_V8SFmode)
   16517              :               || !
   16518              : #line 13398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16519              : (TARGET_AVX))
   16520              :             return -1;
   16521              :           return 5395; /* vec_extract_hi_v8sf */
   16522              : 
   16523              :         default:
   16524              :           return -1;
   16525              :         }
   16526              : 
   16527              :     default:
   16528              :       return -1;
   16529              :     }
   16530              : }
   16531              : 
   16532              :  int
   16533              : recog_299 (rtx x1 ATTRIBUTE_UNUSED,
   16534              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16535              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16536              : {
   16537              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16538              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16539              :   rtx x10, x11;
   16540              :   int res ATTRIBUTE_UNUSED;
   16541              :   x2 = XEXP (x1, 1);
   16542              :   x3 = XEXP (x2, 1);
   16543              :   x4 = XVECEXP (x3, 0, 4);
   16544              :   if (GET_CODE (x4) != CONST_INT)
   16545              :     return -1;
   16546              :   operands[6] = x4;
   16547              :   res = recog_298 (x1, insn, pnum_clobbers);
   16548              :   if (res >= 0)
   16549              :     return res;
   16550              :   if (XWINT (x4, 0) != 4L)
   16551              :     return -1;
   16552              :   x5 = XVECEXP (x3, 0, 5);
   16553              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   16554              :     return -1;
   16555              :   x6 = XVECEXP (x3, 0, 6);
   16556              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   16557              :     return -1;
   16558              :   x7 = XVECEXP (x3, 0, 7);
   16559              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   16560              :       || pattern1425 (x3) != 0
   16561              :       || !register_operand (operands[0], E_V16HImode)
   16562              :       || GET_MODE (x2) != E_V16HImode
   16563              :       || !nonimmediate_operand (operands[1], E_V16HImode)
   16564              :       || pattern756 (x3) != 0)
   16565              :     return -1;
   16566              :   x8 = XVECEXP (x3, 0, 8);
   16567              :   operands[6] = x8;
   16568              :   if (!const_8_to_11_operand (operands[6], E_VOIDmode))
   16569              :     return -1;
   16570              :   x9 = XVECEXP (x3, 0, 9);
   16571              :   operands[7] = x9;
   16572              :   if (!const_8_to_11_operand (operands[7], E_VOIDmode))
   16573              :     return -1;
   16574              :   x10 = XVECEXP (x3, 0, 10);
   16575              :   operands[8] = x10;
   16576              :   if (!const_8_to_11_operand (operands[8], E_VOIDmode))
   16577              :     return -1;
   16578              :   x11 = XVECEXP (x3, 0, 11);
   16579              :   operands[9] = x11;
   16580              :   if (!const_8_to_11_operand (operands[9], E_VOIDmode)
   16581              :       || !
   16582              : #line 21262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16583              : (TARGET_AVX2
   16584              :    && 1 && 1
   16585              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   16586              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   16587              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   16588              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[9])))
   16589              :     return -1;
   16590              :   return 8520; /* avx2_pshuflw_1 */
   16591              : }
   16592              : 
   16593              :  int
   16594              : recog_304 (rtx x1 ATTRIBUTE_UNUSED,
   16595              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16596              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16597              : {
   16598              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16599              :   rtx x2, x3, x4, x5, x6, x7;
   16600              :   int res ATTRIBUTE_UNUSED;
   16601              :   x2 = XEXP (x1, 1);
   16602              :   x3 = XEXP (x2, 0);
   16603              :   x4 = XEXP (x3, 1);
   16604              :   if (GET_CODE (x4) != PARALLEL)
   16605              :     return -1;
   16606              :   x5 = XEXP (x3, 0);
   16607              :   operands[1] = x5;
   16608              :   switch (XVECLEN (x4, 0))
   16609              :     {
   16610              :     case 1:
   16611              :       x6 = XVECEXP (x4, 0, 0);
   16612              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   16613              :         return -1;
   16614              :       switch (GET_MODE (operands[0]))
   16615              :         {
   16616              :         case E_V8SFmode:
   16617              :           if (!register_operand (operands[0], E_V8SFmode)
   16618              :               || GET_MODE (x2) != E_V8SFmode
   16619              :               || GET_MODE (x3) != E_SFmode)
   16620              :             return -1;
   16621              :           switch (GET_MODE (operands[1]))
   16622              :             {
   16623              :             case E_V4SFmode:
   16624              :               if (register_operand (operands[1], E_V4SFmode)
   16625              :                   && (
   16626              : #line 12101 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16627              : (TARGET_AVX2) && 
   16628              : #line 444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16629              : (TARGET_AVX)))
   16630              :                 return 5301; /* avx2_vec_dupv8sf */
   16631              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   16632              :                   || !(
   16633              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16634              : (TARGET_AVX512F) && 
   16635              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16636              : (TARGET_AVX512VL)))
   16637              :                 return -1;
   16638              :               return 9296; /* avx512vl_vec_dupv8sf */
   16639              : 
   16640              :             case E_V8SFmode:
   16641              :               if (!register_operand (operands[1], E_V8SFmode)
   16642              :                   || !
   16643              : #line 12113 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16644              : (TARGET_AVX2))
   16645              :                 return -1;
   16646              :               return 5303; /* avx2_vec_dupv8sf_1 */
   16647              : 
   16648              :             default:
   16649              :               return -1;
   16650              :             }
   16651              : 
   16652              :         case E_V4SFmode:
   16653              :           if (!register_operand (operands[0], E_V4SFmode)
   16654              :               || GET_MODE (x2) != E_V4SFmode
   16655              :               || GET_MODE (x3) != E_SFmode)
   16656              :             return -1;
   16657              :           if (register_operand (operands[1], E_V4SFmode)
   16658              :               && 
   16659              : #line 12101 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16660              : (TARGET_AVX2))
   16661              :             return 5302; /* avx2_vec_dupv4sf */
   16662              :           if (!nonimmediate_operand (operands[1], E_V4SFmode)
   16663              :               || !(
   16664              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16665              : (TARGET_AVX512F) && 
   16666              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16667              : (TARGET_AVX512VL)))
   16668              :             return -1;
   16669              :           return 9298; /* avx512vl_vec_dupv4sf */
   16670              : 
   16671              :         case E_V16SFmode:
   16672              :           if (!register_operand (operands[0], E_V16SFmode)
   16673              :               || GET_MODE (x2) != E_V16SFmode
   16674              :               || GET_MODE (x3) != E_SFmode)
   16675              :             return -1;
   16676              :           switch (GET_MODE (operands[1]))
   16677              :             {
   16678              :             case E_V16SFmode:
   16679              :               if (!register_operand (operands[1], E_V16SFmode)
   16680              :                   || !
   16681              : #line 12125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16682              : (TARGET_AVX512F))
   16683              :                 return -1;
   16684              :               return 5304; /* avx512f_vec_dupv16sf_1 */
   16685              : 
   16686              :             case E_V4SFmode:
   16687              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   16688              :                   || !
   16689              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16690              : (TARGET_AVX512F))
   16691              :                 return -1;
   16692              :               return 9294; /* avx512f_vec_dupv16sf */
   16693              : 
   16694              :             default:
   16695              :               return -1;
   16696              :             }
   16697              : 
   16698              :         case E_V8DFmode:
   16699              :           if (!register_operand (operands[0], E_V8DFmode)
   16700              :               || GET_MODE (x2) != E_V8DFmode
   16701              :               || GET_MODE (x3) != E_DFmode)
   16702              :             return -1;
   16703              :           switch (GET_MODE (operands[1]))
   16704              :             {
   16705              :             case E_V8DFmode:
   16706              :               if (!register_operand (operands[1], E_V8DFmode)
   16707              :                   || !
   16708              : #line 12125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16709              : (TARGET_AVX512F))
   16710              :                 return -1;
   16711              :               return 5305; /* avx512f_vec_dupv8df_1 */
   16712              : 
   16713              :             case E_V2DFmode:
   16714              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   16715              :                   || !
   16716              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16717              : (TARGET_AVX512F))
   16718              :                 return -1;
   16719              :               return 9300; /* avx512f_vec_dupv8df */
   16720              : 
   16721              :             default:
   16722              :               return -1;
   16723              :             }
   16724              : 
   16725              :         case E_V16SImode:
   16726              :           if (!register_operand (operands[0], E_V16SImode)
   16727              :               || GET_MODE (x2) != E_V16SImode
   16728              :               || GET_MODE (x3) != E_SImode)
   16729              :             return -1;
   16730              :           switch (GET_MODE (operands[1]))
   16731              :             {
   16732              :             case E_V4SImode:
   16733              :               if (!nonimmediate_operand (operands[1], E_V4SImode))
   16734              :                 return -1;
   16735              :               if ((
   16736              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16737              : (TARGET_AVX2) && 
   16738              : #line 564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16739              : (TARGET_AVX512F)))
   16740              :                 return 9175; /* avx2_pbroadcastv16si */
   16741              :               if (!
   16742              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16743              : (TARGET_AVX512F))
   16744              :                 return -1;
   16745              :               return 9282; /* avx512f_vec_dupv16si */
   16746              : 
   16747              :             case E_V16SImode:
   16748              :               if (!nonimmediate_operand (operands[1], E_V16SImode)
   16749              :                   || !
   16750              : #line 28641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16751              : (TARGET_AVX512F))
   16752              :                 return -1;
   16753              :               return 9276; /* avx512f_vec_dupv16si_1 */
   16754              : 
   16755              :             default:
   16756              :               return -1;
   16757              :             }
   16758              : 
   16759              :         case E_V8DImode:
   16760              :           if (!register_operand (operands[0], E_V8DImode)
   16761              :               || GET_MODE (x2) != E_V8DImode
   16762              :               || GET_MODE (x3) != E_DImode)
   16763              :             return -1;
   16764              :           switch (GET_MODE (operands[1]))
   16765              :             {
   16766              :             case E_V2DImode:
   16767              :               if (!nonimmediate_operand (operands[1], E_V2DImode))
   16768              :                 return -1;
   16769              :               if ((
   16770              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16771              : (TARGET_AVX2) && 
   16772              : #line 564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16773              : (TARGET_AVX512F)))
   16774              :                 return 9176; /* avx2_pbroadcastv8di */
   16775              :               if (!
   16776              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16777              : (TARGET_AVX512F))
   16778              :                 return -1;
   16779              :               return 9288; /* avx512f_vec_dupv8di */
   16780              : 
   16781              :             case E_V8DImode:
   16782              :               if (!nonimmediate_operand (operands[1], E_V8DImode)
   16783              :                   || !
   16784              : #line 28641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16785              : (TARGET_AVX512F))
   16786              :                 return -1;
   16787              :               return 9277; /* avx512f_vec_dupv8di_1 */
   16788              : 
   16789              :             default:
   16790              :               return -1;
   16791              :             }
   16792              : 
   16793              :         case E_V64QImode:
   16794              :           if (!register_operand (operands[0], E_V64QImode)
   16795              :               || GET_MODE (x2) != E_V64QImode
   16796              :               || GET_MODE (x3) != E_QImode)
   16797              :             return -1;
   16798              :           switch (GET_MODE (operands[1]))
   16799              :             {
   16800              :             case E_V16QImode:
   16801              :               if (!nonimmediate_operand (operands[1], E_V16QImode))
   16802              :                 return -1;
   16803              :               if ((
   16804              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16805              : (TARGET_AVX2) && 
   16806              : #line 565 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16807              : (TARGET_AVX512BW)))
   16808              :                 return 9177; /* avx2_pbroadcastv64qi */
   16809              :               if (!
   16810              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16811              : (TARGET_AVX512BW))
   16812              :                 return -1;
   16813              :               return 9306; /* avx512bw_vec_dupv64qi */
   16814              : 
   16815              :             case E_V64QImode:
   16816              :               if (!nonimmediate_operand (operands[1], E_V64QImode)
   16817              :                   || !(
   16818              : #line 28641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16819              : (TARGET_AVX512F) && 
   16820              : #line 964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16821              : (TARGET_AVX512BW)))
   16822              :                 return -1;
   16823              :               return 9279; /* avx512bw_vec_dupv64qi_1 */
   16824              : 
   16825              :             default:
   16826              :               return -1;
   16827              :             }
   16828              : 
   16829              :         case E_V32QImode:
   16830              :           if (!register_operand (operands[0], E_V32QImode)
   16831              :               || GET_MODE (x2) != E_V32QImode
   16832              :               || GET_MODE (x3) != E_QImode)
   16833              :             return -1;
   16834              :           switch (GET_MODE (operands[1]))
   16835              :             {
   16836              :             case E_V16QImode:
   16837              :               if (!nonimmediate_operand (operands[1], E_V16QImode))
   16838              :                 return -1;
   16839              :               if ((
   16840              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16841              : (TARGET_AVX2) && 
   16842              : #line 565 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16843              : (TARGET_AVX)))
   16844              :                 return 9178; /* avx2_pbroadcastv32qi */
   16845              :               if (!(
   16846              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16847              : (TARGET_AVX512BW) && 
   16848              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16849              : (TARGET_AVX512VL)))
   16850              :                 return -1;
   16851              :               return 9310; /* avx512vl_vec_dupv32qi */
   16852              : 
   16853              :             case E_V32QImode:
   16854              :               if (!nonimmediate_operand (operands[1], E_V32QImode)
   16855              :                   || !
   16856              : #line 28233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16857              : (TARGET_AVX2))
   16858              :                 return -1;
   16859              :               return 9193; /* avx2_pbroadcastv32qi_1 */
   16860              : 
   16861              :             default:
   16862              :               return -1;
   16863              :             }
   16864              : 
   16865              :         case E_V16QImode:
   16866              :           if (pattern935 (x2, 
   16867              : E_V16QImode, 
   16868              : E_QImode) != 0)
   16869              :             return -1;
   16870              :           if (
   16871              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16872              : (TARGET_AVX2))
   16873              :             return 9179; /* avx2_pbroadcastv16qi */
   16874              :           if (!(
   16875              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16876              : (TARGET_AVX512BW) && 
   16877              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16878              : (TARGET_AVX512VL)))
   16879              :             return -1;
   16880              :           return 9308; /* avx512vl_vec_dupv16qi */
   16881              : 
   16882              :         case E_V32HImode:
   16883              :           if (!register_operand (operands[0], E_V32HImode)
   16884              :               || GET_MODE (x2) != E_V32HImode
   16885              :               || GET_MODE (x3) != E_HImode)
   16886              :             return -1;
   16887              :           switch (GET_MODE (operands[1]))
   16888              :             {
   16889              :             case E_V8HImode:
   16890              :               if (!nonimmediate_operand (operands[1], E_V8HImode))
   16891              :                 return -1;
   16892              :               if ((
   16893              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16894              : (TARGET_AVX2) && 
   16895              : #line 566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16896              : (TARGET_AVX512BW)))
   16897              :                 return 9180; /* avx2_pbroadcastv32hi */
   16898              :               if (!
   16899              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16900              : (TARGET_AVX512BW))
   16901              :                 return -1;
   16902              :               return 9312; /* avx512bw_vec_dupv32hi */
   16903              : 
   16904              :             case E_V32HImode:
   16905              :               if (!nonimmediate_operand (operands[1], E_V32HImode)
   16906              :                   || !(
   16907              : #line 28641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16908              : (TARGET_AVX512F) && 
   16909              : #line 964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16910              : (TARGET_AVX512BW)))
   16911              :                 return -1;
   16912              :               return 9278; /* avx512bw_vec_dupv32hi_1 */
   16913              : 
   16914              :             default:
   16915              :               return -1;
   16916              :             }
   16917              : 
   16918              :         case E_V16HImode:
   16919              :           if (!register_operand (operands[0], E_V16HImode)
   16920              :               || GET_MODE (x2) != E_V16HImode
   16921              :               || GET_MODE (x3) != E_HImode)
   16922              :             return -1;
   16923              :           switch (GET_MODE (operands[1]))
   16924              :             {
   16925              :             case E_V8HImode:
   16926              :               if (!nonimmediate_operand (operands[1], E_V8HImode))
   16927              :                 return -1;
   16928              :               if ((
   16929              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16930              : (TARGET_AVX2) && 
   16931              : #line 566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16932              : (TARGET_AVX)))
   16933              :                 return 9181; /* avx2_pbroadcastv16hi */
   16934              :               if (!(
   16935              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16936              : (TARGET_AVX512BW) && 
   16937              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16938              : (TARGET_AVX512VL)))
   16939              :                 return -1;
   16940              :               return 9314; /* avx512vl_vec_dupv16hi */
   16941              : 
   16942              :             case E_V16HImode:
   16943              :               if (!nonimmediate_operand (operands[1], E_V16HImode)
   16944              :                   || !
   16945              : #line 28233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16946              : (TARGET_AVX2))
   16947              :                 return -1;
   16948              :               return 9194; /* avx2_pbroadcastv16hi_1 */
   16949              : 
   16950              :             default:
   16951              :               return -1;
   16952              :             }
   16953              : 
   16954              :         case E_V8HImode:
   16955              :           if (pattern935 (x2, 
   16956              : E_V8HImode, 
   16957              : E_HImode) != 0)
   16958              :             return -1;
   16959              :           if (
   16960              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16961              : (TARGET_AVX2))
   16962              :             return 9182; /* avx2_pbroadcastv8hi */
   16963              :           if (!(
   16964              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16965              : (TARGET_AVX512BW) && 
   16966              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16967              : (TARGET_AVX512VL)))
   16968              :             return -1;
   16969              :           return 9316; /* avx512vl_vec_dupv8hi */
   16970              : 
   16971              :         case E_V8SImode:
   16972              :           if (!register_operand (operands[0], E_V8SImode)
   16973              :               || GET_MODE (x2) != E_V8SImode
   16974              :               || GET_MODE (x3) != E_SImode)
   16975              :             return -1;
   16976              :           switch (GET_MODE (operands[1]))
   16977              :             {
   16978              :             case E_V4SImode:
   16979              :               if (!nonimmediate_operand (operands[1], E_V4SImode))
   16980              :                 return -1;
   16981              :               if ((
   16982              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16983              : (TARGET_AVX2) && 
   16984              : #line 567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16985              : (TARGET_AVX)))
   16986              :                 return 9183; /* avx2_pbroadcastv8si */
   16987              :               if (!(
   16988              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16989              : (TARGET_AVX512F) && 
   16990              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16991              : (TARGET_AVX512VL)))
   16992              :                 return -1;
   16993              :               return 9284; /* avx512vl_vec_dupv8si */
   16994              : 
   16995              :             case E_V8SImode:
   16996              :               if (!nonimmediate_operand (operands[1], E_V8SImode)
   16997              :                   || !
   16998              : #line 28233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16999              : (TARGET_AVX2))
   17000              :                 return -1;
   17001              :               return 9195; /* avx2_pbroadcastv8si_1 */
   17002              : 
   17003              :             default:
   17004              :               return -1;
   17005              :             }
   17006              : 
   17007              :         case E_V4SImode:
   17008              :           if (pattern935 (x2, 
   17009              : E_V4SImode, 
   17010              : E_SImode) != 0)
   17011              :             return -1;
   17012              :           if (
   17013              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17014              : (TARGET_AVX2))
   17015              :             return 9184; /* avx2_pbroadcastv4si */
   17016              :           if (!(
   17017              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17018              : (TARGET_AVX512F) && 
   17019              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17020              : (TARGET_AVX512VL)))
   17021              :             return -1;
   17022              :           return 9286; /* avx512vl_vec_dupv4si */
   17023              : 
   17024              :         case E_V4DImode:
   17025              :           if (!register_operand (operands[0], E_V4DImode)
   17026              :               || GET_MODE (x2) != E_V4DImode
   17027              :               || GET_MODE (x3) != E_DImode)
   17028              :             return -1;
   17029              :           switch (GET_MODE (operands[1]))
   17030              :             {
   17031              :             case E_V2DImode:
   17032              :               if (!nonimmediate_operand (operands[1], E_V2DImode))
   17033              :                 return -1;
   17034              :               if ((
   17035              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17036              : (TARGET_AVX2) && 
   17037              : #line 567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17038              : (TARGET_AVX)))
   17039              :                 return 9185; /* avx2_pbroadcastv4di */
   17040              :               if (!(
   17041              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17042              : (TARGET_AVX512F) && 
   17043              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17044              : (TARGET_AVX512VL)))
   17045              :                 return -1;
   17046              :               return 9290; /* avx512vl_vec_dupv4di */
   17047              : 
   17048              :             case E_V4DImode:
   17049              :               if (!nonimmediate_operand (operands[1], E_V4DImode)
   17050              :                   || !
   17051              : #line 28233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17052              : (TARGET_AVX2))
   17053              :                 return -1;
   17054              :               return 9196; /* avx2_pbroadcastv4di_1 */
   17055              : 
   17056              :             default:
   17057              :               return -1;
   17058              :             }
   17059              : 
   17060              :         case E_V2DImode:
   17061              :           if (pattern935 (x2, 
   17062              : E_V2DImode, 
   17063              : E_DImode) != 0)
   17064              :             return -1;
   17065              :           if (
   17066              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17067              : (TARGET_AVX2))
   17068              :             return 9186; /* avx2_pbroadcastv2di */
   17069              :           if (!(
   17070              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17071              : (TARGET_AVX512F) && 
   17072              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17073              : (TARGET_AVX512VL)))
   17074              :             return -1;
   17075              :           return 9292; /* avx512vl_vec_dupv2di */
   17076              : 
   17077              :         case E_V32HFmode:
   17078              :           if (!register_operand (operands[0], E_V32HFmode)
   17079              :               || GET_MODE (x2) != E_V32HFmode
   17080              :               || GET_MODE (x3) != E_HFmode)
   17081              :             return -1;
   17082              :           switch (GET_MODE (operands[1]))
   17083              :             {
   17084              :             case E_V8HFmode:
   17085              :               if (!nonimmediate_operand (operands[1], E_V8HFmode))
   17086              :                 return -1;
   17087              :               if ((
   17088              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17089              : (TARGET_AVX2) && 
   17090              : #line 568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17091              : (TARGET_AVX512BW)))
   17092              :                 return 9187; /* avx2_pbroadcastv32hf */
   17093              :               if (!
   17094              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17095              : (TARGET_AVX512BW))
   17096              :                 return -1;
   17097              :               return 9318; /* avx512bw_vec_dupv32hf */
   17098              : 
   17099              :             case E_V32HFmode:
   17100              :               if (!nonimmediate_operand (operands[1], E_V32HFmode)
   17101              :                   || !(
   17102              : #line 28641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17103              : (TARGET_AVX512F) && 
   17104              : #line 965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17105              : (TARGET_AVX512BW)))
   17106              :                 return -1;
   17107              :               return 9280; /* avx512bw_vec_dupv32hf_1 */
   17108              : 
   17109              :             default:
   17110              :               return -1;
   17111              :             }
   17112              : 
   17113              :         case E_V16HFmode:
   17114              :           if (!register_operand (operands[0], E_V16HFmode)
   17115              :               || GET_MODE (x2) != E_V16HFmode
   17116              :               || GET_MODE (x3) != E_HFmode)
   17117              :             return -1;
   17118              :           switch (GET_MODE (operands[1]))
   17119              :             {
   17120              :             case E_V8HFmode:
   17121              :               if (!nonimmediate_operand (operands[1], E_V8HFmode))
   17122              :                 return -1;
   17123              :               if ((
   17124              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17125              : (TARGET_AVX2) && 
   17126              : #line 568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17127              : (TARGET_AVX)))
   17128              :                 return 9188; /* avx2_pbroadcastv16hf */
   17129              :               if (!(
   17130              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17131              : (TARGET_AVX512BW) && 
   17132              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17133              : (TARGET_AVX512VL)))
   17134              :                 return -1;
   17135              :               return 9320; /* avx512vl_vec_dupv16hf */
   17136              : 
   17137              :             case E_V16HFmode:
   17138              :               if (!nonimmediate_operand (operands[1], E_V16HFmode)
   17139              :                   || !
   17140              : #line 28233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17141              : (TARGET_AVX2))
   17142              :                 return -1;
   17143              :               return 9197; /* avx2_pbroadcastv16hf_1 */
   17144              : 
   17145              :             default:
   17146              :               return -1;
   17147              :             }
   17148              : 
   17149              :         case E_V8HFmode:
   17150              :           if (pattern935 (x2, 
   17151              : E_V8HFmode, 
   17152              : E_HFmode) != 0)
   17153              :             return -1;
   17154              :           if (
   17155              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17156              : (TARGET_AVX2))
   17157              :             return 9189; /* avx2_pbroadcastv8hf */
   17158              :           if (!(
   17159              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17160              : (TARGET_AVX512BW) && 
   17161              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17162              : (TARGET_AVX512VL)))
   17163              :             return -1;
   17164              :           return 9322; /* avx512fp16_vec_dupv8hf */
   17165              : 
   17166              :         case E_V32BFmode:
   17167              :           if (!register_operand (operands[0], E_V32BFmode)
   17168              :               || GET_MODE (x2) != E_V32BFmode
   17169              :               || GET_MODE (x3) != E_BFmode)
   17170              :             return -1;
   17171              :           switch (GET_MODE (operands[1]))
   17172              :             {
   17173              :             case E_V8BFmode:
   17174              :               if (!nonimmediate_operand (operands[1], E_V8BFmode))
   17175              :                 return -1;
   17176              :               if ((
   17177              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17178              : (TARGET_AVX2) && 
   17179              : #line 569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17180              : (TARGET_AVX512BW)))
   17181              :                 return 9190; /* avx2_pbroadcastv32bf */
   17182              :               if (!
   17183              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17184              : (TARGET_AVX512BW))
   17185              :                 return -1;
   17186              :               return 9324; /* avx512bw_vec_dupv32bf */
   17187              : 
   17188              :             case E_V32BFmode:
   17189              :               if (!nonimmediate_operand (operands[1], E_V32BFmode)
   17190              :                   || !(
   17191              : #line 28641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17192              : (TARGET_AVX512F) && 
   17193              : #line 965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17194              : (TARGET_AVX512BW)))
   17195              :                 return -1;
   17196              :               return 9281; /* avx512bw_vec_dupv32bf_1 */
   17197              : 
   17198              :             default:
   17199              :               return -1;
   17200              :             }
   17201              : 
   17202              :         case E_V16BFmode:
   17203              :           if (!register_operand (operands[0], E_V16BFmode)
   17204              :               || GET_MODE (x2) != E_V16BFmode
   17205              :               || GET_MODE (x3) != E_BFmode)
   17206              :             return -1;
   17207              :           switch (GET_MODE (operands[1]))
   17208              :             {
   17209              :             case E_V8BFmode:
   17210              :               if (!nonimmediate_operand (operands[1], E_V8BFmode))
   17211              :                 return -1;
   17212              :               if ((
   17213              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17214              : (TARGET_AVX2) && 
   17215              : #line 569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17216              : (TARGET_AVX)))
   17217              :                 return 9191; /* avx2_pbroadcastv16bf */
   17218              :               if (!(
   17219              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17220              : (TARGET_AVX512BW) && 
   17221              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17222              : (TARGET_AVX512VL)))
   17223              :                 return -1;
   17224              :               return 9326; /* avx512vl_vec_dupv16bf */
   17225              : 
   17226              :             case E_V16BFmode:
   17227              :               if (!nonimmediate_operand (operands[1], E_V16BFmode)
   17228              :                   || !
   17229              : #line 28233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17230              : (TARGET_AVX2))
   17231              :                 return -1;
   17232              :               return 9198; /* avx2_pbroadcastv16bf_1 */
   17233              : 
   17234              :             default:
   17235              :               return -1;
   17236              :             }
   17237              : 
   17238              :         case E_V8BFmode:
   17239              :           if (pattern935 (x2, 
   17240              : E_V8BFmode, 
   17241              : E_BFmode) != 0)
   17242              :             return -1;
   17243              :           if (
   17244              : #line 28219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17245              : (TARGET_AVX2))
   17246              :             return 9192; /* avx2_pbroadcastv8bf */
   17247              :           if (!(
   17248              : #line 28674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17249              : (TARGET_AVX512BW) && 
   17250              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17251              : (TARGET_AVX512VL)))
   17252              :             return -1;
   17253              :           return 9328; /* avx512vl_vec_dupv8bf */
   17254              : 
   17255              :         case E_V4DFmode:
   17256              :           if (!register_operand (operands[0], E_V4DFmode)
   17257              :               || GET_MODE (x2) != E_V4DFmode
   17258              :               || GET_MODE (x3) != E_DFmode)
   17259              :             return -1;
   17260              :           if (register_operand (operands[1], E_V2DFmode)
   17261              :               && 
   17262              : #line 28629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17263              : (TARGET_AVX2))
   17264              :             return 9275; /* avx2_vec_dupv4df */
   17265              :           if (!nonimmediate_operand (operands[1], E_V2DFmode)
   17266              :               || !(
   17267              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17268              : (TARGET_AVX512F) && 
   17269              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17270              : (TARGET_AVX512VL)))
   17271              :             return -1;
   17272              :           return 9302; /* avx512vl_vec_dupv4df */
   17273              : 
   17274              :         case E_V2DFmode:
   17275              :           if (pattern935 (x2, 
   17276              : E_V2DFmode, 
   17277              : E_DFmode) != 0
   17278              :               || !(
   17279              : #line 28655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17280              : (TARGET_AVX512F) && 
   17281              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17282              : (TARGET_AVX512VL)))
   17283              :             return -1;
   17284              :           return 9304; /* avx512vl_vec_dupv2df */
   17285              : 
   17286              :         default:
   17287              :           return -1;
   17288              :         }
   17289              : 
   17290              :     case 2:
   17291              :       x6 = XVECEXP (x4, 0, 0);
   17292              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   17293              :         return -1;
   17294              :       x7 = XVECEXP (x4, 0, 1);
   17295              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   17296              :         return -1;
   17297              :       switch (GET_MODE (operands[0]))
   17298              :         {
   17299              :         case E_V16SImode:
   17300              :           if (pattern931 (x2, 
   17301              : E_V4SImode, 
   17302              : E_V2SImode, 
   17303              : E_V16SImode) != 0
   17304              :               || !
   17305              : #line 28998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17306              : (TARGET_AVX512DQ))
   17307              :             return -1;
   17308              :           return 9424; /* *avx512dq_broadcastv16si */
   17309              : 
   17310              :         case E_V8SImode:
   17311              :           if (pattern931 (x2, 
   17312              : E_V4SImode, 
   17313              : E_V2SImode, 
   17314              : E_V8SImode) != 0
   17315              :               || !(
   17316              : #line 28998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17317              : (TARGET_AVX512DQ) && 
   17318              : #line 28982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17319              : (TARGET_AVX512VL)))
   17320              :             return -1;
   17321              :           return 9426; /* *avx512dq_broadcastv8si */
   17322              : 
   17323              :         case E_V4SImode:
   17324              :           if (pattern935 (x2, 
   17325              : E_V4SImode, 
   17326              : E_V2SImode) != 0
   17327              :               || !(
   17328              : #line 28998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17329              : (TARGET_AVX512DQ) && 
   17330              : #line 28982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17331              : (TARGET_AVX512VL)))
   17332              :             return -1;
   17333              :           return 9428; /* *avx512dq_broadcastv4si */
   17334              : 
   17335              :         case E_V16SFmode:
   17336              :           if (pattern931 (x2, 
   17337              : E_V4SFmode, 
   17338              : E_V2SFmode, 
   17339              : E_V16SFmode) != 0
   17340              :               || !
   17341              : #line 28998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17342              : (TARGET_AVX512DQ))
   17343              :             return -1;
   17344              :           return 9430; /* *avx512dq_broadcastv16sf */
   17345              : 
   17346              :         case E_V8SFmode:
   17347              :           if (pattern931 (x2, 
   17348              : E_V4SFmode, 
   17349              : E_V2SFmode, 
   17350              : E_V8SFmode) != 0
   17351              :               || !(
   17352              : #line 28998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17353              : (TARGET_AVX512DQ) && 
   17354              : #line 28983 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17355              : (TARGET_AVX512VL)))
   17356              :             return -1;
   17357              :           return 9432; /* *avx512dq_broadcastv8sf */
   17358              : 
   17359              :         default:
   17360              :           return -1;
   17361              :         }
   17362              : 
   17363              :     default:
   17364              :       return -1;
   17365              :     }
   17366              : }
   17367              : 
   17368              :  int
   17369              : recog_315 (rtx x1 ATTRIBUTE_UNUSED,
   17370              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17371              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17372              : {
   17373              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17374              :   rtx x2, x3, x4;
   17375              :   int res ATTRIBUTE_UNUSED;
   17376              :   x2 = XEXP (x1, 1);
   17377              :   x3 = XEXP (x2, 0);
   17378              :   x4 = XEXP (x3, 0);
   17379              :   switch (GET_CODE (x4))
   17380              :     {
   17381              :     case REG:
   17382              :     case SUBREG:
   17383              :     case MEM:
   17384              :     case NOT:
   17385              :       switch (pattern543 (x2))
   17386              :         {
   17387              :         case 0:
   17388              :           if (!(
   17389              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17390              : ((64 == 64 || TARGET_AVX512VL
   17391              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17392              :    && ix86_pre_reload_split ()
   17393              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17394              :                     STRIP_UNARY (operands[4]))
   17395              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17396              :                        STRIP_UNARY (operands[4]))
   17397              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17398              :                        STRIP_UNARY (operands[3]))
   17399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17400              :                        STRIP_UNARY (operands[3])))) && 
   17401              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17402              : (TARGET_AVX512F)))
   17403              :             return -1;
   17404              :           return 5887; /* *avx512bw_vpternlogv32hf_1 */
   17405              : 
   17406              :         case 1:
   17407              :           if (!(
   17408              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17409              : ((32 == 64 || TARGET_AVX512VL
   17410              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17411              :    && ix86_pre_reload_split ()
   17412              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17413              :                     STRIP_UNARY (operands[4]))
   17414              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17415              :                        STRIP_UNARY (operands[4]))
   17416              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17417              :                        STRIP_UNARY (operands[3]))
   17418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17419              :                        STRIP_UNARY (operands[3])))) && 
   17420              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17421              : (TARGET_AVX)))
   17422              :             return -1;
   17423              :           return 5914; /* *avx512vl_vpternlogv16hf_1 */
   17424              : 
   17425              :         case 2:
   17426              :           if (!
   17427              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17428              : ((16 == 64 || TARGET_AVX512VL
   17429              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17430              :    && ix86_pre_reload_split ()
   17431              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17432              :                     STRIP_UNARY (operands[4]))
   17433              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17434              :                        STRIP_UNARY (operands[4]))
   17435              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17436              :                        STRIP_UNARY (operands[3]))
   17437              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17438              :                        STRIP_UNARY (operands[3])))))
   17439              :             return -1;
   17440              :           return 5941; /* *avx512fp16_vpternlogv8hf_1 */
   17441              : 
   17442              :         case 3:
   17443              :           if (!(
   17444              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17445              : ((64 == 64 || TARGET_AVX512VL
   17446              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17447              :    && ix86_pre_reload_split ()
   17448              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17449              :                     STRIP_UNARY (operands[4]))
   17450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17451              :                        STRIP_UNARY (operands[4]))
   17452              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17453              :                        STRIP_UNARY (operands[3]))
   17454              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17455              :                        STRIP_UNARY (operands[3])))) && 
   17456              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17457              : (TARGET_AVX512F)))
   17458              :             return -1;
   17459              :           return 5968; /* *avx512bw_vpternlogv32bf_1 */
   17460              : 
   17461              :         case 4:
   17462              :           if (!(
   17463              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17464              : ((32 == 64 || TARGET_AVX512VL
   17465              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17466              :    && ix86_pre_reload_split ()
   17467              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17468              :                     STRIP_UNARY (operands[4]))
   17469              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17470              :                        STRIP_UNARY (operands[4]))
   17471              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17472              :                        STRIP_UNARY (operands[3]))
   17473              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17474              :                        STRIP_UNARY (operands[3])))) && 
   17475              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17476              : (TARGET_AVX)))
   17477              :             return -1;
   17478              :           return 5995; /* *avx512vl_vpternlogv16bf_1 */
   17479              : 
   17480              :         case 5:
   17481              :           if (!
   17482              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17483              : ((16 == 64 || TARGET_AVX512VL
   17484              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17485              :    && ix86_pre_reload_split ()
   17486              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17487              :                     STRIP_UNARY (operands[4]))
   17488              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17489              :                        STRIP_UNARY (operands[4]))
   17490              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17491              :                        STRIP_UNARY (operands[3]))
   17492              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17493              :                        STRIP_UNARY (operands[3])))))
   17494              :             return -1;
   17495              :           return 6022; /* *avx512vl_vpternlogv8bf_1 */
   17496              : 
   17497              :         case 6:
   17498              :           if (!(
   17499              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17500              : ((64 == 64 || TARGET_AVX512VL
   17501              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17502              :    && ix86_pre_reload_split ()
   17503              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17504              :                     STRIP_UNARY (operands[4]))
   17505              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17506              :                        STRIP_UNARY (operands[4]))
   17507              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17508              :                        STRIP_UNARY (operands[3]))
   17509              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17510              :                        STRIP_UNARY (operands[3])))) && 
   17511              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17512              : (TARGET_AVX512F)))
   17513              :             return -1;
   17514              :           return 6049; /* *avx512f_vpternlogv16sf_1 */
   17515              : 
   17516              :         case 7:
   17517              :           if (!(
   17518              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17519              : ((32 == 64 || TARGET_AVX512VL
   17520              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17521              :    && ix86_pre_reload_split ()
   17522              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17523              :                     STRIP_UNARY (operands[4]))
   17524              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17525              :                        STRIP_UNARY (operands[4]))
   17526              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17527              :                        STRIP_UNARY (operands[3]))
   17528              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17529              :                        STRIP_UNARY (operands[3])))) && 
   17530              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17531              : (TARGET_AVX)))
   17532              :             return -1;
   17533              :           return 6076; /* *avx512vl_vpternlogv8sf_1 */
   17534              : 
   17535              :         case 8:
   17536              :           if (!
   17537              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17538              : ((16 == 64 || TARGET_AVX512VL
   17539              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17540              :    && ix86_pre_reload_split ()
   17541              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17542              :                     STRIP_UNARY (operands[4]))
   17543              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17544              :                        STRIP_UNARY (operands[4]))
   17545              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17546              :                        STRIP_UNARY (operands[3]))
   17547              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17548              :                        STRIP_UNARY (operands[3])))))
   17549              :             return -1;
   17550              :           return 6103; /* *avx512vl_vpternlogv4sf_1 */
   17551              : 
   17552              :         case 9:
   17553              :           if (!(
   17554              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17555              : ((64 == 64 || TARGET_AVX512VL
   17556              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17557              :    && ix86_pre_reload_split ()
   17558              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17559              :                     STRIP_UNARY (operands[4]))
   17560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17561              :                        STRIP_UNARY (operands[4]))
   17562              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17563              :                        STRIP_UNARY (operands[3]))
   17564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17565              :                        STRIP_UNARY (operands[3])))) && 
   17566              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17567              : (TARGET_AVX512F)))
   17568              :             return -1;
   17569              :           return 6130; /* *avx512f_vpternlogv8df_1 */
   17570              : 
   17571              :         case 10:
   17572              :           if (!(
   17573              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17574              : ((32 == 64 || TARGET_AVX512VL
   17575              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17576              :    && ix86_pre_reload_split ()
   17577              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17578              :                     STRIP_UNARY (operands[4]))
   17579              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17580              :                        STRIP_UNARY (operands[4]))
   17581              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17582              :                        STRIP_UNARY (operands[3]))
   17583              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17584              :                        STRIP_UNARY (operands[3])))) && 
   17585              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17586              : (TARGET_AVX)))
   17587              :             return -1;
   17588              :           return 6157; /* *avx512vl_vpternlogv4df_1 */
   17589              : 
   17590              :         case 11:
   17591              :           if (!(
   17592              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17593              : ((16 == 64 || TARGET_AVX512VL
   17594              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17595              :    && ix86_pre_reload_split ()
   17596              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17597              :                     STRIP_UNARY (operands[4]))
   17598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17599              :                        STRIP_UNARY (operands[4]))
   17600              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17601              :                        STRIP_UNARY (operands[3]))
   17602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17603              :                        STRIP_UNARY (operands[3])))) && 
   17604              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17605              : (TARGET_SSE2)))
   17606              :             return -1;
   17607              :           return 6184; /* *avx512vl_vpternlogv2df_1 */
   17608              : 
   17609              :         case 12:
   17610              :           if (!(
   17611              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17612              : ((64 == 64 || TARGET_AVX512VL
   17613              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17614              :    && ix86_pre_reload_split ()
   17615              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17616              :                     STRIP_UNARY (operands[4]))
   17617              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17618              :                        STRIP_UNARY (operands[4]))
   17619              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17620              :                        STRIP_UNARY (operands[3]))
   17621              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17622              :                        STRIP_UNARY (operands[3])))) && 
   17623              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17624              : (TARGET_AVX512F)))
   17625              :             return -1;
   17626              :           return 5890; /* *avx512bw_vpternlogv32hf_1 */
   17627              : 
   17628              :         case 13:
   17629              :           if (!(
   17630              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17631              : ((32 == 64 || TARGET_AVX512VL
   17632              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17633              :    && ix86_pre_reload_split ()
   17634              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17635              :                     STRIP_UNARY (operands[4]))
   17636              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17637              :                        STRIP_UNARY (operands[4]))
   17638              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17639              :                        STRIP_UNARY (operands[3]))
   17640              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17641              :                        STRIP_UNARY (operands[3])))) && 
   17642              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17643              : (TARGET_AVX)))
   17644              :             return -1;
   17645              :           return 5917; /* *avx512vl_vpternlogv16hf_1 */
   17646              : 
   17647              :         case 14:
   17648              :           if (!
   17649              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17650              : ((16 == 64 || TARGET_AVX512VL
   17651              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17652              :    && ix86_pre_reload_split ()
   17653              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17654              :                     STRIP_UNARY (operands[4]))
   17655              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17656              :                        STRIP_UNARY (operands[4]))
   17657              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17658              :                        STRIP_UNARY (operands[3]))
   17659              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17660              :                        STRIP_UNARY (operands[3])))))
   17661              :             return -1;
   17662              :           return 5944; /* *avx512fp16_vpternlogv8hf_1 */
   17663              : 
   17664              :         case 15:
   17665              :           if (!(
   17666              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17667              : ((64 == 64 || TARGET_AVX512VL
   17668              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17669              :    && ix86_pre_reload_split ()
   17670              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17671              :                     STRIP_UNARY (operands[4]))
   17672              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17673              :                        STRIP_UNARY (operands[4]))
   17674              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17675              :                        STRIP_UNARY (operands[3]))
   17676              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17677              :                        STRIP_UNARY (operands[3])))) && 
   17678              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17679              : (TARGET_AVX512F)))
   17680              :             return -1;
   17681              :           return 5971; /* *avx512bw_vpternlogv32bf_1 */
   17682              : 
   17683              :         case 16:
   17684              :           if (!(
   17685              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17686              : ((32 == 64 || TARGET_AVX512VL
   17687              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17688              :    && ix86_pre_reload_split ()
   17689              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17690              :                     STRIP_UNARY (operands[4]))
   17691              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17692              :                        STRIP_UNARY (operands[4]))
   17693              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17694              :                        STRIP_UNARY (operands[3]))
   17695              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17696              :                        STRIP_UNARY (operands[3])))) && 
   17697              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17698              : (TARGET_AVX)))
   17699              :             return -1;
   17700              :           return 5998; /* *avx512vl_vpternlogv16bf_1 */
   17701              : 
   17702              :         case 17:
   17703              :           if (!
   17704              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17705              : ((16 == 64 || TARGET_AVX512VL
   17706              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17707              :    && ix86_pre_reload_split ()
   17708              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17709              :                     STRIP_UNARY (operands[4]))
   17710              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17711              :                        STRIP_UNARY (operands[4]))
   17712              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17713              :                        STRIP_UNARY (operands[3]))
   17714              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17715              :                        STRIP_UNARY (operands[3])))))
   17716              :             return -1;
   17717              :           return 6025; /* *avx512vl_vpternlogv8bf_1 */
   17718              : 
   17719              :         case 18:
   17720              :           if (!(
   17721              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17722              : ((64 == 64 || TARGET_AVX512VL
   17723              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17724              :    && ix86_pre_reload_split ()
   17725              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17726              :                     STRIP_UNARY (operands[4]))
   17727              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17728              :                        STRIP_UNARY (operands[4]))
   17729              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17730              :                        STRIP_UNARY (operands[3]))
   17731              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17732              :                        STRIP_UNARY (operands[3])))) && 
   17733              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17734              : (TARGET_AVX512F)))
   17735              :             return -1;
   17736              :           return 6052; /* *avx512f_vpternlogv16sf_1 */
   17737              : 
   17738              :         case 19:
   17739              :           if (!(
   17740              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17741              : ((32 == 64 || TARGET_AVX512VL
   17742              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17743              :    && ix86_pre_reload_split ()
   17744              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17745              :                     STRIP_UNARY (operands[4]))
   17746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17747              :                        STRIP_UNARY (operands[4]))
   17748              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17749              :                        STRIP_UNARY (operands[3]))
   17750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17751              :                        STRIP_UNARY (operands[3])))) && 
   17752              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17753              : (TARGET_AVX)))
   17754              :             return -1;
   17755              :           return 6079; /* *avx512vl_vpternlogv8sf_1 */
   17756              : 
   17757              :         case 20:
   17758              :           if (!
   17759              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17760              : ((16 == 64 || TARGET_AVX512VL
   17761              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17762              :    && ix86_pre_reload_split ()
   17763              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17764              :                     STRIP_UNARY (operands[4]))
   17765              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17766              :                        STRIP_UNARY (operands[4]))
   17767              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17768              :                        STRIP_UNARY (operands[3]))
   17769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17770              :                        STRIP_UNARY (operands[3])))))
   17771              :             return -1;
   17772              :           return 6106; /* *avx512vl_vpternlogv4sf_1 */
   17773              : 
   17774              :         case 21:
   17775              :           if (!(
   17776              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17777              : ((64 == 64 || TARGET_AVX512VL
   17778              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17779              :    && ix86_pre_reload_split ()
   17780              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17781              :                     STRIP_UNARY (operands[4]))
   17782              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17783              :                        STRIP_UNARY (operands[4]))
   17784              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17785              :                        STRIP_UNARY (operands[3]))
   17786              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17787              :                        STRIP_UNARY (operands[3])))) && 
   17788              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17789              : (TARGET_AVX512F)))
   17790              :             return -1;
   17791              :           return 6133; /* *avx512f_vpternlogv8df_1 */
   17792              : 
   17793              :         case 22:
   17794              :           if (!(
   17795              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17796              : ((32 == 64 || TARGET_AVX512VL
   17797              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17798              :    && ix86_pre_reload_split ()
   17799              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17800              :                     STRIP_UNARY (operands[4]))
   17801              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17802              :                        STRIP_UNARY (operands[4]))
   17803              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17804              :                        STRIP_UNARY (operands[3]))
   17805              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17806              :                        STRIP_UNARY (operands[3])))) && 
   17807              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17808              : (TARGET_AVX)))
   17809              :             return -1;
   17810              :           return 6160; /* *avx512vl_vpternlogv4df_1 */
   17811              : 
   17812              :         case 23:
   17813              :           if (!(
   17814              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17815              : ((16 == 64 || TARGET_AVX512VL
   17816              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17817              :    && ix86_pre_reload_split ()
   17818              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17819              :                     STRIP_UNARY (operands[4]))
   17820              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17821              :                        STRIP_UNARY (operands[4]))
   17822              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17823              :                        STRIP_UNARY (operands[3]))
   17824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17825              :                        STRIP_UNARY (operands[3])))) && 
   17826              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17827              : (TARGET_SSE2)))
   17828              :             return -1;
   17829              :           return 6187; /* *avx512vl_vpternlogv2df_1 */
   17830              : 
   17831              :         case 24:
   17832              :           if (!(
   17833              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17834              : ((64 == 64 || TARGET_AVX512VL
   17835              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17836              :    && ix86_pre_reload_split ()
   17837              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17838              :                     STRIP_UNARY (operands[4]))
   17839              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17840              :                        STRIP_UNARY (operands[4]))
   17841              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17842              :                        STRIP_UNARY (operands[3]))
   17843              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17844              :                        STRIP_UNARY (operands[3])))) && 
   17845              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17846              : (TARGET_AVX512F)))
   17847              :             return -1;
   17848              :           return 5893; /* *avx512bw_vpternlogv32hf_1 */
   17849              : 
   17850              :         case 25:
   17851              :           if (!(
   17852              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17853              : ((32 == 64 || TARGET_AVX512VL
   17854              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17855              :    && ix86_pre_reload_split ()
   17856              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17857              :                     STRIP_UNARY (operands[4]))
   17858              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17859              :                        STRIP_UNARY (operands[4]))
   17860              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17861              :                        STRIP_UNARY (operands[3]))
   17862              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17863              :                        STRIP_UNARY (operands[3])))) && 
   17864              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17865              : (TARGET_AVX)))
   17866              :             return -1;
   17867              :           return 5920; /* *avx512vl_vpternlogv16hf_1 */
   17868              : 
   17869              :         case 26:
   17870              :           if (!
   17871              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17872              : ((16 == 64 || TARGET_AVX512VL
   17873              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17874              :    && ix86_pre_reload_split ()
   17875              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17876              :                     STRIP_UNARY (operands[4]))
   17877              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17878              :                        STRIP_UNARY (operands[4]))
   17879              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17880              :                        STRIP_UNARY (operands[3]))
   17881              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17882              :                        STRIP_UNARY (operands[3])))))
   17883              :             return -1;
   17884              :           return 5947; /* *avx512fp16_vpternlogv8hf_1 */
   17885              : 
   17886              :         case 27:
   17887              :           if (!(
   17888              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17889              : ((64 == 64 || TARGET_AVX512VL
   17890              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17891              :    && ix86_pre_reload_split ()
   17892              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17893              :                     STRIP_UNARY (operands[4]))
   17894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17895              :                        STRIP_UNARY (operands[4]))
   17896              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17897              :                        STRIP_UNARY (operands[3]))
   17898              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17899              :                        STRIP_UNARY (operands[3])))) && 
   17900              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17901              : (TARGET_AVX512F)))
   17902              :             return -1;
   17903              :           return 5974; /* *avx512bw_vpternlogv32bf_1 */
   17904              : 
   17905              :         case 28:
   17906              :           if (!(
   17907              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17908              : ((32 == 64 || TARGET_AVX512VL
   17909              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17910              :    && ix86_pre_reload_split ()
   17911              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17912              :                     STRIP_UNARY (operands[4]))
   17913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17914              :                        STRIP_UNARY (operands[4]))
   17915              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17916              :                        STRIP_UNARY (operands[3]))
   17917              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17918              :                        STRIP_UNARY (operands[3])))) && 
   17919              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17920              : (TARGET_AVX)))
   17921              :             return -1;
   17922              :           return 6001; /* *avx512vl_vpternlogv16bf_1 */
   17923              : 
   17924              :         case 29:
   17925              :           if (!
   17926              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17927              : ((16 == 64 || TARGET_AVX512VL
   17928              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17929              :    && ix86_pre_reload_split ()
   17930              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17931              :                     STRIP_UNARY (operands[4]))
   17932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17933              :                        STRIP_UNARY (operands[4]))
   17934              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17935              :                        STRIP_UNARY (operands[3]))
   17936              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17937              :                        STRIP_UNARY (operands[3])))))
   17938              :             return -1;
   17939              :           return 6028; /* *avx512vl_vpternlogv8bf_1 */
   17940              : 
   17941              :         case 30:
   17942              :           if (!(
   17943              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17944              : ((64 == 64 || TARGET_AVX512VL
   17945              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17946              :    && ix86_pre_reload_split ()
   17947              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17948              :                     STRIP_UNARY (operands[4]))
   17949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17950              :                        STRIP_UNARY (operands[4]))
   17951              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17952              :                        STRIP_UNARY (operands[3]))
   17953              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17954              :                        STRIP_UNARY (operands[3])))) && 
   17955              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17956              : (TARGET_AVX512F)))
   17957              :             return -1;
   17958              :           return 6055; /* *avx512f_vpternlogv16sf_1 */
   17959              : 
   17960              :         case 31:
   17961              :           if (!(
   17962              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17963              : ((32 == 64 || TARGET_AVX512VL
   17964              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17965              :    && ix86_pre_reload_split ()
   17966              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17967              :                     STRIP_UNARY (operands[4]))
   17968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17969              :                        STRIP_UNARY (operands[4]))
   17970              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17971              :                        STRIP_UNARY (operands[3]))
   17972              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17973              :                        STRIP_UNARY (operands[3])))) && 
   17974              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17975              : (TARGET_AVX)))
   17976              :             return -1;
   17977              :           return 6082; /* *avx512vl_vpternlogv8sf_1 */
   17978              : 
   17979              :         case 32:
   17980              :           if (!
   17981              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17982              : ((16 == 64 || TARGET_AVX512VL
   17983              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17984              :    && ix86_pre_reload_split ()
   17985              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17986              :                     STRIP_UNARY (operands[4]))
   17987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17988              :                        STRIP_UNARY (operands[4]))
   17989              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17990              :                        STRIP_UNARY (operands[3]))
   17991              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17992              :                        STRIP_UNARY (operands[3])))))
   17993              :             return -1;
   17994              :           return 6109; /* *avx512vl_vpternlogv4sf_1 */
   17995              : 
   17996              :         case 33:
   17997              :           if (!(
   17998              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17999              : ((64 == 64 || TARGET_AVX512VL
   18000              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18001              :    && ix86_pre_reload_split ()
   18002              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18003              :                     STRIP_UNARY (operands[4]))
   18004              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18005              :                        STRIP_UNARY (operands[4]))
   18006              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18007              :                        STRIP_UNARY (operands[3]))
   18008              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18009              :                        STRIP_UNARY (operands[3])))) && 
   18010              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18011              : (TARGET_AVX512F)))
   18012              :             return -1;
   18013              :           return 6136; /* *avx512f_vpternlogv8df_1 */
   18014              : 
   18015              :         case 34:
   18016              :           if (!(
   18017              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18018              : ((32 == 64 || TARGET_AVX512VL
   18019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18020              :    && ix86_pre_reload_split ()
   18021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18022              :                     STRIP_UNARY (operands[4]))
   18023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18024              :                        STRIP_UNARY (operands[4]))
   18025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18026              :                        STRIP_UNARY (operands[3]))
   18027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18028              :                        STRIP_UNARY (operands[3])))) && 
   18029              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18030              : (TARGET_AVX)))
   18031              :             return -1;
   18032              :           return 6163; /* *avx512vl_vpternlogv4df_1 */
   18033              : 
   18034              :         case 35:
   18035              :           if (!(
   18036              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18037              : ((16 == 64 || TARGET_AVX512VL
   18038              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18039              :    && ix86_pre_reload_split ()
   18040              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18041              :                     STRIP_UNARY (operands[4]))
   18042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18043              :                        STRIP_UNARY (operands[4]))
   18044              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18045              :                        STRIP_UNARY (operands[3]))
   18046              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18047              :                        STRIP_UNARY (operands[3])))) && 
   18048              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18049              : (TARGET_SSE2)))
   18050              :             return -1;
   18051              :           return 6190; /* *avx512vl_vpternlogv2df_1 */
   18052              : 
   18053              :         case 36:
   18054              :           if (!(
   18055              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18056              : ((64 == 64 || TARGET_AVX512VL
   18057              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18058              :    && ix86_pre_reload_split ()) && 
   18059              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18060              : (TARGET_AVX512F)))
   18061              :             return -1;
   18062              :           return 6955; /* *avx512bw_vpternlogv32hf_3 */
   18063              : 
   18064              :         case 37:
   18065              :           if (!(
   18066              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18067              : ((32 == 64 || TARGET_AVX512VL
   18068              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18069              :    && ix86_pre_reload_split ()) && 
   18070              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18071              : (TARGET_AVX)))
   18072              :             return -1;
   18073              :           return 6964; /* *avx512vl_vpternlogv16hf_3 */
   18074              : 
   18075              :         case 38:
   18076              :           if (!
   18077              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18078              : ((16 == 64 || TARGET_AVX512VL
   18079              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18080              :    && ix86_pre_reload_split ()))
   18081              :             return -1;
   18082              :           return 6973; /* *avx512fp16_vpternlogv8hf_3 */
   18083              : 
   18084              :         case 39:
   18085              :           if (!(
   18086              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18087              : ((64 == 64 || TARGET_AVX512VL
   18088              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18089              :    && ix86_pre_reload_split ()) && 
   18090              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18091              : (TARGET_AVX512F)))
   18092              :             return -1;
   18093              :           return 6982; /* *avx512bw_vpternlogv32bf_3 */
   18094              : 
   18095              :         case 40:
   18096              :           if (!(
   18097              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18098              : ((32 == 64 || TARGET_AVX512VL
   18099              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18100              :    && ix86_pre_reload_split ()) && 
   18101              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18102              : (TARGET_AVX)))
   18103              :             return -1;
   18104              :           return 6991; /* *avx512vl_vpternlogv16bf_3 */
   18105              : 
   18106              :         case 41:
   18107              :           if (!
   18108              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18109              : ((16 == 64 || TARGET_AVX512VL
   18110              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18111              :    && ix86_pre_reload_split ()))
   18112              :             return -1;
   18113              :           return 7000; /* *avx512vl_vpternlogv8bf_3 */
   18114              : 
   18115              :         case 42:
   18116              :           if (!(
   18117              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18118              : ((64 == 64 || TARGET_AVX512VL
   18119              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18120              :    && ix86_pre_reload_split ()) && 
   18121              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18122              : (TARGET_AVX512F)))
   18123              :             return -1;
   18124              :           return 7009; /* *avx512f_vpternlogv16sf_3 */
   18125              : 
   18126              :         case 43:
   18127              :           if (!(
   18128              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18129              : ((32 == 64 || TARGET_AVX512VL
   18130              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18131              :    && ix86_pre_reload_split ()) && 
   18132              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18133              : (TARGET_AVX)))
   18134              :             return -1;
   18135              :           return 7018; /* *avx512vl_vpternlogv8sf_3 */
   18136              : 
   18137              :         case 44:
   18138              :           if (!
   18139              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18140              : ((16 == 64 || TARGET_AVX512VL
   18141              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18142              :    && ix86_pre_reload_split ()))
   18143              :             return -1;
   18144              :           return 7027; /* *avx512vl_vpternlogv4sf_3 */
   18145              : 
   18146              :         case 45:
   18147              :           if (!(
   18148              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18149              : ((64 == 64 || TARGET_AVX512VL
   18150              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18151              :    && ix86_pre_reload_split ()) && 
   18152              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18153              : (TARGET_AVX512F)))
   18154              :             return -1;
   18155              :           return 7036; /* *avx512f_vpternlogv8df_3 */
   18156              : 
   18157              :         case 46:
   18158              :           if (!(
   18159              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18160              : ((32 == 64 || TARGET_AVX512VL
   18161              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18162              :    && ix86_pre_reload_split ()) && 
   18163              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18164              : (TARGET_AVX)))
   18165              :             return -1;
   18166              :           return 7045; /* *avx512vl_vpternlogv4df_3 */
   18167              : 
   18168              :         case 47:
   18169              :           if (!(
   18170              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18171              : ((16 == 64 || TARGET_AVX512VL
   18172              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18173              :    && ix86_pre_reload_split ()) && 
   18174              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18175              : (TARGET_SSE2)))
   18176              :             return -1;
   18177              :           return 7054; /* *avx512vl_vpternlogv2df_3 */
   18178              : 
   18179              :         default:
   18180              :           return -1;
   18181              :         }
   18182              : 
   18183              :     case AND:
   18184              :       switch (pattern544 (x2))
   18185              :         {
   18186              :         case 0:
   18187              :           if (!(
   18188              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18189              : ((64 == 64 || TARGET_AVX512VL
   18190              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18191              :    && ix86_pre_reload_split ()
   18192              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18193              :                     STRIP_UNARY (operands[4]))
   18194              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18195              :                        STRIP_UNARY (operands[4]))
   18196              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18197              :                        STRIP_UNARY (operands[3]))
   18198              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18199              :                        STRIP_UNARY (operands[3])))) && 
   18200              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18201              : (TARGET_AVX512F)))
   18202              :             return -1;
   18203              :           return 6535; /* *avx512bw_vpternlogv32hf_2 */
   18204              : 
   18205              :         case 1:
   18206              :           if (!(
   18207              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18208              : ((32 == 64 || TARGET_AVX512VL
   18209              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18210              :    && ix86_pre_reload_split ()
   18211              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18212              :                     STRIP_UNARY (operands[4]))
   18213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18214              :                        STRIP_UNARY (operands[4]))
   18215              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18216              :                        STRIP_UNARY (operands[3]))
   18217              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18218              :                        STRIP_UNARY (operands[3])))) && 
   18219              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18220              : (TARGET_AVX)))
   18221              :             return -1;
   18222              :           return 6562; /* *avx512vl_vpternlogv16hf_2 */
   18223              : 
   18224              :         case 2:
   18225              :           if (!
   18226              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18227              : ((16 == 64 || TARGET_AVX512VL
   18228              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18229              :    && ix86_pre_reload_split ()
   18230              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18231              :                     STRIP_UNARY (operands[4]))
   18232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18233              :                        STRIP_UNARY (operands[4]))
   18234              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18235              :                        STRIP_UNARY (operands[3]))
   18236              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18237              :                        STRIP_UNARY (operands[3])))))
   18238              :             return -1;
   18239              :           return 6589; /* *avx512fp16_vpternlogv8hf_2 */
   18240              : 
   18241              :         case 3:
   18242              :           if (!(
   18243              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18244              : ((64 == 64 || TARGET_AVX512VL
   18245              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18246              :    && ix86_pre_reload_split ()
   18247              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18248              :                     STRIP_UNARY (operands[4]))
   18249              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18250              :                        STRIP_UNARY (operands[4]))
   18251              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18252              :                        STRIP_UNARY (operands[3]))
   18253              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18254              :                        STRIP_UNARY (operands[3])))) && 
   18255              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18256              : (TARGET_AVX512F)))
   18257              :             return -1;
   18258              :           return 6616; /* *avx512bw_vpternlogv32bf_2 */
   18259              : 
   18260              :         case 4:
   18261              :           if (!(
   18262              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18263              : ((32 == 64 || TARGET_AVX512VL
   18264              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18265              :    && ix86_pre_reload_split ()
   18266              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18267              :                     STRIP_UNARY (operands[4]))
   18268              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18269              :                        STRIP_UNARY (operands[4]))
   18270              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18271              :                        STRIP_UNARY (operands[3]))
   18272              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18273              :                        STRIP_UNARY (operands[3])))) && 
   18274              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18275              : (TARGET_AVX)))
   18276              :             return -1;
   18277              :           return 6643; /* *avx512vl_vpternlogv16bf_2 */
   18278              : 
   18279              :         case 5:
   18280              :           if (!
   18281              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18282              : ((16 == 64 || TARGET_AVX512VL
   18283              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18284              :    && ix86_pre_reload_split ()
   18285              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18286              :                     STRIP_UNARY (operands[4]))
   18287              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18288              :                        STRIP_UNARY (operands[4]))
   18289              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18290              :                        STRIP_UNARY (operands[3]))
   18291              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18292              :                        STRIP_UNARY (operands[3])))))
   18293              :             return -1;
   18294              :           return 6670; /* *avx512vl_vpternlogv8bf_2 */
   18295              : 
   18296              :         case 6:
   18297              :           if (!(
   18298              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18299              : ((64 == 64 || TARGET_AVX512VL
   18300              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18301              :    && ix86_pre_reload_split ()
   18302              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18303              :                     STRIP_UNARY (operands[4]))
   18304              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18305              :                        STRIP_UNARY (operands[4]))
   18306              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18307              :                        STRIP_UNARY (operands[3]))
   18308              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18309              :                        STRIP_UNARY (operands[3])))) && 
   18310              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18311              : (TARGET_AVX512F)))
   18312              :             return -1;
   18313              :           return 6697; /* *avx512f_vpternlogv16sf_2 */
   18314              : 
   18315              :         case 7:
   18316              :           if (!(
   18317              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18318              : ((32 == 64 || TARGET_AVX512VL
   18319              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18320              :    && ix86_pre_reload_split ()
   18321              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18322              :                     STRIP_UNARY (operands[4]))
   18323              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18324              :                        STRIP_UNARY (operands[4]))
   18325              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18326              :                        STRIP_UNARY (operands[3]))
   18327              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18328              :                        STRIP_UNARY (operands[3])))) && 
   18329              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18330              : (TARGET_AVX)))
   18331              :             return -1;
   18332              :           return 6724; /* *avx512vl_vpternlogv8sf_2 */
   18333              : 
   18334              :         case 8:
   18335              :           if (!
   18336              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18337              : ((16 == 64 || TARGET_AVX512VL
   18338              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18339              :    && ix86_pre_reload_split ()
   18340              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18341              :                     STRIP_UNARY (operands[4]))
   18342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18343              :                        STRIP_UNARY (operands[4]))
   18344              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18345              :                        STRIP_UNARY (operands[3]))
   18346              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18347              :                        STRIP_UNARY (operands[3])))))
   18348              :             return -1;
   18349              :           return 6751; /* *avx512vl_vpternlogv4sf_2 */
   18350              : 
   18351              :         case 9:
   18352              :           if (!(
   18353              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18354              : ((64 == 64 || TARGET_AVX512VL
   18355              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18356              :    && ix86_pre_reload_split ()
   18357              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18358              :                     STRIP_UNARY (operands[4]))
   18359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18360              :                        STRIP_UNARY (operands[4]))
   18361              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18362              :                        STRIP_UNARY (operands[3]))
   18363              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18364              :                        STRIP_UNARY (operands[3])))) && 
   18365              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18366              : (TARGET_AVX512F)))
   18367              :             return -1;
   18368              :           return 6778; /* *avx512f_vpternlogv8df_2 */
   18369              : 
   18370              :         case 10:
   18371              :           if (!(
   18372              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18373              : ((32 == 64 || TARGET_AVX512VL
   18374              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18375              :    && ix86_pre_reload_split ()
   18376              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18377              :                     STRIP_UNARY (operands[4]))
   18378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18379              :                        STRIP_UNARY (operands[4]))
   18380              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18381              :                        STRIP_UNARY (operands[3]))
   18382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18383              :                        STRIP_UNARY (operands[3])))) && 
   18384              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18385              : (TARGET_AVX)))
   18386              :             return -1;
   18387              :           return 6805; /* *avx512vl_vpternlogv4df_2 */
   18388              : 
   18389              :         case 11:
   18390              :           if (!(
   18391              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18392              : ((16 == 64 || TARGET_AVX512VL
   18393              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18394              :    && ix86_pre_reload_split ()
   18395              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18396              :                     STRIP_UNARY (operands[4]))
   18397              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18398              :                        STRIP_UNARY (operands[4]))
   18399              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18400              :                        STRIP_UNARY (operands[3]))
   18401              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18402              :                        STRIP_UNARY (operands[3])))) && 
   18403              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18404              : (TARGET_SSE2)))
   18405              :             return -1;
   18406              :           return 6832; /* *avx512vl_vpternlogv2df_2 */
   18407              : 
   18408              :         default:
   18409              :           return -1;
   18410              :         }
   18411              : 
   18412              :     case IOR:
   18413              :       switch (pattern544 (x2))
   18414              :         {
   18415              :         case 0:
   18416              :           if (!(
   18417              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18418              : ((64 == 64 || TARGET_AVX512VL
   18419              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18420              :    && ix86_pre_reload_split ()
   18421              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18422              :                     STRIP_UNARY (operands[4]))
   18423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18424              :                        STRIP_UNARY (operands[4]))
   18425              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18426              :                        STRIP_UNARY (operands[3]))
   18427              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18428              :                        STRIP_UNARY (operands[3])))) && 
   18429              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18430              : (TARGET_AVX512F)))
   18431              :             return -1;
   18432              :           return 6538; /* *avx512bw_vpternlogv32hf_2 */
   18433              : 
   18434              :         case 1:
   18435              :           if (!(
   18436              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18437              : ((32 == 64 || TARGET_AVX512VL
   18438              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18439              :    && ix86_pre_reload_split ()
   18440              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18441              :                     STRIP_UNARY (operands[4]))
   18442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18443              :                        STRIP_UNARY (operands[4]))
   18444              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18445              :                        STRIP_UNARY (operands[3]))
   18446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18447              :                        STRIP_UNARY (operands[3])))) && 
   18448              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18449              : (TARGET_AVX)))
   18450              :             return -1;
   18451              :           return 6565; /* *avx512vl_vpternlogv16hf_2 */
   18452              : 
   18453              :         case 2:
   18454              :           if (!
   18455              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18456              : ((16 == 64 || TARGET_AVX512VL
   18457              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18458              :    && ix86_pre_reload_split ()
   18459              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18460              :                     STRIP_UNARY (operands[4]))
   18461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18462              :                        STRIP_UNARY (operands[4]))
   18463              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18464              :                        STRIP_UNARY (operands[3]))
   18465              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18466              :                        STRIP_UNARY (operands[3])))))
   18467              :             return -1;
   18468              :           return 6592; /* *avx512fp16_vpternlogv8hf_2 */
   18469              : 
   18470              :         case 3:
   18471              :           if (!(
   18472              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18473              : ((64 == 64 || TARGET_AVX512VL
   18474              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18475              :    && ix86_pre_reload_split ()
   18476              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18477              :                     STRIP_UNARY (operands[4]))
   18478              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18479              :                        STRIP_UNARY (operands[4]))
   18480              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18481              :                        STRIP_UNARY (operands[3]))
   18482              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18483              :                        STRIP_UNARY (operands[3])))) && 
   18484              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18485              : (TARGET_AVX512F)))
   18486              :             return -1;
   18487              :           return 6619; /* *avx512bw_vpternlogv32bf_2 */
   18488              : 
   18489              :         case 4:
   18490              :           if (!(
   18491              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18492              : ((32 == 64 || TARGET_AVX512VL
   18493              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18494              :    && ix86_pre_reload_split ()
   18495              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18496              :                     STRIP_UNARY (operands[4]))
   18497              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18498              :                        STRIP_UNARY (operands[4]))
   18499              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18500              :                        STRIP_UNARY (operands[3]))
   18501              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18502              :                        STRIP_UNARY (operands[3])))) && 
   18503              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18504              : (TARGET_AVX)))
   18505              :             return -1;
   18506              :           return 6646; /* *avx512vl_vpternlogv16bf_2 */
   18507              : 
   18508              :         case 5:
   18509              :           if (!
   18510              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18511              : ((16 == 64 || TARGET_AVX512VL
   18512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18513              :    && ix86_pre_reload_split ()
   18514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18515              :                     STRIP_UNARY (operands[4]))
   18516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18517              :                        STRIP_UNARY (operands[4]))
   18518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18519              :                        STRIP_UNARY (operands[3]))
   18520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18521              :                        STRIP_UNARY (operands[3])))))
   18522              :             return -1;
   18523              :           return 6673; /* *avx512vl_vpternlogv8bf_2 */
   18524              : 
   18525              :         case 6:
   18526              :           if (!(
   18527              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18528              : ((64 == 64 || TARGET_AVX512VL
   18529              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18530              :    && ix86_pre_reload_split ()
   18531              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18532              :                     STRIP_UNARY (operands[4]))
   18533              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18534              :                        STRIP_UNARY (operands[4]))
   18535              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18536              :                        STRIP_UNARY (operands[3]))
   18537              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18538              :                        STRIP_UNARY (operands[3])))) && 
   18539              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18540              : (TARGET_AVX512F)))
   18541              :             return -1;
   18542              :           return 6700; /* *avx512f_vpternlogv16sf_2 */
   18543              : 
   18544              :         case 7:
   18545              :           if (!(
   18546              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18547              : ((32 == 64 || TARGET_AVX512VL
   18548              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18549              :    && ix86_pre_reload_split ()
   18550              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18551              :                     STRIP_UNARY (operands[4]))
   18552              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18553              :                        STRIP_UNARY (operands[4]))
   18554              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18555              :                        STRIP_UNARY (operands[3]))
   18556              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18557              :                        STRIP_UNARY (operands[3])))) && 
   18558              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18559              : (TARGET_AVX)))
   18560              :             return -1;
   18561              :           return 6727; /* *avx512vl_vpternlogv8sf_2 */
   18562              : 
   18563              :         case 8:
   18564              :           if (!
   18565              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18566              : ((16 == 64 || TARGET_AVX512VL
   18567              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18568              :    && ix86_pre_reload_split ()
   18569              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18570              :                     STRIP_UNARY (operands[4]))
   18571              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18572              :                        STRIP_UNARY (operands[4]))
   18573              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18574              :                        STRIP_UNARY (operands[3]))
   18575              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18576              :                        STRIP_UNARY (operands[3])))))
   18577              :             return -1;
   18578              :           return 6754; /* *avx512vl_vpternlogv4sf_2 */
   18579              : 
   18580              :         case 9:
   18581              :           if (!(
   18582              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18583              : ((64 == 64 || TARGET_AVX512VL
   18584              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18585              :    && ix86_pre_reload_split ()
   18586              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18587              :                     STRIP_UNARY (operands[4]))
   18588              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18589              :                        STRIP_UNARY (operands[4]))
   18590              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18591              :                        STRIP_UNARY (operands[3]))
   18592              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18593              :                        STRIP_UNARY (operands[3])))) && 
   18594              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18595              : (TARGET_AVX512F)))
   18596              :             return -1;
   18597              :           return 6781; /* *avx512f_vpternlogv8df_2 */
   18598              : 
   18599              :         case 10:
   18600              :           if (!(
   18601              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18602              : ((32 == 64 || TARGET_AVX512VL
   18603              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18604              :    && ix86_pre_reload_split ()
   18605              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18606              :                     STRIP_UNARY (operands[4]))
   18607              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18608              :                        STRIP_UNARY (operands[4]))
   18609              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18610              :                        STRIP_UNARY (operands[3]))
   18611              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18612              :                        STRIP_UNARY (operands[3])))) && 
   18613              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18614              : (TARGET_AVX)))
   18615              :             return -1;
   18616              :           return 6808; /* *avx512vl_vpternlogv4df_2 */
   18617              : 
   18618              :         case 11:
   18619              :           if (!(
   18620              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18621              : ((16 == 64 || TARGET_AVX512VL
   18622              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18623              :    && ix86_pre_reload_split ()
   18624              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18625              :                     STRIP_UNARY (operands[4]))
   18626              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18627              :                        STRIP_UNARY (operands[4]))
   18628              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18629              :                        STRIP_UNARY (operands[3]))
   18630              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18631              :                        STRIP_UNARY (operands[3])))) && 
   18632              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18633              : (TARGET_SSE2)))
   18634              :             return -1;
   18635              :           return 6835; /* *avx512vl_vpternlogv2df_2 */
   18636              : 
   18637              :         default:
   18638              :           return -1;
   18639              :         }
   18640              : 
   18641              :     case XOR:
   18642              :       switch (pattern544 (x2))
   18643              :         {
   18644              :         case 0:
   18645              :           if (!(
   18646              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18647              : ((64 == 64 || TARGET_AVX512VL
   18648              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18649              :    && ix86_pre_reload_split ()
   18650              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18651              :                     STRIP_UNARY (operands[4]))
   18652              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18653              :                        STRIP_UNARY (operands[4]))
   18654              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18655              :                        STRIP_UNARY (operands[3]))
   18656              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18657              :                        STRIP_UNARY (operands[3])))) && 
   18658              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18659              : (TARGET_AVX512F)))
   18660              :             return -1;
   18661              :           return 6541; /* *avx512bw_vpternlogv32hf_2 */
   18662              : 
   18663              :         case 1:
   18664              :           if (!(
   18665              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18666              : ((32 == 64 || TARGET_AVX512VL
   18667              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18668              :    && ix86_pre_reload_split ()
   18669              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18670              :                     STRIP_UNARY (operands[4]))
   18671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18672              :                        STRIP_UNARY (operands[4]))
   18673              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18674              :                        STRIP_UNARY (operands[3]))
   18675              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18676              :                        STRIP_UNARY (operands[3])))) && 
   18677              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18678              : (TARGET_AVX)))
   18679              :             return -1;
   18680              :           return 6568; /* *avx512vl_vpternlogv16hf_2 */
   18681              : 
   18682              :         case 2:
   18683              :           if (!
   18684              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18685              : ((16 == 64 || TARGET_AVX512VL
   18686              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18687              :    && ix86_pre_reload_split ()
   18688              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18689              :                     STRIP_UNARY (operands[4]))
   18690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18691              :                        STRIP_UNARY (operands[4]))
   18692              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18693              :                        STRIP_UNARY (operands[3]))
   18694              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18695              :                        STRIP_UNARY (operands[3])))))
   18696              :             return -1;
   18697              :           return 6595; /* *avx512fp16_vpternlogv8hf_2 */
   18698              : 
   18699              :         case 3:
   18700              :           if (!(
   18701              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18702              : ((64 == 64 || TARGET_AVX512VL
   18703              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18704              :    && ix86_pre_reload_split ()
   18705              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18706              :                     STRIP_UNARY (operands[4]))
   18707              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18708              :                        STRIP_UNARY (operands[4]))
   18709              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18710              :                        STRIP_UNARY (operands[3]))
   18711              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18712              :                        STRIP_UNARY (operands[3])))) && 
   18713              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18714              : (TARGET_AVX512F)))
   18715              :             return -1;
   18716              :           return 6622; /* *avx512bw_vpternlogv32bf_2 */
   18717              : 
   18718              :         case 4:
   18719              :           if (!(
   18720              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18721              : ((32 == 64 || TARGET_AVX512VL
   18722              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18723              :    && ix86_pre_reload_split ()
   18724              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18725              :                     STRIP_UNARY (operands[4]))
   18726              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18727              :                        STRIP_UNARY (operands[4]))
   18728              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18729              :                        STRIP_UNARY (operands[3]))
   18730              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18731              :                        STRIP_UNARY (operands[3])))) && 
   18732              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18733              : (TARGET_AVX)))
   18734              :             return -1;
   18735              :           return 6649; /* *avx512vl_vpternlogv16bf_2 */
   18736              : 
   18737              :         case 5:
   18738              :           if (!
   18739              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18740              : ((16 == 64 || TARGET_AVX512VL
   18741              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18742              :    && ix86_pre_reload_split ()
   18743              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18744              :                     STRIP_UNARY (operands[4]))
   18745              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18746              :                        STRIP_UNARY (operands[4]))
   18747              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18748              :                        STRIP_UNARY (operands[3]))
   18749              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18750              :                        STRIP_UNARY (operands[3])))))
   18751              :             return -1;
   18752              :           return 6676; /* *avx512vl_vpternlogv8bf_2 */
   18753              : 
   18754              :         case 6:
   18755              :           if (!(
   18756              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18757              : ((64 == 64 || TARGET_AVX512VL
   18758              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18759              :    && ix86_pre_reload_split ()
   18760              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18761              :                     STRIP_UNARY (operands[4]))
   18762              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18763              :                        STRIP_UNARY (operands[4]))
   18764              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18765              :                        STRIP_UNARY (operands[3]))
   18766              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18767              :                        STRIP_UNARY (operands[3])))) && 
   18768              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18769              : (TARGET_AVX512F)))
   18770              :             return -1;
   18771              :           return 6703; /* *avx512f_vpternlogv16sf_2 */
   18772              : 
   18773              :         case 7:
   18774              :           if (!(
   18775              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18776              : ((32 == 64 || TARGET_AVX512VL
   18777              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18778              :    && ix86_pre_reload_split ()
   18779              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18780              :                     STRIP_UNARY (operands[4]))
   18781              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18782              :                        STRIP_UNARY (operands[4]))
   18783              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18784              :                        STRIP_UNARY (operands[3]))
   18785              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18786              :                        STRIP_UNARY (operands[3])))) && 
   18787              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18788              : (TARGET_AVX)))
   18789              :             return -1;
   18790              :           return 6730; /* *avx512vl_vpternlogv8sf_2 */
   18791              : 
   18792              :         case 8:
   18793              :           if (!
   18794              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18795              : ((16 == 64 || TARGET_AVX512VL
   18796              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18797              :    && ix86_pre_reload_split ()
   18798              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18799              :                     STRIP_UNARY (operands[4]))
   18800              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18801              :                        STRIP_UNARY (operands[4]))
   18802              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18803              :                        STRIP_UNARY (operands[3]))
   18804              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18805              :                        STRIP_UNARY (operands[3])))))
   18806              :             return -1;
   18807              :           return 6757; /* *avx512vl_vpternlogv4sf_2 */
   18808              : 
   18809              :         case 9:
   18810              :           if (!(
   18811              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18812              : ((64 == 64 || TARGET_AVX512VL
   18813              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18814              :    && ix86_pre_reload_split ()
   18815              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18816              :                     STRIP_UNARY (operands[4]))
   18817              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18818              :                        STRIP_UNARY (operands[4]))
   18819              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18820              :                        STRIP_UNARY (operands[3]))
   18821              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18822              :                        STRIP_UNARY (operands[3])))) && 
   18823              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18824              : (TARGET_AVX512F)))
   18825              :             return -1;
   18826              :           return 6784; /* *avx512f_vpternlogv8df_2 */
   18827              : 
   18828              :         case 10:
   18829              :           if (!(
   18830              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18831              : ((32 == 64 || TARGET_AVX512VL
   18832              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18833              :    && ix86_pre_reload_split ()
   18834              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18835              :                     STRIP_UNARY (operands[4]))
   18836              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18837              :                        STRIP_UNARY (operands[4]))
   18838              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18839              :                        STRIP_UNARY (operands[3]))
   18840              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18841              :                        STRIP_UNARY (operands[3])))) && 
   18842              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18843              : (TARGET_AVX)))
   18844              :             return -1;
   18845              :           return 6811; /* *avx512vl_vpternlogv4df_2 */
   18846              : 
   18847              :         case 11:
   18848              :           if (!(
   18849              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18850              : ((16 == 64 || TARGET_AVX512VL
   18851              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18852              :    && ix86_pre_reload_split ()
   18853              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18854              :                     STRIP_UNARY (operands[4]))
   18855              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18856              :                        STRIP_UNARY (operands[4]))
   18857              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18858              :                        STRIP_UNARY (operands[3]))
   18859              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18860              :                        STRIP_UNARY (operands[3])))) && 
   18861              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18862              : (TARGET_SSE2)))
   18863              :             return -1;
   18864              :           return 6838; /* *avx512vl_vpternlogv2df_2 */
   18865              : 
   18866              :         default:
   18867              :           return -1;
   18868              :         }
   18869              : 
   18870              :     default:
   18871              :       return -1;
   18872              :     }
   18873              : }
   18874              : 
   18875              :  int
   18876              : recog_325 (rtx x1 ATTRIBUTE_UNUSED,
   18877              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18878              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18879              : {
   18880              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18881              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   18882              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   18883              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   18884              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   18885              :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
   18886              :   rtx x42, x43, x44, x45, x46, x47, x48, x49;
   18887              :   rtx x50, x51, x52, x53, x54, x55, x56, x57;
   18888              :   rtx x58, x59, x60, x61, x62, x63, x64, x65;
   18889              :   rtx x66, x67, x68, x69;
   18890              :   int res ATTRIBUTE_UNUSED;
   18891              :   x2 = XEXP (x1, 1);
   18892              :   x3 = XEXP (x2, 1);
   18893              :   if (GET_CODE (x3) != PARALLEL)
   18894              :     return -1;
   18895              :   x4 = XEXP (x1, 0);
   18896              :   operands[0] = x4;
   18897              :   x5 = XEXP (x2, 0);
   18898              :   switch (GET_CODE (x5))
   18899              :     {
   18900              :     case VEC_CONCAT:
   18901              :       x6 = XEXP (x5, 0);
   18902              :       switch (GET_CODE (x6))
   18903              :         {
   18904              :         case REG:
   18905              :         case SUBREG:
   18906              :         case MEM:
   18907              :           operands[1] = x6;
   18908              :           res = recog_289 (x1, insn, pnum_clobbers);
   18909              :           if (res >= 0)
   18910              :             return res;
   18911              :           if (XVECLEN (x3, 0) < 1)
   18912              :             return -1;
   18913              :           operands[4] = x3;
   18914              :           switch (pattern816 (x2))
   18915              :             {
   18916              :             case 0:
   18917              :               if (
   18918              : #line 24697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18919              : (TARGET_AVX2))
   18920              :                 return 8833; /* *avx2_zero_extendv16qiv16hi2_2 */
   18921              :               break;
   18922              : 
   18923              :             case 1:
   18924              :               if (
   18925              : #line 24697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18926              : (TARGET_AVX2))
   18927              :                 return 8834; /* *avx2_zero_extendv16qiv16hi2_2 */
   18928              :               break;
   18929              : 
   18930              :             case 2:
   18931              :               if (
   18932              : #line 24697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18933              : (TARGET_AVX2))
   18934              :                 return 8835; /* *avx2_zero_extendv16qiv16hi2_2 */
   18935              :               break;
   18936              : 
   18937              :             case 3:
   18938              :               if (
   18939              : #line 24751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18940              : (TARGET_AVX512BW))
   18941              :                 return 8841; /* *avx512bw_zero_extendv32qiv32hi2_2 */
   18942              :               break;
   18943              : 
   18944              :             case 4:
   18945              :               if (
   18946              : #line 24751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18947              : (TARGET_AVX512BW))
   18948              :                 return 8842; /* *avx512bw_zero_extendv32qiv32hi2_2 */
   18949              :               break;
   18950              : 
   18951              :             case 5:
   18952              :               if (
   18953              : #line 24751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18954              : (TARGET_AVX512BW))
   18955              :                 return 8843; /* *avx512bw_zero_extendv32qiv32hi2_2 */
   18956              :               break;
   18957              : 
   18958              :             case 6:
   18959              :               if (
   18960              : #line 24890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18961              : (TARGET_SSE4_1))
   18962              :                 return 8857; /* *sse4_1_zero_extendv8qiv8hi2_4 */
   18963              :               break;
   18964              : 
   18965              :             case 7:
   18966              :               if (
   18967              : #line 24890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18968              : (TARGET_SSE4_1))
   18969              :                 return 8858; /* *sse4_1_zero_extendv8qiv8hi2_4 */
   18970              :               break;
   18971              : 
   18972              :             case 8:
   18973              :               if (
   18974              : #line 24890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18975              : (TARGET_SSE4_1))
   18976              :                 return 8859; /* *sse4_1_zero_extendv8qiv8hi2_4 */
   18977              :               break;
   18978              : 
   18979              :             case 9:
   18980              :               if (
   18981              : #line 25185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18982              : (TARGET_AVX512F))
   18983              :                 return 8895; /* *avx512f_zero_extendv16hiv16si2_2 */
   18984              :               break;
   18985              : 
   18986              :             case 10:
   18987              :               if (
   18988              : #line 25185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18989              : (TARGET_AVX512F))
   18990              :                 return 8896; /* *avx512f_zero_extendv16hiv16si2_2 */
   18991              :               break;
   18992              : 
   18993              :             case 11:
   18994              :               if (
   18995              : #line 25185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18996              : (TARGET_AVX512F))
   18997              :                 return 8897; /* *avx512f_zero_extendv16hiv16si2_2 */
   18998              :               break;
   18999              : 
   19000              :             case 12:
   19001              :               if (
   19002              : #line 25240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19003              : (TARGET_AVX2))
   19004              :                 return 8903; /* *avx2_zero_extendv8hiv8si2_2 */
   19005              :               break;
   19006              : 
   19007              :             case 13:
   19008              :               if (
   19009              : #line 25240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19010              : (TARGET_AVX2))
   19011              :                 return 8904; /* *avx2_zero_extendv8hiv8si2_2 */
   19012              :               break;
   19013              : 
   19014              :             case 14:
   19015              :               if (
   19016              : #line 25240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19017              : (TARGET_AVX2))
   19018              :                 return 8905; /* *avx2_zero_extendv8hiv8si2_2 */
   19019              :               break;
   19020              : 
   19021              :             case 15:
   19022              :               if (
   19023              : #line 25385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19024              : (TARGET_SSE4_1))
   19025              :                 return 8919; /* *sse4_1_zero_extendv4hiv4si2_4 */
   19026              :               break;
   19027              : 
   19028              :             case 16:
   19029              :               if (
   19030              : #line 25385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19031              : (TARGET_SSE4_1))
   19032              :                 return 8920; /* *sse4_1_zero_extendv4hiv4si2_4 */
   19033              :               break;
   19034              : 
   19035              :             case 17:
   19036              :               if (
   19037              : #line 25385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19038              : (TARGET_SSE4_1))
   19039              :                 return 8921; /* *sse4_1_zero_extendv4hiv4si2_4 */
   19040              :               break;
   19041              : 
   19042              :             default:
   19043              :               break;
   19044              :             }
   19045              :           operands[3] = x3;
   19046              :           switch (pattern817 (x2))
   19047              :             {
   19048              :             case 0:
   19049              :               if (!(
   19050              : #line 30107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19051              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19052              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19053              : (TARGET_AVX512F)))
   19054              :                 return -1;
   19055              :               return 9727; /* *vec_concatv64qi_0_1 */
   19056              : 
   19057              :             case 1:
   19058              :               if (!(
   19059              : #line 30107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19060              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19061              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19062              : (TARGET_AVX)))
   19063              :                 return -1;
   19064              :               return 9728; /* *vec_concatv32qi_0_1 */
   19065              : 
   19066              :             case 2:
   19067              :               if (!
   19068              : #line 30107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19069              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   19070              :                 return -1;
   19071              :               return 9729; /* *vec_concatv16qi_0_1 */
   19072              : 
   19073              :             case 3:
   19074              :               if (!(
   19075              : #line 30107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19076              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19077              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19078              : (TARGET_AVX512F)))
   19079              :                 return -1;
   19080              :               return 9730; /* *vec_concatv32hi_0_1 */
   19081              : 
   19082              :             case 4:
   19083              :               if (!(
   19084              : #line 30107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19085              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   19086              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19087              : (TARGET_AVX)))
   19088              :                 return -1;
   19089              :               return 9731; /* *vec_concatv16hi_0_1 */
   19090              : 
   19091              :             case 5:
   19092              :               if (!
   19093              : #line 30107 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19094              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   19095              :                 return -1;
   19096              :               return 9732; /* *vec_concatv8hi_0_1 */
   19097              : 
   19098              :             default:
   19099              :               return -1;
   19100              :             }
   19101              : 
   19102              :         case SS_TRUNCATE:
   19103              :           x7 = XEXP (x5, 1);
   19104              :           if (GET_CODE (x7) != SS_TRUNCATE)
   19105              :             return -1;
   19106              :           x8 = XEXP (x6, 0);
   19107              :           operands[1] = x8;
   19108              :           x9 = XEXP (x7, 0);
   19109              :           operands[2] = x9;
   19110              :           switch (XVECLEN (x3, 0))
   19111              :             {
   19112              :             case 32:
   19113              :               if (pattern848 (x3) != 0)
   19114              :                 return -1;
   19115              :               x10 = XVECEXP (x3, 0, 4);
   19116              :               if (GET_CODE (x10) != CONST_INT)
   19117              :                 return -1;
   19118              :               x11 = XVECEXP (x3, 0, 5);
   19119              :               if (GET_CODE (x11) != CONST_INT)
   19120              :                 return -1;
   19121              :               x12 = XVECEXP (x3, 0, 6);
   19122              :               if (GET_CODE (x12) != CONST_INT)
   19123              :                 return -1;
   19124              :               x13 = XVECEXP (x3, 0, 7);
   19125              :               if (GET_CODE (x13) != CONST_INT)
   19126              :                 return -1;
   19127              :               x14 = XVECEXP (x3, 0, 8);
   19128              :               if (GET_CODE (x14) != CONST_INT)
   19129              :                 return -1;
   19130              :               x15 = XVECEXP (x3, 0, 9);
   19131              :               if (GET_CODE (x15) != CONST_INT)
   19132              :                 return -1;
   19133              :               x16 = XVECEXP (x3, 0, 10);
   19134              :               if (GET_CODE (x16) != CONST_INT)
   19135              :                 return -1;
   19136              :               x17 = XVECEXP (x3, 0, 11);
   19137              :               if (GET_CODE (x17) != CONST_INT
   19138              :                   || pattern1713 (x3, 
   19139              : 23, 
   19140              : 22, 
   19141              : 21, 
   19142              : 20, 
   19143              : 8) != 0)
   19144              :                 return -1;
   19145              :               x18 = XVECEXP (x3, 0, 17);
   19146              :               if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
   19147              :                 return -1;
   19148              :               x19 = XVECEXP (x3, 0, 18);
   19149              :               if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
   19150              :                 return -1;
   19151              :               x20 = XVECEXP (x3, 0, 19);
   19152              :               if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
   19153              :                 return -1;
   19154              :               x21 = XVECEXP (x3, 0, 20);
   19155              :               if (GET_CODE (x21) != CONST_INT)
   19156              :                 return -1;
   19157              :               x22 = XVECEXP (x3, 0, 21);
   19158              :               if (GET_CODE (x22) != CONST_INT)
   19159              :                 return -1;
   19160              :               x23 = XVECEXP (x3, 0, 22);
   19161              :               if (GET_CODE (x23) != CONST_INT)
   19162              :                 return -1;
   19163              :               x24 = XVECEXP (x3, 0, 23);
   19164              :               if (GET_CODE (x24) != CONST_INT)
   19165              :                 return -1;
   19166              :               x25 = XVECEXP (x3, 0, 24);
   19167              :               if (GET_CODE (x25) != CONST_INT)
   19168              :                 return -1;
   19169              :               x26 = XVECEXP (x3, 0, 25);
   19170              :               if (GET_CODE (x26) != CONST_INT)
   19171              :                 return -1;
   19172              :               x27 = XVECEXP (x3, 0, 26);
   19173              :               if (GET_CODE (x27) != CONST_INT)
   19174              :                 return -1;
   19175              :               x28 = XVECEXP (x3, 0, 27);
   19176              :               if (GET_CODE (x28) != CONST_INT
   19177              :                   || pattern1892 (x3, 
   19178              : 31, 
   19179              : 30, 
   19180              : 29, 
   19181              : 28) != 0)
   19182              :                 return -1;
   19183              :               switch (XWINT (x10, 0))
   19184              :                 {
   19185              :                 case 4L:
   19186              :                   if (XWINT (x11, 0) != 5L
   19187              :                       || XWINT (x12, 0) != 6L
   19188              :                       || XWINT (x13, 0) != 7L
   19189              :                       || XWINT (x14, 0) != 16L
   19190              :                       || XWINT (x15, 0) != 17L
   19191              :                       || XWINT (x16, 0) != 18L
   19192              :                       || XWINT (x17, 0) != 19L
   19193              :                       || XWINT (x21, 0) != 12L
   19194              :                       || XWINT (x22, 0) != 13L
   19195              :                       || XWINT (x23, 0) != 14L
   19196              :                       || XWINT (x24, 0) != 15L
   19197              :                       || pattern1917 (x3) != 0
   19198              :                       || pattern1847 (x2, 
   19199              : E_V16HImode, 
   19200              : E_V16QImode, 
   19201              : E_V32QImode) != 0
   19202              :                       || !
   19203              : #line 19713 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19204              : (TARGET_AVX2 && 1 && 1))
   19205              :                     return -1;
   19206              :                   return 8378; /* avx2_packsswb */
   19207              : 
   19208              :                 case 16L:
   19209              :                   if (XWINT (x11, 0) != 17L
   19210              :                       || XWINT (x12, 0) != 18L
   19211              :                       || XWINT (x13, 0) != 19L
   19212              :                       || XWINT (x14, 0) != 4L
   19213              :                       || XWINT (x15, 0) != 5L
   19214              :                       || XWINT (x16, 0) != 6L
   19215              :                       || XWINT (x17, 0) != 7L
   19216              :                       || XWINT (x21, 0) != 24L
   19217              :                       || XWINT (x22, 0) != 25L
   19218              :                       || XWINT (x23, 0) != 26L
   19219              :                       || XWINT (x24, 0) != 27L
   19220              :                       || XWINT (x25, 0) != 12L
   19221              :                       || XWINT (x26, 0) != 13L
   19222              :                       || XWINT (x27, 0) != 14L
   19223              :                       || XWINT (x28, 0) != 15L
   19224              :                       || pattern1847 (x2, 
   19225              : E_V16SImode, 
   19226              : E_V16HImode, 
   19227              : E_V32HImode) != 0
   19228              :                       || !
   19229              : #line 19829 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19230              : (TARGET_AVX512BW))
   19231              :                     return -1;
   19232              :                   return 8386; /* avx512bw_packssdw */
   19233              : 
   19234              :                 default:
   19235              :                   return -1;
   19236              :                 }
   19237              : 
   19238              :             case 64:
   19239              :               if (pattern851 (x3, 
   19240              : 35, 
   19241              : 34, 
   19242              : 33, 
   19243              : 32) != 0
   19244              :                   || pattern1713 (x3, 
   19245              : 39, 
   19246              : 38, 
   19247              : 37, 
   19248              : 36, 
   19249              : 8) != 0
   19250              :                   || pattern1832 (x3, 
   19251              : 13, 
   19252              : 12, 
   19253              : 11, 
   19254              : 10, 
   19255              : 9) != 0
   19256              :                   || pattern1874 (x3, 
   19257              : 42, 
   19258              : 41, 
   19259              : 40, 
   19260              : 15, 
   19261              : 14) != 0)
   19262              :                 return -1;
   19263              :               x28 = XVECEXP (x3, 0, 27);
   19264              :               if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 43]
   19265              :                   || pattern1892 (x3, 
   19266              : 47, 
   19267              : 46, 
   19268              : 45, 
   19269              : 44) != 0)
   19270              :                 return -1;
   19271              :               x29 = XVECEXP (x3, 0, 32);
   19272              :               if (x29 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
   19273              :                 return -1;
   19274              :               x30 = XVECEXP (x3, 0, 33);
   19275              :               if (x30 != const_int_rtx[MAX_SAVED_CONST_INT + 17])
   19276              :                 return -1;
   19277              :               x31 = XVECEXP (x3, 0, 34);
   19278              :               if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 18])
   19279              :                 return -1;
   19280              :               x32 = XVECEXP (x3, 0, 35);
   19281              :               if (x32 != const_int_rtx[MAX_SAVED_CONST_INT + 19])
   19282              :                 return -1;
   19283              :               x33 = XVECEXP (x3, 0, 36);
   19284              :               if (x33 != const_int_rtx[MAX_SAVED_CONST_INT + 20])
   19285              :                 return -1;
   19286              :               x34 = XVECEXP (x3, 0, 37);
   19287              :               if (x34 != const_int_rtx[MAX_SAVED_CONST_INT + 21])
   19288              :                 return -1;
   19289              :               x35 = XVECEXP (x3, 0, 38);
   19290              :               if (x35 != const_int_rtx[MAX_SAVED_CONST_INT + 22])
   19291              :                 return -1;
   19292              :               x36 = XVECEXP (x3, 0, 39);
   19293              :               if (x36 != const_int_rtx[MAX_SAVED_CONST_INT + 23])
   19294              :                 return -1;
   19295              :               x37 = XVECEXP (x3, 0, 40);
   19296              :               if (x37 != const_int_rtx[MAX_SAVED_CONST_INT + 48])
   19297              :                 return -1;
   19298              :               x38 = XVECEXP (x3, 0, 41);
   19299              :               if (x38 != const_int_rtx[MAX_SAVED_CONST_INT + 49])
   19300              :                 return -1;
   19301              :               x39 = XVECEXP (x3, 0, 42);
   19302              :               if (x39 != const_int_rtx[MAX_SAVED_CONST_INT + 50])
   19303              :                 return -1;
   19304              :               x40 = XVECEXP (x3, 0, 43);
   19305              :               if (x40 != const_int_rtx[MAX_SAVED_CONST_INT + 51])
   19306              :                 return -1;
   19307              :               x41 = XVECEXP (x3, 0, 44);
   19308              :               if (x41 != const_int_rtx[MAX_SAVED_CONST_INT + 52])
   19309              :                 return -1;
   19310              :               x42 = XVECEXP (x3, 0, 45);
   19311              :               if (x42 != const_int_rtx[MAX_SAVED_CONST_INT + 53])
   19312              :                 return -1;
   19313              :               x43 = XVECEXP (x3, 0, 46);
   19314              :               if (x43 != const_int_rtx[MAX_SAVED_CONST_INT + 54])
   19315              :                 return -1;
   19316              :               x44 = XVECEXP (x3, 0, 47);
   19317              :               if (x44 != const_int_rtx[MAX_SAVED_CONST_INT + 55])
   19318              :                 return -1;
   19319              :               x45 = XVECEXP (x3, 0, 48);
   19320              :               if (x45 != const_int_rtx[MAX_SAVED_CONST_INT + 24])
   19321              :                 return -1;
   19322              :               x46 = XVECEXP (x3, 0, 49);
   19323              :               if (x46 != const_int_rtx[MAX_SAVED_CONST_INT + 25])
   19324              :                 return -1;
   19325              :               x47 = XVECEXP (x3, 0, 50);
   19326              :               if (x47 != const_int_rtx[MAX_SAVED_CONST_INT + 26])
   19327              :                 return -1;
   19328              :               x48 = XVECEXP (x3, 0, 51);
   19329              :               if (x48 != const_int_rtx[MAX_SAVED_CONST_INT + 27])
   19330              :                 return -1;
   19331              :               x49 = XVECEXP (x3, 0, 52);
   19332              :               if (x49 != const_int_rtx[MAX_SAVED_CONST_INT + 28])
   19333              :                 return -1;
   19334              :               x50 = XVECEXP (x3, 0, 53);
   19335              :               if (x50 != const_int_rtx[MAX_SAVED_CONST_INT + 29])
   19336              :                 return -1;
   19337              :               x51 = XVECEXP (x3, 0, 54);
   19338              :               if (x51 != const_int_rtx[MAX_SAVED_CONST_INT + 30])
   19339              :                 return -1;
   19340              :               x52 = XVECEXP (x3, 0, 55);
   19341              :               if (x52 != const_int_rtx[MAX_SAVED_CONST_INT + 31])
   19342              :                 return -1;
   19343              :               x53 = XVECEXP (x3, 0, 56);
   19344              :               if (x53 != const_int_rtx[MAX_SAVED_CONST_INT + 56])
   19345              :                 return -1;
   19346              :               x54 = XVECEXP (x3, 0, 57);
   19347              :               if (x54 != const_int_rtx[MAX_SAVED_CONST_INT + 57])
   19348              :                 return -1;
   19349              :               x55 = XVECEXP (x3, 0, 58);
   19350              :               if (x55 != const_int_rtx[MAX_SAVED_CONST_INT + 58])
   19351              :                 return -1;
   19352              :               x56 = XVECEXP (x3, 0, 59);
   19353              :               if (x56 != const_int_rtx[MAX_SAVED_CONST_INT + 59])
   19354              :                 return -1;
   19355              :               x57 = XVECEXP (x3, 0, 60);
   19356              :               if (x57 != const_int_rtx[MAX_SAVED_CONST_INT + 60])
   19357              :                 return -1;
   19358              :               x58 = XVECEXP (x3, 0, 61);
   19359              :               if (x58 != const_int_rtx[MAX_SAVED_CONST_INT + 61])
   19360              :                 return -1;
   19361              :               x59 = XVECEXP (x3, 0, 62);
   19362              :               if (x59 != const_int_rtx[MAX_SAVED_CONST_INT + 62])
   19363              :                 return -1;
   19364              :               x60 = XVECEXP (x3, 0, 63);
   19365              :               if (x60 != const_int_rtx[MAX_SAVED_CONST_INT + 63]
   19366              :                   || pattern1847 (x2, 
   19367              : E_V32HImode, 
   19368              : E_V32QImode, 
   19369              : E_V64QImode) != 0
   19370              :                   || !
   19371              : #line 19760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19372              : (TARGET_AVX512BW))
   19373              :                 return -1;
   19374              :               return 8380; /* avx512bw_packsswb */
   19375              : 
   19376              :             case 16:
   19377              :               if (pattern849 (x3, 
   19378              : 10, 
   19379              : 9, 
   19380              : 8) != 0
   19381              :                   || pattern1514 (x3, 
   19382              : 7, 
   19383              : 6, 
   19384              : 5, 
   19385              : 4, 
   19386              : 11) != 0
   19387              :                   || pattern1847 (x2, 
   19388              : E_V8SImode, 
   19389              : E_V8HImode, 
   19390              : E_V16HImode) != 0
   19391              :                   || !
   19392              : #line 19799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19393              : (TARGET_AVX2 && 1 && 1))
   19394              :                 return -1;
   19395              :               return 8384; /* avx2_packssdw */
   19396              : 
   19397              :             default:
   19398              :               return -1;
   19399              :             }
   19400              : 
   19401              :         case VEC_CONCAT:
   19402              :           switch (pattern525 (x2))
   19403              :             {
   19404              :             case 0:
   19405              :               if (!
   19406              : #line 25888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19407              : (TARGET_AVX512F))
   19408              :                 return -1;
   19409              :               return 8990; /* *avx512f_zero_extendv8siv8di2_2 */
   19410              : 
   19411              :             case 1:
   19412              :               if (!
   19413              : #line 25941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19414              : (TARGET_AVX2))
   19415              :                 return -1;
   19416              :               return 8996; /* *avx2_zero_extendv4siv4di2_2 */
   19417              : 
   19418              :             case 2:
   19419              :               if (!
   19420              : #line 26062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19421              : (TARGET_SSE4_1))
   19422              :                 return -1;
   19423              :               return 9010; /* *sse4_1_zero_extendv2siv2di2_4 */
   19424              : 
   19425              :             default:
   19426              :               return -1;
   19427              :             }
   19428              : 
   19429              :         default:
   19430              :           return -1;
   19431              :         }
   19432              : 
   19433              :     case REG:
   19434              :     case SUBREG:
   19435              :     case MEM:
   19436              :       operands[1] = x5;
   19437              :       res = recog_303 (x1, insn, pnum_clobbers);
   19438              :       if (res >= 0)
   19439              :         return res;
   19440              :       if (GET_CODE (x5) != SUBREG)
   19441              :         return -1;
   19442              :       switch (pattern527 (x2))
   19443              :         {
   19444              :         case 0:
   19445              :           if (!
   19446              : #line 15437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19447              : (TARGET_AVX512BW && ix86_pre_reload_split ()))
   19448              :             return -1;
   19449              :           return 7279; /* *avx512bw_permvar_truncv16siv16hi_1_hf */
   19450              : 
   19451              :         case 1:
   19452              :           if (!
   19453              : #line 15490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19454              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()))
   19455              :             return -1;
   19456              :           return 7281; /* *avx512f_permvar_truncv8siv8hi_1_hf */
   19457              : 
   19458              :         default:
   19459              :           return -1;
   19460              :         }
   19461              : 
   19462              :     case UNSPEC:
   19463              :       switch (XVECLEN (x5, 0))
   19464              :         {
   19465              :         case 2:
   19466              :           switch (pattern529 (x2))
   19467              :             {
   19468              :             case 0:
   19469              :               if (!
   19470              : #line 15412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19471              : (TARGET_AVX512BW && ix86_pre_reload_split ()))
   19472              :                 return -1;
   19473              :               return 7278; /* *avx512bw_permvar_truncv16siv16hi_1 */
   19474              : 
   19475              :             case 1:
   19476              :               if (!
   19477              : #line 15674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19478              : (TARGET_AVX512VL && TARGET_AVX512VBMI
   19479              :    && ix86_pre_reload_split ()))
   19480              :                 return -1;
   19481              :               return 7311; /* *avx512f_permvar_truncv16hiv16qi_1 */
   19482              : 
   19483              :             case 2:
   19484              :               if (!
   19485              : #line 15469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19486              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()))
   19487              :                 return -1;
   19488              :               return 7280; /* *avx512f_permvar_truncv8siv8hi_1 */
   19489              : 
   19490              :             case 3:
   19491              :               if (!
   19492              : #line 15521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19493              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   19494              :                 return -1;
   19495              :               return 7282; /* *avx512f_vpermvar_truncv8div8si_1 */
   19496              : 
   19497              :             case 4:
   19498              :               if (!
   19499              : #line 15593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19500              : (TARGET_AVX512VBMI && ix86_pre_reload_split ()))
   19501              :                 return -1;
   19502              :               return 7298; /* *avx512f_permvar_truncv32hiv32qi_1 */
   19503              : 
   19504              :             case 5:
   19505              :               if (!
   19506              : #line 15693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19507              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   19508              :                 return -1;
   19509              :               return 7312; /* *avx512f_permvar_truncv4div4si_1 */
   19510              : 
   19511              :             default:
   19512              :               return -1;
   19513              :             }
   19514              : 
   19515              :         case 1:
   19516              :           if (XINT (x5, 1) != 150
   19517              :               || GET_MODE (x5) != E_V8SFmode
   19518              :               || XVECLEN (x3, 0) != 4
   19519              :               || pattern848 (x3) != 0
   19520              :               || !register_operand (operands[0], E_V4SFmode)
   19521              :               || GET_MODE (x2) != E_V4SFmode)
   19522              :             return -1;
   19523              :           x61 = XVECEXP (x5, 0, 0);
   19524              :           operands[1] = x61;
   19525              :           if (!register_operand (operands[1], E_V8HImode)
   19526              :               || !
   19527              : #line 30124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19528              : (TARGET_F16C || TARGET_AVX512VL))
   19529              :             return -1;
   19530              :           return 9751; /* vcvtph2ps */
   19531              : 
   19532              :         case 4:
   19533              :           if (pnum_clobbers == NULL
   19534              :               || XINT (x5, 1) != 154)
   19535              :             return -1;
   19536              :           x62 = XVECEXP (x5, 0, 1);
   19537              :           if (GET_CODE (x62) != MEM)
   19538              :             return -1;
   19539              :           x63 = XEXP (x62, 0);
   19540              :           if (GET_CODE (x63) != UNSPEC
   19541              :               || XVECLEN (x63, 0) != 3
   19542              :               || XINT (x63, 1) != 155)
   19543              :             return -1;
   19544              :           x64 = XVECEXP (x5, 0, 2);
   19545              :           if (GET_CODE (x64) != MEM
   19546              :               || GET_MODE (x64) != E_BLKmode)
   19547              :             return -1;
   19548              :           x65 = XEXP (x64, 0);
   19549              :           if (GET_CODE (x65) != SCRATCH
   19550              :               || XVECLEN (x3, 0) != 4
   19551              :               || pattern848 (x3) != 0)
   19552              :             return -1;
   19553              :           x66 = XVECEXP (x63, 0, 1);
   19554              :           if (!register_operand (x66, E_V4DImode))
   19555              :             return -1;
   19556              :           x67 = XVECEXP (x63, 0, 2);
   19557              :           if (!const1248_operand (x67, E_SImode))
   19558              :             return -1;
   19559              :           x61 = XVECEXP (x5, 0, 0);
   19560              :           switch (GET_CODE (x61))
   19561              :             {
   19562              :             case REG:
   19563              :             case SUBREG:
   19564              :               operands[2] = x61;
   19565              :               operands[7] = x62;
   19566              :               x68 = XVECEXP (x63, 0, 0);
   19567              :               operands[3] = x68;
   19568              :               operands[4] = x66;
   19569              :               operands[6] = x67;
   19570              :               x69 = XVECEXP (x5, 0, 3);
   19571              :               operands[5] = x69;
   19572              :               switch (GET_MODE (operands[0]))
   19573              :                 {
   19574              :                 case E_V4SImode:
   19575              :                   switch (pattern1869 (x2, 
   19576              : E_V4SImode, 
   19577              : E_SImode, 
   19578              : E_V8SImode))
   19579              :                     {
   19580              :                     case 0:
   19581              :                       if (!(
   19582              : #line 30451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19583              : (TARGET_AVX2) && 
   19584              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19585              : (Pmode == SImode)))
   19586              :                         return -1;
   19587              :                       *pnum_clobbers = 1;
   19588              :                       return 9838; /* *avx2_gatherdiv8si_3 */
   19589              : 
   19590              :                     case 1:
   19591              :                       if (!(
   19592              : #line 30451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19593              : (TARGET_AVX2) && 
   19594              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19595              : (Pmode == DImode)))
   19596              :                         return -1;
   19597              :                       *pnum_clobbers = 1;
   19598              :                       return 9840; /* *avx2_gatherdiv8si_3 */
   19599              : 
   19600              :                     default:
   19601              :                       return -1;
   19602              :                     }
   19603              : 
   19604              :                 case E_V4SFmode:
   19605              :                   switch (pattern1869 (x2, 
   19606              : E_V4SFmode, 
   19607              : E_SFmode, 
   19608              : E_V8SFmode))
   19609              :                     {
   19610              :                     case 0:
   19611              :                       if (!(
   19612              : #line 30451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19613              : (TARGET_AVX2) && 
   19614              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19615              : (Pmode == SImode)))
   19616              :                         return -1;
   19617              :                       *pnum_clobbers = 1;
   19618              :                       return 9839; /* *avx2_gatherdiv8sf_3 */
   19619              : 
   19620              :                     case 1:
   19621              :                       if (!(
   19622              : #line 30451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19623              : (TARGET_AVX2) && 
   19624              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19625              : (Pmode == DImode)))
   19626              :                         return -1;
   19627              :                       *pnum_clobbers = 1;
   19628              :                       return 9841; /* *avx2_gatherdiv8sf_3 */
   19629              : 
   19630              :                     default:
   19631              :                       return -1;
   19632              :                     }
   19633              : 
   19634              :                 default:
   19635              :                   return -1;
   19636              :                 }
   19637              : 
   19638              :             case PC:
   19639              :               operands[6] = x62;
   19640              :               x68 = XVECEXP (x63, 0, 0);
   19641              :               operands[2] = x68;
   19642              :               operands[3] = x66;
   19643              :               operands[5] = x67;
   19644              :               x69 = XVECEXP (x5, 0, 3);
   19645              :               operands[4] = x69;
   19646              :               switch (GET_MODE (operands[0]))
   19647              :                 {
   19648              :                 case E_V4SImode:
   19649              :                   switch (pattern1863 (x2, 
   19650              : E_V4SImode, 
   19651              : E_SImode, 
   19652              : E_V8SImode))
   19653              :                     {
   19654              :                     case 0:
   19655              :                       if (!(
   19656              : #line 30475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19657              : (TARGET_AVX2) && 
   19658              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19659              : (Pmode == SImode)))
   19660              :                         return -1;
   19661              :                       *pnum_clobbers = 1;
   19662              :                       return 9842; /* *avx2_gatherdiv8si_4 */
   19663              : 
   19664              :                     case 1:
   19665              :                       if (!(
   19666              : #line 30475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19667              : (TARGET_AVX2) && 
   19668              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19669              : (Pmode == DImode)))
   19670              :                         return -1;
   19671              :                       *pnum_clobbers = 1;
   19672              :                       return 9844; /* *avx2_gatherdiv8si_4 */
   19673              : 
   19674              :                     default:
   19675              :                       return -1;
   19676              :                     }
   19677              : 
   19678              :                 case E_V4SFmode:
   19679              :                   switch (pattern1863 (x2, 
   19680              : E_V4SFmode, 
   19681              : E_SFmode, 
   19682              : E_V8SFmode))
   19683              :                     {
   19684              :                     case 0:
   19685              :                       if (!(
   19686              : #line 30475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19687              : (TARGET_AVX2) && 
   19688              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19689              : (Pmode == SImode)))
   19690              :                         return -1;
   19691              :                       *pnum_clobbers = 1;
   19692              :                       return 9843; /* *avx2_gatherdiv8sf_4 */
   19693              : 
   19694              :                     case 1:
   19695              :                       if (!(
   19696              : #line 30475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19697              : (TARGET_AVX2) && 
   19698              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   19699              : (Pmode == DImode)))
   19700              :                         return -1;
   19701              :                       *pnum_clobbers = 1;
   19702              :                       return 9845; /* *avx2_gatherdiv8sf_4 */
   19703              : 
   19704              :                     default:
   19705              :                       return -1;
   19706              :                     }
   19707              : 
   19708              :                 default:
   19709              :                   return -1;
   19710              :                 }
   19711              : 
   19712              :             default:
   19713              :               return -1;
   19714              :             }
   19715              : 
   19716              :         default:
   19717              :           return -1;
   19718              :         }
   19719              : 
   19720              :     default:
   19721              :       return -1;
   19722              :     }
   19723              : }
   19724              : 
   19725              :  int
   19726              : recog_329 (rtx x1 ATTRIBUTE_UNUSED,
   19727              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   19728              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   19729              : {
   19730              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   19731              :   rtx x2;
   19732              :   int res ATTRIBUTE_UNUSED;
   19733              :   x2 = XEXP (x1, 1);
   19734              :   operands[1] = x2;
   19735              :   switch (GET_MODE (operands[0]))
   19736              :     {
   19737              :     case E_V64QImode:
   19738              :       if (nonimmediate_operand (operands[0], E_V64QImode)
   19739              :           && nonimmediate_or_sse_const_operand (operands[1], E_V64QImode)
   19740              :           && (
   19741              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19742              : (TARGET_SSE
   19743              :    && (register_operand (operands[0], V64QImode)
   19744              :        || register_operand (operands[1], V64QImode))
   19745              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19746              : #line 287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19747              : (TARGET_AVX512F)))
   19748              :         return 2449; /* movv64qi_internal */
   19749              :       if (!register_operand (operands[0], E_V64QImode)
   19750              :           || !ternlog_operand (operands[1], E_V64QImode)
   19751              :           || !(
   19752              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19753              : ((64 == 64 || TARGET_AVX512VL
   19754              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19755              :    && ix86_pre_reload_split ()) && 
   19756              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19757              : (TARGET_AVX512F)))
   19758              :         return -1;
   19759              :       return 5520; /* *avx512bw_vpternlogv64qi_0 */
   19760              : 
   19761              :     case E_V32QImode:
   19762              :       if (nonimmediate_operand (operands[0], E_V32QImode)
   19763              :           && nonimmediate_or_sse_const_operand (operands[1], E_V32QImode)
   19764              :           && (
   19765              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19766              : (TARGET_SSE
   19767              :    && (register_operand (operands[0], V32QImode)
   19768              :        || register_operand (operands[1], V32QImode))
   19769              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19770              : #line 287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19771              : (TARGET_AVX)))
   19772              :         return 2450; /* movv32qi_internal */
   19773              :       if (!register_operand (operands[0], E_V32QImode)
   19774              :           || !ternlog_operand (operands[1], E_V32QImode)
   19775              :           || !(
   19776              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19777              : ((32 == 64 || TARGET_AVX512VL
   19778              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19779              :    && ix86_pre_reload_split ()) && 
   19780              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19781              : (TARGET_AVX)))
   19782              :         return -1;
   19783              :       return 5521; /* *avx512vl_vpternlogv32qi_0 */
   19784              : 
   19785              :     case E_V16QImode:
   19786              :       if (nonimmediate_operand (operands[0], E_V16QImode)
   19787              :           && nonimmediate_or_sse_const_operand (operands[1], E_V16QImode)
   19788              :           && 
   19789              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19790              : (TARGET_SSE
   19791              :    && (register_operand (operands[0], V16QImode)
   19792              :        || register_operand (operands[1], V16QImode))
   19793              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   19794              :         return 2451; /* movv16qi_internal */
   19795              :       if (!register_operand (operands[0], E_V16QImode)
   19796              :           || !ternlog_operand (operands[1], E_V16QImode)
   19797              :           || !
   19798              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19799              : ((16 == 64 || TARGET_AVX512VL
   19800              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19801              :    && ix86_pre_reload_split ()))
   19802              :         return -1;
   19803              :       return 5522; /* *avx512vl_vpternlogv16qi_0 */
   19804              : 
   19805              :     case E_V32HImode:
   19806              :       if (nonimmediate_operand (operands[0], E_V32HImode)
   19807              :           && nonimmediate_or_sse_const_operand (operands[1], E_V32HImode)
   19808              :           && (
   19809              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19810              : (TARGET_SSE
   19811              :    && (register_operand (operands[0], V32HImode)
   19812              :        || register_operand (operands[1], V32HImode))
   19813              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19814              : #line 288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19815              : (TARGET_AVX512F)))
   19816              :         return 2452; /* movv32hi_internal */
   19817              :       if (!register_operand (operands[0], E_V32HImode)
   19818              :           || !ternlog_operand (operands[1], E_V32HImode)
   19819              :           || !(
   19820              : #line 14148 "/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              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19825              : (TARGET_AVX512F)))
   19826              :         return -1;
   19827              :       return 5523; /* *avx512bw_vpternlogv32hi_0 */
   19828              : 
   19829              :     case E_V16HImode:
   19830              :       if (nonimmediate_operand (operands[0], E_V16HImode)
   19831              :           && nonimmediate_or_sse_const_operand (operands[1], E_V16HImode)
   19832              :           && (
   19833              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19834              : (TARGET_SSE
   19835              :    && (register_operand (operands[0], V16HImode)
   19836              :        || register_operand (operands[1], V16HImode))
   19837              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19838              : #line 288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19839              : (TARGET_AVX)))
   19840              :         return 2453; /* movv16hi_internal */
   19841              :       if (!register_operand (operands[0], E_V16HImode)
   19842              :           || !ternlog_operand (operands[1], E_V16HImode)
   19843              :           || !(
   19844              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19845              : ((32 == 64 || TARGET_AVX512VL
   19846              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19847              :    && ix86_pre_reload_split ()) && 
   19848              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19849              : (TARGET_AVX)))
   19850              :         return -1;
   19851              :       return 5524; /* *avx512vl_vpternlogv16hi_0 */
   19852              : 
   19853              :     case E_V8HImode:
   19854              :       if (nonimmediate_operand (operands[0], E_V8HImode)
   19855              :           && nonimmediate_or_sse_const_operand (operands[1], E_V8HImode)
   19856              :           && 
   19857              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19858              : (TARGET_SSE
   19859              :    && (register_operand (operands[0], V8HImode)
   19860              :        || register_operand (operands[1], V8HImode))
   19861              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   19862              :         return 2454; /* movv8hi_internal */
   19863              :       if (!register_operand (operands[0], E_V8HImode)
   19864              :           || !ternlog_operand (operands[1], E_V8HImode)
   19865              :           || !
   19866              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19867              : ((16 == 64 || TARGET_AVX512VL
   19868              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19869              :    && ix86_pre_reload_split ()))
   19870              :         return -1;
   19871              :       return 5525; /* *avx512vl_vpternlogv8hi_0 */
   19872              : 
   19873              :     case E_V16SImode:
   19874              :       if (nonimmediate_operand (operands[0], E_V16SImode)
   19875              :           && nonimmediate_or_sse_const_operand (operands[1], E_V16SImode)
   19876              :           && (
   19877              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19878              : (TARGET_SSE
   19879              :    && (register_operand (operands[0], V16SImode)
   19880              :        || register_operand (operands[1], V16SImode))
   19881              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19882              : #line 289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19883              : (TARGET_AVX512F)))
   19884              :         return 2455; /* movv16si_internal */
   19885              :       if (!register_operand (operands[0], E_V16SImode)
   19886              :           || !ternlog_operand (operands[1], E_V16SImode)
   19887              :           || !(
   19888              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19889              : ((64 == 64 || TARGET_AVX512VL
   19890              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19891              :    && ix86_pre_reload_split ()) && 
   19892              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19893              : (TARGET_AVX512F)))
   19894              :         return -1;
   19895              :       return 5526; /* *avx512f_vpternlogv16si_0 */
   19896              : 
   19897              :     case E_V8SImode:
   19898              :       if (nonimmediate_operand (operands[0], E_V8SImode)
   19899              :           && nonimmediate_or_sse_const_operand (operands[1], E_V8SImode)
   19900              :           && (
   19901              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19902              : (TARGET_SSE
   19903              :    && (register_operand (operands[0], V8SImode)
   19904              :        || register_operand (operands[1], V8SImode))
   19905              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19906              : #line 289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19907              : (TARGET_AVX)))
   19908              :         return 2456; /* movv8si_internal */
   19909              :       if (!register_operand (operands[0], E_V8SImode)
   19910              :           || !ternlog_operand (operands[1], E_V8SImode)
   19911              :           || !(
   19912              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19913              : ((32 == 64 || TARGET_AVX512VL
   19914              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19915              :    && ix86_pre_reload_split ()) && 
   19916              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19917              : (TARGET_AVX)))
   19918              :         return -1;
   19919              :       return 5527; /* *avx512vl_vpternlogv8si_0 */
   19920              : 
   19921              :     case E_V4SImode:
   19922              :       if (nonimmediate_operand (operands[0], E_V4SImode)
   19923              :           && nonimmediate_or_sse_const_operand (operands[1], E_V4SImode)
   19924              :           && 
   19925              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19926              : (TARGET_SSE
   19927              :    && (register_operand (operands[0], V4SImode)
   19928              :        || register_operand (operands[1], V4SImode))
   19929              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   19930              :         return 2457; /* movv4si_internal */
   19931              :       if (!register_operand (operands[0], E_V4SImode)
   19932              :           || !ternlog_operand (operands[1], E_V4SImode)
   19933              :           || !
   19934              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19935              : ((16 == 64 || TARGET_AVX512VL
   19936              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19937              :    && ix86_pre_reload_split ()))
   19938              :         return -1;
   19939              :       return 5528; /* *avx512vl_vpternlogv4si_0 */
   19940              : 
   19941              :     case E_V8DImode:
   19942              :       if (nonimmediate_operand (operands[0], E_V8DImode)
   19943              :           && nonimmediate_or_sse_const_operand (operands[1], E_V8DImode)
   19944              :           && (
   19945              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19946              : (TARGET_SSE
   19947              :    && (register_operand (operands[0], V8DImode)
   19948              :        || register_operand (operands[1], V8DImode))
   19949              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19950              : #line 290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19951              : (TARGET_AVX512F)))
   19952              :         return 2458; /* movv8di_internal */
   19953              :       if (!register_operand (operands[0], E_V8DImode)
   19954              :           || !ternlog_operand (operands[1], E_V8DImode)
   19955              :           || !(
   19956              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19957              : ((64 == 64 || TARGET_AVX512VL
   19958              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19959              :    && ix86_pre_reload_split ()) && 
   19960              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19961              : (TARGET_AVX512F)))
   19962              :         return -1;
   19963              :       return 5529; /* *avx512f_vpternlogv8di_0 */
   19964              : 
   19965              :     case E_V4DImode:
   19966              :       if (nonimmediate_operand (operands[0], E_V4DImode)
   19967              :           && nonimmediate_or_sse_const_operand (operands[1], E_V4DImode)
   19968              :           && (
   19969              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19970              : (TARGET_SSE
   19971              :    && (register_operand (operands[0], V4DImode)
   19972              :        || register_operand (operands[1], V4DImode))
   19973              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   19974              : #line 290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19975              : (TARGET_AVX)))
   19976              :         return 2459; /* movv4di_internal */
   19977              :       if (!register_operand (operands[0], E_V4DImode)
   19978              :           || !ternlog_operand (operands[1], E_V4DImode)
   19979              :           || !(
   19980              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19981              : ((32 == 64 || TARGET_AVX512VL
   19982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19983              :    && ix86_pre_reload_split ()) && 
   19984              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19985              : (TARGET_AVX)))
   19986              :         return -1;
   19987              :       return 5530; /* *avx512vl_vpternlogv4di_0 */
   19988              : 
   19989              :     case E_V2DImode:
   19990              :       if (nonimmediate_operand (operands[0], E_V2DImode)
   19991              :           && nonimmediate_or_sse_const_operand (operands[1], E_V2DImode)
   19992              :           && 
   19993              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19994              : (TARGET_SSE
   19995              :    && (register_operand (operands[0], V2DImode)
   19996              :        || register_operand (operands[1], V2DImode))
   19997              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   19998              :         return 2460; /* movv2di_internal */
   19999              :       if (!register_operand (operands[0], E_V2DImode)
   20000              :           || !ternlog_operand (operands[1], E_V2DImode)
   20001              :           || !
   20002              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20003              : ((16 == 64 || TARGET_AVX512VL
   20004              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20005              :    && ix86_pre_reload_split ()))
   20006              :         return -1;
   20007              :       return 5531; /* *avx512vl_vpternlogv2di_0 */
   20008              : 
   20009              :     case E_V4TImode:
   20010              :       if (!nonimmediate_operand (operands[0], E_V4TImode)
   20011              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V4TImode)
   20012              :           || !(
   20013              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20014              : (TARGET_SSE
   20015              :    && (register_operand (operands[0], V4TImode)
   20016              :        || register_operand (operands[1], V4TImode))
   20017              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20018              : #line 291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20019              : (TARGET_AVX512F)))
   20020              :         return -1;
   20021              :       return 2461; /* movv4ti_internal */
   20022              : 
   20023              :     case E_V2TImode:
   20024              :       if (!nonimmediate_operand (operands[0], E_V2TImode)
   20025              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V2TImode)
   20026              :           || !(
   20027              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20028              : (TARGET_SSE
   20029              :    && (register_operand (operands[0], V2TImode)
   20030              :        || register_operand (operands[1], V2TImode))
   20031              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20032              : #line 291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20033              : (TARGET_AVX)))
   20034              :         return -1;
   20035              :       return 2462; /* movv2ti_internal */
   20036              : 
   20037              :     case E_V1TImode:
   20038              :       if (!nonimmediate_operand (operands[0], E_V1TImode)
   20039              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V1TImode)
   20040              :           || !
   20041              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20042              : (TARGET_SSE
   20043              :    && (register_operand (operands[0], V1TImode)
   20044              :        || register_operand (operands[1], V1TImode))
   20045              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   20046              :         return -1;
   20047              :       return 2463; /* movv1ti_internal */
   20048              : 
   20049              :     case E_V32HFmode:
   20050              :       if (!nonimmediate_operand (operands[0], E_V32HFmode)
   20051              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V32HFmode)
   20052              :           || !(
   20053              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20054              : (TARGET_SSE
   20055              :    && (register_operand (operands[0], V32HFmode)
   20056              :        || register_operand (operands[1], V32HFmode))
   20057              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20058              : #line 292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20059              : (TARGET_AVX512F)))
   20060              :         return -1;
   20061              :       return 2464; /* movv32hf_internal */
   20062              : 
   20063              :     case E_V16HFmode:
   20064              :       if (!nonimmediate_operand (operands[0], E_V16HFmode)
   20065              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V16HFmode)
   20066              :           || !(
   20067              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20068              : (TARGET_SSE
   20069              :    && (register_operand (operands[0], V16HFmode)
   20070              :        || register_operand (operands[1], V16HFmode))
   20071              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20072              : #line 292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20073              : (TARGET_AVX)))
   20074              :         return -1;
   20075              :       return 2465; /* movv16hf_internal */
   20076              : 
   20077              :     case E_V8HFmode:
   20078              :       if (!nonimmediate_operand (operands[0], E_V8HFmode)
   20079              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V8HFmode)
   20080              :           || !
   20081              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20082              : (TARGET_SSE
   20083              :    && (register_operand (operands[0], V8HFmode)
   20084              :        || register_operand (operands[1], V8HFmode))
   20085              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   20086              :         return -1;
   20087              :       return 2466; /* movv8hf_internal */
   20088              : 
   20089              :     case E_V32BFmode:
   20090              :       if (!nonimmediate_operand (operands[0], E_V32BFmode)
   20091              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V32BFmode)
   20092              :           || !(
   20093              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20094              : (TARGET_SSE
   20095              :    && (register_operand (operands[0], V32BFmode)
   20096              :        || register_operand (operands[1], V32BFmode))
   20097              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20098              : #line 293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20099              : (TARGET_AVX512F)))
   20100              :         return -1;
   20101              :       return 2467; /* movv32bf_internal */
   20102              : 
   20103              :     case E_V16BFmode:
   20104              :       if (!nonimmediate_operand (operands[0], E_V16BFmode)
   20105              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V16BFmode)
   20106              :           || !(
   20107              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20108              : (TARGET_SSE
   20109              :    && (register_operand (operands[0], V16BFmode)
   20110              :        || register_operand (operands[1], V16BFmode))
   20111              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20112              : #line 293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20113              : (TARGET_AVX)))
   20114              :         return -1;
   20115              :       return 2468; /* movv16bf_internal */
   20116              : 
   20117              :     case E_V8BFmode:
   20118              :       if (!nonimmediate_operand (operands[0], E_V8BFmode)
   20119              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V8BFmode)
   20120              :           || !
   20121              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20122              : (TARGET_SSE
   20123              :    && (register_operand (operands[0], V8BFmode)
   20124              :        || register_operand (operands[1], V8BFmode))
   20125              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   20126              :         return -1;
   20127              :       return 2469; /* movv8bf_internal */
   20128              : 
   20129              :     case E_V16SFmode:
   20130              :       if (!nonimmediate_operand (operands[0], E_V16SFmode)
   20131              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V16SFmode)
   20132              :           || !(
   20133              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20134              : (TARGET_SSE
   20135              :    && (register_operand (operands[0], V16SFmode)
   20136              :        || register_operand (operands[1], V16SFmode))
   20137              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20138              : #line 294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20139              : (TARGET_AVX512F)))
   20140              :         return -1;
   20141              :       return 2470; /* movv16sf_internal */
   20142              : 
   20143              :     case E_V8SFmode:
   20144              :       if (!nonimmediate_operand (operands[0], E_V8SFmode)
   20145              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V8SFmode)
   20146              :           || !(
   20147              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20148              : (TARGET_SSE
   20149              :    && (register_operand (operands[0], V8SFmode)
   20150              :        || register_operand (operands[1], V8SFmode))
   20151              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20152              : #line 294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20153              : (TARGET_AVX)))
   20154              :         return -1;
   20155              :       return 2471; /* movv8sf_internal */
   20156              : 
   20157              :     case E_V4SFmode:
   20158              :       if (!nonimmediate_operand (operands[0], E_V4SFmode)
   20159              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V4SFmode)
   20160              :           || !
   20161              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20162              : (TARGET_SSE
   20163              :    && (register_operand (operands[0], V4SFmode)
   20164              :        || register_operand (operands[1], V4SFmode))
   20165              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   20166              :         return -1;
   20167              :       return 2472; /* movv4sf_internal */
   20168              : 
   20169              :     case E_V8DFmode:
   20170              :       if (!nonimmediate_operand (operands[0], E_V8DFmode)
   20171              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V8DFmode)
   20172              :           || !(
   20173              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20174              : (TARGET_SSE
   20175              :    && (register_operand (operands[0], V8DFmode)
   20176              :        || register_operand (operands[1], V8DFmode))
   20177              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20178              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20179              : (TARGET_AVX512F)))
   20180              :         return -1;
   20181              :       return 2473; /* movv8df_internal */
   20182              : 
   20183              :     case E_V4DFmode:
   20184              :       if (!nonimmediate_operand (operands[0], E_V4DFmode)
   20185              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V4DFmode)
   20186              :           || !(
   20187              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20188              : (TARGET_SSE
   20189              :    && (register_operand (operands[0], V4DFmode)
   20190              :        || register_operand (operands[1], V4DFmode))
   20191              :    && ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   20192              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20193              : (TARGET_AVX)))
   20194              :         return -1;
   20195              :       return 2474; /* movv4df_internal */
   20196              : 
   20197              :     case E_V2DFmode:
   20198              :       if (!nonimmediate_operand (operands[0], E_V2DFmode)
   20199              :           || !nonimmediate_or_sse_const_operand (operands[1], E_V2DFmode)
   20200              :           || !
   20201              : #line 1489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20202              : (TARGET_SSE
   20203              :    && (register_operand (operands[0], V2DFmode)
   20204              :        || register_operand (operands[1], V2DFmode))
   20205              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
   20206              :         return -1;
   20207              :       return 2475; /* movv2df_internal */
   20208              : 
   20209              :     default:
   20210              :       return -1;
   20211              :     }
   20212              : }
   20213              : 
   20214              :  int
   20215              : recog_338 (rtx x1 ATTRIBUTE_UNUSED,
   20216              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20217              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20218              : {
   20219              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20220              :   rtx x2, x3, x4, x5, x6, x7;
   20221              :   int res ATTRIBUTE_UNUSED;
   20222              :   switch (pattern35 (x1))
   20223              :     {
   20224              :     case 0:
   20225              :       if (!
   20226              : #line 24661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20227              : (TARGET_AVX2 && 1 && 1))
   20228              :         return -1;
   20229              :       return 8830; /* avx2_zero_extendv16qiv16hi2 */
   20230              : 
   20231              :     case 1:
   20232              :       if (!
   20233              : #line 24716 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20234              : (TARGET_AVX512BW))
   20235              :         return -1;
   20236              :       return 8838; /* avx512bw_zero_extendv32qiv32hi2 */
   20237              : 
   20238              :     case 2:
   20239              :       if (!
   20240              : #line 24788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20241              : (TARGET_SSE4_1 && 1 && 1))
   20242              :         return -1;
   20243              :       return 8850; /* *sse4_1_zero_extendv8qiv8hi2_1 */
   20244              : 
   20245              :     case 3:
   20246              :       if (!
   20247              : #line 24940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20248              : (TARGET_AVX512F))
   20249              :         return -1;
   20250              :       return 8862; /* *avx512f_zero_extendv16qiv16si2 */
   20251              : 
   20252              :     case 4:
   20253              :       if (!
   20254              : #line 25144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20255              : (TARGET_AVX512F))
   20256              :         return -1;
   20257              :       return 8892; /* avx512f_zero_extendv16hiv16si2 */
   20258              : 
   20259              :     case 5:
   20260              :       if (!
   20261              : #line 24974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20262              : (TARGET_AVX2 && 1))
   20263              :         return -1;
   20264              :       return 8870; /* *avx2_zero_extendv8qiv8si2_1 */
   20265              : 
   20266              :     case 6:
   20267              :       if (!
   20268              : #line 25198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20269              : (TARGET_AVX2 && 1))
   20270              :         return -1;
   20271              :       return 8900; /* avx2_zero_extendv8hiv8si2 */
   20272              : 
   20273              :     case 7:
   20274              :       if (!
   20275              : #line 25064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20276              : (TARGET_SSE4_1 && 1))
   20277              :         return -1;
   20278              :       return 8882; /* *sse4_1_zero_extendv4qiv4si2_1 */
   20279              : 
   20280              :     case 8:
   20281              :       if (!
   20282              : #line 25270 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20283              : (TARGET_SSE4_1 && 1))
   20284              :         return -1;
   20285              :       return 8912; /* *sse4_1_zero_extendv4hiv4si2_1 */
   20286              : 
   20287              :     case 9:
   20288              :       if (!
   20289              : #line 25428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20290              : (TARGET_AVX512F))
   20291              :         return -1;
   20292              :       return 8928; /* *avx512f_zero_extendv8qiv8di2_1 */
   20293              : 
   20294              :     case 10:
   20295              :       if (!
   20296              : #line 25659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20297              : (TARGET_AVX512F))
   20298              :         return -1;
   20299              :       return 8959; /* avx512f_zero_extendv8hiv8di2 */
   20300              : 
   20301              :     case 11:
   20302              :       if (!
   20303              : #line 25854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20304              : (TARGET_AVX512F))
   20305              :         return -1;
   20306              :       return 8987; /* avx512f_zero_extendv8siv8di2 */
   20307              : 
   20308              :     case 12:
   20309              :       if (!
   20310              : #line 25514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20311              : (TARGET_AVX2 && 1))
   20312              :         return -1;
   20313              :       return 8940; /* *avx2_zero_extendv4qiv4di2_1 */
   20314              : 
   20315              :     case 13:
   20316              :       if (!
   20317              : #line 25691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20318              : (TARGET_AVX2 && 1))
   20319              :         return -1;
   20320              :       return 8967; /* *avx2_zero_extendv4hiv4di2_1 */
   20321              : 
   20322              :     case 14:
   20323              :       if (!
   20324              : #line 25906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20325              : (TARGET_AVX2 && 1))
   20326              :         return -1;
   20327              :       return 8993; /* avx2_zero_extendv4siv4di2 */
   20328              : 
   20329              :     case 15:
   20330              :       if (!
   20331              : #line 25607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20332              : (TARGET_SSE4_1 && 1))
   20333              :         return -1;
   20334              :       return 8952; /* *sse4_1_zero_extendv2qiv2di2_1 */
   20335              : 
   20336              :     case 16:
   20337              :       if (!
   20338              : #line 25776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20339              : (TARGET_SSE4_1 && 1))
   20340              :         return -1;
   20341              :       return 8979; /* *sse4_1_zero_extendv2hiv2di2_1 */
   20342              : 
   20343              :     case 17:
   20344              :       if (!
   20345              : #line 25974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20346              : (TARGET_SSE4_1 && 1))
   20347              :         return -1;
   20348              :       return 9003; /* *sse4_1_zero_extendv2siv2di2_1 */
   20349              : 
   20350              :     case 18:
   20351              :       x2 = XEXP (x1, 1);
   20352              :       x3 = XEXP (x2, 0);
   20353              :       x4 = XEXP (x3, 0);
   20354              :       operands[1] = x4;
   20355              :       switch (pattern547 (x2))
   20356              :         {
   20357              :         case 0:
   20358              :           if (
   20359              : #line 24775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20360              : (TARGET_SSE4_1 && 1 && 1))
   20361              :             return 8846; /* sse4_1_zero_extendv8qiv8hi2 */
   20362              :           break;
   20363              : 
   20364              :         case 1:
   20365              :           if (
   20366              : #line 24962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20367              : (TARGET_AVX2 && 1))
   20368              :             return 8866; /* avx2_zero_extendv8qiv8si2 */
   20369              :           break;
   20370              : 
   20371              :         case 2:
   20372              :           if (
   20373              : #line 25417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20374              : (TARGET_AVX512F))
   20375              :             return 8924; /* avx512f_zero_extendv8qiv8di2 */
   20376              :           break;
   20377              : 
   20378              :         case 3:
   20379              :           if (
   20380              : #line 25051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20381              : (TARGET_SSE4_1 && 1))
   20382              :             return 8878; /* sse4_1_zero_extendv4qiv4si2 */
   20383              :           break;
   20384              : 
   20385              :         case 4:
   20386              :           if (
   20387              : #line 25257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20388              : (TARGET_SSE4_1 && 1))
   20389              :             return 8908; /* sse4_1_zero_extendv4hiv4si2 */
   20390              :           break;
   20391              : 
   20392              :         case 5:
   20393              :           if (
   20394              : #line 25502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20395              : (TARGET_AVX2 && 1))
   20396              :             return 8936; /* avx2_zero_extendv4qiv4di2 */
   20397              :           break;
   20398              : 
   20399              :         case 6:
   20400              :           if (
   20401              : #line 25679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20402              : (TARGET_AVX2 && 1))
   20403              :             return 8963; /* avx2_zero_extendv4hiv4di2 */
   20404              :           break;
   20405              : 
   20406              :         case 7:
   20407              :           if (
   20408              : #line 25594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20409              : (TARGET_SSE4_1 && 1))
   20410              :             return 8948; /* sse4_1_zero_extendv2qiv2di2 */
   20411              :           break;
   20412              : 
   20413              :         case 8:
   20414              :           if (
   20415              : #line 25763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20416              : (TARGET_SSE4_1 && 1))
   20417              :             return 8975; /* sse4_1_zero_extendv2hiv2di2 */
   20418              :           break;
   20419              : 
   20420              :         case 9:
   20421              :           if (
   20422              : #line 25961 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20423              : (TARGET_SSE4_1 && 1))
   20424              :             return 8999; /* sse4_1_zero_extendv2siv2di2 */
   20425              :           break;
   20426              : 
   20427              :         default:
   20428              :           break;
   20429              :         }
   20430              :       if (GET_CODE (x4) != SUBREG
   20431              :           || maybe_ne (SUBREG_BYTE (x4), 0))
   20432              :         return -1;
   20433              :       x5 = XEXP (x4, 0);
   20434              :       switch (GET_CODE (x5))
   20435              :         {
   20436              :         case VEC_CONCAT:
   20437              :           switch (pattern691 (x2))
   20438              :             {
   20439              :             case 0:
   20440              :               if (!
   20441              : #line 24813 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20442              : (TARGET_SSE4_1
   20443              :    && ix86_pre_reload_split ()))
   20444              :                 return -1;
   20445              :               return 8853; /* *sse4_1_zero_extendv8qiv8hi2_2 */
   20446              : 
   20447              :             case 1:
   20448              :               if (!
   20449              : #line 24994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20450              : (TARGET_AVX2
   20451              :    && ix86_pre_reload_split ()))
   20452              :                 return -1;
   20453              :               return 8873; /* *avx2_zero_extendv8qiv8si2_2 */
   20454              : 
   20455              :             case 2:
   20456              :               if (!
   20457              : #line 25447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20458              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   20459              :                 return -1;
   20460              :               return 8931; /* *avx512f_zero_extendv8qiv8di2_2 */
   20461              : 
   20462              :             case 3:
   20463              :               if (!
   20464              : #line 25290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20465              : (TARGET_SSE4_1
   20466              :    && ix86_pre_reload_split ()))
   20467              :                 return -1;
   20468              :               return 8915; /* *sse4_1_zero_extendv4hiv4si2_2 */
   20469              : 
   20470              :             case 4:
   20471              :               if (!
   20472              : #line 25709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20473              : (TARGET_AVX2
   20474              :    && ix86_pre_reload_split ()))
   20475              :                 return -1;
   20476              :               return 8970; /* *avx2_zero_extendv4hiv4di2_2 */
   20477              : 
   20478              :             case 5:
   20479              :               if (!
   20480              : #line 25993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20481              : (TARGET_SSE4_1
   20482              :    && ix86_pre_reload_split ()))
   20483              :                 return -1;
   20484              :               return 9006; /* *sse4_1_zero_extendv2siv2di2_2 */
   20485              : 
   20486              :             default:
   20487              :               return -1;
   20488              :             }
   20489              : 
   20490              :         case VEC_MERGE:
   20491              :           x6 = XEXP (x5, 0);
   20492              :           if (GET_CODE (x6) != VEC_DUPLICATE)
   20493              :             return -1;
   20494              :           if (GET_MODE (x6) == E_V4SImode)
   20495              :             {
   20496              :               switch (pattern1045 (x2))
   20497              :                 {
   20498              :                 case 0:
   20499              :                   if (
   20500              : #line 25088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20501              : (TARGET_SSE4_1 && 1
   20502              :    && ix86_pre_reload_split ()))
   20503              :                     return 8886; /* *sse4_1_zero_extendv4qiv4si2_2 */
   20504              :                   break;
   20505              : 
   20506              :                 case 1:
   20507              :                   if (
   20508              : #line 25536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20509              : (TARGET_AVX2
   20510              :    && ix86_pre_reload_split ()))
   20511              :                     return 8943; /* *avx2_zero_extendv4qiv4di2_2 */
   20512              :                   break;
   20513              : 
   20514              :                 case 2:
   20515              :                   if (
   20516              : #line 25799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20517              : (TARGET_SSE4_1
   20518              :    && ix86_pre_reload_split ()))
   20519              :                     return 8982; /* *sse4_1_zero_extendv2hiv2di2_2 */
   20520              :                   break;
   20521              : 
   20522              :                 default:
   20523              :                   break;
   20524              :                 }
   20525              :             }
   20526              :           x7 = XEXP (x5, 2);
   20527              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   20528              :             return -1;
   20529              :           switch (pattern1046 (x2))
   20530              :             {
   20531              :             case 0:
   20532              :               if (!
   20533              : #line 25643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20534              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   20535              :                 return -1;
   20536              :               return 8954; /* *sse4_1_zero_extendv2qiv2di2_2 */
   20537              : 
   20538              :             case 1:
   20539              :               if (!
   20540              : #line 25643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20541              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   20542              :                 return -1;
   20543              :               return 8955; /* *sse4_1_zero_extendv2qiv2di2_2 */
   20544              : 
   20545              :             case 2:
   20546              :               if (!
   20547              : #line 25643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20548              : (TARGET_SSE4_1 && ix86_pre_reload_split ()))
   20549              :                 return -1;
   20550              :               return 8956; /* *sse4_1_zero_extendv2qiv2di2_2 */
   20551              : 
   20552              :             default:
   20553              :               return -1;
   20554              :             }
   20555              : 
   20556              :         default:
   20557              :           return -1;
   20558              :         }
   20559              : 
   20560              :     default:
   20561              :       return -1;
   20562              :     }
   20563              : }
   20564              : 
   20565              :  int
   20566              : recog_345 (rtx x1 ATTRIBUTE_UNUSED,
   20567              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20568              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20569              : {
   20570              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20571              :   rtx x2, x3, x4, x5;
   20572              :   int res ATTRIBUTE_UNUSED;
   20573              :   x2 = XEXP (x1, 0);
   20574              :   operands[0] = x2;
   20575              :   x3 = XEXP (x1, 1);
   20576              :   switch (GET_CODE (x3))
   20577              :     {
   20578              :     case NE:
   20579              :     case EQ:
   20580              :     case GE:
   20581              :     case GT:
   20582              :     case LE:
   20583              :     case LT:
   20584              :     case LTGT:
   20585              :     case UNORDERED:
   20586              :     case ORDERED:
   20587              :     case UNEQ:
   20588              :     case UNGE:
   20589              :     case UNGT:
   20590              :     case UNLE:
   20591              :     case UNLT:
   20592              :       res = recog_276 (x1, insn, pnum_clobbers);
   20593              :       if (res >= 0)
   20594              :         return res;
   20595              :       break;
   20596              : 
   20597              :     default:
   20598              :       break;
   20599              :     }
   20600              :   switch (GET_CODE (x3))
   20601              :     {
   20602              :     case LT:
   20603              :       switch (pattern204 (x3))
   20604              :         {
   20605              :         case 0:
   20606              :           if ((
   20607              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20608              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   20609              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20610              : (TARGET_AVX2)))
   20611              :             return 7689; /* *ashrv16hi3_1 */
   20612              :           break;
   20613              : 
   20614              :         case 1:
   20615              :           if (
   20616              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20617              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   20618              :             return 7690; /* *ashrv8hi3_1 */
   20619              :           break;
   20620              : 
   20621              :         case 2:
   20622              :           if ((
   20623              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20624              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   20625              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20626              : (TARGET_AVX2)))
   20627              :             return 7691; /* *ashrv8si3_1 */
   20628              :           break;
   20629              : 
   20630              :         case 3:
   20631              :           if (
   20632              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20633              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   20634              :             return 7692; /* *ashrv4si3_1 */
   20635              :           break;
   20636              : 
   20637              :         default:
   20638              :           break;
   20639              :         }
   20640              :       break;
   20641              : 
   20642              :     case EQ:
   20643              :       res = recog_277 (x1, insn, pnum_clobbers);
   20644              :       if (res >= 0)
   20645              :         return res;
   20646              :       break;
   20647              : 
   20648              :     case GT:
   20649              :       x4 = XEXP (x3, 0);
   20650              :       operands[1] = x4;
   20651              :       x5 = XEXP (x3, 1);
   20652              :       operands[2] = x5;
   20653              :       switch (GET_MODE (operands[0]))
   20654              :         {
   20655              :         case E_V2DImode:
   20656              :           if (pattern682 (x3, 
   20657              : E_V2DImode) == 0
   20658              :               && 
   20659              : #line 18718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20660              : (TARGET_SSE4_2))
   20661              :             return 8023; /* sse4_2_gtv2di3 */
   20662              :           break;
   20663              : 
   20664              :         case E_V32QImode:
   20665              :           if (pattern12 (x3, 
   20666              : E_V32QImode) == 0
   20667              :               && 
   20668              : #line 18735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20669              : (TARGET_AVX2))
   20670              :             return 8024; /* avx2_gtv32qi3 */
   20671              :           break;
   20672              : 
   20673              :         case E_V16HImode:
   20674              :           if (pattern12 (x3, 
   20675              : E_V16HImode) == 0
   20676              :               && 
   20677              : #line 18735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20678              : (TARGET_AVX2))
   20679              :             return 8025; /* avx2_gtv16hi3 */
   20680              :           break;
   20681              : 
   20682              :         case E_V8SImode:
   20683              :           if (pattern12 (x3, 
   20684              : E_V8SImode) == 0
   20685              :               && 
   20686              : #line 18735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20687              : (TARGET_AVX2))
   20688              :             return 8026; /* avx2_gtv8si3 */
   20689              :           break;
   20690              : 
   20691              :         case E_V4DImode:
   20692              :           if (pattern12 (x3, 
   20693              : E_V4DImode) == 0
   20694              :               && 
   20695              : #line 18735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20696              : (TARGET_AVX2))
   20697              :             return 8027; /* avx2_gtv4di3 */
   20698              :           break;
   20699              : 
   20700              :         case E_V16QImode:
   20701              :           if (pattern682 (x3, 
   20702              : E_V16QImode) == 0
   20703              :               && 
   20704              : #line 18767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20705              : (TARGET_SSE2))
   20706              :             return 8028; /* *sse2_gtv16qi3 */
   20707              :           break;
   20708              : 
   20709              :         case E_V8HImode:
   20710              :           if (pattern682 (x3, 
   20711              : E_V8HImode) == 0
   20712              :               && 
   20713              : #line 18767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20714              : (TARGET_SSE2))
   20715              :             return 8029; /* *sse2_gtv8hi3 */
   20716              :           break;
   20717              : 
   20718              :         case E_V4SImode:
   20719              :           if (pattern682 (x3, 
   20720              : E_V4SImode) == 0
   20721              :               && 
   20722              : #line 18767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20723              : (TARGET_SSE2))
   20724              :             return 8030; /* *sse2_gtv4si3 */
   20725              :           break;
   20726              : 
   20727              :         default:
   20728              :           break;
   20729              :         }
   20730              :       break;
   20731              : 
   20732              :     default:
   20733              :       break;
   20734              :     }
   20735              :   operands[1] = x3;
   20736              :   x4 = XEXP (x3, 0);
   20737              :   operands[2] = x4;
   20738              :   x5 = XEXP (x3, 1);
   20739              :   operands[3] = x5;
   20740              :   switch (GET_CODE (operands[1]))
   20741              :     {
   20742              :     case NE:
   20743              :     case EQ:
   20744              :     case GE:
   20745              :     case GT:
   20746              :     case LE:
   20747              :     case LT:
   20748              :       switch (GET_MODE (operands[0]))
   20749              :         {
   20750              :         case E_V16QImode:
   20751              :           if (pattern807 (
   20752              : E_V16QImode) == 0
   20753              :               && 
   20754              : #line 27959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20755              : (TARGET_XOP))
   20756              :             return 9146; /* xop_maskcmpv16qi3 */
   20757              :           break;
   20758              : 
   20759              :         case E_V8HImode:
   20760              :           if (pattern807 (
   20761              : E_V8HImode) == 0
   20762              :               && 
   20763              : #line 27959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20764              : (TARGET_XOP))
   20765              :             return 9147; /* xop_maskcmpv8hi3 */
   20766              :           break;
   20767              : 
   20768              :         case E_V4SImode:
   20769              :           if (pattern807 (
   20770              : E_V4SImode) == 0
   20771              :               && 
   20772              : #line 27959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20773              : (TARGET_XOP))
   20774              :             return 9148; /* xop_maskcmpv4si3 */
   20775              :           break;
   20776              : 
   20777              :         case E_V2DImode:
   20778              :           if (pattern807 (
   20779              : E_V2DImode) == 0
   20780              :               && 
   20781              : #line 27959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20782              : (TARGET_XOP))
   20783              :             return 9149; /* xop_maskcmpv2di3 */
   20784              :           break;
   20785              : 
   20786              :         default:
   20787              :           break;
   20788              :         }
   20789              :       break;
   20790              : 
   20791              :     default:
   20792              :       break;
   20793              :     }
   20794              :   switch (GET_CODE (operands[1]))
   20795              :     {
   20796              :     case NE:
   20797              :     case EQ:
   20798              :     case GEU:
   20799              :     case GTU:
   20800              :     case LEU:
   20801              :     case LTU:
   20802              :       switch (GET_MODE (operands[0]))
   20803              :         {
   20804              :         case E_V16QImode:
   20805              :           if (pattern808 (
   20806              : E_V16QImode) != 0
   20807              :               || !
   20808              : #line 27969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20809              : (TARGET_XOP))
   20810              :             return -1;
   20811              :           return 9150; /* xop_maskcmp_unsv16qi3 */
   20812              : 
   20813              :         case E_V8HImode:
   20814              :           if (pattern808 (
   20815              : E_V8HImode) != 0
   20816              :               || !
   20817              : #line 27969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20818              : (TARGET_XOP))
   20819              :             return -1;
   20820              :           return 9151; /* xop_maskcmp_unsv8hi3 */
   20821              : 
   20822              :         case E_V4SImode:
   20823              :           if (pattern808 (
   20824              : E_V4SImode) != 0
   20825              :               || !
   20826              : #line 27969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20827              : (TARGET_XOP))
   20828              :             return -1;
   20829              :           return 9152; /* xop_maskcmp_unsv4si3 */
   20830              : 
   20831              :         case E_V2DImode:
   20832              :           if (pattern808 (
   20833              : E_V2DImode) != 0
   20834              :               || !
   20835              : #line 27969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20836              : (TARGET_XOP))
   20837              :             return -1;
   20838              :           return 9153; /* xop_maskcmp_unsv2di3 */
   20839              : 
   20840              :         default:
   20841              :           return -1;
   20842              :         }
   20843              : 
   20844              :     default:
   20845              :       return -1;
   20846              :     }
   20847              : }
   20848              : 
   20849              :  int
   20850              : recog_350 (rtx x1 ATTRIBUTE_UNUSED,
   20851              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20852              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20853              : {
   20854              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20855              :   int res ATTRIBUTE_UNUSED;
   20856              :   switch (pattern29 (x1))
   20857              :     {
   20858              :     case 0:
   20859              :       if (!(
   20860              : #line 8269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20861              : (TARGET_AVX512FP16) && 
   20862              : #line 683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20863              : (TARGET_AVX512VL)))
   20864              :         return -1;
   20865              :       return 4658; /* avx512fp16_fix_truncv8hi2 */
   20866              : 
   20867              :     case 1:
   20868              :       if (!(
   20869              : #line 8269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20870              : (TARGET_AVX512FP16) && 
   20871              : #line 683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20872              : (TARGET_AVX512VL)))
   20873              :         return -1;
   20874              :       return 4666; /* avx512fp16_fix_truncv16hi2 */
   20875              : 
   20876              :     case 2:
   20877              :       if (!
   20878              : #line 8269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20879              : (TARGET_AVX512FP16))
   20880              :         return -1;
   20881              :       return 4674; /* avx512fp16_fix_truncv32hi2 */
   20882              : 
   20883              :     case 3:
   20884              :       switch (GET_MODE (operands[1]))
   20885              :         {
   20886              :         case E_V8HFmode:
   20887              :           if (!vector_operand (operands[1], E_V8HFmode)
   20888              :               || !(
   20889              : #line 8269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20890              : (TARGET_AVX512FP16) && 
   20891              : #line 684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20892              : (TARGET_AVX512VL)))
   20893              :             return -1;
   20894              :           return 4682; /* avx512fp16_fix_truncv8si2 */
   20895              : 
   20896              :         case E_V8SFmode:
   20897              :           if (!nonimmediate_operand (operands[1], E_V8SFmode)
   20898              :               || !
   20899              : #line 9184 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20900              : (TARGET_AVX && 1))
   20901              :             return -1;
   20902              :           return 4934; /* fix_truncv8sfv8si2 */
   20903              : 
   20904              :         case E_V8DFmode:
   20905              :           if (!vector_operand (operands[1], E_V8DFmode)
   20906              :               || !
   20907              : #line 9959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20908              : (TARGET_AVX512F))
   20909              :             return -1;
   20910              :           return 5073; /* fix_truncv8dfv8si2 */
   20911              : 
   20912              :         default:
   20913              :           return -1;
   20914              :         }
   20915              : 
   20916              :     case 4:
   20917              :       if (!
   20918              : #line 8269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20919              : (TARGET_AVX512FP16))
   20920              :         return -1;
   20921              :       return 4690; /* avx512fp16_fix_truncv16si2 */
   20922              : 
   20923              :     case 5:
   20924              :       if (!
   20925              : #line 9165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20926              : (TARGET_AVX512F))
   20927              :         return -1;
   20928              :       return 4924; /* fix_truncv16sfv16si2 */
   20929              : 
   20930              :     case 6:
   20931              :       if (!
   20932              : #line 8269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20933              : (TARGET_AVX512FP16))
   20934              :         return -1;
   20935              :       return 4698; /* avx512fp16_fix_truncv8di2 */
   20936              : 
   20937              :     case 7:
   20938              :       if (!
   20939              : #line 10088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20940              : (TARGET_AVX512DQ && 1))
   20941              :         return -1;
   20942              :       return 5110; /* fix_truncv8dfv8di2 */
   20943              : 
   20944              :     case 8:
   20945              :       if (!
   20946              : #line 10131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20947              : (TARGET_AVX512DQ && 1))
   20948              :         return -1;
   20949              :       return 5154; /* fix_truncv8sfv8di2 */
   20950              : 
   20951              :     case 9:
   20952              :       switch (GET_MODE (operands[1]))
   20953              :         {
   20954              :         case E_V4HFmode:
   20955              :           if (!memory_operand (operands[1], E_V4HFmode)
   20956              :               || !
   20957              : #line 8319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20958              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   20959              :             return -1;
   20960              :           return 4722; /* *avx512fp16_fix_truncv4si2_load */
   20961              : 
   20962              :         case E_V4SFmode:
   20963              :           if (!vector_operand (operands[1], E_V4SFmode)
   20964              :               || !
   20965              : #line 9214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20966              : (TARGET_SSE2 && 1))
   20967              :             return -1;
   20968              :           return 4938; /* fix_truncv4sfv4si2 */
   20969              : 
   20970              :         case E_V4DFmode:
   20971              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   20972              :               || !
   20973              : #line 10048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20974              : (TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F)))
   20975              :             return -1;
   20976              :           return 5088; /* fix_truncv4dfv4si2 */
   20977              : 
   20978              :         default:
   20979              :           return -1;
   20980              :         }
   20981              : 
   20982              :     case 10:
   20983              :       if (!
   20984              : #line 8319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20985              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   20986              :         return -1;
   20987              :       return 4726; /* *avx512fp16_fix_truncv4di2_load */
   20988              : 
   20989              :     case 11:
   20990              :       if (!(
   20991              : #line 10088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20992              : (TARGET_AVX512DQ && 1) && 
   20993              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20994              : (TARGET_AVX512VL)))
   20995              :         return -1;
   20996              :       return 5118; /* fix_truncv4dfv4di2 */
   20997              : 
   20998              :     case 12:
   20999              :       if (!(
   21000              : #line 10131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21001              : (TARGET_AVX512DQ && 1) && 
   21002              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21003              : (TARGET_AVX512VL)))
   21004              :         return -1;
   21005              :       return 5162; /* fix_truncv4sfv4di2 */
   21006              : 
   21007              :     case 13:
   21008              :       if (!
   21009              : #line 8369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21010              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   21011              :         return -1;
   21012              :       return 4738; /* *avx512fp16_fix_truncv2di2_load */
   21013              : 
   21014              :     case 14:
   21015              :       if (!(
   21016              : #line 10088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21017              : (TARGET_AVX512DQ && 1) && 
   21018              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21019              : (TARGET_AVX512VL)))
   21020              :         return -1;
   21021              :       return 5122; /* fix_truncv2dfv2di2 */
   21022              : 
   21023              :     case 15:
   21024              :       if (!
   21025              : #line 8309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21026              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   21027              :         return -1;
   21028              :       return 4714; /* avx512fp16_fix_truncv4si2 */
   21029              : 
   21030              :     case 16:
   21031              :       if (!
   21032              : #line 8309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21033              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   21034              :         return -1;
   21035              :       return 4718; /* avx512fp16_fix_truncv4di2 */
   21036              : 
   21037              :     case 17:
   21038              :       if (!
   21039              : #line 8359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21040              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   21041              :         return -1;
   21042              :       return 4734; /* avx512fp16_fix_truncv2di2 */
   21043              : 
   21044              :     case 18:
   21045              :       if (!
   21046              : #line 10154 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21047              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   21048              :         return -1;
   21049              :       return 5170; /* avx512dq_fix_truncv2sfv2di2 */
   21050              : 
   21051              :     default:
   21052              :       return -1;
   21053              :     }
   21054              : }
   21055              : 
   21056              :  int
   21057              : recog_355 (rtx x1 ATTRIBUTE_UNUSED,
   21058              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21059              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21060              : {
   21061              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21062              :   rtx x2, x3, x4;
   21063              :   int res ATTRIBUTE_UNUSED;
   21064              :   x2 = XEXP (x1, 0);
   21065              :   operands[0] = x2;
   21066              :   x3 = XEXP (x1, 1);
   21067              :   x4 = XEXP (x3, 0);
   21068              :   operands[1] = x4;
   21069              :   switch (GET_MODE (operands[0]))
   21070              :     {
   21071              :     case E_V16SImode:
   21072              :       if (!register_operand (operands[0], E_V16SImode)
   21073              :           || GET_MODE (x3) != E_V16SImode
   21074              :           || !nonimmediate_operand (operands[1], E_V16SImode)
   21075              :           || !
   21076              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21077              : (TARGET_AVX512CD))
   21078              :         return -1;
   21079              :       return 10164; /* clzv16si2 */
   21080              : 
   21081              :     case E_V8SImode:
   21082              :       if (!register_operand (operands[0], E_V8SImode)
   21083              :           || GET_MODE (x3) != E_V8SImode
   21084              :           || !nonimmediate_operand (operands[1], E_V8SImode)
   21085              :           || !(
   21086              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21087              : (TARGET_AVX512CD) && 
   21088              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21089              : (TARGET_AVX512VL)))
   21090              :         return -1;
   21091              :       return 10166; /* clzv8si2 */
   21092              : 
   21093              :     case E_V4SImode:
   21094              :       if (!register_operand (operands[0], E_V4SImode)
   21095              :           || GET_MODE (x3) != E_V4SImode
   21096              :           || !nonimmediate_operand (operands[1], E_V4SImode)
   21097              :           || !(
   21098              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21099              : (TARGET_AVX512CD) && 
   21100              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21101              : (TARGET_AVX512VL)))
   21102              :         return -1;
   21103              :       return 10168; /* clzv4si2 */
   21104              : 
   21105              :     case E_V8DImode:
   21106              :       if (!register_operand (operands[0], E_V8DImode)
   21107              :           || GET_MODE (x3) != E_V8DImode
   21108              :           || !nonimmediate_operand (operands[1], E_V8DImode)
   21109              :           || !
   21110              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21111              : (TARGET_AVX512CD))
   21112              :         return -1;
   21113              :       return 10170; /* clzv8di2 */
   21114              : 
   21115              :     case E_V4DImode:
   21116              :       if (!register_operand (operands[0], E_V4DImode)
   21117              :           || GET_MODE (x3) != E_V4DImode
   21118              :           || !nonimmediate_operand (operands[1], E_V4DImode)
   21119              :           || !(
   21120              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21121              : (TARGET_AVX512CD) && 
   21122              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21123              : (TARGET_AVX512VL)))
   21124              :         return -1;
   21125              :       return 10172; /* clzv4di2 */
   21126              : 
   21127              :     case E_V2DImode:
   21128              :       if (!register_operand (operands[0], E_V2DImode)
   21129              :           || GET_MODE (x3) != E_V2DImode
   21130              :           || !nonimmediate_operand (operands[1], E_V2DImode)
   21131              :           || !(
   21132              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21133              : (TARGET_AVX512CD) && 
   21134              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21135              : (TARGET_AVX512VL)))
   21136              :         return -1;
   21137              :       return 10174; /* clzv2di2 */
   21138              : 
   21139              :     default:
   21140              :       return -1;
   21141              :     }
   21142              : }
   21143              : 
   21144              :  int
   21145              : recog_358 (rtx x1 ATTRIBUTE_UNUSED,
   21146              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21147              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21148              : {
   21149              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21150              :   int res ATTRIBUTE_UNUSED;
   21151              :   switch (pattern33 (x1))
   21152              :     {
   21153              :     case 0:
   21154              :       if (!
   21155              : #line 17995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21156              : (TARGET_SSE2 && TARGET_64BIT
   21157              :    && ix86_pre_reload_split ()))
   21158              :         return -1;
   21159              :       return 7765; /* *rotlv1ti3_internal */
   21160              : 
   21161              :     case 1:
   21162              :       if (!
   21163              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21164              : (TARGET_AVX512F))
   21165              :         return -1;
   21166              :       return 7801; /* avx512f_rolv16si */
   21167              : 
   21168              :     case 2:
   21169              :       if (!(
   21170              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21171              : (TARGET_AVX512F) && 
   21172              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21173              : (TARGET_AVX512VL)))
   21174              :         return -1;
   21175              :       return 7805; /* avx512vl_rolv8si */
   21176              : 
   21177              :     case 3:
   21178              :       if (const_0_to_255_operand (operands[2], E_SImode)
   21179              :           && (
   21180              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21181              : (TARGET_AVX512F) && 
   21182              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21183              : (TARGET_AVX512VL)))
   21184              :         return 7809; /* avx512vl_rolv4si */
   21185              :       if (!const_0_to_31_operand (operands[2], E_SImode)
   21186              :           || !
   21187              : #line 27455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21188              : (TARGET_XOP))
   21189              :         return -1;
   21190              :       return 9119; /* xop_rotlv4si3 */
   21191              : 
   21192              :     case 4:
   21193              :       if (!
   21194              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21195              : (TARGET_AVX512F))
   21196              :         return -1;
   21197              :       return 7813; /* avx512f_rolv8di */
   21198              : 
   21199              :     case 5:
   21200              :       if (!(
   21201              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21202              : (TARGET_AVX512F) && 
   21203              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21204              : (TARGET_AVX512VL)))
   21205              :         return -1;
   21206              :       return 7817; /* avx512vl_rolv4di */
   21207              : 
   21208              :     case 6:
   21209              :       if (const_0_to_255_operand (operands[2], E_SImode)
   21210              :           && (
   21211              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21212              : (TARGET_AVX512F) && 
   21213              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21214              : (TARGET_AVX512VL)))
   21215              :         return 7821; /* avx512vl_rolv2di */
   21216              :       if (!const_0_to_63_operand (operands[2], E_SImode)
   21217              :           || !
   21218              : #line 27455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21219              : (TARGET_XOP))
   21220              :         return -1;
   21221              :       return 9120; /* xop_rotlv2di3 */
   21222              : 
   21223              :     case 7:
   21224              :       if (!
   21225              : #line 27455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21226              : (TARGET_XOP))
   21227              :         return -1;
   21228              :       return 9117; /* xop_rotlv16qi3 */
   21229              : 
   21230              :     case 8:
   21231              :       if (!
   21232              : #line 27455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21233              : (TARGET_XOP))
   21234              :         return -1;
   21235              :       return 9118; /* xop_rotlv8hi3 */
   21236              : 
   21237              :     case 9:
   21238              :       if (!
   21239              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21240              : (TARGET_AVX512F))
   21241              :         return -1;
   21242              :       return 7777; /* avx512f_rolvv16si */
   21243              : 
   21244              :     case 10:
   21245              :       if (!(
   21246              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21247              : (TARGET_AVX512F) && 
   21248              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21249              : (TARGET_AVX512VL)))
   21250              :         return -1;
   21251              :       return 7781; /* avx512vl_rolvv8si */
   21252              : 
   21253              :     case 11:
   21254              :       if (!(
   21255              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21256              : (TARGET_AVX512F) && 
   21257              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21258              : (TARGET_AVX512VL)))
   21259              :         return -1;
   21260              :       return 7785; /* avx512vl_rolvv4si */
   21261              : 
   21262              :     case 12:
   21263              :       if (!
   21264              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21265              : (TARGET_AVX512F))
   21266              :         return -1;
   21267              :       return 7789; /* avx512f_rolvv8di */
   21268              : 
   21269              :     case 13:
   21270              :       if (!(
   21271              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21272              : (TARGET_AVX512F) && 
   21273              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21274              : (TARGET_AVX512VL)))
   21275              :         return -1;
   21276              :       return 7793; /* avx512vl_rolvv4di */
   21277              : 
   21278              :     case 14:
   21279              :       if (!(
   21280              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21281              : (TARGET_AVX512F) && 
   21282              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21283              : (TARGET_AVX512VL)))
   21284              :         return -1;
   21285              :       return 7797; /* avx512vl_rolvv2di */
   21286              : 
   21287              :     default:
   21288              :       return -1;
   21289              :     }
   21290              : }
   21291              : 
   21292              :  int
   21293              : recog_369 (rtx x1 ATTRIBUTE_UNUSED,
   21294              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21295              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21296              : {
   21297              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21298              :   rtx x2, x3, x4, x5, x6;
   21299              :   int res ATTRIBUTE_UNUSED;
   21300              :   x2 = XVECEXP (x1, 0, 1);
   21301              :   if (pattern237 (x2, 
   21302              : E_CCmode, 
   21303              : 17) != 0)
   21304              :     return -1;
   21305              :   x3 = XVECEXP (x1, 0, 0);
   21306              :   switch (pattern940 (x3))
   21307              :     {
   21308              :     case 0:
   21309              :       x4 = XEXP (x3, 0);
   21310              :       operands[0] = x4;
   21311              :       x5 = XEXP (x3, 1);
   21312              :       x6 = XEXP (x5, 1);
   21313              :       switch (GET_CODE (x6))
   21314              :         {
   21315              :         case SUBREG:
   21316              :           switch (pattern1428 (x5))
   21317              :             {
   21318              :             case 0:
   21319              :               if ((
   21320              : #line 17523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21321              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   21322              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   21323              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   21324              :    && ix86_pre_reload_split ()) && 
   21325              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21326              : (!TARGET_64BIT)))
   21327              :                 return 1155; /* *ashrdi3_doubleword_mask */
   21328              :               break;
   21329              : 
   21330              :             case 1:
   21331              :               if ((
   21332              : #line 17523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21333              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   21334              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   21335              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   21336              :    && ix86_pre_reload_split ()) && 
   21337              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21338              : (TARGET_64BIT)))
   21339              :                 return 1157; /* *ashrti3_doubleword_mask */
   21340              :               break;
   21341              : 
   21342              :             default:
   21343              :               break;
   21344              :             }
   21345              :           break;
   21346              : 
   21347              :         case CONST_INT:
   21348              :           operands[2] = x6;
   21349              :           if (const_int_operand (operands[2], E_QImode)
   21350              :               && nonimmediate_operand (operands[0], E_SImode)
   21351              :               && GET_MODE (x5) == E_SImode
   21352              :               && nonimmediate_operand (operands[1], E_SImode)
   21353              :               && 
   21354              : #line 18201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21355              : (INTVAL (operands[2]) == GET_MODE_BITSIZE (SImode)-1
   21356              :    && (TARGET_USE_CLTD || optimize_function_for_size_p (cfun))
   21357              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)
   21358              :    && true))
   21359              :             return 1199; /* ashrsi3_cvt */
   21360              :           break;
   21361              : 
   21362              :         default:
   21363              :           break;
   21364              :         }
   21365              :       operands[2] = x6;
   21366              :       res = recog_368 (x1, insn, pnum_clobbers);
   21367              :       if (res >= 0)
   21368              :         return res;
   21369              :       if (GET_CODE (x6) != SUBREG
   21370              :           || maybe_ne (SUBREG_BYTE (x6), 0)
   21371              :           || GET_MODE (x6) != E_QImode)
   21372              :         return -1;
   21373              :       switch (pattern1446 (x3))
   21374              :         {
   21375              :         case 0:
   21376              :           if (!
   21377              : #line 18773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21378              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   21379              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   21380              :       == 4 * BITS_PER_UNIT - 1
   21381              :    && ix86_pre_reload_split ()))
   21382              :             return -1;
   21383              :           return 1278; /* *ashrsi3_mask */
   21384              : 
   21385              :         case 1:
   21386              :           if (!(
   21387              : #line 18773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21388              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   21389              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   21390              :       == 8 * BITS_PER_UNIT - 1
   21391              :    && ix86_pre_reload_split ()) && 
   21392              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21393              : (TARGET_64BIT)))
   21394              :             return -1;
   21395              :           return 1281; /* *ashrdi3_mask */
   21396              : 
   21397              :         case 2:
   21398              :           if (!
   21399              : #line 18821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21400              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   21401              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   21402              :    && ix86_pre_reload_split ()))
   21403              :             return -1;
   21404              :           return 1290; /* *ashrsi3_add */
   21405              : 
   21406              :         case 3:
   21407              :           if (!(
   21408              : #line 18821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21409              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   21410              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   21411              :    && ix86_pre_reload_split ()) && 
   21412              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21413              : (TARGET_64BIT)))
   21414              :             return -1;
   21415              :           return 1293; /* *ashrdi3_add */
   21416              : 
   21417              :         case 4:
   21418              :           if (!
   21419              : #line 18867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21420              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   21421              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   21422              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   21423              :           == 4 * BITS_PER_UNIT - 1)
   21424              :    && ix86_pre_reload_split ()))
   21425              :             return -1;
   21426              :           return 1302; /* *ashrsi3_sub */
   21427              : 
   21428              :         case 5:
   21429              :           if (!(
   21430              : #line 18867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21431              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   21432              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   21433              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   21434              :           == 8 * BITS_PER_UNIT - 1)
   21435              :    && ix86_pre_reload_split ()) && 
   21436              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21437              : (TARGET_64BIT)))
   21438              :             return -1;
   21439              :           return 1305; /* *ashrdi3_sub */
   21440              : 
   21441              :         default:
   21442              :           return -1;
   21443              :         }
   21444              : 
   21445              :     case 1:
   21446              :       if (register_operand (operands[0], E_DImode)
   21447              :           && register_operand (operands[1], E_DImode)
   21448              :           && (
   21449              : #line 17584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21450              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   21451              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   21452              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   21453              :    && ix86_pre_reload_split ()) && 
   21454              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21455              : (!TARGET_64BIT)))
   21456              :         return 1159; /* *ashrdi3_doubleword_mask_1 */
   21457              :       if (!nonimmediate_operand (operands[0], E_DImode)
   21458              :           || !nonimmediate_operand (operands[1], E_DImode)
   21459              :           || !(
   21460              : #line 18798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21461              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   21462              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   21463              :       == 8 * BITS_PER_UNIT - 1
   21464              :    && ix86_pre_reload_split ()) && 
   21465              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21466              : (TARGET_64BIT)))
   21467              :         return -1;
   21468              :       return 1287; /* *ashrdi3_mask_1 */
   21469              : 
   21470              :     case 2:
   21471              :       if (!(
   21472              : #line 17584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21473              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   21474              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   21475              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   21476              :    && ix86_pre_reload_split ()) && 
   21477              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21478              : (TARGET_64BIT)))
   21479              :         return -1;
   21480              :       return 1161; /* *ashrti3_doubleword_mask_1 */
   21481              : 
   21482              :     case 3:
   21483              :       if (!
   21484              : #line 18798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21485              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   21486              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   21487              :       == 4 * BITS_PER_UNIT - 1
   21488              :    && ix86_pre_reload_split ()))
   21489              :         return -1;
   21490              :       return 1284; /* *ashrsi3_mask_1 */
   21491              : 
   21492              :     case 4:
   21493              :       if (!
   21494              : #line 18845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21495              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   21496              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   21497              :    && ix86_pre_reload_split ()))
   21498              :         return -1;
   21499              :       return 1296; /* *ashrsi3_add_1 */
   21500              : 
   21501              :     case 5:
   21502              :       if (!(
   21503              : #line 18845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21504              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   21505              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   21506              :    && ix86_pre_reload_split ()) && 
   21507              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21508              : (TARGET_64BIT)))
   21509              :         return -1;
   21510              :       return 1299; /* *ashrdi3_add_1 */
   21511              : 
   21512              :     case 6:
   21513              :       if (!
   21514              : #line 18900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21515              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   21516              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   21517              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   21518              :           == 4 * BITS_PER_UNIT - 1)
   21519              :    && ix86_pre_reload_split ()))
   21520              :         return -1;
   21521              :       return 1308; /* *ashrsi3_sub_1 */
   21522              : 
   21523              :     case 7:
   21524              :       if (!(
   21525              : #line 18900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21526              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   21527              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   21528              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   21529              :           == 8 * BITS_PER_UNIT - 1)
   21530              :    && ix86_pre_reload_split ()) && 
   21531              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21532              : (TARGET_64BIT)))
   21533              :         return -1;
   21534              :       return 1311; /* *ashrdi3_sub_1 */
   21535              : 
   21536              :     case 8:
   21537              :       if (!(
   21538              : #line 18929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21539              : (INTVAL (operands[2]) == INTVAL (operands[3])
   21540              :    && UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   21541              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21542              : (!TARGET_64BIT)))
   21543              :         return -1;
   21544              :       return 1312; /* *extenddi2_doubleword_highpart */
   21545              : 
   21546              :     case 9:
   21547              :       if (!(
   21548              : #line 18929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21549              : (INTVAL (operands[2]) == INTVAL (operands[3])
   21550              :    && UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   21551              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21552              : (TARGET_64BIT)))
   21553              :         return -1;
   21554              :       return 1313; /* *extendti2_doubleword_highpart */
   21555              : 
   21556              :     default:
   21557              :       return -1;
   21558              :     }
   21559              : }
   21560              : 
   21561              :  int
   21562              : recog_378 (rtx x1 ATTRIBUTE_UNUSED,
   21563              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21564              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21565              : {
   21566              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21567              :   rtx x2, x3;
   21568              :   int res ATTRIBUTE_UNUSED;
   21569              :   if (pattern356 (x1) != 0)
   21570              :     return -1;
   21571              :   x2 = XVECEXP (x1, 0, 0);
   21572              :   x3 = XEXP (x2, 0);
   21573              :   operands[0] = x3;
   21574              :   switch (pattern1055 (x1))
   21575              :     {
   21576              :     case 0:
   21577              :       if (!
   21578              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21579              : (TARGET_AVX512F
   21580              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21581              :    && (GET_MODE_NUNITS (V16SImode)
   21582              :        < GET_MODE_PRECISION (HImode))
   21583              :    && ix86_pre_reload_split ()))
   21584              :         return -1;
   21585              :       return 3401; /* *avx512f_cmpv16si3_zero_extendhi_2 */
   21586              : 
   21587              :     case 1:
   21588              :       if (!(
   21589              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21590              : (TARGET_AVX512F
   21591              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21592              :    && (GET_MODE_NUNITS (V16HFmode)
   21593              :        < GET_MODE_PRECISION (HImode))
   21594              :    && ix86_pre_reload_split ()) && 
   21595              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21596              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21597              :         return -1;
   21598              :       return 3422; /* *avx512vl_cmpv16hf3_zero_extendhi_2 */
   21599              : 
   21600              :     case 2:
   21601              :       if (!
   21602              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21603              : (TARGET_AVX512F
   21604              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21605              :    && (GET_MODE_NUNITS (V16SFmode)
   21606              :        < GET_MODE_PRECISION (HImode))
   21607              :    && ix86_pre_reload_split ()))
   21608              :         return -1;
   21609              :       return 3428; /* *avx512f_cmpv16sf3_zero_extendhi_2 */
   21610              : 
   21611              :     case 3:
   21612              :       if (!(
   21613              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21614              : (TARGET_AVX512BW
   21615              :   && (GET_MODE_NUNITS (V16QImode)
   21616              :       < GET_MODE_PRECISION (HImode))
   21617              :   && ix86_pre_reload_split ()) && 
   21618              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21619              : (TARGET_AVX512VL)))
   21620              :         return -1;
   21621              :       return 3521; /* *avx512vl_cmpv16qi3_zero_extendhi_2 */
   21622              : 
   21623              :     case 4:
   21624              :       if (!(
   21625              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21626              : (TARGET_AVX512BW
   21627              :   && (GET_MODE_NUNITS (V16HImode)
   21628              :       < GET_MODE_PRECISION (HImode))
   21629              :   && ix86_pre_reload_split ()) && 
   21630              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21631              : (TARGET_AVX512VL)))
   21632              :         return -1;
   21633              :       return 3530; /* *avx512vl_cmpv16hi3_zero_extendhi_2 */
   21634              : 
   21635              :     case 5:
   21636              :       if (!(
   21637              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21638              : (TARGET_AVX512F
   21639              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21640              :    && (GET_MODE_NUNITS (V8SImode)
   21641              :        < GET_MODE_PRECISION (HImode))
   21642              :    && ix86_pre_reload_split ()) && 
   21643              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21644              : (TARGET_AVX512VL)))
   21645              :         return -1;
   21646              :       return 3404; /* *avx512vl_cmpv8si3_zero_extendhi_2 */
   21647              : 
   21648              :     case 6:
   21649              :       if (!(
   21650              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21651              : (TARGET_AVX512F
   21652              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21653              :    && (GET_MODE_NUNITS (V4SImode)
   21654              :        < GET_MODE_PRECISION (HImode))
   21655              :    && ix86_pre_reload_split ()) && 
   21656              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21657              : (TARGET_AVX512VL)))
   21658              :         return -1;
   21659              :       return 3407; /* *avx512vl_cmpv4si3_zero_extendhi_2 */
   21660              : 
   21661              :     case 7:
   21662              :       if (!
   21663              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21664              : (TARGET_AVX512F
   21665              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21666              :    && (GET_MODE_NUNITS (V8DImode)
   21667              :        < GET_MODE_PRECISION (HImode))
   21668              :    && ix86_pre_reload_split ()))
   21669              :         return -1;
   21670              :       return 3410; /* *avx512f_cmpv8di3_zero_extendhi_2 */
   21671              : 
   21672              :     case 8:
   21673              :       if (!(
   21674              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21675              : (TARGET_AVX512F
   21676              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21677              :    && (GET_MODE_NUNITS (V4DImode)
   21678              :        < GET_MODE_PRECISION (HImode))
   21679              :    && ix86_pre_reload_split ()) && 
   21680              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21681              : (TARGET_AVX512VL)))
   21682              :         return -1;
   21683              :       return 3413; /* *avx512vl_cmpv4di3_zero_extendhi_2 */
   21684              : 
   21685              :     case 9:
   21686              :       if (!(
   21687              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21688              : (TARGET_AVX512F
   21689              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21690              :    && (GET_MODE_NUNITS (V2DImode)
   21691              :        < GET_MODE_PRECISION (HImode))
   21692              :    && ix86_pre_reload_split ()) && 
   21693              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21694              : (TARGET_AVX512VL)))
   21695              :         return -1;
   21696              :       return 3416; /* *avx512vl_cmpv2di3_zero_extendhi_2 */
   21697              : 
   21698              :     case 10:
   21699              :       if (!(
   21700              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21701              : (TARGET_AVX512F
   21702              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21703              :    && (GET_MODE_NUNITS (V8HFmode)
   21704              :        < GET_MODE_PRECISION (HImode))
   21705              :    && ix86_pre_reload_split ()) && 
   21706              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21707              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21708              :         return -1;
   21709              :       return 3425; /* *avx512fp16_cmpv8hf3_zero_extendhi_2 */
   21710              : 
   21711              :     case 11:
   21712              :       if (!(
   21713              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21714              : (TARGET_AVX512F
   21715              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21716              :    && (GET_MODE_NUNITS (V8SFmode)
   21717              :        < GET_MODE_PRECISION (HImode))
   21718              :    && ix86_pre_reload_split ()) && 
   21719              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21720              : (TARGET_AVX512VL)))
   21721              :         return -1;
   21722              :       return 3431; /* *avx512vl_cmpv8sf3_zero_extendhi_2 */
   21723              : 
   21724              :     case 12:
   21725              :       if (!(
   21726              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21727              : (TARGET_AVX512F
   21728              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21729              :    && (GET_MODE_NUNITS (V4SFmode)
   21730              :        < GET_MODE_PRECISION (HImode))
   21731              :    && ix86_pre_reload_split ()) && 
   21732              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21733              : (TARGET_AVX512VL)))
   21734              :         return -1;
   21735              :       return 3434; /* *avx512vl_cmpv4sf3_zero_extendhi_2 */
   21736              : 
   21737              :     case 13:
   21738              :       if (!
   21739              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21740              : (TARGET_AVX512F
   21741              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21742              :    && (GET_MODE_NUNITS (V8DFmode)
   21743              :        < GET_MODE_PRECISION (HImode))
   21744              :    && ix86_pre_reload_split ()))
   21745              :         return -1;
   21746              :       return 3437; /* *avx512f_cmpv8df3_zero_extendhi_2 */
   21747              : 
   21748              :     case 14:
   21749              :       if (!(
   21750              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21751              : (TARGET_AVX512F
   21752              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21753              :    && (GET_MODE_NUNITS (V4DFmode)
   21754              :        < GET_MODE_PRECISION (HImode))
   21755              :    && ix86_pre_reload_split ()) && 
   21756              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21757              : (TARGET_AVX512VL)))
   21758              :         return -1;
   21759              :       return 3440; /* *avx512vl_cmpv4df3_zero_extendhi_2 */
   21760              : 
   21761              :     case 15:
   21762              :       if (!(
   21763              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21764              : (TARGET_AVX512F
   21765              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21766              :    && (GET_MODE_NUNITS (V2DFmode)
   21767              :        < GET_MODE_PRECISION (HImode))
   21768              :    && ix86_pre_reload_split ()) && 
   21769              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21770              : (TARGET_AVX512VL)))
   21771              :         return -1;
   21772              :       return 3443; /* *avx512vl_cmpv2df3_zero_extendhi_2 */
   21773              : 
   21774              :     case 16:
   21775              :       if (!(
   21776              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21777              : (TARGET_AVX512BW
   21778              :   && (GET_MODE_NUNITS (V8HImode)
   21779              :       < GET_MODE_PRECISION (HImode))
   21780              :   && ix86_pre_reload_split ()) && 
   21781              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21782              : (TARGET_AVX512VL)))
   21783              :         return -1;
   21784              :       return 3533; /* *avx512vl_cmpv8hi3_zero_extendhi_2 */
   21785              : 
   21786              :     case 17:
   21787              :       if (!(
   21788              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21789              : (TARGET_AVX512F
   21790              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   21791              :    && (GET_MODE_NUNITS (V32HFmode)
   21792              :        < GET_MODE_PRECISION (HImode))
   21793              :    && ix86_pre_reload_split ()) && 
   21794              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21795              : (TARGET_AVX512FP16)))
   21796              :         return -1;
   21797              :       return 3419; /* *avx512bw_cmpv32hf3_zero_extendhi_2 */
   21798              : 
   21799              :     case 18:
   21800              :       if (!(
   21801              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21802              : (TARGET_AVX512BW
   21803              :   && (GET_MODE_NUNITS (V32QImode)
   21804              :       < GET_MODE_PRECISION (HImode))
   21805              :   && ix86_pre_reload_split ()) && 
   21806              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21807              : (TARGET_AVX512VL)))
   21808              :         return -1;
   21809              :       return 3524; /* *avx512vl_cmpv32qi3_zero_extendhi_2 */
   21810              : 
   21811              :     case 19:
   21812              :       if (!
   21813              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21814              : (TARGET_AVX512BW
   21815              :   && (GET_MODE_NUNITS (V32HImode)
   21816              :       < GET_MODE_PRECISION (HImode))
   21817              :   && ix86_pre_reload_split ()))
   21818              :         return -1;
   21819              :       return 3527; /* *avx512bw_cmpv32hi3_zero_extendhi_2 */
   21820              : 
   21821              :     case 20:
   21822              :       if (!
   21823              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21824              : (TARGET_AVX512BW
   21825              :   && (GET_MODE_NUNITS (V64QImode)
   21826              :       < GET_MODE_PRECISION (HImode))
   21827              :   && ix86_pre_reload_split ()))
   21828              :         return -1;
   21829              :       return 3518; /* *avx512bw_cmpv64qi3_zero_extendhi_2 */
   21830              : 
   21831              :     case 21:
   21832              :       if (!
   21833              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21834              : (TARGET_AVX512F
   21835              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21836              :    && (GET_MODE_NUNITS (V16SImode)
   21837              :        < GET_MODE_PRECISION (SImode))
   21838              :    && ix86_pre_reload_split ()))
   21839              :         return -1;
   21840              :       return 3402; /* *avx512f_cmpv16si3_zero_extendsi_2 */
   21841              : 
   21842              :     case 22:
   21843              :       if (!(
   21844              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21845              : (TARGET_AVX512F
   21846              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21847              :    && (GET_MODE_NUNITS (V16HFmode)
   21848              :        < GET_MODE_PRECISION (SImode))
   21849              :    && ix86_pre_reload_split ()) && 
   21850              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21851              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21852              :         return -1;
   21853              :       return 3423; /* *avx512vl_cmpv16hf3_zero_extendsi_2 */
   21854              : 
   21855              :     case 23:
   21856              :       if (!
   21857              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21858              : (TARGET_AVX512F
   21859              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21860              :    && (GET_MODE_NUNITS (V16SFmode)
   21861              :        < GET_MODE_PRECISION (SImode))
   21862              :    && ix86_pre_reload_split ()))
   21863              :         return -1;
   21864              :       return 3429; /* *avx512f_cmpv16sf3_zero_extendsi_2 */
   21865              : 
   21866              :     case 24:
   21867              :       if (!(
   21868              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21869              : (TARGET_AVX512BW
   21870              :   && (GET_MODE_NUNITS (V16QImode)
   21871              :       < GET_MODE_PRECISION (SImode))
   21872              :   && ix86_pre_reload_split ()) && 
   21873              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21874              : (TARGET_AVX512VL)))
   21875              :         return -1;
   21876              :       return 3522; /* *avx512vl_cmpv16qi3_zero_extendsi_2 */
   21877              : 
   21878              :     case 25:
   21879              :       if (!(
   21880              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21881              : (TARGET_AVX512BW
   21882              :   && (GET_MODE_NUNITS (V16HImode)
   21883              :       < GET_MODE_PRECISION (SImode))
   21884              :   && ix86_pre_reload_split ()) && 
   21885              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21886              : (TARGET_AVX512VL)))
   21887              :         return -1;
   21888              :       return 3531; /* *avx512vl_cmpv16hi3_zero_extendsi_2 */
   21889              : 
   21890              :     case 26:
   21891              :       if (!(
   21892              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21893              : (TARGET_AVX512F
   21894              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21895              :    && (GET_MODE_NUNITS (V8SImode)
   21896              :        < GET_MODE_PRECISION (SImode))
   21897              :    && ix86_pre_reload_split ()) && 
   21898              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21899              : (TARGET_AVX512VL)))
   21900              :         return -1;
   21901              :       return 3405; /* *avx512vl_cmpv8si3_zero_extendsi_2 */
   21902              : 
   21903              :     case 27:
   21904              :       if (!(
   21905              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21906              : (TARGET_AVX512F
   21907              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21908              :    && (GET_MODE_NUNITS (V4SImode)
   21909              :        < GET_MODE_PRECISION (SImode))
   21910              :    && ix86_pre_reload_split ()) && 
   21911              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21912              : (TARGET_AVX512VL)))
   21913              :         return -1;
   21914              :       return 3408; /* *avx512vl_cmpv4si3_zero_extendsi_2 */
   21915              : 
   21916              :     case 28:
   21917              :       if (!
   21918              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21919              : (TARGET_AVX512F
   21920              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21921              :    && (GET_MODE_NUNITS (V8DImode)
   21922              :        < GET_MODE_PRECISION (SImode))
   21923              :    && ix86_pre_reload_split ()))
   21924              :         return -1;
   21925              :       return 3411; /* *avx512f_cmpv8di3_zero_extendsi_2 */
   21926              : 
   21927              :     case 29:
   21928              :       if (!(
   21929              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21930              : (TARGET_AVX512F
   21931              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21932              :    && (GET_MODE_NUNITS (V4DImode)
   21933              :        < GET_MODE_PRECISION (SImode))
   21934              :    && ix86_pre_reload_split ()) && 
   21935              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21936              : (TARGET_AVX512VL)))
   21937              :         return -1;
   21938              :       return 3414; /* *avx512vl_cmpv4di3_zero_extendsi_2 */
   21939              : 
   21940              :     case 30:
   21941              :       if (!(
   21942              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21943              : (TARGET_AVX512F
   21944              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21945              :    && (GET_MODE_NUNITS (V2DImode)
   21946              :        < GET_MODE_PRECISION (SImode))
   21947              :    && ix86_pre_reload_split ()) && 
   21948              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21949              : (TARGET_AVX512VL)))
   21950              :         return -1;
   21951              :       return 3417; /* *avx512vl_cmpv2di3_zero_extendsi_2 */
   21952              : 
   21953              :     case 31:
   21954              :       if (!(
   21955              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21956              : (TARGET_AVX512F
   21957              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21958              :    && (GET_MODE_NUNITS (V8HFmode)
   21959              :        < GET_MODE_PRECISION (SImode))
   21960              :    && ix86_pre_reload_split ()) && 
   21961              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21962              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21963              :         return -1;
   21964              :       return 3426; /* *avx512fp16_cmpv8hf3_zero_extendsi_2 */
   21965              : 
   21966              :     case 32:
   21967              :       if (!(
   21968              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21969              : (TARGET_AVX512F
   21970              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21971              :    && (GET_MODE_NUNITS (V8SFmode)
   21972              :        < GET_MODE_PRECISION (SImode))
   21973              :    && ix86_pre_reload_split ()) && 
   21974              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21975              : (TARGET_AVX512VL)))
   21976              :         return -1;
   21977              :       return 3432; /* *avx512vl_cmpv8sf3_zero_extendsi_2 */
   21978              : 
   21979              :     case 33:
   21980              :       if (!(
   21981              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21982              : (TARGET_AVX512F
   21983              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21984              :    && (GET_MODE_NUNITS (V4SFmode)
   21985              :        < GET_MODE_PRECISION (SImode))
   21986              :    && ix86_pre_reload_split ()) && 
   21987              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21988              : (TARGET_AVX512VL)))
   21989              :         return -1;
   21990              :       return 3435; /* *avx512vl_cmpv4sf3_zero_extendsi_2 */
   21991              : 
   21992              :     case 34:
   21993              :       if (!
   21994              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21995              : (TARGET_AVX512F
   21996              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   21997              :    && (GET_MODE_NUNITS (V8DFmode)
   21998              :        < GET_MODE_PRECISION (SImode))
   21999              :    && ix86_pre_reload_split ()))
   22000              :         return -1;
   22001              :       return 3438; /* *avx512f_cmpv8df3_zero_extendsi_2 */
   22002              : 
   22003              :     case 35:
   22004              :       if (!(
   22005              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22006              : (TARGET_AVX512F
   22007              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22008              :    && (GET_MODE_NUNITS (V4DFmode)
   22009              :        < GET_MODE_PRECISION (SImode))
   22010              :    && ix86_pre_reload_split ()) && 
   22011              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22012              : (TARGET_AVX512VL)))
   22013              :         return -1;
   22014              :       return 3441; /* *avx512vl_cmpv4df3_zero_extendsi_2 */
   22015              : 
   22016              :     case 36:
   22017              :       if (!(
   22018              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22019              : (TARGET_AVX512F
   22020              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22021              :    && (GET_MODE_NUNITS (V2DFmode)
   22022              :        < GET_MODE_PRECISION (SImode))
   22023              :    && ix86_pre_reload_split ()) && 
   22024              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22025              : (TARGET_AVX512VL)))
   22026              :         return -1;
   22027              :       return 3444; /* *avx512vl_cmpv2df3_zero_extendsi_2 */
   22028              : 
   22029              :     case 37:
   22030              :       if (!(
   22031              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22032              : (TARGET_AVX512BW
   22033              :   && (GET_MODE_NUNITS (V8HImode)
   22034              :       < GET_MODE_PRECISION (SImode))
   22035              :   && ix86_pre_reload_split ()) && 
   22036              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22037              : (TARGET_AVX512VL)))
   22038              :         return -1;
   22039              :       return 3534; /* *avx512vl_cmpv8hi3_zero_extendsi_2 */
   22040              : 
   22041              :     case 38:
   22042              :       if (!(
   22043              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22044              : (TARGET_AVX512F
   22045              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22046              :    && (GET_MODE_NUNITS (V32HFmode)
   22047              :        < GET_MODE_PRECISION (SImode))
   22048              :    && ix86_pre_reload_split ()) && 
   22049              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22050              : (TARGET_AVX512FP16)))
   22051              :         return -1;
   22052              :       return 3420; /* *avx512bw_cmpv32hf3_zero_extendsi_2 */
   22053              : 
   22054              :     case 39:
   22055              :       if (!(
   22056              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22057              : (TARGET_AVX512BW
   22058              :   && (GET_MODE_NUNITS (V32QImode)
   22059              :       < GET_MODE_PRECISION (SImode))
   22060              :   && ix86_pre_reload_split ()) && 
   22061              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22062              : (TARGET_AVX512VL)))
   22063              :         return -1;
   22064              :       return 3525; /* *avx512vl_cmpv32qi3_zero_extendsi_2 */
   22065              : 
   22066              :     case 40:
   22067              :       if (!
   22068              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22069              : (TARGET_AVX512BW
   22070              :   && (GET_MODE_NUNITS (V32HImode)
   22071              :       < GET_MODE_PRECISION (SImode))
   22072              :   && ix86_pre_reload_split ()))
   22073              :         return -1;
   22074              :       return 3528; /* *avx512bw_cmpv32hi3_zero_extendsi_2 */
   22075              : 
   22076              :     case 41:
   22077              :       if (!
   22078              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22079              : (TARGET_AVX512BW
   22080              :   && (GET_MODE_NUNITS (V64QImode)
   22081              :       < GET_MODE_PRECISION (SImode))
   22082              :   && ix86_pre_reload_split ()))
   22083              :         return -1;
   22084              :       return 3519; /* *avx512bw_cmpv64qi3_zero_extendsi_2 */
   22085              : 
   22086              :     case 42:
   22087              :       if (!
   22088              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22089              : (TARGET_AVX512F
   22090              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22091              :    && (GET_MODE_NUNITS (V16SImode)
   22092              :        < GET_MODE_PRECISION (DImode))
   22093              :    && ix86_pre_reload_split ()))
   22094              :         return -1;
   22095              :       return 3403; /* *avx512f_cmpv16si3_zero_extenddi_2 */
   22096              : 
   22097              :     case 43:
   22098              :       if (!(
   22099              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22100              : (TARGET_AVX512F
   22101              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22102              :    && (GET_MODE_NUNITS (V16HFmode)
   22103              :        < GET_MODE_PRECISION (DImode))
   22104              :    && ix86_pre_reload_split ()) && 
   22105              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22106              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   22107              :         return -1;
   22108              :       return 3424; /* *avx512vl_cmpv16hf3_zero_extenddi_2 */
   22109              : 
   22110              :     case 44:
   22111              :       if (!
   22112              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22113              : (TARGET_AVX512F
   22114              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22115              :    && (GET_MODE_NUNITS (V16SFmode)
   22116              :        < GET_MODE_PRECISION (DImode))
   22117              :    && ix86_pre_reload_split ()))
   22118              :         return -1;
   22119              :       return 3430; /* *avx512f_cmpv16sf3_zero_extenddi_2 */
   22120              : 
   22121              :     case 45:
   22122              :       if (!(
   22123              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22124              : (TARGET_AVX512BW
   22125              :   && (GET_MODE_NUNITS (V16QImode)
   22126              :       < GET_MODE_PRECISION (DImode))
   22127              :   && ix86_pre_reload_split ()) && 
   22128              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22129              : (TARGET_AVX512VL)))
   22130              :         return -1;
   22131              :       return 3523; /* *avx512vl_cmpv16qi3_zero_extenddi_2 */
   22132              : 
   22133              :     case 46:
   22134              :       if (!(
   22135              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22136              : (TARGET_AVX512BW
   22137              :   && (GET_MODE_NUNITS (V16HImode)
   22138              :       < GET_MODE_PRECISION (DImode))
   22139              :   && ix86_pre_reload_split ()) && 
   22140              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22141              : (TARGET_AVX512VL)))
   22142              :         return -1;
   22143              :       return 3532; /* *avx512vl_cmpv16hi3_zero_extenddi_2 */
   22144              : 
   22145              :     case 47:
   22146              :       if (!(
   22147              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22148              : (TARGET_AVX512F
   22149              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22150              :    && (GET_MODE_NUNITS (V8SImode)
   22151              :        < GET_MODE_PRECISION (DImode))
   22152              :    && ix86_pre_reload_split ()) && 
   22153              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22154              : (TARGET_AVX512VL)))
   22155              :         return -1;
   22156              :       return 3406; /* *avx512vl_cmpv8si3_zero_extenddi_2 */
   22157              : 
   22158              :     case 48:
   22159              :       if (!(
   22160              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22161              : (TARGET_AVX512F
   22162              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22163              :    && (GET_MODE_NUNITS (V4SImode)
   22164              :        < GET_MODE_PRECISION (DImode))
   22165              :    && ix86_pre_reload_split ()) && 
   22166              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22167              : (TARGET_AVX512VL)))
   22168              :         return -1;
   22169              :       return 3409; /* *avx512vl_cmpv4si3_zero_extenddi_2 */
   22170              : 
   22171              :     case 49:
   22172              :       if (!
   22173              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22174              : (TARGET_AVX512F
   22175              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22176              :    && (GET_MODE_NUNITS (V8DImode)
   22177              :        < GET_MODE_PRECISION (DImode))
   22178              :    && ix86_pre_reload_split ()))
   22179              :         return -1;
   22180              :       return 3412; /* *avx512f_cmpv8di3_zero_extenddi_2 */
   22181              : 
   22182              :     case 50:
   22183              :       if (!(
   22184              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22185              : (TARGET_AVX512F
   22186              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22187              :    && (GET_MODE_NUNITS (V4DImode)
   22188              :        < GET_MODE_PRECISION (DImode))
   22189              :    && ix86_pre_reload_split ()) && 
   22190              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22191              : (TARGET_AVX512VL)))
   22192              :         return -1;
   22193              :       return 3415; /* *avx512vl_cmpv4di3_zero_extenddi_2 */
   22194              : 
   22195              :     case 51:
   22196              :       if (!(
   22197              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22198              : (TARGET_AVX512F
   22199              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22200              :    && (GET_MODE_NUNITS (V2DImode)
   22201              :        < GET_MODE_PRECISION (DImode))
   22202              :    && ix86_pre_reload_split ()) && 
   22203              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22204              : (TARGET_AVX512VL)))
   22205              :         return -1;
   22206              :       return 3418; /* *avx512vl_cmpv2di3_zero_extenddi_2 */
   22207              : 
   22208              :     case 52:
   22209              :       if (!(
   22210              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22211              : (TARGET_AVX512F
   22212              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22213              :    && (GET_MODE_NUNITS (V8HFmode)
   22214              :        < GET_MODE_PRECISION (DImode))
   22215              :    && ix86_pre_reload_split ()) && 
   22216              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22217              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   22218              :         return -1;
   22219              :       return 3427; /* *avx512fp16_cmpv8hf3_zero_extenddi_2 */
   22220              : 
   22221              :     case 53:
   22222              :       if (!(
   22223              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22224              : (TARGET_AVX512F
   22225              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22226              :    && (GET_MODE_NUNITS (V8SFmode)
   22227              :        < GET_MODE_PRECISION (DImode))
   22228              :    && ix86_pre_reload_split ()) && 
   22229              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22230              : (TARGET_AVX512VL)))
   22231              :         return -1;
   22232              :       return 3433; /* *avx512vl_cmpv8sf3_zero_extenddi_2 */
   22233              : 
   22234              :     case 54:
   22235              :       if (!(
   22236              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22237              : (TARGET_AVX512F
   22238              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22239              :    && (GET_MODE_NUNITS (V4SFmode)
   22240              :        < GET_MODE_PRECISION (DImode))
   22241              :    && ix86_pre_reload_split ()) && 
   22242              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22243              : (TARGET_AVX512VL)))
   22244              :         return -1;
   22245              :       return 3436; /* *avx512vl_cmpv4sf3_zero_extenddi_2 */
   22246              : 
   22247              :     case 55:
   22248              :       if (!
   22249              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22250              : (TARGET_AVX512F
   22251              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22252              :    && (GET_MODE_NUNITS (V8DFmode)
   22253              :        < GET_MODE_PRECISION (DImode))
   22254              :    && ix86_pre_reload_split ()))
   22255              :         return -1;
   22256              :       return 3439; /* *avx512f_cmpv8df3_zero_extenddi_2 */
   22257              : 
   22258              :     case 56:
   22259              :       if (!(
   22260              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22261              : (TARGET_AVX512F
   22262              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22263              :    && (GET_MODE_NUNITS (V4DFmode)
   22264              :        < GET_MODE_PRECISION (DImode))
   22265              :    && ix86_pre_reload_split ()) && 
   22266              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22267              : (TARGET_AVX512VL)))
   22268              :         return -1;
   22269              :       return 3442; /* *avx512vl_cmpv4df3_zero_extenddi_2 */
   22270              : 
   22271              :     case 57:
   22272              :       if (!(
   22273              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22274              : (TARGET_AVX512F
   22275              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22276              :    && (GET_MODE_NUNITS (V2DFmode)
   22277              :        < GET_MODE_PRECISION (DImode))
   22278              :    && ix86_pre_reload_split ()) && 
   22279              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22280              : (TARGET_AVX512VL)))
   22281              :         return -1;
   22282              :       return 3445; /* *avx512vl_cmpv2df3_zero_extenddi_2 */
   22283              : 
   22284              :     case 58:
   22285              :       if (!(
   22286              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22287              : (TARGET_AVX512BW
   22288              :   && (GET_MODE_NUNITS (V8HImode)
   22289              :       < GET_MODE_PRECISION (DImode))
   22290              :   && ix86_pre_reload_split ()) && 
   22291              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22292              : (TARGET_AVX512VL)))
   22293              :         return -1;
   22294              :       return 3535; /* *avx512vl_cmpv8hi3_zero_extenddi_2 */
   22295              : 
   22296              :     case 59:
   22297              :       if (!(
   22298              : #line 4722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22299              : (TARGET_AVX512F
   22300              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22301              :    && (GET_MODE_NUNITS (V32HFmode)
   22302              :        < GET_MODE_PRECISION (DImode))
   22303              :    && ix86_pre_reload_split ()) && 
   22304              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22305              : (TARGET_AVX512FP16)))
   22306              :         return -1;
   22307              :       return 3421; /* *avx512bw_cmpv32hf3_zero_extenddi_2 */
   22308              : 
   22309              :     case 60:
   22310              :       if (!(
   22311              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22312              : (TARGET_AVX512BW
   22313              :   && (GET_MODE_NUNITS (V32QImode)
   22314              :       < GET_MODE_PRECISION (DImode))
   22315              :   && ix86_pre_reload_split ()) && 
   22316              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22317              : (TARGET_AVX512VL)))
   22318              :         return -1;
   22319              :       return 3526; /* *avx512vl_cmpv32qi3_zero_extenddi_2 */
   22320              : 
   22321              :     case 61:
   22322              :       if (!
   22323              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22324              : (TARGET_AVX512BW
   22325              :   && (GET_MODE_NUNITS (V32HImode)
   22326              :       < GET_MODE_PRECISION (DImode))
   22327              :   && ix86_pre_reload_split ()))
   22328              :         return -1;
   22329              :       return 3529; /* *avx512bw_cmpv32hi3_zero_extenddi_2 */
   22330              : 
   22331              :     case 62:
   22332              :       if (!
   22333              : #line 4914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22334              : (TARGET_AVX512BW
   22335              :   && (GET_MODE_NUNITS (V64QImode)
   22336              :       < GET_MODE_PRECISION (DImode))
   22337              :   && ix86_pre_reload_split ()))
   22338              :         return -1;
   22339              :       return 3520; /* *avx512bw_cmpv64qi3_zero_extenddi_2 */
   22340              : 
   22341              :     case 63:
   22342              :       if (!
   22343              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22344              : (TARGET_AVX512BW
   22345              :    && ix86_pre_reload_split ()
   22346              :    && (GET_MODE_NUNITS (V64QImode)
   22347              :       < GET_MODE_PRECISION (HImode))
   22348              :    && ix86_pre_reload_split ()))
   22349              :         return -1;
   22350              :       return 3614; /* *avx512bw_ucmpv64qi3_zero_extendhi_2 */
   22351              : 
   22352              :     case 64:
   22353              :       if (!(
   22354              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22355              : (TARGET_AVX512BW
   22356              :    && ix86_pre_reload_split ()
   22357              :    && (GET_MODE_NUNITS (V16QImode)
   22358              :       < GET_MODE_PRECISION (HImode))
   22359              :    && ix86_pre_reload_split ()) && 
   22360              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22361              : (TARGET_AVX512VL)))
   22362              :         return -1;
   22363              :       return 3617; /* *avx512vl_ucmpv16qi3_zero_extendhi_2 */
   22364              : 
   22365              :     case 65:
   22366              :       if (!(
   22367              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22368              : (TARGET_AVX512BW
   22369              :    && ix86_pre_reload_split ()
   22370              :    && (GET_MODE_NUNITS (V16HImode)
   22371              :       < GET_MODE_PRECISION (HImode))
   22372              :    && ix86_pre_reload_split ()) && 
   22373              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22374              : (TARGET_AVX512VL)))
   22375              :         return -1;
   22376              :       return 3626; /* *avx512vl_ucmpv16hi3_zero_extendhi_2 */
   22377              : 
   22378              :     case 66:
   22379              :       if (!
   22380              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22381              : (TARGET_AVX512F
   22382              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   22383              :    && (GET_MODE_NUNITS (V16SImode)
   22384              :        < GET_MODE_PRECISION (HImode))
   22385              :    && ix86_pre_reload_split ()))
   22386              :         return -1;
   22387              :       return 3698; /* *avx512f_ucmpv16si3_zero_extendhi_2 */
   22388              : 
   22389              :     case 67:
   22390              :       if (!(
   22391              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22392              : (TARGET_AVX512BW
   22393              :    && ix86_pre_reload_split ()
   22394              :    && (GET_MODE_NUNITS (V32QImode)
   22395              :       < GET_MODE_PRECISION (HImode))
   22396              :    && ix86_pre_reload_split ()) && 
   22397              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22398              : (TARGET_AVX512VL)))
   22399              :         return -1;
   22400              :       return 3620; /* *avx512vl_ucmpv32qi3_zero_extendhi_2 */
   22401              : 
   22402              :     case 68:
   22403              :       if (!
   22404              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22405              : (TARGET_AVX512BW
   22406              :    && ix86_pre_reload_split ()
   22407              :    && (GET_MODE_NUNITS (V32HImode)
   22408              :       < GET_MODE_PRECISION (HImode))
   22409              :    && ix86_pre_reload_split ()))
   22410              :         return -1;
   22411              :       return 3623; /* *avx512bw_ucmpv32hi3_zero_extendhi_2 */
   22412              : 
   22413              :     case 69:
   22414              :       if (!(
   22415              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22416              : (TARGET_AVX512BW
   22417              :    && ix86_pre_reload_split ()
   22418              :    && (GET_MODE_NUNITS (V8HImode)
   22419              :       < GET_MODE_PRECISION (HImode))
   22420              :    && ix86_pre_reload_split ()) && 
   22421              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22422              : (TARGET_AVX512VL)))
   22423              :         return -1;
   22424              :       return 3629; /* *avx512vl_ucmpv8hi3_zero_extendhi_2 */
   22425              : 
   22426              :     case 70:
   22427              :       if (!(
   22428              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22429              : (TARGET_AVX512F
   22430              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   22431              :    && (GET_MODE_NUNITS (V8SImode)
   22432              :        < GET_MODE_PRECISION (HImode))
   22433              :    && ix86_pre_reload_split ()) && 
   22434              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22435              : (TARGET_AVX512VL)))
   22436              :         return -1;
   22437              :       return 3699; /* *avx512vl_ucmpv8si3_zero_extendhi_2 */
   22438              : 
   22439              :     case 71:
   22440              :       if (!(
   22441              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22442              : (TARGET_AVX512F
   22443              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   22444              :    && (GET_MODE_NUNITS (V4SImode)
   22445              :        < GET_MODE_PRECISION (HImode))
   22446              :    && ix86_pre_reload_split ()) && 
   22447              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22448              : (TARGET_AVX512VL)))
   22449              :         return -1;
   22450              :       return 3700; /* *avx512vl_ucmpv4si3_zero_extendhi_2 */
   22451              : 
   22452              :     case 72:
   22453              :       if (!
   22454              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22455              : (TARGET_AVX512F
   22456              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   22457              :    && (GET_MODE_NUNITS (V8DImode)
   22458              :        < GET_MODE_PRECISION (HImode))
   22459              :    && ix86_pre_reload_split ()))
   22460              :         return -1;
   22461              :       return 3701; /* *avx512f_ucmpv8di3_zero_extendhi_2 */
   22462              : 
   22463              :     case 73:
   22464              :       if (!(
   22465              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22466              : (TARGET_AVX512F
   22467              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   22468              :    && (GET_MODE_NUNITS (V4DImode)
   22469              :        < GET_MODE_PRECISION (HImode))
   22470              :    && ix86_pre_reload_split ()) && 
   22471              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22472              : (TARGET_AVX512VL)))
   22473              :         return -1;
   22474              :       return 3702; /* *avx512vl_ucmpv4di3_zero_extendhi_2 */
   22475              : 
   22476              :     case 74:
   22477              :       if (!(
   22478              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22479              : (TARGET_AVX512F
   22480              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   22481              :    && (GET_MODE_NUNITS (V2DImode)
   22482              :        < GET_MODE_PRECISION (HImode))
   22483              :    && ix86_pre_reload_split ()) && 
   22484              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22485              : (TARGET_AVX512VL)))
   22486              :         return -1;
   22487              :       return 3703; /* *avx512vl_ucmpv2di3_zero_extendhi_2 */
   22488              : 
   22489              :     case 75:
   22490              :       if (!
   22491              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22492              : (TARGET_AVX512BW
   22493              :    && ix86_pre_reload_split ()
   22494              :    && (GET_MODE_NUNITS (V64QImode)
   22495              :       < GET_MODE_PRECISION (SImode))
   22496              :    && ix86_pre_reload_split ()))
   22497              :         return -1;
   22498              :       return 3615; /* *avx512bw_ucmpv64qi3_zero_extendsi_2 */
   22499              : 
   22500              :     case 76:
   22501              :       if (!(
   22502              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22503              : (TARGET_AVX512BW
   22504              :    && ix86_pre_reload_split ()
   22505              :    && (GET_MODE_NUNITS (V16QImode)
   22506              :       < GET_MODE_PRECISION (SImode))
   22507              :    && ix86_pre_reload_split ()) && 
   22508              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22509              : (TARGET_AVX512VL)))
   22510              :         return -1;
   22511              :       return 3618; /* *avx512vl_ucmpv16qi3_zero_extendsi_2 */
   22512              : 
   22513              :     case 77:
   22514              :       if (!(
   22515              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22516              : (TARGET_AVX512BW
   22517              :    && ix86_pre_reload_split ()
   22518              :    && (GET_MODE_NUNITS (V16HImode)
   22519              :       < GET_MODE_PRECISION (SImode))
   22520              :    && ix86_pre_reload_split ()) && 
   22521              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22522              : (TARGET_AVX512VL)))
   22523              :         return -1;
   22524              :       return 3627; /* *avx512vl_ucmpv16hi3_zero_extendsi_2 */
   22525              : 
   22526              :     case 78:
   22527              :       if (!
   22528              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22529              : (TARGET_AVX512F
   22530              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22531              :    && (GET_MODE_NUNITS (V16SImode)
   22532              :        < GET_MODE_PRECISION (SImode))
   22533              :    && ix86_pre_reload_split ()))
   22534              :         return -1;
   22535              :       return 3704; /* *avx512f_ucmpv16si3_zero_extendsi_2 */
   22536              : 
   22537              :     case 79:
   22538              :       if (!(
   22539              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22540              : (TARGET_AVX512BW
   22541              :    && ix86_pre_reload_split ()
   22542              :    && (GET_MODE_NUNITS (V32QImode)
   22543              :       < GET_MODE_PRECISION (SImode))
   22544              :    && ix86_pre_reload_split ()) && 
   22545              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22546              : (TARGET_AVX512VL)))
   22547              :         return -1;
   22548              :       return 3621; /* *avx512vl_ucmpv32qi3_zero_extendsi_2 */
   22549              : 
   22550              :     case 80:
   22551              :       if (!
   22552              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22553              : (TARGET_AVX512BW
   22554              :    && ix86_pre_reload_split ()
   22555              :    && (GET_MODE_NUNITS (V32HImode)
   22556              :       < GET_MODE_PRECISION (SImode))
   22557              :    && ix86_pre_reload_split ()))
   22558              :         return -1;
   22559              :       return 3624; /* *avx512bw_ucmpv32hi3_zero_extendsi_2 */
   22560              : 
   22561              :     case 81:
   22562              :       if (!(
   22563              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22564              : (TARGET_AVX512BW
   22565              :    && ix86_pre_reload_split ()
   22566              :    && (GET_MODE_NUNITS (V8HImode)
   22567              :       < GET_MODE_PRECISION (SImode))
   22568              :    && ix86_pre_reload_split ()) && 
   22569              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22570              : (TARGET_AVX512VL)))
   22571              :         return -1;
   22572              :       return 3630; /* *avx512vl_ucmpv8hi3_zero_extendsi_2 */
   22573              : 
   22574              :     case 82:
   22575              :       if (!(
   22576              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22577              : (TARGET_AVX512F
   22578              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22579              :    && (GET_MODE_NUNITS (V8SImode)
   22580              :        < GET_MODE_PRECISION (SImode))
   22581              :    && ix86_pre_reload_split ()) && 
   22582              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22583              : (TARGET_AVX512VL)))
   22584              :         return -1;
   22585              :       return 3705; /* *avx512vl_ucmpv8si3_zero_extendsi_2 */
   22586              : 
   22587              :     case 83:
   22588              :       if (!(
   22589              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22590              : (TARGET_AVX512F
   22591              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22592              :    && (GET_MODE_NUNITS (V4SImode)
   22593              :        < GET_MODE_PRECISION (SImode))
   22594              :    && ix86_pre_reload_split ()) && 
   22595              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22596              : (TARGET_AVX512VL)))
   22597              :         return -1;
   22598              :       return 3706; /* *avx512vl_ucmpv4si3_zero_extendsi_2 */
   22599              : 
   22600              :     case 84:
   22601              :       if (!
   22602              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22603              : (TARGET_AVX512F
   22604              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22605              :    && (GET_MODE_NUNITS (V8DImode)
   22606              :        < GET_MODE_PRECISION (SImode))
   22607              :    && ix86_pre_reload_split ()))
   22608              :         return -1;
   22609              :       return 3707; /* *avx512f_ucmpv8di3_zero_extendsi_2 */
   22610              : 
   22611              :     case 85:
   22612              :       if (!(
   22613              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22614              : (TARGET_AVX512F
   22615              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22616              :    && (GET_MODE_NUNITS (V4DImode)
   22617              :        < GET_MODE_PRECISION (SImode))
   22618              :    && ix86_pre_reload_split ()) && 
   22619              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22620              : (TARGET_AVX512VL)))
   22621              :         return -1;
   22622              :       return 3708; /* *avx512vl_ucmpv4di3_zero_extendsi_2 */
   22623              : 
   22624              :     case 86:
   22625              :       if (!(
   22626              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22627              : (TARGET_AVX512F
   22628              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   22629              :    && (GET_MODE_NUNITS (V2DImode)
   22630              :        < GET_MODE_PRECISION (SImode))
   22631              :    && ix86_pre_reload_split ()) && 
   22632              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22633              : (TARGET_AVX512VL)))
   22634              :         return -1;
   22635              :       return 3709; /* *avx512vl_ucmpv2di3_zero_extendsi_2 */
   22636              : 
   22637              :     case 87:
   22638              :       if (!
   22639              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22640              : (TARGET_AVX512BW
   22641              :    && ix86_pre_reload_split ()
   22642              :    && (GET_MODE_NUNITS (V64QImode)
   22643              :       < GET_MODE_PRECISION (DImode))
   22644              :    && ix86_pre_reload_split ()))
   22645              :         return -1;
   22646              :       return 3616; /* *avx512bw_ucmpv64qi3_zero_extenddi_2 */
   22647              : 
   22648              :     case 88:
   22649              :       if (!(
   22650              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22651              : (TARGET_AVX512BW
   22652              :    && ix86_pre_reload_split ()
   22653              :    && (GET_MODE_NUNITS (V16QImode)
   22654              :       < GET_MODE_PRECISION (DImode))
   22655              :    && ix86_pre_reload_split ()) && 
   22656              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22657              : (TARGET_AVX512VL)))
   22658              :         return -1;
   22659              :       return 3619; /* *avx512vl_ucmpv16qi3_zero_extenddi_2 */
   22660              : 
   22661              :     case 89:
   22662              :       if (!(
   22663              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22664              : (TARGET_AVX512BW
   22665              :    && ix86_pre_reload_split ()
   22666              :    && (GET_MODE_NUNITS (V16HImode)
   22667              :       < GET_MODE_PRECISION (DImode))
   22668              :    && ix86_pre_reload_split ()) && 
   22669              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22670              : (TARGET_AVX512VL)))
   22671              :         return -1;
   22672              :       return 3628; /* *avx512vl_ucmpv16hi3_zero_extenddi_2 */
   22673              : 
   22674              :     case 90:
   22675              :       if (!
   22676              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22677              : (TARGET_AVX512F
   22678              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22679              :    && (GET_MODE_NUNITS (V16SImode)
   22680              :        < GET_MODE_PRECISION (DImode))
   22681              :    && ix86_pre_reload_split ()))
   22682              :         return -1;
   22683              :       return 3710; /* *avx512f_ucmpv16si3_zero_extenddi_2 */
   22684              : 
   22685              :     case 91:
   22686              :       if (!(
   22687              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22688              : (TARGET_AVX512BW
   22689              :    && ix86_pre_reload_split ()
   22690              :    && (GET_MODE_NUNITS (V32QImode)
   22691              :       < GET_MODE_PRECISION (DImode))
   22692              :    && ix86_pre_reload_split ()) && 
   22693              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22694              : (TARGET_AVX512VL)))
   22695              :         return -1;
   22696              :       return 3622; /* *avx512vl_ucmpv32qi3_zero_extenddi_2 */
   22697              : 
   22698              :     case 92:
   22699              :       if (!
   22700              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22701              : (TARGET_AVX512BW
   22702              :    && ix86_pre_reload_split ()
   22703              :    && (GET_MODE_NUNITS (V32HImode)
   22704              :       < GET_MODE_PRECISION (DImode))
   22705              :    && ix86_pre_reload_split ()))
   22706              :         return -1;
   22707              :       return 3625; /* *avx512bw_ucmpv32hi3_zero_extenddi_2 */
   22708              : 
   22709              :     case 93:
   22710              :       if (!(
   22711              : #line 5036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22712              : (TARGET_AVX512BW
   22713              :    && ix86_pre_reload_split ()
   22714              :    && (GET_MODE_NUNITS (V8HImode)
   22715              :       < GET_MODE_PRECISION (DImode))
   22716              :    && ix86_pre_reload_split ()) && 
   22717              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22718              : (TARGET_AVX512VL)))
   22719              :         return -1;
   22720              :       return 3631; /* *avx512vl_ucmpv8hi3_zero_extenddi_2 */
   22721              : 
   22722              :     case 94:
   22723              :       if (!(
   22724              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22725              : (TARGET_AVX512F
   22726              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22727              :    && (GET_MODE_NUNITS (V8SImode)
   22728              :        < GET_MODE_PRECISION (DImode))
   22729              :    && ix86_pre_reload_split ()) && 
   22730              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22731              : (TARGET_AVX512VL)))
   22732              :         return -1;
   22733              :       return 3711; /* *avx512vl_ucmpv8si3_zero_extenddi_2 */
   22734              : 
   22735              :     case 95:
   22736              :       if (!(
   22737              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22738              : (TARGET_AVX512F
   22739              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22740              :    && (GET_MODE_NUNITS (V4SImode)
   22741              :        < GET_MODE_PRECISION (DImode))
   22742              :    && ix86_pre_reload_split ()) && 
   22743              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22744              : (TARGET_AVX512VL)))
   22745              :         return -1;
   22746              :       return 3712; /* *avx512vl_ucmpv4si3_zero_extenddi_2 */
   22747              : 
   22748              :     case 96:
   22749              :       if (!
   22750              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22751              : (TARGET_AVX512F
   22752              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22753              :    && (GET_MODE_NUNITS (V8DImode)
   22754              :        < GET_MODE_PRECISION (DImode))
   22755              :    && ix86_pre_reload_split ()))
   22756              :         return -1;
   22757              :       return 3713; /* *avx512f_ucmpv8di3_zero_extenddi_2 */
   22758              : 
   22759              :     case 97:
   22760              :       if (!(
   22761              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22762              : (TARGET_AVX512F
   22763              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22764              :    && (GET_MODE_NUNITS (V4DImode)
   22765              :        < GET_MODE_PRECISION (DImode))
   22766              :    && ix86_pre_reload_split ()) && 
   22767              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22768              : (TARGET_AVX512VL)))
   22769              :         return -1;
   22770              :       return 3714; /* *avx512vl_ucmpv4di3_zero_extenddi_2 */
   22771              : 
   22772              :     case 98:
   22773              :       if (!(
   22774              : #line 5128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22775              : (TARGET_AVX512F
   22776              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   22777              :    && (GET_MODE_NUNITS (V2DImode)
   22778              :        < GET_MODE_PRECISION (DImode))
   22779              :    && ix86_pre_reload_split ()) && 
   22780              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22781              : (TARGET_AVX512VL)))
   22782              :         return -1;
   22783              :       return 3715; /* *avx512vl_ucmpv2di3_zero_extenddi_2 */
   22784              : 
   22785              :     default:
   22786              :       return -1;
   22787              :     }
   22788              : }
   22789              : 
   22790              :  int
   22791              : recog_411 (rtx x1 ATTRIBUTE_UNUSED,
   22792              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22793              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22794              : {
   22795              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22796              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22797              :   rtx x10, x11;
   22798              :   int res ATTRIBUTE_UNUSED;
   22799              :   x2 = XVECEXP (x1, 0, 0);
   22800              :   x3 = XEXP (x2, 1);
   22801              :   x4 = XEXP (x3, 0);
   22802              :   switch (GET_CODE (x4))
   22803              :     {
   22804              :     case REG:
   22805              :     case SUBREG:
   22806              :     case MEM:
   22807              :       operands[1] = x4;
   22808              :       res = recog_409 (x1, insn, pnum_clobbers);
   22809              :       if (res >= 0)
   22810              :         return res;
   22811              :       if (GET_CODE (x4) != SUBREG
   22812              :           || maybe_ne (SUBREG_BYTE (x4), 0))
   22813              :         return -1;
   22814              :       x5 = XEXP (x4, 0);
   22815              :       switch (GET_CODE (x5))
   22816              :         {
   22817              :         case ASHIFTRT:
   22818              :         case LSHIFTRT:
   22819              :         case SIGN_EXTRACT:
   22820              :         case ZERO_EXTRACT:
   22821              :           operands[3] = x5;
   22822              :           x6 = XVECEXP (x1, 0, 1);
   22823              :           if (pattern237 (x6, 
   22824              : E_CCmode, 
   22825              : 17) != 0
   22826              :               || GET_MODE (x3) != E_QImode
   22827              :               || GET_MODE (x4) != E_QImode)
   22828              :             return -1;
   22829              :           x7 = XEXP (x5, 0);
   22830              :           operands[2] = x7;
   22831              :           switch (pattern1534 (x2))
   22832              :             {
   22833              :             case 0:
   22834              :               if (
   22835              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22836              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22837              :                 return 759; /* *andqi_exthi_1_slp */
   22838              :               break;
   22839              : 
   22840              :             case 1:
   22841              :               if (
   22842              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22843              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22844              :                 return 762; /* *andqi_extsi_1_slp */
   22845              :               break;
   22846              : 
   22847              :             case 2:
   22848              :               if ((
   22849              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22850              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   22851              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22852              : (TARGET_64BIT)))
   22853              :                 return 765; /* *andqi_extdi_1_slp */
   22854              :               break;
   22855              : 
   22856              :             case 3:
   22857              :               return 783; /* *andqi_exthi_0 */
   22858              : 
   22859              :             case 4:
   22860              :               return 786; /* *andqi_extsi_0 */
   22861              : 
   22862              :             case 5:
   22863              :               if (
   22864              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22865              : (TARGET_64BIT))
   22866              :                 return 789; /* *andqi_extdi_0 */
   22867              :               break;
   22868              : 
   22869              :             default:
   22870              :               break;
   22871              :             }
   22872              :           x8 = XEXP (x3, 1);
   22873              :           if (GET_CODE (x8) != SUBREG)
   22874              :             return -1;
   22875              :           switch (pattern1535 (x2))
   22876              :             {
   22877              :             case 0:
   22878              :               if (!
   22879              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22880              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22881              :                 return -1;
   22882              :               return 768; /* *andqi_exthi_2_slp */
   22883              : 
   22884              :             case 1:
   22885              :               if (!
   22886              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22887              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   22888              :                 return -1;
   22889              :               return 771; /* *andqi_extsi_2_slp */
   22890              : 
   22891              :             case 2:
   22892              :               if (!(
   22893              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22894              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   22895              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22896              : (TARGET_64BIT)))
   22897              :                 return -1;
   22898              :               return 774; /* *andqi_extdi_2_slp */
   22899              : 
   22900              :             case 3:
   22901              :               return 792; /* *andqi_ext2hi_0 */
   22902              : 
   22903              :             case 4:
   22904              :               return 795; /* *andqi_ext2si_0 */
   22905              : 
   22906              :             case 5:
   22907              :               if (!
   22908              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22909              : (TARGET_64BIT))
   22910              :                 return -1;
   22911              :               return 798; /* *andqi_ext2di_0 */
   22912              : 
   22913              :             default:
   22914              :               return -1;
   22915              :             }
   22916              : 
   22917              :         case ROTATE:
   22918              :           if (GET_MODE (x5) != E_SImode)
   22919              :             return -1;
   22920              :           x7 = XEXP (x5, 0);
   22921              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
   22922              :             return -1;
   22923              :           x6 = XVECEXP (x1, 0, 1);
   22924              :           if (pattern377 (x6) != 0)
   22925              :             return -1;
   22926              :           switch (pattern1442 (x2))
   22927              :             {
   22928              :             case 0:
   22929              :               if (!
   22930              : #line 19902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22931              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   22932              :                 return -1;
   22933              :               return 1441; /* *btrqi_1 */
   22934              : 
   22935              :             case 1:
   22936              :               if (!
   22937              : #line 19902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22938              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   22939              :                 return -1;
   22940              :               return 1442; /* *btrhi_1 */
   22941              : 
   22942              :             default:
   22943              :               return -1;
   22944              :             }
   22945              : 
   22946              :         case CTZ:
   22947              :           switch (pattern833 (x1, pnum_clobbers))
   22948              :             {
   22949              :             case 0:
   22950              :               if (!
   22951              : #line 22133 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22952              : (TARGET_BMI && TARGET_64BIT))
   22953              :                 return -1;
   22954              :               return 1548; /* *ctzsi2_zext */
   22955              : 
   22956              :             case 1:
   22957              :               if (!
   22958              : #line 22164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22959              : (TARGET_BMI && TARGET_64BIT))
   22960              :                 return -1;
   22961              :               *pnum_clobbers = 1;
   22962              :               return 1549; /* *ctzsi2_zext_falsedep */
   22963              : 
   22964              :             default:
   22965              :               return -1;
   22966              :             }
   22967              : 
   22968              :         case CLZ:
   22969              :           if (GET_MODE (x5) != E_SImode)
   22970              :             return -1;
   22971              :           x8 = XEXP (x3, 1);
   22972              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   22973              :             return -1;
   22974              :           x9 = XEXP (x2, 0);
   22975              :           operands[0] = x9;
   22976              :           if (!register_operand (operands[0], E_DImode)
   22977              :               || GET_MODE (x3) != E_DImode
   22978              :               || GET_MODE (x4) != E_DImode)
   22979              :             return -1;
   22980              :           x7 = XEXP (x5, 0);
   22981              :           operands[1] = x7;
   22982              :           x6 = XVECEXP (x1, 0, 1);
   22983              :           switch (pattern832 (x6, pnum_clobbers))
   22984              :             {
   22985              :             case 0:
   22986              :               if (!nonimmediate_operand (operands[1], E_SImode)
   22987              :                   || !
   22988              : #line 22582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22989              : (TARGET_LZCNT && TARGET_64BIT))
   22990              :                 return -1;
   22991              :               return 1572; /* *clzsi2_lzcnt_zext */
   22992              : 
   22993              :             case 1:
   22994              :               switch (GET_MODE (operands[1]))
   22995              :                 {
   22996              :                 case E_SImode:
   22997              :                   if (!nonimmediate_operand (operands[1], E_SImode)
   22998              :                       || !
   22999              : #line 22610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23000              : (TARGET_LZCNT))
   23001              :                     return -1;
   23002              :                   *pnum_clobbers = 1;
   23003              :                   return 1573; /* *clzsi2_lzcnt_zext_falsedep */
   23004              : 
   23005              :                 case E_DImode:
   23006              :                   if (!nonimmediate_operand (operands[1], E_DImode)
   23007              :                       || !(
   23008              : #line 22610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23009              : (TARGET_LZCNT) && 
   23010              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23011              : (TARGET_64BIT)))
   23012              :                     return -1;
   23013              :                   *pnum_clobbers = 1;
   23014              :                   return 1574; /* *clzsi2_lzcnt_zext_falsedep */
   23015              : 
   23016              :                 default:
   23017              :                   return -1;
   23018              :                 }
   23019              : 
   23020              :             default:
   23021              :               return -1;
   23022              :             }
   23023              : 
   23024              :         case POPCOUNT:
   23025              :           switch (pattern833 (x1, pnum_clobbers))
   23026              :             {
   23027              :             case 0:
   23028              :               if (!
   23029              : #line 23409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23030              : (TARGET_POPCNT && TARGET_64BIT))
   23031              :                 return -1;
   23032              :               return 1664; /* *popcountsi2_zext */
   23033              : 
   23034              :             case 1:
   23035              :               if (!
   23036              : #line 23443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23037              : (TARGET_POPCNT && TARGET_64BIT))
   23038              :                 return -1;
   23039              :               *pnum_clobbers = 1;
   23040              :               return 1665; /* *popcountsi2_zext_falsedep */
   23041              : 
   23042              :             default:
   23043              :               return -1;
   23044              :             }
   23045              : 
   23046              :         default:
   23047              :           return -1;
   23048              :         }
   23049              : 
   23050              :     case NOT:
   23051              :       x9 = XEXP (x2, 0);
   23052              :       operands[0] = x9;
   23053              :       x5 = XEXP (x4, 0);
   23054              :       switch (GET_CODE (x5))
   23055              :         {
   23056              :         case REG:
   23057              :         case SUBREG:
   23058              :           operands[1] = x5;
   23059              :           res = recog_410 (x1, insn, pnum_clobbers);
   23060              :           if (res >= 0)
   23061              :             return res;
   23062              :           if (GET_CODE (x5) != SUBREG
   23063              :               || maybe_ne (SUBREG_BYTE (x5), 0)
   23064              :               || GET_MODE (x5) != E_QImode)
   23065              :             return -1;
   23066              :           x7 = XEXP (x5, 0);
   23067              :           if (GET_CODE (x7) != LSHIFTRT)
   23068              :             return -1;
   23069              :           x8 = XEXP (x3, 1);
   23070              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   23071              :             return -1;
   23072              :           x6 = XVECEXP (x1, 0, 1);
   23073              :           if (pattern237 (x6, 
   23074              : E_CCmode, 
   23075              : 17) != 0)
   23076              :             return -1;
   23077              :           switch (pattern1538 (x3))
   23078              :             {
   23079              :             case 0:
   23080              :               if (!
   23081              : #line 20342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23082              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   23083              :                 return -1;
   23084              :               return 1466; /* *btsi_setncqi */
   23085              : 
   23086              :             case 1:
   23087              :               if (!(
   23088              : #line 20342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23089              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   23090              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23091              : (TARGET_64BIT)))
   23092              :                 return -1;
   23093              :               return 1467; /* *btdi_setncqi */
   23094              : 
   23095              :             default:
   23096              :               return -1;
   23097              :             }
   23098              : 
   23099              :         case LSHIFTRT:
   23100              :           x8 = XEXP (x3, 1);
   23101              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   23102              :             return -1;
   23103              :           x6 = XVECEXP (x1, 0, 1);
   23104              :           if (pattern237 (x6, 
   23105              : E_CCmode, 
   23106              : 17) != 0)
   23107              :             return -1;
   23108              :           switch (pattern1257 (x3))
   23109              :             {
   23110              :             case 0:
   23111              :               if (!
   23112              : #line 20360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23113              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   23114              :                 return -1;
   23115              :               return 1468; /* *btsi_setncsi */
   23116              : 
   23117              :             case 1:
   23118              :               if (!(
   23119              : #line 20360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23120              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   23121              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23122              : (TARGET_64BIT)))
   23123              :                 return -1;
   23124              :               return 1469; /* *btdi_setncdi */
   23125              : 
   23126              :             default:
   23127              :               return -1;
   23128              :             }
   23129              : 
   23130              :         case ASHIFT:
   23131              :           x7 = XEXP (x5, 0);
   23132              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   23133              :             return -1;
   23134              :           x6 = XVECEXP (x1, 0, 1);
   23135              :           if (pattern237 (x6, 
   23136              : E_CCmode, 
   23137              : 17) != 0)
   23138              :             return -1;
   23139              :           switch (pattern1259 (x3))
   23140              :             {
   23141              :             case 0:
   23142              :               if (!
   23143              : #line 23110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23144              : (TARGET_BMI2))
   23145              :                 return -1;
   23146              :               return 1628; /* *bmi2_bzhi_si3_3 */
   23147              : 
   23148              :             case 1:
   23149              :               if (!(
   23150              : #line 23110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23151              : (TARGET_BMI2) && 
   23152              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23153              : (TARGET_64BIT)))
   23154              :                 return -1;
   23155              :               return 1629; /* *bmi2_bzhi_di3_3 */
   23156              : 
   23157              :             default:
   23158              :               return -1;
   23159              :             }
   23160              : 
   23161              :         default:
   23162              :           return -1;
   23163              :         }
   23164              : 
   23165              :     case ROTATE:
   23166              :       switch (pattern376 (x1, 
   23167              : -2))
   23168              :         {
   23169              :         case 0:
   23170              :           x10 = XEXP (x4, 1);
   23171              :           operands[2] = x10;
   23172              :           if (register_operand (operands[2], E_QImode))
   23173              :             {
   23174              :               switch (pattern951 (x3))
   23175              :                 {
   23176              :                 case 0:
   23177              :                   if (
   23178              : #line 19832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23179              : (TARGET_USE_BT))
   23180              :                     return 1435; /* *btrsi */
   23181              :                   break;
   23182              : 
   23183              :                 case 1:
   23184              :                   if ((
   23185              : #line 19832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23186              : (TARGET_USE_BT) && 
   23187              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23188              : (TARGET_64BIT)))
   23189              :                     return 1436; /* *btrdi */
   23190              :                   break;
   23191              : 
   23192              :                 default:
   23193              :                   break;
   23194              :                 }
   23195              :             }
   23196              :           if (GET_CODE (x10) != SUBREG)
   23197              :             return -1;
   23198              :           switch (pattern1339 (x3))
   23199              :             {
   23200              :             case 0:
   23201              :               if (!
   23202              : #line 19852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23203              : (TARGET_USE_BT
   23204              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   23205              :       == GET_MODE_BITSIZE (SImode)-1
   23206              :    && ix86_pre_reload_split ()))
   23207              :                 return -1;
   23208              :               return 1437; /* *btrsi_mask */
   23209              : 
   23210              :             case 1:
   23211              :               if (!(
   23212              : #line 19852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23213              : (TARGET_USE_BT
   23214              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   23215              :       == GET_MODE_BITSIZE (DImode)-1
   23216              :    && ix86_pre_reload_split ()) && 
   23217              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23218              : (TARGET_64BIT)))
   23219              :                 return -1;
   23220              :               return 1438; /* *btrdi_mask */
   23221              : 
   23222              :             default:
   23223              :               return -1;
   23224              :             }
   23225              : 
   23226              :         case 1:
   23227              :           if (!
   23228              : #line 19880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23229              : (TARGET_USE_BT
   23230              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   23231              :       == GET_MODE_BITSIZE (SImode)-1
   23232              :    && ix86_pre_reload_split ()))
   23233              :             return -1;
   23234              :           return 1439; /* *btrsi_mask_1 */
   23235              : 
   23236              :         case 2:
   23237              :           if (!(
   23238              : #line 19880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23239              : (TARGET_USE_BT
   23240              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   23241              :       == GET_MODE_BITSIZE (DImode)-1
   23242              :    && ix86_pre_reload_split ()) && 
   23243              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23244              : (TARGET_64BIT)))
   23245              :             return -1;
   23246              :           return 1440; /* *btrdi_mask_1 */
   23247              : 
   23248              :         default:
   23249              :           return -1;
   23250              :         }
   23251              : 
   23252              :     case NEG:
   23253              :       x6 = XVECEXP (x1, 0, 1);
   23254              :       if (pattern377 (x6) != 0)
   23255              :         return -1;
   23256              :       switch (pattern955 (x2))
   23257              :         {
   23258              :         case 0:
   23259              :           if (!
   23260              : #line 22787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23261              : (TARGET_BMI))
   23262              :             return -1;
   23263              :           return 1602; /* *bmi_blsi_si */
   23264              : 
   23265              :         case 1:
   23266              :           if (!(
   23267              : #line 22787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23268              : (TARGET_BMI) && 
   23269              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23270              : (TARGET_64BIT)))
   23271              :             return -1;
   23272              :           return 1603; /* *bmi_blsi_di */
   23273              : 
   23274              :         default:
   23275              :           return -1;
   23276              :         }
   23277              : 
   23278              :     case PLUS:
   23279              :       x10 = XEXP (x4, 1);
   23280              :       if (GET_CODE (x10) != CONST_INT
   23281              :           || pattern346 (x1) != 0)
   23282              :         return -1;
   23283              :       x5 = XEXP (x4, 0);
   23284              :       switch (GET_CODE (x5))
   23285              :         {
   23286              :         case REG:
   23287              :         case SUBREG:
   23288              :         case MEM:
   23289              :           operands[1] = x5;
   23290              :           switch (XWINT (x10, 0))
   23291              :             {
   23292              :             case -1L:
   23293              :               switch (pattern1338 (x3))
   23294              :                 {
   23295              :                 case 0:
   23296              :                   if (!
   23297              : #line 22932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23298              : (TARGET_BMI))
   23299              :                     return -1;
   23300              :                   return 1614; /* *bmi_blsr_si */
   23301              : 
   23302              :                 case 1:
   23303              :                   if (!(
   23304              : #line 22932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23305              : (TARGET_BMI) && 
   23306              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23307              : (TARGET_64BIT)))
   23308              :                     return -1;
   23309              :                   return 1615; /* *bmi_blsr_di */
   23310              : 
   23311              :                 case 2:
   23312              :                   if (!
   23313              : #line 23303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23314              : (TARGET_TBM))
   23315              :                     return -1;
   23316              :                   return 1654; /* *tbm_tzmsk_si */
   23317              : 
   23318              :                 case 3:
   23319              :                   if (!(
   23320              : #line 23303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23321              : (TARGET_TBM) && 
   23322              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23323              : (TARGET_64BIT)))
   23324              :                     return -1;
   23325              :                   return 1655; /* *tbm_tzmsk_di */
   23326              : 
   23327              :                 default:
   23328              :                   return -1;
   23329              :                 }
   23330              : 
   23331              :             case 1L:
   23332              :               switch (pattern1338 (x3))
   23333              :                 {
   23334              :                 case 0:
   23335              :                   if (!
   23336              : #line 23194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23337              : (TARGET_TBM))
   23338              :                     return -1;
   23339              :                   return 1638; /* *tbm_blcfill_si */
   23340              : 
   23341              :                 case 1:
   23342              :                   if (!(
   23343              : #line 23194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23344              : (TARGET_TBM) && 
   23345              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23346              : (TARGET_64BIT)))
   23347              :                     return -1;
   23348              :                   return 1639; /* *tbm_blcfill_di */
   23349              : 
   23350              :                 case 2:
   23351              :                   if (!
   23352              : #line 23222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23353              : (TARGET_TBM))
   23354              :                     return -1;
   23355              :                   return 1642; /* *tbm_blcic_si */
   23356              : 
   23357              :                 case 3:
   23358              :                   if (!(
   23359              : #line 23222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23360              : (TARGET_TBM) && 
   23361              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23362              : (TARGET_64BIT)))
   23363              :                     return -1;
   23364              :                   return 1643; /* *tbm_blcic_di */
   23365              : 
   23366              :                 default:
   23367              :                   return -1;
   23368              :                 }
   23369              : 
   23370              :             default:
   23371              :               return -1;
   23372              :             }
   23373              : 
   23374              :         case ASHIFT:
   23375              :           x7 = XEXP (x5, 0);
   23376              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   23377              :               || XWINT (x10, 0) != -1L)
   23378              :             return -1;
   23379              :           switch (pattern1259 (x3))
   23380              :             {
   23381              :             case 0:
   23382              :               if (!
   23383              : #line 23096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23384              : (TARGET_BMI2))
   23385              :                 return -1;
   23386              :               return 1626; /* *bmi2_bzhi_si3_2 */
   23387              : 
   23388              :             case 1:
   23389              :               if (!(
   23390              : #line 23096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23391              : (TARGET_BMI2) && 
   23392              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23393              : (TARGET_64BIT)))
   23394              :                 return -1;
   23395              :               return 1627; /* *bmi2_bzhi_di3_2 */
   23396              : 
   23397              :             default:
   23398              :               return -1;
   23399              :             }
   23400              : 
   23401              :         default:
   23402              :           return -1;
   23403              :         }
   23404              : 
   23405              :     case ZERO_EXTEND:
   23406              :       if (GET_MODE (x4) != E_DImode)
   23407              :         return -1;
   23408              :       x5 = XEXP (x4, 0);
   23409              :       if (GET_CODE (x5) != PLUS
   23410              :           || pattern706 (x5) != 0
   23411              :           || pattern576 (x1) != 0)
   23412              :         return -1;
   23413              :       x7 = XEXP (x5, 0);
   23414              :       x11 = XEXP (x7, 1);
   23415              :       operands[2] = x11;
   23416              :       if (!register_operand (operands[2], E_QImode))
   23417              :         return -1;
   23418              :       x8 = XEXP (x3, 1);
   23419              :       operands[1] = x8;
   23420              :       if (!nonimmediate_operand (operands[1], E_DImode)
   23421              :           || !
   23422              : #line 23142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23423              : (TARGET_64BIT && TARGET_BMI2))
   23424              :         return -1;
   23425              :       return 1631; /* *bmi2_bzhi_zero_extendsidi_5 */
   23426              : 
   23427              :     default:
   23428              :       return -1;
   23429              :     }
   23430              : }
   23431              : 
   23432              :  int
   23433              : recog_428 (rtx x1 ATTRIBUTE_UNUSED,
   23434              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23435              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23436              : {
   23437              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23438              :   rtx x2, x3, x4, x5;
   23439              :   int res ATTRIBUTE_UNUSED;
   23440              :   x2 = XVECEXP (x1, 0, 0);
   23441              :   x3 = XEXP (x2, 1);
   23442              :   switch (GET_CODE (x3))
   23443              :     {
   23444              :     case CONST_INT:
   23445              :     case CONST_WIDE_INT:
   23446              :     case CONST_POLY_INT:
   23447              :     case CONST_FIXED:
   23448              :     case CONST_DOUBLE:
   23449              :     case CONST_VECTOR:
   23450              :     case CONST:
   23451              :     case REG:
   23452              :     case SUBREG:
   23453              :     case MEM:
   23454              :     case LABEL_REF:
   23455              :     case SYMBOL_REF:
   23456              :     case HIGH:
   23457              :       res = recog_365 (x1, insn, pnum_clobbers);
   23458              :       if (res >= 0)
   23459              :         return res;
   23460              :       break;
   23461              : 
   23462              :     case ASHIFTRT:
   23463              :     case LSHIFTRT:
   23464              :     case SIGN_EXTRACT:
   23465              :     case ZERO_EXTRACT:
   23466              :       res = recog_371 (x1, insn, pnum_clobbers);
   23467              :       if (res >= 0)
   23468              :         return res;
   23469              :       break;
   23470              : 
   23471              :     case UNSPEC:
   23472              :       res = recog_377 (x1, insn, pnum_clobbers);
   23473              :       if (res >= 0)
   23474              :         return res;
   23475              :       break;
   23476              : 
   23477              :     case ZERO_EXTEND:
   23478              :       res = recog_381 (x1, insn, pnum_clobbers);
   23479              :       if (res >= 0)
   23480              :         return res;
   23481              :       break;
   23482              : 
   23483              :     case UNSIGNED_FIX:
   23484              :       res = recog_382 (x1, insn, pnum_clobbers);
   23485              :       if (res >= 0)
   23486              :         return res;
   23487              :       break;
   23488              : 
   23489              :     case FIX:
   23490              :       res = recog_383 (x1, insn, pnum_clobbers);
   23491              :       if (res >= 0)
   23492              :         return res;
   23493              :       break;
   23494              : 
   23495              :     case FLOAT:
   23496              :       res = recog_384 (x1, insn, pnum_clobbers);
   23497              :       if (res >= 0)
   23498              :         return res;
   23499              :       break;
   23500              : 
   23501              :     case UNSIGNED_FLOAT:
   23502              :       res = recog_385 (x1, insn, pnum_clobbers);
   23503              :       if (res >= 0)
   23504              :         return res;
   23505              :       break;
   23506              : 
   23507              :     case PLUS:
   23508              :       res = recog_387 (x1, insn, pnum_clobbers);
   23509              :       if (res >= 0)
   23510              :         return res;
   23511              :       break;
   23512              : 
   23513              :     case COMPARE:
   23514              :       res = recog_399 (x1, insn, pnum_clobbers);
   23515              :       if (res >= 0)
   23516              :         return res;
   23517              :       break;
   23518              : 
   23519              :     case NE:
   23520              :     case EQ:
   23521              :     case GE:
   23522              :     case GT:
   23523              :     case LE:
   23524              :     case LT:
   23525              :     case LTGT:
   23526              :     case GEU:
   23527              :     case GTU:
   23528              :     case LEU:
   23529              :     case LTU:
   23530              :     case UNORDERED:
   23531              :     case ORDERED:
   23532              :     case UNEQ:
   23533              :     case UNGE:
   23534              :     case UNGT:
   23535              :     case UNLE:
   23536              :     case UNLT:
   23537              :       switch (GET_CODE (x3))
   23538              :         {
   23539              :         case NE:
   23540              :         case EQ:
   23541              :           if (GET_CODE (x3) == EQ)
   23542              :             {
   23543              :               res = recog_400 (x1, insn, pnum_clobbers);
   23544              :               if (res >= 0)
   23545              :                 return res;
   23546              :             }
   23547              :           operands[1] = x3;
   23548              :           switch (pattern564 (x1))
   23549              :             {
   23550              :             case 0:
   23551              :               if ((
   23552              : #line 2420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23553              : (TARGET_AVX512BW) && 
   23554              : #line 1588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23555              : (TARGET_AVX512DQ)))
   23556              :                 return 2695; /* *kortest_cmpqi_setcc */
   23557              :               break;
   23558              : 
   23559              :             case 1:
   23560              :               if (
   23561              : #line 2420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23562              : (TARGET_AVX512BW))
   23563              :                 return 2696; /* *kortest_cmphi_setcc */
   23564              :               break;
   23565              : 
   23566              :             case 2:
   23567              :               if (
   23568              : #line 2420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23569              : (TARGET_AVX512BW))
   23570              :                 return 2697; /* *kortest_cmpsi_setcc */
   23571              :               break;
   23572              : 
   23573              :             case 3:
   23574              :               if ((
   23575              : #line 2420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23576              : (TARGET_AVX512BW) && 
   23577              : #line 1589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23578              : (TARGET_AVX512BW && TARGET_64BIT)))
   23579              :                 return 2698; /* *kortest_cmpdi_setcc */
   23580              :               break;
   23581              : 
   23582              :             default:
   23583              :               break;
   23584              :             }
   23585              :           break;
   23586              : 
   23587              :         case GT:
   23588              :           if (pattern372 (x1) == 0
   23589              :               && 
   23590              : #line 1238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23591              : (TARGET_3DNOW))
   23592              :             return 2124; /* mmx_gtv2sf3 */
   23593              :           break;
   23594              : 
   23595              :         case GE:
   23596              :           if (pattern372 (x1) == 0
   23597              :               && 
   23598              : #line 1249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23599              : (TARGET_3DNOW))
   23600              :             return 2125; /* mmx_gev2sf3 */
   23601              :           break;
   23602              : 
   23603              :         default:
   23604              :           break;
   23605              :         }
   23606              :       operands[1] = x3;
   23607              :       switch (pattern373 (x1))
   23608              :         {
   23609              :         case 0:
   23610              :           if (
   23611              : #line 20496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23612              : (!TARGET_PARTIAL_REG_STALL
   23613              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
   23614              :             return 1478; /* *setcc_hi_1_and */
   23615              :           break;
   23616              : 
   23617              :         case 1:
   23618              :           if (
   23619              : #line 20496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23620              : (!TARGET_PARTIAL_REG_STALL
   23621              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
   23622              :             return 1479; /* *setcc_si_1_and */
   23623              :           break;
   23624              : 
   23625              :         default:
   23626              :           break;
   23627              :         }
   23628              :       break;
   23629              : 
   23630              :     case MINUS:
   23631              :       res = recog_403 (x1, insn, pnum_clobbers);
   23632              :       if (res >= 0)
   23633              :         return res;
   23634              :       break;
   23635              : 
   23636              :     case IF_THEN_ELSE:
   23637              :       res = recog_405 (x1, insn, pnum_clobbers);
   23638              :       if (res >= 0)
   23639              :         return res;
   23640              :       break;
   23641              : 
   23642              :     case MULT:
   23643              :       res = recog_406 (x1, insn, pnum_clobbers);
   23644              :       if (res >= 0)
   23645              :         return res;
   23646              :       break;
   23647              : 
   23648              :     case DIV:
   23649              :       if (pnum_clobbers != NULL)
   23650              :         {
   23651              :           switch (pattern225 (x1))
   23652              :             {
   23653              :             case 0:
   23654              :               switch (GET_MODE (operands[0]))
   23655              :                 {
   23656              :                 case E_HImode:
   23657              :                   if (pattern393 (x1, 
   23658              : E_HImode) == 0
   23659              :                       && 
   23660              : #line 1222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23661              : (TARGET_HIMODE_MATH))
   23662              :                     {
   23663              :                       *pnum_clobbers = 1;
   23664              :                       return 675; /* *divmodhi4 */
   23665              :                     }
   23666              :                   break;
   23667              : 
   23668              :                 case E_SImode:
   23669              :                   if (pattern393 (x1, 
   23670              : E_SImode) == 0)
   23671              :                     {
   23672              :                       *pnum_clobbers = 1;
   23673              :                       return 676; /* *divmodsi4 */
   23674              :                     }
   23675              :                   break;
   23676              : 
   23677              :                 case E_DImode:
   23678              :                   if (pattern393 (x1, 
   23679              : E_DImode) == 0
   23680              :                       && 
   23681              : #line 1223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23682              : (TARGET_64BIT))
   23683              :                     {
   23684              :                       *pnum_clobbers = 1;
   23685              :                       return 677; /* *divmoddi4 */
   23686              :                     }
   23687              :                   break;
   23688              : 
   23689              :                 default:
   23690              :                   break;
   23691              :                 }
   23692              :               break;
   23693              : 
   23694              :             case 1:
   23695              :               if (const_int_operand (operands[2], E_SImode)
   23696              :                   && pattern1503 (x1) == 0
   23697              :                   && 
   23698              : #line 12683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23699              : (!optimize_function_for_size_p (cfun)))
   23700              :                 {
   23701              :                   *pnum_clobbers = 1;
   23702              :                   return 705; /* *divmodsi4_const */
   23703              :                 }
   23704              :               break;
   23705              : 
   23706              :             default:
   23707              :               break;
   23708              :             }
   23709              :         }
   23710              :       break;
   23711              : 
   23712              :     case UDIV:
   23713              :       if (pnum_clobbers != NULL)
   23714              :         {
   23715              :           switch (pattern226 (x1))
   23716              :             {
   23717              :             case 0:
   23718              :               switch (GET_MODE (operands[0]))
   23719              :                 {
   23720              :                 case E_HImode:
   23721              :                   if (pattern393 (x1, 
   23722              : E_HImode) == 0
   23723              :                       && 
   23724              : #line 1222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23725              : (TARGET_HIMODE_MATH))
   23726              :                     {
   23727              :                       *pnum_clobbers = 1;
   23728              :                       return 678; /* *udivmodhi4 */
   23729              :                     }
   23730              :                   break;
   23731              : 
   23732              :                 case E_SImode:
   23733              :                   if (pattern393 (x1, 
   23734              : E_SImode) == 0)
   23735              :                     {
   23736              :                       *pnum_clobbers = 1;
   23737              :                       return 679; /* *udivmodsi4 */
   23738              :                     }
   23739              :                   break;
   23740              : 
   23741              :                 case E_DImode:
   23742              :                   if (pattern393 (x1, 
   23743              : E_DImode) == 0
   23744              :                       && 
   23745              : #line 1223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23746              : (TARGET_64BIT))
   23747              :                     {
   23748              :                       *pnum_clobbers = 1;
   23749              :                       return 680; /* *udivmoddi4 */
   23750              :                     }
   23751              :                   break;
   23752              : 
   23753              :                 default:
   23754              :                   break;
   23755              :                 }
   23756              :               break;
   23757              : 
   23758              :             case 1:
   23759              :               switch (GET_MODE (operands[0]))
   23760              :                 {
   23761              :                 case E_SImode:
   23762              :                   if (pattern1504 (x1, 
   23763              : E_SImode) == 0
   23764              :                       && 
   23765              : #line 12436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23766              : (IN_RANGE (exact_log2 (UINTVAL (operands[3])), 1, 31)))
   23767              :                     {
   23768              :                       *pnum_clobbers = 1;
   23769              :                       return 681; /* *udivmodsi4_pow2 */
   23770              :                     }
   23771              :                   break;
   23772              : 
   23773              :                 case E_DImode:
   23774              :                   if (pattern1504 (x1, 
   23775              : E_DImode) == 0
   23776              :                       && (
   23777              : #line 12436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23778              : (IN_RANGE (exact_log2 (UINTVAL (operands[3])), 1, 31)) && 
   23779              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23780              : (TARGET_64BIT)))
   23781              :                     {
   23782              :                       *pnum_clobbers = 1;
   23783              :                       return 682; /* *udivmoddi4_pow2 */
   23784              :                     }
   23785              :                   break;
   23786              : 
   23787              :                 default:
   23788              :                   break;
   23789              :                 }
   23790              :               break;
   23791              : 
   23792              :             default:
   23793              :               break;
   23794              :             }
   23795              :         }
   23796              :       break;
   23797              : 
   23798              :     case IOR:
   23799              :       res = recog_408 (x1, insn, pnum_clobbers);
   23800              :       if (res >= 0)
   23801              :         return res;
   23802              :       break;
   23803              : 
   23804              :     case AND:
   23805              :       res = recog_411 (x1, insn, pnum_clobbers);
   23806              :       if (res >= 0)
   23807              :         return res;
   23808              :       break;
   23809              : 
   23810              :     case XOR:
   23811              :       res = recog_413 (x1, insn, pnum_clobbers);
   23812              :       if (res >= 0)
   23813              :         return res;
   23814              :       break;
   23815              : 
   23816              :     case NOT:
   23817              :       res = recog_414 (x1, insn, pnum_clobbers);
   23818              :       if (res >= 0)
   23819              :         return res;
   23820              :       break;
   23821              : 
   23822              :     case NEG:
   23823              :       res = recog_415 (x1, insn, pnum_clobbers);
   23824              :       if (res >= 0)
   23825              :         return res;
   23826              :       break;
   23827              : 
   23828              :     case ABS:
   23829              :       res = recog_416 (x1, insn, pnum_clobbers);
   23830              :       if (res >= 0)
   23831              :         return res;
   23832              :       break;
   23833              : 
   23834              :     case ASHIFT:
   23835              :       res = recog_417 (x1, insn, pnum_clobbers);
   23836              :       if (res >= 0)
   23837              :         return res;
   23838              :       break;
   23839              : 
   23840              :     case ROTATE:
   23841              :       switch (pattern212 (x1))
   23842              :         {
   23843              :         case 0:
   23844              :           x4 = XEXP (x3, 1);
   23845              :           if (GET_CODE (x4) == SUBREG)
   23846              :             {
   23847              :               switch (pattern1180 (x2))
   23848              :                 {
   23849              :                 case 0:
   23850              :                   if (
   23851              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23852              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   23853              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   23854              :       == GET_MODE_BITSIZE (QImode)-1
   23855              :    && ix86_pre_reload_split ()))
   23856              :                     return 1316; /* *rotlqi3_mask */
   23857              :                   break;
   23858              : 
   23859              :                 case 1:
   23860              :                   if (
   23861              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23862              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   23863              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   23864              :       == GET_MODE_BITSIZE (HImode)-1
   23865              :    && ix86_pre_reload_split ()))
   23866              :                     return 1318; /* *rotlhi3_mask */
   23867              :                   break;
   23868              : 
   23869              :                 case 2:
   23870              :                   if (
   23871              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23872              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   23873              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   23874              :       == GET_MODE_BITSIZE (SImode)-1
   23875              :    && ix86_pre_reload_split ()))
   23876              :                     return 1320; /* *rotlsi3_mask */
   23877              :                   break;
   23878              : 
   23879              :                 case 3:
   23880              :                   if ((
   23881              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23882              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   23883              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   23884              :       == GET_MODE_BITSIZE (DImode)-1
   23885              :    && ix86_pre_reload_split ()) && 
   23886              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23887              : (TARGET_64BIT)))
   23888              :                     return 1322; /* *rotldi3_mask */
   23889              :                   break;
   23890              : 
   23891              :                 case 4:
   23892              :                   if (
   23893              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23894              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   23895              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   23896              :    && ix86_pre_reload_split ()))
   23897              :                     return 1332; /* *rotlqi3_add */
   23898              :                   break;
   23899              : 
   23900              :                 case 5:
   23901              :                   if (
   23902              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23903              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   23904              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   23905              :    && ix86_pre_reload_split ()))
   23906              :                     return 1334; /* *rotlhi3_add */
   23907              :                   break;
   23908              : 
   23909              :                 case 6:
   23910              :                   if (
   23911              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23912              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   23913              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   23914              :    && ix86_pre_reload_split ()))
   23915              :                     return 1336; /* *rotlsi3_add */
   23916              :                   break;
   23917              : 
   23918              :                 case 7:
   23919              :                   if ((
   23920              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23921              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   23922              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   23923              :    && ix86_pre_reload_split ()) && 
   23924              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23925              : (TARGET_64BIT)))
   23926              :                     return 1338; /* *rotldi3_add */
   23927              :                   break;
   23928              : 
   23929              :                 case 8:
   23930              :                   if (
   23931              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23932              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   23933              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   23934              :    && ix86_pre_reload_split ()))
   23935              :                     return 1348; /* *rotlqi3_sub */
   23936              :                   break;
   23937              : 
   23938              :                 case 9:
   23939              :                   if (
   23940              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23941              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   23942              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   23943              :    && ix86_pre_reload_split ()))
   23944              :                     return 1350; /* *rotlhi3_sub */
   23945              :                   break;
   23946              : 
   23947              :                 case 10:
   23948              :                   if (
   23949              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23950              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   23951              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   23952              :    && ix86_pre_reload_split ()))
   23953              :                     return 1352; /* *rotlsi3_sub */
   23954              :                   break;
   23955              : 
   23956              :                 case 11:
   23957              :                   if ((
   23958              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23959              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   23960              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   23961              :    && ix86_pre_reload_split ()) && 
   23962              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23963              : (TARGET_64BIT)))
   23964              :                     return 1354; /* *rotldi3_sub */
   23965              :                   break;
   23966              : 
   23967              :                 default:
   23968              :                   break;
   23969              :                 }
   23970              :             }
   23971              :           operands[2] = x4;
   23972              :           switch (pattern1181 (x2))
   23973              :             {
   23974              :             case 0:
   23975              :               if (
   23976              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23977              : (ix86_binary_operator_ok (ROTATE, SImode, operands, TARGET_APX_NDD)
   23978              :    && true))
   23979              :                 return 1375; /* *rotlsi3_1 */
   23980              :               break;
   23981              : 
   23982              :             case 1:
   23983              :               if ((
   23984              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23985              : (ix86_binary_operator_ok (ROTATE, DImode, operands, TARGET_APX_NDD)
   23986              :    && true) && 
   23987              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23988              : (TARGET_64BIT)))
   23989              :                 return 1379; /* *rotldi3_1 */
   23990              :               break;
   23991              : 
   23992              :             case 2:
   23993              :               if (
   23994              : #line 19620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23995              : (ix86_binary_operator_ok (ROTATE, QImode, operands, TARGET_APX_NDD)
   23996              :    && true))
   23997              :                 return 1406; /* *rotlqi3_1 */
   23998              :               break;
   23999              : 
   24000              :             case 3:
   24001              :               if (
   24002              : #line 19620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24003              : (ix86_binary_operator_ok (ROTATE, HImode, operands, TARGET_APX_NDD)
   24004              :    && true))
   24005              :                 return 1410; /* *rotlhi3_1 */
   24006              :               break;
   24007              : 
   24008              :             case 4:
   24009              :               if (
   24010              : #line 19648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24011              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24012              :                 return 1413; /* *rotlqi3_1_slp */
   24013              :               break;
   24014              : 
   24015              :             case 5:
   24016              :               if (
   24017              : #line 19648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24018              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24019              :                 return 1415; /* *rotlhi3_1_slp */
   24020              :               break;
   24021              : 
   24022              :             default:
   24023              :               break;
   24024              :             }
   24025              :           break;
   24026              : 
   24027              :         case 1:
   24028              :           if (
   24029              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24030              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   24031              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   24032              :       == GET_MODE_BITSIZE (QImode)-1
   24033              :    && ix86_pre_reload_split ()))
   24034              :             return 1324; /* *rotlqi3_mask_1 */
   24035              :           break;
   24036              : 
   24037              :         case 2:
   24038              :           if (
   24039              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24040              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   24041              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   24042              :       == GET_MODE_BITSIZE (HImode)-1
   24043              :    && ix86_pre_reload_split ()))
   24044              :             return 1326; /* *rotlhi3_mask_1 */
   24045              :           break;
   24046              : 
   24047              :         case 3:
   24048              :           if (
   24049              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24050              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   24051              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   24052              :       == GET_MODE_BITSIZE (SImode)-1
   24053              :    && ix86_pre_reload_split ()))
   24054              :             return 1328; /* *rotlsi3_mask_1 */
   24055              :           break;
   24056              : 
   24057              :         case 4:
   24058              :           if ((
   24059              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24060              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   24061              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   24062              :       == GET_MODE_BITSIZE (DImode)-1
   24063              :    && ix86_pre_reload_split ()) && 
   24064              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24065              : (TARGET_64BIT)))
   24066              :             return 1330; /* *rotldi3_mask_1 */
   24067              :           break;
   24068              : 
   24069              :         case 5:
   24070              :           if (
   24071              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24072              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   24073              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   24074              :    && ix86_pre_reload_split ()))
   24075              :             return 1340; /* *rotlqi3_add_1 */
   24076              :           break;
   24077              : 
   24078              :         case 6:
   24079              :           if (
   24080              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24081              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   24082              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   24083              :    && ix86_pre_reload_split ()))
   24084              :             return 1342; /* *rotlhi3_add_1 */
   24085              :           break;
   24086              : 
   24087              :         case 7:
   24088              :           if (
   24089              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24090              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   24091              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24092              :    && ix86_pre_reload_split ()))
   24093              :             return 1344; /* *rotlsi3_add_1 */
   24094              :           break;
   24095              : 
   24096              :         case 8:
   24097              :           if ((
   24098              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24099              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   24100              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24101              :    && ix86_pre_reload_split ()) && 
   24102              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24103              : (TARGET_64BIT)))
   24104              :             return 1346; /* *rotldi3_add_1 */
   24105              :           break;
   24106              : 
   24107              :         case 9:
   24108              :           if (
   24109              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24110              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   24111              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   24112              :    && ix86_pre_reload_split ()))
   24113              :             return 1356; /* *rotlqi3_sub_1 */
   24114              :           break;
   24115              : 
   24116              :         case 10:
   24117              :           if (
   24118              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24119              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   24120              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   24121              :    && ix86_pre_reload_split ()))
   24122              :             return 1358; /* *rotlhi3_sub_1 */
   24123              :           break;
   24124              : 
   24125              :         case 11:
   24126              :           if (
   24127              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24128              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   24129              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24130              :    && ix86_pre_reload_split ()))
   24131              :             return 1360; /* *rotlsi3_sub_1 */
   24132              :           break;
   24133              : 
   24134              :         case 12:
   24135              :           if ((
   24136              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24137              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   24138              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24139              :    && ix86_pre_reload_split ()) && 
   24140              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24141              : (TARGET_64BIT)))
   24142              :             return 1362; /* *rotldi3_sub_1 */
   24143              :           break;
   24144              : 
   24145              :         default:
   24146              :           break;
   24147              :         }
   24148              :       break;
   24149              : 
   24150              :     case ROTATERT:
   24151              :       switch (pattern212 (x1))
   24152              :         {
   24153              :         case 0:
   24154              :           x4 = XEXP (x3, 1);
   24155              :           if (GET_CODE (x4) == SUBREG)
   24156              :             {
   24157              :               switch (pattern1180 (x2))
   24158              :                 {
   24159              :                 case 0:
   24160              :                   if (
   24161              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24162              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
   24163              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   24164              :       == GET_MODE_BITSIZE (QImode)-1
   24165              :    && ix86_pre_reload_split ()))
   24166              :                     return 1317; /* *rotrqi3_mask */
   24167              :                   break;
   24168              : 
   24169              :                 case 1:
   24170              :                   if (
   24171              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24172              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
   24173              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   24174              :       == GET_MODE_BITSIZE (HImode)-1
   24175              :    && ix86_pre_reload_split ()))
   24176              :                     return 1319; /* *rotrhi3_mask */
   24177              :                   break;
   24178              : 
   24179              :                 case 2:
   24180              :                   if (
   24181              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24182              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   24183              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   24184              :       == GET_MODE_BITSIZE (SImode)-1
   24185              :    && ix86_pre_reload_split ()))
   24186              :                     return 1321; /* *rotrsi3_mask */
   24187              :                   break;
   24188              : 
   24189              :                 case 3:
   24190              :                   if ((
   24191              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24192              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   24193              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   24194              :       == GET_MODE_BITSIZE (DImode)-1
   24195              :    && ix86_pre_reload_split ()) && 
   24196              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24197              : (TARGET_64BIT)))
   24198              :                     return 1323; /* *rotrdi3_mask */
   24199              :                   break;
   24200              : 
   24201              :                 case 4:
   24202              :                   if (
   24203              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24204              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
   24205              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   24206              :    && ix86_pre_reload_split ()))
   24207              :                     return 1333; /* *rotrqi3_add */
   24208              :                   break;
   24209              : 
   24210              :                 case 5:
   24211              :                   if (
   24212              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24213              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
   24214              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   24215              :    && ix86_pre_reload_split ()))
   24216              :                     return 1335; /* *rotrhi3_add */
   24217              :                   break;
   24218              : 
   24219              :                 case 6:
   24220              :                   if (
   24221              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24222              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   24223              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24224              :    && ix86_pre_reload_split ()))
   24225              :                     return 1337; /* *rotrsi3_add */
   24226              :                   break;
   24227              : 
   24228              :                 case 7:
   24229              :                   if ((
   24230              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24231              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   24232              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24233              :    && ix86_pre_reload_split ()) && 
   24234              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24235              : (TARGET_64BIT)))
   24236              :                     return 1339; /* *rotrdi3_add */
   24237              :                   break;
   24238              : 
   24239              :                 case 8:
   24240              :                   if (
   24241              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24242              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
   24243              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   24244              :    && ix86_pre_reload_split ()))
   24245              :                     return 1349; /* *rotrqi3_sub */
   24246              :                   break;
   24247              : 
   24248              :                 case 9:
   24249              :                   if (
   24250              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24251              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
   24252              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   24253              :    && ix86_pre_reload_split ()))
   24254              :                     return 1351; /* *rotrhi3_sub */
   24255              :                   break;
   24256              : 
   24257              :                 case 10:
   24258              :                   if (
   24259              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24260              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   24261              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24262              :    && ix86_pre_reload_split ()))
   24263              :                     return 1353; /* *rotrsi3_sub */
   24264              :                   break;
   24265              : 
   24266              :                 case 11:
   24267              :                   if ((
   24268              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24269              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   24270              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24271              :    && ix86_pre_reload_split ()) && 
   24272              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24273              : (TARGET_64BIT)))
   24274              :                     return 1355; /* *rotrdi3_sub */
   24275              :                   break;
   24276              : 
   24277              :                 default:
   24278              :                   break;
   24279              :                 }
   24280              :             }
   24281              :           operands[2] = x4;
   24282              :           switch (pattern1181 (x2))
   24283              :             {
   24284              :             case 0:
   24285              :               if (
   24286              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24287              : (ix86_binary_operator_ok (ROTATERT, SImode, operands, TARGET_APX_NDD)
   24288              :    && true))
   24289              :                 return 1377; /* *rotrsi3_1 */
   24290              :               break;
   24291              : 
   24292              :             case 1:
   24293              :               if ((
   24294              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24295              : (ix86_binary_operator_ok (ROTATERT, DImode, operands, TARGET_APX_NDD)
   24296              :    && true) && 
   24297              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24298              : (TARGET_64BIT)))
   24299              :                 return 1381; /* *rotrdi3_1 */
   24300              :               break;
   24301              : 
   24302              :             case 2:
   24303              :               if (
   24304              : #line 19620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24305              : (ix86_binary_operator_ok (ROTATERT, QImode, operands, TARGET_APX_NDD)
   24306              :    && true))
   24307              :                 return 1408; /* *rotrqi3_1 */
   24308              :               break;
   24309              : 
   24310              :             case 3:
   24311              :               if (
   24312              : #line 19620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24313              : (ix86_binary_operator_ok (ROTATERT, HImode, operands, TARGET_APX_NDD)
   24314              :    && true))
   24315              :                 return 1412; /* *rotrhi3_1 */
   24316              :               break;
   24317              : 
   24318              :             case 4:
   24319              :               if (
   24320              : #line 19648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24321              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24322              :                 return 1414; /* *rotrqi3_1_slp */
   24323              :               break;
   24324              : 
   24325              :             case 5:
   24326              :               if (
   24327              : #line 19648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24328              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24329              :                 return 1416; /* *rotrhi3_1_slp */
   24330              :               break;
   24331              : 
   24332              :             default:
   24333              :               break;
   24334              :             }
   24335              :           break;
   24336              : 
   24337              :         case 1:
   24338              :           if (
   24339              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24340              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
   24341              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   24342              :       == GET_MODE_BITSIZE (QImode)-1
   24343              :    && ix86_pre_reload_split ()))
   24344              :             return 1325; /* *rotrqi3_mask_1 */
   24345              :           break;
   24346              : 
   24347              :         case 2:
   24348              :           if (
   24349              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24350              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
   24351              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   24352              :       == GET_MODE_BITSIZE (HImode)-1
   24353              :    && ix86_pre_reload_split ()))
   24354              :             return 1327; /* *rotrhi3_mask_1 */
   24355              :           break;
   24356              : 
   24357              :         case 3:
   24358              :           if (
   24359              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24360              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   24361              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   24362              :       == GET_MODE_BITSIZE (SImode)-1
   24363              :    && ix86_pre_reload_split ()))
   24364              :             return 1329; /* *rotrsi3_mask_1 */
   24365              :           break;
   24366              : 
   24367              :         case 4:
   24368              :           if ((
   24369              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24370              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   24371              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   24372              :       == GET_MODE_BITSIZE (DImode)-1
   24373              :    && ix86_pre_reload_split ()) && 
   24374              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24375              : (TARGET_64BIT)))
   24376              :             return 1331; /* *rotrdi3_mask_1 */
   24377              :           break;
   24378              : 
   24379              :         case 5:
   24380              :           if (
   24381              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24382              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
   24383              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   24384              :    && ix86_pre_reload_split ()))
   24385              :             return 1341; /* *rotrqi3_add_1 */
   24386              :           break;
   24387              : 
   24388              :         case 6:
   24389              :           if (
   24390              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24391              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
   24392              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   24393              :    && ix86_pre_reload_split ()))
   24394              :             return 1343; /* *rotrhi3_add_1 */
   24395              :           break;
   24396              : 
   24397              :         case 7:
   24398              :           if (
   24399              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24400              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   24401              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24402              :    && ix86_pre_reload_split ()))
   24403              :             return 1345; /* *rotrsi3_add_1 */
   24404              :           break;
   24405              : 
   24406              :         case 8:
   24407              :           if ((
   24408              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24409              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   24410              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24411              :    && ix86_pre_reload_split ()) && 
   24412              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24413              : (TARGET_64BIT)))
   24414              :             return 1347; /* *rotrdi3_add_1 */
   24415              :           break;
   24416              : 
   24417              :         case 9:
   24418              :           if (
   24419              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24420              : (ix86_binary_operator_ok (ROTATERT, QImode, operands)
   24421              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   24422              :    && ix86_pre_reload_split ()))
   24423              :             return 1357; /* *rotrqi3_sub_1 */
   24424              :           break;
   24425              : 
   24426              :         case 10:
   24427              :           if (
   24428              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24429              : (ix86_binary_operator_ok (ROTATERT, HImode, operands)
   24430              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   24431              :    && ix86_pre_reload_split ()))
   24432              :             return 1359; /* *rotrhi3_sub_1 */
   24433              :           break;
   24434              : 
   24435              :         case 11:
   24436              :           if (
   24437              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24438              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
   24439              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24440              :    && ix86_pre_reload_split ()))
   24441              :             return 1361; /* *rotrsi3_sub_1 */
   24442              :           break;
   24443              : 
   24444              :         case 12:
   24445              :           if ((
   24446              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24447              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
   24448              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24449              :    && ix86_pre_reload_split ()) && 
   24450              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24451              : (TARGET_64BIT)))
   24452              :             return 1363; /* *rotrdi3_sub_1 */
   24453              :           break;
   24454              : 
   24455              :         default:
   24456              :           break;
   24457              :         }
   24458              :       break;
   24459              : 
   24460              :     case CALL:
   24461              :       res = recog_418 (x1, insn, pnum_clobbers);
   24462              :       if (res >= 0)
   24463              :         return res;
   24464              :       break;
   24465              : 
   24466              :     case CTZ:
   24467              :       res = recog_419 (x1, insn, pnum_clobbers);
   24468              :       if (res >= 0)
   24469              :         return res;
   24470              :       break;
   24471              : 
   24472              :     case SIGN_EXTEND:
   24473              :       res = recog_420 (x1, insn, pnum_clobbers);
   24474              :       if (res >= 0)
   24475              :         return res;
   24476              :       break;
   24477              : 
   24478              :     case CLZ:
   24479              :       res = recog_421 (x1, insn, pnum_clobbers);
   24480              :       if (res >= 0)
   24481              :         return res;
   24482              :       break;
   24483              : 
   24484              :     case POPCOUNT:
   24485              :       res = recog_422 (x1, insn, pnum_clobbers);
   24486              :       if (res >= 0)
   24487              :         return res;
   24488              :       break;
   24489              : 
   24490              :     case SMAX:
   24491              :       switch (pattern216 (x1))
   24492              :         {
   24493              :         case 0:
   24494              :           if ((
   24495              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24496              : (TARGET_CMOVE
   24497              :    && ix86_pre_reload_split ()) && 
   24498              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24499              : (!TARGET_64BIT)))
   24500              :             return 1863; /* *smaxdi3_doubleword */
   24501              :           if ((
   24502              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24503              : (TARGET_CMOVE
   24504              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24505              :    && ix86_pre_reload_split ()) && 
   24506              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24507              : (TARGET_64BIT)))
   24508              :             return 1883; /* *smaxdi3_1 */
   24509              :           break;
   24510              : 
   24511              :         case 1:
   24512              :           if ((
   24513              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24514              : (TARGET_CMOVE
   24515              :    && ix86_pre_reload_split ()) && 
   24516              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24517              : (TARGET_64BIT)))
   24518              :             return 1867; /* *smaxti3_doubleword */
   24519              :           break;
   24520              : 
   24521              :         case 2:
   24522              :           if (
   24523              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24524              : (TARGET_CMOVE
   24525              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24526              :    && ix86_pre_reload_split ()))
   24527              :             return 1871; /* *smaxqi3_1 */
   24528              :           break;
   24529              : 
   24530              :         case 3:
   24531              :           if (
   24532              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24533              : (TARGET_CMOVE
   24534              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24535              :    && ix86_pre_reload_split ()))
   24536              :             return 1875; /* *smaxhi3_1 */
   24537              :           break;
   24538              : 
   24539              :         case 4:
   24540              :           if (
   24541              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24542              : (TARGET_CMOVE
   24543              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24544              :    && ix86_pre_reload_split ()))
   24545              :             return 1879; /* *smaxsi3_1 */
   24546              :           break;
   24547              : 
   24548              :         case 5:
   24549              :           if (
   24550              : #line 895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24551              : (TARGET_3DNOW && ix86_binary_operator_ok (SMAX, V2SFmode, operands)))
   24552              :             return 2109; /* *mmx_smaxv2sf3 */
   24553              :           break;
   24554              : 
   24555              :         default:
   24556              :           break;
   24557              :         }
   24558              :       break;
   24559              : 
   24560              :     case SMIN:
   24561              :       switch (pattern216 (x1))
   24562              :         {
   24563              :         case 0:
   24564              :           if ((
   24565              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24566              : (TARGET_CMOVE
   24567              :    && ix86_pre_reload_split ()) && 
   24568              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24569              : (!TARGET_64BIT)))
   24570              :             return 1864; /* *smindi3_doubleword */
   24571              :           if ((
   24572              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24573              : (TARGET_CMOVE
   24574              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24575              :    && ix86_pre_reload_split ()) && 
   24576              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24577              : (TARGET_64BIT)))
   24578              :             return 1884; /* *smindi3_1 */
   24579              :           break;
   24580              : 
   24581              :         case 1:
   24582              :           if ((
   24583              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24584              : (TARGET_CMOVE
   24585              :    && ix86_pre_reload_split ()) && 
   24586              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24587              : (TARGET_64BIT)))
   24588              :             return 1868; /* *sminti3_doubleword */
   24589              :           break;
   24590              : 
   24591              :         case 2:
   24592              :           if (
   24593              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24594              : (TARGET_CMOVE
   24595              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24596              :    && ix86_pre_reload_split ()))
   24597              :             return 1872; /* *sminqi3_1 */
   24598              :           break;
   24599              : 
   24600              :         case 3:
   24601              :           if (
   24602              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24603              : (TARGET_CMOVE
   24604              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24605              :    && ix86_pre_reload_split ()))
   24606              :             return 1876; /* *sminhi3_1 */
   24607              :           break;
   24608              : 
   24609              :         case 4:
   24610              :           if (
   24611              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24612              : (TARGET_CMOVE
   24613              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24614              :    && ix86_pre_reload_split ()))
   24615              :             return 1880; /* *sminsi3_1 */
   24616              :           break;
   24617              : 
   24618              :         case 5:
   24619              :           if (
   24620              : #line 895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24621              : (TARGET_3DNOW && ix86_binary_operator_ok (SMIN, V2SFmode, operands)))
   24622              :             return 2110; /* *mmx_sminv2sf3 */
   24623              :           break;
   24624              : 
   24625              :         default:
   24626              :           break;
   24627              :         }
   24628              :       break;
   24629              : 
   24630              :     case UMAX:
   24631              :       switch (pattern221 (x1))
   24632              :         {
   24633              :         case 0:
   24634              :           if ((
   24635              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24636              : (TARGET_CMOVE
   24637              :    && ix86_pre_reload_split ()) && 
   24638              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24639              : (!TARGET_64BIT)))
   24640              :             return 1865; /* *umaxdi3_doubleword */
   24641              :           if ((
   24642              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24643              : (TARGET_CMOVE
   24644              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24645              :    && ix86_pre_reload_split ()) && 
   24646              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24647              : (TARGET_64BIT)))
   24648              :             return 1885; /* *umaxdi3_1 */
   24649              :           break;
   24650              : 
   24651              :         case 1:
   24652              :           if ((
   24653              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24654              : (TARGET_CMOVE
   24655              :    && ix86_pre_reload_split ()) && 
   24656              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24657              : (TARGET_64BIT)))
   24658              :             return 1869; /* *umaxti3_doubleword */
   24659              :           break;
   24660              : 
   24661              :         case 2:
   24662              :           if (
   24663              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24664              : (TARGET_CMOVE
   24665              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24666              :    && ix86_pre_reload_split ()))
   24667              :             return 1873; /* *umaxqi3_1 */
   24668              :           break;
   24669              : 
   24670              :         case 3:
   24671              :           if (
   24672              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24673              : (TARGET_CMOVE
   24674              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24675              :    && ix86_pre_reload_split ()))
   24676              :             return 1877; /* *umaxhi3_1 */
   24677              :           break;
   24678              : 
   24679              :         case 4:
   24680              :           if (
   24681              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24682              : (TARGET_CMOVE
   24683              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24684              :    && ix86_pre_reload_split ()))
   24685              :             return 1881; /* *umaxsi3_1 */
   24686              :           break;
   24687              : 
   24688              :         case 5:
   24689              :           x4 = XEXP (x3, 1);
   24690              :           if (rtx_equal_p (x4, operands[1])
   24691              :               && 
   24692              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24693              : (TARGET_CMOVE
   24694              :    && ix86_pre_reload_split ()))
   24695              :             return 1887; /* *plus_within_umaxhi3_1 */
   24696              :           if (rtx_equal_p (x4, operands[2])
   24697              :               && 
   24698              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24699              : (TARGET_CMOVE
   24700              :    && ix86_pre_reload_split ()))
   24701              :             return 1888; /* *plus_within_umaxhi3_2 */
   24702              :           break;
   24703              : 
   24704              :         case 6:
   24705              :           x4 = XEXP (x3, 1);
   24706              :           if (rtx_equal_p (x4, operands[1])
   24707              :               && 
   24708              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24709              : (TARGET_CMOVE
   24710              :    && ix86_pre_reload_split ()))
   24711              :             return 1891; /* *plus_within_umaxsi3_1 */
   24712              :           if (rtx_equal_p (x4, operands[2])
   24713              :               && 
   24714              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24715              : (TARGET_CMOVE
   24716              :    && ix86_pre_reload_split ()))
   24717              :             return 1892; /* *plus_within_umaxsi3_2 */
   24718              :           break;
   24719              : 
   24720              :         case 7:
   24721              :           x4 = XEXP (x3, 1);
   24722              :           if (rtx_equal_p (x4, operands[1])
   24723              :               && (
   24724              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24725              : (TARGET_CMOVE
   24726              :    && ix86_pre_reload_split ()) && 
   24727              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24728              : (TARGET_64BIT)))
   24729              :             return 1895; /* *plus_within_umaxdi3_1 */
   24730              :           if (rtx_equal_p (x4, operands[2])
   24731              :               && (
   24732              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24733              : (TARGET_CMOVE
   24734              :    && ix86_pre_reload_split ()) && 
   24735              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24736              : (TARGET_64BIT)))
   24737              :             return 1896; /* *plus_within_umaxdi3_2 */
   24738              :           break;
   24739              : 
   24740              :         case 8:
   24741              :           if (
   24742              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24743              : (TARGET_CMOVE
   24744              :    && ix86_pre_reload_split ()))
   24745              :             return 1899; /* *minus_within_umaxhi3 */
   24746              :           break;
   24747              : 
   24748              :         case 9:
   24749              :           if (
   24750              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24751              : (TARGET_CMOVE
   24752              :    && ix86_pre_reload_split ()))
   24753              :             return 1901; /* *minus_within_umaxsi3 */
   24754              :           break;
   24755              : 
   24756              :         case 10:
   24757              :           if ((
   24758              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24759              : (TARGET_CMOVE
   24760              :    && ix86_pre_reload_split ()) && 
   24761              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24762              : (TARGET_64BIT)))
   24763              :             return 1903; /* *minus_within_umaxdi3 */
   24764              :           break;
   24765              : 
   24766              :         default:
   24767              :           break;
   24768              :         }
   24769              :       break;
   24770              : 
   24771              :     case UMIN:
   24772              :       switch (pattern221 (x1))
   24773              :         {
   24774              :         case 0:
   24775              :           if ((
   24776              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24777              : (TARGET_CMOVE
   24778              :    && ix86_pre_reload_split ()) && 
   24779              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24780              : (!TARGET_64BIT)))
   24781              :             return 1866; /* *umindi3_doubleword */
   24782              :           if ((
   24783              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24784              : (TARGET_CMOVE
   24785              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24786              :    && ix86_pre_reload_split ()) && 
   24787              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24788              : (TARGET_64BIT)))
   24789              :             return 1886; /* *umindi3_1 */
   24790              :           break;
   24791              : 
   24792              :         case 1:
   24793              :           if ((
   24794              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24795              : (TARGET_CMOVE
   24796              :    && ix86_pre_reload_split ()) && 
   24797              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24798              : (TARGET_64BIT)))
   24799              :             return 1870; /* *uminti3_doubleword */
   24800              :           break;
   24801              : 
   24802              :         case 2:
   24803              :           if (
   24804              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24805              : (TARGET_CMOVE
   24806              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24807              :    && ix86_pre_reload_split ()))
   24808              :             return 1874; /* *uminqi3_1 */
   24809              :           break;
   24810              : 
   24811              :         case 3:
   24812              :           if (
   24813              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24814              : (TARGET_CMOVE
   24815              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24816              :    && ix86_pre_reload_split ()))
   24817              :             return 1878; /* *uminhi3_1 */
   24818              :           break;
   24819              : 
   24820              :         case 4:
   24821              :           if (
   24822              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24823              : (TARGET_CMOVE
   24824              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24825              :    && ix86_pre_reload_split ()))
   24826              :             return 1882; /* *uminsi3_1 */
   24827              :           break;
   24828              : 
   24829              :         case 5:
   24830              :           x4 = XEXP (x3, 1);
   24831              :           if (rtx_equal_p (x4, operands[1])
   24832              :               && 
   24833              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24834              : (TARGET_CMOVE
   24835              :    && ix86_pre_reload_split ()))
   24836              :             return 1889; /* *plus_within_uminhi3_1 */
   24837              :           if (rtx_equal_p (x4, operands[2])
   24838              :               && 
   24839              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24840              : (TARGET_CMOVE
   24841              :    && ix86_pre_reload_split ()))
   24842              :             return 1890; /* *plus_within_uminhi3_2 */
   24843              :           break;
   24844              : 
   24845              :         case 6:
   24846              :           x4 = XEXP (x3, 1);
   24847              :           if (rtx_equal_p (x4, operands[1])
   24848              :               && 
   24849              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24850              : (TARGET_CMOVE
   24851              :    && ix86_pre_reload_split ()))
   24852              :             return 1893; /* *plus_within_uminsi3_1 */
   24853              :           if (rtx_equal_p (x4, operands[2])
   24854              :               && 
   24855              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24856              : (TARGET_CMOVE
   24857              :    && ix86_pre_reload_split ()))
   24858              :             return 1894; /* *plus_within_uminsi3_2 */
   24859              :           break;
   24860              : 
   24861              :         case 7:
   24862              :           x4 = XEXP (x3, 1);
   24863              :           if (rtx_equal_p (x4, operands[1])
   24864              :               && (
   24865              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24866              : (TARGET_CMOVE
   24867              :    && ix86_pre_reload_split ()) && 
   24868              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24869              : (TARGET_64BIT)))
   24870              :             return 1897; /* *plus_within_umindi3_1 */
   24871              :           if (rtx_equal_p (x4, operands[2])
   24872              :               && (
   24873              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24874              : (TARGET_CMOVE
   24875              :    && ix86_pre_reload_split ()) && 
   24876              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24877              : (TARGET_64BIT)))
   24878              :             return 1898; /* *plus_within_umindi3_2 */
   24879              :           break;
   24880              : 
   24881              :         case 8:
   24882              :           if (
   24883              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24884              : (TARGET_CMOVE
   24885              :    && ix86_pre_reload_split ()))
   24886              :             return 1900; /* *minus_within_uminhi3 */
   24887              :           break;
   24888              : 
   24889              :         case 9:
   24890              :           if (
   24891              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24892              : (TARGET_CMOVE
   24893              :    && ix86_pre_reload_split ()))
   24894              :             return 1902; /* *minus_within_uminsi3 */
   24895              :           break;
   24896              : 
   24897              :         case 10:
   24898              :           if ((
   24899              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24900              : (TARGET_CMOVE
   24901              :    && ix86_pre_reload_split ()) && 
   24902              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24903              : (TARGET_64BIT)))
   24904              :             return 1904; /* *minus_within_umindi3 */
   24905              :           break;
   24906              : 
   24907              :         default:
   24908              :           break;
   24909              :         }
   24910              :       break;
   24911              : 
   24912              :     case UNSPEC_VOLATILE:
   24913              :       res = recog_423 (x1, insn, pnum_clobbers);
   24914              :       if (res >= 0)
   24915              :         return res;
   24916              :       break;
   24917              : 
   24918              :     case VEC_MERGE:
   24919              :       if (pattern222 (x1) == 0
   24920              :           && 
   24921              : #line 8753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24922              : ((TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSE))
   24923              :         return 4831; /* sse_cvtpi2ps */
   24924              :       break;
   24925              : 
   24926              :     case VEC_CONCAT:
   24927              :       res = recog_424 (x1, insn, pnum_clobbers);
   24928              :       if (res >= 0)
   24929              :         return res;
   24930              :       break;
   24931              : 
   24932              :     case VEC_DUPLICATE:
   24933              :       res = recog_425 (x1, insn, pnum_clobbers);
   24934              :       if (res >= 0)
   24935              :         return res;
   24936              :       break;
   24937              : 
   24938              :     case VEC_SELECT:
   24939              :       res = recog_426 (x1, insn, pnum_clobbers);
   24940              :       if (res >= 0)
   24941              :         return res;
   24942              :       break;
   24943              : 
   24944              :     default:
   24945              :       break;
   24946              :     }
   24947              :   x5 = XVECEXP (x1, 0, 1);
   24948              :   if (GET_CODE (x5) != UNSPEC
   24949              :       || XVECLEN (x5, 0) != 1
   24950              :       || XINT (x5, 1) != 39)
   24951              :     return -1;
   24952              :   return recog_427 (x1, insn, pnum_clobbers);
   24953              : }
   24954              : 
   24955              :  rtx_insn *
   24956              : split_24 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24957              : {
   24958              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24959              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   24960              :   rtx x10, x11;
   24961              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24962              :   x2 = XVECEXP (x1, 0, 1);
   24963              :   if (pattern237 (x2, 
   24964              : E_CCmode, 
   24965              : 17) != 0)
   24966              :     return NULL;
   24967              :   x3 = XVECEXP (x1, 0, 0);
   24968              :   x4 = XEXP (x3, 1);
   24969              :   x5 = XEXP (x4, 0);
   24970              :   switch (GET_CODE (x5))
   24971              :     {
   24972              :     case CONST_INT:
   24973              :     case CONST_WIDE_INT:
   24974              :     case CONST_POLY_INT:
   24975              :     case CONST_FIXED:
   24976              :     case CONST_DOUBLE:
   24977              :     case CONST_VECTOR:
   24978              :     case CONST:
   24979              :     case REG:
   24980              :     case SUBREG:
   24981              :     case MEM:
   24982              :     case LABEL_REF:
   24983              :     case SYMBOL_REF:
   24984              :     case HIGH:
   24985              :       operands[1] = x5;
   24986              :       switch (pattern1190 (x3))
   24987              :         {
   24988              :         case 0:
   24989              :           if ((
   24990              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24991              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24992              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24993              : ( reload_completed
   24994              :    && !(rtx_equal_p (operands[0], operands[1])
   24995              :         || rtx_equal_p (operands[0], operands[2])))))
   24996              :             return gen_split_295 (insn, operands);
   24997              :           break;
   24998              : 
   24999              :         case 1:
   25000              :           if ((
   25001              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25002              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25003              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25004              : ( reload_completed
   25005              :    && !(rtx_equal_p (operands[0], operands[1])
   25006              :         || rtx_equal_p (operands[0], operands[2])))))
   25007              :             return gen_split_298 (insn, operands);
   25008              :           break;
   25009              : 
   25010              :         case 2:
   25011              :           if (nonimmediate_operand (operands[0], E_DImode)
   25012              :               && nonimmediate_operand (operands[1], E_DImode))
   25013              :             {
   25014              :               if (x86_64_hilo_general_operand (operands[2], E_DImode)
   25015              :                   && ((
   25016              : #line 14336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25017              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   25018              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25019              : (!TARGET_64BIT)) && 
   25020              : #line 14338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25021              : ( reload_completed)))
   25022              :                 return gen_split_394 (insn, operands);
   25023              :               if (const_int_operand (operands[2], E_DImode)
   25024              :                   && (
   25025              : #line 14478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25026              : (TARGET_64BIT && TARGET_USE_BT
   25027              :    && ix86_binary_operator_ok (XOR, DImode, operands)
   25028              :    && IN_RANGE (exact_log2 (INTVAL (operands[2])), 31, 63)) && 
   25029              : #line 14482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25030              : ( reload_completed)))
   25031              :                 return gen_split_401 (insn, operands);
   25032              :             }
   25033              :           if (const_int_operand (operands[2], E_DImode))
   25034              :             {
   25035              :               if (QIreg_operand (operands[0], E_DImode)
   25036              :                   && register_operand (operands[1], E_DImode)
   25037              :                   && (
   25038              : #line 14836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25039              : (reload_completed
   25040              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25041              :     && !(INTVAL (operands[2]) & ~(255 << 8))
   25042              :     && !(TARGET_APX_NDD && REGNO (operands[0]) != REGNO (operands[1]))) && 
   25043              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25044              : (TARGET_64BIT)))
   25045              :                 return gen_split_429 (insn, operands);
   25046              :               if (any_QIreg_operand (operands[0], E_DImode)
   25047              :                   && general_operand (operands[1], E_DImode)
   25048              :                   && (
   25049              : #line 14874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25050              : (reload_completed
   25051              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25052              :     && !(INTVAL (operands[2]) & ~255)
   25053              :     && (INTVAL (operands[2]) & 128)
   25054              :     && !(TARGET_APX_NDD
   25055              :          && !rtx_equal_p (operands[0], operands[1]))) && 
   25056              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25057              : (TARGET_64BIT)))
   25058              :                 return gen_split_435 (insn, operands);
   25059              :             }
   25060              :           break;
   25061              : 
   25062              :         case 3:
   25063              :           if (((
   25064              : #line 14336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25065              : (ix86_binary_operator_ok (XOR, TImode, operands, TARGET_APX_NDD)) && 
   25066              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25067              : (TARGET_64BIT)) && 
   25068              : #line 14338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25069              : ( reload_completed)))
   25070              :             return gen_split_396 (insn, operands);
   25071              :           break;
   25072              : 
   25073              :         case 4:
   25074              :           if (QIreg_operand (operands[0], E_HImode)
   25075              :               && register_operand (operands[1], E_HImode)
   25076              :               && 
   25077              : #line 14836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25078              : (reload_completed
   25079              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25080              :     && !(INTVAL (operands[2]) & ~(255 << 8))
   25081              :     && !(TARGET_APX_NDD && REGNO (operands[0]) != REGNO (operands[1]))))
   25082              :             return gen_split_425 (insn, operands);
   25083              :           if (any_QIreg_operand (operands[0], E_HImode)
   25084              :               && general_operand (operands[1], E_HImode)
   25085              :               && 
   25086              : #line 14874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25087              : (reload_completed
   25088              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25089              :     && !(INTVAL (operands[2]) & ~255)
   25090              :     && (INTVAL (operands[2]) & 128)
   25091              :     && !(TARGET_APX_NDD
   25092              :          && !rtx_equal_p (operands[0], operands[1]))))
   25093              :             return gen_split_431 (insn, operands);
   25094              :           break;
   25095              : 
   25096              :         case 5:
   25097              :           if (QIreg_operand (operands[0], E_SImode)
   25098              :               && register_operand (operands[1], E_SImode)
   25099              :               && 
   25100              : #line 14836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25101              : (reload_completed
   25102              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25103              :     && !(INTVAL (operands[2]) & ~(255 << 8))
   25104              :     && !(TARGET_APX_NDD && REGNO (operands[0]) != REGNO (operands[1]))))
   25105              :             return gen_split_427 (insn, operands);
   25106              :           if (any_QIreg_operand (operands[0], E_SImode)
   25107              :               && general_operand (operands[1], E_SImode)
   25108              :               && 
   25109              : #line 14874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25110              : (reload_completed
   25111              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25112              :     && !(INTVAL (operands[2]) & ~255)
   25113              :     && (INTVAL (operands[2]) & 128)
   25114              :     && !(TARGET_APX_NDD
   25115              :          && !rtx_equal_p (operands[0], operands[1]))))
   25116              :             return gen_split_433 (insn, operands);
   25117              :           break;
   25118              : 
   25119              :         default:
   25120              :           break;
   25121              :         }
   25122              :       if (GET_CODE (x5) != SUBREG
   25123              :           || pattern1189 (x4) != 0)
   25124              :         return NULL;
   25125              :       x6 = XEXP (x5, 0);
   25126              :       x7 = XEXP (x6, 0);
   25127              :       operands[2] = x7;
   25128              :       switch (pattern1649 (x3))
   25129              :         {
   25130              :         case 0:
   25131              :           if ((
   25132              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25133              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25134              : #line 13582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25135              : ( reload_completed
   25136              :    && !rtx_equal_p (operands[0], operands[1]))))
   25137              :             return gen_split_301 (insn, operands);
   25138              :           break;
   25139              : 
   25140              :         case 1:
   25141              :           if ((
   25142              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25143              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25144              : #line 13582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25145              : ( reload_completed
   25146              :    && !rtx_equal_p (operands[0], operands[1]))))
   25147              :             return gen_split_304 (insn, operands);
   25148              :           break;
   25149              : 
   25150              :         case 2:
   25151              :           if (((
   25152              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25153              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25154              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25155              : (TARGET_64BIT)) && 
   25156              : #line 13582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25157              : ( reload_completed
   25158              :    && !rtx_equal_p (operands[0], operands[1]))))
   25159              :             return gen_split_307 (insn, operands);
   25160              :           break;
   25161              : 
   25162              :         default:
   25163              :           break;
   25164              :         }
   25165              :       operands[1] = x7;
   25166              :       switch (pattern1650 (x3))
   25167              :         {
   25168              :         case 0:
   25169              :           if (!(
   25170              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25171              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25172              : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25173              : ( reload_completed)))
   25174              :             return NULL;
   25175              :           return gen_split_310 (insn, operands);
   25176              : 
   25177              :         case 1:
   25178              :           if (!(
   25179              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25180              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25181              : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25182              : ( reload_completed)))
   25183              :             return NULL;
   25184              :           return gen_split_313 (insn, operands);
   25185              : 
   25186              :         case 2:
   25187              :           if (!((
   25188              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25189              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25190              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25191              : (TARGET_64BIT)) && 
   25192              : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25193              : ( reload_completed)))
   25194              :             return NULL;
   25195              :           return gen_split_316 (insn, operands);
   25196              : 
   25197              :         case 3:
   25198              :           if (!
   25199              : #line 13863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25200              : ( reload_completed))
   25201              :             return NULL;
   25202              :           return gen_split_330 (insn, operands);
   25203              : 
   25204              :         case 4:
   25205              :           if (!
   25206              : #line 13863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25207              : ( reload_completed))
   25208              :             return NULL;
   25209              :           return gen_split_333 (insn, operands);
   25210              : 
   25211              :         case 5:
   25212              :           if (!(
   25213              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25214              : (TARGET_64BIT) && 
   25215              : #line 13863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25216              : ( reload_completed)))
   25217              :             return NULL;
   25218              :           return gen_split_336 (insn, operands);
   25219              : 
   25220              :         default:
   25221              :           return NULL;
   25222              :         }
   25223              : 
   25224              :     case XOR:
   25225              :       x6 = XEXP (x5, 0);
   25226              :       if (GET_CODE (x6) != IOR)
   25227              :         return NULL;
   25228              :       x8 = XEXP (x3, 0);
   25229              :       operands[0] = x8;
   25230              :       x7 = XEXP (x6, 0);
   25231              :       operands[1] = x7;
   25232              :       x9 = XEXP (x6, 1);
   25233              :       operands[2] = x9;
   25234              :       switch (GET_MODE (operands[0]))
   25235              :         {
   25236              :         case E_SImode:
   25237              :           if (pattern1512 (x4, 
   25238              : E_SImode) != 0)
   25239              :             return NULL;
   25240              :           x10 = XEXP (x4, 1);
   25241              :           operands[3] = x10;
   25242              :           if (nonimmediate_operand (operands[3], E_SImode))
   25243              :             {
   25244              :               if (nonimmediate_operand (operands[2], E_SImode))
   25245              :                 {
   25246              :                   x11 = XEXP (x5, 1);
   25247              :                   if (rtx_equal_p (x11, operands[1])
   25248              :                       && 
   25249              : #line 14245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25250              : (TARGET_BMI))
   25251              :                     return gen_split_385 (insn, operands);
   25252              :                 }
   25253              :               if (register_operand (operands[2], E_SImode))
   25254              :                 {
   25255              :                   x11 = XEXP (x5, 1);
   25256              :                   if (rtx_equal_p (x11, operands[2])
   25257              :                       && 
   25258              : #line 14264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25259              : (TARGET_BMI))
   25260              :                     return gen_split_387 (insn, operands);
   25261              :                 }
   25262              :             }
   25263              :           x11 = XEXP (x5, 1);
   25264              :           operands[3] = x11;
   25265              :           if (!nonimmediate_operand (operands[3], E_SImode))
   25266              :             return NULL;
   25267              :           if (nonimmediate_operand (operands[2], E_SImode)
   25268              :               && rtx_equal_p (x10, operands[1])
   25269              :               && 
   25270              : #line 14283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25271              : (TARGET_BMI))
   25272              :             return gen_split_389 (insn, operands);
   25273              :           if (!register_operand (operands[2], E_SImode)
   25274              :               || !rtx_equal_p (x10, operands[2])
   25275              :               || !
   25276              : #line 14302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25277              : (TARGET_BMI))
   25278              :             return NULL;
   25279              :           return gen_split_391 (insn, operands);
   25280              : 
   25281              :         case E_DImode:
   25282              :           if (pattern1512 (x4, 
   25283              : E_DImode) != 0)
   25284              :             return NULL;
   25285              :           x10 = XEXP (x4, 1);
   25286              :           operands[3] = x10;
   25287              :           if (nonimmediate_operand (operands[3], E_DImode))
   25288              :             {
   25289              :               if (nonimmediate_operand (operands[2], E_DImode))
   25290              :                 {
   25291              :                   x11 = XEXP (x5, 1);
   25292              :                   if (rtx_equal_p (x11, operands[1])
   25293              :                       && (
   25294              : #line 14245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25295              : (TARGET_BMI) && 
   25296              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25297              : (TARGET_64BIT)))
   25298              :                     return gen_split_386 (insn, operands);
   25299              :                 }
   25300              :               if (register_operand (operands[2], E_DImode))
   25301              :                 {
   25302              :                   x11 = XEXP (x5, 1);
   25303              :                   if (rtx_equal_p (x11, operands[2])
   25304              :                       && (
   25305              : #line 14264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25306              : (TARGET_BMI) && 
   25307              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25308              : (TARGET_64BIT)))
   25309              :                     return gen_split_388 (insn, operands);
   25310              :                 }
   25311              :             }
   25312              :           x11 = XEXP (x5, 1);
   25313              :           operands[3] = x11;
   25314              :           if (!nonimmediate_operand (operands[3], E_DImode))
   25315              :             return NULL;
   25316              :           if (nonimmediate_operand (operands[2], E_DImode)
   25317              :               && rtx_equal_p (x10, operands[1])
   25318              :               && (
   25319              : #line 14283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25320              : (TARGET_BMI) && 
   25321              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25322              : (TARGET_64BIT)))
   25323              :             return gen_split_390 (insn, operands);
   25324              :           if (!register_operand (operands[2], E_DImode)
   25325              :               || !rtx_equal_p (x10, operands[2])
   25326              :               || !(
   25327              : #line 14302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25328              : (TARGET_BMI) && 
   25329              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25330              : (TARGET_64BIT)))
   25331              :             return NULL;
   25332              :           return gen_split_392 (insn, operands);
   25333              : 
   25334              :         default:
   25335              :           return NULL;
   25336              :         }
   25337              : 
   25338              :     case AND:
   25339              :       x6 = XEXP (x5, 0);
   25340              :       if (GET_CODE (x6) != XOR)
   25341              :         return NULL;
   25342              :       switch (pattern1063 (x3))
   25343              :         {
   25344              :         case 0:
   25345              :           if (!(
   25346              : #line 14508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25347              : (TARGET_BMI && ix86_pre_reload_split ()) && 
   25348              : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25349              : ( 1)))
   25350              :             return NULL;
   25351              :           return gen_split_402 (insn, operands);
   25352              : 
   25353              :         case 1:
   25354              :           if (!(
   25355              : #line 14508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25356              : (TARGET_BMI && ix86_pre_reload_split ()) && 
   25357              : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25358              : ( 1)))
   25359              :             return NULL;
   25360              :           return gen_split_403 (insn, operands);
   25361              : 
   25362              :         case 2:
   25363              :           if (!((
   25364              : #line 14508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25365              : (TARGET_BMI && ix86_pre_reload_split ()) && 
   25366              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25367              : (TARGET_64BIT)) && 
   25368              : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25369              : ( 1)))
   25370              :             return NULL;
   25371              :           return gen_split_404 (insn, operands);
   25372              : 
   25373              :         default:
   25374              :           return NULL;
   25375              :         }
   25376              : 
   25377              :     case ASHIFT:
   25378              :       switch (pattern1071 (x3, 
   25379              : 1))
   25380              :         {
   25381              :         case 0:
   25382              :           if (!(
   25383              : #line 19783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25384              : (TARGET_USE_BT
   25385              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   25386              :       == GET_MODE_BITSIZE (SImode)-1
   25387              :    && ix86_pre_reload_split ()) && 
   25388              : #line 19788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25389              : ( 1)))
   25390              :             return NULL;
   25391              :           return gen_split_803 (insn, operands);
   25392              : 
   25393              :         case 1:
   25394              :           if (!((
   25395              : #line 19783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25396              : (TARGET_USE_BT
   25397              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   25398              :       == GET_MODE_BITSIZE (DImode)-1
   25399              :    && ix86_pre_reload_split ()) && 
   25400              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25401              : (TARGET_64BIT)) && 
   25402              : #line 19788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25403              : ( 1)))
   25404              :             return NULL;
   25405              :           return gen_split_805 (insn, operands);
   25406              : 
   25407              :         case 2:
   25408              :           if (!(
   25409              : #line 19811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25410              : (TARGET_USE_BT
   25411              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   25412              :       == GET_MODE_BITSIZE (SImode)-1
   25413              :    && ix86_pre_reload_split ()) && 
   25414              : #line 19816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25415              : ( 1)))
   25416              :             return NULL;
   25417              :           return gen_split_807 (insn, operands);
   25418              : 
   25419              :         case 3:
   25420              :           if (!((
   25421              : #line 19811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25422              : (TARGET_USE_BT
   25423              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   25424              :       == GET_MODE_BITSIZE (DImode)-1
   25425              :    && ix86_pre_reload_split ()) && 
   25426              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25427              : (TARGET_64BIT)) && 
   25428              : #line 19816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25429              : ( 1)))
   25430              :             return NULL;
   25431              :           return gen_split_809 (insn, operands);
   25432              : 
   25433              :         default:
   25434              :           return NULL;
   25435              :         }
   25436              : 
   25437              :     case SIGN_EXTEND:
   25438              :       if (pattern1072 (x3) != 0
   25439              :           || !(
   25440              : #line 22333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25441              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()) && 
   25442              : #line 22335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25443              : ( 1)))
   25444              :         return NULL;
   25445              :       return gen_split_882 (insn, operands);
   25446              : 
   25447              :     case ZERO_EXTEND:
   25448              :       if (pattern1072 (x3) != 0
   25449              :           || !(
   25450              : #line 22333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25451              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()) && 
   25452              : #line 22335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25453              : ( 1)))
   25454              :         return NULL;
   25455              :       return gen_split_883 (insn, operands);
   25456              : 
   25457              :     case PLUS:
   25458              :       x11 = XEXP (x5, 1);
   25459              :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   25460              :         return NULL;
   25461              :       switch (pattern955 (x3))
   25462              :         {
   25463              :         case 0:
   25464              :           if (!
   25465              : #line 22891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25466              : (TARGET_AVOID_FALSE_DEP_FOR_BLS
   25467              :    && epilogue_completed
   25468              :    && optimize_function_for_speed_p (cfun)
   25469              :    && !reg_mentioned_p (operands[0], operands[1])))
   25470              :             return NULL;
   25471              :           return gen_split_910 (insn, operands);
   25472              : 
   25473              :         case 1:
   25474              :           if (!(
   25475              : #line 22891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25476              : (TARGET_AVOID_FALSE_DEP_FOR_BLS
   25477              :    && epilogue_completed
   25478              :    && optimize_function_for_speed_p (cfun)
   25479              :    && !reg_mentioned_p (operands[0], operands[1])) && 
   25480              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25481              : (TARGET_64BIT)))
   25482              :             return NULL;
   25483              :           return gen_split_911 (insn, operands);
   25484              : 
   25485              :         default:
   25486              :           return NULL;
   25487              :         }
   25488              : 
   25489              :     default:
   25490              :       return NULL;
   25491              :     }
   25492              : }
   25493              : 
   25494              :  rtx_insn *
   25495              : split_33 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25496              : {
   25497              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25498              :   rtx x2, x3, x4, x5, x6, x7;
   25499              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25500              :   x2 = XVECEXP (x1, 0, 0);
   25501              :   x3 = XEXP (x2, 0);
   25502              :   operands[0] = x3;
   25503              :   x4 = XEXP (x2, 1);
   25504              :   x5 = XEXP (x4, 0);
   25505              :   operands[1] = x5;
   25506              :   x6 = XVECEXP (x1, 0, 1);
   25507              :   switch (GET_CODE (x6))
   25508              :     {
   25509              :     case CLOBBER:
   25510              :       x7 = XEXP (x6, 0);
   25511              :       switch (pattern707 (x7))
   25512              :         {
   25513              :         case 0:
   25514              :           if (!register_operand (operands[0], E_DImode)
   25515              :               || GET_MODE (x4) != E_DImode
   25516              :               || !general_operand (operands[1], E_DImode))
   25517              :             return NULL;
   25518              :           if (((
   25519              : #line 15535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25520              : (TARGET_CMOVE
   25521              :    && ix86_pre_reload_split ()) && 
   25522              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25523              : (!TARGET_64BIT)) && 
   25524              : #line 15538 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25525              : ( 1)))
   25526              :             return gen_split_503 (insn, operands);
   25527              :           if (!((
   25528              : #line 15622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25529              : (TARGET_CMOVE
   25530              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25531              :    && ix86_pre_reload_split ()) && 
   25532              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25533              : (TARGET_64BIT)) && 
   25534              : #line 15626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25535              : ( 1)))
   25536              :             return NULL;
   25537              :           return gen_split_510 (insn, operands);
   25538              : 
   25539              :         case 1:
   25540              :           if (!register_operand (operands[0], E_TImode)
   25541              :               || GET_MODE (x4) != E_TImode
   25542              :               || !general_operand (operands[1], E_TImode)
   25543              :               || !((
   25544              : #line 15535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25545              : (TARGET_CMOVE
   25546              :    && ix86_pre_reload_split ()) && 
   25547              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25548              : (TARGET_64BIT)) && 
   25549              : #line 15538 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25550              : ( 1)))
   25551              :             return NULL;
   25552              :           return gen_split_504 (insn, operands);
   25553              : 
   25554              :         case 2:
   25555              :           if (!register_operand (operands[0], E_QImode)
   25556              :               || GET_MODE (x4) != E_QImode
   25557              :               || !general_operand (operands[1], E_QImode)
   25558              :               || !(
   25559              : #line 15622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25560              : (TARGET_CMOVE
   25561              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25562              :    && ix86_pre_reload_split ()) && 
   25563              : #line 15626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25564              : ( 1)))
   25565              :             return NULL;
   25566              :           return gen_split_507 (insn, operands);
   25567              : 
   25568              :         case 3:
   25569              :           if (!register_operand (operands[0], E_HImode)
   25570              :               || GET_MODE (x4) != E_HImode
   25571              :               || !general_operand (operands[1], E_HImode)
   25572              :               || !(
   25573              : #line 15622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25574              : (TARGET_CMOVE
   25575              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25576              :    && ix86_pre_reload_split ()) && 
   25577              : #line 15626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25578              : ( 1)))
   25579              :             return NULL;
   25580              :           return gen_split_508 (insn, operands);
   25581              : 
   25582              :         case 4:
   25583              :           if (!register_operand (operands[0], E_SImode)
   25584              :               || GET_MODE (x4) != E_SImode
   25585              :               || !general_operand (operands[1], E_SImode)
   25586              :               || !(
   25587              : #line 15622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25588              : (TARGET_CMOVE
   25589              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25590              :    && ix86_pre_reload_split ()) && 
   25591              : #line 15626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25592              : ( 1)))
   25593              :             return NULL;
   25594              :           return gen_split_509 (insn, operands);
   25595              : 
   25596              :         case 5:
   25597              :           if (GET_MODE (x4) != E_SFmode)
   25598              :             return NULL;
   25599              :           if (fp_register_operand (operands[0], E_SFmode)
   25600              :               && fp_register_operand (operands[1], E_SFmode)
   25601              :               && 
   25602              : #line 15752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25603              : (TARGET_80387 && reload_completed))
   25604              :             return gen_split_518 (insn, operands);
   25605              :           if (!general_reg_operand (operands[0], E_SFmode)
   25606              :               || !general_reg_operand (operands[1], E_SFmode)
   25607              :               || !
   25608              : #line 15759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25609              : (TARGET_80387 && reload_completed))
   25610              :             return NULL;
   25611              :           return gen_split_524 (insn, operands);
   25612              : 
   25613              :         case 6:
   25614              :           if (GET_MODE (x4) != E_DFmode)
   25615              :             return NULL;
   25616              :           if (fp_register_operand (operands[0], E_DFmode)
   25617              :               && fp_register_operand (operands[1], E_DFmode)
   25618              :               && 
   25619              : #line 15752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25620              : (TARGET_80387 && reload_completed))
   25621              :             return gen_split_520 (insn, operands);
   25622              :           if (!general_reg_operand (operands[0], E_DFmode)
   25623              :               || !general_reg_operand (operands[1], E_DFmode)
   25624              :               || !
   25625              : #line 15759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25626              : (TARGET_80387 && reload_completed))
   25627              :             return NULL;
   25628              :           return gen_split_526 (insn, operands);
   25629              : 
   25630              :         case 7:
   25631              :           if (GET_MODE (x4) != E_XFmode)
   25632              :             return NULL;
   25633              :           if (fp_register_operand (operands[0], E_XFmode)
   25634              :               && fp_register_operand (operands[1], E_XFmode)
   25635              :               && 
   25636              : #line 15752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25637              : (TARGET_80387 && reload_completed))
   25638              :             return gen_split_522 (insn, operands);
   25639              :           if (!general_reg_operand (operands[0], E_XFmode)
   25640              :               || !general_reg_operand (operands[1], E_XFmode)
   25641              :               || !
   25642              : #line 15759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25643              : (TARGET_80387 && reload_completed))
   25644              :             return NULL;
   25645              :           return gen_split_528 (insn, operands);
   25646              : 
   25647              :         default:
   25648              :           return NULL;
   25649              :         }
   25650              : 
   25651              :     case USE:
   25652              :       if (pattern846 (x1) != 0
   25653              :           || !(
   25654              : #line 15683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25655              : (TARGET_SSE) && 
   25656              : #line 15685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25657              : ( reload_completed)))
   25658              :         return NULL;
   25659              :       return gen_split_515 (insn, operands);
   25660              : 
   25661              :     default:
   25662              :       return NULL;
   25663              :     }
   25664              : }
   25665              : 
   25666              :  rtx_insn *
   25667              : split_40 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25668              : {
   25669              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25670              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   25671              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25672              :   x2 = XVECEXP (x1, 0, 0);
   25673              :   x3 = XEXP (x2, 0);
   25674              :   operands[0] = x3;
   25675              :   x4 = XEXP (x2, 1);
   25676              :   x5 = XEXP (x4, 0);
   25677              :   switch (GET_CODE (x5))
   25678              :     {
   25679              :     case REG:
   25680              :     case SUBREG:
   25681              :     case MEM:
   25682              :       operands[1] = x5;
   25683              :       x6 = XVECEXP (x1, 0, 1);
   25684              :       switch (GET_CODE (x6))
   25685              :         {
   25686              :         case CLOBBER:
   25687              :           x7 = XEXP (x6, 0);
   25688              :           if (GET_CODE (x7) != REG
   25689              :               || REGNO (x7) != 17
   25690              :               || GET_MODE (x7) != E_CCmode)
   25691              :             return NULL;
   25692              :           if (register_operand (operands[0], E_VOIDmode)
   25693              :               && register_operand (operands[1], E_VOIDmode)
   25694              :               && 
   25695              : #line 28992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25696              : (! TARGET_PARTIAL_REG_STALL && reload_completed
   25697              :    && (GET_MODE (operands[0]) == HImode
   25698              :        || (GET_MODE (operands[0]) == QImode && TARGET_PROMOTE_QImode))))
   25699              :             return gen_split_1012 (insn, operands);
   25700              :           if (GET_MODE (x4) != E_V2QImode)
   25701              :             return NULL;
   25702              :           if (general_reg_operand (operands[0], E_V2QImode)
   25703              :               && general_reg_operand (operands[1], E_V2QImode)
   25704              :               && 
   25705              : #line 3183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25706              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25707              :    && reload_completed))
   25708              :             return gen_split_1088 (insn, operands);
   25709              :           if (!sse_reg_operand (operands[0], E_V2QImode)
   25710              :               || !sse_reg_operand (operands[1], E_V2QImode)
   25711              :               || !
   25712              : #line 3210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25713              : (TARGET_SSE2 && reload_completed))
   25714              :             return NULL;
   25715              :           return gen_split_1089 (insn, operands);
   25716              : 
   25717              :         case USE:
   25718              :           switch (pattern847 (x1))
   25719              :             {
   25720              :             case 0:
   25721              :               if (!(
   25722              : #line 707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25723              : (TARGET_MMX_WITH_SSE) && 
   25724              : #line 709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25725              : ( reload_completed)))
   25726              :                 return NULL;
   25727              :               return gen_split_1068 (insn, operands);
   25728              : 
   25729              :             case 1:
   25730              :               if (!(
   25731              : #line 2266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25732              : (TARGET_SSE) && 
   25733              : #line 2268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25734              : ( reload_completed)))
   25735              :                 return NULL;
   25736              :               return gen_split_1077 (insn, operands);
   25737              : 
   25738              :             case 2:
   25739              :               if (!((
   25740              : #line 2266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25741              : (TARGET_SSE) && 
   25742              : #line 2251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25743              : (TARGET_MMX_WITH_SSE)) && 
   25744              : #line 2268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25745              : ( reload_completed)))
   25746              :                 return NULL;
   25747              :               return gen_split_1079 (insn, operands);
   25748              : 
   25749              :             case 3:
   25750              :               if (!(
   25751              : #line 2266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25752              : (TARGET_SSE) && 
   25753              : #line 2268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25754              : ( reload_completed)))
   25755              :                 return NULL;
   25756              :               return gen_split_1081 (insn, operands);
   25757              : 
   25758              :             case 4:
   25759              :               if (!((
   25760              : #line 2266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25761              : (TARGET_SSE) && 
   25762              : #line 2252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25763              : (TARGET_MMX_WITH_SSE)) && 
   25764              : #line 2268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25765              : ( reload_completed)))
   25766              :                 return NULL;
   25767              :               return gen_split_1083 (insn, operands);
   25768              : 
   25769              :             case 5:
   25770              :               if (!((
   25771              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25772              : (TARGET_SSE) && 
   25773              : #line 415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25774              : (TARGET_AVX512F)) && 
   25775              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25776              : ( reload_completed)))
   25777              :                 return NULL;
   25778              :               return gen_split_1306 (insn, operands);
   25779              : 
   25780              :             case 6:
   25781              :               if (!((
   25782              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25783              : (TARGET_SSE) && 
   25784              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25785              : (TARGET_AVX)) && 
   25786              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25787              : ( reload_completed)))
   25788              :                 return NULL;
   25789              :               return gen_split_1308 (insn, operands);
   25790              : 
   25791              :             case 7:
   25792              :               if (!((
   25793              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25794              : (TARGET_SSE) && 
   25795              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25796              : (TARGET_SSE2)) && 
   25797              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25798              : ( reload_completed)))
   25799              :                 return NULL;
   25800              :               return gen_split_1310 (insn, operands);
   25801              : 
   25802              :             case 8:
   25803              :               if (!((
   25804              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25805              : (TARGET_SSE) && 
   25806              : #line 417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25807              : (TARGET_AVX512F)) && 
   25808              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25809              : ( reload_completed)))
   25810              :                 return NULL;
   25811              :               return gen_split_1312 (insn, operands);
   25812              : 
   25813              :             case 9:
   25814              :               if (!((
   25815              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25816              : (TARGET_SSE) && 
   25817              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25818              : (TARGET_AVX)) && 
   25819              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25820              : ( reload_completed)))
   25821              :                 return NULL;
   25822              :               return gen_split_1314 (insn, operands);
   25823              : 
   25824              :             case 10:
   25825              :               if (!((
   25826              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25827              : (TARGET_SSE) && 
   25828              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25829              : (TARGET_SSE2)) && 
   25830              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25831              : ( reload_completed)))
   25832              :                 return NULL;
   25833              :               return gen_split_1316 (insn, operands);
   25834              : 
   25835              :             case 11:
   25836              :               if (!((
   25837              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25838              : (TARGET_SSE) && 
   25839              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25840              : (TARGET_AVX512F)) && 
   25841              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25842              : ( reload_completed)))
   25843              :                 return NULL;
   25844              :               return gen_split_1318 (insn, operands);
   25845              : 
   25846              :             case 12:
   25847              :               if (!((
   25848              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25849              : (TARGET_SSE) && 
   25850              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25851              : (TARGET_AVX)) && 
   25852              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25853              : ( reload_completed)))
   25854              :                 return NULL;
   25855              :               return gen_split_1320 (insn, operands);
   25856              : 
   25857              :             case 13:
   25858              :               if (!(
   25859              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25860              : (TARGET_SSE) && 
   25861              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25862              : ( reload_completed)))
   25863              :                 return NULL;
   25864              :               return gen_split_1322 (insn, operands);
   25865              : 
   25866              :             case 14:
   25867              :               if (!((
   25868              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25869              : (TARGET_SSE) && 
   25870              : #line 420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25871              : (TARGET_AVX512F)) && 
   25872              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25873              : ( reload_completed)))
   25874              :                 return NULL;
   25875              :               return gen_split_1324 (insn, operands);
   25876              : 
   25877              :             case 15:
   25878              :               if (!((
   25879              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25880              : (TARGET_SSE) && 
   25881              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25882              : (TARGET_AVX)) && 
   25883              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25884              : ( reload_completed)))
   25885              :                 return NULL;
   25886              :               return gen_split_1326 (insn, operands);
   25887              : 
   25888              :             case 16:
   25889              :               if (!((
   25890              : #line 2626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25891              : (TARGET_SSE) && 
   25892              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25893              : (TARGET_SSE2)) && 
   25894              : #line 2628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25895              : ( reload_completed)))
   25896              :                 return NULL;
   25897              :               return gen_split_1328 (insn, operands);
   25898              : 
   25899              :             default:
   25900              :               return NULL;
   25901              :             }
   25902              : 
   25903              :         default:
   25904              :           return NULL;
   25905              :         }
   25906              : 
   25907              :     case LTU:
   25908              :     case UNLT:
   25909              :       operands[1] = x5;
   25910              :       if (!ix86_carry_flag_operator (operands[1], E_VOIDmode))
   25911              :         return NULL;
   25912              :       x8 = XEXP (x5, 0);
   25913              :       if (GET_CODE (x8) != REG
   25914              :           || REGNO (x8) != 17)
   25915              :         return NULL;
   25916              :       x9 = XEXP (x5, 1);
   25917              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   25918              :         return NULL;
   25919              :       x6 = XVECEXP (x1, 0, 1);
   25920              :       if (pattern237 (x6, 
   25921              : E_CCmode, 
   25922              : 17) != 0
   25923              :           || !general_reg_operand (operands[0], E_VOIDmode)
   25924              :           || !
   25925              : #line 29022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25926              : (! TARGET_PARTIAL_REG_STALL && reload_completed
   25927              :    && (GET_MODE (operands[0]) == HImode
   25928              :        || (GET_MODE (operands[0]) == QImode && TARGET_PROMOTE_QImode))))
   25929              :         return NULL;
   25930              :       return gen_split_1014 (insn, operands);
   25931              : 
   25932              :     case ABS:
   25933              :       x6 = XVECEXP (x1, 0, 1);
   25934              :       if (GET_CODE (x6) != USE)
   25935              :         return NULL;
   25936              :       x8 = XEXP (x5, 0);
   25937              :       operands[1] = x8;
   25938              :       x7 = XEXP (x6, 0);
   25939              :       operands[2] = x7;
   25940              :       switch (GET_MODE (operands[0]))
   25941              :         {
   25942              :         case E_V2SFmode:
   25943              :           if (pattern1066 (x4) != 0
   25944              :               || !(
   25945              : #line 724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25946              : (TARGET_MMX_WITH_SSE) && 
   25947              : #line 726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25948              : ( reload_completed)))
   25949              :             return NULL;
   25950              :           return gen_split_1069 (insn, operands);
   25951              : 
   25952              :         case E_V2BFmode:
   25953              :           if (pattern1067 (x4, 
   25954              : E_V2BFmode) != 0
   25955              :               || !(
   25956              : #line 2283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25957              : (TARGET_SSE) && 
   25958              : #line 2285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25959              : ( reload_completed)))
   25960              :             return NULL;
   25961              :           return gen_split_1084 (insn, operands);
   25962              : 
   25963              :         case E_V4BFmode:
   25964              :           if (pattern1067 (x4, 
   25965              : E_V4BFmode) != 0
   25966              :               || !((
   25967              : #line 2283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25968              : (TARGET_SSE) && 
   25969              : #line 2251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25970              : (TARGET_MMX_WITH_SSE)) && 
   25971              : #line 2285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25972              : ( reload_completed)))
   25973              :             return NULL;
   25974              :           return gen_split_1085 (insn, operands);
   25975              : 
   25976              :         case E_V2HFmode:
   25977              :           if (pattern1067 (x4, 
   25978              : E_V2HFmode) != 0
   25979              :               || !(
   25980              : #line 2283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25981              : (TARGET_SSE) && 
   25982              : #line 2285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25983              : ( reload_completed)))
   25984              :             return NULL;
   25985              :           return gen_split_1086 (insn, operands);
   25986              : 
   25987              :         case E_V4HFmode:
   25988              :           if (pattern1067 (x4, 
   25989              : E_V4HFmode) != 0
   25990              :               || !((
   25991              : #line 2283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25992              : (TARGET_SSE) && 
   25993              : #line 2252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25994              : (TARGET_MMX_WITH_SSE)) && 
   25995              : #line 2285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25996              : ( reload_completed)))
   25997              :             return NULL;
   25998              :           return gen_split_1087 (insn, operands);
   25999              : 
   26000              :         case E_V16SFmode:
   26001              :           if (pattern1064 (x4, 
   26002              : E_V16SFmode) != 0
   26003              :               || !((
   26004              : #line 2651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26005              : (TARGET_SSE) && 
   26006              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26007              : (TARGET_AVX512F)) && 
   26008              : #line 2653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26009              : ( reload_completed)))
   26010              :             return NULL;
   26011              :           return gen_split_1329 (insn, operands);
   26012              : 
   26013              :         case E_V8SFmode:
   26014              :           if (pattern1064 (x4, 
   26015              : E_V8SFmode) != 0
   26016              :               || !((
   26017              : #line 2651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26018              : (TARGET_SSE) && 
   26019              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26020              : (TARGET_AVX)) && 
   26021              : #line 2653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26022              : ( reload_completed)))
   26023              :             return NULL;
   26024              :           return gen_split_1330 (insn, operands);
   26025              : 
   26026              :         case E_V4SFmode:
   26027              :           if (pattern1064 (x4, 
   26028              : E_V4SFmode) != 0
   26029              :               || !(
   26030              : #line 2651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26031              : (TARGET_SSE) && 
   26032              : #line 2653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26033              : ( reload_completed)))
   26034              :             return NULL;
   26035              :           return gen_split_1331 (insn, operands);
   26036              : 
   26037              :         case E_V8DFmode:
   26038              :           if (pattern1064 (x4, 
   26039              : E_V8DFmode) != 0
   26040              :               || !((
   26041              : #line 2651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26042              : (TARGET_SSE) && 
   26043              : #line 383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26044              : (TARGET_AVX512F)) && 
   26045              : #line 2653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26046              : ( reload_completed)))
   26047              :             return NULL;
   26048              :           return gen_split_1332 (insn, operands);
   26049              : 
   26050              :         case E_V4DFmode:
   26051              :           if (pattern1064 (x4, 
   26052              : E_V4DFmode) != 0
   26053              :               || !((
   26054              : #line 2651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26055              : (TARGET_SSE) && 
   26056              : #line 383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26057              : (TARGET_AVX)) && 
   26058              : #line 2653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26059              : ( reload_completed)))
   26060              :             return NULL;
   26061              :           return gen_split_1333 (insn, operands);
   26062              : 
   26063              :         case E_V2DFmode:
   26064              :           if (pattern1064 (x4, 
   26065              : E_V2DFmode) != 0
   26066              :               || !((
   26067              : #line 2651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26068              : (TARGET_SSE) && 
   26069              : #line 384 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26070              : (TARGET_SSE2)) && 
   26071              : #line 2653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26072              : ( reload_completed)))
   26073              :             return NULL;
   26074              :           return gen_split_1334 (insn, operands);
   26075              : 
   26076              :         default:
   26077              :           return NULL;
   26078              :         }
   26079              : 
   26080              :     default:
   26081              :       return NULL;
   26082              :     }
   26083              : }
   26084              : 
   26085              :  rtx_insn *
   26086              : split_52 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26087              : {
   26088              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26089              :   rtx x2, x3, x4, x5, x6, x7;
   26090              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26091              :   x2 = XEXP (x1, 0);
   26092              :   operands[0] = x2;
   26093              :   x3 = XEXP (x1, 1);
   26094              :   x4 = XEXP (x3, 0);
   26095              :   switch (GET_CODE (x4))
   26096              :     {
   26097              :     case LT:
   26098              :       x5 = XEXP (x4, 0);
   26099              :       operands[1] = x5;
   26100              :       x6 = XEXP (x4, 1);
   26101              :       operands[2] = x6;
   26102              :       x7 = XEXP (x3, 1);
   26103              :       operands[3] = x7;
   26104              :       switch (GET_MODE (operands[0]))
   26105              :         {
   26106              :         case E_V4HImode:
   26107              :           if (pattern959 (x3, 
   26108              : E_V4HImode) != 0
   26109              :               || !
   26110              : #line 3944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26111              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()))
   26112              :             return NULL;
   26113              :           return gen_split_1096 (insn, operands);
   26114              : 
   26115              :         case E_V2SImode:
   26116              :           if (pattern959 (x3, 
   26117              : E_V2SImode) != 0
   26118              :               || !
   26119              : #line 3944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26120              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()))
   26121              :             return NULL;
   26122              :           return gen_split_1097 (insn, operands);
   26123              : 
   26124              :         case E_V1DImode:
   26125              :           if (pattern959 (x3, 
   26126              : E_V1DImode) != 0
   26127              :               || !
   26128              : #line 3944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26129              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()))
   26130              :             return NULL;
   26131              :           return gen_split_1098 (insn, operands);
   26132              : 
   26133              :         case E_V2HImode:
   26134              :           if (pattern959 (x3, 
   26135              : E_V2HImode) != 0
   26136              :               || !
   26137              : #line 4007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26138              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   26139              :             return NULL;
   26140              :           return gen_split_1100 (insn, operands);
   26141              : 
   26142              :         default:
   26143              :           return NULL;
   26144              :         }
   26145              : 
   26146              :     case REG:
   26147              :       switch (pattern243 (x3))
   26148              :         {
   26149              :         case 0:
   26150              :           if (!
   26151              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26152              : (TARGET_AVX512F && reload_completed))
   26153              :             return NULL;
   26154              :           return gen_split_1231 (insn, operands);
   26155              : 
   26156              :         case 1:
   26157              :           if (!
   26158              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26159              : (TARGET_AVX512F && reload_completed))
   26160              :             return NULL;
   26161              :           return gen_split_1234 (insn, operands);
   26162              : 
   26163              :         case 2:
   26164              :           if (!(
   26165              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26166              : (TARGET_AVX512F && reload_completed) && 
   26167              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26168              : (TARGET_AVX512BW)))
   26169              :             return NULL;
   26170              :           return gen_split_1237 (insn, operands);
   26171              : 
   26172              :         case 3:
   26173              :           if (!(
   26174              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26175              : (TARGET_AVX512F && reload_completed) && 
   26176              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26177              : (TARGET_AVX512BW)))
   26178              :             return NULL;
   26179              :           return gen_split_1240 (insn, operands);
   26180              : 
   26181              :         default:
   26182              :           return NULL;
   26183              :         }
   26184              : 
   26185              :     default:
   26186              :       return NULL;
   26187              :     }
   26188              : }
   26189              : 
   26190              :  rtx_insn *
   26191              : split_53 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26192              : {
   26193              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26194              :   rtx x2, x3, x4, x5;
   26195              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26196              :   x2 = XEXP (x1, 1);
   26197              :   x3 = XEXP (x2, 0);
   26198              :   if (GET_CODE (x3) != SS_TRUNCATE)
   26199              :     return NULL;
   26200              :   x4 = XEXP (x2, 1);
   26201              :   if (GET_CODE (x4) != SS_TRUNCATE)
   26202              :     return NULL;
   26203              :   x5 = XEXP (x1, 0);
   26204              :   operands[0] = x5;
   26205              :   switch (pattern273 (x2))
   26206              :     {
   26207              :     case 0:
   26208              :       if (!(
   26209              : #line 4805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26210              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26211              : #line 4810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26212              : ( reload_completed
   26213              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26214              :         return NULL;
   26215              :       return gen_split_1144 (insn, operands);
   26216              : 
   26217              :     case 1:
   26218              :       if (!(
   26219              : #line 4846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26220              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26221              : #line 4851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26222              : ( reload_completed
   26223              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26224              :         return NULL;
   26225              :       return gen_split_1146 (insn, operands);
   26226              : 
   26227              :     default:
   26228              :       return NULL;
   26229              :     }
   26230              : }
   26231              : 
   26232              :  rtx_insn *
   26233              : split_54 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26234              : {
   26235              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26236              :   rtx x2, x3, x4, x5, x6, x7;
   26237              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26238              :   x2 = XEXP (x1, 1);
   26239              :   x3 = XEXP (x2, 0);
   26240              :   if (GET_CODE (x3) != VEC_DUPLICATE)
   26241              :     return NULL;
   26242              :   x4 = XEXP (x1, 0);
   26243              :   operands[0] = x4;
   26244              :   x5 = XEXP (x3, 0);
   26245              :   operands[2] = x5;
   26246              :   x6 = XEXP (x2, 1);
   26247              :   operands[1] = x6;
   26248              :   x7 = XEXP (x2, 2);
   26249              :   operands[3] = x7;
   26250              :   if (!const_int_operand (operands[3], E_SImode))
   26251              :     return NULL;
   26252              :   switch (GET_MODE (operands[0]))
   26253              :     {
   26254              :     case E_V4HFmode:
   26255              :       if (pattern1075 (x2, 
   26256              : E_V4HFmode, 
   26257              : E_HFmode) != 0
   26258              :           || !
   26259              : #line 5371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26260              : (TARGET_MMX_WITH_SSE && TARGET_SSE4_1 && reload_completed
   26261              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   26262              :        < GET_MODE_NUNITS (V4HFmode))))
   26263              :         return NULL;
   26264              :       return gen_split_1156 (insn, operands);
   26265              : 
   26266              :     case E_V4BFmode:
   26267              :       if (pattern1075 (x2, 
   26268              : E_V4BFmode, 
   26269              : E_BFmode) != 0
   26270              :           || !
   26271              : #line 5371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26272              : (TARGET_MMX_WITH_SSE && TARGET_SSE4_1 && reload_completed
   26273              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   26274              :        < GET_MODE_NUNITS (V4BFmode))))
   26275              :         return NULL;
   26276              :       return gen_split_1157 (insn, operands);
   26277              : 
   26278              :     case E_V4HImode:
   26279              :       if (pattern1075 (x2, 
   26280              : E_V4HImode, 
   26281              : E_HImode) != 0
   26282              :           || !
   26283              : #line 5371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26284              : (TARGET_MMX_WITH_SSE && TARGET_SSE4_1 && reload_completed
   26285              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   26286              :        < GET_MODE_NUNITS (V4HImode))))
   26287              :         return NULL;
   26288              :       return gen_split_1158 (insn, operands);
   26289              : 
   26290              :     case E_V2HFmode:
   26291              :       if (pattern1075 (x2, 
   26292              : E_V2HFmode, 
   26293              : E_HFmode) != 0
   26294              :           || !
   26295              : #line 6047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26296              : (TARGET_SSE4_1 && reload_completed
   26297              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   26298              :        < GET_MODE_NUNITS (V2HFmode))))
   26299              :         return NULL;
   26300              :       return gen_split_1164 (insn, operands);
   26301              : 
   26302              :     case E_V2BFmode:
   26303              :       if (pattern1075 (x2, 
   26304              : E_V2BFmode, 
   26305              : E_BFmode) != 0
   26306              :           || !
   26307              : #line 6047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26308              : (TARGET_SSE4_1 && reload_completed
   26309              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   26310              :        < GET_MODE_NUNITS (V2BFmode))))
   26311              :         return NULL;
   26312              :       return gen_split_1165 (insn, operands);
   26313              : 
   26314              :     case E_V2HImode:
   26315              :       if (pattern1075 (x2, 
   26316              : E_V2HImode, 
   26317              : E_HImode) != 0
   26318              :           || !
   26319              : #line 6047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26320              : (TARGET_SSE4_1 && reload_completed
   26321              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   26322              :        < GET_MODE_NUNITS (V2HImode))))
   26323              :         return NULL;
   26324              :       return gen_split_1166 (insn, operands);
   26325              : 
   26326              :     default:
   26327              :       return NULL;
   26328              :     }
   26329              : }
   26330              : 
   26331              :  rtx_insn *
   26332              : split_56 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26333              : {
   26334              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26335              :   rtx x2, x3, x4, x5;
   26336              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26337              :   x2 = XEXP (x1, 1);
   26338              :   if (GET_MODE (x2) != E_DImode)
   26339              :     return NULL;
   26340              :   x3 = XEXP (x2, 0);
   26341              :   if (GET_CODE (x3) != UNSPEC
   26342              :       || XVECLEN (x3, 0) != 1
   26343              :       || XINT (x3, 1) != 50
   26344              :       || GET_MODE (x3) != E_SImode)
   26345              :     return NULL;
   26346              :   x4 = XEXP (x1, 0);
   26347              :   operands[0] = x4;
   26348              :   if (!register_operand (operands[0], E_DImode))
   26349              :     return NULL;
   26350              :   x5 = XVECEXP (x3, 0, 0);
   26351              :   switch (GET_CODE (x5))
   26352              :     {
   26353              :     case LT:
   26354              :       switch (pattern998 (x5))
   26355              :         {
   26356              :         case 0:
   26357              :           if (!((
   26358              : #line 22519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26359              : (TARGET_64BIT && TARGET_SSE) && 
   26360              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26361              : (TARGET_AVX)) && 
   26362              : #line 22521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26363              : ( reload_completed)))
   26364              :             return NULL;
   26365              :           return gen_split_3525 (insn, operands);
   26366              : 
   26367              :         case 1:
   26368              :           if (!(
   26369              : #line 22519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26370              : (TARGET_64BIT && TARGET_SSE) && 
   26371              : #line 22521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26372              : ( reload_completed)))
   26373              :             return NULL;
   26374              :           return gen_split_3527 (insn, operands);
   26375              : 
   26376              :         case 2:
   26377              :           if (!((
   26378              : #line 22519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26379              : (TARGET_64BIT && TARGET_SSE) && 
   26380              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26381              : (TARGET_AVX)) && 
   26382              : #line 22521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26383              : ( reload_completed)))
   26384              :             return NULL;
   26385              :           return gen_split_3529 (insn, operands);
   26386              : 
   26387              :         case 3:
   26388              :           if (!((
   26389              : #line 22519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26390              : (TARGET_64BIT && TARGET_SSE) && 
   26391              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26392              : (TARGET_SSE2)) && 
   26393              : #line 22521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26394              : ( reload_completed)))
   26395              :             return NULL;
   26396              :           return gen_split_3531 (insn, operands);
   26397              : 
   26398              :         case 4:
   26399              :           if (!(
   26400              : #line 22834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26401              : (TARGET_64BIT && TARGET_SSE2) && 
   26402              : #line 22836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26403              : ( 1)))
   26404              :             return NULL;
   26405              :           return gen_split_3567 (insn, operands);
   26406              : 
   26407              :         default:
   26408              :           return NULL;
   26409              :         }
   26410              : 
   26411              :     case SUBREG:
   26412              :       switch (pattern1101 (x5))
   26413              :         {
   26414              :         case 0:
   26415              :           if (!((
   26416              : #line 22544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26417              : (TARGET_64BIT && TARGET_SSE) && 
   26418              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26419              : (TARGET_AVX)) && 
   26420              : #line 22546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26421              : ( reload_completed)))
   26422              :             return NULL;
   26423              :           return gen_split_3533 (insn, operands);
   26424              : 
   26425              :         case 1:
   26426              :           if (!(
   26427              : #line 22544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26428              : (TARGET_64BIT && TARGET_SSE) && 
   26429              : #line 22546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26430              : ( reload_completed)))
   26431              :             return NULL;
   26432              :           return gen_split_3535 (insn, operands);
   26433              : 
   26434              :         case 2:
   26435              :           if (!((
   26436              : #line 22544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26437              : (TARGET_64BIT && TARGET_SSE) && 
   26438              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26439              : (TARGET_AVX)) && 
   26440              : #line 22546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26441              : ( reload_completed)))
   26442              :             return NULL;
   26443              :           return gen_split_3537 (insn, operands);
   26444              : 
   26445              :         case 3:
   26446              :           if (!((
   26447              : #line 22544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26448              : (TARGET_64BIT && TARGET_SSE) && 
   26449              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26450              : (TARGET_SSE2)) && 
   26451              : #line 22546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26452              : ( reload_completed)))
   26453              :             return NULL;
   26454              :           return gen_split_3539 (insn, operands);
   26455              : 
   26456              :         case 4:
   26457              :           if (!((
   26458              : #line 22583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26459              : (TARGET_64BIT && TARGET_SSE) && 
   26460              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26461              : (TARGET_AVX)) && 
   26462              : #line 22585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26463              : ( reload_completed)))
   26464              :             return NULL;
   26465              :           return gen_split_3545 (insn, operands);
   26466              : 
   26467              :         case 5:
   26468              :           if (!(
   26469              : #line 22583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26470              : (TARGET_64BIT && TARGET_SSE) && 
   26471              : #line 22585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26472              : ( reload_completed)))
   26473              :             return NULL;
   26474              :           return gen_split_3547 (insn, operands);
   26475              : 
   26476              :         case 6:
   26477              :           if (!((
   26478              : #line 22583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26479              : (TARGET_64BIT && TARGET_SSE) && 
   26480              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26481              : (TARGET_AVX)) && 
   26482              : #line 22585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26483              : ( reload_completed)))
   26484              :             return NULL;
   26485              :           return gen_split_3549 (insn, operands);
   26486              : 
   26487              :         case 7:
   26488              :           if (!((
   26489              : #line 22583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26490              : (TARGET_64BIT && TARGET_SSE) && 
   26491              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26492              : (TARGET_SSE2)) && 
   26493              : #line 22585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26494              : ( reload_completed)))
   26495              :             return NULL;
   26496              :           return gen_split_3551 (insn, operands);
   26497              : 
   26498              :         default:
   26499              :           return NULL;
   26500              :         }
   26501              : 
   26502              :     case VEC_MERGE:
   26503              :       switch (pattern988 (x5))
   26504              :         {
   26505              :         case 0:
   26506              :           if (!((
   26507              : #line 22863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26508              : (TARGET_64BIT && TARGET_SSE2) && 
   26509              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26510              : (TARGET_AVX2)) && 
   26511              : #line 22865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26512              : ( 1)))
   26513              :             return NULL;
   26514              :           return gen_split_3568 (insn, operands);
   26515              : 
   26516              :         case 1:
   26517              :           if (!(
   26518              : #line 22863 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26519              : (TARGET_64BIT && TARGET_SSE2) && 
   26520              : #line 22865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26521              : ( 1)))
   26522              :             return NULL;
   26523              :           return gen_split_3569 (insn, operands);
   26524              : 
   26525              :         default:
   26526              :           return NULL;
   26527              :         }
   26528              : 
   26529              :     default:
   26530              :       return NULL;
   26531              :     }
   26532              : }
   26533              : 
   26534              :  rtx_insn *
   26535              : split_59 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26536              : {
   26537              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26538              :   rtx x2, x3, x4, x5;
   26539              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26540              :   x2 = XEXP (x1, 1);
   26541              :   x3 = XEXP (x2, 0);
   26542              :   operands[1] = x3;
   26543              :   x4 = XEXP (x2, 2);
   26544              :   if (GET_CODE (x4) != UNSPEC
   26545              :       || XVECLEN (x4, 0) != 3
   26546              :       || XINT (x4, 1) != 60)
   26547              :     return NULL;
   26548              :   switch (pattern1020 (x2))
   26549              :     {
   26550              :     case 0:
   26551              :       x5 = XVECEXP (x4, 0, 0);
   26552              :       operands[3] = x5;
   26553              :       switch (pattern1475 (x2))
   26554              :         {
   26555              :         case 0:
   26556              :           if (((
   26557              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26558              : (TARGET_SSE && ix86_pre_reload_split ()
   26559              :    && ((rtx_equal_p (operands[1], operands[3])
   26560              :         && rtx_equal_p (operands[2], operands[4]))
   26561              :        || (rtx_equal_p (operands[1], operands[4])
   26562              :            && rtx_equal_p (operands[2], operands[3])))
   26563              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26564              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26565              : (TARGET_AVX512FP16)) && 
   26566              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26567              : ( 1)))
   26568              :             return gen_split_1335 (insn, operands);
   26569              :           break;
   26570              : 
   26571              :         case 1:
   26572              :           if (((
   26573              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26574              : (TARGET_SSE && ix86_pre_reload_split ()
   26575              :    && ((rtx_equal_p (operands[1], operands[3])
   26576              :         && rtx_equal_p (operands[2], operands[4]))
   26577              :        || (rtx_equal_p (operands[1], operands[4])
   26578              :            && rtx_equal_p (operands[2], operands[3])))
   26579              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26580              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26581              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26582              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26583              : ( 1)))
   26584              :             return gen_split_1336 (insn, operands);
   26585              :           break;
   26586              : 
   26587              :         case 2:
   26588              :           if (((
   26589              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26590              : (TARGET_SSE && ix86_pre_reload_split ()
   26591              :    && ((rtx_equal_p (operands[1], operands[3])
   26592              :         && rtx_equal_p (operands[2], operands[4]))
   26593              :        || (rtx_equal_p (operands[1], operands[4])
   26594              :            && rtx_equal_p (operands[2], operands[3])))
   26595              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26596              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26597              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26598              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26599              : ( 1)))
   26600              :             return gen_split_1337 (insn, operands);
   26601              :           break;
   26602              : 
   26603              :         case 3:
   26604              :           if (((
   26605              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26606              : (TARGET_SSE && ix86_pre_reload_split ()
   26607              :    && ((rtx_equal_p (operands[1], operands[3])
   26608              :         && rtx_equal_p (operands[2], operands[4]))
   26609              :        || (rtx_equal_p (operands[1], operands[4])
   26610              :            && rtx_equal_p (operands[2], operands[3])))
   26611              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26612              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26613              : (TARGET_AVX512F)) && 
   26614              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26615              : ( 1)))
   26616              :             return gen_split_1338 (insn, operands);
   26617              :           break;
   26618              : 
   26619              :         case 4:
   26620              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   26621              :               && pattern1691 (
   26622              : E_V8SFmode) == 0
   26623              :               && ((
   26624              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26625              : (TARGET_SSE && ix86_pre_reload_split ()
   26626              :    && ((rtx_equal_p (operands[1], operands[3])
   26627              :         && rtx_equal_p (operands[2], operands[4]))
   26628              :        || (rtx_equal_p (operands[1], operands[4])
   26629              :            && rtx_equal_p (operands[2], operands[3])))
   26630              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26631              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26632              : (TARGET_AVX)) && 
   26633              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26634              : ( 1)))
   26635              :             return gen_split_1339 (insn, operands);
   26636              :           if (vector_operand (operands[1], E_V8SFmode)
   26637              :               && pattern1692 (
   26638              : E_V8SImode, 
   26639              : E_V8SFmode) == 0
   26640              :               && ((
   26641              : #line 4482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26642              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26643              :   /* LT or GE 0 */
   26644              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26645              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26646              : (TARGET_AVX)) && 
   26647              : #line 4486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26648              : ( 1)))
   26649              :             return gen_split_1388 (insn, operands);
   26650              :           break;
   26651              : 
   26652              :         case 5:
   26653              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   26654              :               && pattern1691 (
   26655              : E_V4SFmode) == 0
   26656              :               && (
   26657              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26658              : (TARGET_SSE && ix86_pre_reload_split ()
   26659              :    && ((rtx_equal_p (operands[1], operands[3])
   26660              :         && rtx_equal_p (operands[2], operands[4]))
   26661              :        || (rtx_equal_p (operands[1], operands[4])
   26662              :            && rtx_equal_p (operands[2], operands[3])))
   26663              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26664              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26665              : ( 1)))
   26666              :             return gen_split_1340 (insn, operands);
   26667              :           if (vector_operand (operands[1], E_V4SFmode)
   26668              :               && pattern1692 (
   26669              : E_V4SImode, 
   26670              : E_V4SFmode) == 0
   26671              :               && (
   26672              : #line 4482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26673              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26674              :   /* LT or GE 0 */
   26675              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26676              : #line 4486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26677              : ( 1)))
   26678              :             return gen_split_1389 (insn, operands);
   26679              :           break;
   26680              : 
   26681              :         case 6:
   26682              :           if (((
   26683              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26684              : (TARGET_SSE && ix86_pre_reload_split ()
   26685              :    && ((rtx_equal_p (operands[1], operands[3])
   26686              :         && rtx_equal_p (operands[2], operands[4]))
   26687              :        || (rtx_equal_p (operands[1], operands[4])
   26688              :            && rtx_equal_p (operands[2], operands[3])))
   26689              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26690              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26691              : (TARGET_AVX512F)) && 
   26692              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26693              : ( 1)))
   26694              :             return gen_split_1341 (insn, operands);
   26695              :           break;
   26696              : 
   26697              :         case 7:
   26698              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   26699              :               && pattern1691 (
   26700              : E_V4DFmode) == 0
   26701              :               && ((
   26702              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26703              : (TARGET_SSE && ix86_pre_reload_split ()
   26704              :    && ((rtx_equal_p (operands[1], operands[3])
   26705              :         && rtx_equal_p (operands[2], operands[4]))
   26706              :        || (rtx_equal_p (operands[1], operands[4])
   26707              :            && rtx_equal_p (operands[2], operands[3])))
   26708              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26709              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26710              : (TARGET_AVX)) && 
   26711              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26712              : ( 1)))
   26713              :             return gen_split_1342 (insn, operands);
   26714              :           if (vector_operand (operands[1], E_V4DFmode)
   26715              :               && pattern1692 (
   26716              : E_V4DImode, 
   26717              : E_V4DFmode) == 0
   26718              :               && ((
   26719              : #line 4482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26720              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26721              :   /* LT or GE 0 */
   26722              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26723              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26724              : (TARGET_AVX)) && 
   26725              : #line 4486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26726              : ( 1)))
   26727              :             return gen_split_1390 (insn, operands);
   26728              :           break;
   26729              : 
   26730              :         case 8:
   26731              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   26732              :               && pattern1691 (
   26733              : E_V2DFmode) == 0
   26734              :               && ((
   26735              : #line 3382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26736              : (TARGET_SSE && ix86_pre_reload_split ()
   26737              :    && ((rtx_equal_p (operands[1], operands[3])
   26738              :         && rtx_equal_p (operands[2], operands[4]))
   26739              :        || (rtx_equal_p (operands[1], operands[4])
   26740              :            && rtx_equal_p (operands[2], operands[3])))
   26741              :    && (INTVAL (operands[5]) == 1 || INTVAL (operands[5]) == 14)) && 
   26742              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26743              : (TARGET_SSE2)) && 
   26744              : #line 3389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26745              : ( 1)))
   26746              :             return gen_split_1343 (insn, operands);
   26747              :           if (vector_operand (operands[1], E_V2DFmode)
   26748              :               && pattern1692 (
   26749              : E_V2DImode, 
   26750              : E_V2DFmode) == 0
   26751              :               && ((
   26752              : #line 4482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26753              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26754              :   /* LT or GE 0 */
   26755              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26756              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26757              : (TARGET_SSE2)) && 
   26758              : #line 4486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26759              : ( 1)))
   26760              :             return gen_split_1391 (insn, operands);
   26761              :           break;
   26762              : 
   26763              :         case 9:
   26764              :           if ((
   26765              : #line 4511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26766              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26767              :   /* LT or GE 0 */
   26768              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26769              : #line 4515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26770              : ( 1)))
   26771              :             return gen_split_1392 (insn, operands);
   26772              :           break;
   26773              : 
   26774              :         case 10:
   26775              :           if ((
   26776              : #line 4511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26777              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26778              :   /* LT or GE 0 */
   26779              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26780              : #line 4515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26781              : ( 1)))
   26782              :             return gen_split_1393 (insn, operands);
   26783              :           break;
   26784              : 
   26785              :         case 11:
   26786              :           if (((
   26787              : #line 4511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26788              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26789              :   /* LT or GE 0 */
   26790              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26791              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26792              : (TARGET_AVX)) && 
   26793              : #line 4515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26794              : ( 1)))
   26795              :             return gen_split_1394 (insn, operands);
   26796              :           break;
   26797              : 
   26798              :         case 12:
   26799              :           if (((
   26800              : #line 4511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26801              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26802              :   /* LT or GE 0 */
   26803              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26804              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26805              : (TARGET_AVX)) && 
   26806              : #line 4515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26807              : ( 1)))
   26808              :             return gen_split_1395 (insn, operands);
   26809              :           break;
   26810              : 
   26811              :         case 13:
   26812              :           if (((
   26813              : #line 18494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26814              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26815              :   /* LT or GE 0 */
   26816              :   && ((INTVAL (operands[5]) == 1 && !MEM_P (operands[2]))
   26817              :       || (INTVAL (operands[5]) == 5 && !MEM_P (operands[1])))) && 
   26818              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26819              : (TARGET_AVX2)) && 
   26820              : #line 18499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26821              : ( 1)))
   26822              :             return gen_split_3402 (insn, operands);
   26823              :           break;
   26824              : 
   26825              :         case 14:
   26826              :           if ((
   26827              : #line 18494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26828              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26829              :   /* LT or GE 0 */
   26830              :   && ((INTVAL (operands[5]) == 1 && !MEM_P (operands[2]))
   26831              :       || (INTVAL (operands[5]) == 5 && !MEM_P (operands[1])))) && 
   26832              : #line 18499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26833              : ( 1)))
   26834              :             return gen_split_3403 (insn, operands);
   26835              :           break;
   26836              : 
   26837              :         default:
   26838              :           break;
   26839              :         }
   26840              :       if (GET_CODE (x5) != SUBREG)
   26841              :         return NULL;
   26842              :       switch (pattern1478 (x2))
   26843              :         {
   26844              :         case 0:
   26845              :           if (!(
   26846              : #line 4546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26847              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26848              :   /* not LT or GE 0 */
   26849              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26850              : #line 4550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26851              : ( 1)))
   26852              :             return NULL;
   26853              :           return gen_split_1396 (insn, operands);
   26854              : 
   26855              :         case 1:
   26856              :           if (!(
   26857              : #line 4546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26858              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26859              :   /* not LT or GE 0 */
   26860              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26861              : #line 4550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26862              : ( 1)))
   26863              :             return NULL;
   26864              :           return gen_split_1397 (insn, operands);
   26865              : 
   26866              :         case 2:
   26867              :           if (!((
   26868              : #line 4546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26869              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26870              :   /* not LT or GE 0 */
   26871              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26872              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26873              : (TARGET_AVX)) && 
   26874              : #line 4550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26875              : ( 1)))
   26876              :             return NULL;
   26877              :           return gen_split_1398 (insn, operands);
   26878              : 
   26879              :         case 3:
   26880              :           if (!((
   26881              : #line 4546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26882              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26883              :   /* not LT or GE 0 */
   26884              :   && ((INTVAL (operands[5]) == 1) || (INTVAL (operands[5]) == 5))) && 
   26885              : #line 608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26886              : (TARGET_AVX)) && 
   26887              : #line 4550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26888              : ( 1)))
   26889              :             return NULL;
   26890              :           return gen_split_1399 (insn, operands);
   26891              : 
   26892              :         case 4:
   26893              :           if (!((
   26894              : #line 18523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26895              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26896              :   && GET_MODE_CLASS (GET_MODE (operands[3])) == MODE_VECTOR_INT
   26897              :   && GET_MODE_SIZE (GET_MODE (operands[3])) == 32
   26898              :   /* LT or GE 0 */
   26899              :   && ((INTVAL (operands[5]) == 1 && !MEM_P (operands[1]))
   26900              :       || (INTVAL (operands[5]) == 5 && !MEM_P (operands[2])))) && 
   26901              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26902              : (TARGET_AVX2)) && 
   26903              : #line 18530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26904              : ( 1)))
   26905              :             return NULL;
   26906              :           return gen_split_3404 (insn, operands);
   26907              : 
   26908              :         case 5:
   26909              :           if (!(
   26910              : #line 18523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26911              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26912              :   && GET_MODE_CLASS (GET_MODE (operands[3])) == MODE_VECTOR_INT
   26913              :   && GET_MODE_SIZE (GET_MODE (operands[3])) == 16
   26914              :   /* LT or GE 0 */
   26915              :   && ((INTVAL (operands[5]) == 1 && !MEM_P (operands[1]))
   26916              :       || (INTVAL (operands[5]) == 5 && !MEM_P (operands[2])))) && 
   26917              : #line 18530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26918              : ( 1)))
   26919              :             return NULL;
   26920              :           return gen_split_3405 (insn, operands);
   26921              : 
   26922              :         default:
   26923              :           return NULL;
   26924              :         }
   26925              : 
   26926              :     case 1:
   26927              :       if (!((
   26928              : #line 18555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26929              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26930              :   /* LT or GE 0 */
   26931              :   && ((INTVAL (operands[5]) == 1 && !MEM_P (operands[1]))
   26932              :       || (INTVAL (operands[5]) == 5 && !MEM_P (operands[2])))) && 
   26933              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26934              : (TARGET_AVX2)) && 
   26935              : #line 18560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26936              : ( 1)))
   26937              :         return NULL;
   26938              :       return gen_split_3406 (insn, operands);
   26939              : 
   26940              :     case 2:
   26941              :       if (!(
   26942              : #line 18555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26943              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   26944              :   /* LT or GE 0 */
   26945              :   && ((INTVAL (operands[5]) == 1 && !MEM_P (operands[1]))
   26946              :       || (INTVAL (operands[5]) == 5 && !MEM_P (operands[2])))) && 
   26947              : #line 18560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26948              : ( 1)))
   26949              :         return NULL;
   26950              :       return gen_split_3407 (insn, operands);
   26951              : 
   26952              :     default:
   26953              :       return NULL;
   26954              :     }
   26955              : }
   26956              : 
   26957              :  rtx_insn *
   26958              : split_64 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26959              : {
   26960              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26961              :   rtx x2, x3, x4, x5, x6;
   26962              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26963              :   x2 = XEXP (x1, 1);
   26964              :   x3 = XEXP (x2, 0);
   26965              :   switch (GET_CODE (x3))
   26966              :     {
   26967              :     case NOT:
   26968              :       x4 = XEXP (x3, 0);
   26969              :       switch (GET_CODE (x4))
   26970              :         {
   26971              :         case GT:
   26972              :         case LT:
   26973              :           operands[1] = x4;
   26974              :           switch (pattern688 (x2))
   26975              :             {
   26976              :             case 0:
   26977              :               if (!((
   26978              : #line 3444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26979              : (TARGET_SSE && ix86_pre_reload_split ()
   26980              :    && rtx_equal_p (operands[2], operands[4])) && 
   26981              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26982              : (TARGET_AVX)) && 
   26983              : #line 3447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26984              : ( 1)))
   26985              :                 return NULL;
   26986              :               return gen_split_1348 (insn, operands);
   26987              : 
   26988              :             case 1:
   26989              :               if (!(
   26990              : #line 3444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26991              : (TARGET_SSE && ix86_pre_reload_split ()
   26992              :    && rtx_equal_p (operands[2], operands[4])) && 
   26993              : #line 3447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26994              : ( 1)))
   26995              :                 return NULL;
   26996              :               return gen_split_1349 (insn, operands);
   26997              : 
   26998              :             case 2:
   26999              :               if (!((
   27000              : #line 3444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27001              : (TARGET_SSE && ix86_pre_reload_split ()
   27002              :    && rtx_equal_p (operands[2], operands[4])) && 
   27003              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27004              : (TARGET_AVX)) && 
   27005              : #line 3447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27006              : ( 1)))
   27007              :                 return NULL;
   27008              :               return gen_split_1350 (insn, operands);
   27009              : 
   27010              :             case 3:
   27011              :               if (!((
   27012              : #line 3444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27013              : (TARGET_SSE && ix86_pre_reload_split ()
   27014              :    && rtx_equal_p (operands[2], operands[4])) && 
   27015              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27016              : (TARGET_SSE2)) && 
   27017              : #line 3447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27018              : ( 1)))
   27019              :                 return NULL;
   27020              :               return gen_split_1351 (insn, operands);
   27021              : 
   27022              :             default:
   27023              :               return NULL;
   27024              :             }
   27025              : 
   27026              :         default:
   27027              :           return NULL;
   27028              :         }
   27029              : 
   27030              :     case GT:
   27031              :     case LT:
   27032              :       operands[1] = x3;
   27033              :       switch (pattern531 (x2))
   27034              :         {
   27035              :         case 0:
   27036              :           if (((
   27037              : #line 3466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27038              : (TARGET_SSE && ix86_pre_reload_split ()
   27039              :    && rtx_equal_p (operands[2], operands[4])) && 
   27040              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27041              : (TARGET_AVX)) && 
   27042              : #line 3469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27043              : ( 1)))
   27044              :             return gen_split_1352 (insn, operands);
   27045              :           break;
   27046              : 
   27047              :         case 1:
   27048              :           if ((
   27049              : #line 3466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27050              : (TARGET_SSE && ix86_pre_reload_split ()
   27051              :    && rtx_equal_p (operands[2], operands[4])) && 
   27052              : #line 3469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27053              : ( 1)))
   27054              :             return gen_split_1353 (insn, operands);
   27055              :           break;
   27056              : 
   27057              :         case 2:
   27058              :           if (((
   27059              : #line 3466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27060              : (TARGET_SSE && ix86_pre_reload_split ()
   27061              :    && rtx_equal_p (operands[2], operands[4])) && 
   27062              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27063              : (TARGET_AVX)) && 
   27064              : #line 3469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27065              : ( 1)))
   27066              :             return gen_split_1354 (insn, operands);
   27067              :           break;
   27068              : 
   27069              :         case 3:
   27070              :           if (((
   27071              : #line 3466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27072              : (TARGET_SSE && ix86_pre_reload_split ()
   27073              :    && rtx_equal_p (operands[2], operands[4])) && 
   27074              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27075              : (TARGET_SSE2)) && 
   27076              : #line 3469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27077              : ( 1)))
   27078              :             return gen_split_1355 (insn, operands);
   27079              :           break;
   27080              : 
   27081              :         default:
   27082              :           break;
   27083              :         }
   27084              :       x4 = XEXP (x3, 0);
   27085              :       operands[1] = x4;
   27086              :       switch (pattern533 (x2))
   27087              :         {
   27088              :         case 0:
   27089              :           if (!((
   27090              : #line 17767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27091              : (TARGET_SSE4_2 && ix86_pre_reload_split ()) && 
   27092              : #line 693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27093              : (TARGET_AVX2)) && 
   27094              : #line 17769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27095              : ( 1)))
   27096              :             return NULL;
   27097              :           return gen_split_3339 (insn, operands);
   27098              : 
   27099              :         case 1:
   27100              :           if (!(
   27101              : #line 17767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27102              : (TARGET_SSE4_2 && ix86_pre_reload_split ()) && 
   27103              : #line 17769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27104              : ( 1)))
   27105              :             return NULL;
   27106              :           return gen_split_3340 (insn, operands);
   27107              : 
   27108              :         case 2:
   27109              :           switch (GET_MODE (operands[0]))
   27110              :             {
   27111              :             case E_V4DImode:
   27112              :               if (pattern959 (x2, 
   27113              : E_V4DImode) != 0)
   27114              :                 return NULL;
   27115              :               if (((
   27116              : #line 17784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27117              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   27118              : #line 693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27119              : (TARGET_AVX2)) && 
   27120              : #line 17786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27121              : ( 1)))
   27122              :                 return gen_split_3341 (insn, operands);
   27123              :               if (!(
   27124              : #line 17796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27125              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   27126              : #line 765 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27127              : (TARGET_AVX2)))
   27128              :                 return NULL;
   27129              :               return gen_split_3347 (insn, operands);
   27130              : 
   27131              :             case E_V2DImode:
   27132              :               if (pattern959 (x2, 
   27133              : E_V2DImode) != 0)
   27134              :                 return NULL;
   27135              :               if ((
   27136              : #line 17784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27137              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   27138              : #line 17786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27139              : ( 1)))
   27140              :                 return gen_split_3342 (insn, operands);
   27141              :               if (!
   27142              : #line 17796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27143              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   27144              :                 return NULL;
   27145              :               return gen_split_3348 (insn, operands);
   27146              : 
   27147              :             case E_V16HImode:
   27148              :               if (pattern959 (x2, 
   27149              : E_V16HImode) != 0
   27150              :                   || !(
   27151              : #line 17796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27152              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   27153              : #line 763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27154              : (TARGET_AVX2)))
   27155              :                 return NULL;
   27156              :               return gen_split_3343 (insn, operands);
   27157              : 
   27158              :             case E_V8HImode:
   27159              :               if (pattern959 (x2, 
   27160              : E_V8HImode) != 0
   27161              :                   || !
   27162              : #line 17796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27163              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   27164              :                 return NULL;
   27165              :               return gen_split_3344 (insn, operands);
   27166              : 
   27167              :             case E_V8SImode:
   27168              :               if (pattern959 (x2, 
   27169              : E_V8SImode) != 0
   27170              :                   || !(
   27171              : #line 17796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27172              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   27173              : #line 764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27174              : (TARGET_AVX2)))
   27175              :                 return NULL;
   27176              :               return gen_split_3345 (insn, operands);
   27177              : 
   27178              :             case E_V4SImode:
   27179              :               if (pattern959 (x2, 
   27180              : E_V4SImode) != 0
   27181              :                   || !
   27182              : #line 17796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27183              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   27184              :                 return NULL;
   27185              :               return gen_split_3346 (insn, operands);
   27186              : 
   27187              :             default:
   27188              :               return NULL;
   27189              :             }
   27190              : 
   27191              :         default:
   27192              :           return NULL;
   27193              :         }
   27194              : 
   27195              :     case REG:
   27196              :     case SUBREG:
   27197              :     case MEM:
   27198              :       operands[1] = x3;
   27199              :       x5 = XEXP (x2, 1);
   27200              :       operands[2] = x5;
   27201              :       switch (GET_MODE (operands[0]))
   27202              :         {
   27203              :         case E_V32BFmode:
   27204              :           if (pattern960 (x2, 
   27205              : E_V32BFmode) != 0
   27206              :               || !((
   27207              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27208              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27209              : #line 415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27210              : (TARGET_AVX512F)) && 
   27211              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27212              : ( 1)))
   27213              :             return NULL;
   27214              :           return gen_split_1568 (insn, operands);
   27215              : 
   27216              :         case E_V16BFmode:
   27217              :           if (pattern960 (x2, 
   27218              : E_V16BFmode) != 0
   27219              :               || !((
   27220              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27221              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27222              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27223              : (TARGET_AVX)) && 
   27224              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27225              : ( 1)))
   27226              :             return NULL;
   27227              :           return gen_split_1569 (insn, operands);
   27228              : 
   27229              :         case E_V8BFmode:
   27230              :           if (pattern960 (x2, 
   27231              : E_V8BFmode) != 0
   27232              :               || !((
   27233              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27234              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27235              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27236              : (TARGET_SSE2)) && 
   27237              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27238              : ( 1)))
   27239              :             return NULL;
   27240              :           return gen_split_1570 (insn, operands);
   27241              : 
   27242              :         case E_V32HFmode:
   27243              :           if (pattern960 (x2, 
   27244              : E_V32HFmode) != 0
   27245              :               || !((
   27246              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27247              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27248              : #line 417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27249              : (TARGET_AVX512F)) && 
   27250              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27251              : ( 1)))
   27252              :             return NULL;
   27253              :           return gen_split_1571 (insn, operands);
   27254              : 
   27255              :         case E_V16HFmode:
   27256              :           if (pattern960 (x2, 
   27257              : E_V16HFmode) != 0
   27258              :               || !((
   27259              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27260              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27261              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27262              : (TARGET_AVX)) && 
   27263              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27264              : ( 1)))
   27265              :             return NULL;
   27266              :           return gen_split_1572 (insn, operands);
   27267              : 
   27268              :         case E_V8HFmode:
   27269              :           if (pattern960 (x2, 
   27270              : E_V8HFmode) != 0
   27271              :               || !((
   27272              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27273              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27274              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27275              : (TARGET_SSE2)) && 
   27276              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27277              : ( 1)))
   27278              :             return NULL;
   27279              :           return gen_split_1573 (insn, operands);
   27280              : 
   27281              :         case E_V16SFmode:
   27282              :           if (pattern960 (x2, 
   27283              : E_V16SFmode) != 0
   27284              :               || !((
   27285              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27286              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27287              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27288              : (TARGET_AVX512F)) && 
   27289              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27290              : ( 1)))
   27291              :             return NULL;
   27292              :           return gen_split_1574 (insn, operands);
   27293              : 
   27294              :         case E_V8SFmode:
   27295              :           if (pattern960 (x2, 
   27296              : E_V8SFmode) != 0
   27297              :               || !((
   27298              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27299              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27300              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27301              : (TARGET_AVX)) && 
   27302              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27303              : ( 1)))
   27304              :             return NULL;
   27305              :           return gen_split_1575 (insn, operands);
   27306              : 
   27307              :         case E_V4SFmode:
   27308              :           if (pattern960 (x2, 
   27309              : E_V4SFmode) != 0
   27310              :               || !(
   27311              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27312              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27313              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27314              : ( 1)))
   27315              :             return NULL;
   27316              :           return gen_split_1576 (insn, operands);
   27317              : 
   27318              :         case E_V8DFmode:
   27319              :           if (pattern960 (x2, 
   27320              : E_V8DFmode) != 0
   27321              :               || !((
   27322              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27323              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27324              : #line 420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27325              : (TARGET_AVX512F)) && 
   27326              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27327              : ( 1)))
   27328              :             return NULL;
   27329              :           return gen_split_1577 (insn, operands);
   27330              : 
   27331              :         case E_V4DFmode:
   27332              :           if (pattern960 (x2, 
   27333              : E_V4DFmode) != 0
   27334              :               || !((
   27335              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27336              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27337              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27338              : (TARGET_AVX)) && 
   27339              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27340              : ( 1)))
   27341              :             return NULL;
   27342              :           return gen_split_1578 (insn, operands);
   27343              : 
   27344              :         case E_V2DFmode:
   27345              :           if (pattern960 (x2, 
   27346              : E_V2DFmode) != 0
   27347              :               || !((
   27348              : #line 5879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27349              : (TARGET_SSE && ix86_pre_reload_split ()) && 
   27350              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27351              : (TARGET_SSE2)) && 
   27352              : #line 5881 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27353              : ( 1)))
   27354              :             return NULL;
   27355              :           return gen_split_1579 (insn, operands);
   27356              : 
   27357              :         default:
   27358              :           return NULL;
   27359              :         }
   27360              : 
   27361              :     case AND:
   27362              :       return split_63 (x1, insn);
   27363              : 
   27364              :     case IOR:
   27365              :       x4 = XEXP (x3, 0);
   27366              :       switch (GET_CODE (x4))
   27367              :         {
   27368              :         case REG:
   27369              :         case SUBREG:
   27370              :         case MEM:
   27371              :         case NOT:
   27372              :           switch (pattern537 (x2))
   27373              :             {
   27374              :             case 0:
   27375              :               if (!((
   27376              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27377              : ((64 == 64 || TARGET_AVX512VL
   27378              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27379              :    && ix86_pre_reload_split ()
   27380              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27381              :                     STRIP_UNARY (operands[4]))
   27382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27383              :                        STRIP_UNARY (operands[4]))
   27384              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27385              :                        STRIP_UNARY (operands[3]))
   27386              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27387              :                        STRIP_UNARY (operands[3])))) && 
   27388              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27389              : (TARGET_AVX512F)) && 
   27390              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27391              : ( 1)))
   27392              :                 return NULL;
   27393              :               return gen_split_1748 (insn, operands);
   27394              : 
   27395              :             case 1:
   27396              :               if (!((
   27397              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27398              : ((32 == 64 || TARGET_AVX512VL
   27399              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27400              :    && ix86_pre_reload_split ()
   27401              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27402              :                     STRIP_UNARY (operands[4]))
   27403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27404              :                        STRIP_UNARY (operands[4]))
   27405              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27406              :                        STRIP_UNARY (operands[3]))
   27407              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27408              :                        STRIP_UNARY (operands[3])))) && 
   27409              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27410              : (TARGET_AVX)) && 
   27411              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27412              : ( 1)))
   27413              :                 return NULL;
   27414              :               return gen_split_1775 (insn, operands);
   27415              : 
   27416              :             case 2:
   27417              :               if (!(
   27418              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27419              : ((16 == 64 || TARGET_AVX512VL
   27420              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27421              :    && ix86_pre_reload_split ()
   27422              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27423              :                     STRIP_UNARY (operands[4]))
   27424              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27425              :                        STRIP_UNARY (operands[4]))
   27426              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27427              :                        STRIP_UNARY (operands[3]))
   27428              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27429              :                        STRIP_UNARY (operands[3])))) && 
   27430              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27431              : ( 1)))
   27432              :                 return NULL;
   27433              :               return gen_split_1802 (insn, operands);
   27434              : 
   27435              :             case 3:
   27436              :               if (!((
   27437              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27438              : ((64 == 64 || TARGET_AVX512VL
   27439              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27440              :    && ix86_pre_reload_split ()
   27441              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27442              :                     STRIP_UNARY (operands[4]))
   27443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27444              :                        STRIP_UNARY (operands[4]))
   27445              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27446              :                        STRIP_UNARY (operands[3]))
   27447              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27448              :                        STRIP_UNARY (operands[3])))) && 
   27449              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27450              : (TARGET_AVX512F)) && 
   27451              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27452              : ( 1)))
   27453              :                 return NULL;
   27454              :               return gen_split_1829 (insn, operands);
   27455              : 
   27456              :             case 4:
   27457              :               if (!((
   27458              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27459              : ((32 == 64 || TARGET_AVX512VL
   27460              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27461              :    && ix86_pre_reload_split ()
   27462              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27463              :                     STRIP_UNARY (operands[4]))
   27464              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27465              :                        STRIP_UNARY (operands[4]))
   27466              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27467              :                        STRIP_UNARY (operands[3]))
   27468              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27469              :                        STRIP_UNARY (operands[3])))) && 
   27470              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27471              : (TARGET_AVX)) && 
   27472              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27473              : ( 1)))
   27474              :                 return NULL;
   27475              :               return gen_split_1856 (insn, operands);
   27476              : 
   27477              :             case 5:
   27478              :               if (!(
   27479              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27480              : ((16 == 64 || TARGET_AVX512VL
   27481              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27482              :    && ix86_pre_reload_split ()
   27483              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27484              :                     STRIP_UNARY (operands[4]))
   27485              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27486              :                        STRIP_UNARY (operands[4]))
   27487              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27488              :                        STRIP_UNARY (operands[3]))
   27489              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27490              :                        STRIP_UNARY (operands[3])))) && 
   27491              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27492              : ( 1)))
   27493              :                 return NULL;
   27494              :               return gen_split_1883 (insn, operands);
   27495              : 
   27496              :             case 6:
   27497              :               if (!((
   27498              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27499              : ((64 == 64 || TARGET_AVX512VL
   27500              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27501              :    && ix86_pre_reload_split ()
   27502              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27503              :                     STRIP_UNARY (operands[4]))
   27504              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27505              :                        STRIP_UNARY (operands[4]))
   27506              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27507              :                        STRIP_UNARY (operands[3]))
   27508              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27509              :                        STRIP_UNARY (operands[3])))) && 
   27510              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27511              : (TARGET_AVX512F)) && 
   27512              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27513              : ( 1)))
   27514              :                 return NULL;
   27515              :               return gen_split_1910 (insn, operands);
   27516              : 
   27517              :             case 7:
   27518              :               if (!((
   27519              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27520              : ((32 == 64 || TARGET_AVX512VL
   27521              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27522              :    && ix86_pre_reload_split ()
   27523              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27524              :                     STRIP_UNARY (operands[4]))
   27525              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27526              :                        STRIP_UNARY (operands[4]))
   27527              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27528              :                        STRIP_UNARY (operands[3]))
   27529              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27530              :                        STRIP_UNARY (operands[3])))) && 
   27531              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27532              : (TARGET_AVX)) && 
   27533              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27534              : ( 1)))
   27535              :                 return NULL;
   27536              :               return gen_split_1937 (insn, operands);
   27537              : 
   27538              :             case 8:
   27539              :               if (!(
   27540              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27541              : ((16 == 64 || TARGET_AVX512VL
   27542              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27543              :    && ix86_pre_reload_split ()
   27544              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27545              :                     STRIP_UNARY (operands[4]))
   27546              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27547              :                        STRIP_UNARY (operands[4]))
   27548              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27549              :                        STRIP_UNARY (operands[3]))
   27550              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27551              :                        STRIP_UNARY (operands[3])))) && 
   27552              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27553              : ( 1)))
   27554              :                 return NULL;
   27555              :               return gen_split_1964 (insn, operands);
   27556              : 
   27557              :             case 9:
   27558              :               if (!((
   27559              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27560              : ((64 == 64 || TARGET_AVX512VL
   27561              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27562              :    && ix86_pre_reload_split ()
   27563              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27564              :                     STRIP_UNARY (operands[4]))
   27565              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27566              :                        STRIP_UNARY (operands[4]))
   27567              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27568              :                        STRIP_UNARY (operands[3]))
   27569              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27570              :                        STRIP_UNARY (operands[3])))) && 
   27571              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27572              : (TARGET_AVX512F)) && 
   27573              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27574              : ( 1)))
   27575              :                 return NULL;
   27576              :               return gen_split_1991 (insn, operands);
   27577              : 
   27578              :             case 10:
   27579              :               if (!((
   27580              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27581              : ((32 == 64 || TARGET_AVX512VL
   27582              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27583              :    && ix86_pre_reload_split ()
   27584              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27585              :                     STRIP_UNARY (operands[4]))
   27586              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27587              :                        STRIP_UNARY (operands[4]))
   27588              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27589              :                        STRIP_UNARY (operands[3]))
   27590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27591              :                        STRIP_UNARY (operands[3])))) && 
   27592              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27593              : (TARGET_AVX)) && 
   27594              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27595              : ( 1)))
   27596              :                 return NULL;
   27597              :               return gen_split_2018 (insn, operands);
   27598              : 
   27599              :             case 11:
   27600              :               if (!(
   27601              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27602              : ((16 == 64 || TARGET_AVX512VL
   27603              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27604              :    && ix86_pre_reload_split ()
   27605              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27606              :                     STRIP_UNARY (operands[4]))
   27607              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27608              :                        STRIP_UNARY (operands[4]))
   27609              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27610              :                        STRIP_UNARY (operands[3]))
   27611              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27612              :                        STRIP_UNARY (operands[3])))) && 
   27613              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27614              : ( 1)))
   27615              :                 return NULL;
   27616              :               return gen_split_2045 (insn, operands);
   27617              : 
   27618              :             case 12:
   27619              :               if (!((
   27620              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27621              : ((64 == 64 || TARGET_AVX512VL
   27622              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27623              :    && ix86_pre_reload_split ()
   27624              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27625              :                     STRIP_UNARY (operands[4]))
   27626              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27627              :                        STRIP_UNARY (operands[4]))
   27628              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27629              :                        STRIP_UNARY (operands[3]))
   27630              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27631              :                        STRIP_UNARY (operands[3])))) && 
   27632              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27633              : (TARGET_AVX512F)) && 
   27634              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27635              : ( 1)))
   27636              :                 return NULL;
   27637              :               return gen_split_1751 (insn, operands);
   27638              : 
   27639              :             case 13:
   27640              :               if (!((
   27641              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27642              : ((32 == 64 || TARGET_AVX512VL
   27643              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27644              :    && ix86_pre_reload_split ()
   27645              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27646              :                     STRIP_UNARY (operands[4]))
   27647              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27648              :                        STRIP_UNARY (operands[4]))
   27649              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27650              :                        STRIP_UNARY (operands[3]))
   27651              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27652              :                        STRIP_UNARY (operands[3])))) && 
   27653              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27654              : (TARGET_AVX)) && 
   27655              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27656              : ( 1)))
   27657              :                 return NULL;
   27658              :               return gen_split_1778 (insn, operands);
   27659              : 
   27660              :             case 14:
   27661              :               if (!(
   27662              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27663              : ((16 == 64 || TARGET_AVX512VL
   27664              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27665              :    && ix86_pre_reload_split ()
   27666              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27667              :                     STRIP_UNARY (operands[4]))
   27668              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27669              :                        STRIP_UNARY (operands[4]))
   27670              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27671              :                        STRIP_UNARY (operands[3]))
   27672              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27673              :                        STRIP_UNARY (operands[3])))) && 
   27674              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27675              : ( 1)))
   27676              :                 return NULL;
   27677              :               return gen_split_1805 (insn, operands);
   27678              : 
   27679              :             case 15:
   27680              :               if (!((
   27681              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27682              : ((64 == 64 || TARGET_AVX512VL
   27683              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27684              :    && ix86_pre_reload_split ()
   27685              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27686              :                     STRIP_UNARY (operands[4]))
   27687              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27688              :                        STRIP_UNARY (operands[4]))
   27689              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27690              :                        STRIP_UNARY (operands[3]))
   27691              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27692              :                        STRIP_UNARY (operands[3])))) && 
   27693              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27694              : (TARGET_AVX512F)) && 
   27695              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27696              : ( 1)))
   27697              :                 return NULL;
   27698              :               return gen_split_1832 (insn, operands);
   27699              : 
   27700              :             case 16:
   27701              :               if (!((
   27702              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27703              : ((32 == 64 || TARGET_AVX512VL
   27704              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27705              :    && ix86_pre_reload_split ()
   27706              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27707              :                     STRIP_UNARY (operands[4]))
   27708              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27709              :                        STRIP_UNARY (operands[4]))
   27710              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27711              :                        STRIP_UNARY (operands[3]))
   27712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27713              :                        STRIP_UNARY (operands[3])))) && 
   27714              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27715              : (TARGET_AVX)) && 
   27716              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27717              : ( 1)))
   27718              :                 return NULL;
   27719              :               return gen_split_1859 (insn, operands);
   27720              : 
   27721              :             case 17:
   27722              :               if (!(
   27723              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27724              : ((16 == 64 || TARGET_AVX512VL
   27725              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27726              :    && ix86_pre_reload_split ()
   27727              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27728              :                     STRIP_UNARY (operands[4]))
   27729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27730              :                        STRIP_UNARY (operands[4]))
   27731              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27732              :                        STRIP_UNARY (operands[3]))
   27733              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27734              :                        STRIP_UNARY (operands[3])))) && 
   27735              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27736              : ( 1)))
   27737              :                 return NULL;
   27738              :               return gen_split_1886 (insn, operands);
   27739              : 
   27740              :             case 18:
   27741              :               if (!((
   27742              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27743              : ((64 == 64 || TARGET_AVX512VL
   27744              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27745              :    && ix86_pre_reload_split ()
   27746              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27747              :                     STRIP_UNARY (operands[4]))
   27748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27749              :                        STRIP_UNARY (operands[4]))
   27750              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27751              :                        STRIP_UNARY (operands[3]))
   27752              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27753              :                        STRIP_UNARY (operands[3])))) && 
   27754              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27755              : (TARGET_AVX512F)) && 
   27756              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27757              : ( 1)))
   27758              :                 return NULL;
   27759              :               return gen_split_1913 (insn, operands);
   27760              : 
   27761              :             case 19:
   27762              :               if (!((
   27763              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27764              : ((32 == 64 || TARGET_AVX512VL
   27765              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27766              :    && ix86_pre_reload_split ()
   27767              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27768              :                     STRIP_UNARY (operands[4]))
   27769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27770              :                        STRIP_UNARY (operands[4]))
   27771              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27772              :                        STRIP_UNARY (operands[3]))
   27773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27774              :                        STRIP_UNARY (operands[3])))) && 
   27775              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27776              : (TARGET_AVX)) && 
   27777              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27778              : ( 1)))
   27779              :                 return NULL;
   27780              :               return gen_split_1940 (insn, operands);
   27781              : 
   27782              :             case 20:
   27783              :               if (!(
   27784              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27785              : ((16 == 64 || TARGET_AVX512VL
   27786              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27787              :    && ix86_pre_reload_split ()
   27788              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27789              :                     STRIP_UNARY (operands[4]))
   27790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27791              :                        STRIP_UNARY (operands[4]))
   27792              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27793              :                        STRIP_UNARY (operands[3]))
   27794              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27795              :                        STRIP_UNARY (operands[3])))) && 
   27796              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27797              : ( 1)))
   27798              :                 return NULL;
   27799              :               return gen_split_1967 (insn, operands);
   27800              : 
   27801              :             case 21:
   27802              :               if (!((
   27803              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27804              : ((64 == 64 || TARGET_AVX512VL
   27805              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27806              :    && ix86_pre_reload_split ()
   27807              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27808              :                     STRIP_UNARY (operands[4]))
   27809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27810              :                        STRIP_UNARY (operands[4]))
   27811              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27812              :                        STRIP_UNARY (operands[3]))
   27813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27814              :                        STRIP_UNARY (operands[3])))) && 
   27815              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27816              : (TARGET_AVX512F)) && 
   27817              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27818              : ( 1)))
   27819              :                 return NULL;
   27820              :               return gen_split_1994 (insn, operands);
   27821              : 
   27822              :             case 22:
   27823              :               if (!((
   27824              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27825              : ((32 == 64 || TARGET_AVX512VL
   27826              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27827              :    && ix86_pre_reload_split ()
   27828              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27829              :                     STRIP_UNARY (operands[4]))
   27830              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27831              :                        STRIP_UNARY (operands[4]))
   27832              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27833              :                        STRIP_UNARY (operands[3]))
   27834              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27835              :                        STRIP_UNARY (operands[3])))) && 
   27836              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27837              : (TARGET_AVX)) && 
   27838              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27839              : ( 1)))
   27840              :                 return NULL;
   27841              :               return gen_split_2021 (insn, operands);
   27842              : 
   27843              :             case 23:
   27844              :               if (!(
   27845              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27846              : ((16 == 64 || TARGET_AVX512VL
   27847              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27848              :    && ix86_pre_reload_split ()
   27849              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27850              :                     STRIP_UNARY (operands[4]))
   27851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27852              :                        STRIP_UNARY (operands[4]))
   27853              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27854              :                        STRIP_UNARY (operands[3]))
   27855              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27856              :                        STRIP_UNARY (operands[3])))) && 
   27857              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27858              : ( 1)))
   27859              :                 return NULL;
   27860              :               return gen_split_2048 (insn, operands);
   27861              : 
   27862              :             case 24:
   27863              :               if (!((
   27864              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27865              : ((64 == 64 || TARGET_AVX512VL
   27866              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27867              :    && ix86_pre_reload_split ()
   27868              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27869              :                     STRIP_UNARY (operands[4]))
   27870              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27871              :                        STRIP_UNARY (operands[4]))
   27872              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27873              :                        STRIP_UNARY (operands[3]))
   27874              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27875              :                        STRIP_UNARY (operands[3])))) && 
   27876              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27877              : (TARGET_AVX512F)) && 
   27878              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27879              : ( 1)))
   27880              :                 return NULL;
   27881              :               return gen_split_1754 (insn, operands);
   27882              : 
   27883              :             case 25:
   27884              :               if (!((
   27885              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27886              : ((32 == 64 || TARGET_AVX512VL
   27887              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27888              :    && ix86_pre_reload_split ()
   27889              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27890              :                     STRIP_UNARY (operands[4]))
   27891              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27892              :                        STRIP_UNARY (operands[4]))
   27893              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27894              :                        STRIP_UNARY (operands[3]))
   27895              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27896              :                        STRIP_UNARY (operands[3])))) && 
   27897              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27898              : (TARGET_AVX)) && 
   27899              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27900              : ( 1)))
   27901              :                 return NULL;
   27902              :               return gen_split_1781 (insn, operands);
   27903              : 
   27904              :             case 26:
   27905              :               if (!(
   27906              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27907              : ((16 == 64 || TARGET_AVX512VL
   27908              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27909              :    && ix86_pre_reload_split ()
   27910              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27911              :                     STRIP_UNARY (operands[4]))
   27912              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27913              :                        STRIP_UNARY (operands[4]))
   27914              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27915              :                        STRIP_UNARY (operands[3]))
   27916              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27917              :                        STRIP_UNARY (operands[3])))) && 
   27918              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27919              : ( 1)))
   27920              :                 return NULL;
   27921              :               return gen_split_1808 (insn, operands);
   27922              : 
   27923              :             case 27:
   27924              :               if (!((
   27925              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27926              : ((64 == 64 || TARGET_AVX512VL
   27927              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27928              :    && ix86_pre_reload_split ()
   27929              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27930              :                     STRIP_UNARY (operands[4]))
   27931              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27932              :                        STRIP_UNARY (operands[4]))
   27933              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27934              :                        STRIP_UNARY (operands[3]))
   27935              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27936              :                        STRIP_UNARY (operands[3])))) && 
   27937              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27938              : (TARGET_AVX512F)) && 
   27939              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27940              : ( 1)))
   27941              :                 return NULL;
   27942              :               return gen_split_1835 (insn, operands);
   27943              : 
   27944              :             case 28:
   27945              :               if (!((
   27946              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27947              : ((32 == 64 || TARGET_AVX512VL
   27948              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27949              :    && ix86_pre_reload_split ()
   27950              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27951              :                     STRIP_UNARY (operands[4]))
   27952              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27953              :                        STRIP_UNARY (operands[4]))
   27954              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27955              :                        STRIP_UNARY (operands[3]))
   27956              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27957              :                        STRIP_UNARY (operands[3])))) && 
   27958              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27959              : (TARGET_AVX)) && 
   27960              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27961              : ( 1)))
   27962              :                 return NULL;
   27963              :               return gen_split_1862 (insn, operands);
   27964              : 
   27965              :             case 29:
   27966              :               if (!(
   27967              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27968              : ((16 == 64 || TARGET_AVX512VL
   27969              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27970              :    && ix86_pre_reload_split ()
   27971              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27972              :                     STRIP_UNARY (operands[4]))
   27973              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27974              :                        STRIP_UNARY (operands[4]))
   27975              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27976              :                        STRIP_UNARY (operands[3]))
   27977              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27978              :                        STRIP_UNARY (operands[3])))) && 
   27979              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27980              : ( 1)))
   27981              :                 return NULL;
   27982              :               return gen_split_1889 (insn, operands);
   27983              : 
   27984              :             case 30:
   27985              :               if (!((
   27986              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27987              : ((64 == 64 || TARGET_AVX512VL
   27988              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27989              :    && ix86_pre_reload_split ()
   27990              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27991              :                     STRIP_UNARY (operands[4]))
   27992              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27993              :                        STRIP_UNARY (operands[4]))
   27994              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27995              :                        STRIP_UNARY (operands[3]))
   27996              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27997              :                        STRIP_UNARY (operands[3])))) && 
   27998              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27999              : (TARGET_AVX512F)) && 
   28000              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28001              : ( 1)))
   28002              :                 return NULL;
   28003              :               return gen_split_1916 (insn, operands);
   28004              : 
   28005              :             case 31:
   28006              :               if (!((
   28007              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28008              : ((32 == 64 || TARGET_AVX512VL
   28009              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28010              :    && ix86_pre_reload_split ()
   28011              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28012              :                     STRIP_UNARY (operands[4]))
   28013              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28014              :                        STRIP_UNARY (operands[4]))
   28015              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28016              :                        STRIP_UNARY (operands[3]))
   28017              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28018              :                        STRIP_UNARY (operands[3])))) && 
   28019              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28020              : (TARGET_AVX)) && 
   28021              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28022              : ( 1)))
   28023              :                 return NULL;
   28024              :               return gen_split_1943 (insn, operands);
   28025              : 
   28026              :             case 32:
   28027              :               if (!(
   28028              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28029              : ((16 == 64 || TARGET_AVX512VL
   28030              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28031              :    && ix86_pre_reload_split ()
   28032              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28033              :                     STRIP_UNARY (operands[4]))
   28034              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28035              :                        STRIP_UNARY (operands[4]))
   28036              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28037              :                        STRIP_UNARY (operands[3]))
   28038              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28039              :                        STRIP_UNARY (operands[3])))) && 
   28040              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28041              : ( 1)))
   28042              :                 return NULL;
   28043              :               return gen_split_1970 (insn, operands);
   28044              : 
   28045              :             case 33:
   28046              :               if (!((
   28047              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28048              : ((64 == 64 || TARGET_AVX512VL
   28049              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28050              :    && ix86_pre_reload_split ()
   28051              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28052              :                     STRIP_UNARY (operands[4]))
   28053              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28054              :                        STRIP_UNARY (operands[4]))
   28055              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28056              :                        STRIP_UNARY (operands[3]))
   28057              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28058              :                        STRIP_UNARY (operands[3])))) && 
   28059              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28060              : (TARGET_AVX512F)) && 
   28061              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28062              : ( 1)))
   28063              :                 return NULL;
   28064              :               return gen_split_1997 (insn, operands);
   28065              : 
   28066              :             case 34:
   28067              :               if (!((
   28068              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28069              : ((32 == 64 || TARGET_AVX512VL
   28070              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28071              :    && ix86_pre_reload_split ()
   28072              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28073              :                     STRIP_UNARY (operands[4]))
   28074              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28075              :                        STRIP_UNARY (operands[4]))
   28076              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28077              :                        STRIP_UNARY (operands[3]))
   28078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28079              :                        STRIP_UNARY (operands[3])))) && 
   28080              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28081              : (TARGET_AVX)) && 
   28082              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28083              : ( 1)))
   28084              :                 return NULL;
   28085              :               return gen_split_2024 (insn, operands);
   28086              : 
   28087              :             case 35:
   28088              :               if (!(
   28089              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28090              : ((16 == 64 || TARGET_AVX512VL
   28091              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28092              :    && ix86_pre_reload_split ()
   28093              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28094              :                     STRIP_UNARY (operands[4]))
   28095              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28096              :                        STRIP_UNARY (operands[4]))
   28097              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28098              :                        STRIP_UNARY (operands[3]))
   28099              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28100              :                        STRIP_UNARY (operands[3])))) && 
   28101              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28102              : ( 1)))
   28103              :                 return NULL;
   28104              :               return gen_split_2051 (insn, operands);
   28105              : 
   28106              :             case 36:
   28107              :               if (!((
   28108              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28109              : ((64 == 64 || TARGET_AVX512VL
   28110              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28111              :    && ix86_pre_reload_split ()) && 
   28112              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28113              : (TARGET_AVX512F)) && 
   28114              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28115              : ( 1)))
   28116              :                 return NULL;
   28117              :               return gen_split_3038 (insn, operands);
   28118              : 
   28119              :             case 37:
   28120              :               if (!((
   28121              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28122              : ((32 == 64 || TARGET_AVX512VL
   28123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28124              :    && ix86_pre_reload_split ()) && 
   28125              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28126              : (TARGET_AVX)) && 
   28127              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28128              : ( 1)))
   28129              :                 return NULL;
   28130              :               return gen_split_3047 (insn, operands);
   28131              : 
   28132              :             case 38:
   28133              :               if (!(
   28134              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28135              : ((16 == 64 || TARGET_AVX512VL
   28136              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28137              :    && ix86_pre_reload_split ()) && 
   28138              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28139              : ( 1)))
   28140              :                 return NULL;
   28141              :               return gen_split_3056 (insn, operands);
   28142              : 
   28143              :             case 39:
   28144              :               if (!((
   28145              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28146              : ((64 == 64 || TARGET_AVX512VL
   28147              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28148              :    && ix86_pre_reload_split ()) && 
   28149              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28150              : (TARGET_AVX512F)) && 
   28151              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28152              : ( 1)))
   28153              :                 return NULL;
   28154              :               return gen_split_3065 (insn, operands);
   28155              : 
   28156              :             case 40:
   28157              :               if (!((
   28158              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28159              : ((32 == 64 || TARGET_AVX512VL
   28160              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28161              :    && ix86_pre_reload_split ()) && 
   28162              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28163              : (TARGET_AVX)) && 
   28164              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28165              : ( 1)))
   28166              :                 return NULL;
   28167              :               return gen_split_3074 (insn, operands);
   28168              : 
   28169              :             case 41:
   28170              :               if (!(
   28171              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28172              : ((16 == 64 || TARGET_AVX512VL
   28173              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28174              :    && ix86_pre_reload_split ()) && 
   28175              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28176              : ( 1)))
   28177              :                 return NULL;
   28178              :               return gen_split_3083 (insn, operands);
   28179              : 
   28180              :             case 42:
   28181              :               if (!((
   28182              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28183              : ((64 == 64 || TARGET_AVX512VL
   28184              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28185              :    && ix86_pre_reload_split ()) && 
   28186              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28187              : (TARGET_AVX512F)) && 
   28188              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28189              : ( 1)))
   28190              :                 return NULL;
   28191              :               return gen_split_3092 (insn, operands);
   28192              : 
   28193              :             case 43:
   28194              :               if (!((
   28195              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28196              : ((32 == 64 || TARGET_AVX512VL
   28197              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28198              :    && ix86_pre_reload_split ()) && 
   28199              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28200              : (TARGET_AVX)) && 
   28201              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28202              : ( 1)))
   28203              :                 return NULL;
   28204              :               return gen_split_3101 (insn, operands);
   28205              : 
   28206              :             case 44:
   28207              :               if (!(
   28208              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28209              : ((16 == 64 || TARGET_AVX512VL
   28210              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28211              :    && ix86_pre_reload_split ()) && 
   28212              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28213              : ( 1)))
   28214              :                 return NULL;
   28215              :               return gen_split_3110 (insn, operands);
   28216              : 
   28217              :             case 45:
   28218              :               if (!((
   28219              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28220              : ((64 == 64 || TARGET_AVX512VL
   28221              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28222              :    && ix86_pre_reload_split ()) && 
   28223              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28224              : (TARGET_AVX512F)) && 
   28225              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28226              : ( 1)))
   28227              :                 return NULL;
   28228              :               return gen_split_3119 (insn, operands);
   28229              : 
   28230              :             case 46:
   28231              :               if (!((
   28232              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28233              : ((32 == 64 || TARGET_AVX512VL
   28234              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28235              :    && ix86_pre_reload_split ()) && 
   28236              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28237              : (TARGET_AVX)) && 
   28238              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28239              : ( 1)))
   28240              :                 return NULL;
   28241              :               return gen_split_3128 (insn, operands);
   28242              : 
   28243              :             case 47:
   28244              :               if (!(
   28245              : #line 14347 "/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              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28250              : ( 1)))
   28251              :                 return NULL;
   28252              :               return gen_split_3137 (insn, operands);
   28253              : 
   28254              :             default:
   28255              :               return NULL;
   28256              :             }
   28257              : 
   28258              :         case AND:
   28259              :           switch (pattern539 (x2))
   28260              :             {
   28261              :             case 0:
   28262              :               if (!((
   28263              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28264              : ((64 == 64 || TARGET_AVX512VL
   28265              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28266              :    && ix86_pre_reload_split ()
   28267              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28268              :                     STRIP_UNARY (operands[4]))
   28269              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28270              :                        STRIP_UNARY (operands[4]))
   28271              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28272              :                        STRIP_UNARY (operands[3]))
   28273              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28274              :                        STRIP_UNARY (operands[3])))) && 
   28275              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28276              : (TARGET_AVX512F)) && 
   28277              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28278              : ( 1)))
   28279              :                 return NULL;
   28280              :               return gen_split_2396 (insn, operands);
   28281              : 
   28282              :             case 1:
   28283              :               if (!((
   28284              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28285              : ((32 == 64 || TARGET_AVX512VL
   28286              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28287              :    && ix86_pre_reload_split ()
   28288              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28289              :                     STRIP_UNARY (operands[4]))
   28290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28291              :                        STRIP_UNARY (operands[4]))
   28292              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28293              :                        STRIP_UNARY (operands[3]))
   28294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28295              :                        STRIP_UNARY (operands[3])))) && 
   28296              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28297              : (TARGET_AVX)) && 
   28298              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28299              : ( 1)))
   28300              :                 return NULL;
   28301              :               return gen_split_2423 (insn, operands);
   28302              : 
   28303              :             case 2:
   28304              :               if (!(
   28305              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28306              : ((16 == 64 || TARGET_AVX512VL
   28307              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28308              :    && ix86_pre_reload_split ()
   28309              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28310              :                     STRIP_UNARY (operands[4]))
   28311              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28312              :                        STRIP_UNARY (operands[4]))
   28313              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28314              :                        STRIP_UNARY (operands[3]))
   28315              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28316              :                        STRIP_UNARY (operands[3])))) && 
   28317              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28318              : ( 1)))
   28319              :                 return NULL;
   28320              :               return gen_split_2450 (insn, operands);
   28321              : 
   28322              :             case 3:
   28323              :               if (!((
   28324              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28325              : ((64 == 64 || TARGET_AVX512VL
   28326              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28327              :    && ix86_pre_reload_split ()
   28328              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28329              :                     STRIP_UNARY (operands[4]))
   28330              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28331              :                        STRIP_UNARY (operands[4]))
   28332              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28333              :                        STRIP_UNARY (operands[3]))
   28334              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28335              :                        STRIP_UNARY (operands[3])))) && 
   28336              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28337              : (TARGET_AVX512F)) && 
   28338              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28339              : ( 1)))
   28340              :                 return NULL;
   28341              :               return gen_split_2477 (insn, operands);
   28342              : 
   28343              :             case 4:
   28344              :               if (!((
   28345              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28346              : ((32 == 64 || TARGET_AVX512VL
   28347              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28348              :    && ix86_pre_reload_split ()
   28349              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28350              :                     STRIP_UNARY (operands[4]))
   28351              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28352              :                        STRIP_UNARY (operands[4]))
   28353              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28354              :                        STRIP_UNARY (operands[3]))
   28355              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28356              :                        STRIP_UNARY (operands[3])))) && 
   28357              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28358              : (TARGET_AVX)) && 
   28359              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28360              : ( 1)))
   28361              :                 return NULL;
   28362              :               return gen_split_2504 (insn, operands);
   28363              : 
   28364              :             case 5:
   28365              :               if (!(
   28366              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28367              : ((16 == 64 || TARGET_AVX512VL
   28368              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28369              :    && ix86_pre_reload_split ()
   28370              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28371              :                     STRIP_UNARY (operands[4]))
   28372              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28373              :                        STRIP_UNARY (operands[4]))
   28374              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28375              :                        STRIP_UNARY (operands[3]))
   28376              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28377              :                        STRIP_UNARY (operands[3])))) && 
   28378              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28379              : ( 1)))
   28380              :                 return NULL;
   28381              :               return gen_split_2531 (insn, operands);
   28382              : 
   28383              :             case 6:
   28384              :               if (!((
   28385              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28386              : ((64 == 64 || TARGET_AVX512VL
   28387              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28388              :    && ix86_pre_reload_split ()
   28389              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28390              :                     STRIP_UNARY (operands[4]))
   28391              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28392              :                        STRIP_UNARY (operands[4]))
   28393              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28394              :                        STRIP_UNARY (operands[3]))
   28395              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28396              :                        STRIP_UNARY (operands[3])))) && 
   28397              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28398              : (TARGET_AVX512F)) && 
   28399              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28400              : ( 1)))
   28401              :                 return NULL;
   28402              :               return gen_split_2558 (insn, operands);
   28403              : 
   28404              :             case 7:
   28405              :               if (!((
   28406              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28407              : ((32 == 64 || TARGET_AVX512VL
   28408              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28409              :    && ix86_pre_reload_split ()
   28410              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28411              :                     STRIP_UNARY (operands[4]))
   28412              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28413              :                        STRIP_UNARY (operands[4]))
   28414              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28415              :                        STRIP_UNARY (operands[3]))
   28416              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28417              :                        STRIP_UNARY (operands[3])))) && 
   28418              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28419              : (TARGET_AVX)) && 
   28420              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28421              : ( 1)))
   28422              :                 return NULL;
   28423              :               return gen_split_2585 (insn, operands);
   28424              : 
   28425              :             case 8:
   28426              :               if (!(
   28427              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28428              : ((16 == 64 || TARGET_AVX512VL
   28429              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28430              :    && ix86_pre_reload_split ()
   28431              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28432              :                     STRIP_UNARY (operands[4]))
   28433              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28434              :                        STRIP_UNARY (operands[4]))
   28435              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28436              :                        STRIP_UNARY (operands[3]))
   28437              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28438              :                        STRIP_UNARY (operands[3])))) && 
   28439              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28440              : ( 1)))
   28441              :                 return NULL;
   28442              :               return gen_split_2612 (insn, operands);
   28443              : 
   28444              :             case 9:
   28445              :               if (!((
   28446              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28447              : ((64 == 64 || TARGET_AVX512VL
   28448              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28449              :    && ix86_pre_reload_split ()
   28450              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28451              :                     STRIP_UNARY (operands[4]))
   28452              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28453              :                        STRIP_UNARY (operands[4]))
   28454              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28455              :                        STRIP_UNARY (operands[3]))
   28456              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28457              :                        STRIP_UNARY (operands[3])))) && 
   28458              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28459              : (TARGET_AVX512F)) && 
   28460              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28461              : ( 1)))
   28462              :                 return NULL;
   28463              :               return gen_split_2639 (insn, operands);
   28464              : 
   28465              :             case 10:
   28466              :               if (!((
   28467              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28468              : ((32 == 64 || TARGET_AVX512VL
   28469              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28470              :    && ix86_pre_reload_split ()
   28471              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28472              :                     STRIP_UNARY (operands[4]))
   28473              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28474              :                        STRIP_UNARY (operands[4]))
   28475              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28476              :                        STRIP_UNARY (operands[3]))
   28477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28478              :                        STRIP_UNARY (operands[3])))) && 
   28479              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28480              : (TARGET_AVX)) && 
   28481              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28482              : ( 1)))
   28483              :                 return NULL;
   28484              :               return gen_split_2666 (insn, operands);
   28485              : 
   28486              :             case 11:
   28487              :               if (!(
   28488              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28489              : ((16 == 64 || TARGET_AVX512VL
   28490              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28491              :    && ix86_pre_reload_split ()
   28492              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28493              :                     STRIP_UNARY (operands[4]))
   28494              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28495              :                        STRIP_UNARY (operands[4]))
   28496              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28497              :                        STRIP_UNARY (operands[3]))
   28498              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28499              :                        STRIP_UNARY (operands[3])))) && 
   28500              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28501              : ( 1)))
   28502              :                 return NULL;
   28503              :               return gen_split_2693 (insn, operands);
   28504              : 
   28505              :             default:
   28506              :               return NULL;
   28507              :             }
   28508              : 
   28509              :         case IOR:
   28510              :           switch (pattern539 (x2))
   28511              :             {
   28512              :             case 0:
   28513              :               if (!((
   28514              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28515              : ((64 == 64 || TARGET_AVX512VL
   28516              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28517              :    && ix86_pre_reload_split ()
   28518              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28519              :                     STRIP_UNARY (operands[4]))
   28520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28521              :                        STRIP_UNARY (operands[4]))
   28522              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28523              :                        STRIP_UNARY (operands[3]))
   28524              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28525              :                        STRIP_UNARY (operands[3])))) && 
   28526              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28527              : (TARGET_AVX512F)) && 
   28528              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28529              : ( 1)))
   28530              :                 return NULL;
   28531              :               return gen_split_2399 (insn, operands);
   28532              : 
   28533              :             case 1:
   28534              :               if (!((
   28535              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28536              : ((32 == 64 || TARGET_AVX512VL
   28537              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28538              :    && ix86_pre_reload_split ()
   28539              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28540              :                     STRIP_UNARY (operands[4]))
   28541              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28542              :                        STRIP_UNARY (operands[4]))
   28543              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28544              :                        STRIP_UNARY (operands[3]))
   28545              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28546              :                        STRIP_UNARY (operands[3])))) && 
   28547              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28548              : (TARGET_AVX)) && 
   28549              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28550              : ( 1)))
   28551              :                 return NULL;
   28552              :               return gen_split_2426 (insn, operands);
   28553              : 
   28554              :             case 2:
   28555              :               if (!(
   28556              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28557              : ((16 == 64 || TARGET_AVX512VL
   28558              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28559              :    && ix86_pre_reload_split ()
   28560              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28561              :                     STRIP_UNARY (operands[4]))
   28562              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28563              :                        STRIP_UNARY (operands[4]))
   28564              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28565              :                        STRIP_UNARY (operands[3]))
   28566              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28567              :                        STRIP_UNARY (operands[3])))) && 
   28568              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28569              : ( 1)))
   28570              :                 return NULL;
   28571              :               return gen_split_2453 (insn, operands);
   28572              : 
   28573              :             case 3:
   28574              :               if (!((
   28575              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28576              : ((64 == 64 || TARGET_AVX512VL
   28577              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28578              :    && ix86_pre_reload_split ()
   28579              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28580              :                     STRIP_UNARY (operands[4]))
   28581              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28582              :                        STRIP_UNARY (operands[4]))
   28583              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28584              :                        STRIP_UNARY (operands[3]))
   28585              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28586              :                        STRIP_UNARY (operands[3])))) && 
   28587              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28588              : (TARGET_AVX512F)) && 
   28589              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28590              : ( 1)))
   28591              :                 return NULL;
   28592              :               return gen_split_2480 (insn, operands);
   28593              : 
   28594              :             case 4:
   28595              :               if (!((
   28596              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28597              : ((32 == 64 || TARGET_AVX512VL
   28598              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28599              :    && ix86_pre_reload_split ()
   28600              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28601              :                     STRIP_UNARY (operands[4]))
   28602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28603              :                        STRIP_UNARY (operands[4]))
   28604              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28605              :                        STRIP_UNARY (operands[3]))
   28606              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28607              :                        STRIP_UNARY (operands[3])))) && 
   28608              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28609              : (TARGET_AVX)) && 
   28610              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28611              : ( 1)))
   28612              :                 return NULL;
   28613              :               return gen_split_2507 (insn, operands);
   28614              : 
   28615              :             case 5:
   28616              :               if (!(
   28617              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28618              : ((16 == 64 || TARGET_AVX512VL
   28619              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28620              :    && ix86_pre_reload_split ()
   28621              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28622              :                     STRIP_UNARY (operands[4]))
   28623              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28624              :                        STRIP_UNARY (operands[4]))
   28625              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28626              :                        STRIP_UNARY (operands[3]))
   28627              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28628              :                        STRIP_UNARY (operands[3])))) && 
   28629              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28630              : ( 1)))
   28631              :                 return NULL;
   28632              :               return gen_split_2534 (insn, operands);
   28633              : 
   28634              :             case 6:
   28635              :               if (!((
   28636              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28637              : ((64 == 64 || TARGET_AVX512VL
   28638              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28639              :    && ix86_pre_reload_split ()
   28640              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28641              :                     STRIP_UNARY (operands[4]))
   28642              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28643              :                        STRIP_UNARY (operands[4]))
   28644              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28645              :                        STRIP_UNARY (operands[3]))
   28646              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28647              :                        STRIP_UNARY (operands[3])))) && 
   28648              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28649              : (TARGET_AVX512F)) && 
   28650              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28651              : ( 1)))
   28652              :                 return NULL;
   28653              :               return gen_split_2561 (insn, operands);
   28654              : 
   28655              :             case 7:
   28656              :               if (!((
   28657              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28658              : ((32 == 64 || TARGET_AVX512VL
   28659              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28660              :    && ix86_pre_reload_split ()
   28661              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28662              :                     STRIP_UNARY (operands[4]))
   28663              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28664              :                        STRIP_UNARY (operands[4]))
   28665              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28666              :                        STRIP_UNARY (operands[3]))
   28667              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28668              :                        STRIP_UNARY (operands[3])))) && 
   28669              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28670              : (TARGET_AVX)) && 
   28671              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28672              : ( 1)))
   28673              :                 return NULL;
   28674              :               return gen_split_2588 (insn, operands);
   28675              : 
   28676              :             case 8:
   28677              :               if (!(
   28678              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28679              : ((16 == 64 || TARGET_AVX512VL
   28680              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28681              :    && ix86_pre_reload_split ()
   28682              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28683              :                     STRIP_UNARY (operands[4]))
   28684              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28685              :                        STRIP_UNARY (operands[4]))
   28686              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28687              :                        STRIP_UNARY (operands[3]))
   28688              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28689              :                        STRIP_UNARY (operands[3])))) && 
   28690              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28691              : ( 1)))
   28692              :                 return NULL;
   28693              :               return gen_split_2615 (insn, operands);
   28694              : 
   28695              :             case 9:
   28696              :               if (!((
   28697              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28698              : ((64 == 64 || TARGET_AVX512VL
   28699              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28700              :    && ix86_pre_reload_split ()
   28701              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28702              :                     STRIP_UNARY (operands[4]))
   28703              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28704              :                        STRIP_UNARY (operands[4]))
   28705              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28706              :                        STRIP_UNARY (operands[3]))
   28707              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28708              :                        STRIP_UNARY (operands[3])))) && 
   28709              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28710              : (TARGET_AVX512F)) && 
   28711              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28712              : ( 1)))
   28713              :                 return NULL;
   28714              :               return gen_split_2642 (insn, operands);
   28715              : 
   28716              :             case 10:
   28717              :               if (!((
   28718              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28719              : ((32 == 64 || TARGET_AVX512VL
   28720              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28721              :    && ix86_pre_reload_split ()
   28722              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28723              :                     STRIP_UNARY (operands[4]))
   28724              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28725              :                        STRIP_UNARY (operands[4]))
   28726              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28727              :                        STRIP_UNARY (operands[3]))
   28728              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28729              :                        STRIP_UNARY (operands[3])))) && 
   28730              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28731              : (TARGET_AVX)) && 
   28732              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28733              : ( 1)))
   28734              :                 return NULL;
   28735              :               return gen_split_2669 (insn, operands);
   28736              : 
   28737              :             case 11:
   28738              :               if (!(
   28739              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28740              : ((16 == 64 || TARGET_AVX512VL
   28741              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28742              :    && ix86_pre_reload_split ()
   28743              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28744              :                     STRIP_UNARY (operands[4]))
   28745              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28746              :                        STRIP_UNARY (operands[4]))
   28747              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28748              :                        STRIP_UNARY (operands[3]))
   28749              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28750              :                        STRIP_UNARY (operands[3])))) && 
   28751              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28752              : ( 1)))
   28753              :                 return NULL;
   28754              :               return gen_split_2696 (insn, operands);
   28755              : 
   28756              :             default:
   28757              :               return NULL;
   28758              :             }
   28759              : 
   28760              :         case XOR:
   28761              :           switch (pattern539 (x2))
   28762              :             {
   28763              :             case 0:
   28764              :               if (!((
   28765              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28766              : ((64 == 64 || TARGET_AVX512VL
   28767              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28768              :    && ix86_pre_reload_split ()
   28769              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28770              :                     STRIP_UNARY (operands[4]))
   28771              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28772              :                        STRIP_UNARY (operands[4]))
   28773              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28774              :                        STRIP_UNARY (operands[3]))
   28775              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28776              :                        STRIP_UNARY (operands[3])))) && 
   28777              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28778              : (TARGET_AVX512F)) && 
   28779              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28780              : ( 1)))
   28781              :                 return NULL;
   28782              :               return gen_split_2402 (insn, operands);
   28783              : 
   28784              :             case 1:
   28785              :               if (!((
   28786              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28787              : ((32 == 64 || TARGET_AVX512VL
   28788              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28789              :    && ix86_pre_reload_split ()
   28790              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28791              :                     STRIP_UNARY (operands[4]))
   28792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28793              :                        STRIP_UNARY (operands[4]))
   28794              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28795              :                        STRIP_UNARY (operands[3]))
   28796              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28797              :                        STRIP_UNARY (operands[3])))) && 
   28798              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28799              : (TARGET_AVX)) && 
   28800              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28801              : ( 1)))
   28802              :                 return NULL;
   28803              :               return gen_split_2429 (insn, operands);
   28804              : 
   28805              :             case 2:
   28806              :               if (!(
   28807              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28808              : ((16 == 64 || TARGET_AVX512VL
   28809              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28810              :    && ix86_pre_reload_split ()
   28811              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28812              :                     STRIP_UNARY (operands[4]))
   28813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28814              :                        STRIP_UNARY (operands[4]))
   28815              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28816              :                        STRIP_UNARY (operands[3]))
   28817              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28818              :                        STRIP_UNARY (operands[3])))) && 
   28819              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28820              : ( 1)))
   28821              :                 return NULL;
   28822              :               return gen_split_2456 (insn, operands);
   28823              : 
   28824              :             case 3:
   28825              :               if (!((
   28826              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28827              : ((64 == 64 || TARGET_AVX512VL
   28828              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28829              :    && ix86_pre_reload_split ()
   28830              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28831              :                     STRIP_UNARY (operands[4]))
   28832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28833              :                        STRIP_UNARY (operands[4]))
   28834              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28835              :                        STRIP_UNARY (operands[3]))
   28836              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28837              :                        STRIP_UNARY (operands[3])))) && 
   28838              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28839              : (TARGET_AVX512F)) && 
   28840              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28841              : ( 1)))
   28842              :                 return NULL;
   28843              :               return gen_split_2483 (insn, operands);
   28844              : 
   28845              :             case 4:
   28846              :               if (!((
   28847              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28848              : ((32 == 64 || TARGET_AVX512VL
   28849              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28850              :    && ix86_pre_reload_split ()
   28851              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28852              :                     STRIP_UNARY (operands[4]))
   28853              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28854              :                        STRIP_UNARY (operands[4]))
   28855              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28856              :                        STRIP_UNARY (operands[3]))
   28857              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28858              :                        STRIP_UNARY (operands[3])))) && 
   28859              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28860              : (TARGET_AVX)) && 
   28861              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28862              : ( 1)))
   28863              :                 return NULL;
   28864              :               return gen_split_2510 (insn, operands);
   28865              : 
   28866              :             case 5:
   28867              :               if (!(
   28868              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28869              : ((16 == 64 || TARGET_AVX512VL
   28870              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28871              :    && ix86_pre_reload_split ()
   28872              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28873              :                     STRIP_UNARY (operands[4]))
   28874              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28875              :                        STRIP_UNARY (operands[4]))
   28876              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28877              :                        STRIP_UNARY (operands[3]))
   28878              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28879              :                        STRIP_UNARY (operands[3])))) && 
   28880              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28881              : ( 1)))
   28882              :                 return NULL;
   28883              :               return gen_split_2537 (insn, operands);
   28884              : 
   28885              :             case 6:
   28886              :               if (!((
   28887              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28888              : ((64 == 64 || TARGET_AVX512VL
   28889              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28890              :    && ix86_pre_reload_split ()
   28891              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28892              :                     STRIP_UNARY (operands[4]))
   28893              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28894              :                        STRIP_UNARY (operands[4]))
   28895              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28896              :                        STRIP_UNARY (operands[3]))
   28897              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28898              :                        STRIP_UNARY (operands[3])))) && 
   28899              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28900              : (TARGET_AVX512F)) && 
   28901              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28902              : ( 1)))
   28903              :                 return NULL;
   28904              :               return gen_split_2564 (insn, operands);
   28905              : 
   28906              :             case 7:
   28907              :               if (!((
   28908              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28909              : ((32 == 64 || TARGET_AVX512VL
   28910              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28911              :    && ix86_pre_reload_split ()
   28912              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28913              :                     STRIP_UNARY (operands[4]))
   28914              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28915              :                        STRIP_UNARY (operands[4]))
   28916              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28917              :                        STRIP_UNARY (operands[3]))
   28918              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28919              :                        STRIP_UNARY (operands[3])))) && 
   28920              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28921              : (TARGET_AVX)) && 
   28922              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28923              : ( 1)))
   28924              :                 return NULL;
   28925              :               return gen_split_2591 (insn, operands);
   28926              : 
   28927              :             case 8:
   28928              :               if (!(
   28929              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28930              : ((16 == 64 || TARGET_AVX512VL
   28931              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28932              :    && ix86_pre_reload_split ()
   28933              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28934              :                     STRIP_UNARY (operands[4]))
   28935              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28936              :                        STRIP_UNARY (operands[4]))
   28937              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28938              :                        STRIP_UNARY (operands[3]))
   28939              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28940              :                        STRIP_UNARY (operands[3])))) && 
   28941              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28942              : ( 1)))
   28943              :                 return NULL;
   28944              :               return gen_split_2618 (insn, operands);
   28945              : 
   28946              :             case 9:
   28947              :               if (!((
   28948              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28949              : ((64 == 64 || TARGET_AVX512VL
   28950              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28951              :    && ix86_pre_reload_split ()
   28952              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28953              :                     STRIP_UNARY (operands[4]))
   28954              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28955              :                        STRIP_UNARY (operands[4]))
   28956              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28957              :                        STRIP_UNARY (operands[3]))
   28958              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28959              :                        STRIP_UNARY (operands[3])))) && 
   28960              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28961              : (TARGET_AVX512F)) && 
   28962              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28963              : ( 1)))
   28964              :                 return NULL;
   28965              :               return gen_split_2645 (insn, operands);
   28966              : 
   28967              :             case 10:
   28968              :               if (!((
   28969              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28970              : ((32 == 64 || TARGET_AVX512VL
   28971              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28972              :    && ix86_pre_reload_split ()
   28973              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28974              :                     STRIP_UNARY (operands[4]))
   28975              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28976              :                        STRIP_UNARY (operands[4]))
   28977              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28978              :                        STRIP_UNARY (operands[3]))
   28979              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28980              :                        STRIP_UNARY (operands[3])))) && 
   28981              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28982              : (TARGET_AVX)) && 
   28983              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28984              : ( 1)))
   28985              :                 return NULL;
   28986              :               return gen_split_2672 (insn, operands);
   28987              : 
   28988              :             case 11:
   28989              :               if (!(
   28990              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28991              : ((16 == 64 || TARGET_AVX512VL
   28992              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28993              :    && ix86_pre_reload_split ()
   28994              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28995              :                     STRIP_UNARY (operands[4]))
   28996              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28997              :                        STRIP_UNARY (operands[4]))
   28998              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28999              :                        STRIP_UNARY (operands[3]))
   29000              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29001              :                        STRIP_UNARY (operands[3])))) && 
   29002              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29003              : ( 1)))
   29004              :                 return NULL;
   29005              :               return gen_split_2699 (insn, operands);
   29006              : 
   29007              :             default:
   29008              :               return NULL;
   29009              :             }
   29010              : 
   29011              :         default:
   29012              :           return NULL;
   29013              :         }
   29014              : 
   29015              :     case XOR:
   29016              :       return split_62 (x1, insn);
   29017              : 
   29018              :     case VEC_DUPLICATE:
   29019              :       x4 = XEXP (x3, 0);
   29020              :       if (GET_CODE (x4) != NOT)
   29021              :         return NULL;
   29022              :       x6 = XEXP (x4, 0);
   29023              :       operands[1] = x6;
   29024              :       x5 = XEXP (x2, 1);
   29025              :       operands[2] = x5;
   29026              :       switch (GET_MODE (operands[0]))
   29027              :         {
   29028              :         case E_V4SImode:
   29029              :           if (pattern1076 (x2, 
   29030              : E_V4SImode, 
   29031              : E_SImode) != 0)
   29032              :             return NULL;
   29033              :           if (register_operand (operands[1], E_SImode)
   29034              :               && 
   29035              : #line 19080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29036              : (TARGET_SSE))
   29037              :             return gen_split_3458 (insn, operands);
   29038              :           if (!nonimmediate_operand (operands[1], E_SImode)
   29039              :               || !
   29040              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29041              : (TARGET_AVX2))
   29042              :             return NULL;
   29043              :           return gen_split_3468 (insn, operands);
   29044              : 
   29045              :         case E_V2DImode:
   29046              :           if (pattern1076 (x2, 
   29047              : E_V2DImode, 
   29048              : E_DImode) != 0)
   29049              :             return NULL;
   29050              :           if (register_operand (operands[1], E_DImode)
   29051              :               && 
   29052              : #line 19080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29053              : (TARGET_SSE))
   29054              :             return gen_split_3459 (insn, operands);
   29055              :           if (!nonimmediate_operand (operands[1], E_DImode)
   29056              :               || !
   29057              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29058              : (TARGET_AVX2))
   29059              :             return NULL;
   29060              :           return gen_split_3471 (insn, operands);
   29061              : 
   29062              :         case E_V64QImode:
   29063              :           if (pattern606 (x2, 
   29064              : E_V64QImode, 
   29065              : E_QImode) != 0
   29066              :               || !(
   29067              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29068              : (TARGET_AVX2) && 
   29069              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29070              : (TARGET_AVX512BW)))
   29071              :             return NULL;
   29072              :           return gen_split_3460 (insn, operands);
   29073              : 
   29074              :         case E_V32QImode:
   29075              :           if (pattern606 (x2, 
   29076              : E_V32QImode, 
   29077              : E_QImode) != 0
   29078              :               || !
   29079              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29080              : (TARGET_AVX2))
   29081              :             return NULL;
   29082              :           return gen_split_3461 (insn, operands);
   29083              : 
   29084              :         case E_V16QImode:
   29085              :           if (pattern606 (x2, 
   29086              : E_V16QImode, 
   29087              : E_QImode) != 0
   29088              :               || !
   29089              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29090              : (TARGET_AVX2))
   29091              :             return NULL;
   29092              :           return gen_split_3462 (insn, operands);
   29093              : 
   29094              :         case E_V32HImode:
   29095              :           if (pattern606 (x2, 
   29096              : E_V32HImode, 
   29097              : E_HImode) != 0
   29098              :               || !(
   29099              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29100              : (TARGET_AVX2) && 
   29101              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29102              : (TARGET_AVX512BW)))
   29103              :             return NULL;
   29104              :           return gen_split_3463 (insn, operands);
   29105              : 
   29106              :         case E_V16HImode:
   29107              :           if (pattern606 (x2, 
   29108              : E_V16HImode, 
   29109              : E_HImode) != 0
   29110              :               || !
   29111              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29112              : (TARGET_AVX2))
   29113              :             return NULL;
   29114              :           return gen_split_3464 (insn, operands);
   29115              : 
   29116              :         case E_V8HImode:
   29117              :           if (pattern606 (x2, 
   29118              : E_V8HImode, 
   29119              : E_HImode) != 0
   29120              :               || !
   29121              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29122              : (TARGET_AVX2))
   29123              :             return NULL;
   29124              :           return gen_split_3465 (insn, operands);
   29125              : 
   29126              :         case E_V16SImode:
   29127              :           if (pattern606 (x2, 
   29128              : E_V16SImode, 
   29129              : E_SImode) != 0
   29130              :               || !(
   29131              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29132              : (TARGET_AVX2) && 
   29133              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29134              : (TARGET_AVX512F)))
   29135              :             return NULL;
   29136              :           return gen_split_3466 (insn, operands);
   29137              : 
   29138              :         case E_V8SImode:
   29139              :           if (pattern606 (x2, 
   29140              : E_V8SImode, 
   29141              : E_SImode) != 0
   29142              :               || !
   29143              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29144              : (TARGET_AVX2))
   29145              :             return NULL;
   29146              :           return gen_split_3467 (insn, operands);
   29147              : 
   29148              :         case E_V8DImode:
   29149              :           if (pattern606 (x2, 
   29150              : E_V8DImode, 
   29151              : E_DImode) != 0
   29152              :               || !(
   29153              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29154              : (TARGET_AVX2) && 
   29155              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29156              : (TARGET_AVX512F)))
   29157              :             return NULL;
   29158              :           return gen_split_3469 (insn, operands);
   29159              : 
   29160              :         case E_V4DImode:
   29161              :           if (pattern606 (x2, 
   29162              : E_V4DImode, 
   29163              : E_DImode) != 0
   29164              :               || !
   29165              : #line 19096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29166              : (TARGET_AVX2))
   29167              :             return NULL;
   29168              :           return gen_split_3470 (insn, operands);
   29169              : 
   29170              :         default:
   29171              :           return NULL;
   29172              :         }
   29173              : 
   29174              :     default:
   29175              :       return NULL;
   29176              :     }
   29177              : }
   29178              : 
   29179              :  rtx_insn *
   29180              : split_85 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29181              : {
   29182              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29183              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   29184              :   rtx x10, x11, x12, x13;
   29185              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29186              :   x2 = XEXP (x1, 1);
   29187              :   x3 = XEXP (x2, 0);
   29188              :   switch (GET_CODE (x3))
   29189              :     {
   29190              :     case UNSPEC:
   29191              :       if (XVECLEN (x3, 0) != 1
   29192              :           || XINT (x3, 1) != 178)
   29193              :         return NULL;
   29194              :       x4 = XEXP (x2, 2);
   29195              :       if (GET_CODE (x4) != AND
   29196              :           || GET_MODE (x4) != E_QImode)
   29197              :         return NULL;
   29198              :       x5 = XEXP (x4, 1);
   29199              :       if (GET_CODE (x5) != CONST_INT)
   29200              :         return NULL;
   29201              :       x6 = XVECEXP (x3, 0, 0);
   29202              :       operands[1] = x6;
   29203              :       x7 = XEXP (x2, 1);
   29204              :       operands[2] = x7;
   29205              :       switch (pattern1113 (x2))
   29206              :         {
   29207              :         case 0:
   29208              :           if (!((
   29209              : #line 1634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29210              : (TARGET_AVX512F) && 
   29211              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29212              : (TARGET_AVX512VL)) && 
   29213              : #line 1636 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29214              : ( 1)))
   29215              :             return NULL;
   29216              :           return gen_split_1210 (insn, operands);
   29217              : 
   29218              :         case 1:
   29219              :           if (!((
   29220              : #line 1634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29221              : (TARGET_AVX512F) && 
   29222              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29223              : (TARGET_AVX512VL)) && 
   29224              : #line 1636 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29225              : ( 1)))
   29226              :             return NULL;
   29227              :           return gen_split_1211 (insn, operands);
   29228              : 
   29229              :         case 2:
   29230              :           if (!((
   29231              : #line 1634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29232              : (TARGET_AVX512F) && 
   29233              : #line 522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29234              : (TARGET_AVX512VL)) && 
   29235              : #line 1636 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29236              : ( 1)))
   29237              :             return NULL;
   29238              :           return gen_split_1212 (insn, operands);
   29239              : 
   29240              :         case 3:
   29241              :           if (!((
   29242              : #line 1634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29243              : (TARGET_AVX512F) && 
   29244              : #line 522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29245              : (TARGET_AVX512VL)) && 
   29246              : #line 1636 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29247              : ( 1)))
   29248              :             return NULL;
   29249              :           return gen_split_1213 (insn, operands);
   29250              : 
   29251              :         case 4:
   29252              :           if (!((
   29253              : #line 1653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29254              : (TARGET_AVX512F) && 
   29255              : #line 528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29256              : (TARGET_AVX512VL)) && 
   29257              : #line 1655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29258              : ( 1)))
   29259              :             return NULL;
   29260              :           return gen_split_1214 (insn, operands);
   29261              : 
   29262              :         case 5:
   29263              :           if (!((
   29264              : #line 1653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29265              : (TARGET_AVX512F) && 
   29266              : #line 528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29267              : (TARGET_AVX512VL)) && 
   29268              : #line 1655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29269              : ( 1)))
   29270              :             return NULL;
   29271              :           return gen_split_1215 (insn, operands);
   29272              : 
   29273              :         default:
   29274              :           return NULL;
   29275              :         }
   29276              : 
   29277              :     case MINUS:
   29278              :       x7 = XEXP (x2, 1);
   29279              :       if (GET_CODE (x7) != PLUS)
   29280              :         return NULL;
   29281              :       operands[6] = x2;
   29282              :       x8 = XEXP (x3, 0);
   29283              :       operands[1] = x8;
   29284              :       x9 = XEXP (x3, 1);
   29285              :       operands[2] = x9;
   29286              :       x10 = XEXP (x7, 0);
   29287              :       operands[3] = x10;
   29288              :       x11 = XEXP (x7, 1);
   29289              :       operands[4] = x11;
   29290              :       x4 = XEXP (x2, 2);
   29291              :       operands[5] = x4;
   29292              :       if (!const_int_operand (operands[5], E_VOIDmode))
   29293              :         return NULL;
   29294              :       switch (GET_MODE (operands[0]))
   29295              :         {
   29296              :         case E_V8SFmode:
   29297              :           if (pattern1455 (x2, 
   29298              : E_V8SFmode) != 0
   29299              :               || !(
   29300              : #line 3640 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29301              : (TARGET_SSE3
   29302              :    && can_create_pseudo_p ()
   29303              :    && ((rtx_equal_p (operands[1], operands[3])
   29304              :         && rtx_equal_p (operands[2], operands[4]))
   29305              :        || (rtx_equal_p (operands[1], operands[4])
   29306              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29307              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29308              : (TARGET_AVX)))
   29309              :             return NULL;
   29310              :           return gen_split_1356 (insn, operands);
   29311              : 
   29312              :         case E_V4SFmode:
   29313              :           if (pattern1455 (x2, 
   29314              : E_V4SFmode) != 0
   29315              :               || !
   29316              : #line 3640 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29317              : (TARGET_SSE3
   29318              :    && can_create_pseudo_p ()
   29319              :    && ((rtx_equal_p (operands[1], operands[3])
   29320              :         && rtx_equal_p (operands[2], operands[4]))
   29321              :        || (rtx_equal_p (operands[1], operands[4])
   29322              :            && rtx_equal_p (operands[2], operands[3])))))
   29323              :             return NULL;
   29324              :           return gen_split_1357 (insn, operands);
   29325              : 
   29326              :         case E_V4DFmode:
   29327              :           if (pattern1455 (x2, 
   29328              : E_V4DFmode) != 0
   29329              :               || !(
   29330              : #line 3640 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29331              : (TARGET_SSE3
   29332              :    && can_create_pseudo_p ()
   29333              :    && ((rtx_equal_p (operands[1], operands[3])
   29334              :         && rtx_equal_p (operands[2], operands[4]))
   29335              :        || (rtx_equal_p (operands[1], operands[4])
   29336              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29337              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29338              : (TARGET_AVX)))
   29339              :             return NULL;
   29340              :           return gen_split_1358 (insn, operands);
   29341              : 
   29342              :         case E_V2DFmode:
   29343              :           if (pattern1455 (x2, 
   29344              : E_V2DFmode) != 0
   29345              :               || !(
   29346              : #line 3640 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29347              : (TARGET_SSE3
   29348              :    && can_create_pseudo_p ()
   29349              :    && ((rtx_equal_p (operands[1], operands[3])
   29350              :         && rtx_equal_p (operands[2], operands[4]))
   29351              :        || (rtx_equal_p (operands[1], operands[4])
   29352              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29353              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29354              : (TARGET_SSE2)))
   29355              :             return NULL;
   29356              :           return gen_split_1359 (insn, operands);
   29357              : 
   29358              :         default:
   29359              :           return NULL;
   29360              :         }
   29361              : 
   29362              :     case PLUS:
   29363              :       x7 = XEXP (x2, 1);
   29364              :       if (GET_CODE (x7) != MINUS)
   29365              :         return NULL;
   29366              :       operands[6] = x2;
   29367              :       x8 = XEXP (x3, 0);
   29368              :       operands[1] = x8;
   29369              :       x9 = XEXP (x3, 1);
   29370              :       operands[2] = x9;
   29371              :       x10 = XEXP (x7, 0);
   29372              :       operands[3] = x10;
   29373              :       x11 = XEXP (x7, 1);
   29374              :       operands[4] = x11;
   29375              :       x4 = XEXP (x2, 2);
   29376              :       operands[5] = x4;
   29377              :       if (!const_int_operand (operands[5], E_VOIDmode))
   29378              :         return NULL;
   29379              :       switch (GET_MODE (operands[0]))
   29380              :         {
   29381              :         case E_V8SFmode:
   29382              :           if (pattern1456 (x2, 
   29383              : E_V8SFmode) != 0
   29384              :               || !(
   29385              : #line 3662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29386              : (TARGET_SSE3
   29387              :    && can_create_pseudo_p ()
   29388              :    && ((rtx_equal_p (operands[1], operands[3])
   29389              :         && rtx_equal_p (operands[2], operands[4]))
   29390              :        || (rtx_equal_p (operands[1], operands[4])
   29391              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29392              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29393              : (TARGET_AVX)))
   29394              :             return NULL;
   29395              :           return gen_split_1360 (insn, operands);
   29396              : 
   29397              :         case E_V4SFmode:
   29398              :           if (pattern1456 (x2, 
   29399              : E_V4SFmode) != 0
   29400              :               || !
   29401              : #line 3662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29402              : (TARGET_SSE3
   29403              :    && can_create_pseudo_p ()
   29404              :    && ((rtx_equal_p (operands[1], operands[3])
   29405              :         && rtx_equal_p (operands[2], operands[4]))
   29406              :        || (rtx_equal_p (operands[1], operands[4])
   29407              :            && rtx_equal_p (operands[2], operands[3])))))
   29408              :             return NULL;
   29409              :           return gen_split_1361 (insn, operands);
   29410              : 
   29411              :         case E_V4DFmode:
   29412              :           if (pattern1456 (x2, 
   29413              : E_V4DFmode) != 0
   29414              :               || !(
   29415              : #line 3662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29416              : (TARGET_SSE3
   29417              :    && can_create_pseudo_p ()
   29418              :    && ((rtx_equal_p (operands[1], operands[3])
   29419              :         && rtx_equal_p (operands[2], operands[4]))
   29420              :        || (rtx_equal_p (operands[1], operands[4])
   29421              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29422              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29423              : (TARGET_AVX)))
   29424              :             return NULL;
   29425              :           return gen_split_1362 (insn, operands);
   29426              : 
   29427              :         case E_V2DFmode:
   29428              :           if (pattern1456 (x2, 
   29429              : E_V2DFmode) != 0
   29430              :               || !(
   29431              : #line 3662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29432              : (TARGET_SSE3
   29433              :    && can_create_pseudo_p ()
   29434              :    && ((rtx_equal_p (operands[1], operands[3])
   29435              :         && rtx_equal_p (operands[2], operands[4]))
   29436              :        || (rtx_equal_p (operands[1], operands[4])
   29437              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29438              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29439              : (TARGET_SSE2)))
   29440              :             return NULL;
   29441              :           return gen_split_1363 (insn, operands);
   29442              : 
   29443              :         default:
   29444              :           return NULL;
   29445              :         }
   29446              : 
   29447              :     case CONST_INT:
   29448              :     case CONST_DOUBLE:
   29449              :     case CONST_VECTOR:
   29450              :     case REG:
   29451              :     case SUBREG:
   29452              :     case MEM:
   29453              :       return split_61 (x1, insn);
   29454              : 
   29455              :     case VEC_DUPLICATE:
   29456              :       x8 = XEXP (x3, 0);
   29457              :       switch (GET_CODE (x8))
   29458              :         {
   29459              :         case VEC_SELECT:
   29460              :           x12 = XEXP (x8, 1);
   29461              :           if (GET_CODE (x12) != PARALLEL
   29462              :               || XVECLEN (x12, 0) != 1)
   29463              :             return NULL;
   29464              :           x13 = XVECEXP (x12, 0, 0);
   29465              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   29466              :             return NULL;
   29467              :           x4 = XEXP (x2, 2);
   29468              :           if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   29469              :             return NULL;
   29470              :           switch (pattern1017 (x2))
   29471              :             {
   29472              :             case 0:
   29473              :               if (!(
   29474              : #line 12436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29475              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29476              : #line 12438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29477              : ( 1)))
   29478              :                 return NULL;
   29479              :               return gen_split_1620 (insn, operands);
   29480              : 
   29481              :             case 1:
   29482              :               if (!(
   29483              : #line 12436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29484              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29485              : #line 12438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29486              : ( 1)))
   29487              :                 return NULL;
   29488              :               return gen_split_1621 (insn, operands);
   29489              : 
   29490              :             case 2:
   29491              :               if (!(
   29492              : #line 12436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29493              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29494              : #line 12438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29495              : ( 1)))
   29496              :                 return NULL;
   29497              :               return gen_split_1622 (insn, operands);
   29498              : 
   29499              :             default:
   29500              :               return NULL;
   29501              :             }
   29502              : 
   29503              :         case ZERO_EXTEND:
   29504              :           switch (pattern317 (x2))
   29505              :             {
   29506              :             case 0:
   29507              :               if (!((
   29508              : #line 12476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29509              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   29510              : #line 791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29511              : (TARGET_AVX512F)) && 
   29512              : #line 12478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29513              : ( 1)))
   29514              :                 return NULL;
   29515              :               return gen_split_1623 (insn, operands);
   29516              : 
   29517              :             case 1:
   29518              :               if (!(
   29519              : #line 12476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29520              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   29521              : #line 12478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29522              : ( 1)))
   29523              :                 return NULL;
   29524              :               return gen_split_1624 (insn, operands);
   29525              : 
   29526              :             case 2:
   29527              :               if (!(
   29528              : #line 12476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29529              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   29530              : #line 12478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29531              : ( 1)))
   29532              :                 return NULL;
   29533              :               return gen_split_1625 (insn, operands);
   29534              : 
   29535              :             case 3:
   29536              :               if (!((
   29537              : #line 12476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29538              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   29539              : #line 792 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29540              : (TARGET_AVX512F)) && 
   29541              : #line 12478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29542              : ( 1)))
   29543              :                 return NULL;
   29544              :               return gen_split_1626 (insn, operands);
   29545              : 
   29546              :             case 4:
   29547              :               if (!((
   29548              : #line 12590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29549              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29550              : #line 611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29551              : (TARGET_AVX512F)) && 
   29552              : #line 12592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29553              : ( 1)))
   29554              :                 return NULL;
   29555              :               return gen_split_1630 (insn, operands);
   29556              : 
   29557              :             case 5:
   29558              :               if (!(
   29559              : #line 12476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29560              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   29561              : #line 12478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29562              : ( 1)))
   29563              :                 return NULL;
   29564              :               return gen_split_1627 (insn, operands);
   29565              : 
   29566              :             case 6:
   29567              :               if (!((
   29568              : #line 12590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29569              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29570              : #line 611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29571              : (TARGET_AVX)) && 
   29572              : #line 12592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29573              : ( 1)))
   29574              :                 return NULL;
   29575              :               return gen_split_1631 (insn, operands);
   29576              : 
   29577              :             case 7:
   29578              :               if (!(
   29579              : #line 12476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29580              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   29581              : #line 12478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29582              : ( 1)))
   29583              :                 return NULL;
   29584              :               return gen_split_1628 (insn, operands);
   29585              : 
   29586              :             case 8:
   29587              :               if (!(
   29588              : #line 12590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29589              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29590              : #line 12592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29591              : ( 1)))
   29592              :                 return NULL;
   29593              :               return gen_split_1632 (insn, operands);
   29594              : 
   29595              :             default:
   29596              :               return NULL;
   29597              :             }
   29598              : 
   29599              :         case CONST_INT:
   29600              :         case CONST_WIDE_INT:
   29601              :         case CONST_POLY_INT:
   29602              :         case CONST_FIXED:
   29603              :         case CONST_DOUBLE:
   29604              :         case CONST_VECTOR:
   29605              :         case CONST:
   29606              :         case REG:
   29607              :         case SUBREG:
   29608              :         case LABEL_REF:
   29609              :         case SYMBOL_REF:
   29610              :         case HIGH:
   29611              :           x7 = XEXP (x2, 1);
   29612              :           switch (GET_CODE (x7))
   29613              :             {
   29614              :             case SUBREG:
   29615              :             case MEM:
   29616              :               if (!rtx_equal_p (x7, operands[0]))
   29617              :                 return NULL;
   29618              :               x4 = XEXP (x2, 2);
   29619              :               if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   29620              :                 return NULL;
   29621              :               operands[1] = x8;
   29622              :               switch (GET_MODE (operands[0]))
   29623              :                 {
   29624              :                 case E_V4SImode:
   29625              :                   if (pattern1198 (x2, 
   29626              : E_SImode, 
   29627              : E_V4SImode) != 0
   29628              :                       || !
   29629              : #line 12666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29630              : (TARGET_SSE && reload_completed))
   29631              :                     return NULL;
   29632              :                   return gen_split_1634 (insn, operands);
   29633              : 
   29634              :                 case E_V4SFmode:
   29635              :                   if (pattern1198 (x2, 
   29636              : E_SFmode, 
   29637              : E_V4SFmode) != 0
   29638              :                       || !
   29639              : #line 12666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29640              : (TARGET_SSE && reload_completed))
   29641              :                     return NULL;
   29642              :                   return gen_split_1635 (insn, operands);
   29643              : 
   29644              :                 default:
   29645              :                   return NULL;
   29646              :                 }
   29647              : 
   29648              :             case REG:
   29649              :               operands[1] = x7;
   29650              :               operands[2] = x8;
   29651              :               x4 = XEXP (x2, 2);
   29652              :               operands[3] = x4;
   29653              :               if (!const_int_operand (operands[3], E_SImode))
   29654              :                 return NULL;
   29655              :               switch (GET_MODE (operands[0]))
   29656              :                 {
   29657              :                 case E_V8HImode:
   29658              :                   if (pattern1075 (x2, 
   29659              : E_V8HImode, 
   29660              : E_HImode) != 0
   29661              :                       || !
   29662              : #line 20417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29663              : (TARGET_AVX2 && reload_completed
   29664              :    && INTVAL (operands[3]) > 1
   29665              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   29666              :        < GET_MODE_NUNITS (V8HImode))))
   29667              :                     return NULL;
   29668              :                   return gen_split_3496 (insn, operands);
   29669              : 
   29670              :                 case E_V8HFmode:
   29671              :                   if (pattern1075 (x2, 
   29672              : E_V8HFmode, 
   29673              : E_HFmode) != 0
   29674              :                       || !
   29675              : #line 20417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29676              : (TARGET_AVX2 && reload_completed
   29677              :    && INTVAL (operands[3]) > 1
   29678              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   29679              :        < GET_MODE_NUNITS (V8HFmode))))
   29680              :                     return NULL;
   29681              :                   return gen_split_3497 (insn, operands);
   29682              : 
   29683              :                 case E_V8BFmode:
   29684              :                   if (pattern1075 (x2, 
   29685              : E_V8BFmode, 
   29686              : E_BFmode) != 0
   29687              :                       || !
   29688              : #line 20417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29689              : (TARGET_AVX2 && reload_completed
   29690              :    && INTVAL (operands[3]) > 1
   29691              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   29692              :        < GET_MODE_NUNITS (V8BFmode))))
   29693              :                     return NULL;
   29694              :                   return gen_split_3498 (insn, operands);
   29695              : 
   29696              :                 default:
   29697              :                   return NULL;
   29698              :                 }
   29699              : 
   29700              :             default:
   29701              :               return NULL;
   29702              :             }
   29703              : 
   29704              :         default:
   29705              :           return NULL;
   29706              :         }
   29707              : 
   29708              :     case SIGN_EXTEND:
   29709              :       switch (pattern417 (x2))
   29710              :         {
   29711              :         case 0:
   29712              :           if (!(
   29713              : #line 24836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29714              : (TARGET_AVX512VL && TARGET_AVX512BW
   29715              :    && ix86_pre_reload_split ()) && 
   29716              : #line 24839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29717              : ( 1)))
   29718              :             return NULL;
   29719              :           return gen_split_3632 (insn, operands);
   29720              : 
   29721              :         case 1:
   29722              :           if (!(
   29723              : #line 25017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29724              : (TARGET_AVX512VL
   29725              :    && ix86_pre_reload_split ()) && 
   29726              : #line 25020 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29727              : ( 1)))
   29728              :             return NULL;
   29729              :           return gen_split_3640 (insn, operands);
   29730              : 
   29731              :         case 2:
   29732              :           if (!(
   29733              : #line 25469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29734              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   29735              : #line 25471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29736              : ( 1)))
   29737              :             return NULL;
   29738              :           return gen_split_3666 (insn, operands);
   29739              : 
   29740              :         case 3:
   29741              :           if (!(
   29742              : #line 25311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29743              : (TARGET_AVX512VL
   29744              :    && ix86_pre_reload_split ()) && 
   29745              : #line 25314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29746              : ( 1)))
   29747              :             return NULL;
   29748              :           return gen_split_3658 (insn, operands);
   29749              : 
   29750              :         case 4:
   29751              :           if (!(
   29752              : #line 25730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29753              : (TARGET_AVX512VL
   29754              :    && ix86_pre_reload_split ()) && 
   29755              : #line 25733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29756              : ( 1)))
   29757              :             return NULL;
   29758              :           return gen_split_3677 (insn, operands);
   29759              : 
   29760              :         case 5:
   29761              :           if (!(
   29762              : #line 26013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29763              : (TARGET_AVX512VL
   29764              :    && ix86_pre_reload_split ()) && 
   29765              : #line 26016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29766              : ( 1)))
   29767              :             return NULL;
   29768              :           return gen_split_3689 (insn, operands);
   29769              : 
   29770              :         case 6:
   29771              :           if (!(
   29772              : #line 25113 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29773              : (TARGET_AVX512VL
   29774              :    && ix86_pre_reload_split ()) && 
   29775              : #line 25116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29776              : ( 1)))
   29777              :             return NULL;
   29778              :           return gen_split_3646 (insn, operands);
   29779              : 
   29780              :         case 7:
   29781              :           if (!(
   29782              : #line 25561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29783              : (TARGET_AVX512VL
   29784              :    && ix86_pre_reload_split ()) && 
   29785              : #line 25564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29786              : ( 1)))
   29787              :             return NULL;
   29788              :           return gen_split_3670 (insn, operands);
   29789              : 
   29790              :         case 8:
   29791              :           if (!(
   29792              : #line 25823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29793              : (TARGET_AVX512VL
   29794              :    && ix86_pre_reload_split ()) && 
   29795              : #line 25826 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29796              : ( 1)))
   29797              :             return NULL;
   29798              :           return gen_split_3681 (insn, operands);
   29799              : 
   29800              :         default:
   29801              :           return NULL;
   29802              :         }
   29803              : 
   29804              :     case ZERO_EXTEND:
   29805              :       switch (pattern417 (x2))
   29806              :         {
   29807              :         case 0:
   29808              :           if (!(
   29809              : #line 24836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29810              : (TARGET_AVX512VL && TARGET_AVX512BW
   29811              :    && ix86_pre_reload_split ()) && 
   29812              : #line 24839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29813              : ( 1)))
   29814              :             return NULL;
   29815              :           return gen_split_3633 (insn, operands);
   29816              : 
   29817              :         case 1:
   29818              :           if (!(
   29819              : #line 25017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29820              : (TARGET_AVX512VL
   29821              :    && ix86_pre_reload_split ()) && 
   29822              : #line 25020 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29823              : ( 1)))
   29824              :             return NULL;
   29825              :           return gen_split_3641 (insn, operands);
   29826              : 
   29827              :         case 2:
   29828              :           if (!(
   29829              : #line 25469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29830              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   29831              : #line 25471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29832              : ( 1)))
   29833              :             return NULL;
   29834              :           return gen_split_3667 (insn, operands);
   29835              : 
   29836              :         case 3:
   29837              :           if (!(
   29838              : #line 25311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29839              : (TARGET_AVX512VL
   29840              :    && ix86_pre_reload_split ()) && 
   29841              : #line 25314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29842              : ( 1)))
   29843              :             return NULL;
   29844              :           return gen_split_3659 (insn, operands);
   29845              : 
   29846              :         case 4:
   29847              :           if (!(
   29848              : #line 25730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29849              : (TARGET_AVX512VL
   29850              :    && ix86_pre_reload_split ()) && 
   29851              : #line 25733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29852              : ( 1)))
   29853              :             return NULL;
   29854              :           return gen_split_3678 (insn, operands);
   29855              : 
   29856              :         case 5:
   29857              :           if (!(
   29858              : #line 26013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29859              : (TARGET_AVX512VL
   29860              :    && ix86_pre_reload_split ()) && 
   29861              : #line 26016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29862              : ( 1)))
   29863              :             return NULL;
   29864              :           return gen_split_3690 (insn, operands);
   29865              : 
   29866              :         case 6:
   29867              :           if (!(
   29868              : #line 25113 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29869              : (TARGET_AVX512VL
   29870              :    && ix86_pre_reload_split ()) && 
   29871              : #line 25116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29872              : ( 1)))
   29873              :             return NULL;
   29874              :           return gen_split_3647 (insn, operands);
   29875              : 
   29876              :         case 7:
   29877              :           if (!(
   29878              : #line 25561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29879              : (TARGET_AVX512VL
   29880              :    && ix86_pre_reload_split ()) && 
   29881              : #line 25564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29882              : ( 1)))
   29883              :             return NULL;
   29884              :           return gen_split_3671 (insn, operands);
   29885              : 
   29886              :         case 8:
   29887              :           if (!(
   29888              : #line 25823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29889              : (TARGET_AVX512VL
   29890              :    && ix86_pre_reload_split ()) && 
   29891              : #line 25826 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29892              : ( 1)))
   29893              :             return NULL;
   29894              :           return gen_split_3682 (insn, operands);
   29895              : 
   29896              :         default:
   29897              :           return NULL;
   29898              :         }
   29899              : 
   29900              :     default:
   29901              :       return NULL;
   29902              :     }
   29903              : }
   29904              : 
   29905              :  rtx_insn *
   29906              : split_insns (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29907              : {
   29908              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29909              :   rtx x2, x3;
   29910              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29911              :   recog_data.insn = NULL;
   29912              :   switch (GET_CODE (x1))
   29913              :     {
   29914              :     case EH_RETURN:
   29915              :       if (!
   29916              : #line 21857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29917              : (epilogue_completed))
   29918              :         return NULL;
   29919              :       return gen_split_873 (insn, operands);
   29920              : 
   29921              :     case PARALLEL:
   29922              :     case UNSPEC:
   29923              :     case UNSPEC_VOLATILE:
   29924              :     case SET:
   29925              :       switch (GET_CODE (x1))
   29926              :         {
   29927              :         case SET:
   29928              :           res = split_14 (x1, insn);
   29929              :           if (res != NULL_RTX)
   29930              :             return res;
   29931              :           break;
   29932              : 
   29933              :         case PARALLEL:
   29934              :           res = split_37 (x1, insn);
   29935              :           if (res != NULL_RTX)
   29936              :             return res;
   29937              :           break;
   29938              : 
   29939              :         default:
   29940              :           break;
   29941              :         }
   29942              :       operands[0] = x1;
   29943              :       if (tls_address_pattern (operands[0], E_VOIDmode)
   29944              :           && 
   29945              : #line 24428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29946              : (TARGET_TLS_DIRECT_SEG_REFS))
   29947              :         return gen_split_934 (insn, operands);
   29948              :       switch (GET_CODE (x1))
   29949              :         {
   29950              :         case PARALLEL:
   29951              :           return split_88 (x1, insn);
   29952              : 
   29953              :         case SET:
   29954              :           x2 = XEXP (x1, 1);
   29955              :           switch (GET_CODE (x2))
   29956              :             {
   29957              :             case NEG:
   29958              :               res = split_41 (x1, insn);
   29959              :               if (res != NULL_RTX)
   29960              :                 return res;
   29961              :               break;
   29962              : 
   29963              :             case IF_THEN_ELSE:
   29964              :               res = split_43 (x1, insn);
   29965              :               if (res != NULL_RTX)
   29966              :                 return res;
   29967              :               break;
   29968              : 
   29969              :             case UNSPEC:
   29970              :               res = split_44 (x1, insn);
   29971              :               if (res != NULL_RTX)
   29972              :                 return res;
   29973              :               break;
   29974              : 
   29975              :             case COMPARE:
   29976              :               res = split_45 (x1, insn);
   29977              :               if (res != NULL_RTX)
   29978              :                 return res;
   29979              :               break;
   29980              : 
   29981              :             case NOT:
   29982              :               res = split_46 (x1, insn);
   29983              :               if (res != NULL_RTX)
   29984              :                 return res;
   29985              :               break;
   29986              : 
   29987              :             case REG:
   29988              :             case SUBREG:
   29989              :             case MEM:
   29990              :               res = split_47 (x1, insn);
   29991              :               if (res != NULL_RTX)
   29992              :                 return res;
   29993              :               break;
   29994              : 
   29995              :             case CONST_INT:
   29996              :             case CONST_DOUBLE:
   29997              :             case CONST_VECTOR:
   29998              :               operands[1] = x2;
   29999              :               x3 = XEXP (x1, 0);
   30000              :               operands[0] = x3;
   30001              :               switch (GET_MODE (operands[0]))
   30002              :                 {
   30003              :                 case E_V8QImode:
   30004              :                   if (nonimmediate_gr_operand (operands[0], E_V8QImode)
   30005              :                       && const0_operand (operands[1], E_V8QImode)
   30006              :                       && 
   30007              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30008              : (!TARGET_64BIT && reload_completed))
   30009              :                     return gen_split_1022 (insn, operands);
   30010              :                   if (memory_operand (operands[0], E_V8QImode)
   30011              :                       && x86_64_const_vector_operand (operands[1], E_V8QImode)
   30012              :                       && ((
   30013              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30014              : (!TARGET_LCP_STALL || V8QImode != V2QImode) && 
   30015              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30016              : (TARGET_64BIT)) && 
   30017              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30018              : ( reload_completed)))
   30019              :                     return gen_split_1058 (insn, operands);
   30020              :                   break;
   30021              : 
   30022              :                 case E_V4HImode:
   30023              :                   if (nonimmediate_gr_operand (operands[0], E_V4HImode)
   30024              :                       && const0_operand (operands[1], E_V4HImode)
   30025              :                       && 
   30026              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30027              : (!TARGET_64BIT && reload_completed))
   30028              :                     return gen_split_1023 (insn, operands);
   30029              :                   if (memory_operand (operands[0], E_V4HImode)
   30030              :                       && x86_64_const_vector_operand (operands[1], E_V4HImode)
   30031              :                       && ((
   30032              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30033              : (!TARGET_LCP_STALL || V4HImode != V2QImode) && 
   30034              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30035              : (TARGET_64BIT)) && 
   30036              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30037              : ( reload_completed)))
   30038              :                     return gen_split_1059 (insn, operands);
   30039              :                   break;
   30040              : 
   30041              :                 case E_V2SImode:
   30042              :                   if (nonimmediate_gr_operand (operands[0], E_V2SImode)
   30043              :                       && const0_operand (operands[1], E_V2SImode)
   30044              :                       && 
   30045              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30046              : (!TARGET_64BIT && reload_completed))
   30047              :                     return gen_split_1024 (insn, operands);
   30048              :                   if (memory_operand (operands[0], E_V2SImode)
   30049              :                       && x86_64_const_vector_operand (operands[1], E_V2SImode)
   30050              :                       && ((
   30051              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30052              : (!TARGET_LCP_STALL || V2SImode != V2QImode) && 
   30053              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30054              : (TARGET_64BIT)) && 
   30055              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30056              : ( reload_completed)))
   30057              :                     return gen_split_1062 (insn, operands);
   30058              :                   break;
   30059              : 
   30060              :                 case E_V1DImode:
   30061              :                   if (nonimmediate_gr_operand (operands[0], E_V1DImode)
   30062              :                       && const0_operand (operands[1], E_V1DImode)
   30063              :                       && 
   30064              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30065              : (!TARGET_64BIT && reload_completed))
   30066              :                     return gen_split_1025 (insn, operands);
   30067              :                   if (memory_operand (operands[0], E_V1DImode)
   30068              :                       && x86_64_const_vector_operand (operands[1], E_V1DImode)
   30069              :                       && ((
   30070              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30071              : (!TARGET_LCP_STALL || V1DImode != V2QImode) && 
   30072              : #line 90 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30073              : (TARGET_64BIT)) && 
   30074              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30075              : ( reload_completed)))
   30076              :                     return gen_split_1064 (insn, operands);
   30077              :                   break;
   30078              : 
   30079              :                 case E_V2SFmode:
   30080              :                   if (nonimmediate_gr_operand (operands[0], E_V2SFmode)
   30081              :                       && const0_operand (operands[1], E_V2SFmode)
   30082              :                       && 
   30083              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30084              : (!TARGET_64BIT && reload_completed))
   30085              :                     return gen_split_1026 (insn, operands);
   30086              :                   if (memory_operand (operands[0], E_V2SFmode)
   30087              :                       && x86_64_const_vector_operand (operands[1], E_V2SFmode)
   30088              :                       && ((
   30089              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30090              : (!TARGET_LCP_STALL || V2SFmode != V2QImode) && 
   30091              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30092              : (TARGET_64BIT)) && 
   30093              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30094              : ( reload_completed)))
   30095              :                     return gen_split_1063 (insn, operands);
   30096              :                   break;
   30097              : 
   30098              :                 case E_V4HFmode:
   30099              :                   if (nonimmediate_gr_operand (operands[0], E_V4HFmode)
   30100              :                       && const0_operand (operands[1], E_V4HFmode)
   30101              :                       && 
   30102              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30103              : (!TARGET_64BIT && reload_completed))
   30104              :                     return gen_split_1027 (insn, operands);
   30105              :                   if (memory_operand (operands[0], E_V4HFmode)
   30106              :                       && x86_64_const_vector_operand (operands[1], E_V4HFmode)
   30107              :                       && ((
   30108              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30109              : (!TARGET_LCP_STALL || V4HFmode != V2QImode) && 
   30110              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30111              : (TARGET_64BIT)) && 
   30112              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30113              : ( reload_completed)))
   30114              :                     return gen_split_1060 (insn, operands);
   30115              :                   break;
   30116              : 
   30117              :                 case E_V4BFmode:
   30118              :                   if (nonimmediate_gr_operand (operands[0], E_V4BFmode)
   30119              :                       && const0_operand (operands[1], E_V4BFmode)
   30120              :                       && 
   30121              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30122              : (!TARGET_64BIT && reload_completed))
   30123              :                     return gen_split_1028 (insn, operands);
   30124              :                   if (memory_operand (operands[0], E_V4BFmode)
   30125              :                       && x86_64_const_vector_operand (operands[1], E_V4BFmode)
   30126              :                       && ((
   30127              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30128              : (!TARGET_LCP_STALL || V4BFmode != V2QImode) && 
   30129              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30130              : (TARGET_64BIT)) && 
   30131              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30132              : ( reload_completed)))
   30133              :                     return gen_split_1061 (insn, operands);
   30134              :                   break;
   30135              : 
   30136              :                 case E_V2QImode:
   30137              :                   if (memory_operand (operands[0], E_V2QImode)
   30138              :                       && x86_64_const_vector_operand (operands[1], E_V2QImode)
   30139              :                       && (
   30140              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30141              : (!TARGET_LCP_STALL || V2QImode != V2QImode) && 
   30142              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30143              : ( reload_completed)))
   30144              :                     return gen_split_1052 (insn, operands);
   30145              :                   break;
   30146              : 
   30147              :                 case E_V4QImode:
   30148              :                   if (memory_operand (operands[0], E_V4QImode)
   30149              :                       && x86_64_const_vector_operand (operands[1], E_V4QImode)
   30150              :                       && (
   30151              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30152              : (!TARGET_LCP_STALL || V4QImode != V2QImode) && 
   30153              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30154              : ( reload_completed)))
   30155              :                     return gen_split_1053 (insn, operands);
   30156              :                   break;
   30157              : 
   30158              :                 case E_V2HImode:
   30159              :                   if (memory_operand (operands[0], E_V2HImode)
   30160              :                       && x86_64_const_vector_operand (operands[1], E_V2HImode)
   30161              :                       && (
   30162              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30163              : (!TARGET_LCP_STALL || V2HImode != V2QImode) && 
   30164              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30165              : ( reload_completed)))
   30166              :                     return gen_split_1054 (insn, operands);
   30167              :                   break;
   30168              : 
   30169              :                 case E_V1SImode:
   30170              :                   if (memory_operand (operands[0], E_V1SImode)
   30171              :                       && x86_64_const_vector_operand (operands[1], E_V1SImode)
   30172              :                       && (
   30173              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30174              : (!TARGET_LCP_STALL || V1SImode != V2QImode) && 
   30175              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30176              : ( reload_completed)))
   30177              :                     return gen_split_1055 (insn, operands);
   30178              :                   break;
   30179              : 
   30180              :                 case E_V2HFmode:
   30181              :                   if (memory_operand (operands[0], E_V2HFmode)
   30182              :                       && x86_64_const_vector_operand (operands[1], E_V2HFmode)
   30183              :                       && (
   30184              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30185              : (!TARGET_LCP_STALL || V2HFmode != V2QImode) && 
   30186              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30187              : ( reload_completed)))
   30188              :                     return gen_split_1056 (insn, operands);
   30189              :                   break;
   30190              : 
   30191              :                 case E_V2BFmode:
   30192              :                   if (memory_operand (operands[0], E_V2BFmode)
   30193              :                       && x86_64_const_vector_operand (operands[1], E_V2BFmode)
   30194              :                       && (
   30195              : #line 601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30196              : (!TARGET_LCP_STALL || V2BFmode != V2QImode) && 
   30197              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30198              : ( reload_completed)))
   30199              :                     return gen_split_1057 (insn, operands);
   30200              :                   break;
   30201              : 
   30202              :                 default:
   30203              :                   break;
   30204              :                 }
   30205              :               break;
   30206              : 
   30207              :             case PLUS:
   30208              :               res = split_48 (x1, insn);
   30209              :               if (res != NULL_RTX)
   30210              :                 return res;
   30211              :               break;
   30212              : 
   30213              :             case MINUS:
   30214              :               res = split_49 (x1, insn);
   30215              :               if (res != NULL_RTX)
   30216              :                 return res;
   30217              :               break;
   30218              : 
   30219              :             case VEC_SELECT:
   30220              :               res = split_51 (x1, insn);
   30221              :               if (res != NULL_RTX)
   30222              :                 return res;
   30223              :               break;
   30224              : 
   30225              :             case LT:
   30226              :               x3 = XEXP (x1, 0);
   30227              :               operands[0] = x3;
   30228              :               switch (pattern241 (x2))
   30229              :                 {
   30230              :                 case 0:
   30231              :                   if ((
   30232              : #line 3905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30233              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()) && 
   30234              : #line 3907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30235              : ( 1)))
   30236              :                     return gen_split_1094 (insn, operands);
   30237              :                   break;
   30238              : 
   30239              :                 case 1:
   30240              :                   if ((
   30241              : #line 3905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30242              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()) && 
   30243              : #line 3907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30244              : ( 1)))
   30245              :                     return gen_split_1095 (insn, operands);
   30246              :                   break;
   30247              : 
   30248              :                 case 2:
   30249              :                   if ((
   30250              : #line 3994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30251              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30252              : #line 3996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30253              : ( 1)))
   30254              :                     return gen_split_1099 (insn, operands);
   30255              :                   break;
   30256              : 
   30257              :                 default:
   30258              :                   break;
   30259              :                 }
   30260              :               break;
   30261              : 
   30262              :             case AND:
   30263              :               res = split_52 (x1, insn);
   30264              :               if (res != NULL_RTX)
   30265              :                 return res;
   30266              :               break;
   30267              : 
   30268              :             case VEC_CONCAT:
   30269              :               res = split_53 (x1, insn);
   30270              :               if (res != NULL_RTX)
   30271              :                 return res;
   30272              :               break;
   30273              : 
   30274              :             case VEC_MERGE:
   30275              :               res = split_54 (x1, insn);
   30276              :               if (res != NULL_RTX)
   30277              :                 return res;
   30278              :               break;
   30279              : 
   30280              :             case ZERO_EXTEND:
   30281              :               res = split_55 (x1, insn);
   30282              :               if (res != NULL_RTX)
   30283              :                 return res;
   30284              :               break;
   30285              : 
   30286              :             case IOR:
   30287              :               x3 = XEXP (x1, 0);
   30288              :               operands[0] = x3;
   30289              :               switch (pattern243 (x2))
   30290              :                 {
   30291              :                 case 0:
   30292              :                   if (
   30293              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30294              : (TARGET_AVX512F && reload_completed))
   30295              :                     return gen_split_1232 (insn, operands);
   30296              :                   break;
   30297              : 
   30298              :                 case 1:
   30299              :                   if (
   30300              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30301              : (TARGET_AVX512F && reload_completed))
   30302              :                     return gen_split_1235 (insn, operands);
   30303              :                   break;
   30304              : 
   30305              :                 case 2:
   30306              :                   if ((
   30307              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30308              : (TARGET_AVX512F && reload_completed) && 
   30309              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30310              : (TARGET_AVX512BW)))
   30311              :                     return gen_split_1238 (insn, operands);
   30312              :                   break;
   30313              : 
   30314              :                 case 3:
   30315              :                   if ((
   30316              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30317              : (TARGET_AVX512F && reload_completed) && 
   30318              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30319              : (TARGET_AVX512BW)))
   30320              :                     return gen_split_1241 (insn, operands);
   30321              :                   break;
   30322              : 
   30323              :                 default:
   30324              :                   break;
   30325              :                 }
   30326              :               break;
   30327              : 
   30328              :             case XOR:
   30329              :               x3 = XEXP (x1, 0);
   30330              :               operands[0] = x3;
   30331              :               switch (pattern243 (x2))
   30332              :                 {
   30333              :                 case 0:
   30334              :                   if (
   30335              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30336              : (TARGET_AVX512F && reload_completed))
   30337              :                     return gen_split_1233 (insn, operands);
   30338              :                   break;
   30339              : 
   30340              :                 case 1:
   30341              :                   if (
   30342              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30343              : (TARGET_AVX512F && reload_completed))
   30344              :                     return gen_split_1236 (insn, operands);
   30345              :                   break;
   30346              : 
   30347              :                 case 2:
   30348              :                   if ((
   30349              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30350              : (TARGET_AVX512F && reload_completed) && 
   30351              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30352              : (TARGET_AVX512BW)))
   30353              :                     return gen_split_1239 (insn, operands);
   30354              :                   break;
   30355              : 
   30356              :                 case 3:
   30357              :                   if ((
   30358              : #line 2149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30359              : (TARGET_AVX512F && reload_completed) && 
   30360              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30361              : (TARGET_AVX512BW)))
   30362              :                     return gen_split_1242 (insn, operands);
   30363              :                   break;
   30364              : 
   30365              :                 default:
   30366              :                   break;
   30367              :                 }
   30368              :               break;
   30369              : 
   30370              :             case ASHIFT:
   30371              :               switch (pattern55 (x1))
   30372              :                 {
   30373              :                 case 0:
   30374              :                   if (
   30375              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30376              : (TARGET_AVX512F && reload_completed))
   30377              :                     return gen_split_1264 (insn, operands);
   30378              :                   break;
   30379              : 
   30380              :                 case 1:
   30381              :                   if (
   30382              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30383              : (TARGET_AVX512F && reload_completed))
   30384              :                     return gen_split_1266 (insn, operands);
   30385              :                   break;
   30386              : 
   30387              :                 case 2:
   30388              :                   if ((
   30389              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30390              : (TARGET_AVX512F && reload_completed) && 
   30391              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30392              : (TARGET_AVX512BW)))
   30393              :                     return gen_split_1268 (insn, operands);
   30394              :                   break;
   30395              : 
   30396              :                 case 3:
   30397              :                   if ((
   30398              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30399              : (TARGET_AVX512F && reload_completed) && 
   30400              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30401              : (TARGET_AVX512BW)))
   30402              :                     return gen_split_1270 (insn, operands);
   30403              :                   break;
   30404              : 
   30405              :                 default:
   30406              :                   break;
   30407              :                 }
   30408              :               break;
   30409              : 
   30410              :             case LSHIFTRT:
   30411              :               switch (pattern55 (x1))
   30412              :                 {
   30413              :                 case 0:
   30414              :                   if (
   30415              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30416              : (TARGET_AVX512F && reload_completed))
   30417              :                     return gen_split_1265 (insn, operands);
   30418              :                   break;
   30419              : 
   30420              :                 case 1:
   30421              :                   if (
   30422              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30423              : (TARGET_AVX512F && reload_completed))
   30424              :                     return gen_split_1267 (insn, operands);
   30425              :                   break;
   30426              : 
   30427              :                 case 2:
   30428              :                   if ((
   30429              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30430              : (TARGET_AVX512F && reload_completed) && 
   30431              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30432              : (TARGET_AVX512BW)))
   30433              :                     return gen_split_1269 (insn, operands);
   30434              :                   break;
   30435              : 
   30436              :                 case 3:
   30437              :                   if ((
   30438              : #line 2313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30439              : (TARGET_AVX512F && reload_completed) && 
   30440              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30441              : (TARGET_AVX512BW)))
   30442              :                     return gen_split_1271 (insn, operands);
   30443              :                   break;
   30444              : 
   30445              :                 default:
   30446              :                   break;
   30447              :                 }
   30448              :               break;
   30449              : 
   30450              :             case SIGN_EXTEND:
   30451              :               res = split_56 (x1, insn);
   30452              :               if (res != NULL_RTX)
   30453              :                 return res;
   30454              :               break;
   30455              : 
   30456              :             case SS_PLUS:
   30457              :               if (pattern57 (x1) == 0
   30458              :                   && 
   30459              : #line 23145 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30460              : (TARGET_SSSE3 && reload_completed
   30461              :    && SSE_REGNO_P (REGNO (operands[0]))))
   30462              :                 return gen_split_3579 (insn, operands);
   30463              :               break;
   30464              : 
   30465              :             case SS_MINUS:
   30466              :               if (pattern57 (x1) == 0
   30467              :                   && 
   30468              : #line 23145 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30469              : (TARGET_SSSE3 && reload_completed
   30470              :    && SSE_REGNO_P (REGNO (operands[0]))))
   30471              :                 return gen_split_3581 (insn, operands);
   30472              :               break;
   30473              : 
   30474              :             case NE:
   30475              :             case EQ:
   30476              :               res = split_57 (x1, insn);
   30477              :               if (res != NULL_RTX)
   30478              :                 return res;
   30479              :               break;
   30480              : 
   30481              :             default:
   30482              :               break;
   30483              :             }
   30484              :           x3 = XEXP (x1, 0);
   30485              :           operands[0] = x3;
   30486              :           return split_87 (x1, insn);
   30487              : 
   30488              :         default:
   30489              :           return NULL;
   30490              :         }
   30491              : 
   30492              :     default:
   30493              :       return NULL;
   30494              :     }
   30495              : }
   30496              : 
   30497              :  rtx_insn *
   30498              : peephole2_6 (rtx x1 ATTRIBUTE_UNUSED,
   30499              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30500              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30501              : {
   30502              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30503              :   rtx x2, x3;
   30504              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30505              :   x2 = XEXP (x1, 1);
   30506              :   operands[1] = x2;
   30507              :   x3 = XEXP (x1, 0);
   30508              :   operands[0] = x3;
   30509              :   switch (GET_CODE (operands[0]))
   30510              :     {
   30511              :     case MEM:
   30512              :       if (push_operand (operands[0], E_DImode)
   30513              :           && immediate_operand (operands[1], E_DImode)
   30514              :           && 
   30515              : #line 2262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30516              : (TARGET_64BIT
   30517              :    && !symbolic_operand (operands[1], DImode)
   30518              :    && !x86_64_immediate_operand (operands[1], DImode)))
   30519              :         {
   30520              :           *pmatch_len_ = 0;
   30521              :           res = gen_peephole2_3 (insn, operands);
   30522              :           if (res != NULL_RTX)
   30523              :             return res;
   30524              :         }
   30525              :       break;
   30526              : 
   30527              :     case REG:
   30528              :     case SUBREG:
   30529              :       res = peephole2_4 (x1, insn, pmatch_len_);
   30530              :       if (res != NULL_RTX)
   30531              :         return res;
   30532              :       break;
   30533              : 
   30534              :     default:
   30535              :       break;
   30536              :     }
   30537              :   switch (GET_MODE (operands[0]))
   30538              :     {
   30539              :     case E_HImode:
   30540              :       if (memory_operand (operands[0], E_HImode)
   30541              :           && const_int_operand (operands[1], E_HImode)
   30542              :           && 
   30543              : #line 3035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30544              : ((operands[1] == const0_rtx || operands[1] == constm1_rtx)
   30545              :    && optimize_insn_for_size_p () && optimize_size > 1
   30546              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   30547              :         {
   30548              :           *pmatch_len_ = 0;
   30549              :           res = gen_peephole2_8 (insn, operands);
   30550              :           if (res != NULL_RTX)
   30551              :             return res;
   30552              :         }
   30553              :       break;
   30554              : 
   30555              :     case E_SImode:
   30556              :       if (memory_operand (operands[0], E_SImode)
   30557              :           && const_int_operand (operands[1], E_SImode)
   30558              :           && 
   30559              : #line 3035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30560              : ((operands[1] == const0_rtx || operands[1] == constm1_rtx)
   30561              :    && optimize_insn_for_size_p () && optimize_size > 1
   30562              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   30563              :         {
   30564              :           *pmatch_len_ = 0;
   30565              :           res = gen_peephole2_9 (insn, operands);
   30566              :           if (res != NULL_RTX)
   30567              :             return res;
   30568              :         }
   30569              :       break;
   30570              : 
   30571              :     case E_DImode:
   30572              :       if (memory_operand (operands[0], E_DImode)
   30573              :           && const_int_operand (operands[1], E_DImode)
   30574              :           && (
   30575              : #line 3035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30576              : ((operands[1] == const0_rtx || operands[1] == constm1_rtx)
   30577              :    && optimize_insn_for_size_p () && optimize_size > 1
   30578              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   30579              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30580              : (TARGET_64BIT)))
   30581              :         {
   30582              :           *pmatch_len_ = 0;
   30583              :           res = gen_peephole2_10 (insn, operands);
   30584              :           if (res != NULL_RTX)
   30585              :             return res;
   30586              :         }
   30587              :       break;
   30588              : 
   30589              :     default:
   30590              :       break;
   30591              :     }
   30592              :   if (GET_CODE (x2) == CONST_INT)
   30593              :     {
   30594              :       if (XWINT (x2, 0) == 0L)
   30595              :         {
   30596              :           res = peephole2_5 (x1, insn, pmatch_len_);
   30597              :           if (res != NULL_RTX)
   30598              :             return res;
   30599              :         }
   30600              :       operands[1] = x2;
   30601              :       operands[0] = x3;
   30602              :       switch (GET_MODE (operands[0]))
   30603              :         {
   30604              :         case E_SImode:
   30605              :           if (const_int_operand (operands[1], E_SImode))
   30606              :             {
   30607              :               if (any_QIreg_operand (operands[0], E_SImode)
   30608              :                   && 
   30609              : #line 5038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30610              : (optimize_insn_for_size_p () && optimize_size > 1
   30611              :    && IN_RANGE (INTVAL (operands[1]), 128, 255)
   30612              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   30613              :                 {
   30614              :                   *pmatch_len_ = 0;
   30615              :                   res = gen_peephole2_49 (insn, operands);
   30616              :                   if (res != NULL_RTX)
   30617              :                     return res;
   30618              :                 }
   30619              :               if (QIreg_operand (operands[0], E_SImode)
   30620              :                   && 
   30621              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30622              : (optimize_insn_for_size_p () && optimize_size > 1
   30623              :    && (INTVAL (operands[1]) & ~0xff00) == 0
   30624              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   30625              :                 {
   30626              :                   *pmatch_len_ = 0;
   30627              :                   res = gen_peephole2_51 (insn, operands);
   30628              :                   if (res != NULL_RTX)
   30629              :                     return res;
   30630              :                 }
   30631              :             }
   30632              :           break;
   30633              : 
   30634              :         case E_DImode:
   30635              :           if (const_int_operand (operands[1], E_DImode))
   30636              :             {
   30637              :               if (any_QIreg_operand (operands[0], E_DImode)
   30638              :                   && (
   30639              : #line 5038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30640              : (optimize_insn_for_size_p () && optimize_size > 1
   30641              :    && IN_RANGE (INTVAL (operands[1]), 128, 255)
   30642              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   30643              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30644              : (TARGET_64BIT)))
   30645              :                 {
   30646              :                   *pmatch_len_ = 0;
   30647              :                   res = gen_peephole2_50 (insn, operands);
   30648              :                   if (res != NULL_RTX)
   30649              :                     return res;
   30650              :                 }
   30651              :               if (QIreg_operand (operands[0], E_DImode)
   30652              :                   && (
   30653              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30654              : (optimize_insn_for_size_p () && optimize_size > 1
   30655              :    && (INTVAL (operands[1]) & ~0xff00) == 0
   30656              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   30657              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30658              : (TARGET_64BIT)))
   30659              :                 {
   30660              :                   *pmatch_len_ = 0;
   30661              :                   res = gen_peephole2_52 (insn, operands);
   30662              :                   if (res != NULL_RTX)
   30663              :                     return res;
   30664              :                 }
   30665              :             }
   30666              :           break;
   30667              : 
   30668              :         default:
   30669              :           break;
   30670              :         }
   30671              :     }
   30672              :   operands[1] = x2;
   30673              :   operands[0] = x3;
   30674              :   switch (GET_MODE (operands[0]))
   30675              :     {
   30676              :     case E_QImode:
   30677              :       if (!memory_operand (operands[0], E_QImode)
   30678              :           || !immediate_operand (operands[1], E_QImode)
   30679              :           || !
   30680              : #line 29081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30681              : (optimize_insn_for_speed_p ()
   30682              :    && ((QImode == HImode
   30683              :        && TARGET_LCP_STALL)
   30684              :        || (TARGET_SPLIT_LONG_MOVES
   30685              :           && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))))
   30686              :         return NULL;
   30687              :       *pmatch_len_ = 0;
   30688              :       return gen_peephole2_285 (insn, operands);
   30689              : 
   30690              :     case E_HImode:
   30691              :       if (!memory_operand (operands[0], E_HImode)
   30692              :           || !immediate_operand (operands[1], E_HImode)
   30693              :           || !
   30694              : #line 29081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30695              : (optimize_insn_for_speed_p ()
   30696              :    && ((HImode == HImode
   30697              :        && TARGET_LCP_STALL)
   30698              :        || (TARGET_SPLIT_LONG_MOVES
   30699              :           && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))))
   30700              :         return NULL;
   30701              :       *pmatch_len_ = 0;
   30702              :       return gen_peephole2_286 (insn, operands);
   30703              : 
   30704              :     default:
   30705              :       return NULL;
   30706              :     }
   30707              : }
   30708              : 
   30709              :  rtx_insn *
   30710              : peephole2_9 (rtx x1 ATTRIBUTE_UNUSED,
   30711              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30712              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30713              : {
   30714              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30715              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30716              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30717              :   x2 = XEXP (x1, 1);
   30718              :   switch (GET_CODE (x2))
   30719              :     {
   30720              :     case CONST_INT:
   30721              :     case CONST_WIDE_INT:
   30722              :     case CONST_POLY_INT:
   30723              :     case CONST_FIXED:
   30724              :     case CONST_DOUBLE:
   30725              :     case CONST_VECTOR:
   30726              :     case CONST:
   30727              :     case LABEL_REF:
   30728              :     case SYMBOL_REF:
   30729              :     case HIGH:
   30730              :       res = peephole2_6 (x1, insn, pmatch_len_);
   30731              :       if (res != NULL_RTX)
   30732              :         return res;
   30733              :       break;
   30734              : 
   30735              :     case REG:
   30736              :       res = peephole2_7 (x1, insn, pmatch_len_);
   30737              :       if (res != NULL_RTX)
   30738              :         return res;
   30739              :       break;
   30740              : 
   30741              :     case SUBREG:
   30742              :     case MEM:
   30743              :       res = peephole2_8 (x1, insn, pmatch_len_);
   30744              :       if (res != NULL_RTX)
   30745              :         return res;
   30746              :       break;
   30747              : 
   30748              :     default:
   30749              :       break;
   30750              :     }
   30751              :   if (peep2_current_count < 2)
   30752              :     return NULL;
   30753              :   x3 = PATTERN (peep2_next_insn (1));
   30754              :   if (GET_CODE (x3) != SET)
   30755              :     return NULL;
   30756              :   x4 = XEXP (x1, 0);
   30757              :   switch (GET_MODE (x4))
   30758              :     {
   30759              :     case E_HImode:
   30760              :       if (peep2_current_count >= 3
   30761              :           && peep2_current_count >= 4)
   30762              :         {
   30763              :           operands[2] = x4;
   30764              :           if (general_reg_operand (operands[2], E_HImode))
   30765              :             {
   30766              :               operands[3] = x2;
   30767              :               if (general_gr_operand (operands[3], E_HImode))
   30768              :                 {
   30769              :                   x5 = XEXP (x3, 0);
   30770              :                   operands[0] = x5;
   30771              :                   if (general_reg_operand (operands[0], E_HImode))
   30772              :                     {
   30773              :                       x6 = XEXP (x3, 1);
   30774              :                       if (pattern967 (x6, 
   30775              : E_HImode) == 0
   30776              :                           && 
   30777              : #line 27679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30778              : (TARGET_CMOVE
   30779              :   && REGNO (operands[2]) != REGNO (operands[0])
   30780              :   && REGNO (operands[2]) != REGNO (operands[1])
   30781              :   && peep2_reg_dead_p (2, operands[1])
   30782              :   && peep2_reg_dead_p (4, operands[2])
   30783              :   && !reg_overlap_mentioned_p (operands[0], operands[3])
   30784              :   && !reg_mentioned_p (operands[2], operands[6])))
   30785              :                         {
   30786              :                           *pmatch_len_ = 3;
   30787              :                           res = gen_peephole2_230 (insn, operands);
   30788              :                           if (res != NULL_RTX)
   30789              :                             return res;
   30790              :                         }
   30791              :                     }
   30792              :                 }
   30793              :             }
   30794              :         }
   30795              :       operands[0] = x4;
   30796              :       operands[1] = x2;
   30797              :       if (x86_64_general_operand (operands[1], E_HImode)
   30798              :           && general_reg_operand (operands[0], E_HImode))
   30799              :         {
   30800              :           x5 = XEXP (x3, 0);
   30801              :           operands[2] = x5;
   30802              :           if (general_reg_operand (operands[2], E_HImode))
   30803              :             {
   30804              :               x6 = XEXP (x3, 1);
   30805              :               if (rtx_equal_p (x6, operands[0])
   30806              :                   && 
   30807              : #line 28278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30808              : (peep2_reg_dead_p (2, operands[0])))
   30809              :                 {
   30810              :                   *pmatch_len_ = 1;
   30811              :                   res = gen_peephole2_254 (insn, operands);
   30812              :                   if (res != NULL_RTX)
   30813              :                     return res;
   30814              :                 }
   30815              :             }
   30816              :         }
   30817              :       if (peep2_current_count < 3
   30818              :           || pattern852 (x3, 
   30819              : E_HImode) != 0)
   30820              :         return NULL;
   30821              :       switch (GET_MODE (operands[4]))
   30822              :         {
   30823              :         case E_HImode:
   30824              :           x7 = PATTERN (peep2_next_insn (2));
   30825              :           x8 = XVECEXP (x7, 0, 0);
   30826              :           x9 = XEXP (x8, 1);
   30827              :           if (pattern1897 (x9, 
   30828              : E_HImode) != 0
   30829              :               || !
   30830              : #line 29730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30831              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30832              :    && (REGNO (operands[4]) == REGNO (operands[0])
   30833              :        || REGNO (operands[4]) == REGNO (operands[3]))
   30834              :    && (rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   30835              :                              ? 3 : 0], operands[5])
   30836              :        ? rtx_equal_p (operands[2], operands[6])
   30837              :        : rtx_equal_p (operands[2], operands[5])
   30838              :          && rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   30839              :                                   ? 3 : 0], operands[6]))
   30840              :    && peep2_reg_dead_p (4, operands[4])
   30841              :    && peep2_reg_dead_p (5, operands[REGNO (operands[4]) == REGNO (operands[0])
   30842              :                                     ? 3 : 0])
   30843              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30844              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   30845              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   30846              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   30847              :    && !reg_overlap_mentioned_p (operands[3], operands[2])
   30848              :    && (HImode != QImode
   30849              :        || immediate_operand (operands[2], QImode)
   30850              :        || any_QIreg_operand (operands[2], QImode))))
   30851              :             return NULL;
   30852              :           *pmatch_len_ = 4;
   30853              :           return gen_peephole2_360 (insn, operands);
   30854              : 
   30855              :         case E_SImode:
   30856              :           x7 = PATTERN (peep2_next_insn (2));
   30857              :           x8 = XVECEXP (x7, 0, 0);
   30858              :           x9 = XEXP (x8, 1);
   30859              :           if (pattern1898 (x9, 
   30860              : E_HImode) != 0
   30861              :               || !
   30862              : #line 29774 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30863              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30864              :    && (REGNO (operands[5]) == REGNO (operands[0])
   30865              :        || REGNO (operands[5]) == REGNO (operands[3]))
   30866              :    && REGNO (operands[5]) == REGNO (operands[4])
   30867              :    && (rtx_equal_p (operands[REGNO (operands[5]) == REGNO (operands[0])
   30868              :                              ? 3 : 0], operands[6])
   30869              :        ? (REG_P (operands[2])
   30870              :           ? REG_P (operands[7]) && REGNO (operands[2]) == REGNO (operands[7])
   30871              :           : rtx_equal_p (operands[2], operands[7]))
   30872              :        : (rtx_equal_p (operands[REGNO (operands[5]) == REGNO (operands[0])
   30873              :                                 ? 3 : 0], operands[7])
   30874              :           && REG_P (operands[2])
   30875              :           && REGNO (operands[2]) == REGNO (operands[6])))
   30876              :    && peep2_reg_dead_p (4, operands[5])
   30877              :    && peep2_reg_dead_p (5, operands[REGNO (operands[5]) == REGNO (operands[0])
   30878              :                                     ? 3 : 0])
   30879              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30880              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   30881              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   30882              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   30883              :    && !reg_overlap_mentioned_p (operands[3], operands[2])
   30884              :    && (HImode != QImode
   30885              :        || immediate_operand (operands[2], SImode)
   30886              :        || any_QIreg_operand (operands[2], SImode))))
   30887              :             return NULL;
   30888              :           *pmatch_len_ = 4;
   30889              :           return gen_peephole2_364 (insn, operands);
   30890              : 
   30891              :         default:
   30892              :           return NULL;
   30893              :         }
   30894              : 
   30895              :     case E_QImode:
   30896              :       operands[0] = x4;
   30897              :       operands[1] = x2;
   30898              :       if (x86_64_general_operand (operands[1], E_QImode)
   30899              :           && general_reg_operand (operands[0], E_QImode))
   30900              :         {
   30901              :           x5 = XEXP (x3, 0);
   30902              :           operands[2] = x5;
   30903              :           if (general_reg_operand (operands[2], E_QImode))
   30904              :             {
   30905              :               x6 = XEXP (x3, 1);
   30906              :               if (rtx_equal_p (x6, operands[0])
   30907              :                   && 
   30908              : #line 28278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30909              : (peep2_reg_dead_p (2, operands[0])))
   30910              :                 {
   30911              :                   *pmatch_len_ = 1;
   30912              :                   res = gen_peephole2_253 (insn, operands);
   30913              :                   if (res != NULL_RTX)
   30914              :                     return res;
   30915              :                 }
   30916              :             }
   30917              :         }
   30918              :       if (peep2_current_count < 3
   30919              :           || pattern852 (x3, 
   30920              : E_QImode) != 0)
   30921              :         return NULL;
   30922              :       switch (GET_MODE (operands[4]))
   30923              :         {
   30924              :         case E_QImode:
   30925              :           x7 = PATTERN (peep2_next_insn (2));
   30926              :           x8 = XVECEXP (x7, 0, 0);
   30927              :           x9 = XEXP (x8, 1);
   30928              :           if (pattern1897 (x9, 
   30929              : E_QImode) != 0
   30930              :               || !
   30931              : #line 29730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30932              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30933              :    && (REGNO (operands[4]) == REGNO (operands[0])
   30934              :        || REGNO (operands[4]) == REGNO (operands[3]))
   30935              :    && (rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   30936              :                              ? 3 : 0], operands[5])
   30937              :        ? rtx_equal_p (operands[2], operands[6])
   30938              :        : rtx_equal_p (operands[2], operands[5])
   30939              :          && rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   30940              :                                   ? 3 : 0], operands[6]))
   30941              :    && peep2_reg_dead_p (4, operands[4])
   30942              :    && peep2_reg_dead_p (5, operands[REGNO (operands[4]) == REGNO (operands[0])
   30943              :                                     ? 3 : 0])
   30944              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30945              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   30946              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   30947              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   30948              :    && !reg_overlap_mentioned_p (operands[3], operands[2])
   30949              :    && (QImode != QImode
   30950              :        || immediate_operand (operands[2], QImode)
   30951              :        || any_QIreg_operand (operands[2], QImode))))
   30952              :             return NULL;
   30953              :           *pmatch_len_ = 4;
   30954              :           return gen_peephole2_359 (insn, operands);
   30955              : 
   30956              :         case E_SImode:
   30957              :           x7 = PATTERN (peep2_next_insn (2));
   30958              :           x8 = XVECEXP (x7, 0, 0);
   30959              :           x9 = XEXP (x8, 1);
   30960              :           if (pattern1898 (x9, 
   30961              : E_QImode) != 0
   30962              :               || !
   30963              : #line 29774 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30964              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30965              :    && (REGNO (operands[5]) == REGNO (operands[0])
   30966              :        || REGNO (operands[5]) == REGNO (operands[3]))
   30967              :    && REGNO (operands[5]) == REGNO (operands[4])
   30968              :    && (rtx_equal_p (operands[REGNO (operands[5]) == REGNO (operands[0])
   30969              :                              ? 3 : 0], operands[6])
   30970              :        ? (REG_P (operands[2])
   30971              :           ? REG_P (operands[7]) && REGNO (operands[2]) == REGNO (operands[7])
   30972              :           : rtx_equal_p (operands[2], operands[7]))
   30973              :        : (rtx_equal_p (operands[REGNO (operands[5]) == REGNO (operands[0])
   30974              :                                 ? 3 : 0], operands[7])
   30975              :           && REG_P (operands[2])
   30976              :           && REGNO (operands[2]) == REGNO (operands[6])))
   30977              :    && peep2_reg_dead_p (4, operands[5])
   30978              :    && peep2_reg_dead_p (5, operands[REGNO (operands[5]) == REGNO (operands[0])
   30979              :                                     ? 3 : 0])
   30980              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30981              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   30982              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   30983              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   30984              :    && !reg_overlap_mentioned_p (operands[3], operands[2])
   30985              :    && (QImode != QImode
   30986              :        || immediate_operand (operands[2], SImode)
   30987              :        || any_QIreg_operand (operands[2], SImode))))
   30988              :             return NULL;
   30989              :           *pmatch_len_ = 4;
   30990              :           return gen_peephole2_363 (insn, operands);
   30991              : 
   30992              :         default:
   30993              :           return NULL;
   30994              :         }
   30995              : 
   30996              :     default:
   30997              :       return NULL;
   30998              :     }
   30999              : }
   31000              : 
   31001              :  rtx_insn *
   31002              : peephole2_13 (rtx x1 ATTRIBUTE_UNUSED,
   31003              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31004              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31005              : {
   31006              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31007              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31008              :   rtx x10, x11, x12, x13, x14;
   31009              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31010              :   x2 = XEXP (x1, 1);
   31011              :   operands[1] = x2;
   31012              :   if (register_operand (operands[0], E_SImode))
   31013              :     {
   31014              :       res = peephole2_11 (x1, insn, pmatch_len_);
   31015              :       if (res != NULL_RTX)
   31016              :         return res;
   31017              :     }
   31018              :   if (peep2_current_count < 2
   31019              :       || peep2_current_count < 3
   31020              :       || !general_reg_operand (operands[0], E_SImode))
   31021              :     return NULL;
   31022              :   x3 = PATTERN (peep2_next_insn (1));
   31023              :   if (GET_CODE (x3) == PARALLEL
   31024              :       && XVECLEN (x3, 0) == 2)
   31025              :     {
   31026              :       x4 = XVECEXP (x3, 0, 0);
   31027              :       if (GET_CODE (x4) == SET)
   31028              :         {
   31029              :           if (memory_operand (operands[1], E_SImode))
   31030              :             {
   31031              :               switch (pattern1207 (x3, 
   31032              : E_SImode, 
   31033              : E_DImode))
   31034              :                 {
   31035              :                 case 0:
   31036              :                   if (
   31037              : #line 8982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31038              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31039              :    && peep2_reg_dead_p (3, operands[0])
   31040              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31041              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31042              :                     {
   31043              :                       *pmatch_len_ = 2;
   31044              :                       res = gen_peephole2_80 (insn, operands);
   31045              :                       if (res != NULL_RTX)
   31046              :                         return res;
   31047              :                     }
   31048              :                   break;
   31049              : 
   31050              :                 case 1:
   31051              :                   if (
   31052              : #line 9009 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31053              : (TARGET_APX_NDD
   31054              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31055              :    && peep2_reg_dead_p (3, operands[0])
   31056              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31057              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31058              :                     {
   31059              :                       *pmatch_len_ = 2;
   31060              :                       res = gen_peephole2_84 (insn, operands);
   31061              :                       if (res != NULL_RTX)
   31062              :                         return res;
   31063              :                     }
   31064              :                   break;
   31065              : 
   31066              :                 case 2:
   31067              :                   if (
   31068              : #line 9568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31069              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31070              :    && peep2_reg_dead_p (3, operands[0])
   31071              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31072              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31073              :                     {
   31074              :                       *pmatch_len_ = 2;
   31075              :                       res = gen_peephole2_100 (insn, operands);
   31076              :                       if (res != NULL_RTX)
   31077              :                         return res;
   31078              :                     }
   31079              :                   break;
   31080              : 
   31081              :                 case 3:
   31082              :                   x5 = PATTERN (peep2_next_insn (2));
   31083              :                   x6 = XEXP (x5, 0);
   31084              :                   if (rtx_equal_p (x6, operands[1])
   31085              :                       && 
   31086              : #line 9624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31087              : (TARGET_APX_NDD
   31088              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31089              :    && peep2_reg_dead_p (3, operands[0])
   31090              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31091              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31092              :                     {
   31093              :                       *pmatch_len_ = 2;
   31094              :                       res = gen_peephole2_102 (insn, operands);
   31095              :                       if (res != NULL_RTX)
   31096              :                         return res;
   31097              :                     }
   31098              :                   if (rtx_equal_p (x6, operands[2])
   31099              :                       && 
   31100              : #line 9679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31101              : (TARGET_APX_NDD
   31102              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31103              :    && peep2_reg_dead_p (3, operands[0])
   31104              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31105              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31106              :                     {
   31107              :                       *pmatch_len_ = 2;
   31108              :                       res = gen_peephole2_104 (insn, operands);
   31109              :                       if (res != NULL_RTX)
   31110              :                         return res;
   31111              :                     }
   31112              :                   break;
   31113              : 
   31114              :                 case 4:
   31115              :                   if (
   31116              : #line 10292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31117              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31118              :    && peep2_reg_dead_p (3, operands[0])
   31119              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31120              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31121              :                     {
   31122              :                       *pmatch_len_ = 2;
   31123              :                       res = gen_peephole2_116 (insn, operands);
   31124              :                       if (res != NULL_RTX)
   31125              :                         return res;
   31126              :                     }
   31127              :                   break;
   31128              : 
   31129              :                 case 5:
   31130              :                   if (
   31131              : #line 10337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31132              : (TARGET_APX_NDD
   31133              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31134              :    && peep2_reg_dead_p (3, operands[0])
   31135              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31136              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31137              :                     {
   31138              :                       *pmatch_len_ = 2;
   31139              :                       res = gen_peephole2_118 (insn, operands);
   31140              :                       if (res != NULL_RTX)
   31141              :                         return res;
   31142              :                     }
   31143              :                   break;
   31144              : 
   31145              :                 case 6:
   31146              :                   if (
   31147              : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31148              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31149              :    && peep2_reg_dead_p (3, operands[0])
   31150              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31151              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31152              :                     {
   31153              :                       *pmatch_len_ = 2;
   31154              :                       res = gen_peephole2_130 (insn, operands);
   31155              :                       if (res != NULL_RTX)
   31156              :                         return res;
   31157              :                     }
   31158              :                   break;
   31159              : 
   31160              :                 case 7:
   31161              :                   if (
   31162              : #line 9137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31163              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31164              :    && peep2_reg_dead_p (3, operands[0])
   31165              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31166              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31167              :                     {
   31168              :                       *pmatch_len_ = 2;
   31169              :                       res = gen_peephole2_92 (insn, operands);
   31170              :                       if (res != NULL_RTX)
   31171              :                         return res;
   31172              :                     }
   31173              :                   break;
   31174              : 
   31175              :                 case 8:
   31176              :                   if (
   31177              : #line 9163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31178              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31179              :    && peep2_reg_dead_p (3, operands[0])
   31180              :    && peep2_reg_dead_p (4, operands[5])
   31181              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31182              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31183              :    && !reg_overlap_mentioned_p (operands[5], operands[1])))
   31184              :                     {
   31185              :                       *pmatch_len_ = 3;
   31186              :                       res = gen_peephole2_96 (insn, operands);
   31187              :                       if (res != NULL_RTX)
   31188              :                         return res;
   31189              :                     }
   31190              :                   break;
   31191              : 
   31192              :                 case 9:
   31193              :                   if (
   31194              : #line 9858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31195              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31196              :    && peep2_reg_dead_p (3, operands[0])
   31197              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31198              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31199              :                     {
   31200              :                       *pmatch_len_ = 2;
   31201              :                       res = gen_peephole2_110 (insn, operands);
   31202              :                       if (res != NULL_RTX)
   31203              :                         return res;
   31204              :                     }
   31205              :                   break;
   31206              : 
   31207              :                 case 10:
   31208              :                   if (
   31209              : #line 9884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31210              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31211              :    && peep2_reg_dead_p (3, operands[0])
   31212              :    && peep2_reg_dead_p (4, operands[5])
   31213              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31214              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31215              :    && !reg_overlap_mentioned_p (operands[5], operands[1])))
   31216              :                     {
   31217              :                       *pmatch_len_ = 3;
   31218              :                       res = gen_peephole2_114 (insn, operands);
   31219              :                       if (res != NULL_RTX)
   31220              :                         return res;
   31221              :                     }
   31222              :                   break;
   31223              : 
   31224              :                 default:
   31225              :                   break;
   31226              :                 }
   31227              :             }
   31228              :           if (peep2_current_count >= 4
   31229              :               && pattern1209 (x3, 
   31230              : E_SImode) == 0
   31231              :               && 
   31232              : #line 15174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31233              : (REGNO (operands[0]) != REGNO (operands[2])
   31234              :    && !reg_mentioned_p (operands[0], operands[1])
   31235              :    && !reg_mentioned_p (operands[2], operands[1])))
   31236              :             {
   31237              :               *pmatch_len_ = 3;
   31238              :               res = gen_peephole2_171 (insn, operands);
   31239              :               if (res != NULL_RTX)
   31240              :                 return res;
   31241              :             }
   31242              :           if (general_reg_operand (operands[1], E_SImode))
   31243              :             {
   31244              :               x7 = XEXP (x4, 1);
   31245              :               if (GET_CODE (x7) == NEG
   31246              :                   && GET_MODE (x7) == E_SImode
   31247              :                   && pattern1353 (x3) == 0)
   31248              :                 {
   31249              :                   x5 = PATTERN (peep2_next_insn (2));
   31250              :                   if (GET_CODE (x5) == SET
   31251              :                       && pattern1354 (x5) == 0)
   31252              :                     {
   31253              :                       *pmatch_len_ = 2;
   31254              :                       res = gen_peephole2_177 (insn, operands);
   31255              :                       if (res != NULL_RTX)
   31256              :                         return res;
   31257              :                     }
   31258              :                 }
   31259              :             }
   31260              :         }
   31261              :     }
   31262              :   if (GET_CODE (x3) != SET)
   31263              :     return NULL;
   31264              :   if (register_operand (operands[1], E_SImode))
   31265              :     {
   31266              :       res = peephole2_12 (x1, insn, pmatch_len_);
   31267              :       if (res != NULL_RTX)
   31268              :         return res;
   31269              :     }
   31270              :   if (!immediate_operand (operands[1], E_SImode))
   31271              :     return NULL;
   31272              :   switch (pattern964 (x3, 
   31273              : E_DImode, 
   31274              : E_SImode))
   31275              :     {
   31276              :     case 0:
   31277              :       if (!(
   31278              : #line 11861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31279              : (REGNO (operands[3]) != AX_REG
   31280              :    && REGNO (operands[0]) != REGNO (operands[2])
   31281              :    && REGNO (operands[0]) != REGNO (operands[3])
   31282              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31283              :        || REGNO (operands[0]) == DX_REG
   31284              :        || peep2_reg_dead_p (3, operands[0]))) && 
   31285              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31286              : (!TARGET_64BIT)))
   31287              :         return NULL;
   31288              :       *pmatch_len_ = 2;
   31289              :       return gen_peephole2_134 (insn, operands);
   31290              : 
   31291              :     case 1:
   31292              :       if (!(
   31293              : #line 11883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31294              : (REGNO (operands[3]) != DX_REG
   31295              :    && REGNO (operands[0]) != REGNO (operands[2])
   31296              :    && REGNO (operands[0]) != REGNO (operands[3])
   31297              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31298              :        || REGNO (operands[0]) == REGNO (operands[5])
   31299              :        || peep2_reg_dead_p (3, operands[0]))
   31300              :    && (REGNO (operands[2]) == REGNO (operands[4])
   31301              :        || REGNO (operands[2]) == REGNO (operands[5])
   31302              :        || peep2_reg_dead_p (3, operands[2]))) && 
   31303              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31304              : (!TARGET_64BIT)))
   31305              :         return NULL;
   31306              :       *pmatch_len_ = 2;
   31307              :       return gen_peephole2_136 (insn, operands);
   31308              : 
   31309              :     case 2:
   31310              :       x5 = PATTERN (peep2_next_insn (2));
   31311              :       x8 = XVECEXP (x5, 0, 1);
   31312              :       x9 = XEXP (x8, 0);
   31313              :       if (!rtx_equal_p (x9, operands[2]))
   31314              :         return NULL;
   31315              :       x10 = XVECEXP (x5, 0, 0);
   31316              :       x11 = XEXP (x10, 1);
   31317              :       switch (GET_CODE (x11))
   31318              :         {
   31319              :         case SMUL_HIGHPART:
   31320              :           if (pattern1807 (x11) != 0
   31321              :               || !
   31322              : #line 12022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31323              : (REGNO (operands[3]) != AX_REG
   31324              :    && REGNO (operands[0]) != REGNO (operands[2])
   31325              :    && REGNO (operands[0]) != REGNO (operands[3])
   31326              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31327              :        || peep2_reg_dead_p (3, operands[0]))))
   31328              :             return NULL;
   31329              :           *pmatch_len_ = 2;
   31330              :           return gen_peephole2_138 (insn, operands);
   31331              : 
   31332              :         case UMUL_HIGHPART:
   31333              :           if (pattern1807 (x11) != 0
   31334              :               || !
   31335              : #line 12022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31336              : (REGNO (operands[3]) != AX_REG
   31337              :    && REGNO (operands[0]) != REGNO (operands[2])
   31338              :    && REGNO (operands[0]) != REGNO (operands[3])
   31339              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31340              :        || peep2_reg_dead_p (3, operands[0]))))
   31341              :             return NULL;
   31342              :           *pmatch_len_ = 2;
   31343              :           return gen_peephole2_139 (insn, operands);
   31344              : 
   31345              :         case ZERO_EXTEND:
   31346              :           if (GET_MODE (x11) != E_DImode
   31347              :               || !general_reg_operand (operands[4], E_DImode))
   31348              :             return NULL;
   31349              :           x12 = XEXP (x11, 0);
   31350              :           if (GET_MODE (x12) != E_SImode)
   31351              :             return NULL;
   31352              :           switch (GET_CODE (x12))
   31353              :             {
   31354              :             case SMUL_HIGHPART:
   31355              :               x13 = XEXP (x12, 0);
   31356              :               if (!rtx_equal_p (x13, operands[2]))
   31357              :                 return NULL;
   31358              :               x14 = XEXP (x12, 1);
   31359              :               if (!rtx_equal_p (x14, operands[0])
   31360              :                   || !
   31361              : #line 12043 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31362              : (TARGET_64BIT
   31363              :    && REGNO (operands[3]) != AX_REG
   31364              :    && REGNO (operands[0]) != REGNO (operands[2])
   31365              :    && REGNO (operands[2]) != REGNO (operands[3])
   31366              :    && REGNO (operands[0]) != REGNO (operands[3])
   31367              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31368              :        || peep2_reg_dead_p (3, operands[0]))))
   31369              :                 return NULL;
   31370              :               *pmatch_len_ = 2;
   31371              :               return gen_peephole2_142 (insn, operands);
   31372              : 
   31373              :             case UMUL_HIGHPART:
   31374              :               x13 = XEXP (x12, 0);
   31375              :               if (!rtx_equal_p (x13, operands[2]))
   31376              :                 return NULL;
   31377              :               x14 = XEXP (x12, 1);
   31378              :               if (!rtx_equal_p (x14, operands[0])
   31379              :                   || !
   31380              : #line 12043 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31381              : (TARGET_64BIT
   31382              :    && REGNO (operands[3]) != AX_REG
   31383              :    && REGNO (operands[0]) != REGNO (operands[2])
   31384              :    && REGNO (operands[2]) != REGNO (operands[3])
   31385              :    && REGNO (operands[0]) != REGNO (operands[3])
   31386              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31387              :        || peep2_reg_dead_p (3, operands[0]))))
   31388              :                 return NULL;
   31389              :               *pmatch_len_ = 2;
   31390              :               return gen_peephole2_143 (insn, operands);
   31391              : 
   31392              :             default:
   31393              :               return NULL;
   31394              :             }
   31395              : 
   31396              :         default:
   31397              :           return NULL;
   31398              :         }
   31399              : 
   31400              :     default:
   31401              :       return NULL;
   31402              :     }
   31403              : }
   31404              : 
   31405              :  rtx_insn *
   31406              : peephole2_27 (rtx x1 ATTRIBUTE_UNUSED,
   31407              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31408              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31409              : {
   31410              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31411              :   rtx x2, x3, x4, x5, x6;
   31412              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31413              :   if (!memory_operand (operands[1], E_SImode)
   31414              :       || !register_operand (operands[0], E_SImode))
   31415              :     return NULL;
   31416              :   x2 = PATTERN (peep2_next_insn (1));
   31417              :   switch (GET_CODE (x2))
   31418              :     {
   31419              :     case PARALLEL:
   31420              :       if (XVECLEN (x2, 0) != 2)
   31421              :         return NULL;
   31422              :       x3 = XVECEXP (x2, 0, 0);
   31423              :       if (GET_CODE (x3) != SET)
   31424              :         return NULL;
   31425              :       x4 = PATTERN (peep2_next_insn (2));
   31426              :       if (GET_CODE (x4) != SET)
   31427              :         return NULL;
   31428              :       x5 = XEXP (x3, 1);
   31429              :       switch (GET_CODE (x5))
   31430              :         {
   31431              :         case PLUS:
   31432              :         case MINUS:
   31433              :         case AND:
   31434              :         case IOR:
   31435              :         case XOR:
   31436              :           if (peep2_current_count < 4)
   31437              :             return NULL;
   31438              :           operands[3] = x5;
   31439              :           res = peephole2_26 (x1, insn, pmatch_len_);
   31440              :           if (res != NULL_RTX)
   31441              :             return res;
   31442              :           if (GET_CODE (x5) != XOR
   31443              :               || pattern1362 (x2, 
   31444              : E_SImode) != 0
   31445              :               || pattern1833 (x4, 
   31446              : E_SImode) != 0
   31447              :               || !
   31448              : #line 29541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31449              : (TARGET_APX_NDD
   31450              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31451              :    && REGNO (operands[3]) == REGNO (operands[0])
   31452              :    && (rtx_equal_p (operands[0], operands[5])
   31453              :        ? rtx_equal_p (operands[2], operands[6])
   31454              :        : rtx_equal_p (operands[2], operands[5])
   31455              :          && rtx_equal_p (operands[0], operands[6]))
   31456              :    && peep2_reg_dead_p (3, operands[4])
   31457              :    && peep2_reg_dead_p (4, operands[0])
   31458              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31459              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31460              :    && (SImode != QImode
   31461              :        || immediate_operand (operands[2], QImode)
   31462              :        || any_QIreg_operand (operands[2], QImode))))
   31463              :             return NULL;
   31464              :           *pmatch_len_ = 3;
   31465              :           return gen_peephole2_345 (insn, operands);
   31466              : 
   31467              :         case COMPARE:
   31468              :           if (pattern1269 (x2, 
   31469              : E_SImode) != 0
   31470              :               || pattern1516 (x2) != 0)
   31471              :             return NULL;
   31472              :           x6 = XEXP (x4, 0);
   31473              :           if (rtx_equal_p (x6, operands[1])
   31474              :               && 
   31475              : #line 29371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31476              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31477              :    && peep2_reg_dead_p (3, operands[0])
   31478              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31479              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31480              :    && ix86_match_ccmode (peep2_next_insn (1),
   31481              :                          (GET_CODE (operands[3]) == PLUS
   31482              :                           || GET_CODE (operands[3]) == MINUS)
   31483              :                          ? CCGOCmode : CCNOmode)))
   31484              :             {
   31485              :               *pmatch_len_ = 2;
   31486              :               res = gen_peephole2_325 (insn, operands);
   31487              :               if (res != NULL_RTX)
   31488              :                 return res;
   31489              :             }
   31490              :           if (peep2_current_count < 4
   31491              :               || pattern1834 (x6, 
   31492              : E_SImode) != 0
   31493              :               || !
   31494              : #line 29694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31495              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31496              :    && peep2_reg_dead_p (3, operands[0])
   31497              :    && peep2_reg_dead_p (4, operands[4])
   31498              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31499              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31500              :    && !reg_overlap_mentioned_p (operands[4], operands[1])
   31501              :    && ix86_match_ccmode (peep2_next_insn (1),
   31502              :                          (GET_CODE (operands[3]) == PLUS
   31503              :                           || GET_CODE (operands[3]) == MINUS)
   31504              :                          ? CCGOCmode : CCNOmode)))
   31505              :             return NULL;
   31506              :           *pmatch_len_ = 3;
   31507              :           return gen_peephole2_357 (insn, operands);
   31508              : 
   31509              :         default:
   31510              :           return NULL;
   31511              :         }
   31512              : 
   31513              :     case SET:
   31514              :       if (pattern855 (x2, 
   31515              : E_SImode) != 0
   31516              :           || !
   31517              : #line 29730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31518              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31519              :    && (REGNO (operands[4]) == REGNO (operands[0])
   31520              :        || REGNO (operands[4]) == REGNO (operands[3]))
   31521              :    && (rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   31522              :                              ? 3 : 0], operands[5])
   31523              :        ? rtx_equal_p (operands[2], operands[6])
   31524              :        : rtx_equal_p (operands[2], operands[5])
   31525              :          && rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   31526              :                                   ? 3 : 0], operands[6]))
   31527              :    && peep2_reg_dead_p (4, operands[4])
   31528              :    && peep2_reg_dead_p (5, operands[REGNO (operands[4]) == REGNO (operands[0])
   31529              :                                     ? 3 : 0])
   31530              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31531              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31532              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   31533              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   31534              :    && !reg_overlap_mentioned_p (operands[3], operands[2])
   31535              :    && (SImode != QImode
   31536              :        || immediate_operand (operands[2], QImode)
   31537              :        || any_QIreg_operand (operands[2], QImode))))
   31538              :         return NULL;
   31539              :       *pmatch_len_ = 4;
   31540              :       return gen_peephole2_361 (insn, operands);
   31541              : 
   31542              :     default:
   31543              :       return NULL;
   31544              :     }
   31545              : }
   31546              : 
   31547              :  rtx_insn *
   31548              : peephole2_32 (rtx x1 ATTRIBUTE_UNUSED,
   31549              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31550              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31551              : {
   31552              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31553              :   rtx x2, x3, x4, x5;
   31554              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31555              :   if (peep2_current_count >= 2)
   31556              :     {
   31557              :       x2 = PATTERN (peep2_next_insn (1));
   31558              :       if (GET_CODE (x2) == SET)
   31559              :         {
   31560              :           x3 = XEXP (x2, 1);
   31561              :           if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31562              :             {
   31563              :               x4 = XEXP (x2, 0);
   31564              :               operands[2] = x4;
   31565              :               if (memory_operand (operands[2], E_SImode))
   31566              :                 {
   31567              :                   if (peep2_current_count >= 3)
   31568              :                     {
   31569              :                       x5 = PATTERN (peep2_next_insn (2));
   31570              :                       if (pattern1270 (x5, 
   31571              : E_SImode) == 0
   31572              :                           && 
   31573              : #line 28183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31574              : (optimize_insn_for_size_p () && peep2_regno_dead_p (0, FLAGS_REG)))
   31575              :                         {
   31576              :                           *pmatch_len_ = 3;
   31577              :                           res = gen_peephole2_241 (insn, operands);
   31578              :                           if (res != NULL_RTX)
   31579              :                             return res;
   31580              :                         }
   31581              :                     }
   31582              :                   if (
   31583              : #line 28199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31584              : (optimize_insn_for_size_p () && peep2_regno_dead_p (0, FLAGS_REG)))
   31585              :                     {
   31586              :                       *pmatch_len_ = 1;
   31587              :                       res = gen_peephole2_243 (insn, operands);
   31588              :                       if (res != NULL_RTX)
   31589              :                         return res;
   31590              :                     }
   31591              :                 }
   31592              :             }
   31593              :         }
   31594              :     }
   31595              :   if (!
   31596              : #line 28212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31597              : (optimize_insn_for_size_p () && peep2_regno_dead_p (0, FLAGS_REG)))
   31598              :     return NULL;
   31599              :   *pmatch_len_ = 0;
   31600              :   return gen_peephole2_245 (insn, operands);
   31601              : }
   31602              : 
   31603              :  rtx_insn *
   31604              : peephole2_36 (rtx x1 ATTRIBUTE_UNUSED,
   31605              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31606              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31607              : {
   31608              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31609              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31610              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31611              :   rtx x18;
   31612              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31613              :   x2 = XEXP (x1, 1);
   31614              :   operands[1] = x2;
   31615              :   if (!general_operand (operands[1], E_QImode))
   31616              :     return NULL;
   31617              :   x3 = PATTERN (peep2_next_insn (1));
   31618              :   x4 = XVECEXP (x3, 0, 1);
   31619              :   if (GET_CODE (x4) != SET)
   31620              :     return NULL;
   31621              :   x5 = XEXP (x4, 1);
   31622              :   if (GET_CODE (x5) != UNSPEC_VOLATILE
   31623              :       || XVECLEN (x5, 0) != 1
   31624              :       || XINT (x5, 1) != 109
   31625              :       || GET_MODE (x5) != E_QImode)
   31626              :     return NULL;
   31627              :   x6 = XVECEXP (x5, 0, 0);
   31628              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31629              :     return NULL;
   31630              :   x7 = XVECEXP (x3, 0, 2);
   31631              :   if (GET_CODE (x7) != SET)
   31632              :     return NULL;
   31633              :   x8 = XEXP (x7, 1);
   31634              :   if (GET_CODE (x8) != UNSPEC_VOLATILE
   31635              :       || XVECLEN (x8, 0) != 1
   31636              :       || XINT (x8, 1) != 109
   31637              :       || GET_MODE (x8) != E_CCZmode)
   31638              :     return NULL;
   31639              :   x9 = XVECEXP (x8, 0, 0);
   31640              :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31641              :     return NULL;
   31642              :   x10 = XEXP (x7, 0);
   31643              :   if (GET_CODE (x10) != REG
   31644              :       || REGNO (x10) != 17
   31645              :       || GET_MODE (x10) != E_CCZmode)
   31646              :     return NULL;
   31647              :   x11 = XVECEXP (x3, 0, 0);
   31648              :   x12 = XEXP (x11, 1);
   31649              :   x13 = XVECEXP (x12, 0, 0);
   31650              :   operands[2] = x13;
   31651              :   if (!memory_operand (operands[2], E_QImode))
   31652              :     return NULL;
   31653              :   x14 = XVECEXP (x12, 0, 2);
   31654              :   operands[3] = x14;
   31655              :   if (!register_operand (operands[3], E_QImode)
   31656              :       || pattern1715 (x3) != 0)
   31657              :     return NULL;
   31658              :   x15 = PATTERN (peep2_next_insn (2));
   31659              :   if (pattern1548 (x15) != 0)
   31660              :     return NULL;
   31661              :   x16 = XEXP (x15, 1);
   31662              :   x17 = XEXP (x16, 0);
   31663              :   operands[5] = x17;
   31664              :   if (!register_operand (operands[5], E_QImode))
   31665              :     return NULL;
   31666              :   x18 = XEXP (x16, 1);
   31667              :   operands[6] = x18;
   31668              :   if (!general_operand (operands[6], E_QImode)
   31669              :       || !
   31670              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31671              : ((rtx_equal_p (operands[0], operands[5])
   31672              :     && rtx_equal_p (operands[1], operands[6]))
   31673              :    || (rtx_equal_p (operands[0], operands[6])
   31674              :        && rtx_equal_p (operands[1], operands[5]))))
   31675              :     return NULL;
   31676              :   *pmatch_len_ = 2;
   31677              :   return gen_peephole2_439 (insn, operands);
   31678              : }
   31679              : 
   31680              :  rtx_insn *
   31681              : peephole2_42 (rtx x1 ATTRIBUTE_UNUSED,
   31682              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31683              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31684              : {
   31685              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31686              :   rtx x2, x3, x4, x5, x6, x7, x8;
   31687              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31688              :   x2 = XVECEXP (x1, 0, 1);
   31689              :   if (pattern237 (x2, 
   31690              : E_CCmode, 
   31691              : 17) != 0)
   31692              :     return NULL;
   31693              :   x3 = XVECEXP (x1, 0, 0);
   31694              :   x4 = XEXP (x3, 1);
   31695              :   switch (XWINT (x4, 0))
   31696              :     {
   31697              :     case 0L:
   31698              :       res = peephole2_41 (x1, insn, pmatch_len_);
   31699              :       if (res != NULL_RTX)
   31700              :         return res;
   31701              :       break;
   31702              : 
   31703              :     case 1L:
   31704              :       x5 = XEXP (x3, 0);
   31705              :       if (GET_CODE (x5) == ZERO_EXTRACT
   31706              :           && pattern1079 (x5) == 0
   31707              :           && 
   31708              : #line 20020 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31709              : (TARGET_64BIT && !TARGET_USE_BT))
   31710              :         {
   31711              :           *pmatch_len_ = 0;
   31712              :           res = gen_peephole2_189 (insn, operands);
   31713              :           if (res != NULL_RTX)
   31714              :             return res;
   31715              :         }
   31716              :       break;
   31717              : 
   31718              :     default:
   31719              :       break;
   31720              :     }
   31721              :   if (peep2_current_count < 2
   31722              :       || peep2_current_count < 3)
   31723              :     return NULL;
   31724              :   x5 = XEXP (x3, 0);
   31725              :   operands[0] = x5;
   31726              :   x6 = PATTERN (peep2_next_insn (1));
   31727              :   if (pattern423 (x6, 
   31728              : UNSPEC_VOLATILE, 
   31729              : 3) != 0)
   31730              :     return NULL;
   31731              :   x7 = XVECEXP (x6, 0, 1);
   31732              :   if (GET_CODE (x7) != SET)
   31733              :     return NULL;
   31734              :   x8 = PATTERN (peep2_next_insn (2));
   31735              :   if (pattern1548 (x8) != 0)
   31736              :     return NULL;
   31737              :   switch (GET_MODE (operands[0]))
   31738              :     {
   31739              :     case E_SImode:
   31740              :       if (!register_operand (operands[0], E_SImode))
   31741              :         return NULL;
   31742              :       operands[1] = x4;
   31743              :       switch (pattern1836 (x6, 
   31744              : E_SImode))
   31745              :         {
   31746              :         case 0:
   31747              :           if (
   31748              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31749              : (REGNO (operands[0]) == REGNO (operands[2])))
   31750              :             {
   31751              :               *pmatch_len_ = 2;
   31752              :               res = gen_peephole2_443 (insn, operands);
   31753              :               if (res != NULL_RTX)
   31754              :                 return res;
   31755              :             }
   31756              :           break;
   31757              : 
   31758              :         case 1:
   31759              :           if (
   31760              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31761              : (REGNO (operands[0]) == REGNO (operands[2])))
   31762              :             {
   31763              :               *pmatch_len_ = 2;
   31764              :               res = gen_peephole2_445 (insn, operands);
   31765              :               if (res != NULL_RTX)
   31766              :                 return res;
   31767              :             }
   31768              :           break;
   31769              : 
   31770              :         case 2:
   31771              :           if (
   31772              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31773              : (REGNO (operands[0]) == REGNO (operands[2])))
   31774              :             {
   31775              :               *pmatch_len_ = 2;
   31776              :               res = gen_peephole2_447 (insn, operands);
   31777              :               if (res != NULL_RTX)
   31778              :                 return res;
   31779              :             }
   31780              :           break;
   31781              : 
   31782              :         case 3:
   31783              :           if ((
   31784              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31785              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   31786              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31787              : (TARGET_64BIT)))
   31788              :             {
   31789              :               *pmatch_len_ = 2;
   31790              :               res = gen_peephole2_449 (insn, operands);
   31791              :               if (res != NULL_RTX)
   31792              :                 return res;
   31793              :             }
   31794              :           break;
   31795              : 
   31796              :         default:
   31797              :           break;
   31798              :         }
   31799              :       operands[2] = x4;
   31800              :       if (pattern1788 (x6, 
   31801              : E_SImode) != 0
   31802              :           || !
   31803              : #line 754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31804              : (peep2_reg_dead_p (3, operands[0])
   31805              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31806              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31807              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31808              :         return NULL;
   31809              :       *pmatch_len_ = 2;
   31810              :       return gen_peephole2_457 (insn, operands);
   31811              : 
   31812              :     case E_DImode:
   31813              :       if (!register_operand (operands[0], E_DImode))
   31814              :         return NULL;
   31815              :       operands[1] = x4;
   31816              :       switch (pattern1836 (x6, 
   31817              : E_DImode))
   31818              :         {
   31819              :         case 0:
   31820              :           if ((
   31821              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31822              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   31823              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31824              : (TARGET_64BIT)))
   31825              :             {
   31826              :               *pmatch_len_ = 2;
   31827              :               res = gen_peephole2_444 (insn, operands);
   31828              :               if (res != NULL_RTX)
   31829              :                 return res;
   31830              :             }
   31831              :           break;
   31832              : 
   31833              :         case 1:
   31834              :           if ((
   31835              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31836              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   31837              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31838              : (TARGET_64BIT)))
   31839              :             {
   31840              :               *pmatch_len_ = 2;
   31841              :               res = gen_peephole2_446 (insn, operands);
   31842              :               if (res != NULL_RTX)
   31843              :                 return res;
   31844              :             }
   31845              :           break;
   31846              : 
   31847              :         case 2:
   31848              :           if ((
   31849              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31850              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   31851              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31852              : (TARGET_64BIT)))
   31853              :             {
   31854              :               *pmatch_len_ = 2;
   31855              :               res = gen_peephole2_448 (insn, operands);
   31856              :               if (res != NULL_RTX)
   31857              :                 return res;
   31858              :             }
   31859              :           break;
   31860              : 
   31861              :         case 3:
   31862              :           if ((
   31863              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31864              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   31865              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31866              : (TARGET_64BIT)))
   31867              :             {
   31868              :               *pmatch_len_ = 2;
   31869              :               res = gen_peephole2_450 (insn, operands);
   31870              :               if (res != NULL_RTX)
   31871              :                 return res;
   31872              :             }
   31873              :           break;
   31874              : 
   31875              :         default:
   31876              :           break;
   31877              :         }
   31878              :       operands[2] = x4;
   31879              :       if (pattern1788 (x6, 
   31880              : E_DImode) != 0
   31881              :           || !(
   31882              : #line 754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31883              : (peep2_reg_dead_p (3, operands[0])
   31884              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31885              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31886              :    && !reg_overlap_mentioned_p (operands[0], operands[1])) && 
   31887              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31888              : (TARGET_64BIT)))
   31889              :         return NULL;
   31890              :       *pmatch_len_ = 2;
   31891              :       return gen_peephole2_458 (insn, operands);
   31892              : 
   31893              :     case E_QImode:
   31894              :       if (pattern1789 (x4, 
   31895              : E_QImode) != 0
   31896              :           || !
   31897              : #line 754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31898              : (peep2_reg_dead_p (3, operands[0])
   31899              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31900              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31901              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31902              :         return NULL;
   31903              :       *pmatch_len_ = 2;
   31904              :       return gen_peephole2_455 (insn, operands);
   31905              : 
   31906              :     case E_HImode:
   31907              :       if (pattern1789 (x4, 
   31908              : E_HImode) != 0
   31909              :           || !
   31910              : #line 754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31911              : (peep2_reg_dead_p (3, operands[0])
   31912              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31913              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31914              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31915              :         return NULL;
   31916              :       *pmatch_len_ = 2;
   31917              :       return gen_peephole2_456 (insn, operands);
   31918              : 
   31919              :     default:
   31920              :       return NULL;
   31921              :     }
   31922              : }
   31923              : 
   31924              :  rtx_insn *
   31925              : peephole2_50 (rtx x1 ATTRIBUTE_UNUSED,
   31926              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31927              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31928              : {
   31929              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31930              :   rtx x2, x3, x4, x5, x6, x7, x8;
   31931              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31932              :   x2 = XVECEXP (x1, 0, 1);
   31933              :   x3 = XEXP (x2, 0);
   31934              :   if (GET_CODE (x3) != MEM
   31935              :       || GET_MODE (x3) != E_BLKmode)
   31936              :     return NULL;
   31937              :   x4 = XEXP (x3, 0);
   31938              :   if (GET_CODE (x4) != SCRATCH)
   31939              :     return NULL;
   31940              :   x5 = XVECEXP (x1, 0, 0);
   31941              :   x6 = XEXP (x5, 1);
   31942              :   x7 = XEXP (x6, 1);
   31943              :   operands[1] = x7;
   31944              :   x8 = XEXP (x6, 0);
   31945              :   if (!rtx_equal_p (x8, operands[0]))
   31946              :     return NULL;
   31947              :   switch (GET_MODE (operands[0]))
   31948              :     {
   31949              :     case E_SImode:
   31950              :       if (!register_operand (operands[0], E_SImode)
   31951              :           || GET_MODE (x6) != E_SImode
   31952              :           || !x86_64_nonmemory_operand (operands[1], E_SImode)
   31953              :           || !(
   31954              : #line 28435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31955              : (peep2_regno_dead_p (0, FLAGS_REG)) && 
   31956              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31957              : (Pmode == SImode)))
   31958              :         return NULL;
   31959              :       *pmatch_len_ = 0;
   31960              :       return gen_peephole2_257 (insn, operands);
   31961              : 
   31962              :     case E_DImode:
   31963              :       if (!register_operand (operands[0], E_DImode)
   31964              :           || GET_MODE (x6) != E_DImode
   31965              :           || !x86_64_nonmemory_operand (operands[1], E_DImode)
   31966              :           || !(
   31967              : #line 28435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31968              : (peep2_regno_dead_p (0, FLAGS_REG)) && 
   31969              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31970              : (Pmode == DImode)))
   31971              :         return NULL;
   31972              :       *pmatch_len_ = 0;
   31973              :       return gen_peephole2_258 (insn, operands);
   31974              : 
   31975              :     default:
   31976              :       return NULL;
   31977              :     }
   31978              : }
   31979              : 
   31980              :  rtx_insn *
   31981              : peephole2_52 (rtx x1 ATTRIBUTE_UNUSED,
   31982              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31983              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31984              : {
   31985              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31986              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31987              :   rtx x10, x11, x12, x13, x14;
   31988              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31989              :   if (peep2_current_count < 3)
   31990              :     return NULL;
   31991              :   x2 = XVECEXP (x1, 0, 0);
   31992              :   x3 = XEXP (x2, 1);
   31993              :   operands[2] = x3;
   31994              :   x4 = XEXP (x2, 0);
   31995              :   operands[0] = x4;
   31996              :   x5 = XEXP (x3, 1);
   31997              :   operands[1] = x5;
   31998              :   x6 = XEXP (x3, 0);
   31999              :   if (!rtx_equal_p (x6, operands[0]))
   32000              :     return NULL;
   32001              :   x7 = PATTERN (peep2_next_insn (1));
   32002              :   if (GET_CODE (x7) != SET)
   32003              :     return NULL;
   32004              :   x8 = XEXP (x7, 1);
   32005              :   if (!rtx_equal_p (x8, operands[0]))
   32006              :     return NULL;
   32007              :   x9 = XEXP (x7, 0);
   32008              :   if (!rtx_equal_p (x9, operands[1]))
   32009              :     return NULL;
   32010              :   x10 = PATTERN (peep2_next_insn (2));
   32011              :   if (GET_CODE (x10) != SET)
   32012              :     return NULL;
   32013              :   x11 = XEXP (x10, 1);
   32014              :   if (GET_CODE (x11) != COMPARE)
   32015              :     return NULL;
   32016              :   x12 = XEXP (x11, 1);
   32017              :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   32018              :     return NULL;
   32019              :   x13 = XEXP (x10, 0);
   32020              :   if (GET_CODE (x13) != REG
   32021              :       || REGNO (x13) != 17)
   32022              :     return NULL;
   32023              :   x14 = XEXP (x11, 0);
   32024              :   if (!rtx_equal_p (x14, operands[0]))
   32025              :     return NULL;
   32026              :   switch (GET_MODE (operands[0]))
   32027              :     {
   32028              :     case E_QImode:
   32029              :       if (!register_operand (operands[0], E_QImode)
   32030              :           || !plusminuslogic_operator (operands[2], E_QImode)
   32031              :           || !memory_operand (operands[1], E_QImode)
   32032              :           || !
   32033              : #line 29470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32034              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32035              :    && COMMUTATIVE_ARITH_P (operands[2])
   32036              :    && peep2_reg_dead_p (3, operands[0])
   32037              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32038              :    && ix86_match_ccmode (peep2_next_insn (2),
   32039              :                          GET_CODE (operands[2]) == PLUS
   32040              :                          ? CCGOCmode : CCNOmode)))
   32041              :         return NULL;
   32042              :       *pmatch_len_ = 2;
   32043              :       return gen_peephole2_335 (insn, operands);
   32044              : 
   32045              :     case E_HImode:
   32046              :       if (!register_operand (operands[0], E_HImode)
   32047              :           || !plusminuslogic_operator (operands[2], E_HImode)
   32048              :           || !memory_operand (operands[1], E_HImode)
   32049              :           || !
   32050              : #line 29470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32051              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32052              :    && COMMUTATIVE_ARITH_P (operands[2])
   32053              :    && peep2_reg_dead_p (3, operands[0])
   32054              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32055              :    && ix86_match_ccmode (peep2_next_insn (2),
   32056              :                          GET_CODE (operands[2]) == PLUS
   32057              :                          ? CCGOCmode : CCNOmode)))
   32058              :         return NULL;
   32059              :       *pmatch_len_ = 2;
   32060              :       return gen_peephole2_336 (insn, operands);
   32061              : 
   32062              :     case E_SImode:
   32063              :       if (!register_operand (operands[0], E_SImode)
   32064              :           || !plusminuslogic_operator (operands[2], E_SImode)
   32065              :           || !memory_operand (operands[1], E_SImode)
   32066              :           || !
   32067              : #line 29470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32068              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32069              :    && COMMUTATIVE_ARITH_P (operands[2])
   32070              :    && peep2_reg_dead_p (3, operands[0])
   32071              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32072              :    && ix86_match_ccmode (peep2_next_insn (2),
   32073              :                          GET_CODE (operands[2]) == PLUS
   32074              :                          ? CCGOCmode : CCNOmode)))
   32075              :         return NULL;
   32076              :       *pmatch_len_ = 2;
   32077              :       return gen_peephole2_337 (insn, operands);
   32078              : 
   32079              :     case E_DImode:
   32080              :       if (!register_operand (operands[0], E_DImode)
   32081              :           || !plusminuslogic_operator (operands[2], E_DImode)
   32082              :           || !memory_operand (operands[1], E_DImode)
   32083              :           || !(
   32084              : #line 29470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32085              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32086              :    && COMMUTATIVE_ARITH_P (operands[2])
   32087              :    && peep2_reg_dead_p (3, operands[0])
   32088              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32089              :    && ix86_match_ccmode (peep2_next_insn (2),
   32090              :                          GET_CODE (operands[2]) == PLUS
   32091              :                          ? CCGOCmode : CCNOmode)) && 
   32092              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32093              : (TARGET_64BIT)))
   32094              :         return NULL;
   32095              :       *pmatch_len_ = 2;
   32096              :       return gen_peephole2_338 (insn, operands);
   32097              : 
   32098              :     default:
   32099              :       return NULL;
   32100              :     }
   32101              : }
        

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.