LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-extract.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 91.9 % 15627 14354
Test Date: 2026-09-12 16:25:28 Functions: 100.0 % 1 1
Legend: Lines:     hit not hit

            Line data    Source code
       1              : /* Generated automatically by the program `genextract'
       2              :    from the machine description file `md'.  */
       3              : 
       4              : #define IN_TARGET_CODE 1
       5              : #include "config.h"
       6              : #include "system.h"
       7              : #include "coretypes.h"
       8              : #include "tm.h"
       9              : #include "rtl.h"
      10              : #include "insn-config.h"
      11              : #include "recog.h"
      12              : #include "diagnostic-core.h"
      13              : 
      14              : /* This variable is used as the "location" of any missing operand
      15              :    whose numbers are skipped by a given pattern.  */
      16              : static rtx junk ATTRIBUTE_UNUSED;
      17              : 
      18              : void
      19   2292030181 : insn_extract (rtx_insn *insn)
      20              : {
      21   2292030181 :   rtx *ro = recog_data.operand;
      22   2292030181 :   rtx **ro_loc = recog_data.operand_loc;
      23   2292030181 :   rtx pat = PATTERN (insn);
      24   2292030181 :   int i ATTRIBUTE_UNUSED; /* only for peepholes */
      25              : 
      26   2292030181 :   if (flag_checking)
      27              :     {
      28   2292011682 :       memset (ro, 0xab, sizeof (*ro) * MAX_RECOG_OPERANDS);
      29   2292011682 :       memset (ro_loc, 0xab, sizeof (*ro_loc) * MAX_RECOG_OPERANDS);
      30              :     }
      31              : 
      32   2292030181 :   switch (INSN_CODE (insn))
      33              :     {
      34            0 :     default:
      35              :       /* Control reaches here if insn_extract has been called with an
      36              :          unrecognizable insn (code -1), or an insn whose INSN_CODE
      37              :          corresponds to a DEFINE_EXPAND in the machine description;
      38              :          either way, a bug.  */
      39            0 :       if (INSN_CODE (insn) < 0)
      40            0 :         fatal_insn ("unrecognizable insn:", insn);
      41              :       else
      42            0 :         fatal_insn ("insn with invalid code number:", insn);
      43              : 
      44         2139 :     case 11383:  /* cmpccxadd_di */
      45         2139 :     case 11382:  /* cmpccxadd_si */
      46         2139 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
      47         2139 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
      48         2139 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
      49         2139 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
      50         2139 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
      51         2139 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0);
      52         2139 :       recog_data.dup_num[0] = 1;
      53         2139 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 1);
      54         2139 :       recog_data.dup_num[1] = 2;
      55         2139 :       recog_data.dup_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0);
      56         2139 :       recog_data.dup_num[2] = 1;
      57         2139 :       break;
      58              : 
      59        36680 :     case 11381:  /* atomic_xor_fetch_cmp_0di_1 */
      60        36680 :     case 11380:  /* atomic_or_fetch_cmp_0di_1 */
      61        36680 :     case 11379:  /* atomic_and_fetch_cmp_0di_1 */
      62        36680 :     case 11378:  /* atomic_xor_fetch_cmp_0si_1 */
      63        36680 :     case 11377:  /* atomic_or_fetch_cmp_0si_1 */
      64        36680 :     case 11376:  /* atomic_and_fetch_cmp_0si_1 */
      65        36680 :     case 11375:  /* atomic_xor_fetch_cmp_0hi_1 */
      66        36680 :     case 11374:  /* atomic_or_fetch_cmp_0hi_1 */
      67        36680 :     case 11373:  /* atomic_and_fetch_cmp_0hi_1 */
      68        36680 :     case 11372:  /* atomic_xor_fetch_cmp_0qi_1 */
      69        36680 :     case 11371:  /* atomic_or_fetch_cmp_0qi_1 */
      70        36680 :     case 11370:  /* atomic_and_fetch_cmp_0qi_1 */
      71        36680 :     case 11369:  /* atomic_sub_fetch_cmp_0di_1 */
      72        36680 :     case 11368:  /* atomic_sub_fetch_cmp_0si_1 */
      73        36680 :     case 11367:  /* atomic_sub_fetch_cmp_0hi_1 */
      74        36680 :     case 11366:  /* atomic_sub_fetch_cmp_0qi_1 */
      75        36680 :     case 11365:  /* atomic_add_fetch_cmp_0di_1 */
      76        36680 :     case 11364:  /* atomic_add_fetch_cmp_0si_1 */
      77        36680 :     case 11363:  /* atomic_add_fetch_cmp_0hi_1 */
      78        36680 :     case 11362:  /* atomic_add_fetch_cmp_0qi_1 */
      79        36680 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0, 0));
      80        36680 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
      81        36680 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0, 1));
      82        36680 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
      83        36680 :       recog_data.dup_num[0] = 0;
      84        36680 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
      85        36680 :       recog_data.dup_num[1] = 0;
      86        36680 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
      87        36680 :       recog_data.dup_num[2] = 1;
      88        36680 :       break;
      89              : 
      90         2522 :     case 11358:  /* atomic_bit_test_and_complementdi_1 */
      91         2522 :     case 11357:  /* atomic_bit_test_and_complementsi_1 */
      92         2522 :     case 11356:  /* atomic_bit_test_and_complementhi_1 */
      93         2522 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
      94         2522 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 2));
      95         2522 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
      96         2522 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 0);
      97         2522 :       recog_data.dup_num[0] = 0;
      98         2522 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
      99         2522 :       recog_data.dup_num[1] = 0;
     100         2522 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 2);
     101         2522 :       recog_data.dup_num[2] = 1;
     102         2522 :       break;
     103              : 
     104         4803 :     case 11361:  /* atomic_bit_test_and_resetdi_1 */
     105         4803 :     case 11360:  /* atomic_bit_test_and_resetsi_1 */
     106         4803 :     case 11359:  /* atomic_bit_test_and_resethi_1 */
     107         4803 :     case 11355:  /* atomic_bit_test_and_setdi_1 */
     108         4803 :     case 11354:  /* atomic_bit_test_and_setsi_1 */
     109         4803 :     case 11353:  /* atomic_bit_test_and_sethi_1 */
     110         4803 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
     111         4803 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 2));
     112         4803 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
     113         4803 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 0);
     114         4803 :       recog_data.dup_num[0] = 0;
     115         4803 :       break;
     116              : 
     117       238367 :     case 11352:  /* atomic_xordi */
     118       238367 :     case 11351:  /* atomic_ordi */
     119       238367 :     case 11350:  /* atomic_anddi */
     120       238367 :     case 11349:  /* atomic_xorsi */
     121       238367 :     case 11348:  /* atomic_orsi */
     122       238367 :     case 11347:  /* atomic_andsi */
     123       238367 :     case 11346:  /* atomic_xorhi */
     124       238367 :     case 11345:  /* atomic_orhi */
     125       238367 :     case 11344:  /* atomic_andhi */
     126       238367 :     case 11343:  /* atomic_xorqi */
     127       238367 :     case 11342:  /* atomic_orqi */
     128       238367 :     case 11341:  /* atomic_andqi */
     129       238367 :     case 11340:  /* atomic_subdi */
     130       238367 :     case 11339:  /* atomic_subsi */
     131       238367 :     case 11338:  /* atomic_subhi */
     132       238367 :     case 11337:  /* atomic_subqi */
     133       238367 :     case 11336:  /* atomic_adddi */
     134       238367 :     case 11335:  /* atomic_addsi */
     135       238367 :     case 11334:  /* atomic_addhi */
     136       238367 :     case 11333:  /* atomic_addqi */
     137       238367 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     138       238367 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0), 1));
     139       238367 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     140       238367 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0), 0);
     141       238367 :       recog_data.dup_num[0] = 0;
     142       238367 :       break;
     143              : 
     144         2339 :     case 11332:  /* rao_aadddi */
     145         2339 :     case 11331:  /* rao_axordi */
     146         2339 :     case 11330:  /* rao_aordi */
     147         2339 :     case 11329:  /* rao_aanddi */
     148         2339 :     case 11328:  /* rao_aaddsi */
     149         2339 :     case 11327:  /* rao_axorsi */
     150         2339 :     case 11326:  /* rao_aorsi */
     151         2339 :     case 11325:  /* rao_aandsi */
     152         2339 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     153         2339 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
     154         2339 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0);
     155         2339 :       recog_data.dup_num[0] = 0;
     156         2339 :       break;
     157              : 
     158       266899 :     case 11324:  /* atomic_exchangedi */
     159       266899 :     case 11323:  /* atomic_exchangesi */
     160       266899 :     case 11322:  /* atomic_exchangehi */
     161       266899 :     case 11321:  /* atomic_exchangeqi */
     162       266899 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     163       266899 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     164       266899 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 1));
     165       266899 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     166       266899 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
     167       266899 :       recog_data.dup_num[0] = 1;
     168       266899 :       break;
     169              : 
     170           16 :     case 11320:  /* *atomic_fetch_add_cmpdi */
     171           16 :     case 11319:  /* *atomic_fetch_add_cmpsi */
     172           16 :     case 11318:  /* *atomic_fetch_add_cmphi */
     173           16 :     case 11317:  /* *atomic_fetch_add_cmpqi */
     174           16 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
     175           16 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
     176           16 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
     177           16 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
     178           16 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
     179           16 :       recog_data.dup_num[0] = 0;
     180           16 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
     181           16 :       recog_data.dup_num[1] = 0;
     182           16 :       break;
     183              : 
     184       259201 :     case 11316:  /* atomic_fetch_adddi */
     185       259201 :     case 11315:  /* atomic_fetch_addsi */
     186       259201 :     case 11314:  /* atomic_fetch_addhi */
     187       259201 :     case 11313:  /* atomic_fetch_addqi */
     188       259201 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     189       259201 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     190       259201 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
     191       259201 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     192       259201 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
     193       259201 :       recog_data.dup_num[0] = 1;
     194       259201 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
     195       259201 :       recog_data.dup_num[1] = 1;
     196       259201 :       break;
     197              : 
     198       457267 :     case 11312:  /* atomic_compare_and_swapdi_1 */
     199       457267 :     case 11311:  /* atomic_compare_and_swapsi_1 */
     200       457267 :     case 11310:  /* atomic_compare_and_swaphi_1 */
     201       457267 :     case 11309:  /* atomic_compare_and_swapqi_1 */
     202       457267 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     203       457267 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     204       457267 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     205       457267 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
     206       457267 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
     207       457267 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
     208       457267 :       recog_data.dup_num[0] = 1;
     209       457267 :       break;
     210              : 
     211        22085 :     case 11308:  /* atomic_compare_and_swapti_doubleword */
     212        22085 :     case 11307:  /* atomic_compare_and_swapdi_doubleword */
     213        22085 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     214        22085 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     215        22085 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     216        22085 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
     217        22085 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
     218        22085 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 4));
     219        22085 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
     220        22085 :       recog_data.dup_num[0] = 1;
     221        22085 :       break;
     222              : 
     223         7301 :     case 11294:  /* mfence_nosse */
     224         7301 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     225         7301 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0);
     226         7301 :       recog_data.dup_num[0] = 0;
     227         7301 :       break;
     228              : 
     229          641 :     case 11290:  /* top4mxbssps */
     230          641 :     case 11289:  /* top4mxhf8ps */
     231          641 :     case 11288:  /* top4mxhbf8ps */
     232          641 :     case 11287:  /* top4mxbhf8ps */
     233          641 :     case 11286:  /* top4mxbf8ps */
     234          641 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 0));
     235          641 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
     236          641 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 2));
     237          641 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 3));
     238          641 :       break;
     239              : 
     240          458 :     case 11265:  /* avx10v2aux_sym_truncatev4siv4qi2_mask_store_1 */
     241          458 :     case 11264:  /* avx10v2aux_sym_truncatev8siv8qi2_mask_store_1 */
     242          458 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     243          458 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
     244          458 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 2));
     245          458 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
     246          458 :       recog_data.dup_num[0] = 0;
     247          458 :       break;
     248              : 
     249            0 :     case 11263:  /* *avx10v2aux_sym_truncatev4siv4qi2_store_2 */
     250            0 :     case 11262:  /* *avx10v2aux_sym_truncatev8siv8qi2_store_2 */
     251            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     252            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0, 0));
     253            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
     254            0 :       break;
     255              : 
     256         7900 :     case 11257:  /* *avx10v2aux_sym_truncatev8siv8qi2_mask */
     257         7900 :     case 11256:  /* *avx10v2aux_sym_truncatev4siv4qi2_mask */
     258         7900 :     case 11169:  /* *vcvtrops2hf8sv8sf_mask */
     259         7900 :     case 11168:  /* *vcvtrops2hf8v8sf_mask */
     260         7900 :     case 11167:  /* *vcvtps2hf8sv8sf_mask */
     261         7900 :     case 11166:  /* *vcvtps2hf8v8sf_mask */
     262         7900 :     case 11165:  /* *vcvtps2bf8sv8sf_mask */
     263         7900 :     case 11164:  /* *vcvtps2bf8v8sf_mask */
     264         7900 :     case 11163:  /* *vcvtrops2hf8sv4sf_mask */
     265         7900 :     case 11162:  /* *vcvtrops2hf8v4sf_mask */
     266         7900 :     case 11161:  /* *vcvtps2hf8sv4sf_mask */
     267         7900 :     case 11160:  /* *vcvtps2hf8v4sf_mask */
     268         7900 :     case 11159:  /* *vcvtps2bf8sv4sf_mask */
     269         7900 :     case 11158:  /* *vcvtps2bf8v4sf_mask */
     270         7900 :     case 10652:  /* *vcvtph2hf8sv8hf_mask */
     271         7900 :     case 10651:  /* *vcvtph2hf8v8hf_mask */
     272         7900 :     case 10650:  /* *vcvtph2bf8sv8hf_mask */
     273         7900 :     case 10649:  /* *vcvtph2bf8v8hf_mask */
     274         7900 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     275         7900 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
     276         7900 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
     277         7900 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
     278         7900 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
     279         7900 :       break;
     280              : 
     281         5164 :     case 11197:  /* *vcvtbiasps2hf8sv8sf_mask */
     282         5164 :     case 11196:  /* *vcvtbiasps2hf8v8sf_mask */
     283         5164 :     case 11195:  /* *vcvtbiasps2bf8sv8sf_mask */
     284         5164 :     case 11194:  /* *vcvtbiasps2bf8v8sf_mask */
     285         5164 :     case 11193:  /* *vcvtbiasps2hf8sv4sf_mask */
     286         5164 :     case 11192:  /* *vcvtbiasps2hf8v4sf_mask */
     287         5164 :     case 11191:  /* *vcvtbiasps2bf8sv4sf_mask */
     288         5164 :     case 11190:  /* *vcvtbiasps2bf8v4sf_mask */
     289         5164 :     case 10628:  /* *vcvtbiasph2hf8sv8hf_mask */
     290         5164 :     case 10627:  /* *vcvtbiasph2hf8v8hf_mask */
     291         5164 :     case 10626:  /* *vcvtbiasph2bf8sv8hf_mask */
     292         5164 :     case 10625:  /* *vcvtbiasph2bf8v8hf_mask */
     293         5164 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     294         5164 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
     295         5164 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
     296         5164 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
     297         5164 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
     298         5164 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 1));
     299         5164 :       break;
     300              : 
     301          622 :     case 10592:  /* avx10_2_cvt2ps2phx_v32hf_mask_round */
     302          622 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     303          622 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1), 0));
     304          622 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
     305          622 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
     306          622 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
     307          622 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
     308          622 :       break;
     309              : 
     310          217 :     case 10590:  /* avx10_2_cvt2ps2phx_v32hf_round */
     311          217 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     312          217 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1), 0));
     313          217 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
     314          217 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
     315          217 :       break;
     316              : 
     317         8036 :     case 10728:  /* *vpdpwuuds_v4si_maskz */
     318         8036 :     case 10727:  /* *vpdpwuud_v4si_maskz */
     319         8036 :     case 10726:  /* *vpdpwsuds_v4si_maskz */
     320         8036 :     case 10725:  /* *vpdpwsud_v4si_maskz */
     321         8036 :     case 10724:  /* *vpdpwusds_v4si_maskz */
     322         8036 :     case 10723:  /* *vpdpwusd_v4si_maskz */
     323         8036 :     case 10722:  /* *vpdpwuuds_v8si_maskz */
     324         8036 :     case 10721:  /* *vpdpwuud_v8si_maskz */
     325         8036 :     case 10720:  /* *vpdpwsuds_v8si_maskz */
     326         8036 :     case 10719:  /* *vpdpwsud_v8si_maskz */
     327         8036 :     case 10718:  /* *vpdpwusds_v8si_maskz */
     328         8036 :     case 10717:  /* *vpdpwusd_v8si_maskz */
     329         8036 :     case 10716:  /* *vpdpwuuds_v16si_maskz */
     330         8036 :     case 10715:  /* *vpdpwuud_v16si_maskz */
     331         8036 :     case 10714:  /* *vpdpwsuds_v16si_maskz */
     332         8036 :     case 10713:  /* *vpdpwsud_v16si_maskz */
     333         8036 :     case 10712:  /* *vpdpwusds_v16si_maskz */
     334         8036 :     case 10711:  /* *vpdpwusd_v16si_maskz */
     335         8036 :     case 10576:  /* *vpdpbuuds_v4si_maskz */
     336         8036 :     case 10575:  /* *vpdpbuud_v4si_maskz */
     337         8036 :     case 10574:  /* *vpdpbsuds_v4si_maskz */
     338         8036 :     case 10573:  /* *vpdpbsud_v4si_maskz */
     339         8036 :     case 10572:  /* *vpdpbssds_v4si_maskz */
     340         8036 :     case 10571:  /* *vpdpbssd_v4si_maskz */
     341         8036 :     case 10570:  /* *vpdpbuuds_v8si_maskz */
     342         8036 :     case 10569:  /* *vpdpbuud_v8si_maskz */
     343         8036 :     case 10568:  /* *vpdpbsuds_v8si_maskz */
     344         8036 :     case 10567:  /* *vpdpbsud_v8si_maskz */
     345         8036 :     case 10566:  /* *vpdpbssds_v8si_maskz */
     346         8036 :     case 10565:  /* *vpdpbssd_v8si_maskz */
     347         8036 :     case 10564:  /* *vpdpbuuds_v16si_maskz */
     348         8036 :     case 10563:  /* *vpdpbuud_v16si_maskz */
     349         8036 :     case 10562:  /* *vpdpbsuds_v16si_maskz */
     350         8036 :     case 10561:  /* *vpdpbsud_v16si_maskz */
     351         8036 :     case 10560:  /* *vpdpbssds_v16si_maskz */
     352         8036 :     case 10559:  /* *vpdpbssd_v16si_maskz */
     353         8036 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     354         8036 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
     355         8036 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
     356         8036 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
     357         8036 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
     358         8036 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 1));
     359         8036 :       break;
     360              : 
     361          628 :     case 10522:  /* *aesencwide256klu8 */
     362          628 :     case 10521:  /* *aesencwide128klu8 */
     363          628 :     case 10520:  /* *aesdecwide256klu8 */
     364          628 :     case 10519:  /* *aesdecwide128klu8 */
     365          628 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     366          628 :       ro[1] = *(ro_loc[1] = &PATTERN (insn));
     367          628 :       break;
     368              : 
     369          760 :     case 10518:  /* aesenc256klu8 */
     370          760 :     case 10517:  /* aesenc128klu8 */
     371          760 :     case 10516:  /* aesdec256klu8 */
     372          760 :     case 10515:  /* aesdec128klu8 */
     373          760 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     374          760 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     375          760 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     376          760 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
     377          760 :       recog_data.dup_num[0] = 2;
     378          760 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
     379          760 :       recog_data.dup_num[1] = 1;
     380          760 :       break;
     381              : 
     382          344 :     case 10514:  /* *encodekey256u32 */
     383          344 :     case 10513:  /* *encodekey128u32 */
     384          344 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     385          344 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     386          344 :       ro[2] = *(ro_loc[2] = &PATTERN (insn));
     387          344 :       break;
     388              : 
     389          209 :     case 10512:  /* loadiwkey */
     390          209 :       ro[0] = *(ro_loc[0] = &XVECEXP (XVECEXP (pat, 0, 0), 0, 0));
     391          209 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (pat, 0, 0), 0, 1));
     392          209 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 0), 0, 2));
     393          209 :       ro[3] = *(ro_loc[3] = &XVECEXP (XVECEXP (pat, 0, 0), 0, 3));
     394          209 :       break;
     395              : 
     396         2352 :     case 10596:  /* avx10_2_cvt2ps2phx_v8hf_mask */
     397         2352 :     case 10594:  /* avx10_2_cvt2ps2phx_v16hf_mask */
     398         2352 :     case 10591:  /* avx10_2_cvt2ps2phx_v32hf_mask */
     399         2352 :     case 10495:  /* avx512f_cvtne2ps2bf16_v8bf_mask */
     400         2352 :     case 10493:  /* avx512f_cvtne2ps2bf16_v16bf_mask */
     401         2352 :     case 10491:  /* avx512f_cvtne2ps2bf16_v32bf_mask */
     402         2352 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     403         2352 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
     404         2352 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
     405         2352 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
     406         2352 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
     407         2352 :       break;
     408              : 
     409          744 :     case 10595:  /* avx10_2_cvt2ps2phx_v8hf */
     410          744 :     case 10593:  /* avx10_2_cvt2ps2phx_v16hf */
     411          744 :     case 10589:  /* avx10_2_cvt2ps2phx_v32hf */
     412          744 :     case 10494:  /* avx512f_cvtne2ps2bf16_v8bf */
     413          744 :     case 10492:  /* avx512f_cvtne2ps2bf16_v16bf */
     414          744 :     case 10490:  /* avx512f_cvtne2ps2bf16_v32bf */
     415          744 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     416          744 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
     417          744 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
     418          744 :       break;
     419              : 
     420         1631 :     case 10304:  /* *restore_multiple_leave_returndi */
     421         1631 :     case 10303:  /* *restore_multiple_leave_returnsi */
     422         1631 :     case 10302:  /* *restore_multiple_and_returndi */
     423         1631 :     case 10301:  /* *restore_multiple_and_returnsi */
     424         1631 :       ro[0] = *(ro_loc[0] = &PATTERN (insn));
     425         1631 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     426         1631 :       break;
     427              : 
     428        22199 :     case 10300:  /* *restore_multipledi */
     429        22199 :     case 10299:  /* *restore_multiplesi */
     430        22199 :     case 10298:  /* *save_multipledi */
     431        22199 :     case 10297:  /* *save_multiplesi */
     432        22199 :       ro[0] = *(ro_loc[0] = &PATTERN (insn));
     433        22199 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 0));
     434        22199 :       break;
     435              : 
     436          504 :     case 10157:  /* avx512dq_vmfpclassv2df_mask */
     437          504 :     case 10155:  /* avx512dq_vmfpclassv4sf_mask */
     438          504 :     case 10153:  /* avx512dq_vmfpclassv8hf_mask */
     439          504 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     440          504 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
     441          504 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
     442          504 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
     443          504 :       break;
     444              : 
     445        17293 :     case 10037:  /* *avx512f_scatterdiv2df */
     446        17293 :     case 10036:  /* *avx512f_scatterdiv2di */
     447        17293 :     case 10035:  /* *avx512f_scatterdiv4sf */
     448        17293 :     case 10034:  /* *avx512f_scatterdiv4si */
     449        17293 :     case 10033:  /* *avx512f_scatterdiv4df */
     450        17293 :     case 10032:  /* *avx512f_scatterdiv4di */
     451        17293 :     case 10031:  /* *avx512f_scatterdiv8sf */
     452        17293 :     case 10030:  /* *avx512f_scatterdiv8si */
     453        17293 :     case 10029:  /* *avx512f_scatterdiv8df */
     454        17293 :     case 10028:  /* *avx512f_scatterdiv8di */
     455        17293 :     case 10027:  /* *avx512f_scatterdiv16sf */
     456        17293 :     case 10026:  /* *avx512f_scatterdiv16si */
     457        17293 :     case 10025:  /* *avx512f_scatterdiv2df */
     458        17293 :     case 10024:  /* *avx512f_scatterdiv2di */
     459        17293 :     case 10023:  /* *avx512f_scatterdiv4sf */
     460        17293 :     case 10022:  /* *avx512f_scatterdiv4si */
     461        17293 :     case 10021:  /* *avx512f_scatterdiv4df */
     462        17293 :     case 10020:  /* *avx512f_scatterdiv4di */
     463        17293 :     case 10019:  /* *avx512f_scatterdiv8sf */
     464        17293 :     case 10018:  /* *avx512f_scatterdiv8si */
     465        17293 :     case 10017:  /* *avx512f_scatterdiv8df */
     466        17293 :     case 10016:  /* *avx512f_scatterdiv8di */
     467        17293 :     case 10015:  /* *avx512f_scatterdiv16sf */
     468        17293 :     case 10014:  /* *avx512f_scatterdiv16si */
     469        17293 :     case 10013:  /* *avx512f_scattersiv2df */
     470        17293 :     case 10012:  /* *avx512f_scattersiv2di */
     471        17293 :     case 10011:  /* *avx512f_scattersiv4sf */
     472        17293 :     case 10010:  /* *avx512f_scattersiv4si */
     473        17293 :     case 10009:  /* *avx512f_scattersiv4df */
     474        17293 :     case 10008:  /* *avx512f_scattersiv4di */
     475        17293 :     case 10007:  /* *avx512f_scattersiv8sf */
     476        17293 :     case 10006:  /* *avx512f_scattersiv8si */
     477        17293 :     case 10005:  /* *avx512f_scattersiv8df */
     478        17293 :     case 10004:  /* *avx512f_scattersiv8di */
     479        17293 :     case 10003:  /* *avx512f_scattersiv16sf */
     480        17293 :     case 10002:  /* *avx512f_scattersiv16si */
     481        17293 :     case 10001:  /* *avx512f_scattersiv2df */
     482        17293 :     case 10000:  /* *avx512f_scattersiv2di */
     483        17293 :     case 9999:  /* *avx512f_scattersiv4sf */
     484        17293 :     case 9998:  /* *avx512f_scattersiv4si */
     485        17293 :     case 9997:  /* *avx512f_scattersiv4df */
     486        17293 :     case 9996:  /* *avx512f_scattersiv4di */
     487        17293 :     case 9995:  /* *avx512f_scattersiv8sf */
     488        17293 :     case 9994:  /* *avx512f_scattersiv8si */
     489        17293 :     case 9993:  /* *avx512f_scattersiv8df */
     490        17293 :     case 9992:  /* *avx512f_scattersiv8di */
     491        17293 :     case 9991:  /* *avx512f_scattersiv16sf */
     492        17293 :     case 9990:  /* *avx512f_scattersiv16si */
     493        17293 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0), 0, 0));
     494        17293 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     495        17293 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0), 0, 1));
     496        17293 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     497        17293 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0), 0, 2));
     498        17293 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (pat, 0, 0), 0));
     499        17293 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0), 0, 3));
     500        17293 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0);
     501        17293 :       recog_data.dup_num[0] = 6;
     502        17293 :       break;
     503              : 
     504         5374 :     case 9989:  /* *avx512f_gatherdiv2df_2 */
     505         5374 :     case 9988:  /* *avx512f_gatherdiv2di_2 */
     506         5374 :     case 9987:  /* *avx512f_gatherdiv4sf_2 */
     507         5374 :     case 9986:  /* *avx512f_gatherdiv4si_2 */
     508         5374 :     case 9985:  /* *avx512f_gatherdiv4df_2 */
     509         5374 :     case 9984:  /* *avx512f_gatherdiv4di_2 */
     510         5374 :     case 9983:  /* *avx512f_gatherdiv8sf_2 */
     511         5374 :     case 9982:  /* *avx512f_gatherdiv8si_2 */
     512         5374 :     case 9981:  /* *avx512f_gatherdiv8df_2 */
     513         5374 :     case 9980:  /* *avx512f_gatherdiv8di_2 */
     514         5374 :     case 9979:  /* *avx512f_gatherdiv16sf_2 */
     515         5374 :     case 9978:  /* *avx512f_gatherdiv16si_2 */
     516         5374 :     case 9977:  /* *avx512f_gatherdiv2df_2 */
     517         5374 :     case 9976:  /* *avx512f_gatherdiv2di_2 */
     518         5374 :     case 9975:  /* *avx512f_gatherdiv4sf_2 */
     519         5374 :     case 9974:  /* *avx512f_gatherdiv4si_2 */
     520         5374 :     case 9973:  /* *avx512f_gatherdiv4df_2 */
     521         5374 :     case 9972:  /* *avx512f_gatherdiv4di_2 */
     522         5374 :     case 9971:  /* *avx512f_gatherdiv8sf_2 */
     523         5374 :     case 9970:  /* *avx512f_gatherdiv8si_2 */
     524         5374 :     case 9969:  /* *avx512f_gatherdiv8df_2 */
     525         5374 :     case 9968:  /* *avx512f_gatherdiv8di_2 */
     526         5374 :     case 9967:  /* *avx512f_gatherdiv16sf_2 */
     527         5374 :     case 9966:  /* *avx512f_gatherdiv16si_2 */
     528         5374 :     case 9941:  /* *avx512f_gathersiv2df_2 */
     529         5374 :     case 9940:  /* *avx512f_gathersiv2di_2 */
     530         5374 :     case 9939:  /* *avx512f_gathersiv4sf_2 */
     531         5374 :     case 9938:  /* *avx512f_gathersiv4si_2 */
     532         5374 :     case 9937:  /* *avx512f_gathersiv4df_2 */
     533         5374 :     case 9936:  /* *avx512f_gathersiv4di_2 */
     534         5374 :     case 9935:  /* *avx512f_gathersiv8sf_2 */
     535         5374 :     case 9934:  /* *avx512f_gathersiv8si_2 */
     536         5374 :     case 9933:  /* *avx512f_gathersiv8df_2 */
     537         5374 :     case 9932:  /* *avx512f_gathersiv8di_2 */
     538         5374 :     case 9931:  /* *avx512f_gathersiv16sf_2 */
     539         5374 :     case 9930:  /* *avx512f_gathersiv16si_2 */
     540         5374 :     case 9929:  /* *avx512f_gathersiv2df_2 */
     541         5374 :     case 9928:  /* *avx512f_gathersiv2di_2 */
     542         5374 :     case 9927:  /* *avx512f_gathersiv4sf_2 */
     543         5374 :     case 9926:  /* *avx512f_gathersiv4si_2 */
     544         5374 :     case 9925:  /* *avx512f_gathersiv4df_2 */
     545         5374 :     case 9924:  /* *avx512f_gathersiv4di_2 */
     546         5374 :     case 9923:  /* *avx512f_gathersiv8sf_2 */
     547         5374 :     case 9922:  /* *avx512f_gathersiv8si_2 */
     548         5374 :     case 9921:  /* *avx512f_gathersiv8df_2 */
     549         5374 :     case 9920:  /* *avx512f_gathersiv8di_2 */
     550         5374 :     case 9919:  /* *avx512f_gathersiv16sf_2 */
     551         5374 :     case 9918:  /* *avx512f_gathersiv16si_2 */
     552         5374 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     553         5374 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     554         5374 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2), 0), 0, 1));
     555         5374 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2), 0), 0, 0));
     556         5374 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2), 0), 0, 2));
     557         5374 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
     558         5374 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     559         5374 :       break;
     560              : 
     561        10574 :     case 9965:  /* *avx512f_gatherdiv2df */
     562        10574 :     case 9964:  /* *avx512f_gatherdiv2di */
     563        10574 :     case 9963:  /* *avx512f_gatherdiv4sf */
     564        10574 :     case 9962:  /* *avx512f_gatherdiv4si */
     565        10574 :     case 9961:  /* *avx512f_gatherdiv4df */
     566        10574 :     case 9960:  /* *avx512f_gatherdiv4di */
     567        10574 :     case 9959:  /* *avx512f_gatherdiv8sf */
     568        10574 :     case 9958:  /* *avx512f_gatherdiv8si */
     569        10574 :     case 9957:  /* *avx512f_gatherdiv8df */
     570        10574 :     case 9956:  /* *avx512f_gatherdiv8di */
     571        10574 :     case 9955:  /* *avx512f_gatherdiv16sf */
     572        10574 :     case 9954:  /* *avx512f_gatherdiv16si */
     573        10574 :     case 9953:  /* *avx512f_gatherdiv2df */
     574        10574 :     case 9952:  /* *avx512f_gatherdiv2di */
     575        10574 :     case 9951:  /* *avx512f_gatherdiv4sf */
     576        10574 :     case 9950:  /* *avx512f_gatherdiv4si */
     577        10574 :     case 9949:  /* *avx512f_gatherdiv4df */
     578        10574 :     case 9948:  /* *avx512f_gatherdiv4di */
     579        10574 :     case 9947:  /* *avx512f_gatherdiv8sf */
     580        10574 :     case 9946:  /* *avx512f_gatherdiv8si */
     581        10574 :     case 9945:  /* *avx512f_gatherdiv8df */
     582        10574 :     case 9944:  /* *avx512f_gatherdiv8di */
     583        10574 :     case 9943:  /* *avx512f_gatherdiv16sf */
     584        10574 :     case 9942:  /* *avx512f_gatherdiv16si */
     585        10574 :     case 9917:  /* *avx512f_gathersiv2df */
     586        10574 :     case 9916:  /* *avx512f_gathersiv2di */
     587        10574 :     case 9915:  /* *avx512f_gathersiv4sf */
     588        10574 :     case 9914:  /* *avx512f_gathersiv4si */
     589        10574 :     case 9913:  /* *avx512f_gathersiv4df */
     590        10574 :     case 9912:  /* *avx512f_gathersiv4di */
     591        10574 :     case 9911:  /* *avx512f_gathersiv8sf */
     592        10574 :     case 9910:  /* *avx512f_gathersiv8si */
     593        10574 :     case 9909:  /* *avx512f_gathersiv8df */
     594        10574 :     case 9908:  /* *avx512f_gathersiv8di */
     595        10574 :     case 9907:  /* *avx512f_gathersiv16sf */
     596        10574 :     case 9906:  /* *avx512f_gathersiv16si */
     597        10574 :     case 9905:  /* *avx512f_gathersiv2df */
     598        10574 :     case 9904:  /* *avx512f_gathersiv2di */
     599        10574 :     case 9903:  /* *avx512f_gathersiv4sf */
     600        10574 :     case 9902:  /* *avx512f_gathersiv4si */
     601        10574 :     case 9901:  /* *avx512f_gathersiv4df */
     602        10574 :     case 9900:  /* *avx512f_gathersiv4di */
     603        10574 :     case 9899:  /* *avx512f_gathersiv8sf */
     604        10574 :     case 9898:  /* *avx512f_gathersiv8si */
     605        10574 :     case 9897:  /* *avx512f_gathersiv8df */
     606        10574 :     case 9896:  /* *avx512f_gathersiv8di */
     607        10574 :     case 9895:  /* *avx512f_gathersiv16sf */
     608        10574 :     case 9894:  /* *avx512f_gathersiv16si */
     609        10574 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     610        10574 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     611        10574 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
     612        10574 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2), 0), 0, 1));
     613        10574 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2), 0), 0, 0));
     614        10574 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2), 0), 0, 2));
     615        10574 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
     616        10574 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     617        10574 :       break;
     618              : 
     619          389 :     case 9893:  /* *avx2_gatherdiv8sf_4 */
     620          389 :     case 9892:  /* *avx2_gatherdiv8si_4 */
     621          389 :     case 9891:  /* *avx2_gatherdiv8sf_4 */
     622          389 :     case 9890:  /* *avx2_gatherdiv8si_4 */
     623          389 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     624          389 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     625          389 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1), 0), 0, 0));
     626          389 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1), 0), 0, 1));
     627          389 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 3));
     628          389 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1), 0), 0, 2));
     629          389 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
     630          389 :       break;
     631              : 
     632          446 :     case 9889:  /* *avx2_gatherdiv8sf_3 */
     633          446 :     case 9888:  /* *avx2_gatherdiv8si_3 */
     634          446 :     case 9887:  /* *avx2_gatherdiv8sf_3 */
     635          446 :     case 9886:  /* *avx2_gatherdiv8si_3 */
     636          446 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     637          446 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     638          446 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
     639          446 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1), 0), 0, 0));
     640          446 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1), 0), 0, 1));
     641          446 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 3));
     642          446 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1), 0), 0, 2));
     643          446 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
     644          446 :       break;
     645              : 
     646         4988 :     case 9885:  /* *avx2_gatherdiv8sf_2 */
     647         4988 :     case 9884:  /* *avx2_gatherdiv8si_2 */
     648         4988 :     case 9883:  /* *avx2_gatherdiv4sf_2 */
     649         4988 :     case 9882:  /* *avx2_gatherdiv4si_2 */
     650         4988 :     case 9881:  /* *avx2_gatherdiv4df_2 */
     651         4988 :     case 9880:  /* *avx2_gatherdiv4di_2 */
     652         4988 :     case 9879:  /* *avx2_gatherdiv2df_2 */
     653         4988 :     case 9878:  /* *avx2_gatherdiv2di_2 */
     654         4988 :     case 9877:  /* *avx2_gatherdiv8sf_2 */
     655         4988 :     case 9876:  /* *avx2_gatherdiv8si_2 */
     656         4988 :     case 9875:  /* *avx2_gatherdiv4sf_2 */
     657         4988 :     case 9874:  /* *avx2_gatherdiv4si_2 */
     658         4988 :     case 9873:  /* *avx2_gatherdiv4df_2 */
     659         4988 :     case 9872:  /* *avx2_gatherdiv4di_2 */
     660         4988 :     case 9871:  /* *avx2_gatherdiv2df_2 */
     661         4988 :     case 9870:  /* *avx2_gatherdiv2di_2 */
     662         4988 :     case 9853:  /* *avx2_gathersiv8sf_2 */
     663         4988 :     case 9852:  /* *avx2_gathersiv8si_2 */
     664         4988 :     case 9851:  /* *avx2_gathersiv4sf_2 */
     665         4988 :     case 9850:  /* *avx2_gathersiv4si_2 */
     666         4988 :     case 9849:  /* *avx2_gathersiv4df_2 */
     667         4988 :     case 9848:  /* *avx2_gathersiv4di_2 */
     668         4988 :     case 9847:  /* *avx2_gathersiv2df_2 */
     669         4988 :     case 9846:  /* *avx2_gathersiv2di_2 */
     670         4988 :     case 9845:  /* *avx2_gathersiv8sf_2 */
     671         4988 :     case 9844:  /* *avx2_gathersiv8si_2 */
     672         4988 :     case 9843:  /* *avx2_gathersiv4sf_2 */
     673         4988 :     case 9842:  /* *avx2_gathersiv4si_2 */
     674         4988 :     case 9841:  /* *avx2_gathersiv4df_2 */
     675         4988 :     case 9840:  /* *avx2_gathersiv4di_2 */
     676         4988 :     case 9839:  /* *avx2_gathersiv2df_2 */
     677         4988 :     case 9838:  /* *avx2_gathersiv2di_2 */
     678         4988 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     679         4988 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     680         4988 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1), 0), 0, 0));
     681         4988 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1), 0), 0, 1));
     682         4988 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
     683         4988 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1), 0), 0, 2));
     684         4988 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     685         4988 :       break;
     686              : 
     687         6571 :     case 9869:  /* *avx2_gatherdiv8sf */
     688         6571 :     case 9868:  /* *avx2_gatherdiv8si */
     689         6571 :     case 9867:  /* *avx2_gatherdiv4sf */
     690         6571 :     case 9866:  /* *avx2_gatherdiv4si */
     691         6571 :     case 9865:  /* *avx2_gatherdiv4df */
     692         6571 :     case 9864:  /* *avx2_gatherdiv4di */
     693         6571 :     case 9863:  /* *avx2_gatherdiv2df */
     694         6571 :     case 9862:  /* *avx2_gatherdiv2di */
     695         6571 :     case 9861:  /* *avx2_gatherdiv8sf */
     696         6571 :     case 9860:  /* *avx2_gatherdiv8si */
     697         6571 :     case 9859:  /* *avx2_gatherdiv4sf */
     698         6571 :     case 9858:  /* *avx2_gatherdiv4si */
     699         6571 :     case 9857:  /* *avx2_gatherdiv4df */
     700         6571 :     case 9856:  /* *avx2_gatherdiv4di */
     701         6571 :     case 9855:  /* *avx2_gatherdiv2df */
     702         6571 :     case 9854:  /* *avx2_gatherdiv2di */
     703         6571 :     case 9837:  /* *avx2_gathersiv8sf */
     704         6571 :     case 9836:  /* *avx2_gathersiv8si */
     705         6571 :     case 9835:  /* *avx2_gathersiv4sf */
     706         6571 :     case 9834:  /* *avx2_gathersiv4si */
     707         6571 :     case 9833:  /* *avx2_gathersiv4df */
     708         6571 :     case 9832:  /* *avx2_gathersiv4di */
     709         6571 :     case 9831:  /* *avx2_gathersiv2df */
     710         6571 :     case 9830:  /* *avx2_gathersiv2di */
     711         6571 :     case 9829:  /* *avx2_gathersiv8sf */
     712         6571 :     case 9828:  /* *avx2_gathersiv8si */
     713         6571 :     case 9827:  /* *avx2_gathersiv4sf */
     714         6571 :     case 9826:  /* *avx2_gathersiv4si */
     715         6571 :     case 9825:  /* *avx2_gathersiv4df */
     716         6571 :     case 9824:  /* *avx2_gathersiv4di */
     717         6571 :     case 9823:  /* *avx2_gathersiv2df */
     718         6571 :     case 9822:  /* *avx2_gathersiv2di */
     719         6571 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
     720         6571 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
     721         6571 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
     722         6571 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1), 0), 0, 0));
     723         6571 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1), 0), 0, 1));
     724         6571 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
     725         6571 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1), 0), 0, 2));
     726         6571 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
     727         6571 :       break;
     728              : 
     729            0 :     case 9821:  /* *avx512f_vcvtps2ph512_merge_mask */
     730            0 :     case 9815:  /* *vcvtps2ph256_merge_mask */
     731            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     732            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
     733            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
     734            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
     735            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
     736            0 :       recog_data.dup_num[0] = 0;
     737            0 :       break;
     738              : 
     739          430 :     case 9810:  /* *vcvtps2ph_mask */
     740          430 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     741          430 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
     742          430 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
     743          430 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
     744          430 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
     745          430 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
     746          430 :       break;
     747              : 
     748          478 :     case 9800:  /* vcvtph2ps_mask */
     749          478 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     750          478 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
     751          478 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
     752          478 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
     753          478 :       break;
     754              : 
     755        24341 :     case 10073:  /* compressstorev8hi_mask */
     756        24341 :     case 10072:  /* compressstorev16hi_mask */
     757        24341 :     case 10071:  /* compressstorev32hi_mask */
     758        24341 :     case 10070:  /* compressstorev32qi_mask */
     759        24341 :     case 10069:  /* compressstorev16qi_mask */
     760        24341 :     case 10068:  /* compressstorev64qi_mask */
     761        24341 :     case 10067:  /* avx512vl_compressstorev2df_mask */
     762        24341 :     case 10066:  /* avx512vl_compressstorev2di_mask */
     763        24341 :     case 10065:  /* avx512vl_compressstorev4sf_mask */
     764        24341 :     case 10064:  /* avx512vl_compressstorev4si_mask */
     765        24341 :     case 10063:  /* avx512vl_compressstorev4df_mask */
     766        24341 :     case 10062:  /* avx512vl_compressstorev4di_mask */
     767        24341 :     case 10061:  /* avx512vl_compressstorev8sf_mask */
     768        24341 :     case 10060:  /* avx512vl_compressstorev8si_mask */
     769        24341 :     case 10059:  /* avx512f_compressstorev8df_mask */
     770        24341 :     case 10058:  /* avx512f_compressstorev8di_mask */
     771        24341 :     case 10057:  /* avx512f_compressstorev16sf_mask */
     772        24341 :     case 10056:  /* avx512f_compressstorev16si_mask */
     773        24341 :     case 9701:  /* *avx512vl_storev2df_mask_1 */
     774        24341 :     case 9700:  /* *avx512vl_storev4df_mask_1 */
     775        24341 :     case 9699:  /* *avx512f_storev8df_mask_1 */
     776        24341 :     case 9698:  /* *avx512vl_storev4sf_mask_1 */
     777        24341 :     case 9697:  /* *avx512vl_storev8sf_mask_1 */
     778        24341 :     case 9696:  /* *avx512f_storev16sf_mask_1 */
     779        24341 :     case 9695:  /* *avx512vl_storev8bf_mask_1 */
     780        24341 :     case 9694:  /* *avx512vl_storev16bf_mask_1 */
     781        24341 :     case 9693:  /* *avx512bw_storev32bf_mask_1 */
     782        24341 :     case 9692:  /* *avx512fp16_storev8hf_mask_1 */
     783        24341 :     case 9691:  /* *avx512vl_storev16hf_mask_1 */
     784        24341 :     case 9690:  /* *avx512bw_storev32hf_mask_1 */
     785        24341 :     case 9689:  /* *avx512vl_storev2di_mask_1 */
     786        24341 :     case 9688:  /* *avx512vl_storev4di_mask_1 */
     787        24341 :     case 9687:  /* *avx512f_storev8di_mask_1 */
     788        24341 :     case 9686:  /* *avx512vl_storev4si_mask_1 */
     789        24341 :     case 9685:  /* *avx512vl_storev8si_mask_1 */
     790        24341 :     case 9684:  /* *avx512f_storev16si_mask_1 */
     791        24341 :     case 9683:  /* *avx512vl_storev8hi_mask_1 */
     792        24341 :     case 9682:  /* *avx512vl_storev16hi_mask_1 */
     793        24341 :     case 9681:  /* *avx512bw_storev32hi_mask_1 */
     794        24341 :     case 9680:  /* *avx512vl_storev16qi_mask_1 */
     795        24341 :     case 9679:  /* *avx512vl_storev32qi_mask_1 */
     796        24341 :     case 9678:  /* *avx512bw_storev64qi_mask_1 */
     797        24341 :     case 9677:  /* avx512vl_storev8bf_mask */
     798        24341 :     case 9676:  /* avx512vl_storev16bf_mask */
     799        24341 :     case 9675:  /* avx512bw_storev32bf_mask */
     800        24341 :     case 9674:  /* avx512fp16_storev8hf_mask */
     801        24341 :     case 9673:  /* avx512vl_storev16hf_mask */
     802        24341 :     case 9672:  /* avx512bw_storev32hf_mask */
     803        24341 :     case 9671:  /* avx512vl_storev8hi_mask */
     804        24341 :     case 9670:  /* avx512vl_storev16hi_mask */
     805        24341 :     case 9669:  /* avx512bw_storev32hi_mask */
     806        24341 :     case 9668:  /* avx512vl_storev32qi_mask */
     807        24341 :     case 9667:  /* avx512vl_storev16qi_mask */
     808        24341 :     case 9666:  /* avx512bw_storev64qi_mask */
     809        24341 :     case 9665:  /* avx512vl_storev2df_mask */
     810        24341 :     case 9664:  /* avx512vl_storev4df_mask */
     811        24341 :     case 9663:  /* avx512f_storev8df_mask */
     812        24341 :     case 9662:  /* avx512vl_storev4sf_mask */
     813        24341 :     case 9661:  /* avx512vl_storev8sf_mask */
     814        24341 :     case 9660:  /* avx512f_storev16sf_mask */
     815        24341 :     case 9659:  /* avx512vl_storev2di_mask */
     816        24341 :     case 9658:  /* avx512vl_storev4di_mask */
     817        24341 :     case 9657:  /* avx512f_storev8di_mask */
     818        24341 :     case 9656:  /* avx512vl_storev4si_mask */
     819        24341 :     case 9655:  /* avx512vl_storev8si_mask */
     820        24341 :     case 9654:  /* avx512f_storev16si_mask */
     821        24341 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     822        24341 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
     823        24341 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 2));
     824        24341 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 1);
     825        24341 :       recog_data.dup_num[0] = 0;
     826        24341 :       break;
     827              : 
     828         5585 :     case 9653:  /* avx2_maskstored */
     829         5585 :     case 9652:  /* avx2_maskstored256 */
     830         5585 :     case 9651:  /* avx_maskstorepd256 */
     831         5585 :     case 9650:  /* avx_maskstoreps256 */
     832         5585 :     case 9649:  /* avx2_maskstoreq */
     833         5585 :     case 9648:  /* avx2_maskstoreq256 */
     834         5585 :     case 9647:  /* avx_maskstorepd */
     835         5585 :     case 9646:  /* avx_maskstoreps */
     836         5585 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     837         5585 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
     838         5585 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
     839         5585 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 2);
     840         5585 :       recog_data.dup_num[0] = 0;
     841         5585 :       break;
     842              : 
     843         7115 :     case 9645:  /* avx2_maskloadd */
     844         7115 :     case 9644:  /* avx2_maskloadd256 */
     845         7115 :     case 9643:  /* avx_maskloadpd256 */
     846         7115 :     case 9642:  /* avx_maskloadps256 */
     847         7115 :     case 9641:  /* avx2_maskloadq */
     848         7115 :     case 9640:  /* avx2_maskloadq256 */
     849         7115 :     case 9639:  /* avx_maskloadpd */
     850         7115 :     case 9638:  /* avx_maskloadps */
     851         7115 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     852         7115 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
     853         7115 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 0));
     854         7115 :       break;
     855              : 
     856         5770 :     case 9599:  /* avx512vl_vpermt2varv16qi3_mask */
     857         5770 :     case 9598:  /* avx512vl_vpermt2varv32qi3_mask */
     858         5770 :     case 9597:  /* avx512bw_vpermt2varv64qi3_mask */
     859         5770 :     case 9596:  /* avx512vl_vpermt2varv8hi3_mask */
     860         5770 :     case 9595:  /* avx512vl_vpermt2varv16hi3_mask */
     861         5770 :     case 9594:  /* avx512bw_vpermt2varv32hi3_mask */
     862         5770 :     case 9593:  /* avx512vl_vpermt2varv2df3_mask */
     863         5770 :     case 9592:  /* avx512vl_vpermt2varv2di3_mask */
     864         5770 :     case 9591:  /* avx512vl_vpermt2varv4sf3_mask */
     865         5770 :     case 9590:  /* avx512vl_vpermt2varv4si3_mask */
     866         5770 :     case 9589:  /* avx512vl_vpermt2varv4df3_mask */
     867         5770 :     case 9588:  /* avx512vl_vpermt2varv4di3_mask */
     868         5770 :     case 9587:  /* avx512vl_vpermt2varv8sf3_mask */
     869         5770 :     case 9586:  /* avx512vl_vpermt2varv8si3_mask */
     870         5770 :     case 9585:  /* avx512f_vpermt2varv8df3_mask */
     871         5770 :     case 9584:  /* avx512f_vpermt2varv8di3_mask */
     872         5770 :     case 9583:  /* avx512f_vpermt2varv16sf3_mask */
     873         5770 :     case 9582:  /* avx512f_vpermt2varv16si3_mask */
     874         5770 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     875         5770 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
     876         5770 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
     877         5770 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
     878         5770 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
     879         5770 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
     880         5770 :       recog_data.dup_num[0] = 2;
     881         5770 :       break;
     882              : 
     883         1606 :     case 9533:  /* *avx512vl_vpermi2varv2df3_mask */
     884         1606 :     case 9532:  /* *avx512vl_vpermi2varv4df3_mask */
     885         1606 :     case 9531:  /* *avx512f_vpermi2varv8df3_mask */
     886         1606 :     case 9530:  /* *avx512vl_vpermi2varv4sf3_mask */
     887         1606 :     case 9529:  /* *avx512vl_vpermi2varv8sf3_mask */
     888         1606 :     case 9528:  /* *avx512f_vpermi2varv16sf3_mask */
     889         1606 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     890         1606 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
     891         1606 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
     892         1606 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
     893         1606 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
     894         1606 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0);
     895         1606 :       recog_data.dup_num[0] = 2;
     896         1606 :       break;
     897              : 
     898         3632 :     case 9527:  /* *avx512vl_vpermi2varv16qi3_mask */
     899         3632 :     case 9526:  /* *avx512vl_vpermi2varv32qi3_mask */
     900         3632 :     case 9525:  /* *avx512bw_vpermi2varv64qi3_mask */
     901         3632 :     case 9524:  /* *avx512vl_vpermi2varv8hi3_mask */
     902         3632 :     case 9523:  /* *avx512vl_vpermi2varv16hi3_mask */
     903         3632 :     case 9522:  /* *avx512bw_vpermi2varv32hi3_mask */
     904         3632 :     case 9521:  /* *avx512vl_vpermi2varv2di3_mask */
     905         3632 :     case 9520:  /* *avx512vl_vpermi2varv4di3_mask */
     906         3632 :     case 9519:  /* *avx512vl_vpermi2varv4si3_mask */
     907         3632 :     case 9518:  /* *avx512vl_vpermi2varv8si3_mask */
     908         3632 :     case 9517:  /* *avx512f_vpermi2varv8di3_mask */
     909         3632 :     case 9516:  /* *avx512f_vpermi2varv16si3_mask */
     910         3632 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     911         3632 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
     912         3632 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
     913         3632 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
     914         3632 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
     915         3632 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
     916         3632 :       recog_data.dup_num[0] = 2;
     917         3632 :       break;
     918              : 
     919            2 :     case 9441:  /* avx2_lddqu_inserti_to_bcasti */
     920            2 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     921            2 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
     922            2 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0, 0);
     923            2 :       recog_data.dup_num[0] = 1;
     924            2 :       break;
     925              : 
     926        21090 :     case 9463:  /* avx_vbroadcastf128_v16bf */
     927        21090 :     case 9462:  /* avx_vbroadcastf128_v16hf */
     928        21090 :     case 9461:  /* avx_vbroadcastf128_v4df */
     929        21090 :     case 9460:  /* avx_vbroadcastf128_v8sf */
     930        21090 :     case 9459:  /* avx_vbroadcastf128_v4di */
     931        21090 :     case 9458:  /* avx_vbroadcastf128_v8si */
     932        21090 :     case 9457:  /* avx_vbroadcastf128_v16hi */
     933        21090 :     case 9456:  /* avx_vbroadcastf128_v32qi */
     934        21090 :     case 9440:  /* avx2_vbroadcasti128_v4di */
     935        21090 :     case 9439:  /* avx2_vbroadcasti128_v8si */
     936        21090 :     case 9438:  /* avx2_vbroadcasti128_v16hi */
     937        21090 :     case 9437:  /* avx2_vbroadcasti128_v32qi */
     938        21090 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     939        21090 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
     940        21090 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
     941        21090 :       recog_data.dup_num[0] = 1;
     942        21090 :       break;
     943              : 
     944         2690 :     case 9313:  /* *avx_vpermilpv2df_mask */
     945         2690 :     case 9311:  /* *avx_vpermilpv4df_mask */
     946         2690 :     case 9309:  /* *avx512f_vpermilpv8df_mask */
     947         2690 :     case 9307:  /* *avx_vpermilpv4sf_mask */
     948         2690 :     case 9305:  /* *avx_vpermilpv8sf_mask */
     949         2690 :     case 9303:  /* *avx512f_vpermilpv16sf_mask */
     950         2690 :     case 9301:  /* *avx512vl_vpermilpv2di_mask */
     951         2690 :     case 9299:  /* *avx512vl_vpermilpv4di_mask */
     952         2690 :     case 9297:  /* *avx512f_vpermilpv8di_mask */
     953         2690 :     case 9295:  /* *sse2_vpermilpv4si_mask */
     954         2690 :     case 9293:  /* *avx_vpermilpv8si_mask */
     955         2690 :     case 9291:  /* *avx512f_vpermilpv16si_mask */
     956         2690 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     957         2690 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
     958         2690 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
     959         2690 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
     960         2690 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
     961         2690 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
     962         2690 :       break;
     963              : 
     964        97014 :     case 9613:  /* *ssse3_palignrv2df_perm */
     965        97014 :     case 9612:  /* *ssse3_palignrv4sf_perm */
     966        97014 :     case 9611:  /* *ssse3_palignrv2di_perm */
     967        97014 :     case 9610:  /* *ssse3_palignrv4si_perm */
     968        97014 :     case 9609:  /* *ssse3_palignrv8bf_perm */
     969        97014 :     case 9608:  /* *ssse3_palignrv8hf_perm */
     970        97014 :     case 9607:  /* *ssse3_palignrv8hi_perm */
     971        97014 :     case 9606:  /* *ssse3_palignrv16qi_perm */
     972        97014 :     case 9312:  /* *avx_vpermilpv2df */
     973        97014 :     case 9310:  /* *avx_vpermilpv4df */
     974        97014 :     case 9308:  /* *avx512f_vpermilpv8df */
     975        97014 :     case 9306:  /* *avx_vpermilpv4sf */
     976        97014 :     case 9304:  /* *avx_vpermilpv8sf */
     977        97014 :     case 9302:  /* *avx512f_vpermilpv16sf */
     978        97014 :     case 9300:  /* *avx512vl_vpermilpv2di */
     979        97014 :     case 9298:  /* *avx512vl_vpermilpv4di */
     980        97014 :     case 9296:  /* *avx512f_vpermilpv8di */
     981        97014 :     case 9294:  /* *sse2_vpermilpv4si */
     982        97014 :     case 9292:  /* *avx_vpermilpv8si */
     983        97014 :     case 9290:  /* *avx512f_vpermilpv16si */
     984        97014 :     case 9289:  /* *avx_vperm_broadcast_v4df */
     985        97014 :     case 9288:  /* *avx_vperm_broadcast_v8sf */
     986        97014 :     case 9287:  /* *avx_vperm_broadcast_v4sf */
     987        97014 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
     988        97014 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
     989        97014 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
     990        97014 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
     991        97014 :       break;
     992              : 
     993         1617 :     case 9221:  /* *avx_vzeroall */
     994         1617 :       ro[0] = *(ro_loc[0] = &PATTERN (insn));
     995         1617 :       break;
     996              : 
     997         1036 :     case 9205:  /* xop_maskcmp_uns2v2di3 */
     998         1036 :     case 9204:  /* xop_maskcmp_uns2v4si3 */
     999         1036 :     case 9203:  /* xop_maskcmp_uns2v8hi3 */
    1000         1036 :     case 9202:  /* xop_maskcmp_uns2v16qi3 */
    1001         1036 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1002         1036 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    1003         1036 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    1004         1036 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    1005         1036 :       break;
    1006              : 
    1007        12689 :     case 9184:  /* xop_shlv2di3 */
    1008        12689 :     case 9183:  /* xop_shlv4si3 */
    1009        12689 :     case 9182:  /* xop_shlv8hi3 */
    1010        12689 :     case 9181:  /* xop_shlv16qi3 */
    1011        12689 :     case 9180:  /* xop_shav2di3 */
    1012        12689 :     case 9179:  /* xop_shav4si3 */
    1013        12689 :     case 9178:  /* xop_shav8hi3 */
    1014        12689 :     case 9177:  /* xop_shav16qi3 */
    1015        12689 :     case 9176:  /* xop_vrotlv2di3 */
    1016        12689 :     case 9175:  /* xop_vrotlv4si3 */
    1017        12689 :     case 9174:  /* xop_vrotlv8hi3 */
    1018        12689 :     case 9173:  /* xop_vrotlv16qi3 */
    1019        12689 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1020        12689 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    1021        12689 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1022        12689 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 1);
    1023        12689 :       recog_data.dup_num[0] = 2;
    1024        12689 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 2), 0);
    1025        12689 :       recog_data.dup_num[1] = 1;
    1026        12689 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 2), 1), 0);
    1027        12689 :       recog_data.dup_num[2] = 2;
    1028        12689 :       break;
    1029              : 
    1030            0 :     case 9164:  /* xop_pperm_pack_v8hi_v16qi */
    1031            0 :     case 9163:  /* xop_pperm_pack_v4si_v8hi */
    1032            0 :     case 9162:  /* xop_pperm_pack_v2di_v4si */
    1033            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1034            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    1035            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    1036            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    1037            0 :       break;
    1038              : 
    1039          260 :     case 9151:  /* xop_phaddubq */
    1040          260 :     case 9150:  /* xop_phaddbq */
    1041          260 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1042          260 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1043          260 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0), 0);
    1044          260 :       recog_data.dup_num[0] = 1;
    1045          260 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0), 0);
    1046          260 :       recog_data.dup_num[1] = 1;
    1047          260 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 0), 0);
    1048          260 :       recog_data.dup_num[2] = 1;
    1049          260 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0), 0);
    1050          260 :       recog_data.dup_num[3] = 1;
    1051          260 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 0), 0);
    1052          260 :       recog_data.dup_num[4] = 1;
    1053          260 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 0), 0);
    1054          260 :       recog_data.dup_num[5] = 1;
    1055          260 :       recog_data.dup_loc[6] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 0), 0);
    1056          260 :       recog_data.dup_num[6] = 1;
    1057          260 :       break;
    1058              : 
    1059          520 :     case 9155:  /* xop_phadduwq */
    1060          520 :     case 9154:  /* xop_phaddwq */
    1061          520 :     case 9149:  /* xop_phaddubd */
    1062          520 :     case 9148:  /* xop_phaddbd */
    1063          520 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1064          520 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    1065          520 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0);
    1066          520 :       recog_data.dup_num[0] = 1;
    1067          520 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0);
    1068          520 :       recog_data.dup_num[1] = 1;
    1069          520 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 0);
    1070          520 :       recog_data.dup_num[2] = 1;
    1071          520 :       break;
    1072              : 
    1073         1332 :     case 9160:  /* xop_phsubdq */
    1074         1332 :     case 9159:  /* xop_phsubwd */
    1075         1332 :     case 9158:  /* xop_phsubbw */
    1076         1332 :     case 9157:  /* xop_phaddudq */
    1077         1332 :     case 9156:  /* xop_phadddq */
    1078         1332 :     case 9153:  /* xop_phadduwd */
    1079         1332 :     case 9152:  /* xop_phaddwd */
    1080         1332 :     case 9147:  /* xop_phaddubw */
    1081         1332 :     case 9146:  /* xop_phaddbw */
    1082         1332 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1083         1332 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    1084         1332 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0);
    1085         1332 :       recog_data.dup_num[0] = 1;
    1086         1332 :       break;
    1087              : 
    1088          416 :     case 9129:  /* xop_pmadcsswd */
    1089          416 :     case 9128:  /* xop_pmadcswd */
    1090          416 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1091          416 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1092          416 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0), 0));
    1093          416 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1094          416 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0), 0);
    1095          416 :       recog_data.dup_num[0] = 1;
    1096          416 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 0), 0);
    1097          416 :       recog_data.dup_num[1] = 2;
    1098          416 :       break;
    1099              : 
    1100         2849 :     case 9127:  /* xop_pmacsswd */
    1101         2849 :     case 9126:  /* xop_pmacswd */
    1102         2849 :     case 9125:  /* xop_pmacssdqh */
    1103         2849 :     case 9124:  /* xop_pmacsdqh */
    1104         2849 :     case 9123:  /* xop_pmacssdql */
    1105         2849 :     case 9122:  /* xop_pmacsdql */
    1106         2849 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1107         2849 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    1108         2849 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0));
    1109         2849 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1110         2849 :       break;
    1111              : 
    1112         1774 :     case 9117:  /* sse4_2_pcmpistr_cconly */
    1113         1774 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    1114         1774 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 2), 0));
    1115         1774 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1116         1774 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1117         1774 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1118         1774 :       break;
    1119              : 
    1120         1964 :     case 9116:  /* sse4_2_pcmpistrm */
    1121         1964 :     case 9115:  /* sse4_2_pcmpistri */
    1122         1964 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1123         1964 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1124         1964 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1125         1964 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1126         1964 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 2);
    1127         1964 :       recog_data.dup_num[0] = 3;
    1128         1964 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    1129         1964 :       recog_data.dup_num[1] = 2;
    1130         1964 :       recog_data.dup_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    1131         1964 :       recog_data.dup_num[2] = 1;
    1132         1964 :       break;
    1133              : 
    1134         1287 :     case 9114:  /* sse4_2_pcmpistr */
    1135         1287 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1136         1287 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    1137         1287 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1138         1287 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1139         1287 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1140         1287 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 2);
    1141         1287 :       recog_data.dup_num[0] = 4;
    1142         1287 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 1);
    1143         1287 :       recog_data.dup_num[1] = 3;
    1144         1287 :       recog_data.dup_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 0);
    1145         1287 :       recog_data.dup_num[2] = 2;
    1146         1287 :       recog_data.dup_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 2);
    1147         1287 :       recog_data.dup_num[3] = 4;
    1148         1287 :       recog_data.dup_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    1149         1287 :       recog_data.dup_num[4] = 3;
    1150         1287 :       recog_data.dup_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    1151         1287 :       recog_data.dup_num[5] = 2;
    1152         1287 :       break;
    1153              : 
    1154         1336 :     case 9113:  /* sse4_2_pcmpestr_cconly */
    1155         1336 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    1156         1336 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 2), 0));
    1157         1336 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1158         1336 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1159         1336 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1160         1336 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
    1161         1336 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 4));
    1162         1336 :       break;
    1163              : 
    1164         1816 :     case 9112:  /* sse4_2_pcmpestrm */
    1165         1816 :     case 9111:  /* sse4_2_pcmpestri */
    1166         1816 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1167         1816 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1168         1816 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1169         1816 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1170         1816 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
    1171         1816 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 4));
    1172         1816 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 4);
    1173         1816 :       recog_data.dup_num[0] = 5;
    1174         1816 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 3);
    1175         1816 :       recog_data.dup_num[1] = 4;
    1176         1816 :       recog_data.dup_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 2);
    1177         1816 :       recog_data.dup_num[2] = 3;
    1178         1816 :       recog_data.dup_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    1179         1816 :       recog_data.dup_num[3] = 2;
    1180         1816 :       recog_data.dup_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    1181         1816 :       recog_data.dup_num[4] = 1;
    1182         1816 :       break;
    1183              : 
    1184         1225 :     case 9110:  /* sse4_2_pcmpestr */
    1185         1225 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1186         1225 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    1187         1225 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1188         1225 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1189         1225 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1190         1225 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
    1191         1225 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 4));
    1192         1225 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 4);
    1193         1225 :       recog_data.dup_num[0] = 6;
    1194         1225 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 3);
    1195         1225 :       recog_data.dup_num[1] = 5;
    1196         1225 :       recog_data.dup_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 2);
    1197         1225 :       recog_data.dup_num[2] = 4;
    1198         1225 :       recog_data.dup_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 1);
    1199         1225 :       recog_data.dup_num[3] = 3;
    1200         1225 :       recog_data.dup_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 0);
    1201         1225 :       recog_data.dup_num[4] = 2;
    1202         1225 :       recog_data.dup_loc[5] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 4);
    1203         1225 :       recog_data.dup_num[5] = 6;
    1204         1225 :       recog_data.dup_loc[6] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 3);
    1205         1225 :       recog_data.dup_num[6] = 5;
    1206         1225 :       recog_data.dup_loc[7] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 2);
    1207         1225 :       recog_data.dup_num[7] = 4;
    1208         1225 :       recog_data.dup_loc[8] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    1209         1225 :       recog_data.dup_num[8] = 3;
    1210         1225 :       recog_data.dup_loc[9] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    1211         1225 :       recog_data.dup_num[9] = 2;
    1212         1225 :       break;
    1213              : 
    1214           22 :     case 9099:  /* *ptestv2di_ccz */
    1215           22 :     case 9098:  /* *ptestv4di_ccz */
    1216           22 :     case 9097:  /* *ptestv4si_ccz */
    1217           22 :     case 9096:  /* *ptestv8si_ccz */
    1218           22 :     case 9095:  /* *ptestv8hi_ccz */
    1219           22 :     case 9094:  /* *ptestv16hi_ccz */
    1220           22 :     case 9093:  /* *ptestv16qi_ccz */
    1221           22 :     case 9092:  /* *ptestv32qi_ccz */
    1222           22 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    1223           22 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    1224           22 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    1225           22 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 0), 0);
    1226           22 :       recog_data.dup_num[0] = 0;
    1227           22 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 0), 1);
    1228           22 :       recog_data.dup_num[1] = 1;
    1229           22 :       recog_data.dup_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 1);
    1230           22 :       recog_data.dup_num[2] = 2;
    1231           22 :       break;
    1232              : 
    1233            7 :     case 9091:  /* *ptestv4df_and */
    1234            7 :     case 9090:  /* *ptestv8sf_and */
    1235            7 :     case 9089:  /* *ptestv2ti_and */
    1236            7 :     case 9088:  /* *ptestv4di_and */
    1237            7 :     case 9087:  /* *ptestv8si_and */
    1238            7 :     case 9086:  /* *ptestv16hi_and */
    1239            7 :     case 9085:  /* *ptestv32qi_and */
    1240            7 :     case 9084:  /* *ptestv2df_and */
    1241            7 :     case 9083:  /* *ptestv4sf_and */
    1242            7 :     case 9082:  /* *ptestv1ti_and */
    1243            7 :     case 9081:  /* *ptestv2di_and */
    1244            7 :     case 9080:  /* *ptestv4si_and */
    1245            7 :     case 9079:  /* *ptestv8hi_and */
    1246            7 :     case 9078:  /* *ptestv16qi_and */
    1247            7 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    1248            7 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    1249            7 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 0);
    1250            7 :       recog_data.dup_num[0] = 0;
    1251            7 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 1);
    1252            7 :       recog_data.dup_num[1] = 1;
    1253            7 :       break;
    1254              : 
    1255           39 :     case 9058:  /* *sse4_1_zero_extendv2siv2di2_4 */
    1256           39 :     case 9044:  /* *avx2_zero_extendv4siv4di2_2 */
    1257           39 :     case 9038:  /* *avx512f_zero_extendv8siv8di2_2 */
    1258           39 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1259           39 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    1260           39 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    1261           39 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    1262           39 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    1263           39 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    1264           39 :       break;
    1265              : 
    1266           10 :     case 9004:  /* *sse4_1_zero_extendv2qiv2di2_2 */
    1267           10 :     case 9003:  /* *sse4_1_zero_extendv2qiv2di2_2 */
    1268           10 :     case 9002:  /* *sse4_1_zero_extendv2qiv2di2_2 */
    1269           10 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1270           10 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1271           10 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1));
    1272           10 :       break;
    1273              : 
    1274           27 :     case 9032:  /* *avx512vl_zero_extendv2hiv2di2_mask_2 */
    1275           27 :     case 9031:  /* *avx512vl_sign_extendv2hiv2di2_mask_2 */
    1276           27 :     case 8993:  /* *avx512vl_zero_extendv4qiv4di2_mask_2 */
    1277           27 :     case 8992:  /* *avx512vl_sign_extendv4qiv4di2_mask_2 */
    1278           27 :     case 8937:  /* *avx512vl_zero_extendv4qiv4si2_mask_2 */
    1279           27 :     case 8936:  /* *avx512vl_sign_extendv4qiv4si2_mask_2 */
    1280           27 :     case 8935:  /* *sse4_1_zero_extendv4qiv4si2_2 */
    1281           27 :     case 8933:  /* *sse4_1_sign_extendv4qiv4si2_2 */
    1282           27 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1283           27 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 0));
    1284           27 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    1285           27 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    1286           27 :       break;
    1287              : 
    1288           20 :     case 9030:  /* *sse4_1_zero_extendv2hiv2di2_2 */
    1289           20 :     case 9029:  /* *sse4_1_sign_extendv2hiv2di2_2 */
    1290           20 :     case 8991:  /* *avx2_zero_extendv4qiv4di2_2 */
    1291           20 :     case 8990:  /* *avx2_sign_extendv4qiv4di2_2 */
    1292           20 :     case 8934:  /* *sse4_1_zero_extendv4qiv4si2_2 */
    1293           20 :     case 8932:  /* *sse4_1_sign_extendv4qiv4si2_2 */
    1294           20 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1295           20 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1296           20 :       break;
    1297              : 
    1298           54 :     case 9056:  /* *avx512vl_zero_extendv2siv2di2_mask_2 */
    1299           54 :     case 9055:  /* *avx512vl_sign_extendv2siv2di2_mask_2 */
    1300           54 :     case 9020:  /* *avx512vl_zero_extendv4hiv4di2_mask_2 */
    1301           54 :     case 9019:  /* *avx512vl_sign_extendv4hiv4di2_mask_2 */
    1302           54 :     case 8981:  /* *avx512f_zero_extendv8qiv8di2_mask_2 */
    1303           54 :     case 8980:  /* *avx512f_sign_extendv8qiv8di2_mask_2 */
    1304           54 :     case 8965:  /* *avx512vl_zero_extendv4hiv4si2_mask_2 */
    1305           54 :     case 8964:  /* *avx512vl_sign_extendv4hiv4si2_mask_2 */
    1306           54 :     case 8923:  /* *avx512vl_zero_extendv8qiv8si2_mask_2 */
    1307           54 :     case 8922:  /* *avx512vl_sign_extendv8qiv8si2_mask_2 */
    1308           54 :     case 8903:  /* *avx512vl_zero_extendv8qiv8hi2_mask_2 */
    1309           54 :     case 8902:  /* *avx512vl_sign_extendv8qiv8hi2_mask_2 */
    1310           54 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1311           54 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1312           54 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    1313           54 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    1314           54 :       break;
    1315              : 
    1316           36 :     case 9054:  /* *sse4_1_zero_extendv2siv2di2_2 */
    1317           36 :     case 9053:  /* *sse4_1_sign_extendv2siv2di2_2 */
    1318           36 :     case 9018:  /* *avx2_zero_extendv4hiv4di2_2 */
    1319           36 :     case 9017:  /* *avx2_sign_extendv4hiv4di2_2 */
    1320           36 :     case 8979:  /* *avx512f_zero_extendv8qiv8di2_2 */
    1321           36 :     case 8978:  /* *avx512f_sign_extendv8qiv8di2_2 */
    1322           36 :     case 8963:  /* *sse4_1_zero_extendv4hiv4si2_2 */
    1323           36 :     case 8962:  /* *sse4_1_sign_extendv4hiv4si2_2 */
    1324           36 :     case 8921:  /* *avx2_zero_extendv8qiv8si2_2 */
    1325           36 :     case 8920:  /* *avx2_sign_extendv8qiv8si2_2 */
    1326           36 :     case 8901:  /* *sse4_1_zero_extendv8qiv8hi2_2 */
    1327           36 :     case 8900:  /* *sse4_1_sign_extendv8qiv8hi2_2 */
    1328           36 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1329           36 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    1330           36 :       break;
    1331              : 
    1332          114 :     case 8969:  /* *sse4_1_zero_extendv4hiv4si2_4 */
    1333          114 :     case 8968:  /* *sse4_1_zero_extendv4hiv4si2_4 */
    1334          114 :     case 8967:  /* *sse4_1_zero_extendv4hiv4si2_4 */
    1335          114 :     case 8953:  /* *avx2_zero_extendv8hiv8si2_2 */
    1336          114 :     case 8952:  /* *avx2_zero_extendv8hiv8si2_2 */
    1337          114 :     case 8951:  /* *avx2_zero_extendv8hiv8si2_2 */
    1338          114 :     case 8945:  /* *avx512f_zero_extendv16hiv16si2_2 */
    1339          114 :     case 8944:  /* *avx512f_zero_extendv16hiv16si2_2 */
    1340          114 :     case 8943:  /* *avx512f_zero_extendv16hiv16si2_2 */
    1341          114 :     case 8907:  /* *sse4_1_zero_extendv8qiv8hi2_4 */
    1342          114 :     case 8906:  /* *sse4_1_zero_extendv8qiv8hi2_4 */
    1343          114 :     case 8905:  /* *sse4_1_zero_extendv8qiv8hi2_4 */
    1344          114 :     case 8891:  /* *avx512bw_zero_extendv32qiv32hi2_2 */
    1345          114 :     case 8890:  /* *avx512bw_zero_extendv32qiv32hi2_2 */
    1346          114 :     case 8889:  /* *avx512bw_zero_extendv32qiv32hi2_2 */
    1347          114 :     case 8883:  /* *avx2_zero_extendv16qiv16hi2_2 */
    1348          114 :     case 8882:  /* *avx2_zero_extendv16qiv16hi2_2 */
    1349          114 :     case 8881:  /* *avx2_zero_extendv16qiv16hi2_2 */
    1350          114 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1351          114 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    1352          114 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1));
    1353          114 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    1354          114 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    1355          114 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    1356          114 :       break;
    1357              : 
    1358            8 :     case 8866:  /* *sse4_1_pblendvb_gt_subreg_not */
    1359            8 :     case 8865:  /* *avx2_pblendvb_gt_subreg_not */
    1360            8 :     case 8864:  /* *sse4_1_pblendvb_lt_subreg_not */
    1361            8 :     case 8863:  /* *avx2_pblendvb_lt_subreg_not */
    1362            8 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1363            8 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
    1364            8 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 0));
    1365            8 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 0), 0));
    1366            8 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 1));
    1367            8 :       break;
    1368              : 
    1369           24 :     case 8835:  /* *avx_blendvpd256_not_gtint */
    1370           24 :     case 8834:  /* *avx_blendvps256_not_gtint */
    1371           24 :     case 8833:  /* *sse4_1_blendvpd_not_gtint */
    1372           24 :     case 8832:  /* *sse4_1_blendvps_not_gtint */
    1373           24 :     case 8831:  /* *avx_blendvpd256_not_ltint */
    1374           24 :     case 8830:  /* *avx_blendvps256_not_ltint */
    1375           24 :     case 8829:  /* *sse4_1_blendvpd_not_ltint */
    1376           24 :     case 8828:  /* *sse4_1_blendvps_not_ltint */
    1377           24 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1378           24 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    1379           24 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    1380           24 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 0), 0), 0));
    1381           24 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 1));
    1382           24 :       break;
    1383              : 
    1384          813 :     case 8827:  /* *avx_blendvpd256_gtint */
    1385          813 :     case 8826:  /* *avx_blendvps256_gtint */
    1386          813 :     case 8825:  /* *sse4_1_blendvpd_gtint */
    1387          813 :     case 8824:  /* *sse4_1_blendvps_gtint */
    1388          813 :     case 8823:  /* *avx_blendvpd256_ltint */
    1389          813 :     case 8822:  /* *avx_blendvps256_ltint */
    1390          813 :     case 8821:  /* *sse4_1_blendvpd_ltint */
    1391          813 :     case 8820:  /* *sse4_1_blendvps_ltint */
    1392          813 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1393          813 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    1394          813 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    1395          813 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 0));
    1396          813 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 1));
    1397          813 :       break;
    1398              : 
    1399          308 :     case 8753:  /* *ssse3_pshufbv8qi3 */
    1400          308 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1401          308 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    1402          308 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    1403          308 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    1404          308 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    1405          308 :       break;
    1406              : 
    1407          959 :     case 8744:  /* *ssse3_pmulhrswv8hi3_mask */
    1408          959 :     case 8742:  /* *avx2_pmulhrswv16hi3_mask */
    1409          959 :     case 8740:  /* *avx512bw_pmulhrswv32hi3_mask */
    1410          959 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1411          959 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 0), 0));
    1412          959 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 1), 0));
    1413          959 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1));
    1414          959 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    1415          959 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    1416          959 :       break;
    1417              : 
    1418          989 :     case 8746:  /* *smulhrsv2hi3 */
    1419          989 :     case 8745:  /* *ssse3_pmulhrswv4hi3 */
    1420          989 :     case 8743:  /* *ssse3_pmulhrswv8hi3 */
    1421          989 :     case 8741:  /* *avx2_pmulhrswv16hi3 */
    1422          989 :     case 8739:  /* *avx512bw_pmulhrswv32hi3 */
    1423          989 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1424          989 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 0));
    1425          989 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 1), 0));
    1426          989 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    1427          989 :       break;
    1428              : 
    1429          934 :     case 8736:  /* avx512bw_umulhrswv32hi3_mask */
    1430          934 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1431          934 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 0), 0));
    1432          934 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 1), 0));
    1433          934 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1434          934 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1435          934 :       break;
    1436              : 
    1437          135 :     case 8735:  /* avx512bw_umulhrswv32hi3 */
    1438          135 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1439          135 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 0));
    1440          135 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 1), 0));
    1441          135 :       break;
    1442              : 
    1443         5038 :     case 8727:  /* ssse3_phsubdv2si3 */
    1444         5038 :     case 8726:  /* ssse3_phadddv2si3 */
    1445         5038 :     case 8725:  /* ssse3_phsubdv4si3 */
    1446         5038 :     case 8724:  /* ssse3_phadddv4si3 */
    1447         5038 :     case 8723:  /* avx2_phsubdv8si3 */
    1448         5038 :     case 8722:  /* avx2_phadddv8si3 */
    1449         5038 :     case 8721:  /* ssse3_phsubswv4hi3 */
    1450         5038 :     case 8720:  /* ssse3_phsubwv4hi3 */
    1451         5038 :     case 8719:  /* ssse3_phaddswv4hi3 */
    1452         5038 :     case 8718:  /* ssse3_phaddwv4hi3 */
    1453         5038 :     case 8717:  /* ssse3_phsubswv8hi3 */
    1454         5038 :     case 8716:  /* ssse3_phsubwv8hi3 */
    1455         5038 :     case 8715:  /* ssse3_phaddswv8hi3 */
    1456         5038 :     case 8714:  /* ssse3_phaddwv8hi3 */
    1457         5038 :     case 8713:  /* avx2_phsubswv16hi3 */
    1458         5038 :     case 8712:  /* avx2_phsubwv16hi3 */
    1459         5038 :     case 8711:  /* avx2_phaddswv16hi3 */
    1460         5038 :     case 8710:  /* avx2_phaddwv16hi3 */
    1461         5038 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1462         5038 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    1463         5038 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    1464         5038 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0);
    1465         5038 :       recog_data.dup_num[0] = 1;
    1466         5038 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1);
    1467         5038 :       recog_data.dup_num[1] = 2;
    1468         5038 :       break;
    1469              : 
    1470            2 :     case 8701:  /* *pmovsk_ptest_v16qi_avx512 */
    1471            2 :     case 8700:  /* *pmovsk_ptest_v32qi_avx512 */
    1472            2 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 2), 0, 0));
    1473            2 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 2), 0, 1));
    1474            2 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    1475            2 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0));
    1476            2 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 1));
    1477            2 :       break;
    1478              : 
    1479            0 :     case 8699:  /* *pmovsk_mask_cmp_v16qi_avx512 */
    1480            0 :     case 8698:  /* *pmovsk_mask_cmp_v32qi_avx512 */
    1481            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0));
    1482            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 2));
    1483            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    1484            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 1));
    1485            0 :       break;
    1486              : 
    1487            0 :     case 8697:  /* *pmovsk_mask_v32qi_avx512 */
    1488            0 :     case 8696:  /* *pmovsk_kmask_v16qi_avx512 */
    1489            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1490            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    1491            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    1492            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    1493            0 :       break;
    1494              : 
    1495            0 :     case 8695:  /* *sse2_pmovmskb_ext_lt_avx512 */
    1496            0 :     case 8694:  /* *sse2_pmovmskb_ext_lt_avx512 */
    1497            0 :     case 8692:  /* *sse2_pmovmskb_zext_lt_avx512 */
    1498            0 :     case 8691:  /* *avx2_pmovmskb_zext_lt_avx512 */
    1499            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1500            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 2), 0, 0));
    1501            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 2), 0, 1));
    1502            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0));
    1503            0 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 1));
    1504            0 :       break;
    1505              : 
    1506            0 :     case 8688:  /* *sse2_pmovmskb_lt_avx512 */
    1507            0 :     case 8687:  /* *avx2_pmovmskb_lt_avx512 */
    1508            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1509            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0, 0));
    1510            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0, 1));
    1511            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    1512            0 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    1513            0 :       break;
    1514              : 
    1515           10 :     case 8684:  /* *sse2_pmovskb_zexthisi */
    1516           10 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1517           10 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    1518           10 :       break;
    1519              : 
    1520           26 :     case 8678:  /* *sse2_movmskpd_uext_shift */
    1521           26 :     case 8677:  /* *sse2_movmskpd_ext_shift */
    1522           26 :     case 8676:  /* *avx_movmskpd256_uext_shift */
    1523           26 :     case 8675:  /* *avx_movmskpd256_ext_shift */
    1524           26 :     case 8674:  /* *sse_movmskps_uext_shift */
    1525           26 :     case 8673:  /* *sse_movmskps_ext_shift */
    1526           26 :     case 8672:  /* *avx_movmskps256_uext_shift */
    1527           26 :     case 8671:  /* *avx_movmskps256_ext_shift */
    1528           26 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1529           26 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 0));
    1530           26 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 1));
    1531           26 :       break;
    1532              : 
    1533          134 :     case 8670:  /* *sse2_movmskpd_shift */
    1534          134 :     case 8669:  /* *avx_movmskpd256_shift */
    1535          134 :     case 8668:  /* *sse_movmskps_shift */
    1536          134 :     case 8667:  /* *avx_movmskps256_shift */
    1537          134 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1538          134 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    1539          134 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    1540          134 :       break;
    1541              : 
    1542            0 :     case 8666:  /* *sse2_movmskpd_uext_lt_avx512 */
    1543            0 :     case 8665:  /* *sse2_movmskpd_ext_lt_avx512 */
    1544            0 :     case 8664:  /* *avx_movmskpd256_uext_lt_avx512 */
    1545            0 :     case 8663:  /* *avx_movmskpd256_ext_lt_avx512 */
    1546            0 :     case 8662:  /* *sse_movmskps_uext_lt_avx512 */
    1547            0 :     case 8661:  /* *sse_movmskps_ext_lt_avx512 */
    1548            0 :     case 8660:  /* *avx_movmskps256_uext_lt_avx512 */
    1549            0 :     case 8659:  /* *avx_movmskps256_ext_lt_avx512 */
    1550            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1551            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 2), 0, 0));
    1552            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 2), 0, 1));
    1553            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 0));
    1554            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 1));
    1555            0 :       break;
    1556              : 
    1557           24 :     case 8693:  /* *sse2_pmovmskb_ext_lt */
    1558           24 :     case 8690:  /* *sse2_pmovmskb_zext_lt */
    1559           24 :     case 8689:  /* *avx2_pmovmskb_zext_lt */
    1560           24 :     case 8658:  /* *sse2_movmskpd_uext_lt */
    1561           24 :     case 8657:  /* *sse2_movmskpd_ext_lt */
    1562           24 :     case 8656:  /* *avx_movmskpd256_uext_lt */
    1563           24 :     case 8655:  /* *avx_movmskpd256_ext_lt */
    1564           24 :     case 8654:  /* *sse_movmskps_uext_lt */
    1565           24 :     case 8653:  /* *sse_movmskps_ext_lt */
    1566           24 :     case 8652:  /* *avx_movmskps256_uext_lt */
    1567           24 :     case 8651:  /* *avx_movmskps256_ext_lt */
    1568           24 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1569           24 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0));
    1570           24 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 1));
    1571           24 :       break;
    1572              : 
    1573            0 :     case 8650:  /* *sse2_movmskpd_lt_avx512 */
    1574            0 :     case 8649:  /* *avx_movmskpd256_lt_avx512 */
    1575            0 :     case 8648:  /* *sse_movmskps_lt_avx512 */
    1576            0 :     case 8647:  /* *avx_movmskps256_lt_avx512 */
    1577            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1578            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0, 0));
    1579            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0, 1));
    1580            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    1581            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    1582            0 :       break;
    1583              : 
    1584         3033 :     case 8627:  /* *sse2_uavgv8hi3_mask */
    1585         3033 :     case 8625:  /* *avx2_uavgv16hi3_mask */
    1586         3033 :     case 8623:  /* *avx512bw_uavgv32hi3_mask */
    1587         3033 :     case 8621:  /* *sse2_uavgv16qi3_mask */
    1588         3033 :     case 8619:  /* *avx2_uavgv32qi3_mask */
    1589         3033 :     case 8617:  /* *avx512bw_uavgv64qi3_mask */
    1590         3033 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1591         3033 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0), 0));
    1592         3033 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 1), 0));
    1593         3033 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1594         3033 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1595         3033 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1));
    1596         3033 :       break;
    1597              : 
    1598         1957 :     case 8626:  /* *sse2_uavgv8hi3 */
    1599         1957 :     case 8624:  /* *avx2_uavgv16hi3 */
    1600         1957 :     case 8622:  /* *avx512bw_uavgv32hi3 */
    1601         1957 :     case 8620:  /* *sse2_uavgv16qi3 */
    1602         1957 :     case 8618:  /* *avx2_uavgv32qi3 */
    1603         1957 :     case 8616:  /* *avx512bw_uavgv64qi3 */
    1604         1957 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1605         1957 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1606         1957 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1), 0));
    1607         1957 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    1608         1957 :       break;
    1609              : 
    1610          885 :     case 11278:  /* tilemovrow_extract */
    1611          885 :     case 11277:  /* tcvtrowps2bf16l */
    1612          885 :     case 11276:  /* tcvtrowps2bf16h */
    1613          885 :     case 11275:  /* tcvtrowps2phl */
    1614          885 :     case 11274:  /* tcvtrowps2phh */
    1615          885 :     case 11273:  /* tcvtrowd2ps */
    1616          885 :     case 8608:  /* *vec_concatv8hi_permt2 */
    1617          885 :     case 8607:  /* *vec_concatv16qi_permt2 */
    1618          885 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1619          885 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
    1620          885 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 2));
    1621          885 :       break;
    1622              : 
    1623          394 :     case 8577:  /* sse2_pshufhw_1_mask */
    1624          394 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1625          394 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1626          394 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 4));
    1627          394 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 5));
    1628          394 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 6));
    1629          394 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 7));
    1630          394 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (pat, 1), 1));
    1631          394 :       ro[7] = *(ro_loc[7] = &XEXP (XEXP (pat, 1), 2));
    1632          394 :       break;
    1633              : 
    1634         4953 :     case 8576:  /* sse2_pshufhw_1 */
    1635         4953 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1636         4953 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1637         4953 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 4));
    1638         4953 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 5));
    1639         4953 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 6));
    1640         4953 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 7));
    1641         4953 :       break;
    1642              : 
    1643          436 :     case 8575:  /* avx2_pshufhw_1_mask */
    1644          436 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1645          436 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1646          436 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 4));
    1647          436 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 5));
    1648          436 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 6));
    1649          436 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 7));
    1650          436 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 12));
    1651          436 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 13));
    1652          436 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 14));
    1653          436 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 15));
    1654          436 :       ro[10] = *(ro_loc[10] = &XEXP (XEXP (pat, 1), 1));
    1655          436 :       ro[11] = *(ro_loc[11] = &XEXP (XEXP (pat, 1), 2));
    1656          436 :       break;
    1657              : 
    1658          246 :     case 8574:  /* avx2_pshufhw_1 */
    1659          246 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1660          246 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1661          246 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 4));
    1662          246 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 5));
    1663          246 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 6));
    1664          246 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 7));
    1665          246 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 12));
    1666          246 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 13));
    1667          246 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 14));
    1668          246 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 15));
    1669          246 :       break;
    1670              : 
    1671          436 :     case 8569:  /* avx2_pshuflw_1_mask */
    1672          436 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1673          436 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1674          436 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    1675          436 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    1676          436 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    1677          436 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    1678          436 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 8));
    1679          436 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 9));
    1680          436 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 10));
    1681          436 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 11));
    1682          436 :       ro[10] = *(ro_loc[10] = &XEXP (XEXP (pat, 1), 1));
    1683          436 :       ro[11] = *(ro_loc[11] = &XEXP (XEXP (pat, 1), 2));
    1684          436 :       break;
    1685              : 
    1686          273 :     case 8568:  /* avx2_pshuflw_1 */
    1687          273 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1688          273 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1689          273 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    1690          273 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    1691          273 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    1692          273 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    1693          273 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 8));
    1694          273 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 9));
    1695          273 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 10));
    1696          273 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 11));
    1697          273 :       break;
    1698              : 
    1699          507 :     case 8561:  /* avx512f_pshufd_1_mask */
    1700          507 :     case 8559:  /* *avx512f_shuf_i32x4_1_mask_1 */
    1701          507 :     case 8557:  /* *avx512f_shuf_f32x4_1_mask_1 */
    1702          507 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1703          507 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1704          507 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    1705          507 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    1706          507 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    1707          507 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    1708          507 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 4));
    1709          507 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 5));
    1710          507 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 6));
    1711          507 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 7));
    1712          507 :       ro[10] = *(ro_loc[10] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 8));
    1713          507 :       ro[11] = *(ro_loc[11] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 9));
    1714          507 :       ro[12] = *(ro_loc[12] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 10));
    1715          507 :       ro[13] = *(ro_loc[13] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 11));
    1716          507 :       ro[14] = *(ro_loc[14] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 12));
    1717          507 :       ro[15] = *(ro_loc[15] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 13));
    1718          507 :       ro[16] = *(ro_loc[16] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 14));
    1719          507 :       ro[17] = *(ro_loc[17] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 15));
    1720          507 :       ro[18] = *(ro_loc[18] = &XEXP (XEXP (pat, 1), 1));
    1721          507 :       ro[19] = *(ro_loc[19] = &XEXP (XEXP (pat, 1), 2));
    1722          507 :       break;
    1723              : 
    1724         1363 :     case 8560:  /* avx512f_pshufd_1 */
    1725         1363 :     case 8558:  /* *avx512f_shuf_i32x4_1_1 */
    1726         1363 :     case 8556:  /* *avx512f_shuf_f32x4_1_1 */
    1727         1363 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1728         1363 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1729         1363 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    1730         1363 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    1731         1363 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    1732         1363 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    1733         1363 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 4));
    1734         1363 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 5));
    1735         1363 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 6));
    1736         1363 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 7));
    1737         1363 :       ro[10] = *(ro_loc[10] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 8));
    1738         1363 :       ro[11] = *(ro_loc[11] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 9));
    1739         1363 :       ro[12] = *(ro_loc[12] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 10));
    1740         1363 :       ro[13] = *(ro_loc[13] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 11));
    1741         1363 :       ro[14] = *(ro_loc[14] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 12));
    1742         1363 :       ro[15] = *(ro_loc[15] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 13));
    1743         1363 :       ro[16] = *(ro_loc[16] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 14));
    1744         1363 :       ro[17] = *(ro_loc[17] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 15));
    1745         1363 :       break;
    1746              : 
    1747         1658 :     case 9321:  /* avx512f_permv8di_1_mask */
    1748         1658 :     case 9319:  /* avx512f_permv8df_1_mask */
    1749         1658 :     case 8563:  /* avx2_pshufd_1_mask */
    1750         1658 :     case 8547:  /* *avx512f_shuf_i64x2_1_mask_1 */
    1751         1658 :     case 8545:  /* *avx512f_shuf_f64x2_1_mask_1 */
    1752         1658 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1753         1658 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1754         1658 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    1755         1658 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    1756         1658 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    1757         1658 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    1758         1658 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 4));
    1759         1658 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 5));
    1760         1658 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 6));
    1761         1658 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 7));
    1762         1658 :       ro[10] = *(ro_loc[10] = &XEXP (XEXP (pat, 1), 1));
    1763         1658 :       ro[11] = *(ro_loc[11] = &XEXP (XEXP (pat, 1), 2));
    1764         1658 :       break;
    1765              : 
    1766        15083 :     case 9320:  /* avx512f_permv8di_1 */
    1767        15083 :     case 9318:  /* avx512f_permv8df_1 */
    1768        15083 :     case 8562:  /* avx2_pshufd_1 */
    1769        15083 :     case 8546:  /* *avx512f_shuf_i64x2_1_1 */
    1770        15083 :     case 8544:  /* *avx512f_shuf_f64x2_1_1 */
    1771        15083 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1772        15083 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1773        15083 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    1774        15083 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    1775        15083 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    1776        15083 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    1777        15083 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 4));
    1778        15083 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 5));
    1779        15083 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 6));
    1780        15083 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 7));
    1781        15083 :       break;
    1782              : 
    1783          321 :     case 9625:  /* vec_set_lo_v8sf_mask */
    1784          321 :     case 9623:  /* vec_set_lo_v8si_mask */
    1785          321 :     case 9617:  /* vec_set_lo_v4df_mask */
    1786          321 :     case 9615:  /* vec_set_lo_v4di_mask */
    1787          321 :     case 8531:  /* vec_set_lo_v8di_mask */
    1788          321 :     case 8529:  /* vec_set_lo_v8df_mask */
    1789          321 :     case 8523:  /* vec_set_lo_v16si_mask */
    1790          321 :     case 8521:  /* vec_set_lo_v16sf_mask */
    1791          321 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1792          321 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    1793          321 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1794          321 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1795          321 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1796          321 :       break;
    1797              : 
    1798         1973 :     case 8519:  /* avx512f_vinserti32x4_1_mask */
    1799         1973 :     case 8517:  /* avx512f_vinsertf32x4_1_mask */
    1800         1973 :     case 8515:  /* avx512dq_vinserti64x2_1_mask */
    1801         1973 :     case 8513:  /* avx512dq_vinsertf64x2_1_mask */
    1802         1973 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1803         1973 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    1804         1973 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    1805         1973 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    1806         1973 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    1807         1973 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    1808         1973 :       break;
    1809              : 
    1810          965 :     case 8518:  /* *avx512f_vinserti32x4_1 */
    1811          965 :     case 8516:  /* *avx512f_vinsertf32x4_1 */
    1812          965 :     case 8514:  /* *avx512dq_vinserti64x2_1 */
    1813          965 :     case 8512:  /* *avx512dq_vinsertf64x2_1 */
    1814          965 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1815          965 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1816          965 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    1817          965 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    1818          965 :       break;
    1819              : 
    1820         2293 :     case 8434:  /* avx512bw_packssdw_mask */
    1821         2293 :     case 8432:  /* avx2_packssdw_mask */
    1822         2293 :     case 8428:  /* avx512bw_packsswb_mask */
    1823         2293 :     case 8426:  /* avx2_packsswb_mask */
    1824         2293 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1825         2293 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    1826         2293 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0));
    1827         2293 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1828         2293 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1829         2293 :       break;
    1830              : 
    1831          928 :     case 8433:  /* avx512bw_packssdw */
    1832          928 :     case 8431:  /* avx2_packssdw */
    1833          928 :     case 8427:  /* avx512bw_packsswb */
    1834          928 :     case 8425:  /* avx2_packsswb */
    1835          928 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1836          928 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    1837          928 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    1838          928 :       break;
    1839              : 
    1840          984 :     case 8430:  /* sse2_packssdw_mask */
    1841          984 :     case 8424:  /* sse2_packsswb_mask */
    1842          984 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1843          984 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    1844          984 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    1845          984 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1846          984 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1847          984 :       break;
    1848              : 
    1849            0 :     case 8422:  /* *avx512vl_testnmv2di3_zext_mask */
    1850            0 :     case 8421:  /* *avx512vl_testnmv2di3_zext_mask */
    1851            0 :     case 8420:  /* *avx512vl_testnmv2di3_zext_mask */
    1852            0 :     case 8419:  /* *avx512vl_testnmv4di3_zext_mask */
    1853            0 :     case 8418:  /* *avx512vl_testnmv4di3_zext_mask */
    1854            0 :     case 8417:  /* *avx512vl_testnmv4di3_zext_mask */
    1855            0 :     case 8416:  /* *avx512f_testnmv8di3_zext_mask */
    1856            0 :     case 8415:  /* *avx512f_testnmv8di3_zext_mask */
    1857            0 :     case 8414:  /* *avx512f_testnmv8di3_zext_mask */
    1858            0 :     case 8413:  /* *avx512vl_testnmv4si3_zext_mask */
    1859            0 :     case 8412:  /* *avx512vl_testnmv4si3_zext_mask */
    1860            0 :     case 8411:  /* *avx512vl_testnmv4si3_zext_mask */
    1861            0 :     case 8410:  /* *avx512vl_testnmv8si3_zext_mask */
    1862            0 :     case 8409:  /* *avx512vl_testnmv8si3_zext_mask */
    1863            0 :     case 8408:  /* *avx512vl_testnmv8si3_zext_mask */
    1864            0 :     case 8407:  /* *avx512f_testnmv16si3_zext_mask */
    1865            0 :     case 8406:  /* *avx512f_testnmv16si3_zext_mask */
    1866            0 :     case 8405:  /* *avx512f_testnmv16si3_zext_mask */
    1867            0 :     case 8404:  /* *avx512vl_testnmv8hi3_zext_mask */
    1868            0 :     case 8403:  /* *avx512vl_testnmv8hi3_zext_mask */
    1869            0 :     case 8402:  /* *avx512vl_testnmv8hi3_zext_mask */
    1870            0 :     case 8401:  /* *avx512vl_testnmv16hi3_zext_mask */
    1871            0 :     case 8400:  /* *avx512vl_testnmv16hi3_zext_mask */
    1872            0 :     case 8399:  /* *avx512vl_testnmv16hi3_zext_mask */
    1873            0 :     case 8398:  /* *avx512bw_testnmv32hi3_zext_mask */
    1874            0 :     case 8397:  /* *avx512bw_testnmv32hi3_zext_mask */
    1875            0 :     case 8396:  /* *avx512bw_testnmv32hi3_zext_mask */
    1876            0 :     case 8395:  /* *avx512vl_testnmv16qi3_zext_mask */
    1877            0 :     case 8394:  /* *avx512vl_testnmv16qi3_zext_mask */
    1878            0 :     case 8393:  /* *avx512vl_testnmv16qi3_zext_mask */
    1879            0 :     case 8392:  /* *avx512vl_testnmv32qi3_zext_mask */
    1880            0 :     case 8391:  /* *avx512vl_testnmv32qi3_zext_mask */
    1881            0 :     case 8390:  /* *avx512vl_testnmv32qi3_zext_mask */
    1882            0 :     case 8389:  /* *avx512bw_testnmv64qi3_zext_mask */
    1883            0 :     case 8388:  /* *avx512bw_testnmv64qi3_zext_mask */
    1884            0 :     case 8387:  /* *avx512bw_testnmv64qi3_zext_mask */
    1885            0 :     case 8350:  /* *avx512vl_testmv2di3_zext_mask */
    1886            0 :     case 8349:  /* *avx512vl_testmv2di3_zext_mask */
    1887            0 :     case 8348:  /* *avx512vl_testmv2di3_zext_mask */
    1888            0 :     case 8347:  /* *avx512vl_testmv4di3_zext_mask */
    1889            0 :     case 8346:  /* *avx512vl_testmv4di3_zext_mask */
    1890            0 :     case 8345:  /* *avx512vl_testmv4di3_zext_mask */
    1891            0 :     case 8344:  /* *avx512f_testmv8di3_zext_mask */
    1892            0 :     case 8343:  /* *avx512f_testmv8di3_zext_mask */
    1893            0 :     case 8342:  /* *avx512f_testmv8di3_zext_mask */
    1894            0 :     case 8341:  /* *avx512vl_testmv4si3_zext_mask */
    1895            0 :     case 8340:  /* *avx512vl_testmv4si3_zext_mask */
    1896            0 :     case 8339:  /* *avx512vl_testmv4si3_zext_mask */
    1897            0 :     case 8338:  /* *avx512vl_testmv8si3_zext_mask */
    1898            0 :     case 8337:  /* *avx512vl_testmv8si3_zext_mask */
    1899            0 :     case 8336:  /* *avx512vl_testmv8si3_zext_mask */
    1900            0 :     case 8335:  /* *avx512f_testmv16si3_zext_mask */
    1901            0 :     case 8334:  /* *avx512f_testmv16si3_zext_mask */
    1902            0 :     case 8333:  /* *avx512f_testmv16si3_zext_mask */
    1903            0 :     case 8332:  /* *avx512vl_testmv8hi3_zext_mask */
    1904            0 :     case 8331:  /* *avx512vl_testmv8hi3_zext_mask */
    1905            0 :     case 8330:  /* *avx512vl_testmv8hi3_zext_mask */
    1906            0 :     case 8329:  /* *avx512vl_testmv16hi3_zext_mask */
    1907            0 :     case 8328:  /* *avx512vl_testmv16hi3_zext_mask */
    1908            0 :     case 8327:  /* *avx512vl_testmv16hi3_zext_mask */
    1909            0 :     case 8326:  /* *avx512bw_testmv32hi3_zext_mask */
    1910            0 :     case 8325:  /* *avx512bw_testmv32hi3_zext_mask */
    1911            0 :     case 8324:  /* *avx512bw_testmv32hi3_zext_mask */
    1912            0 :     case 8323:  /* *avx512vl_testmv16qi3_zext_mask */
    1913            0 :     case 8322:  /* *avx512vl_testmv16qi3_zext_mask */
    1914            0 :     case 8321:  /* *avx512vl_testmv16qi3_zext_mask */
    1915            0 :     case 8320:  /* *avx512vl_testmv32qi3_zext_mask */
    1916            0 :     case 8319:  /* *avx512vl_testmv32qi3_zext_mask */
    1917            0 :     case 8318:  /* *avx512vl_testmv32qi3_zext_mask */
    1918            0 :     case 8317:  /* *avx512bw_testmv64qi3_zext_mask */
    1919            0 :     case 8316:  /* *avx512bw_testmv64qi3_zext_mask */
    1920            0 :     case 8315:  /* *avx512bw_testmv64qi3_zext_mask */
    1921            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1922            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    1923            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    1924            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    1925            0 :       break;
    1926              : 
    1927           21 :     case 8107:  /* *one_cmplv2di2_pternlog_false_dep */
    1928           21 :     case 8106:  /* *one_cmplv4di2_pternlog_false_dep */
    1929           21 :     case 8105:  /* *one_cmplv4si2_pternlog_false_dep */
    1930           21 :     case 8104:  /* *one_cmplv8si2_pternlog_false_dep */
    1931           21 :     case 8103:  /* *one_cmplv8hi2_pternlog_false_dep */
    1932           21 :     case 8102:  /* *one_cmplv16hi2_pternlog_false_dep */
    1933           21 :     case 8101:  /* *one_cmplv32hi2_pternlog_false_dep */
    1934           21 :     case 8100:  /* *one_cmplv16qi2_pternlog_false_dep */
    1935           21 :     case 8099:  /* *one_cmplv32qi2_pternlog_false_dep */
    1936           21 :     case 8098:  /* *one_cmplv64qi2_pternlog_false_dep */
    1937           21 :     case 8097:  /* *one_cmplv8di2_pternlog_false_dep */
    1938           21 :     case 8096:  /* *one_cmplv16si2_pternlog_false_dep */
    1939           21 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    1940           21 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    1941           21 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    1942           21 :       ro[3] = *(ro_loc[3] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    1943           21 :       break;
    1944              : 
    1945            0 :     case 8033:  /* *avx2_pcmpv16qi3_5 */
    1946            0 :     case 8032:  /* *avx2_pcmpv32qi3_5 */
    1947            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1948            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1949            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    1950            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0), 0));
    1951            0 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 1));
    1952            0 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 2));
    1953            0 :       break;
    1954              : 
    1955            0 :     case 7756:  /* *avx512_ashrv2di3_1 */
    1956            0 :     case 7755:  /* *avx512_ashrv4di3_1 */
    1957            0 :     case 7754:  /* *avx512_ashrv8di3_1 */
    1958            0 :     case 7753:  /* *avx512_ashrv4si3_1 */
    1959            0 :     case 7752:  /* *avx512_ashrv8si3_1 */
    1960            0 :     case 7751:  /* *avx512_ashrv16si3_1 */
    1961            0 :     case 7750:  /* *avx512_ashrv8hi3_1 */
    1962            0 :     case 7749:  /* *avx512_ashrv16hi3_1 */
    1963            0 :     case 7748:  /* *avx512_ashrv32hi3_1 */
    1964            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1965            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    1966            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    1967            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0));
    1968            0 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 1));
    1969            0 :       break;
    1970              : 
    1971         3026 :     case 7701:  /* *sse4_1_mulv2siv2di3_mask */
    1972         3026 :     case 7699:  /* *vec_widen_smult_even_v8si_mask */
    1973         3026 :     case 7697:  /* *vec_widen_smult_even_v16si_mask */
    1974         3026 :     case 7695:  /* *vec_widen_umult_even_v4si_mask */
    1975         3026 :     case 7693:  /* *vec_widen_umult_even_v8si_mask */
    1976         3026 :     case 7691:  /* *vec_widen_umult_even_v16si_mask */
    1977         3026 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1978         3026 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    1979         3026 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0));
    1980         3026 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1981         3026 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1982         3026 :       break;
    1983              : 
    1984         3004 :     case 7689:  /* *umulv8hi3_highpart_mask */
    1985         3004 :     case 7687:  /* *smulv8hi3_highpart_mask */
    1986         3004 :     case 7685:  /* *umulv16hi3_highpart_mask */
    1987         3004 :     case 7683:  /* *smulv16hi3_highpart_mask */
    1988         3004 :     case 7681:  /* *umulv32hi3_highpart_mask */
    1989         3004 :     case 7679:  /* *smulv32hi3_highpart_mask */
    1990         3004 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    1991         3004 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    1992         3004 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1), 0));
    1993         3004 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    1994         3004 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    1995         3004 :       break;
    1996              : 
    1997         7455 :     case 7551:  /* avx512f_us_truncatev8div16qi2_mask_store_1 */
    1998         7455 :     case 7550:  /* avx512f_truncatev8div16qi2_mask_store_1 */
    1999         7455 :     case 7549:  /* avx512f_ss_truncatev8div16qi2_mask_store_1 */
    2000         7455 :     case 7533:  /* avx512vl_us_truncatev2div2si2_mask_store_1 */
    2001         7455 :     case 7532:  /* avx512vl_truncatev2div2si2_mask_store_1 */
    2002         7455 :     case 7531:  /* avx512vl_ss_truncatev2div2si2_mask_store_1 */
    2003         7455 :     case 7514:  /* avx512vl_us_truncatev2div2hi2_mask_store_1 */
    2004         7455 :     case 7513:  /* avx512vl_truncatev2div2hi2_mask_store_1 */
    2005         7455 :     case 7512:  /* avx512vl_ss_truncatev2div2hi2_mask_store_1 */
    2006         7455 :     case 7499:  /* avx512vl_us_truncatev4div4hi2_mask_store_1 */
    2007         7455 :     case 7498:  /* avx512vl_truncatev4div4hi2_mask_store_1 */
    2008         7455 :     case 7497:  /* avx512vl_ss_truncatev4div4hi2_mask_store_1 */
    2009         7455 :     case 7496:  /* avx512vl_us_truncatev4siv4hi2_mask_store_1 */
    2010         7455 :     case 7495:  /* avx512vl_truncatev4siv4hi2_mask_store_1 */
    2011         7455 :     case 7494:  /* avx512vl_ss_truncatev4siv4hi2_mask_store_1 */
    2012         7455 :     case 7459:  /* avx512vl_us_truncatev8siv8qi2_mask_store_1 */
    2013         7455 :     case 7458:  /* avx512vl_truncatev8siv8qi2_mask_store_1 */
    2014         7455 :     case 7457:  /* avx512vl_ss_truncatev8siv8qi2_mask_store_1 */
    2015         7455 :     case 7456:  /* avx512vl_us_truncatev8hiv8qi2_mask_store_1 */
    2016         7455 :     case 7455:  /* avx512vl_truncatev8hiv8qi2_mask_store_1 */
    2017         7455 :     case 7454:  /* avx512vl_ss_truncatev8hiv8qi2_mask_store_1 */
    2018         7455 :     case 7429:  /* avx512vl_us_truncatev4div4qi2_mask_store_1 */
    2019         7455 :     case 7428:  /* avx512vl_truncatev4div4qi2_mask_store_1 */
    2020         7455 :     case 7427:  /* avx512vl_ss_truncatev4div4qi2_mask_store_1 */
    2021         7455 :     case 7426:  /* avx512vl_us_truncatev4siv4qi2_mask_store_1 */
    2022         7455 :     case 7425:  /* avx512vl_truncatev4siv4qi2_mask_store_1 */
    2023         7455 :     case 7424:  /* avx512vl_ss_truncatev4siv4qi2_mask_store_1 */
    2024         7455 :     case 7399:  /* avx512vl_us_truncatev2div2qi2_mask_store_1 */
    2025         7455 :     case 7398:  /* avx512vl_truncatev2div2qi2_mask_store_1 */
    2026         7455 :     case 7397:  /* avx512vl_ss_truncatev2div2qi2_mask_store_1 */
    2027         7455 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2028         7455 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    2029         7455 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 2));
    2030         7455 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    2031         7455 :       recog_data.dup_num[0] = 0;
    2032         7455 :       break;
    2033              : 
    2034           18 :     case 7469:  /* *avx512f_pshufb_truncv4siv4hi_1 */
    2035           18 :     case 7384:  /* *avx512f_pshufb_truncv8hiv8qi_1 */
    2036           18 :     case 7328:  /* *avx512f_permvar_truncv8siv8hi_1_hf */
    2037           18 :     case 7326:  /* *avx512bw_permvar_truncv16siv16hi_1_hf */
    2038           18 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2039           18 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    2040           18 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    2041           18 :       break;
    2042              : 
    2043          396 :     case 7285:  /* sse2_shufpd_v2df_mask */
    2044          396 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2045          396 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    2046          396 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    2047          396 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    2048          396 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    2049          396 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 1));
    2050          396 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (pat, 1), 2));
    2051          396 :       break;
    2052              : 
    2053         1576 :     case 8555:  /* avx512f_shuf_i32x4_1_mask */
    2054         1576 :     case 8553:  /* avx512f_shuf_f32x4_1_mask */
    2055         1576 :     case 7280:  /* avx512f_shufps512_1_mask */
    2056         1576 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2057         1576 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    2058         1576 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    2059         1576 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    2060         1576 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    2061         1576 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    2062         1576 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    2063         1576 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 4));
    2064         1576 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 5));
    2065         1576 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 6));
    2066         1576 :       ro[10] = *(ro_loc[10] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 7));
    2067         1576 :       ro[11] = *(ro_loc[11] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 8));
    2068         1576 :       ro[12] = *(ro_loc[12] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 9));
    2069         1576 :       ro[13] = *(ro_loc[13] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 10));
    2070         1576 :       ro[14] = *(ro_loc[14] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 11));
    2071         1576 :       ro[15] = *(ro_loc[15] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 12));
    2072         1576 :       ro[16] = *(ro_loc[16] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 13));
    2073         1576 :       ro[17] = *(ro_loc[17] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 14));
    2074         1576 :       ro[18] = *(ro_loc[18] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 15));
    2075         1576 :       ro[19] = *(ro_loc[19] = &XEXP (XEXP (pat, 1), 1));
    2076         1576 :       ro[20] = *(ro_loc[20] = &XEXP (XEXP (pat, 1), 2));
    2077         1576 :       break;
    2078              : 
    2079         1462 :     case 8554:  /* avx512f_shuf_i32x4_1 */
    2080         1462 :     case 8552:  /* avx512f_shuf_f32x4_1 */
    2081         1462 :     case 7279:  /* avx512f_shufps512_1 */
    2082         1462 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2083         1462 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    2084         1462 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    2085         1462 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    2086         1462 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    2087         1462 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    2088         1462 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    2089         1462 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 4));
    2090         1462 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 5));
    2091         1462 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 6));
    2092         1462 :       ro[10] = *(ro_loc[10] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 7));
    2093         1462 :       ro[11] = *(ro_loc[11] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 8));
    2094         1462 :       ro[12] = *(ro_loc[12] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 9));
    2095         1462 :       ro[13] = *(ro_loc[13] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 10));
    2096         1462 :       ro[14] = *(ro_loc[14] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 11));
    2097         1462 :       ro[15] = *(ro_loc[15] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 12));
    2098         1462 :       ro[16] = *(ro_loc[16] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 13));
    2099         1462 :       ro[17] = *(ro_loc[17] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 14));
    2100         1462 :       ro[18] = *(ro_loc[18] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 15));
    2101         1462 :       break;
    2102              : 
    2103            0 :     case 7278:  /* *avx512f_rndscalev2df_round */
    2104            0 :     case 7276:  /* *avx512f_rndscalev4sf_round */
    2105            0 :     case 7274:  /* *avx512f_rndscalev8hf_round */
    2106            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2107            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    2108            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    2109            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    2110            0 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2111            0 :       break;
    2112              : 
    2113          389 :     case 9109:  /* *sse4_1_roundsd */
    2114          389 :     case 9108:  /* *sse4_1_roundss */
    2115          389 :     case 9107:  /* *sse4_1_roundsh */
    2116          389 :     case 7277:  /* *avx512f_rndscalev2df */
    2117          389 :     case 7275:  /* *avx512f_rndscalev4sf */
    2118          389 :     case 7273:  /* *avx512f_rndscalev8hf */
    2119          389 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2120          389 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    2121          389 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    2122          389 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    2123          389 :       break;
    2124              : 
    2125          827 :     case 7272:  /* avx512f_rndscalev2df_mask_round */
    2126          827 :     case 7268:  /* avx512f_rndscalev4sf_mask_round */
    2127          827 :     case 7264:  /* avx512f_rndscalev8hf_mask_round */
    2128          827 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2129          827 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    2130          827 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    2131          827 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    2132          827 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    2133          827 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    2134          827 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2135          827 :       break;
    2136              : 
    2137          313 :     case 7271:  /* avx512f_rndscalev2df_round */
    2138          313 :     case 7267:  /* avx512f_rndscalev4sf_round */
    2139          313 :     case 7263:  /* avx512f_rndscalev8hf_round */
    2140          313 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2141          313 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    2142          313 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    2143          313 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    2144          313 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2145          313 :       break;
    2146              : 
    2147         1391 :     case 7270:  /* avx512f_rndscalev2df_mask */
    2148         1391 :     case 7266:  /* avx512f_rndscalev4sf_mask */
    2149         1391 :     case 7262:  /* avx512f_rndscalev8hf_mask */
    2150         1391 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2151         1391 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    2152         1391 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    2153         1391 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    2154         1391 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    2155         1391 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    2156         1391 :       break;
    2157              : 
    2158         1755 :     case 9106:  /* sse4_1_roundsd */
    2159         1755 :     case 9105:  /* sse4_1_roundss */
    2160         1755 :     case 9104:  /* sse4_1_roundsh */
    2161         1755 :     case 7269:  /* avx512f_rndscalev2df */
    2162         1755 :     case 7265:  /* avx512f_rndscalev4sf */
    2163         1755 :     case 7261:  /* avx512f_rndscalev8hf */
    2164         1755 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2165         1755 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    2166         1755 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    2167         1755 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    2168         1755 :       break;
    2169              : 
    2170          756 :     case 7224:  /* avx512f_sfixupimmv2df_mask_round */
    2171          756 :     case 7222:  /* avx512f_sfixupimmv4sf_mask_round */
    2172          756 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2173          756 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    2174          756 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    2175          756 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 2));
    2176          756 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 3));
    2177          756 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    2178          756 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2179          756 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    2180          756 :       recog_data.dup_num[0] = 2;
    2181          756 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    2182          756 :       recog_data.dup_num[1] = 1;
    2183          756 :       break;
    2184              : 
    2185          152 :     case 7223:  /* avx512f_sfixupimmv2df_mask */
    2186          152 :     case 7221:  /* avx512f_sfixupimmv4sf_mask */
    2187          152 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2188          152 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    2189          152 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    2190          152 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 2));
    2191          152 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 3));
    2192          152 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    2193          152 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    2194          152 :       recog_data.dup_num[0] = 2;
    2195          152 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    2196          152 :       recog_data.dup_num[1] = 1;
    2197          152 :       break;
    2198              : 
    2199          656 :     case 7220:  /* avx512f_sfixupimmv2df_maskz_1_round */
    2200          656 :     case 7216:  /* avx512f_sfixupimmv4sf_maskz_1_round */
    2201          656 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2202          656 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    2203          656 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    2204          656 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 2));
    2205          656 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 3));
    2206          656 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    2207          656 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    2208          656 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2209          656 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    2210          656 :       recog_data.dup_num[0] = 2;
    2211          656 :       break;
    2212              : 
    2213           48 :     case 7219:  /* avx512f_sfixupimmv2df_maskz_1 */
    2214           48 :     case 7215:  /* avx512f_sfixupimmv4sf_maskz_1 */
    2215           48 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2216           48 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    2217           48 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    2218           48 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 2));
    2219           48 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 3));
    2220           48 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    2221           48 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    2222           48 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    2223           48 :       recog_data.dup_num[0] = 2;
    2224           48 :       break;
    2225              : 
    2226          482 :     case 7218:  /* avx512f_sfixupimmv2df_round */
    2227          482 :     case 7214:  /* avx512f_sfixupimmv4sf_round */
    2228          482 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2229          482 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    2230          482 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    2231          482 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    2232          482 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 3));
    2233          482 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2234          482 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    2235          482 :       recog_data.dup_num[0] = 2;
    2236          482 :       break;
    2237              : 
    2238          186 :     case 7217:  /* avx512f_sfixupimmv2df */
    2239          186 :     case 7213:  /* avx512f_sfixupimmv4sf */
    2240          186 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2241          186 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    2242          186 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    2243          186 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    2244          186 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 3));
    2245          186 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    2246          186 :       recog_data.dup_num[0] = 2;
    2247          186 :       break;
    2248              : 
    2249          717 :     case 7212:  /* avx512vl_fixupimmv2df_mask_round */
    2250          717 :     case 7210:  /* avx512vl_fixupimmv4df_mask_round */
    2251          717 :     case 7208:  /* avx512f_fixupimmv8df_mask_round */
    2252          717 :     case 7206:  /* avx512vl_fixupimmv4sf_mask_round */
    2253          717 :     case 7204:  /* avx512vl_fixupimmv8sf_mask_round */
    2254          717 :     case 7202:  /* avx512f_fixupimmv16sf_mask_round */
    2255          717 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2256          717 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    2257          717 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    2258          717 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    2259          717 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 3));
    2260          717 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    2261          717 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2262          717 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    2263          717 :       recog_data.dup_num[0] = 1;
    2264          717 :       break;
    2265              : 
    2266          656 :     case 7200:  /* avx512vl_fixupimmv2df_maskz_1_round */
    2267          656 :     case 7196:  /* avx512vl_fixupimmv4df_maskz_1_round */
    2268          656 :     case 7192:  /* avx512f_fixupimmv8df_maskz_1_round */
    2269          656 :     case 7188:  /* avx512vl_fixupimmv4sf_maskz_1_round */
    2270          656 :     case 7184:  /* avx512vl_fixupimmv8sf_maskz_1_round */
    2271          656 :     case 7180:  /* avx512f_fixupimmv16sf_maskz_1_round */
    2272          656 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2273          656 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    2274          656 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    2275          656 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    2276          656 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 3));
    2277          656 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    2278          656 :       ro[6] = *(ro_loc[6] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    2279          656 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2280          656 :       break;
    2281              : 
    2282          482 :     case 7198:  /* avx512vl_fixupimmv2df_round */
    2283          482 :     case 7194:  /* avx512vl_fixupimmv4df_round */
    2284          482 :     case 7190:  /* avx512f_fixupimmv8df_round */
    2285          482 :     case 7186:  /* avx512vl_fixupimmv4sf_round */
    2286          482 :     case 7182:  /* avx512vl_fixupimmv8sf_round */
    2287          482 :     case 7178:  /* avx512f_fixupimmv16sf_round */
    2288          482 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2289          482 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0));
    2290          482 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 1));
    2291          482 :       ro[3] = *(ro_loc[3] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 2));
    2292          482 :       ro[4] = *(ro_loc[4] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 3));
    2293          482 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    2294          482 :       break;
    2295              : 
    2296         2371 :     case 7211:  /* avx512vl_fixupimmv2df_mask */
    2297         2371 :     case 7209:  /* avx512vl_fixupimmv4df_mask */
    2298         2371 :     case 7207:  /* avx512f_fixupimmv8df_mask */
    2299         2371 :     case 7205:  /* avx512vl_fixupimmv4sf_mask */
    2300         2371 :     case 7203:  /* avx512vl_fixupimmv8sf_mask */
    2301         2371 :     case 7201:  /* avx512f_fixupimmv16sf_mask */
    2302         2371 :     case 7108:  /* *avx512vl_vternlogv2di_mask */
    2303         2371 :     case 7107:  /* *avx512vl_vternlogv4di_mask */
    2304         2371 :     case 7106:  /* *avx512f_vternlogv8di_mask */
    2305         2371 :     case 7105:  /* *avx512vl_vternlogv4si_mask */
    2306         2371 :     case 7104:  /* *avx512vl_vternlogv8si_mask */
    2307         2371 :     case 7103:  /* *avx512f_vternlogv16si_mask */
    2308         2371 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2309         2371 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    2310         2371 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    2311         2371 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    2312         2371 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 3));
    2313         2371 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    2314         2371 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    2315         2371 :       recog_data.dup_num[0] = 1;
    2316         2371 :       break;
    2317              : 
    2318            0 :     case 6238:  /* *avx512vl_vpternlogv2df_1 */
    2319            0 :     case 6237:  /* *avx512vl_vpternlogv2df_1 */
    2320            0 :     case 6236:  /* *avx512vl_vpternlogv2df_1 */
    2321            0 :     case 6235:  /* *avx512vl_vpternlogv2df_1 */
    2322            0 :     case 6234:  /* *avx512vl_vpternlogv2df_1 */
    2323            0 :     case 6233:  /* *avx512vl_vpternlogv2df_1 */
    2324            0 :     case 6232:  /* *avx512vl_vpternlogv2df_1 */
    2325            0 :     case 6231:  /* *avx512vl_vpternlogv2df_1 */
    2326            0 :     case 6230:  /* *avx512vl_vpternlogv2df_1 */
    2327            0 :     case 6229:  /* *avx512vl_vpternlogv2df_1 */
    2328            0 :     case 6228:  /* *avx512vl_vpternlogv2df_1 */
    2329            0 :     case 6227:  /* *avx512vl_vpternlogv2df_1 */
    2330            0 :     case 6226:  /* *avx512vl_vpternlogv2df_1 */
    2331            0 :     case 6225:  /* *avx512vl_vpternlogv2df_1 */
    2332            0 :     case 6224:  /* *avx512vl_vpternlogv2df_1 */
    2333            0 :     case 6223:  /* *avx512vl_vpternlogv2df_1 */
    2334            0 :     case 6222:  /* *avx512vl_vpternlogv2df_1 */
    2335            0 :     case 6221:  /* *avx512vl_vpternlogv2df_1 */
    2336            0 :     case 6220:  /* *avx512vl_vpternlogv2df_1 */
    2337            0 :     case 6219:  /* *avx512vl_vpternlogv2df_1 */
    2338            0 :     case 6218:  /* *avx512vl_vpternlogv2df_1 */
    2339            0 :     case 6217:  /* *avx512vl_vpternlogv2df_1 */
    2340            0 :     case 6216:  /* *avx512vl_vpternlogv2df_1 */
    2341            0 :     case 6215:  /* *avx512vl_vpternlogv2df_1 */
    2342            0 :     case 6214:  /* *avx512vl_vpternlogv2df_1 */
    2343            0 :     case 6213:  /* *avx512vl_vpternlogv2df_1 */
    2344            0 :     case 6212:  /* *avx512vl_vpternlogv2df_1 */
    2345            0 :     case 6211:  /* *avx512vl_vpternlogv4df_1 */
    2346            0 :     case 6210:  /* *avx512vl_vpternlogv4df_1 */
    2347            0 :     case 6209:  /* *avx512vl_vpternlogv4df_1 */
    2348            0 :     case 6208:  /* *avx512vl_vpternlogv4df_1 */
    2349            0 :     case 6207:  /* *avx512vl_vpternlogv4df_1 */
    2350            0 :     case 6206:  /* *avx512vl_vpternlogv4df_1 */
    2351            0 :     case 6205:  /* *avx512vl_vpternlogv4df_1 */
    2352            0 :     case 6204:  /* *avx512vl_vpternlogv4df_1 */
    2353            0 :     case 6203:  /* *avx512vl_vpternlogv4df_1 */
    2354            0 :     case 6202:  /* *avx512vl_vpternlogv4df_1 */
    2355            0 :     case 6201:  /* *avx512vl_vpternlogv4df_1 */
    2356            0 :     case 6200:  /* *avx512vl_vpternlogv4df_1 */
    2357            0 :     case 6199:  /* *avx512vl_vpternlogv4df_1 */
    2358            0 :     case 6198:  /* *avx512vl_vpternlogv4df_1 */
    2359            0 :     case 6197:  /* *avx512vl_vpternlogv4df_1 */
    2360            0 :     case 6196:  /* *avx512vl_vpternlogv4df_1 */
    2361            0 :     case 6195:  /* *avx512vl_vpternlogv4df_1 */
    2362            0 :     case 6194:  /* *avx512vl_vpternlogv4df_1 */
    2363            0 :     case 6193:  /* *avx512vl_vpternlogv4df_1 */
    2364            0 :     case 6192:  /* *avx512vl_vpternlogv4df_1 */
    2365            0 :     case 6191:  /* *avx512vl_vpternlogv4df_1 */
    2366            0 :     case 6190:  /* *avx512vl_vpternlogv4df_1 */
    2367            0 :     case 6189:  /* *avx512vl_vpternlogv4df_1 */
    2368            0 :     case 6188:  /* *avx512vl_vpternlogv4df_1 */
    2369            0 :     case 6187:  /* *avx512vl_vpternlogv4df_1 */
    2370            0 :     case 6186:  /* *avx512vl_vpternlogv4df_1 */
    2371            0 :     case 6185:  /* *avx512vl_vpternlogv4df_1 */
    2372            0 :     case 6184:  /* *avx512f_vpternlogv8df_1 */
    2373            0 :     case 6183:  /* *avx512f_vpternlogv8df_1 */
    2374            0 :     case 6182:  /* *avx512f_vpternlogv8df_1 */
    2375            0 :     case 6181:  /* *avx512f_vpternlogv8df_1 */
    2376            0 :     case 6180:  /* *avx512f_vpternlogv8df_1 */
    2377            0 :     case 6179:  /* *avx512f_vpternlogv8df_1 */
    2378            0 :     case 6178:  /* *avx512f_vpternlogv8df_1 */
    2379            0 :     case 6177:  /* *avx512f_vpternlogv8df_1 */
    2380            0 :     case 6176:  /* *avx512f_vpternlogv8df_1 */
    2381            0 :     case 6175:  /* *avx512f_vpternlogv8df_1 */
    2382            0 :     case 6174:  /* *avx512f_vpternlogv8df_1 */
    2383            0 :     case 6173:  /* *avx512f_vpternlogv8df_1 */
    2384            0 :     case 6172:  /* *avx512f_vpternlogv8df_1 */
    2385            0 :     case 6171:  /* *avx512f_vpternlogv8df_1 */
    2386            0 :     case 6170:  /* *avx512f_vpternlogv8df_1 */
    2387            0 :     case 6169:  /* *avx512f_vpternlogv8df_1 */
    2388            0 :     case 6168:  /* *avx512f_vpternlogv8df_1 */
    2389            0 :     case 6167:  /* *avx512f_vpternlogv8df_1 */
    2390            0 :     case 6166:  /* *avx512f_vpternlogv8df_1 */
    2391            0 :     case 6165:  /* *avx512f_vpternlogv8df_1 */
    2392            0 :     case 6164:  /* *avx512f_vpternlogv8df_1 */
    2393            0 :     case 6163:  /* *avx512f_vpternlogv8df_1 */
    2394            0 :     case 6162:  /* *avx512f_vpternlogv8df_1 */
    2395            0 :     case 6161:  /* *avx512f_vpternlogv8df_1 */
    2396            0 :     case 6160:  /* *avx512f_vpternlogv8df_1 */
    2397            0 :     case 6159:  /* *avx512f_vpternlogv8df_1 */
    2398            0 :     case 6158:  /* *avx512f_vpternlogv8df_1 */
    2399            0 :     case 6157:  /* *avx512vl_vpternlogv4sf_1 */
    2400            0 :     case 6156:  /* *avx512vl_vpternlogv4sf_1 */
    2401            0 :     case 6155:  /* *avx512vl_vpternlogv4sf_1 */
    2402            0 :     case 6154:  /* *avx512vl_vpternlogv4sf_1 */
    2403            0 :     case 6153:  /* *avx512vl_vpternlogv4sf_1 */
    2404            0 :     case 6152:  /* *avx512vl_vpternlogv4sf_1 */
    2405            0 :     case 6151:  /* *avx512vl_vpternlogv4sf_1 */
    2406            0 :     case 6150:  /* *avx512vl_vpternlogv4sf_1 */
    2407            0 :     case 6149:  /* *avx512vl_vpternlogv4sf_1 */
    2408            0 :     case 6148:  /* *avx512vl_vpternlogv4sf_1 */
    2409            0 :     case 6147:  /* *avx512vl_vpternlogv4sf_1 */
    2410            0 :     case 6146:  /* *avx512vl_vpternlogv4sf_1 */
    2411            0 :     case 6145:  /* *avx512vl_vpternlogv4sf_1 */
    2412            0 :     case 6144:  /* *avx512vl_vpternlogv4sf_1 */
    2413            0 :     case 6143:  /* *avx512vl_vpternlogv4sf_1 */
    2414            0 :     case 6142:  /* *avx512vl_vpternlogv4sf_1 */
    2415            0 :     case 6141:  /* *avx512vl_vpternlogv4sf_1 */
    2416            0 :     case 6140:  /* *avx512vl_vpternlogv4sf_1 */
    2417            0 :     case 6139:  /* *avx512vl_vpternlogv4sf_1 */
    2418            0 :     case 6138:  /* *avx512vl_vpternlogv4sf_1 */
    2419            0 :     case 6137:  /* *avx512vl_vpternlogv4sf_1 */
    2420            0 :     case 6136:  /* *avx512vl_vpternlogv4sf_1 */
    2421            0 :     case 6135:  /* *avx512vl_vpternlogv4sf_1 */
    2422            0 :     case 6134:  /* *avx512vl_vpternlogv4sf_1 */
    2423            0 :     case 6133:  /* *avx512vl_vpternlogv4sf_1 */
    2424            0 :     case 6132:  /* *avx512vl_vpternlogv4sf_1 */
    2425            0 :     case 6131:  /* *avx512vl_vpternlogv4sf_1 */
    2426            0 :     case 6130:  /* *avx512vl_vpternlogv8sf_1 */
    2427            0 :     case 6129:  /* *avx512vl_vpternlogv8sf_1 */
    2428            0 :     case 6128:  /* *avx512vl_vpternlogv8sf_1 */
    2429            0 :     case 6127:  /* *avx512vl_vpternlogv8sf_1 */
    2430            0 :     case 6126:  /* *avx512vl_vpternlogv8sf_1 */
    2431            0 :     case 6125:  /* *avx512vl_vpternlogv8sf_1 */
    2432            0 :     case 6124:  /* *avx512vl_vpternlogv8sf_1 */
    2433            0 :     case 6123:  /* *avx512vl_vpternlogv8sf_1 */
    2434            0 :     case 6122:  /* *avx512vl_vpternlogv8sf_1 */
    2435            0 :     case 6121:  /* *avx512vl_vpternlogv8sf_1 */
    2436            0 :     case 6120:  /* *avx512vl_vpternlogv8sf_1 */
    2437            0 :     case 6119:  /* *avx512vl_vpternlogv8sf_1 */
    2438            0 :     case 6118:  /* *avx512vl_vpternlogv8sf_1 */
    2439            0 :     case 6117:  /* *avx512vl_vpternlogv8sf_1 */
    2440            0 :     case 6116:  /* *avx512vl_vpternlogv8sf_1 */
    2441            0 :     case 6115:  /* *avx512vl_vpternlogv8sf_1 */
    2442            0 :     case 6114:  /* *avx512vl_vpternlogv8sf_1 */
    2443            0 :     case 6113:  /* *avx512vl_vpternlogv8sf_1 */
    2444            0 :     case 6112:  /* *avx512vl_vpternlogv8sf_1 */
    2445            0 :     case 6111:  /* *avx512vl_vpternlogv8sf_1 */
    2446            0 :     case 6110:  /* *avx512vl_vpternlogv8sf_1 */
    2447            0 :     case 6109:  /* *avx512vl_vpternlogv8sf_1 */
    2448            0 :     case 6108:  /* *avx512vl_vpternlogv8sf_1 */
    2449            0 :     case 6107:  /* *avx512vl_vpternlogv8sf_1 */
    2450            0 :     case 6106:  /* *avx512vl_vpternlogv8sf_1 */
    2451            0 :     case 6105:  /* *avx512vl_vpternlogv8sf_1 */
    2452            0 :     case 6104:  /* *avx512vl_vpternlogv8sf_1 */
    2453            0 :     case 6103:  /* *avx512f_vpternlogv16sf_1 */
    2454            0 :     case 6102:  /* *avx512f_vpternlogv16sf_1 */
    2455            0 :     case 6101:  /* *avx512f_vpternlogv16sf_1 */
    2456            0 :     case 6100:  /* *avx512f_vpternlogv16sf_1 */
    2457            0 :     case 6099:  /* *avx512f_vpternlogv16sf_1 */
    2458            0 :     case 6098:  /* *avx512f_vpternlogv16sf_1 */
    2459            0 :     case 6097:  /* *avx512f_vpternlogv16sf_1 */
    2460            0 :     case 6096:  /* *avx512f_vpternlogv16sf_1 */
    2461            0 :     case 6095:  /* *avx512f_vpternlogv16sf_1 */
    2462            0 :     case 6094:  /* *avx512f_vpternlogv16sf_1 */
    2463            0 :     case 6093:  /* *avx512f_vpternlogv16sf_1 */
    2464            0 :     case 6092:  /* *avx512f_vpternlogv16sf_1 */
    2465            0 :     case 6091:  /* *avx512f_vpternlogv16sf_1 */
    2466            0 :     case 6090:  /* *avx512f_vpternlogv16sf_1 */
    2467            0 :     case 6089:  /* *avx512f_vpternlogv16sf_1 */
    2468            0 :     case 6088:  /* *avx512f_vpternlogv16sf_1 */
    2469            0 :     case 6087:  /* *avx512f_vpternlogv16sf_1 */
    2470            0 :     case 6086:  /* *avx512f_vpternlogv16sf_1 */
    2471            0 :     case 6085:  /* *avx512f_vpternlogv16sf_1 */
    2472            0 :     case 6084:  /* *avx512f_vpternlogv16sf_1 */
    2473            0 :     case 6083:  /* *avx512f_vpternlogv16sf_1 */
    2474            0 :     case 6082:  /* *avx512f_vpternlogv16sf_1 */
    2475            0 :     case 6081:  /* *avx512f_vpternlogv16sf_1 */
    2476            0 :     case 6080:  /* *avx512f_vpternlogv16sf_1 */
    2477            0 :     case 6079:  /* *avx512f_vpternlogv16sf_1 */
    2478            0 :     case 6078:  /* *avx512f_vpternlogv16sf_1 */
    2479            0 :     case 6077:  /* *avx512f_vpternlogv16sf_1 */
    2480            0 :     case 6076:  /* *avx512vl_vpternlogv8bf_1 */
    2481            0 :     case 6075:  /* *avx512vl_vpternlogv8bf_1 */
    2482            0 :     case 6074:  /* *avx512vl_vpternlogv8bf_1 */
    2483            0 :     case 6073:  /* *avx512vl_vpternlogv8bf_1 */
    2484            0 :     case 6072:  /* *avx512vl_vpternlogv8bf_1 */
    2485            0 :     case 6071:  /* *avx512vl_vpternlogv8bf_1 */
    2486            0 :     case 6070:  /* *avx512vl_vpternlogv8bf_1 */
    2487            0 :     case 6069:  /* *avx512vl_vpternlogv8bf_1 */
    2488            0 :     case 6068:  /* *avx512vl_vpternlogv8bf_1 */
    2489            0 :     case 6067:  /* *avx512vl_vpternlogv8bf_1 */
    2490            0 :     case 6066:  /* *avx512vl_vpternlogv8bf_1 */
    2491            0 :     case 6065:  /* *avx512vl_vpternlogv8bf_1 */
    2492            0 :     case 6064:  /* *avx512vl_vpternlogv8bf_1 */
    2493            0 :     case 6063:  /* *avx512vl_vpternlogv8bf_1 */
    2494            0 :     case 6062:  /* *avx512vl_vpternlogv8bf_1 */
    2495            0 :     case 6061:  /* *avx512vl_vpternlogv8bf_1 */
    2496            0 :     case 6060:  /* *avx512vl_vpternlogv8bf_1 */
    2497            0 :     case 6059:  /* *avx512vl_vpternlogv8bf_1 */
    2498            0 :     case 6058:  /* *avx512vl_vpternlogv8bf_1 */
    2499            0 :     case 6057:  /* *avx512vl_vpternlogv8bf_1 */
    2500            0 :     case 6056:  /* *avx512vl_vpternlogv8bf_1 */
    2501            0 :     case 6055:  /* *avx512vl_vpternlogv8bf_1 */
    2502            0 :     case 6054:  /* *avx512vl_vpternlogv8bf_1 */
    2503            0 :     case 6053:  /* *avx512vl_vpternlogv8bf_1 */
    2504            0 :     case 6052:  /* *avx512vl_vpternlogv8bf_1 */
    2505            0 :     case 6051:  /* *avx512vl_vpternlogv8bf_1 */
    2506            0 :     case 6050:  /* *avx512vl_vpternlogv8bf_1 */
    2507            0 :     case 6049:  /* *avx512vl_vpternlogv16bf_1 */
    2508            0 :     case 6048:  /* *avx512vl_vpternlogv16bf_1 */
    2509            0 :     case 6047:  /* *avx512vl_vpternlogv16bf_1 */
    2510            0 :     case 6046:  /* *avx512vl_vpternlogv16bf_1 */
    2511            0 :     case 6045:  /* *avx512vl_vpternlogv16bf_1 */
    2512            0 :     case 6044:  /* *avx512vl_vpternlogv16bf_1 */
    2513            0 :     case 6043:  /* *avx512vl_vpternlogv16bf_1 */
    2514            0 :     case 6042:  /* *avx512vl_vpternlogv16bf_1 */
    2515            0 :     case 6041:  /* *avx512vl_vpternlogv16bf_1 */
    2516            0 :     case 6040:  /* *avx512vl_vpternlogv16bf_1 */
    2517            0 :     case 6039:  /* *avx512vl_vpternlogv16bf_1 */
    2518            0 :     case 6038:  /* *avx512vl_vpternlogv16bf_1 */
    2519            0 :     case 6037:  /* *avx512vl_vpternlogv16bf_1 */
    2520            0 :     case 6036:  /* *avx512vl_vpternlogv16bf_1 */
    2521            0 :     case 6035:  /* *avx512vl_vpternlogv16bf_1 */
    2522            0 :     case 6034:  /* *avx512vl_vpternlogv16bf_1 */
    2523            0 :     case 6033:  /* *avx512vl_vpternlogv16bf_1 */
    2524            0 :     case 6032:  /* *avx512vl_vpternlogv16bf_1 */
    2525            0 :     case 6031:  /* *avx512vl_vpternlogv16bf_1 */
    2526            0 :     case 6030:  /* *avx512vl_vpternlogv16bf_1 */
    2527            0 :     case 6029:  /* *avx512vl_vpternlogv16bf_1 */
    2528            0 :     case 6028:  /* *avx512vl_vpternlogv16bf_1 */
    2529            0 :     case 6027:  /* *avx512vl_vpternlogv16bf_1 */
    2530            0 :     case 6026:  /* *avx512vl_vpternlogv16bf_1 */
    2531            0 :     case 6025:  /* *avx512vl_vpternlogv16bf_1 */
    2532            0 :     case 6024:  /* *avx512vl_vpternlogv16bf_1 */
    2533            0 :     case 6023:  /* *avx512vl_vpternlogv16bf_1 */
    2534            0 :     case 6022:  /* *avx512bw_vpternlogv32bf_1 */
    2535            0 :     case 6021:  /* *avx512bw_vpternlogv32bf_1 */
    2536            0 :     case 6020:  /* *avx512bw_vpternlogv32bf_1 */
    2537            0 :     case 6019:  /* *avx512bw_vpternlogv32bf_1 */
    2538            0 :     case 6018:  /* *avx512bw_vpternlogv32bf_1 */
    2539            0 :     case 6017:  /* *avx512bw_vpternlogv32bf_1 */
    2540            0 :     case 6016:  /* *avx512bw_vpternlogv32bf_1 */
    2541            0 :     case 6015:  /* *avx512bw_vpternlogv32bf_1 */
    2542            0 :     case 6014:  /* *avx512bw_vpternlogv32bf_1 */
    2543            0 :     case 6013:  /* *avx512bw_vpternlogv32bf_1 */
    2544            0 :     case 6012:  /* *avx512bw_vpternlogv32bf_1 */
    2545            0 :     case 6011:  /* *avx512bw_vpternlogv32bf_1 */
    2546            0 :     case 6010:  /* *avx512bw_vpternlogv32bf_1 */
    2547            0 :     case 6009:  /* *avx512bw_vpternlogv32bf_1 */
    2548            0 :     case 6008:  /* *avx512bw_vpternlogv32bf_1 */
    2549            0 :     case 6007:  /* *avx512bw_vpternlogv32bf_1 */
    2550            0 :     case 6006:  /* *avx512bw_vpternlogv32bf_1 */
    2551            0 :     case 6005:  /* *avx512bw_vpternlogv32bf_1 */
    2552            0 :     case 6004:  /* *avx512bw_vpternlogv32bf_1 */
    2553            0 :     case 6003:  /* *avx512bw_vpternlogv32bf_1 */
    2554            0 :     case 6002:  /* *avx512bw_vpternlogv32bf_1 */
    2555            0 :     case 6001:  /* *avx512bw_vpternlogv32bf_1 */
    2556            0 :     case 6000:  /* *avx512bw_vpternlogv32bf_1 */
    2557            0 :     case 5999:  /* *avx512bw_vpternlogv32bf_1 */
    2558            0 :     case 5998:  /* *avx512bw_vpternlogv32bf_1 */
    2559            0 :     case 5997:  /* *avx512bw_vpternlogv32bf_1 */
    2560            0 :     case 5996:  /* *avx512bw_vpternlogv32bf_1 */
    2561            0 :     case 5995:  /* *avx512fp16_vpternlogv8hf_1 */
    2562            0 :     case 5994:  /* *avx512fp16_vpternlogv8hf_1 */
    2563            0 :     case 5993:  /* *avx512fp16_vpternlogv8hf_1 */
    2564            0 :     case 5992:  /* *avx512fp16_vpternlogv8hf_1 */
    2565            0 :     case 5991:  /* *avx512fp16_vpternlogv8hf_1 */
    2566            0 :     case 5990:  /* *avx512fp16_vpternlogv8hf_1 */
    2567            0 :     case 5989:  /* *avx512fp16_vpternlogv8hf_1 */
    2568            0 :     case 5988:  /* *avx512fp16_vpternlogv8hf_1 */
    2569            0 :     case 5987:  /* *avx512fp16_vpternlogv8hf_1 */
    2570            0 :     case 5986:  /* *avx512fp16_vpternlogv8hf_1 */
    2571            0 :     case 5985:  /* *avx512fp16_vpternlogv8hf_1 */
    2572            0 :     case 5984:  /* *avx512fp16_vpternlogv8hf_1 */
    2573            0 :     case 5983:  /* *avx512fp16_vpternlogv8hf_1 */
    2574            0 :     case 5982:  /* *avx512fp16_vpternlogv8hf_1 */
    2575            0 :     case 5981:  /* *avx512fp16_vpternlogv8hf_1 */
    2576            0 :     case 5980:  /* *avx512fp16_vpternlogv8hf_1 */
    2577            0 :     case 5979:  /* *avx512fp16_vpternlogv8hf_1 */
    2578            0 :     case 5978:  /* *avx512fp16_vpternlogv8hf_1 */
    2579            0 :     case 5977:  /* *avx512fp16_vpternlogv8hf_1 */
    2580            0 :     case 5976:  /* *avx512fp16_vpternlogv8hf_1 */
    2581            0 :     case 5975:  /* *avx512fp16_vpternlogv8hf_1 */
    2582            0 :     case 5974:  /* *avx512fp16_vpternlogv8hf_1 */
    2583            0 :     case 5973:  /* *avx512fp16_vpternlogv8hf_1 */
    2584            0 :     case 5972:  /* *avx512fp16_vpternlogv8hf_1 */
    2585            0 :     case 5971:  /* *avx512fp16_vpternlogv8hf_1 */
    2586            0 :     case 5970:  /* *avx512fp16_vpternlogv8hf_1 */
    2587            0 :     case 5969:  /* *avx512fp16_vpternlogv8hf_1 */
    2588            0 :     case 5968:  /* *avx512vl_vpternlogv16hf_1 */
    2589            0 :     case 5967:  /* *avx512vl_vpternlogv16hf_1 */
    2590            0 :     case 5966:  /* *avx512vl_vpternlogv16hf_1 */
    2591            0 :     case 5965:  /* *avx512vl_vpternlogv16hf_1 */
    2592            0 :     case 5964:  /* *avx512vl_vpternlogv16hf_1 */
    2593            0 :     case 5963:  /* *avx512vl_vpternlogv16hf_1 */
    2594            0 :     case 5962:  /* *avx512vl_vpternlogv16hf_1 */
    2595            0 :     case 5961:  /* *avx512vl_vpternlogv16hf_1 */
    2596            0 :     case 5960:  /* *avx512vl_vpternlogv16hf_1 */
    2597            0 :     case 5959:  /* *avx512vl_vpternlogv16hf_1 */
    2598            0 :     case 5958:  /* *avx512vl_vpternlogv16hf_1 */
    2599            0 :     case 5957:  /* *avx512vl_vpternlogv16hf_1 */
    2600            0 :     case 5956:  /* *avx512vl_vpternlogv16hf_1 */
    2601            0 :     case 5955:  /* *avx512vl_vpternlogv16hf_1 */
    2602            0 :     case 5954:  /* *avx512vl_vpternlogv16hf_1 */
    2603            0 :     case 5953:  /* *avx512vl_vpternlogv16hf_1 */
    2604            0 :     case 5952:  /* *avx512vl_vpternlogv16hf_1 */
    2605            0 :     case 5951:  /* *avx512vl_vpternlogv16hf_1 */
    2606            0 :     case 5950:  /* *avx512vl_vpternlogv16hf_1 */
    2607            0 :     case 5949:  /* *avx512vl_vpternlogv16hf_1 */
    2608            0 :     case 5948:  /* *avx512vl_vpternlogv16hf_1 */
    2609            0 :     case 5947:  /* *avx512vl_vpternlogv16hf_1 */
    2610            0 :     case 5946:  /* *avx512vl_vpternlogv16hf_1 */
    2611            0 :     case 5945:  /* *avx512vl_vpternlogv16hf_1 */
    2612            0 :     case 5944:  /* *avx512vl_vpternlogv16hf_1 */
    2613            0 :     case 5943:  /* *avx512vl_vpternlogv16hf_1 */
    2614            0 :     case 5942:  /* *avx512vl_vpternlogv16hf_1 */
    2615            0 :     case 5941:  /* *avx512bw_vpternlogv32hf_1 */
    2616            0 :     case 5940:  /* *avx512bw_vpternlogv32hf_1 */
    2617            0 :     case 5939:  /* *avx512bw_vpternlogv32hf_1 */
    2618            0 :     case 5938:  /* *avx512bw_vpternlogv32hf_1 */
    2619            0 :     case 5937:  /* *avx512bw_vpternlogv32hf_1 */
    2620            0 :     case 5936:  /* *avx512bw_vpternlogv32hf_1 */
    2621            0 :     case 5935:  /* *avx512bw_vpternlogv32hf_1 */
    2622            0 :     case 5934:  /* *avx512bw_vpternlogv32hf_1 */
    2623            0 :     case 5933:  /* *avx512bw_vpternlogv32hf_1 */
    2624            0 :     case 5932:  /* *avx512bw_vpternlogv32hf_1 */
    2625            0 :     case 5931:  /* *avx512bw_vpternlogv32hf_1 */
    2626            0 :     case 5930:  /* *avx512bw_vpternlogv32hf_1 */
    2627            0 :     case 5929:  /* *avx512bw_vpternlogv32hf_1 */
    2628            0 :     case 5928:  /* *avx512bw_vpternlogv32hf_1 */
    2629            0 :     case 5927:  /* *avx512bw_vpternlogv32hf_1 */
    2630            0 :     case 5926:  /* *avx512bw_vpternlogv32hf_1 */
    2631            0 :     case 5925:  /* *avx512bw_vpternlogv32hf_1 */
    2632            0 :     case 5924:  /* *avx512bw_vpternlogv32hf_1 */
    2633            0 :     case 5923:  /* *avx512bw_vpternlogv32hf_1 */
    2634            0 :     case 5922:  /* *avx512bw_vpternlogv32hf_1 */
    2635            0 :     case 5921:  /* *avx512bw_vpternlogv32hf_1 */
    2636            0 :     case 5920:  /* *avx512bw_vpternlogv32hf_1 */
    2637            0 :     case 5919:  /* *avx512bw_vpternlogv32hf_1 */
    2638            0 :     case 5918:  /* *avx512bw_vpternlogv32hf_1 */
    2639            0 :     case 5917:  /* *avx512bw_vpternlogv32hf_1 */
    2640            0 :     case 5916:  /* *avx512bw_vpternlogv32hf_1 */
    2641            0 :     case 5915:  /* *avx512bw_vpternlogv32hf_1 */
    2642            0 :     case 5914:  /* *avx512vl_vpternlogv2di_1 */
    2643            0 :     case 5913:  /* *avx512vl_vpternlogv2di_1 */
    2644            0 :     case 5912:  /* *avx512vl_vpternlogv2di_1 */
    2645            0 :     case 5911:  /* *avx512vl_vpternlogv2di_1 */
    2646            0 :     case 5910:  /* *avx512vl_vpternlogv2di_1 */
    2647            0 :     case 5909:  /* *avx512vl_vpternlogv2di_1 */
    2648            0 :     case 5908:  /* *avx512vl_vpternlogv2di_1 */
    2649            0 :     case 5907:  /* *avx512vl_vpternlogv2di_1 */
    2650            0 :     case 5906:  /* *avx512vl_vpternlogv2di_1 */
    2651            0 :     case 5905:  /* *avx512vl_vpternlogv2di_1 */
    2652            0 :     case 5904:  /* *avx512vl_vpternlogv2di_1 */
    2653            0 :     case 5903:  /* *avx512vl_vpternlogv2di_1 */
    2654            0 :     case 5902:  /* *avx512vl_vpternlogv2di_1 */
    2655            0 :     case 5901:  /* *avx512vl_vpternlogv2di_1 */
    2656            0 :     case 5900:  /* *avx512vl_vpternlogv2di_1 */
    2657            0 :     case 5899:  /* *avx512vl_vpternlogv2di_1 */
    2658            0 :     case 5898:  /* *avx512vl_vpternlogv2di_1 */
    2659            0 :     case 5897:  /* *avx512vl_vpternlogv2di_1 */
    2660            0 :     case 5896:  /* *avx512vl_vpternlogv2di_1 */
    2661            0 :     case 5895:  /* *avx512vl_vpternlogv2di_1 */
    2662            0 :     case 5894:  /* *avx512vl_vpternlogv2di_1 */
    2663            0 :     case 5893:  /* *avx512vl_vpternlogv2di_1 */
    2664            0 :     case 5892:  /* *avx512vl_vpternlogv2di_1 */
    2665            0 :     case 5891:  /* *avx512vl_vpternlogv2di_1 */
    2666            0 :     case 5890:  /* *avx512vl_vpternlogv2di_1 */
    2667            0 :     case 5889:  /* *avx512vl_vpternlogv2di_1 */
    2668            0 :     case 5888:  /* *avx512vl_vpternlogv2di_1 */
    2669            0 :     case 5887:  /* *avx512vl_vpternlogv4di_1 */
    2670            0 :     case 5886:  /* *avx512vl_vpternlogv4di_1 */
    2671            0 :     case 5885:  /* *avx512vl_vpternlogv4di_1 */
    2672            0 :     case 5884:  /* *avx512vl_vpternlogv4di_1 */
    2673            0 :     case 5883:  /* *avx512vl_vpternlogv4di_1 */
    2674            0 :     case 5882:  /* *avx512vl_vpternlogv4di_1 */
    2675            0 :     case 5881:  /* *avx512vl_vpternlogv4di_1 */
    2676            0 :     case 5880:  /* *avx512vl_vpternlogv4di_1 */
    2677            0 :     case 5879:  /* *avx512vl_vpternlogv4di_1 */
    2678            0 :     case 5878:  /* *avx512vl_vpternlogv4di_1 */
    2679            0 :     case 5877:  /* *avx512vl_vpternlogv4di_1 */
    2680            0 :     case 5876:  /* *avx512vl_vpternlogv4di_1 */
    2681            0 :     case 5875:  /* *avx512vl_vpternlogv4di_1 */
    2682            0 :     case 5874:  /* *avx512vl_vpternlogv4di_1 */
    2683            0 :     case 5873:  /* *avx512vl_vpternlogv4di_1 */
    2684            0 :     case 5872:  /* *avx512vl_vpternlogv4di_1 */
    2685            0 :     case 5871:  /* *avx512vl_vpternlogv4di_1 */
    2686            0 :     case 5870:  /* *avx512vl_vpternlogv4di_1 */
    2687            0 :     case 5869:  /* *avx512vl_vpternlogv4di_1 */
    2688            0 :     case 5868:  /* *avx512vl_vpternlogv4di_1 */
    2689            0 :     case 5867:  /* *avx512vl_vpternlogv4di_1 */
    2690            0 :     case 5866:  /* *avx512vl_vpternlogv4di_1 */
    2691            0 :     case 5865:  /* *avx512vl_vpternlogv4di_1 */
    2692            0 :     case 5864:  /* *avx512vl_vpternlogv4di_1 */
    2693            0 :     case 5863:  /* *avx512vl_vpternlogv4di_1 */
    2694            0 :     case 5862:  /* *avx512vl_vpternlogv4di_1 */
    2695            0 :     case 5861:  /* *avx512vl_vpternlogv4di_1 */
    2696            0 :     case 5860:  /* *avx512f_vpternlogv8di_1 */
    2697            0 :     case 5859:  /* *avx512f_vpternlogv8di_1 */
    2698            0 :     case 5858:  /* *avx512f_vpternlogv8di_1 */
    2699            0 :     case 5857:  /* *avx512f_vpternlogv8di_1 */
    2700            0 :     case 5856:  /* *avx512f_vpternlogv8di_1 */
    2701            0 :     case 5855:  /* *avx512f_vpternlogv8di_1 */
    2702            0 :     case 5854:  /* *avx512f_vpternlogv8di_1 */
    2703            0 :     case 5853:  /* *avx512f_vpternlogv8di_1 */
    2704            0 :     case 5852:  /* *avx512f_vpternlogv8di_1 */
    2705            0 :     case 5851:  /* *avx512f_vpternlogv8di_1 */
    2706            0 :     case 5850:  /* *avx512f_vpternlogv8di_1 */
    2707            0 :     case 5849:  /* *avx512f_vpternlogv8di_1 */
    2708            0 :     case 5848:  /* *avx512f_vpternlogv8di_1 */
    2709            0 :     case 5847:  /* *avx512f_vpternlogv8di_1 */
    2710            0 :     case 5846:  /* *avx512f_vpternlogv8di_1 */
    2711            0 :     case 5845:  /* *avx512f_vpternlogv8di_1 */
    2712            0 :     case 5844:  /* *avx512f_vpternlogv8di_1 */
    2713            0 :     case 5843:  /* *avx512f_vpternlogv8di_1 */
    2714            0 :     case 5842:  /* *avx512f_vpternlogv8di_1 */
    2715            0 :     case 5841:  /* *avx512f_vpternlogv8di_1 */
    2716            0 :     case 5840:  /* *avx512f_vpternlogv8di_1 */
    2717            0 :     case 5839:  /* *avx512f_vpternlogv8di_1 */
    2718            0 :     case 5838:  /* *avx512f_vpternlogv8di_1 */
    2719            0 :     case 5837:  /* *avx512f_vpternlogv8di_1 */
    2720            0 :     case 5836:  /* *avx512f_vpternlogv8di_1 */
    2721            0 :     case 5835:  /* *avx512f_vpternlogv8di_1 */
    2722            0 :     case 5834:  /* *avx512f_vpternlogv8di_1 */
    2723            0 :     case 5833:  /* *avx512vl_vpternlogv4si_1 */
    2724            0 :     case 5832:  /* *avx512vl_vpternlogv4si_1 */
    2725            0 :     case 5831:  /* *avx512vl_vpternlogv4si_1 */
    2726            0 :     case 5830:  /* *avx512vl_vpternlogv4si_1 */
    2727            0 :     case 5829:  /* *avx512vl_vpternlogv4si_1 */
    2728            0 :     case 5828:  /* *avx512vl_vpternlogv4si_1 */
    2729            0 :     case 5827:  /* *avx512vl_vpternlogv4si_1 */
    2730            0 :     case 5826:  /* *avx512vl_vpternlogv4si_1 */
    2731            0 :     case 5825:  /* *avx512vl_vpternlogv4si_1 */
    2732            0 :     case 5824:  /* *avx512vl_vpternlogv4si_1 */
    2733            0 :     case 5823:  /* *avx512vl_vpternlogv4si_1 */
    2734            0 :     case 5822:  /* *avx512vl_vpternlogv4si_1 */
    2735            0 :     case 5821:  /* *avx512vl_vpternlogv4si_1 */
    2736            0 :     case 5820:  /* *avx512vl_vpternlogv4si_1 */
    2737            0 :     case 5819:  /* *avx512vl_vpternlogv4si_1 */
    2738            0 :     case 5818:  /* *avx512vl_vpternlogv4si_1 */
    2739            0 :     case 5817:  /* *avx512vl_vpternlogv4si_1 */
    2740            0 :     case 5816:  /* *avx512vl_vpternlogv4si_1 */
    2741            0 :     case 5815:  /* *avx512vl_vpternlogv4si_1 */
    2742            0 :     case 5814:  /* *avx512vl_vpternlogv4si_1 */
    2743            0 :     case 5813:  /* *avx512vl_vpternlogv4si_1 */
    2744            0 :     case 5812:  /* *avx512vl_vpternlogv4si_1 */
    2745            0 :     case 5811:  /* *avx512vl_vpternlogv4si_1 */
    2746            0 :     case 5810:  /* *avx512vl_vpternlogv4si_1 */
    2747            0 :     case 5809:  /* *avx512vl_vpternlogv4si_1 */
    2748            0 :     case 5808:  /* *avx512vl_vpternlogv4si_1 */
    2749            0 :     case 5807:  /* *avx512vl_vpternlogv4si_1 */
    2750            0 :     case 5806:  /* *avx512vl_vpternlogv8si_1 */
    2751            0 :     case 5805:  /* *avx512vl_vpternlogv8si_1 */
    2752            0 :     case 5804:  /* *avx512vl_vpternlogv8si_1 */
    2753            0 :     case 5803:  /* *avx512vl_vpternlogv8si_1 */
    2754            0 :     case 5802:  /* *avx512vl_vpternlogv8si_1 */
    2755            0 :     case 5801:  /* *avx512vl_vpternlogv8si_1 */
    2756            0 :     case 5800:  /* *avx512vl_vpternlogv8si_1 */
    2757            0 :     case 5799:  /* *avx512vl_vpternlogv8si_1 */
    2758            0 :     case 5798:  /* *avx512vl_vpternlogv8si_1 */
    2759            0 :     case 5797:  /* *avx512vl_vpternlogv8si_1 */
    2760            0 :     case 5796:  /* *avx512vl_vpternlogv8si_1 */
    2761            0 :     case 5795:  /* *avx512vl_vpternlogv8si_1 */
    2762            0 :     case 5794:  /* *avx512vl_vpternlogv8si_1 */
    2763            0 :     case 5793:  /* *avx512vl_vpternlogv8si_1 */
    2764            0 :     case 5792:  /* *avx512vl_vpternlogv8si_1 */
    2765            0 :     case 5791:  /* *avx512vl_vpternlogv8si_1 */
    2766            0 :     case 5790:  /* *avx512vl_vpternlogv8si_1 */
    2767            0 :     case 5789:  /* *avx512vl_vpternlogv8si_1 */
    2768            0 :     case 5788:  /* *avx512vl_vpternlogv8si_1 */
    2769            0 :     case 5787:  /* *avx512vl_vpternlogv8si_1 */
    2770            0 :     case 5786:  /* *avx512vl_vpternlogv8si_1 */
    2771            0 :     case 5785:  /* *avx512vl_vpternlogv8si_1 */
    2772            0 :     case 5784:  /* *avx512vl_vpternlogv8si_1 */
    2773            0 :     case 5783:  /* *avx512vl_vpternlogv8si_1 */
    2774            0 :     case 5782:  /* *avx512vl_vpternlogv8si_1 */
    2775            0 :     case 5781:  /* *avx512vl_vpternlogv8si_1 */
    2776            0 :     case 5780:  /* *avx512vl_vpternlogv8si_1 */
    2777            0 :     case 5779:  /* *avx512f_vpternlogv16si_1 */
    2778            0 :     case 5778:  /* *avx512f_vpternlogv16si_1 */
    2779            0 :     case 5777:  /* *avx512f_vpternlogv16si_1 */
    2780            0 :     case 5776:  /* *avx512f_vpternlogv16si_1 */
    2781            0 :     case 5775:  /* *avx512f_vpternlogv16si_1 */
    2782            0 :     case 5774:  /* *avx512f_vpternlogv16si_1 */
    2783            0 :     case 5773:  /* *avx512f_vpternlogv16si_1 */
    2784            0 :     case 5772:  /* *avx512f_vpternlogv16si_1 */
    2785            0 :     case 5771:  /* *avx512f_vpternlogv16si_1 */
    2786            0 :     case 5770:  /* *avx512f_vpternlogv16si_1 */
    2787            0 :     case 5769:  /* *avx512f_vpternlogv16si_1 */
    2788            0 :     case 5768:  /* *avx512f_vpternlogv16si_1 */
    2789            0 :     case 5767:  /* *avx512f_vpternlogv16si_1 */
    2790            0 :     case 5766:  /* *avx512f_vpternlogv16si_1 */
    2791            0 :     case 5765:  /* *avx512f_vpternlogv16si_1 */
    2792            0 :     case 5764:  /* *avx512f_vpternlogv16si_1 */
    2793            0 :     case 5763:  /* *avx512f_vpternlogv16si_1 */
    2794            0 :     case 5762:  /* *avx512f_vpternlogv16si_1 */
    2795            0 :     case 5761:  /* *avx512f_vpternlogv16si_1 */
    2796            0 :     case 5760:  /* *avx512f_vpternlogv16si_1 */
    2797            0 :     case 5759:  /* *avx512f_vpternlogv16si_1 */
    2798            0 :     case 5758:  /* *avx512f_vpternlogv16si_1 */
    2799            0 :     case 5757:  /* *avx512f_vpternlogv16si_1 */
    2800            0 :     case 5756:  /* *avx512f_vpternlogv16si_1 */
    2801            0 :     case 5755:  /* *avx512f_vpternlogv16si_1 */
    2802            0 :     case 5754:  /* *avx512f_vpternlogv16si_1 */
    2803            0 :     case 5753:  /* *avx512f_vpternlogv16si_1 */
    2804            0 :     case 5752:  /* *avx512vl_vpternlogv8hi_1 */
    2805            0 :     case 5751:  /* *avx512vl_vpternlogv8hi_1 */
    2806            0 :     case 5750:  /* *avx512vl_vpternlogv8hi_1 */
    2807            0 :     case 5749:  /* *avx512vl_vpternlogv8hi_1 */
    2808            0 :     case 5748:  /* *avx512vl_vpternlogv8hi_1 */
    2809            0 :     case 5747:  /* *avx512vl_vpternlogv8hi_1 */
    2810            0 :     case 5746:  /* *avx512vl_vpternlogv8hi_1 */
    2811            0 :     case 5745:  /* *avx512vl_vpternlogv8hi_1 */
    2812            0 :     case 5744:  /* *avx512vl_vpternlogv8hi_1 */
    2813            0 :     case 5743:  /* *avx512vl_vpternlogv8hi_1 */
    2814            0 :     case 5742:  /* *avx512vl_vpternlogv8hi_1 */
    2815            0 :     case 5741:  /* *avx512vl_vpternlogv8hi_1 */
    2816            0 :     case 5740:  /* *avx512vl_vpternlogv8hi_1 */
    2817            0 :     case 5739:  /* *avx512vl_vpternlogv8hi_1 */
    2818            0 :     case 5738:  /* *avx512vl_vpternlogv8hi_1 */
    2819            0 :     case 5737:  /* *avx512vl_vpternlogv8hi_1 */
    2820            0 :     case 5736:  /* *avx512vl_vpternlogv8hi_1 */
    2821            0 :     case 5735:  /* *avx512vl_vpternlogv8hi_1 */
    2822            0 :     case 5734:  /* *avx512vl_vpternlogv8hi_1 */
    2823            0 :     case 5733:  /* *avx512vl_vpternlogv8hi_1 */
    2824            0 :     case 5732:  /* *avx512vl_vpternlogv8hi_1 */
    2825            0 :     case 5731:  /* *avx512vl_vpternlogv8hi_1 */
    2826            0 :     case 5730:  /* *avx512vl_vpternlogv8hi_1 */
    2827            0 :     case 5729:  /* *avx512vl_vpternlogv8hi_1 */
    2828            0 :     case 5728:  /* *avx512vl_vpternlogv8hi_1 */
    2829            0 :     case 5727:  /* *avx512vl_vpternlogv8hi_1 */
    2830            0 :     case 5726:  /* *avx512vl_vpternlogv8hi_1 */
    2831            0 :     case 5725:  /* *avx512vl_vpternlogv16hi_1 */
    2832            0 :     case 5724:  /* *avx512vl_vpternlogv16hi_1 */
    2833            0 :     case 5723:  /* *avx512vl_vpternlogv16hi_1 */
    2834            0 :     case 5722:  /* *avx512vl_vpternlogv16hi_1 */
    2835            0 :     case 5721:  /* *avx512vl_vpternlogv16hi_1 */
    2836            0 :     case 5720:  /* *avx512vl_vpternlogv16hi_1 */
    2837            0 :     case 5719:  /* *avx512vl_vpternlogv16hi_1 */
    2838            0 :     case 5718:  /* *avx512vl_vpternlogv16hi_1 */
    2839            0 :     case 5717:  /* *avx512vl_vpternlogv16hi_1 */
    2840            0 :     case 5716:  /* *avx512vl_vpternlogv16hi_1 */
    2841            0 :     case 5715:  /* *avx512vl_vpternlogv16hi_1 */
    2842            0 :     case 5714:  /* *avx512vl_vpternlogv16hi_1 */
    2843            0 :     case 5713:  /* *avx512vl_vpternlogv16hi_1 */
    2844            0 :     case 5712:  /* *avx512vl_vpternlogv16hi_1 */
    2845            0 :     case 5711:  /* *avx512vl_vpternlogv16hi_1 */
    2846            0 :     case 5710:  /* *avx512vl_vpternlogv16hi_1 */
    2847            0 :     case 5709:  /* *avx512vl_vpternlogv16hi_1 */
    2848            0 :     case 5708:  /* *avx512vl_vpternlogv16hi_1 */
    2849            0 :     case 5707:  /* *avx512vl_vpternlogv16hi_1 */
    2850            0 :     case 5706:  /* *avx512vl_vpternlogv16hi_1 */
    2851            0 :     case 5705:  /* *avx512vl_vpternlogv16hi_1 */
    2852            0 :     case 5704:  /* *avx512vl_vpternlogv16hi_1 */
    2853            0 :     case 5703:  /* *avx512vl_vpternlogv16hi_1 */
    2854            0 :     case 5702:  /* *avx512vl_vpternlogv16hi_1 */
    2855            0 :     case 5701:  /* *avx512vl_vpternlogv16hi_1 */
    2856            0 :     case 5700:  /* *avx512vl_vpternlogv16hi_1 */
    2857            0 :     case 5699:  /* *avx512vl_vpternlogv16hi_1 */
    2858            0 :     case 5698:  /* *avx512bw_vpternlogv32hi_1 */
    2859            0 :     case 5697:  /* *avx512bw_vpternlogv32hi_1 */
    2860            0 :     case 5696:  /* *avx512bw_vpternlogv32hi_1 */
    2861            0 :     case 5695:  /* *avx512bw_vpternlogv32hi_1 */
    2862            0 :     case 5694:  /* *avx512bw_vpternlogv32hi_1 */
    2863            0 :     case 5693:  /* *avx512bw_vpternlogv32hi_1 */
    2864            0 :     case 5692:  /* *avx512bw_vpternlogv32hi_1 */
    2865            0 :     case 5691:  /* *avx512bw_vpternlogv32hi_1 */
    2866            0 :     case 5690:  /* *avx512bw_vpternlogv32hi_1 */
    2867            0 :     case 5689:  /* *avx512bw_vpternlogv32hi_1 */
    2868            0 :     case 5688:  /* *avx512bw_vpternlogv32hi_1 */
    2869            0 :     case 5687:  /* *avx512bw_vpternlogv32hi_1 */
    2870            0 :     case 5686:  /* *avx512bw_vpternlogv32hi_1 */
    2871            0 :     case 5685:  /* *avx512bw_vpternlogv32hi_1 */
    2872            0 :     case 5684:  /* *avx512bw_vpternlogv32hi_1 */
    2873            0 :     case 5683:  /* *avx512bw_vpternlogv32hi_1 */
    2874            0 :     case 5682:  /* *avx512bw_vpternlogv32hi_1 */
    2875            0 :     case 5681:  /* *avx512bw_vpternlogv32hi_1 */
    2876            0 :     case 5680:  /* *avx512bw_vpternlogv32hi_1 */
    2877            0 :     case 5679:  /* *avx512bw_vpternlogv32hi_1 */
    2878            0 :     case 5678:  /* *avx512bw_vpternlogv32hi_1 */
    2879            0 :     case 5677:  /* *avx512bw_vpternlogv32hi_1 */
    2880            0 :     case 5676:  /* *avx512bw_vpternlogv32hi_1 */
    2881            0 :     case 5675:  /* *avx512bw_vpternlogv32hi_1 */
    2882            0 :     case 5674:  /* *avx512bw_vpternlogv32hi_1 */
    2883            0 :     case 5673:  /* *avx512bw_vpternlogv32hi_1 */
    2884            0 :     case 5672:  /* *avx512bw_vpternlogv32hi_1 */
    2885            0 :     case 5671:  /* *avx512vl_vpternlogv16qi_1 */
    2886            0 :     case 5670:  /* *avx512vl_vpternlogv16qi_1 */
    2887            0 :     case 5669:  /* *avx512vl_vpternlogv16qi_1 */
    2888            0 :     case 5668:  /* *avx512vl_vpternlogv16qi_1 */
    2889            0 :     case 5667:  /* *avx512vl_vpternlogv16qi_1 */
    2890            0 :     case 5666:  /* *avx512vl_vpternlogv16qi_1 */
    2891            0 :     case 5665:  /* *avx512vl_vpternlogv16qi_1 */
    2892            0 :     case 5664:  /* *avx512vl_vpternlogv16qi_1 */
    2893            0 :     case 5663:  /* *avx512vl_vpternlogv16qi_1 */
    2894            0 :     case 5662:  /* *avx512vl_vpternlogv16qi_1 */
    2895            0 :     case 5661:  /* *avx512vl_vpternlogv16qi_1 */
    2896            0 :     case 5660:  /* *avx512vl_vpternlogv16qi_1 */
    2897            0 :     case 5659:  /* *avx512vl_vpternlogv16qi_1 */
    2898            0 :     case 5658:  /* *avx512vl_vpternlogv16qi_1 */
    2899            0 :     case 5657:  /* *avx512vl_vpternlogv16qi_1 */
    2900            0 :     case 5656:  /* *avx512vl_vpternlogv16qi_1 */
    2901            0 :     case 5655:  /* *avx512vl_vpternlogv16qi_1 */
    2902            0 :     case 5654:  /* *avx512vl_vpternlogv16qi_1 */
    2903            0 :     case 5653:  /* *avx512vl_vpternlogv16qi_1 */
    2904            0 :     case 5652:  /* *avx512vl_vpternlogv16qi_1 */
    2905            0 :     case 5651:  /* *avx512vl_vpternlogv16qi_1 */
    2906            0 :     case 5650:  /* *avx512vl_vpternlogv16qi_1 */
    2907            0 :     case 5649:  /* *avx512vl_vpternlogv16qi_1 */
    2908            0 :     case 5648:  /* *avx512vl_vpternlogv16qi_1 */
    2909            0 :     case 5647:  /* *avx512vl_vpternlogv16qi_1 */
    2910            0 :     case 5646:  /* *avx512vl_vpternlogv16qi_1 */
    2911            0 :     case 5645:  /* *avx512vl_vpternlogv16qi_1 */
    2912            0 :     case 5644:  /* *avx512vl_vpternlogv32qi_1 */
    2913            0 :     case 5643:  /* *avx512vl_vpternlogv32qi_1 */
    2914            0 :     case 5642:  /* *avx512vl_vpternlogv32qi_1 */
    2915            0 :     case 5641:  /* *avx512vl_vpternlogv32qi_1 */
    2916            0 :     case 5640:  /* *avx512vl_vpternlogv32qi_1 */
    2917            0 :     case 5639:  /* *avx512vl_vpternlogv32qi_1 */
    2918            0 :     case 5638:  /* *avx512vl_vpternlogv32qi_1 */
    2919            0 :     case 5637:  /* *avx512vl_vpternlogv32qi_1 */
    2920            0 :     case 5636:  /* *avx512vl_vpternlogv32qi_1 */
    2921            0 :     case 5635:  /* *avx512vl_vpternlogv32qi_1 */
    2922            0 :     case 5634:  /* *avx512vl_vpternlogv32qi_1 */
    2923            0 :     case 5633:  /* *avx512vl_vpternlogv32qi_1 */
    2924            0 :     case 5632:  /* *avx512vl_vpternlogv32qi_1 */
    2925            0 :     case 5631:  /* *avx512vl_vpternlogv32qi_1 */
    2926            0 :     case 5630:  /* *avx512vl_vpternlogv32qi_1 */
    2927            0 :     case 5629:  /* *avx512vl_vpternlogv32qi_1 */
    2928            0 :     case 5628:  /* *avx512vl_vpternlogv32qi_1 */
    2929            0 :     case 5627:  /* *avx512vl_vpternlogv32qi_1 */
    2930            0 :     case 5626:  /* *avx512vl_vpternlogv32qi_1 */
    2931            0 :     case 5625:  /* *avx512vl_vpternlogv32qi_1 */
    2932            0 :     case 5624:  /* *avx512vl_vpternlogv32qi_1 */
    2933            0 :     case 5623:  /* *avx512vl_vpternlogv32qi_1 */
    2934            0 :     case 5622:  /* *avx512vl_vpternlogv32qi_1 */
    2935            0 :     case 5621:  /* *avx512vl_vpternlogv32qi_1 */
    2936            0 :     case 5620:  /* *avx512vl_vpternlogv32qi_1 */
    2937            0 :     case 5619:  /* *avx512vl_vpternlogv32qi_1 */
    2938            0 :     case 5618:  /* *avx512vl_vpternlogv32qi_1 */
    2939            0 :     case 5617:  /* *avx512bw_vpternlogv64qi_1 */
    2940            0 :     case 5616:  /* *avx512bw_vpternlogv64qi_1 */
    2941            0 :     case 5615:  /* *avx512bw_vpternlogv64qi_1 */
    2942            0 :     case 5614:  /* *avx512bw_vpternlogv64qi_1 */
    2943            0 :     case 5613:  /* *avx512bw_vpternlogv64qi_1 */
    2944            0 :     case 5612:  /* *avx512bw_vpternlogv64qi_1 */
    2945            0 :     case 5611:  /* *avx512bw_vpternlogv64qi_1 */
    2946            0 :     case 5610:  /* *avx512bw_vpternlogv64qi_1 */
    2947            0 :     case 5609:  /* *avx512bw_vpternlogv64qi_1 */
    2948            0 :     case 5608:  /* *avx512bw_vpternlogv64qi_1 */
    2949            0 :     case 5607:  /* *avx512bw_vpternlogv64qi_1 */
    2950            0 :     case 5606:  /* *avx512bw_vpternlogv64qi_1 */
    2951            0 :     case 5605:  /* *avx512bw_vpternlogv64qi_1 */
    2952            0 :     case 5604:  /* *avx512bw_vpternlogv64qi_1 */
    2953            0 :     case 5603:  /* *avx512bw_vpternlogv64qi_1 */
    2954            0 :     case 5602:  /* *avx512bw_vpternlogv64qi_1 */
    2955            0 :     case 5601:  /* *avx512bw_vpternlogv64qi_1 */
    2956            0 :     case 5600:  /* *avx512bw_vpternlogv64qi_1 */
    2957            0 :     case 5599:  /* *avx512bw_vpternlogv64qi_1 */
    2958            0 :     case 5598:  /* *avx512bw_vpternlogv64qi_1 */
    2959            0 :     case 5597:  /* *avx512bw_vpternlogv64qi_1 */
    2960            0 :     case 5596:  /* *avx512bw_vpternlogv64qi_1 */
    2961            0 :     case 5595:  /* *avx512bw_vpternlogv64qi_1 */
    2962            0 :     case 5594:  /* *avx512bw_vpternlogv64qi_1 */
    2963            0 :     case 5593:  /* *avx512bw_vpternlogv64qi_1 */
    2964            0 :     case 5592:  /* *avx512bw_vpternlogv64qi_1 */
    2965            0 :     case 5591:  /* *avx512bw_vpternlogv64qi_1 */
    2966            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2967            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    2968            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    2969            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    2970            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 1), 1));
    2971            0 :       break;
    2972              : 
    2973         2280 :     case 7199:  /* avx512vl_fixupimmv2df_maskz_1 */
    2974         2280 :     case 7195:  /* avx512vl_fixupimmv4df_maskz_1 */
    2975         2280 :     case 7191:  /* avx512f_fixupimmv8df_maskz_1 */
    2976         2280 :     case 7187:  /* avx512vl_fixupimmv4sf_maskz_1 */
    2977         2280 :     case 7183:  /* avx512vl_fixupimmv8sf_maskz_1 */
    2978         2280 :     case 7179:  /* avx512f_fixupimmv16sf_maskz_1 */
    2979         2280 :     case 5542:  /* avx512vl_vternlogv2di_maskz_1 */
    2980         2280 :     case 5540:  /* avx512vl_vternlogv4di_maskz_1 */
    2981         2280 :     case 5538:  /* avx512f_vternlogv8di_maskz_1 */
    2982         2280 :     case 5536:  /* avx512vl_vternlogv4si_maskz_1 */
    2983         2280 :     case 5534:  /* avx512vl_vternlogv8si_maskz_1 */
    2984         2280 :     case 5532:  /* avx512f_vternlogv16si_maskz_1 */
    2985         2280 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    2986         2280 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    2987         2280 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    2988         2280 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    2989         2280 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 3));
    2990         2280 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 1));
    2991         2280 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (pat, 1), 2));
    2992         2280 :       break;
    2993              : 
    2994        41528 :     case 10245:  /* vsm3rnds2 */
    2995        41528 :     case 9213:  /* xop_vpermil2v2df3 */
    2996        41528 :     case 9212:  /* xop_vpermil2v4df3 */
    2997        41528 :     case 9211:  /* xop_vpermil2v4sf3 */
    2998        41528 :     case 9210:  /* xop_vpermil2v8sf3 */
    2999        41528 :     case 8800:  /* sse4a_insertqi */
    3000        41528 :     case 7197:  /* avx512vl_fixupimmv2df */
    3001        41528 :     case 7193:  /* avx512vl_fixupimmv4df */
    3002        41528 :     case 7189:  /* avx512f_fixupimmv8df */
    3003        41528 :     case 7185:  /* avx512vl_fixupimmv4sf */
    3004        41528 :     case 7181:  /* avx512vl_fixupimmv8sf */
    3005        41528 :     case 7177:  /* avx512f_fixupimmv16sf */
    3006        41528 :     case 5566:  /* *avx512vl_vternlogv2df_all */
    3007        41528 :     case 5565:  /* *avx512vl_vternlogv4df_all */
    3008        41528 :     case 5564:  /* *avx512f_vternlogv8df_all */
    3009        41528 :     case 5563:  /* *avx512vl_vternlogv4sf_all */
    3010        41528 :     case 5562:  /* *avx512vl_vternlogv8sf_all */
    3011        41528 :     case 5561:  /* *avx512f_vternlogv16sf_all */
    3012        41528 :     case 5560:  /* *avx512vl_vternlogv8bf_all */
    3013        41528 :     case 5559:  /* *avx512vl_vternlogv16bf_all */
    3014        41528 :     case 5558:  /* *avx512bw_vternlogv32bf_all */
    3015        41528 :     case 5557:  /* *avx512fp16_vternlogv8hf_all */
    3016        41528 :     case 5556:  /* *avx512vl_vternlogv16hf_all */
    3017        41528 :     case 5555:  /* *avx512bw_vternlogv32hf_all */
    3018        41528 :     case 5554:  /* *avx512vl_vternlogv2di_all */
    3019        41528 :     case 5553:  /* *avx512vl_vternlogv4di_all */
    3020        41528 :     case 5552:  /* *avx512f_vternlogv8di_all */
    3021        41528 :     case 5551:  /* *avx512vl_vternlogv4si_all */
    3022        41528 :     case 5550:  /* *avx512vl_vternlogv8si_all */
    3023        41528 :     case 5549:  /* *avx512f_vternlogv16si_all */
    3024        41528 :     case 5548:  /* *avx512vl_vternlogv8hi_all */
    3025        41528 :     case 5547:  /* *avx512vl_vternlogv16hi_all */
    3026        41528 :     case 5546:  /* *avx512bw_vternlogv32hi_all */
    3027        41528 :     case 5545:  /* *avx512vl_vternlogv16qi_all */
    3028        41528 :     case 5544:  /* *avx512vl_vternlogv32qi_all */
    3029        41528 :     case 5543:  /* *avx512bw_vternlogv64qi_all */
    3030        41528 :     case 5541:  /* avx512vl_vternlogv2di */
    3031        41528 :     case 5539:  /* avx512vl_vternlogv4di */
    3032        41528 :     case 5537:  /* avx512f_vternlogv8di */
    3033        41528 :     case 5535:  /* avx512vl_vternlogv4si */
    3034        41528 :     case 5533:  /* avx512vl_vternlogv8si */
    3035        41528 :     case 5531:  /* avx512f_vternlogv16si */
    3036        41528 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3037        41528 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    3038        41528 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3039        41528 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 2));
    3040        41528 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 3));
    3041        41528 :       break;
    3042              : 
    3043         2829 :     case 9317:  /* avx2_permv4df_1_mask */
    3044         2829 :     case 9315:  /* avx2_permv4di_1_mask */
    3045         2829 :     case 8571:  /* sse2_pshuflw_1_mask */
    3046         2829 :     case 8565:  /* sse2_pshufd_1_mask */
    3047         2829 :     case 5408:  /* avx512f_vextracti32x4_1_mask */
    3048         2829 :     case 5407:  /* avx512f_vextractf32x4_1_mask */
    3049         2829 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3050         2829 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3051         2829 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    3052         2829 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    3053         2829 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    3054         2829 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    3055         2829 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (pat, 1), 1));
    3056         2829 :       ro[7] = *(ro_loc[7] = &XEXP (XEXP (pat, 1), 2));
    3057         2829 :       break;
    3058              : 
    3059          726 :     case 5404:  /* avx512dq_vextracti64x2_1_mask */
    3060          726 :     case 5403:  /* avx512dq_vextractf64x2_1_mask */
    3061          726 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3062          726 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3063          726 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    3064          726 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    3065          726 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    3066          726 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    3067          726 :       break;
    3068              : 
    3069        37510 :     case 9798:  /* *vec_concatv2df_0_1 */
    3070        37510 :     case 9797:  /* *vec_concatv4df_0_1 */
    3071        37510 :     case 9796:  /* *vec_concatv8df_0_1 */
    3072        37510 :     case 9795:  /* *vec_concatv4sf_0_1 */
    3073        37510 :     case 9794:  /* *vec_concatv8sf_0_1 */
    3074        37510 :     case 9793:  /* *vec_concatv16sf_0_1 */
    3075        37510 :     case 9792:  /* *vec_concatv8bf_0_1 */
    3076        37510 :     case 9791:  /* *vec_concatv16bf_0_1 */
    3077        37510 :     case 9790:  /* *vec_concatv32bf_0_1 */
    3078        37510 :     case 9789:  /* *vec_concatv8hf_0_1 */
    3079        37510 :     case 9788:  /* *vec_concatv16hf_0_1 */
    3080        37510 :     case 9787:  /* *vec_concatv32hf_0_1 */
    3081        37510 :     case 9786:  /* *vec_concatv2di_0_1 */
    3082        37510 :     case 9785:  /* *vec_concatv4di_0_1 */
    3083        37510 :     case 9784:  /* *vec_concatv8di_0_1 */
    3084        37510 :     case 9783:  /* *vec_concatv4si_0_1 */
    3085        37510 :     case 9782:  /* *vec_concatv8si_0_1 */
    3086        37510 :     case 9781:  /* *vec_concatv16si_0_1 */
    3087        37510 :     case 9780:  /* *vec_concatv8hi_0_1 */
    3088        37510 :     case 9779:  /* *vec_concatv16hi_0_1 */
    3089        37510 :     case 9778:  /* *vec_concatv32hi_0_1 */
    3090        37510 :     case 9777:  /* *vec_concatv16qi_0_1 */
    3091        37510 :     case 9776:  /* *vec_concatv32qi_0_1 */
    3092        37510 :     case 9775:  /* *vec_concatv64qi_0_1 */
    3093        37510 :     case 9605:  /* *avx_vperm2f128v4df_nozero */
    3094        37510 :     case 9604:  /* *avx_vperm2f128v8sf_nozero */
    3095        37510 :     case 9603:  /* *avx_vperm2f128v8si_nozero */
    3096        37510 :     case 9471:  /* *avx_vbroadcastf128_v16bf_perm */
    3097        37510 :     case 9470:  /* *avx_vbroadcastf128_v16hf_perm */
    3098        37510 :     case 9469:  /* *avx_vbroadcastf128_v4df_perm */
    3099        37510 :     case 9468:  /* *avx_vbroadcastf128_v8sf_perm */
    3100        37510 :     case 9467:  /* *avx_vbroadcastf128_v4di_perm */
    3101        37510 :     case 9466:  /* *avx_vbroadcastf128_v8si_perm */
    3102        37510 :     case 9465:  /* *avx_vbroadcastf128_v16hi_perm */
    3103        37510 :     case 9464:  /* *avx_vbroadcastf128_v32qi_perm */
    3104        37510 :     case 9057:  /* *sse4_1_zero_extendv2siv2di2_3 */
    3105        37510 :     case 9043:  /* *avx2_zero_extendv4siv4di2_1 */
    3106        37510 :     case 9037:  /* *avx512f_zero_extendv8siv8di2_1 */
    3107        37510 :     case 8966:  /* *sse4_1_zero_extendv4hiv4si2_3 */
    3108        37510 :     case 8950:  /* avx2_zero_extendv8hiv8si2_1 */
    3109        37510 :     case 8942:  /* avx512f_zero_extendv16hiv16si2_1 */
    3110        37510 :     case 8904:  /* *sse4_1_zero_extendv8qiv8hi2_3 */
    3111        37510 :     case 8888:  /* *avx512bw_zero_extendv32qiv32hi2_1 */
    3112        37510 :     case 8880:  /* *avx2_zero_extendv16qiv16hi2_1 */
    3113        37510 :     case 5398:  /* *sse2_insertps_v4sf_perm */
    3114        37510 :     case 5397:  /* *sse2_insertps_v4si_perm */
    3115        37510 :     case 5396:  /* *sse4_1_insertps_v4sf_perm */
    3116        37510 :     case 5395:  /* *sse4_1_insertps_v4si_perm */
    3117        37510 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3118        37510 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3119        37510 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3120        37510 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    3121        37510 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    3122        37510 :       break;
    3123              : 
    3124      1532656 :     case 8615:  /* vec_setv4di_0 */
    3125      1532656 :     case 8614:  /* vec_setv8di_0 */
    3126      1532656 :     case 8578:  /* sse2_loadld */
    3127      1532656 :     case 7312:  /* vec_setv4df_0 */
    3128      1532656 :     case 7311:  /* vec_setv8df_0 */
    3129      1532656 :     case 5399:  /* vec_setv2df_0 */
    3130      1532656 :     case 5384:  /* vec_setv16sf_0 */
    3131      1532656 :     case 5383:  /* vec_setv16si_0 */
    3132      1532656 :     case 5382:  /* vec_setv8sf_0 */
    3133      1532656 :     case 5381:  /* vec_setv8si_0 */
    3134      1532656 :     case 5369:  /* vec_setv32bf_0 */
    3135      1532656 :     case 5368:  /* vec_setv16bf_0 */
    3136      1532656 :     case 5367:  /* vec_setv32hf_0 */
    3137      1532656 :     case 5366:  /* vec_setv16hf_0 */
    3138      1532656 :     case 5365:  /* vec_setv32hi_0 */
    3139      1532656 :     case 5364:  /* vec_setv16hi_0 */
    3140      1532656 :     case 5360:  /* vec_setv8bf_0 */
    3141      1532656 :     case 5359:  /* vec_setv8hf_0 */
    3142      1532656 :     case 5358:  /* vec_setv8hi_0 */
    3143      1532656 :     case 5357:  /* vec_setv4sf_0 */
    3144      1532656 :     case 5356:  /* vec_setv4si_0 */
    3145      1532656 :     case 5355:  /* *vec_concatv8hi_movss */
    3146      1532656 :     case 5354:  /* *vec_concatv8bf_movss */
    3147      1532656 :     case 5353:  /* *vec_concatv8hf_movss */
    3148      1532656 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3149      1532656 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    3150      1532656 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3151      1532656 :       break;
    3152              : 
    3153         2088 :     case 9636:  /* vec_set_lo_v32qi */
    3154         2088 :     case 9632:  /* vec_set_lo_v16bf */
    3155         2088 :     case 9631:  /* vec_set_lo_v16hf */
    3156         2088 :     case 9630:  /* vec_set_lo_v16hi */
    3157         2088 :     case 9624:  /* vec_set_lo_v8sf */
    3158         2088 :     case 9622:  /* vec_set_lo_v8si */
    3159         2088 :     case 9616:  /* vec_set_lo_v4df */
    3160         2088 :     case 9614:  /* vec_set_lo_v4di */
    3161         2088 :     case 8530:  /* vec_set_lo_v8di */
    3162         2088 :     case 8528:  /* vec_set_lo_v8df */
    3163         2088 :     case 8522:  /* vec_set_lo_v16si */
    3164         2088 :     case 8520:  /* vec_set_lo_v16sf */
    3165         2088 :     case 7305:  /* sse2_loadlpd */
    3166         2088 :     case 5337:  /* sse_loadlps */
    3167         2088 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3168         2088 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    3169         2088 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
    3170         2088 :       break;
    3171              : 
    3172      1218044 :     case 8538:  /* *avx512dq_shuf_f64x2_1 */
    3173      1218044 :     case 8536:  /* *avx512dq_shuf_i64x2_1 */
    3174      1218044 :     case 7283:  /* avx_shufpd256_1 */
    3175      1218044 :     case 5333:  /* sse_shufps_v4sf */
    3176      1218044 :     case 5332:  /* sse_shufps_v4si */
    3177      1218044 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3178      1218044 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3179      1218044 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3180      1218044 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    3181      1218044 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    3182      1218044 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    3183      1218044 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    3184      1218044 :       break;
    3185              : 
    3186         1768 :     case 8539:  /* avx512dq_shuf_f64x2_1_mask */
    3187         1768 :     case 8537:  /* avx512dq_shuf_i64x2_1_mask */
    3188         1768 :     case 7284:  /* avx_shufpd256_1_mask */
    3189         1768 :     case 5331:  /* sse_shufps_v4sf_mask */
    3190         1768 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3191         1768 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3192         1768 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    3193         1768 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    3194         1768 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    3195         1768 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    3196         1768 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    3197         1768 :       ro[7] = *(ro_loc[7] = &XEXP (XEXP (pat, 1), 1));
    3198         1768 :       ro[8] = *(ro_loc[8] = &XEXP (XEXP (pat, 1), 2));
    3199         1768 :       break;
    3200              : 
    3201         3396 :     case 8551:  /* avx512vl_shuf_f32x4_1_mask */
    3202         3396 :     case 8549:  /* avx512vl_shuf_i32x4_1_mask */
    3203         3396 :     case 8543:  /* avx512f_shuf_i64x2_1_mask */
    3204         3396 :     case 8541:  /* avx512f_shuf_f64x2_1_mask */
    3205         3396 :     case 7282:  /* avx512f_shufpd512_1_mask */
    3206         3396 :     case 5330:  /* avx_shufps256_1_mask */
    3207         3396 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3208         3396 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3209         3396 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    3210         3396 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    3211         3396 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 1));
    3212         3396 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 2));
    3213         3396 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 3));
    3214         3396 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 4));
    3215         3396 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 5));
    3216         3396 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 6));
    3217         3396 :       ro[10] = *(ro_loc[10] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 7));
    3218         3396 :       ro[11] = *(ro_loc[11] = &XEXP (XEXP (pat, 1), 1));
    3219         3396 :       ro[12] = *(ro_loc[12] = &XEXP (XEXP (pat, 1), 2));
    3220         3396 :       break;
    3221              : 
    3222        26830 :     case 8550:  /* avx512vl_shuf_f32x4_1 */
    3223        26830 :     case 8548:  /* avx512vl_shuf_i32x4_1 */
    3224        26830 :     case 8542:  /* avx512f_shuf_i64x2_1 */
    3225        26830 :     case 8540:  /* avx512f_shuf_f64x2_1 */
    3226        26830 :     case 7281:  /* avx512f_shufpd512_1 */
    3227        26830 :     case 5329:  /* avx_shufps256_1 */
    3228        26830 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3229        26830 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3230        26830 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3231        26830 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    3232        26830 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    3233        26830 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    3234        26830 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    3235        26830 :       ro[7] = *(ro_loc[7] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 4));
    3236        26830 :       ro[8] = *(ro_loc[8] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 5));
    3237        26830 :       ro[9] = *(ro_loc[9] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 6));
    3238        26830 :       ro[10] = *(ro_loc[10] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 7));
    3239        26830 :       break;
    3240              : 
    3241         4126 :     case 5478:  /* avx_movddup256_mask */
    3242         4126 :     case 5474:  /* avx512f_movddup512_mask */
    3243         4126 :     case 5328:  /* avx512f_movsldup512_mask */
    3244         4126 :     case 5326:  /* sse3_movsldup_mask */
    3245         4126 :     case 5324:  /* avx_movsldup256_mask */
    3246         4126 :     case 5322:  /* avx512f_movshdup512_mask */
    3247         4126 :     case 5320:  /* sse3_movshdup_mask */
    3248         4126 :     case 5318:  /* avx_movshdup256_mask */
    3249         4126 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3250         4126 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3251         4126 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    3252         4126 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    3253         4126 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1);
    3254         4126 :       recog_data.dup_num[0] = 1;
    3255         4126 :       break;
    3256              : 
    3257         2214 :     case 5477:  /* avx_movddup256 */
    3258         2214 :     case 5473:  /* avx512f_movddup512 */
    3259         2214 :     case 5327:  /* *avx512f_movsldup512 */
    3260         2214 :     case 5325:  /* sse3_movsldup */
    3261         2214 :     case 5323:  /* avx_movsldup256 */
    3262         2214 :     case 5321:  /* *avx512f_movshdup512 */
    3263         2214 :     case 5319:  /* sse3_movshdup */
    3264         2214 :     case 5317:  /* avx_movshdup256 */
    3265         2214 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3266         2214 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    3267         2214 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    3268         2214 :       recog_data.dup_num[0] = 1;
    3269         2214 :       break;
    3270              : 
    3271        19579 :     case 8500:  /* vec_interleave_lowv4si_mask */
    3272        19579 :     case 8498:  /* avx512f_interleave_lowv16si_mask */
    3273        19579 :     case 8496:  /* avx2_interleave_lowv8si_mask */
    3274        19579 :     case 8494:  /* vec_interleave_highv4si_mask */
    3275        19579 :     case 8492:  /* avx512f_interleave_highv16si_mask */
    3276        19579 :     case 8490:  /* avx2_interleave_highv8si_mask */
    3277        19579 :     case 8488:  /* vec_interleave_lowv8bf_mask */
    3278        19579 :     case 8486:  /* vec_interleave_lowv8hf_mask */
    3279        19579 :     case 8484:  /* vec_interleave_lowv8hi_mask */
    3280        19579 :     case 8482:  /* avx2_interleave_lowv16bf_mask */
    3281        19579 :     case 8480:  /* avx2_interleave_lowv16hf_mask */
    3282        19579 :     case 8478:  /* avx2_interleave_lowv16hi_mask */
    3283        19579 :     case 8476:  /* avx512bw_interleave_lowv32bf_mask */
    3284        19579 :     case 8474:  /* avx512bw_interleave_lowv32hf_mask */
    3285        19579 :     case 8472:  /* avx512bw_interleave_lowv32hi_mask */
    3286        19579 :     case 8470:  /* vec_interleave_highv8bf_mask */
    3287        19579 :     case 8468:  /* vec_interleave_highv8hf_mask */
    3288        19579 :     case 8466:  /* vec_interleave_highv8hi_mask */
    3289        19579 :     case 8464:  /* avx2_interleave_highv16bf_mask */
    3290        19579 :     case 8462:  /* avx2_interleave_highv16hf_mask */
    3291        19579 :     case 8460:  /* avx2_interleave_highv16hi_mask */
    3292        19579 :     case 8458:  /* avx512bw_interleave_highv32bf_mask */
    3293        19579 :     case 8456:  /* avx512bw_interleave_highv32hf_mask */
    3294        19579 :     case 8454:  /* avx512bw_interleave_highv32hi_mask */
    3295        19579 :     case 8452:  /* vec_interleave_lowv16qi_mask */
    3296        19579 :     case 8450:  /* avx2_interleave_lowv32qi_mask */
    3297        19579 :     case 8448:  /* avx512bw_interleave_lowv64qi_mask */
    3298        19579 :     case 8446:  /* vec_interleave_highv16qi_mask */
    3299        19579 :     case 8444:  /* avx2_interleave_highv32qi_mask */
    3300        19579 :     case 8442:  /* avx512bw_interleave_highv64qi_mask */
    3301        19579 :     case 7297:  /* vec_interleave_lowv2di_mask */
    3302        19579 :     case 7295:  /* avx512f_interleave_lowv8di_mask */
    3303        19579 :     case 7293:  /* avx2_interleave_lowv4di_mask */
    3304        19579 :     case 7291:  /* vec_interleave_highv2di_mask */
    3305        19579 :     case 7289:  /* avx512f_interleave_highv8di_mask */
    3306        19579 :     case 7287:  /* avx2_interleave_highv4di_mask */
    3307        19579 :     case 5481:  /* avx512vl_unpcklpd128_mask */
    3308        19579 :     case 5480:  /* avx_unpcklpd256_mask */
    3309        19579 :     case 5476:  /* avx512f_unpcklpd512_mask */
    3310        19579 :     case 5471:  /* avx512vl_unpckhpd128_mask */
    3311        19579 :     case 5470:  /* avx_unpckhpd256_mask */
    3312        19579 :     case 5468:  /* avx512f_unpckhpd512_mask */
    3313        19579 :     case 5315:  /* unpcklps128_mask */
    3314        19579 :     case 5314:  /* avx_unpcklps256_mask */
    3315        19579 :     case 5312:  /* avx512f_unpcklps512_mask */
    3316        19579 :     case 5310:  /* vec_interleave_highv4sf_mask */
    3317        19579 :     case 5308:  /* avx_unpckhps256_mask */
    3318        19579 :     case 5306:  /* avx512f_unpckhps512_mask */
    3319        19579 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3320        19579 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3321        19579 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    3322        19579 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    3323        19579 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    3324        19579 :       break;
    3325              : 
    3326          247 :     case 5295:  /* *avx512vl_cvtmask2qv2di_pternlog_false_dep */
    3327          247 :     case 5294:  /* *avx512vl_cvtmask2qv4di_pternlog_false_dep */
    3328          247 :     case 5293:  /* *avx512f_cvtmask2qv8di_pternlog_false_dep */
    3329          247 :     case 5292:  /* *avx512vl_cvtmask2dv4si_pternlog_false_dep */
    3330          247 :     case 5291:  /* *avx512vl_cvtmask2dv8si_pternlog_false_dep */
    3331          247 :     case 5290:  /* *avx512f_cvtmask2dv16si_pternlog_false_dep */
    3332          247 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    3333          247 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2));
    3334          247 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    3335          247 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    3336          247 :       ro[4] = *(ro_loc[4] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    3337          247 :       break;
    3338              : 
    3339         6987 :     case 5289:  /* *avx512vl_cvtmask2qv2di_not */
    3340         6987 :     case 5288:  /* *avx512vl_cvtmask2qv4di_not */
    3341         6987 :     case 5287:  /* *avx512f_cvtmask2qv8di_not */
    3342         6987 :     case 5286:  /* *avx512vl_cvtmask2dv4si_not */
    3343         6987 :     case 5285:  /* *avx512vl_cvtmask2dv8si_not */
    3344         6987 :     case 5284:  /* *avx512f_cvtmask2dv16si_not */
    3345         6987 :     case 5283:  /* *avx512vl_cvtmask2wv8hi_not */
    3346         6987 :     case 5282:  /* *avx512vl_cvtmask2wv16hi_not */
    3347         6987 :     case 5281:  /* *avx512bw_cvtmask2wv32hi_not */
    3348         6987 :     case 5280:  /* *avx512vl_cvtmask2bv16qi_not */
    3349         6987 :     case 5279:  /* *avx512vl_cvtmask2bv32qi_not */
    3350         6987 :     case 5278:  /* *avx512bw_cvtmask2bv64qi_not */
    3351         6987 :     case 5277:  /* *avx512vl_cvtmask2qv2di */
    3352         6987 :     case 5276:  /* *avx512vl_cvtmask2qv4di */
    3353         6987 :     case 5275:  /* *avx512f_cvtmask2qv8di */
    3354         6987 :     case 5274:  /* *avx512vl_cvtmask2dv4si */
    3355         6987 :     case 5273:  /* *avx512vl_cvtmask2dv8si */
    3356         6987 :     case 5272:  /* *avx512f_cvtmask2dv16si */
    3357         6987 :     case 5271:  /* *avx512vl_cvtmask2wv8hi */
    3358         6987 :     case 5270:  /* *avx512vl_cvtmask2wv16hi */
    3359         6987 :     case 5269:  /* *avx512bw_cvtmask2wv32hi */
    3360         6987 :     case 5268:  /* *avx512vl_cvtmask2bv32qi */
    3361         6987 :     case 5267:  /* *avx512vl_cvtmask2bv16qi */
    3362         6987 :     case 5266:  /* *avx512bw_cvtmask2bv64qi */
    3363         6987 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3364         6987 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 2));
    3365         6987 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
    3366         6987 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    3367         6987 :       break;
    3368              : 
    3369          800 :     case 5234:  /* sse2_cvtss2sd_mask_round */
    3370          800 :     case 5229:  /* sse2_cvtsd2ss_mask_round */
    3371          800 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3372          800 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    3373          800 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    3374          800 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    3375          800 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    3376          800 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3377          800 :       break;
    3378              : 
    3379           92 :     case 5233:  /* sse2_cvtss2sd_mask */
    3380           92 :     case 5228:  /* sse2_cvtsd2ss_mask */
    3381           92 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3382           92 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3383           92 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    3384           92 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    3385           92 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    3386           92 :       break;
    3387              : 
    3388         5070 :     case 7548:  /* *avx512f_us_truncatev8div16qi2_mask_1 */
    3389         5070 :     case 7547:  /* *avx512f_truncatev8div16qi2_mask_1 */
    3390         5070 :     case 7546:  /* *avx512f_ss_truncatev8div16qi2_mask_1 */
    3391         5070 :     case 7530:  /* *avx512vl_us_truncatev2div2si2_mask_1 */
    3392         5070 :     case 7529:  /* *avx512vl_truncatev2div2si2_mask_1 */
    3393         5070 :     case 7528:  /* *avx512vl_ss_truncatev2div2si2_mask_1 */
    3394         5070 :     case 7511:  /* *avx512vl_us_truncatev2div2hi2_mask_1 */
    3395         5070 :     case 7510:  /* *avx512vl_truncatev2div2hi2_mask_1 */
    3396         5070 :     case 7509:  /* *avx512vl_ss_truncatev2div2hi2_mask_1 */
    3397         5070 :     case 7493:  /* *avx512vl_us_truncatev4div4hi2_mask_1 */
    3398         5070 :     case 7492:  /* *avx512vl_truncatev4div4hi2_mask_1 */
    3399         5070 :     case 7491:  /* *avx512vl_ss_truncatev4div4hi2_mask_1 */
    3400         5070 :     case 7490:  /* *avx512vl_us_truncatev4siv4hi2_mask_1 */
    3401         5070 :     case 7489:  /* *avx512vl_truncatev4siv4hi2_mask_1 */
    3402         5070 :     case 7488:  /* *avx512vl_ss_truncatev4siv4hi2_mask_1 */
    3403         5070 :     case 7453:  /* *avx512vl_us_truncatev8siv8qi2_mask_1 */
    3404         5070 :     case 7452:  /* *avx512vl_truncatev8siv8qi2_mask_1 */
    3405         5070 :     case 7451:  /* *avx512vl_ss_truncatev8siv8qi2_mask_1 */
    3406         5070 :     case 7450:  /* *avx512vl_us_truncatev8hiv8qi2_mask_1 */
    3407         5070 :     case 7449:  /* *avx512vl_truncatev8hiv8qi2_mask_1 */
    3408         5070 :     case 7448:  /* *avx512vl_ss_truncatev8hiv8qi2_mask_1 */
    3409         5070 :     case 7423:  /* *avx512vl_us_truncatev4div4qi2_mask_1 */
    3410         5070 :     case 7422:  /* *avx512vl_truncatev4div4qi2_mask_1 */
    3411         5070 :     case 7421:  /* *avx512vl_ss_truncatev4div4qi2_mask_1 */
    3412         5070 :     case 7420:  /* *avx512vl_us_truncatev4siv4qi2_mask_1 */
    3413         5070 :     case 7419:  /* *avx512vl_truncatev4siv4qi2_mask_1 */
    3414         5070 :     case 7418:  /* *avx512vl_ss_truncatev4siv4qi2_mask_1 */
    3415         5070 :     case 7396:  /* *avx512vl_us_truncatev2div2qi2_mask_1 */
    3416         5070 :     case 7395:  /* *avx512vl_truncatev2div2qi2_mask_1 */
    3417         5070 :     case 7394:  /* *avx512vl_ss_truncatev2div2qi2_mask_1 */
    3418         5070 :     case 5225:  /* *sse2_cvttpd2dq_mask_1 */
    3419         5070 :     case 5124:  /* *fixuns_truncv2dfv2si2_mask_1 */
    3420         5070 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3421         5070 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3422         5070 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3423         5070 :       break;
    3424              : 
    3425        11157 :     case 7545:  /* avx512f_us_truncatev8div16qi2_mask */
    3426        11157 :     case 7544:  /* avx512f_truncatev8div16qi2_mask */
    3427        11157 :     case 7543:  /* avx512f_ss_truncatev8div16qi2_mask */
    3428        11157 :     case 7527:  /* avx512vl_us_truncatev2div2si2_mask */
    3429        11157 :     case 7526:  /* avx512vl_truncatev2div2si2_mask */
    3430        11157 :     case 7525:  /* avx512vl_ss_truncatev2div2si2_mask */
    3431        11157 :     case 7508:  /* avx512vl_us_truncatev2div2hi2_mask */
    3432        11157 :     case 7507:  /* avx512vl_truncatev2div2hi2_mask */
    3433        11157 :     case 7506:  /* avx512vl_ss_truncatev2div2hi2_mask */
    3434        11157 :     case 7487:  /* avx512vl_us_truncatev4div4hi2_mask */
    3435        11157 :     case 7486:  /* avx512vl_truncatev4div4hi2_mask */
    3436        11157 :     case 7485:  /* avx512vl_ss_truncatev4div4hi2_mask */
    3437        11157 :     case 7484:  /* avx512vl_us_truncatev4siv4hi2_mask */
    3438        11157 :     case 7483:  /* avx512vl_truncatev4siv4hi2_mask */
    3439        11157 :     case 7482:  /* avx512vl_ss_truncatev4siv4hi2_mask */
    3440        11157 :     case 7447:  /* avx512vl_us_truncatev8siv8qi2_mask */
    3441        11157 :     case 7446:  /* avx512vl_truncatev8siv8qi2_mask */
    3442        11157 :     case 7445:  /* avx512vl_ss_truncatev8siv8qi2_mask */
    3443        11157 :     case 7444:  /* avx512vl_us_truncatev8hiv8qi2_mask */
    3444        11157 :     case 7443:  /* avx512vl_truncatev8hiv8qi2_mask */
    3445        11157 :     case 7442:  /* avx512vl_ss_truncatev8hiv8qi2_mask */
    3446        11157 :     case 7417:  /* avx512vl_us_truncatev4div4qi2_mask */
    3447        11157 :     case 7416:  /* avx512vl_truncatev4div4qi2_mask */
    3448        11157 :     case 7415:  /* avx512vl_ss_truncatev4div4qi2_mask */
    3449        11157 :     case 7414:  /* avx512vl_us_truncatev4siv4qi2_mask */
    3450        11157 :     case 7413:  /* avx512vl_truncatev4siv4qi2_mask */
    3451        11157 :     case 7412:  /* avx512vl_ss_truncatev4siv4qi2_mask */
    3452        11157 :     case 7393:  /* avx512vl_us_truncatev2div2qi2_mask */
    3453        11157 :     case 7392:  /* avx512vl_truncatev2div2qi2_mask */
    3454        11157 :     case 7391:  /* avx512vl_ss_truncatev2div2qi2_mask */
    3455        11157 :     case 5224:  /* sse2_cvttpd2dq_mask */
    3456        11157 :     case 5123:  /* fixuns_truncv2dfv2si2_mask */
    3457        11157 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3458        11157 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3459        11157 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    3460        11157 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3461        11157 :       break;
    3462              : 
    3463          312 :     case 5103:  /* *fixuns_notruncv2dfv2si2_mask_1 */
    3464          312 :     case 5092:  /* *sse2_cvtpd2dq_mask_1 */
    3465          312 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3466          312 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    3467          312 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3468          312 :       break;
    3469              : 
    3470         1272 :     case 5122:  /* unspec_fixuns_truncv2dfv2si2_mask */
    3471         1272 :     case 5102:  /* fixuns_notruncv2dfv2si2_mask */
    3472         1272 :     case 5091:  /* sse2_cvtpd2dq_mask */
    3473         1272 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3474         1272 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    3475         1272 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    3476         1272 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3477         1272 :       break;
    3478              : 
    3479         1128 :     case 4935:  /* avx512dq_cvtps2uqqv2di_mask */
    3480         1128 :     case 4927:  /* avx512dq_cvtps2qqv2di_mask */
    3481         1128 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3482         1128 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0));
    3483         1128 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    3484         1128 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    3485         1128 :       break;
    3486              : 
    3487            0 :     case 5026:  /* *sse2_cvttsd2si_round_zext */
    3488            0 :     case 5005:  /* *avx512f_vcvttsd2usi_round_zext */
    3489            0 :     case 4987:  /* *avx512f_vcvttss2usi_round_zext */
    3490            0 :     case 4872:  /* *sse_cvttss2si_round_zext */
    3491            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3492            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0), 0));
    3493            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    3494            0 :       break;
    3495              : 
    3496         1722 :     case 4844:  /* sse_cvtpi2ps */
    3497         1722 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    3498         1722 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    3499         1722 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    3500         1722 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    3501         1722 :       break;
    3502              : 
    3503         3274 :     case 4839:  /* avx512fp16_vcvtss2sh_mask_round */
    3504         3274 :     case 4835:  /* avx512fp16_vcvtsd2sh_mask_round */
    3505         3274 :     case 4827:  /* avx512fp16_vcvtsh2ss_mask_round */
    3506         3274 :     case 4823:  /* avx512fp16_vcvtsh2sd_mask_round */
    3507         3274 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3508         3274 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0), 0));
    3509         3274 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    3510         3274 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    3511         3274 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    3512         3274 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3513         3274 :       break;
    3514              : 
    3515         1044 :     case 4837:  /* avx512fp16_vcvtss2sh_round */
    3516         1044 :     case 4833:  /* avx512fp16_vcvtsd2sh_round */
    3517         1044 :     case 4826:  /* avx512fp16_vcvtsh2ss_round */
    3518         1044 :     case 4822:  /* avx512fp16_vcvtsh2sd_round */
    3519         1044 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3520         1044 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    3521         1044 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    3522         1044 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3523         1044 :       break;
    3524              : 
    3525          758 :     case 4838:  /* avx512fp16_vcvtss2sh_mask */
    3526          758 :     case 4834:  /* avx512fp16_vcvtsd2sh_mask */
    3527          758 :     case 4825:  /* avx512fp16_vcvtsh2ss_mask */
    3528          758 :     case 4821:  /* avx512fp16_vcvtsh2sd_mask */
    3529          758 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3530          758 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    3531          758 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    3532          758 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3533          758 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3534          758 :       break;
    3535              : 
    3536          255 :     case 4836:  /* avx512fp16_vcvtss2sh */
    3537          255 :     case 4832:  /* avx512fp16_vcvtsd2sh */
    3538          255 :     case 4824:  /* avx512fp16_vcvtsh2ss */
    3539          255 :     case 4820:  /* avx512fp16_vcvtsh2sd */
    3540          255 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3541          255 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    3542          255 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    3543          255 :       break;
    3544              : 
    3545            0 :     case 5024:  /* sse2_cvttsd2siq_round */
    3546            0 :     case 5022:  /* sse2_cvttsd2si_round */
    3547            0 :     case 5003:  /* avx512f_vcvttsd2usiq_round */
    3548            0 :     case 5001:  /* avx512f_vcvttsd2usi_round */
    3549            0 :     case 4985:  /* avx512f_vcvttss2usiq_round */
    3550            0 :     case 4983:  /* avx512f_vcvttss2usi_round */
    3551            0 :     case 4870:  /* sse_cvttss2siq_round */
    3552            0 :     case 4868:  /* sse_cvttss2si_round */
    3553            0 :     case 4770:  /* avx512fp16_fixuns_truncdi2_round */
    3554            0 :     case 4768:  /* avx512fp16_fix_truncdi2_round */
    3555            0 :     case 4766:  /* avx512fp16_fixuns_truncsi2_round */
    3556            0 :     case 4764:  /* avx512fp16_fix_truncsi2_round */
    3557            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3558            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    3559            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3560            0 :       break;
    3561              : 
    3562           80 :     case 5020:  /* *unspec_sse2_cvttsd2si_round_zext */
    3563           80 :     case 4999:  /* *unspec_avx512f_vcvttsd2usi_round_zext */
    3564           80 :     case 4981:  /* *unspec_avx512f_vcvttss2usi_round_zext */
    3565           80 :     case 4866:  /* *unspec_sse_cvttss2si_round_zext */
    3566           80 :     case 4762:  /* *unspec_avx512fp16_fixuns_truncsi2_round_zext */
    3567           80 :     case 4760:  /* *unspec_avx512fp16_fix_truncsi2_round_zext */
    3568           80 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3569           80 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0, 0));
    3570           80 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    3571           80 :       break;
    3572              : 
    3573        24866 :     case 9481:  /* avx512dq_broadcastv8sf_mask */
    3574        24866 :     case 9479:  /* avx512dq_broadcastv16sf_mask */
    3575        24866 :     case 9477:  /* avx512dq_broadcastv4si_mask */
    3576        24866 :     case 9475:  /* avx512dq_broadcastv8si_mask */
    3577        24866 :     case 9473:  /* avx512dq_broadcastv16si_mask */
    3578        24866 :     case 9377:  /* avx512vl_vec_dupv8bf_mask */
    3579        24866 :     case 9375:  /* avx512vl_vec_dupv16bf_mask */
    3580        24866 :     case 9373:  /* avx512bw_vec_dupv32bf_mask */
    3581        24866 :     case 9371:  /* avx512fp16_vec_dupv8hf_mask */
    3582        24866 :     case 9369:  /* avx512vl_vec_dupv16hf_mask */
    3583        24866 :     case 9367:  /* avx512bw_vec_dupv32hf_mask */
    3584        24866 :     case 9365:  /* avx512vl_vec_dupv8hi_mask */
    3585        24866 :     case 9363:  /* avx512vl_vec_dupv16hi_mask */
    3586        24866 :     case 9361:  /* avx512bw_vec_dupv32hi_mask */
    3587        24866 :     case 9359:  /* avx512vl_vec_dupv32qi_mask */
    3588        24866 :     case 9357:  /* avx512vl_vec_dupv16qi_mask */
    3589        24866 :     case 9355:  /* avx512bw_vec_dupv64qi_mask */
    3590        24866 :     case 9353:  /* avx512vl_vec_dupv2df_mask */
    3591        24866 :     case 9351:  /* avx512vl_vec_dupv4df_mask */
    3592        24866 :     case 9349:  /* avx512f_vec_dupv8df_mask */
    3593        24866 :     case 9347:  /* avx512vl_vec_dupv4sf_mask */
    3594        24866 :     case 9345:  /* avx512vl_vec_dupv8sf_mask */
    3595        24866 :     case 9343:  /* avx512f_vec_dupv16sf_mask */
    3596        24866 :     case 9341:  /* avx512vl_vec_dupv2di_mask */
    3597        24866 :     case 9339:  /* avx512vl_vec_dupv4di_mask */
    3598        24866 :     case 9337:  /* avx512f_vec_dupv8di_mask */
    3599        24866 :     case 9335:  /* avx512vl_vec_dupv4si_mask */
    3600        24866 :     case 9333:  /* avx512vl_vec_dupv8si_mask */
    3601        24866 :     case 9331:  /* avx512f_vec_dupv16si_mask */
    3602        24866 :     case 9048:  /* sse4_1_zero_extendv2siv2di2_mask */
    3603        24866 :     case 9046:  /* sse4_1_sign_extendv2siv2di2_mask */
    3604        24866 :     case 9024:  /* sse4_1_zero_extendv2hiv2di2_mask */
    3605        24866 :     case 9022:  /* sse4_1_sign_extendv2hiv2di2_mask */
    3606        24866 :     case 9012:  /* avx2_zero_extendv4hiv4di2_mask */
    3607        24866 :     case 9010:  /* avx2_sign_extendv4hiv4di2_mask */
    3608        24866 :     case 8997:  /* sse4_1_zero_extendv2qiv2di2_mask */
    3609        24866 :     case 8995:  /* sse4_1_sign_extendv2qiv2di2_mask */
    3610        24866 :     case 8985:  /* avx2_zero_extendv4qiv4di2_mask */
    3611        24866 :     case 8983:  /* avx2_sign_extendv4qiv4di2_mask */
    3612        24866 :     case 8973:  /* avx512f_zero_extendv8qiv8di2_mask */
    3613        24866 :     case 8971:  /* avx512f_sign_extendv8qiv8di2_mask */
    3614        24866 :     case 8957:  /* sse4_1_zero_extendv4hiv4si2_mask */
    3615        24866 :     case 8955:  /* sse4_1_sign_extendv4hiv4si2_mask */
    3616        24866 :     case 8927:  /* sse4_1_zero_extendv4qiv4si2_mask */
    3617        24866 :     case 8925:  /* sse4_1_sign_extendv4qiv4si2_mask */
    3618        24866 :     case 8915:  /* avx2_zero_extendv8qiv8si2_mask */
    3619        24866 :     case 8913:  /* avx2_sign_extendv8qiv8si2_mask */
    3620        24866 :     case 8895:  /* sse4_1_zero_extendv8qiv8hi2_mask */
    3621        24866 :     case 8893:  /* sse4_1_sign_extendv8qiv8hi2_mask */
    3622        24866 :     case 5297:  /* sse2_cvtps2pd_mask */
    3623        24866 :     case 5212:  /* avx512dq_fixuns_truncv2sfv2di2_mask */
    3624        24866 :     case 5210:  /* avx512dq_fix_truncv2sfv2di2_mask */
    3625        24866 :     case 5082:  /* sse2_cvtdq2pd_mask */
    3626        24866 :     case 5078:  /* floatunsv2siv2df2_mask */
    3627        24866 :     case 4796:  /* avx512fp16_float_extend_phv2df2_mask */
    3628        24866 :     case 4790:  /* avx512fp16_float_extend_phv4sf2_mask */
    3629        24866 :     case 4788:  /* avx512fp16_float_extend_phv4df2_mask */
    3630        24866 :     case 4746:  /* avx512fp16_fixuns_truncv2di2_mask */
    3631        24866 :     case 4744:  /* avx512fp16_fix_truncv2di2_mask */
    3632        24866 :     case 4730:  /* avx512fp16_fixuns_truncv4di2_mask */
    3633        24866 :     case 4728:  /* avx512fp16_fix_truncv4di2_mask */
    3634        24866 :     case 4726:  /* avx512fp16_fixuns_truncv4si2_mask */
    3635        24866 :     case 4724:  /* avx512fp16_fix_truncv4si2_mask */
    3636        24866 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3637        24866 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3638        24866 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    3639        24866 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    3640        24866 :       break;
    3641              : 
    3642         3296 :     case 5232:  /* sse2_cvtss2sd_round */
    3643         3296 :     case 5227:  /* sse2_cvtsd2ss_round */
    3644         3296 :     case 4969:  /* sse2_cvtsi2sdq_round */
    3645         3296 :     case 4879:  /* cvtusi2sd64_round */
    3646         3296 :     case 4877:  /* cvtusi2ss64_round */
    3647         3296 :     case 4874:  /* cvtusi2ss32_round */
    3648         3296 :     case 4851:  /* sse_cvtsi2ssq_round */
    3649         3296 :     case 4849:  /* sse_cvtsi2ss_round */
    3650         3296 :     case 4618:  /* avx512fp16_vcvtusi2shq_round */
    3651         3296 :     case 4616:  /* avx512fp16_vcvtsi2shq_round */
    3652         3296 :     case 4614:  /* avx512fp16_vcvtusi2sh_round */
    3653         3296 :     case 4612:  /* avx512fp16_vcvtsi2sh_round */
    3654         3296 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3655         3296 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    3656         3296 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    3657         3296 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3658         3296 :       break;
    3659              : 
    3660      1160522 :     case 5363:  /* *vec_setv8bf_0_1 */
    3661      1160522 :     case 5362:  /* *vec_setv8hf_0_1 */
    3662      1160522 :     case 5361:  /* *vec_setv8hi_0_1 */
    3663      1160522 :     case 5235:  /* *sse2_vd_cvtss2sd */
    3664      1160522 :     case 5231:  /* sse2_cvtss2sd */
    3665      1160522 :     case 5230:  /* *sse2_vd_cvtsd2ss */
    3666      1160522 :     case 5226:  /* sse2_cvtsd2ss */
    3667      1160522 :     case 4968:  /* sse2_cvtsi2sdq */
    3668      1160522 :     case 4967:  /* sse2_cvtsi2sd */
    3669      1160522 :     case 4878:  /* cvtusi2sd64 */
    3670      1160522 :     case 4876:  /* cvtusi2ss64 */
    3671      1160522 :     case 4875:  /* cvtusi2sd32 */
    3672      1160522 :     case 4873:  /* cvtusi2ss32 */
    3673      1160522 :     case 4850:  /* sse_cvtsi2ssq */
    3674      1160522 :     case 4848:  /* sse_cvtsi2ss */
    3675      1160522 :     case 4617:  /* avx512fp16_vcvtusi2shq */
    3676      1160522 :     case 4615:  /* avx512fp16_vcvtsi2shq */
    3677      1160522 :     case 4613:  /* avx512fp16_vcvtusi2sh */
    3678      1160522 :     case 4611:  /* avx512fp16_vcvtsi2sh */
    3679      1160522 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3680      1160522 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    3681      1160522 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3682      1160522 :       break;
    3683              : 
    3684         2533 :     case 9799:  /* vcvtph2ps */
    3685         2533 :     case 8683:  /* *sse2_pmovmskb_ext */
    3686         2533 :     case 8682:  /* *sse2_pmovmskb_zext */
    3687         2533 :     case 8681:  /* *avx2_pmovmskb_zext */
    3688         2533 :     case 8642:  /* *sse2_movmskpd_uext */
    3689         2533 :     case 8641:  /* *sse2_movmskpd_ext */
    3690         2533 :     case 8640:  /* *avx_movmskpd256_uext */
    3691         2533 :     case 8639:  /* *avx_movmskpd256_ext */
    3692         2533 :     case 8638:  /* *sse_movmskps_uext */
    3693         2533 :     case 8637:  /* *sse_movmskps_ext */
    3694         2533 :     case 8636:  /* *avx_movmskps256_uext */
    3695         2533 :     case 8635:  /* *avx_movmskps256_ext */
    3696         2533 :     case 5120:  /* *unspec_fixuns_truncv2dfv2si2 */
    3697         2533 :     case 5101:  /* fixuns_notruncv2dfv2si2 */
    3698         2533 :     case 5090:  /* sse2_cvtpd2dq */
    3699         2533 :     case 5019:  /* *unspec_sse2_cvttsd2si_zext */
    3700         2533 :     case 5014:  /* *sse2_cvtsd2si_2_zext */
    3701         2533 :     case 4998:  /* *unspec_avx512f_vcvttsd2usi_zext */
    3702         2533 :     case 4980:  /* *unspec_avx512f_vcvttss2usi_zext */
    3703         2533 :     case 4865:  /* *unspec_sse_cvttss2si_zext */
    3704         2533 :     case 4860:  /* *sse_cvtss2si_2_zext */
    3705         2533 :     case 4845:  /* sse_cvtps2pi */
    3706         2533 :     case 4761:  /* *unspec_avx512fp16_fixuns_truncsi2_zext */
    3707         2533 :     case 4759:  /* *unspec_avx512fp16_fix_truncsi2_zext */
    3708         2533 :     case 4610:  /* *avx512fp16_vcvtsh2si_2_zext */
    3709         2533 :     case 4609:  /* *avx512fp16_vcvtsh2usi_2_zext */
    3710         2533 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3711         2533 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    3712         2533 :       break;
    3713              : 
    3714          192 :     case 11057:  /* *avx10_2_vcvttss2usissi_round_zext */
    3715          192 :     case 11055:  /* *avx10_2_vcvttss2sissi_round_zext */
    3716          192 :     case 11045:  /* *avx10_2_vcvttsd2usissi_round_zext */
    3717          192 :     case 11043:  /* *avx10_2_vcvttsd2sissi_round_zext */
    3718          192 :     case 5011:  /* *sse2_cvtsd2si_round_zext */
    3719          192 :     case 4993:  /* *avx512f_vcvtsd2usi_round_zext */
    3720          192 :     case 4975:  /* *avx512f_vcvtss2usi_round_zext */
    3721          192 :     case 4857:  /* *sse_cvtss2si_round_zext */
    3722          192 :     case 4604:  /* *avx512fp16_vcvtsh2si_round_zext */
    3723          192 :     case 4602:  /* *avx512fp16_vcvtsh2usi_round_zext */
    3724          192 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3725          192 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0, 0), 0));
    3726          192 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    3727          192 :       break;
    3728              : 
    3729          209 :     case 11056:  /* *avx10_2_vcvttss2usissi_zext */
    3730          209 :     case 11054:  /* *avx10_2_vcvttss2sissi_zext */
    3731          209 :     case 11044:  /* *avx10_2_vcvttsd2usissi_zext */
    3732          209 :     case 11042:  /* *avx10_2_vcvttsd2sissi_zext */
    3733          209 :     case 5010:  /* *sse2_cvtsd2si_zext */
    3734          209 :     case 4992:  /* *avx512f_vcvtsd2usi_zext */
    3735          209 :     case 4974:  /* *avx512f_vcvtss2usi_zext */
    3736          209 :     case 4856:  /* *sse_cvtss2si_zext */
    3737          209 :     case 4603:  /* *avx512fp16_vcvtsh2si_zext */
    3738          209 :     case 4601:  /* *avx512fp16_vcvtsh2usi_zext */
    3739          209 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3740          209 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0), 0));
    3741          209 :       break;
    3742              : 
    3743         6632 :     case 11053:  /* avx10_2_vcvttss2usisdi_round */
    3744         6632 :     case 11051:  /* avx10_2_vcvttss2sisdi_round */
    3745         6632 :     case 11049:  /* avx10_2_vcvttss2usissi_round */
    3746         6632 :     case 11047:  /* avx10_2_vcvttss2sissi_round */
    3747         6632 :     case 11041:  /* avx10_2_vcvttsd2usisdi_round */
    3748         6632 :     case 11039:  /* avx10_2_vcvttsd2sisdi_round */
    3749         6632 :     case 11037:  /* avx10_2_vcvttsd2usissi_round */
    3750         6632 :     case 11035:  /* avx10_2_vcvttsd2sissi_round */
    3751         6632 :     case 5009:  /* sse2_cvtsd2siq_round */
    3752         6632 :     case 5007:  /* sse2_cvtsd2si_round */
    3753         6632 :     case 4991:  /* avx512f_vcvtsd2usiq_round */
    3754         6632 :     case 4989:  /* avx512f_vcvtsd2usi_round */
    3755         6632 :     case 4973:  /* avx512f_vcvtss2usiq_round */
    3756         6632 :     case 4971:  /* avx512f_vcvtss2usi_round */
    3757         6632 :     case 4855:  /* sse_cvtss2siq_round */
    3758         6632 :     case 4853:  /* sse_cvtss2si_round */
    3759         6632 :     case 4600:  /* avx512fp16_vcvtsh2siq_round */
    3760         6632 :     case 4598:  /* avx512fp16_vcvtsh2usiq_round */
    3761         6632 :     case 4596:  /* avx512fp16_vcvtsh2si_round */
    3762         6632 :     case 4594:  /* avx512fp16_vcvtsh2usi_round */
    3763         6632 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3764         6632 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0));
    3765         6632 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3766         6632 :       break;
    3767              : 
    3768         1728 :     case 5245:  /* *sse2_cvtpd2ps_mask_1 */
    3769         1728 :     case 5072:  /* *floatunsv2div2sf2_mask_1 */
    3770         1728 :     case 5071:  /* *floatv2div2sf2_mask_1 */
    3771         1728 :     case 4819:  /* *avx512fp16_vcvtpd2ph_v2df_mask_1 */
    3772         1728 :     case 4816:  /* *avx512fp16_vcvtps2ph_v4sf_mask_1 */
    3773         1728 :     case 4815:  /* *avx512fp16_vcvtpd2ph_v4df_mask_1 */
    3774         1728 :     case 4592:  /* *avx512fp16_vcvtuqq2ph_v2di_mask_1 */
    3775         1728 :     case 4591:  /* *avx512fp16_vcvtqq2ph_v2di_mask_1 */
    3776         1728 :     case 4586:  /* *avx512fp16_vcvtuqq2ph_v4di_mask_1 */
    3777         1728 :     case 4585:  /* *avx512fp16_vcvtqq2ph_v4di_mask_1 */
    3778         1728 :     case 4584:  /* *avx512fp16_vcvtudq2ph_v4si_mask_1 */
    3779         1728 :     case 4583:  /* *avx512fp16_vcvtdq2ph_v4si_mask_1 */
    3780         1728 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3781         1728 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3782         1728 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3783         1728 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3784         1728 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    3785         1728 :       break;
    3786              : 
    3787         5021 :     case 10497:  /* avx512f_cvtneps2bf16_v4sf_mask_1 */
    3788         5021 :     case 5244:  /* *sse2_cvtpd2ps_mask */
    3789         5021 :     case 5070:  /* *floatunsv2div2sf2_mask */
    3790         5021 :     case 5069:  /* *floatv2div2sf2_mask */
    3791         5021 :     case 4818:  /* *avx512fp16_vcvtpd2ph_v2df_mask */
    3792         5021 :     case 4814:  /* *avx512fp16_vcvtps2ph_v4sf_mask */
    3793         5021 :     case 4813:  /* *avx512fp16_vcvtpd2ph_v4df_mask */
    3794         5021 :     case 4590:  /* *avx512fp16_vcvtuqq2ph_v2di_mask */
    3795         5021 :     case 4589:  /* *avx512fp16_vcvtqq2ph_v2di_mask */
    3796         5021 :     case 4582:  /* *avx512fp16_vcvtuqq2ph_v4di_mask */
    3797         5021 :     case 4581:  /* *avx512fp16_vcvtqq2ph_v4di_mask */
    3798         5021 :     case 4580:  /* *avx512fp16_vcvtudq2ph_v4si_mask */
    3799         5021 :     case 4579:  /* *avx512fp16_vcvtdq2ph_v4si_mask */
    3800         5021 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3801         5021 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    3802         5021 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
    3803         5021 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    3804         5021 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    3805         5021 :       break;
    3806              : 
    3807        32203 :     case 11025:  /* avx10_2_vcvttps2uqqsv8di_mask_round */
    3808        32203 :     case 11021:  /* avx10_2_vcvttps2qqsv8di_mask_round */
    3809        32203 :     case 11009:  /* avx10_2_vcvttpd2uqqsv8df_mask_round */
    3810        32203 :     case 11005:  /* avx10_2_vcvttpd2qqsv8df_mask_round */
    3811        32203 :     case 10993:  /* avx10_2_vcvttpd2udqsv8df_mask_round */
    3812        32203 :     case 10989:  /* avx10_2_vcvttpd2dqsv8df_mask_round */
    3813        32203 :     case 10977:  /* avx10_2_vcvttps2udqsv16sf_mask_round */
    3814        32203 :     case 10973:  /* avx10_2_vcvttps2dqsv16sf_mask_round */
    3815        32203 :     case 10961:  /* avx10_2_cvttps2iubsv16sf_mask_round */
    3816        32203 :     case 10957:  /* avx10_2_cvttps2ibsv16sf_mask_round */
    3817        32203 :     case 10945:  /* avx10_2_cvtps2iubsv16sf_mask_round */
    3818        32203 :     case 10941:  /* avx10_2_cvtps2ibsv16sf_mask_round */
    3819        32203 :     case 10929:  /* avx10_2_cvttph2iubsv32hf_mask_round */
    3820        32203 :     case 10925:  /* avx10_2_cvttph2ibsv32hf_mask_round */
    3821        32203 :     case 10913:  /* avx10_2_cvtph2iubsv32hf_mask_round */
    3822        32203 :     case 10909:  /* avx10_2_cvtph2ibsv32hf_mask_round */
    3823        32203 :     case 9808:  /* avx512f_vcvtph2ps512_mask_round */
    3824        32203 :     case 7144:  /* avx512vl_getexpv2df_mask_round */
    3825        32203 :     case 7140:  /* avx512vl_getexpv4df_mask_round */
    3826        32203 :     case 7136:  /* avx512f_getexpv8df_mask_round */
    3827        32203 :     case 7132:  /* avx512vl_getexpv4sf_mask_round */
    3828        32203 :     case 7128:  /* avx512vl_getexpv8sf_mask_round */
    3829        32203 :     case 7124:  /* avx512f_getexpv16sf_mask_round */
    3830        32203 :     case 7120:  /* avx512fp16_getexpv8hf_mask_round */
    3831        32203 :     case 7116:  /* avx512vl_getexpv16hf_mask_round */
    3832        32203 :     case 7112:  /* avx512bw_getexpv32hf_mask_round */
    3833        32203 :     case 5188:  /* unspec_fixuns_truncv8sfv8di2_mask_round */
    3834        32203 :     case 5184:  /* unspec_fix_truncv8sfv8di2_mask_round */
    3835        32203 :     case 5176:  /* fixuns_notruncv8dfv8di2_mask_round */
    3836        32203 :     case 5168:  /* fix_notruncv8dfv8di2_mask_round */
    3837        32203 :     case 5140:  /* unspec_fixuns_truncv8dfv8di2_mask_round */
    3838        32203 :     case 5136:  /* unspec_fix_truncv8dfv8di2_mask_round */
    3839        32203 :     case 5111:  /* unspec_fixuns_truncv8dfv8si2_mask_round */
    3840        32203 :     case 5107:  /* unspec_fix_truncv8dfv8si2_mask_round */
    3841        32203 :     case 5100:  /* fixuns_notruncv4dfv4si2_mask_round */
    3842        32203 :     case 5096:  /* fixuns_notruncv8dfv8si2_mask_round */
    3843        32203 :     case 5086:  /* avx512f_cvtpd2dq512_mask_round */
    3844        32203 :     case 4943:  /* unspec_fixuns_truncv16sfv16si2_mask_round */
    3845        32203 :     case 4939:  /* unspec_fix_truncv16sfv16si2_mask_round */
    3846        32203 :     case 4931:  /* avx512dq_cvtps2uqqv8di_mask_round */
    3847        32203 :     case 4923:  /* avx512dq_cvtps2qqv8di_mask_round */
    3848        32203 :     case 4919:  /* avx512vl_fixuns_notruncv4sfv4si_mask_round */
    3849        32203 :     case 4915:  /* avx512vl_fixuns_notruncv8sfv8si_mask_round */
    3850        32203 :     case 4911:  /* avx512f_fixuns_notruncv16sfv16si_mask_round */
    3851        32203 :     case 4907:  /* avx512f_fix_notruncv16sfv16si_mask_round */
    3852        32203 :     case 4666:  /* unspec_avx512fp16_fixuns_truncv8di2_mask_round */
    3853        32203 :     case 4662:  /* unspec_avx512fp16_fix_truncv8di2_mask_round */
    3854        32203 :     case 4658:  /* unspec_avx512fp16_fixuns_truncv16si2_mask_round */
    3855        32203 :     case 4654:  /* unspec_avx512fp16_fix_truncv16si2_mask_round */
    3856        32203 :     case 4650:  /* unspec_avx512fp16_fixuns_truncv8si2_mask_round */
    3857        32203 :     case 4646:  /* unspec_avx512fp16_fix_truncv8si2_mask_round */
    3858        32203 :     case 4642:  /* unspec_avx512fp16_fixuns_truncv32hi2_mask_round */
    3859        32203 :     case 4638:  /* unspec_avx512fp16_fix_truncv32hi2_mask_round */
    3860        32203 :     case 4634:  /* unspec_avx512fp16_fixuns_truncv16hi2_mask_round */
    3861        32203 :     case 4630:  /* unspec_avx512fp16_fix_truncv16hi2_mask_round */
    3862        32203 :     case 4626:  /* unspec_avx512fp16_fixuns_truncv8hi2_mask_round */
    3863        32203 :     case 4622:  /* unspec_avx512fp16_fix_truncv8hi2_mask_round */
    3864        32203 :     case 4526:  /* avx512fp16_vcvtph2qq_v2di_mask_round */
    3865        32203 :     case 4522:  /* avx512fp16_vcvtph2uqq_v2di_mask_round */
    3866        32203 :     case 4518:  /* avx512fp16_vcvtph2dq_v4si_mask_round */
    3867        32203 :     case 4514:  /* avx512fp16_vcvtph2udq_v4si_mask_round */
    3868        32203 :     case 4510:  /* avx512fp16_vcvtph2w_v8hi_mask_round */
    3869        32203 :     case 4506:  /* avx512fp16_vcvtph2uw_v8hi_mask_round */
    3870        32203 :     case 4502:  /* avx512fp16_vcvtph2qq_v4di_mask_round */
    3871        32203 :     case 4498:  /* avx512fp16_vcvtph2uqq_v4di_mask_round */
    3872        32203 :     case 4494:  /* avx512fp16_vcvtph2dq_v8si_mask_round */
    3873        32203 :     case 4490:  /* avx512fp16_vcvtph2udq_v8si_mask_round */
    3874        32203 :     case 4486:  /* avx512fp16_vcvtph2w_v16hi_mask_round */
    3875        32203 :     case 4482:  /* avx512fp16_vcvtph2uw_v16hi_mask_round */
    3876        32203 :     case 4478:  /* avx512fp16_vcvtph2qq_v8di_mask_round */
    3877        32203 :     case 4474:  /* avx512fp16_vcvtph2uqq_v8di_mask_round */
    3878        32203 :     case 4470:  /* avx512fp16_vcvtph2dq_v16si_mask_round */
    3879        32203 :     case 4466:  /* avx512fp16_vcvtph2udq_v16si_mask_round */
    3880        32203 :     case 4462:  /* avx512fp16_vcvtph2w_v32hi_mask_round */
    3881        32203 :     case 4458:  /* avx512fp16_vcvtph2uw_v32hi_mask_round */
    3882        32203 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3883        32203 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    3884        32203 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    3885        32203 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    3886        32203 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3887        32203 :       break;
    3888              : 
    3889        13178 :     case 11023:  /* avx10_2_vcvttps2uqqsv8di_round */
    3890        13178 :     case 11019:  /* avx10_2_vcvttps2qqsv8di_round */
    3891        13178 :     case 11007:  /* avx10_2_vcvttpd2uqqsv8df_round */
    3892        13178 :     case 11003:  /* avx10_2_vcvttpd2qqsv8df_round */
    3893        13178 :     case 10991:  /* avx10_2_vcvttpd2udqsv8df_round */
    3894        13178 :     case 10987:  /* avx10_2_vcvttpd2dqsv8df_round */
    3895        13178 :     case 10975:  /* avx10_2_vcvttps2udqsv16sf_round */
    3896        13178 :     case 10971:  /* avx10_2_vcvttps2dqsv16sf_round */
    3897        13178 :     case 10959:  /* avx10_2_cvttps2iubsv16sf_round */
    3898        13178 :     case 10955:  /* avx10_2_cvttps2ibsv16sf_round */
    3899        13178 :     case 10943:  /* avx10_2_cvtps2iubsv16sf_round */
    3900        13178 :     case 10939:  /* avx10_2_cvtps2ibsv16sf_round */
    3901        13178 :     case 10927:  /* avx10_2_cvttph2iubsv32hf_round */
    3902        13178 :     case 10923:  /* avx10_2_cvttph2ibsv32hf_round */
    3903        13178 :     case 10911:  /* avx10_2_cvtph2iubsv32hf_round */
    3904        13178 :     case 10907:  /* avx10_2_cvtph2ibsv32hf_round */
    3905        13178 :     case 9806:  /* *avx512f_vcvtph2ps512_round */
    3906        13178 :     case 7142:  /* avx512vl_getexpv2df_round */
    3907        13178 :     case 7138:  /* avx512vl_getexpv4df_round */
    3908        13178 :     case 7134:  /* avx512f_getexpv8df_round */
    3909        13178 :     case 7130:  /* avx512vl_getexpv4sf_round */
    3910        13178 :     case 7126:  /* avx512vl_getexpv8sf_round */
    3911        13178 :     case 7122:  /* avx512f_getexpv16sf_round */
    3912        13178 :     case 7118:  /* avx512fp16_getexpv8hf_round */
    3913        13178 :     case 7114:  /* avx512vl_getexpv16hf_round */
    3914        13178 :     case 7110:  /* avx512bw_getexpv32hf_round */
    3915        13178 :     case 5186:  /* unspec_fixuns_truncv8sfv8di2_round */
    3916        13178 :     case 5182:  /* unspec_fix_truncv8sfv8di2_round */
    3917        13178 :     case 5174:  /* fixuns_notruncv8dfv8di2_round */
    3918        13178 :     case 5166:  /* fix_notruncv8dfv8di2_round */
    3919        13178 :     case 5138:  /* unspec_fixuns_truncv8dfv8di2_round */
    3920        13178 :     case 5134:  /* unspec_fix_truncv8dfv8di2_round */
    3921        13178 :     case 5109:  /* unspec_fixuns_truncv8dfv8si2_round */
    3922        13178 :     case 5105:  /* unspec_fix_truncv8dfv8si2_round */
    3923        13178 :     case 5098:  /* fixuns_notruncv4dfv4si2_round */
    3924        13178 :     case 5094:  /* fixuns_notruncv8dfv8si2_round */
    3925        13178 :     case 5084:  /* avx512f_cvtpd2dq512_round */
    3926        13178 :     case 5018:  /* unspec_sse2_cvttsd2siq_round */
    3927        13178 :     case 5016:  /* unspec_sse2_cvttsd2si_round */
    3928        13178 :     case 4997:  /* unspec_avx512f_vcvttsd2usiq_round */
    3929        13178 :     case 4995:  /* unspec_avx512f_vcvttsd2usi_round */
    3930        13178 :     case 4979:  /* unspec_avx512f_vcvttss2usiq_round */
    3931        13178 :     case 4977:  /* unspec_avx512f_vcvttss2usi_round */
    3932        13178 :     case 4941:  /* unspec_fixuns_truncv16sfv16si2_round */
    3933        13178 :     case 4937:  /* unspec_fix_truncv16sfv16si2_round */
    3934        13178 :     case 4929:  /* *avx512dq_cvtps2uqqv8di_round */
    3935        13178 :     case 4921:  /* *avx512dq_cvtps2qqv8di_round */
    3936        13178 :     case 4917:  /* *avx512vl_fixuns_notruncv4sfv4si_round */
    3937        13178 :     case 4913:  /* *avx512vl_fixuns_notruncv8sfv8si_round */
    3938        13178 :     case 4909:  /* *avx512f_fixuns_notruncv16sfv16si_round */
    3939        13178 :     case 4905:  /* avx512f_fix_notruncv16sfv16si_round */
    3940        13178 :     case 4864:  /* unspec_sse_cvttss2siq_round */
    3941        13178 :     case 4862:  /* unspec_sse_cvttss2si_round */
    3942        13178 :     case 4758:  /* unspec_avx512fp16_fixuns_truncdi2_round */
    3943        13178 :     case 4756:  /* unspec_avx512fp16_fix_truncdi2_round */
    3944        13178 :     case 4754:  /* unspec_avx512fp16_fixuns_truncsi2_round */
    3945        13178 :     case 4752:  /* unspec_avx512fp16_fix_truncsi2_round */
    3946        13178 :     case 4664:  /* unspec_avx512fp16_fixuns_truncv8di2_round */
    3947        13178 :     case 4660:  /* unspec_avx512fp16_fix_truncv8di2_round */
    3948        13178 :     case 4656:  /* unspec_avx512fp16_fixuns_truncv16si2_round */
    3949        13178 :     case 4652:  /* unspec_avx512fp16_fix_truncv16si2_round */
    3950        13178 :     case 4648:  /* unspec_avx512fp16_fixuns_truncv8si2_round */
    3951        13178 :     case 4644:  /* unspec_avx512fp16_fix_truncv8si2_round */
    3952        13178 :     case 4640:  /* unspec_avx512fp16_fixuns_truncv32hi2_round */
    3953        13178 :     case 4636:  /* unspec_avx512fp16_fix_truncv32hi2_round */
    3954        13178 :     case 4632:  /* unspec_avx512fp16_fixuns_truncv16hi2_round */
    3955        13178 :     case 4628:  /* unspec_avx512fp16_fix_truncv16hi2_round */
    3956        13178 :     case 4624:  /* unspec_avx512fp16_fixuns_truncv8hi2_round */
    3957        13178 :     case 4620:  /* unspec_avx512fp16_fix_truncv8hi2_round */
    3958        13178 :     case 4524:  /* avx512fp16_vcvtph2qq_v2di_round */
    3959        13178 :     case 4520:  /* avx512fp16_vcvtph2uqq_v2di_round */
    3960        13178 :     case 4516:  /* avx512fp16_vcvtph2dq_v4si_round */
    3961        13178 :     case 4512:  /* avx512fp16_vcvtph2udq_v4si_round */
    3962        13178 :     case 4508:  /* avx512fp16_vcvtph2w_v8hi_round */
    3963        13178 :     case 4504:  /* avx512fp16_vcvtph2uw_v8hi_round */
    3964        13178 :     case 4500:  /* avx512fp16_vcvtph2qq_v4di_round */
    3965        13178 :     case 4496:  /* avx512fp16_vcvtph2uqq_v4di_round */
    3966        13178 :     case 4492:  /* avx512fp16_vcvtph2dq_v8si_round */
    3967        13178 :     case 4488:  /* avx512fp16_vcvtph2udq_v8si_round */
    3968        13178 :     case 4484:  /* avx512fp16_vcvtph2w_v16hi_round */
    3969        13178 :     case 4480:  /* avx512fp16_vcvtph2uw_v16hi_round */
    3970        13178 :     case 4476:  /* avx512fp16_vcvtph2qq_v8di_round */
    3971        13178 :     case 4472:  /* avx512fp16_vcvtph2uqq_v8di_round */
    3972        13178 :     case 4468:  /* avx512fp16_vcvtph2dq_v16si_round */
    3973        13178 :     case 4464:  /* avx512fp16_vcvtph2udq_v16si_round */
    3974        13178 :     case 4460:  /* avx512fp16_vcvtph2w_v32hi_round */
    3975        13178 :     case 4456:  /* avx512fp16_vcvtph2uw_v32hi_round */
    3976        13178 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3977        13178 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0));
    3978        13178 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3979        13178 :       break;
    3980              : 
    3981         1892 :     case 4454:  /* avx512fp16_fcmulcsh_v8hf_mask_round */
    3982         1892 :     case 4450:  /* avx512fp16_fmulcsh_v8hf_mask_round */
    3983         1892 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3984         1892 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    3985         1892 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    3986         1892 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    3987         1892 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0, 0));
    3988         1892 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    3989         1892 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    3990         1892 :       recog_data.dup_num[0] = 1;
    3991         1892 :       break;
    3992              : 
    3993          436 :     case 4453:  /* avx512fp16_fcmulcsh_v8hf_mask */
    3994          436 :     case 4449:  /* avx512fp16_fmulcsh_v8hf_mask */
    3995          436 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    3996          436 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    3997          436 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    3998          436 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    3999          436 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0, 0));
    4000          436 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4001          436 :       recog_data.dup_num[0] = 1;
    4002          436 :       break;
    4003              : 
    4004         1696 :     case 4446:  /* avx512fp16_fcmaddcsh_v8hf_mask_round */
    4005         1696 :     case 4444:  /* avx512fp16_fmaddcsh_v8hf_mask_round */
    4006         1696 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4007         1696 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    4008         1696 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    4009         1696 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 2));
    4010         1696 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0, 0));
    4011         1696 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4012         1696 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4013         1696 :       recog_data.dup_num[0] = 1;
    4014         1696 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4015         1696 :       recog_data.dup_num[1] = 2;
    4016         1696 :       break;
    4017              : 
    4018          242 :     case 4445:  /* avx512fp16_fcmaddcsh_v8hf_mask */
    4019          242 :     case 4443:  /* avx512fp16_fmaddcsh_v8hf_mask */
    4020          242 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4021          242 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    4022          242 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    4023          242 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 2));
    4024          242 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0, 0));
    4025          242 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4026          242 :       recog_data.dup_num[0] = 1;
    4027          242 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4028          242 :       recog_data.dup_num[1] = 2;
    4029          242 :       break;
    4030              : 
    4031          852 :     case 4442:  /* avx512fp16_fma_fcmaddcsh_v8hf_maskz_round */
    4032          852 :     case 4438:  /* avx512fp16_fma_fmaddcsh_v8hf_maskz_round */
    4033          852 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4034          852 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    4035          852 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    4036          852 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 2));
    4037          852 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4038          852 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0, 0));
    4039          852 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4040          852 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4041          852 :       recog_data.dup_num[0] = 2;
    4042          852 :       break;
    4043              : 
    4044          776 :     case 4441:  /* avx512fp16_fma_fcmaddcsh_v8hf_round */
    4045          776 :     case 4437:  /* avx512fp16_fma_fmaddcsh_v8hf_round */
    4046          776 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4047          776 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4048          776 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4049          776 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    4050          776 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4051          776 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4052          776 :       recog_data.dup_num[0] = 2;
    4053          776 :       break;
    4054              : 
    4055          118 :     case 4440:  /* avx512fp16_fma_fcmaddcsh_v8hf_maskz */
    4056          118 :     case 4436:  /* avx512fp16_fma_fmaddcsh_v8hf_maskz */
    4057          118 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4058          118 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    4059          118 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    4060          118 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 2));
    4061          118 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4062          118 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0, 0));
    4063          118 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4064          118 :       recog_data.dup_num[0] = 2;
    4065          118 :       break;
    4066              : 
    4067          149 :     case 4439:  /* avx512fp16_fma_fcmaddcsh_v8hf */
    4068          149 :     case 4435:  /* avx512fp16_fma_fmaddcsh_v8hf */
    4069          149 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4070          149 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4071          149 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4072          149 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    4073          149 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4074          149 :       recog_data.dup_num[0] = 2;
    4075          149 :       break;
    4076              : 
    4077         1863 :     case 4426:  /* avx512bw_fcmulc_v32hf_mask_round */
    4078         1863 :     case 4422:  /* avx512bw_fmulc_v32hf_mask_round */
    4079         1863 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4080         1863 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4081         1863 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4082         1863 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    4083         1863 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0, 0));
    4084         1863 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4085         1863 :       break;
    4086              : 
    4087         3050 :     case 4434:  /* avx512fp16_fcmulc_v8hf_mask */
    4088         3050 :     case 4432:  /* avx512fp16_fmulc_v8hf_mask */
    4089         3050 :     case 4430:  /* avx512vl_fcmulc_v16hf_mask */
    4090         3050 :     case 4428:  /* avx512vl_fmulc_v16hf_mask */
    4091         3050 :     case 4424:  /* avx512bw_fcmulc_v32hf_mask */
    4092         3050 :     case 4420:  /* avx512bw_fmulc_v32hf_mask */
    4093         3050 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4094         3050 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4095         3050 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4096         3050 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    4097         3050 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0));
    4098         3050 :       break;
    4099              : 
    4100         1654 :     case 4414:  /* avx512bw_fcmaddc_v32hf_mask_round */
    4101         1654 :     case 4412:  /* avx512bw_fmaddc_v32hf_mask_round */
    4102         1654 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4103         1654 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4104         1654 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4105         1654 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    4106         1654 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0, 0));
    4107         1654 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4108         1654 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4109         1654 :       recog_data.dup_num[0] = 1;
    4110         1654 :       break;
    4111              : 
    4112         2650 :     case 4418:  /* avx512fp16_fcmaddc_v8hf_mask */
    4113         2650 :     case 4417:  /* avx512fp16_fmaddc_v8hf_mask */
    4114         2650 :     case 4416:  /* avx512vl_fcmaddc_v16hf_mask */
    4115         2650 :     case 4415:  /* avx512vl_fmaddc_v16hf_mask */
    4116         2650 :     case 4413:  /* avx512bw_fcmaddc_v32hf_mask */
    4117         2650 :     case 4411:  /* avx512bw_fmaddc_v32hf_mask */
    4118         2650 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4119         2650 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4120         2650 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4121         2650 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    4122         2650 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0));
    4123         2650 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4124         2650 :       recog_data.dup_num[0] = 1;
    4125         2650 :       break;
    4126              : 
    4127           12 :     case 4410:  /* fma_v8hf_fcmaddc_bcst */
    4128           12 :     case 4409:  /* fma_v16hf_fcmaddc_bcst */
    4129           12 :     case 4408:  /* fma_v32hf_fcmaddc_bcst */
    4130           12 :     case 4407:  /* fma_v8hf_fmaddc_bcst */
    4131           12 :     case 4406:  /* fma_v16hf_fmaddc_bcst */
    4132           12 :     case 4405:  /* fma_v32hf_fmaddc_bcst */
    4133           12 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4134           12 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    4135           12 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 0));
    4136           12 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 2));
    4137           12 :       break;
    4138              : 
    4139          850 :     case 4378:  /* fma_fcmaddc_v32hf_maskz_1_round */
    4140          850 :     case 4374:  /* fma_fmaddc_v32hf_maskz_1_round */
    4141          850 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4142          850 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4143          850 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4144          850 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    4145          850 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    4146          850 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0, 0));
    4147          850 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4148          850 :       break;
    4149              : 
    4150         1278 :     case 4386:  /* fma_fcmaddc_v8hf_maskz_1 */
    4151         1278 :     case 4384:  /* fma_fmaddc_v8hf_maskz_1 */
    4152         1278 :     case 4382:  /* fma_fcmaddc_v16hf_maskz_1 */
    4153         1278 :     case 4380:  /* fma_fmaddc_v16hf_maskz_1 */
    4154         1278 :     case 4377:  /* fma_fcmaddc_v32hf_maskz_1 */
    4155         1278 :     case 4373:  /* fma_fmaddc_v32hf_maskz_1 */
    4156         1278 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4157         1278 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4158         1278 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4159         1278 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    4160         1278 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    4161         1278 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0));
    4162         1278 :       break;
    4163              : 
    4164          140 :     case 4370:  /* *fma4i_vmfnmsub_v2df */
    4165          140 :     case 4369:  /* *fma4i_vmfnmsub_v4sf */
    4166          140 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4167          140 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4168          140 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4169          140 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    4170          140 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    4171          140 :       break;
    4172              : 
    4173          180 :     case 4366:  /* *fma4i_vmfmsub_v2df */
    4174          180 :     case 4365:  /* *fma4i_vmfmsub_v4sf */
    4175          180 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4176          180 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    4177          180 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4178          180 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    4179          180 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    4180          180 :       break;
    4181              : 
    4182          744 :     case 4364:  /* *fma4i_vmfmadd_v2df */
    4183          744 :     case 4363:  /* *fma4i_vmfmadd_v4sf */
    4184          744 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4185          744 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    4186          744 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4187          744 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4188          744 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    4189          744 :       break;
    4190              : 
    4191          714 :     case 4362:  /* *avx512f_vmfnmsub_v2df_maskz_1_round */
    4192          714 :     case 4360:  /* *avx512f_vmfnmsub_v4sf_maskz_1_round */
    4193          714 :     case 4358:  /* *avx512f_vmfnmsub_v8hf_maskz_1_round */
    4194          714 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4195          714 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4196          714 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    4197          714 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2), 0));
    4198          714 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4199          714 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4200          714 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4201          714 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4202          714 :       recog_data.dup_num[0] = 1;
    4203          714 :       break;
    4204              : 
    4205           66 :     case 4361:  /* *avx512f_vmfnmsub_v2df_maskz_1 */
    4206           66 :     case 4359:  /* *avx512f_vmfnmsub_v4sf_maskz_1 */
    4207           66 :     case 4357:  /* *avx512f_vmfnmsub_v8hf_maskz_1 */
    4208           66 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4209           66 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4210           66 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    4211           66 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2), 0));
    4212           66 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4213           66 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4214           66 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4215           66 :       recog_data.dup_num[0] = 1;
    4216           66 :       break;
    4217              : 
    4218          930 :     case 4356:  /* *avx512f_vmfnmsub_v2df_mask3_round */
    4219          930 :     case 4354:  /* *avx512f_vmfnmsub_v4sf_mask3_round */
    4220          930 :     case 4352:  /* *avx512f_vmfnmsub_v8hf_mask3_round */
    4221          930 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4222          930 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4223          930 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    4224          930 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2), 0));
    4225          930 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4226          930 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4227          930 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4228          930 :       recog_data.dup_num[0] = 3;
    4229          930 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4230          930 :       recog_data.dup_num[1] = 3;
    4231          930 :       break;
    4232              : 
    4233          121 :     case 4355:  /* *avx512f_vmfnmsub_v2df_mask3 */
    4234          121 :     case 4353:  /* *avx512f_vmfnmsub_v4sf_mask3 */
    4235          121 :     case 4351:  /* *avx512f_vmfnmsub_v8hf_mask3 */
    4236          121 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4237          121 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4238          121 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    4239          121 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2), 0));
    4240          121 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4241          121 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4242          121 :       recog_data.dup_num[0] = 3;
    4243          121 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4244          121 :       recog_data.dup_num[1] = 3;
    4245          121 :       break;
    4246              : 
    4247          726 :     case 4350:  /* *avx512f_vmfnmsub_v2df_mask_round */
    4248          726 :     case 4348:  /* *avx512f_vmfnmsub_v4sf_mask_round */
    4249          726 :     case 4346:  /* *avx512f_vmfnmsub_v8hf_mask_round */
    4250          726 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4251          726 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    4252          726 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4253          726 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2), 0));
    4254          726 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4255          726 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4256          726 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4257          726 :       recog_data.dup_num[0] = 1;
    4258          726 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4259          726 :       recog_data.dup_num[1] = 1;
    4260          726 :       break;
    4261              : 
    4262           78 :     case 4349:  /* *avx512f_vmfnmsub_v2df_mask */
    4263           78 :     case 4347:  /* *avx512f_vmfnmsub_v4sf_mask */
    4264           78 :     case 4345:  /* *avx512f_vmfnmsub_v8hf_mask */
    4265           78 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4266           78 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    4267           78 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4268           78 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2), 0));
    4269           78 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4270           78 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4271           78 :       recog_data.dup_num[0] = 1;
    4272           78 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4273           78 :       recog_data.dup_num[1] = 1;
    4274           78 :       break;
    4275              : 
    4276          983 :     case 4344:  /* avx512f_vmfnmadd_v2df_maskz_1_round */
    4277          983 :     case 4342:  /* avx512f_vmfnmadd_v4sf_maskz_1_round */
    4278          983 :     case 4340:  /* avx512f_vmfnmadd_v8hf_maskz_1_round */
    4279          983 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4280          983 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4281          983 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    4282          983 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2));
    4283          983 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4284          983 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4285          983 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4286          983 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4287          983 :       recog_data.dup_num[0] = 1;
    4288          983 :       break;
    4289              : 
    4290          148 :     case 4343:  /* avx512f_vmfnmadd_v2df_maskz_1 */
    4291          148 :     case 4341:  /* avx512f_vmfnmadd_v4sf_maskz_1 */
    4292          148 :     case 4339:  /* avx512f_vmfnmadd_v8hf_maskz_1 */
    4293          148 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4294          148 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4295          148 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    4296          148 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2));
    4297          148 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4298          148 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4299          148 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4300          148 :       recog_data.dup_num[0] = 1;
    4301          148 :       break;
    4302              : 
    4303         1040 :     case 4338:  /* avx512f_vmfnmadd_v2df_mask3_round */
    4304         1040 :     case 4336:  /* avx512f_vmfnmadd_v4sf_mask3_round */
    4305         1040 :     case 4334:  /* avx512f_vmfnmadd_v8hf_mask3_round */
    4306         1040 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4307         1040 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4308         1040 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    4309         1040 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2));
    4310         1040 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4311         1040 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4312         1040 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4313         1040 :       recog_data.dup_num[0] = 3;
    4314         1040 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4315         1040 :       recog_data.dup_num[1] = 3;
    4316         1040 :       break;
    4317              : 
    4318          174 :     case 4337:  /* avx512f_vmfnmadd_v2df_mask3 */
    4319          174 :     case 4335:  /* avx512f_vmfnmadd_v4sf_mask3 */
    4320          174 :     case 4333:  /* avx512f_vmfnmadd_v8hf_mask3 */
    4321          174 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4322          174 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4323          174 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    4324          174 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2));
    4325          174 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4326          174 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4327          174 :       recog_data.dup_num[0] = 3;
    4328          174 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4329          174 :       recog_data.dup_num[1] = 3;
    4330          174 :       break;
    4331              : 
    4332         1035 :     case 4332:  /* avx512f_vmfnmadd_v2df_mask_round */
    4333         1035 :     case 4330:  /* avx512f_vmfnmadd_v4sf_mask_round */
    4334         1035 :     case 4328:  /* avx512f_vmfnmadd_v8hf_mask_round */
    4335         1035 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4336         1035 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    4337         1035 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4338         1035 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2));
    4339         1035 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4340         1035 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4341         1035 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4342         1035 :       recog_data.dup_num[0] = 1;
    4343         1035 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4344         1035 :       recog_data.dup_num[1] = 1;
    4345         1035 :       break;
    4346              : 
    4347          179 :     case 4331:  /* avx512f_vmfnmadd_v2df_mask */
    4348          179 :     case 4329:  /* avx512f_vmfnmadd_v4sf_mask */
    4349          179 :     case 4327:  /* avx512f_vmfnmadd_v8hf_mask */
    4350          179 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4351          179 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    4352          179 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4353          179 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2));
    4354          179 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4355          179 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4356          179 :       recog_data.dup_num[0] = 1;
    4357          179 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4358          179 :       recog_data.dup_num[1] = 1;
    4359          179 :       break;
    4360              : 
    4361         1002 :     case 4326:  /* *avx512f_vmfmsub_v2df_maskz_1_round */
    4362         1002 :     case 4324:  /* *avx512f_vmfmsub_v4sf_maskz_1_round */
    4363         1002 :     case 4322:  /* *avx512f_vmfmsub_v8hf_maskz_1_round */
    4364         1002 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4365         1002 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4366         1002 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4367         1002 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2), 0));
    4368         1002 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4369         1002 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4370         1002 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4371         1002 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4372         1002 :       recog_data.dup_num[0] = 1;
    4373         1002 :       break;
    4374              : 
    4375           66 :     case 4325:  /* *avx512f_vmfmsub_v2df_maskz_1 */
    4376           66 :     case 4323:  /* *avx512f_vmfmsub_v4sf_maskz_1 */
    4377           66 :     case 4321:  /* *avx512f_vmfmsub_v8hf_maskz_1 */
    4378           66 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4379           66 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4380           66 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4381           66 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2), 0));
    4382           66 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4383           66 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4384           66 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4385           66 :       recog_data.dup_num[0] = 1;
    4386           66 :       break;
    4387              : 
    4388         1695 :     case 4320:  /* avx512f_vmfmsub_v2df_mask3_round */
    4389         1695 :     case 4318:  /* avx512f_vmfmsub_v4sf_mask3_round */
    4390         1695 :     case 4316:  /* avx512f_vmfmsub_v8hf_mask3_round */
    4391         1695 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4392         1695 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4393         1695 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4394         1695 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2), 0));
    4395         1695 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4396         1695 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4397         1695 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4398         1695 :       recog_data.dup_num[0] = 3;
    4399         1695 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4400         1695 :       recog_data.dup_num[1] = 3;
    4401         1695 :       break;
    4402              : 
    4403          593 :     case 4319:  /* avx512f_vmfmsub_v2df_mask3 */
    4404          593 :     case 4317:  /* avx512f_vmfmsub_v4sf_mask3 */
    4405          593 :     case 4315:  /* avx512f_vmfmsub_v8hf_mask3 */
    4406          593 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4407          593 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4408          593 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4409          593 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2), 0));
    4410          593 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4411          593 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4412          593 :       recog_data.dup_num[0] = 3;
    4413          593 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4414          593 :       recog_data.dup_num[1] = 3;
    4415          593 :       break;
    4416              : 
    4417         1014 :     case 4314:  /* *avx512f_vmfmsub_v2df_mask_round */
    4418         1014 :     case 4312:  /* *avx512f_vmfmsub_v4sf_mask_round */
    4419         1014 :     case 4310:  /* *avx512f_vmfmsub_v8hf_mask_round */
    4420         1014 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4421         1014 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4422         1014 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4423         1014 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2), 0));
    4424         1014 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4425         1014 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4426         1014 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4427         1014 :       recog_data.dup_num[0] = 1;
    4428         1014 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4429         1014 :       recog_data.dup_num[1] = 1;
    4430         1014 :       break;
    4431              : 
    4432           78 :     case 4313:  /* *avx512f_vmfmsub_v2df_mask */
    4433           78 :     case 4311:  /* *avx512f_vmfmsub_v4sf_mask */
    4434           78 :     case 4309:  /* *avx512f_vmfmsub_v8hf_mask */
    4435           78 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4436           78 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4437           78 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4438           78 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2), 0));
    4439           78 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4440           78 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4441           78 :       recog_data.dup_num[0] = 1;
    4442           78 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4443           78 :       recog_data.dup_num[1] = 1;
    4444           78 :       break;
    4445              : 
    4446         1958 :     case 4308:  /* avx512f_vmfmadd_v2df_maskz_1_round */
    4447         1958 :     case 4306:  /* avx512f_vmfmadd_v4sf_maskz_1_round */
    4448         1958 :     case 4304:  /* avx512f_vmfmadd_v8hf_maskz_1_round */
    4449         1958 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4450         1958 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4451         1958 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4452         1958 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2));
    4453         1958 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4454         1958 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4455         1958 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4456         1958 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4457         1958 :       recog_data.dup_num[0] = 1;
    4458         1958 :       break;
    4459              : 
    4460          602 :     case 4307:  /* avx512f_vmfmadd_v2df_maskz_1 */
    4461          602 :     case 4305:  /* avx512f_vmfmadd_v4sf_maskz_1 */
    4462          602 :     case 4303:  /* avx512f_vmfmadd_v8hf_maskz_1 */
    4463          602 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4464          602 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4465          602 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4466          602 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2));
    4467          602 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4468          602 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4469          602 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4470          602 :       recog_data.dup_num[0] = 1;
    4471          602 :       break;
    4472              : 
    4473         1620 :     case 4302:  /* avx512f_vmfmadd_v2df_mask3_round */
    4474         1620 :     case 4300:  /* avx512f_vmfmadd_v4sf_mask3_round */
    4475         1620 :     case 4298:  /* avx512f_vmfmadd_v8hf_mask3_round */
    4476         1620 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4477         1620 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4478         1620 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4479         1620 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2));
    4480         1620 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4481         1620 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4482         1620 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4483         1620 :       recog_data.dup_num[0] = 3;
    4484         1620 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4485         1620 :       recog_data.dup_num[1] = 3;
    4486         1620 :       break;
    4487              : 
    4488          542 :     case 4301:  /* avx512f_vmfmadd_v2df_mask3 */
    4489          542 :     case 4299:  /* avx512f_vmfmadd_v4sf_mask3 */
    4490          542 :     case 4297:  /* avx512f_vmfmadd_v8hf_mask3 */
    4491          542 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4492          542 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4493          542 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4494          542 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2));
    4495          542 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4496          542 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4497          542 :       recog_data.dup_num[0] = 3;
    4498          542 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4499          542 :       recog_data.dup_num[1] = 3;
    4500          542 :       break;
    4501              : 
    4502         2235 :     case 4296:  /* avx512f_vmfmadd_v2df_mask_round */
    4503         2235 :     case 4294:  /* avx512f_vmfmadd_v4sf_mask_round */
    4504         2235 :     case 4292:  /* avx512f_vmfmadd_v8hf_mask_round */
    4505         2235 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4506         2235 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4507         2235 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    4508         2235 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 2));
    4509         2235 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4510         2235 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4511         2235 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1);
    4512         2235 :       recog_data.dup_num[0] = 1;
    4513         2235 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4514         2235 :       recog_data.dup_num[1] = 1;
    4515         2235 :       break;
    4516              : 
    4517          875 :     case 4295:  /* avx512f_vmfmadd_v2df_mask */
    4518          875 :     case 4293:  /* avx512f_vmfmadd_v4sf_mask */
    4519          875 :     case 4291:  /* avx512f_vmfmadd_v8hf_mask */
    4520          875 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4521          875 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4522          875 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    4523          875 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 2));
    4524          875 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4525          875 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 1);
    4526          875 :       recog_data.dup_num[0] = 1;
    4527          875 :       recog_data.dup_loc[1] = &XEXP (XEXP (pat, 1), 1);
    4528          875 :       recog_data.dup_num[1] = 1;
    4529          875 :       break;
    4530              : 
    4531          408 :     case 4290:  /* *fmai_fnmsub_v2df_round */
    4532          408 :     case 4288:  /* *fmai_fnmsub_v4sf_round */
    4533          408 :     case 4286:  /* *fmai_fnmsub_v8hf_round */
    4534          408 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4535          408 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4536          408 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4537          408 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    4538          408 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4539          408 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4540          408 :       recog_data.dup_num[0] = 1;
    4541          408 :       break;
    4542              : 
    4543          578 :     case 4289:  /* *fmai_fnmsub_v2df */
    4544          578 :     case 4287:  /* *fmai_fnmsub_v4sf */
    4545          578 :     case 4285:  /* *fmai_fnmsub_v8hf */
    4546          578 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4547          578 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4548          578 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4549          578 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    4550          578 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4551          578 :       recog_data.dup_num[0] = 1;
    4552          578 :       break;
    4553              : 
    4554          547 :     case 4284:  /* *fmai_fnmadd_v2df_round */
    4555          547 :     case 4282:  /* *fmai_fnmadd_v4sf_round */
    4556          547 :     case 4280:  /* *fmai_fnmadd_v8hf_round */
    4557          547 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4558          547 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    4559          547 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4560          547 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4561          547 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4562          547 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4563          547 :       recog_data.dup_num[0] = 1;
    4564          547 :       break;
    4565              : 
    4566          566 :     case 4283:  /* *fmai_fnmadd_v2df */
    4567          566 :     case 4281:  /* *fmai_fnmadd_v4sf */
    4568          566 :     case 4279:  /* *fmai_fnmadd_v8hf */
    4569          566 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4570          566 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    4571          566 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4572          566 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4573          566 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4574          566 :       recog_data.dup_num[0] = 1;
    4575          566 :       break;
    4576              : 
    4577          662 :     case 4278:  /* *fmai_fmsub_v2df */
    4578          662 :     case 4276:  /* *fmai_fmsub_v4sf */
    4579          662 :     case 4274:  /* *fmai_fmsub_v8hf */
    4580          662 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4581          662 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    4582          662 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4583          662 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    4584          662 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4585          662 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4586          662 :       recog_data.dup_num[0] = 1;
    4587          662 :       break;
    4588              : 
    4589          582 :     case 4277:  /* *fmai_fmsub_v2df */
    4590          582 :     case 4275:  /* *fmai_fmsub_v4sf */
    4591          582 :     case 4273:  /* *fmai_fmsub_v8hf */
    4592          582 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4593          582 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    4594          582 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4595          582 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    4596          582 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4597          582 :       recog_data.dup_num[0] = 1;
    4598          582 :       break;
    4599              : 
    4600         1342 :     case 4272:  /* *fmai_fmadd_v2df */
    4601         1342 :     case 4270:  /* *fmai_fmadd_v4sf */
    4602         1342 :     case 4268:  /* *fmai_fmadd_v8hf */
    4603         1342 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4604         1342 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    4605         1342 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    4606         1342 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    4607         1342 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4608         1342 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4609         1342 :       recog_data.dup_num[0] = 1;
    4610         1342 :       break;
    4611              : 
    4612          852 :     case 4271:  /* *fmai_fmadd_v2df */
    4613          852 :     case 4269:  /* *fmai_fmadd_v4sf */
    4614          852 :     case 4267:  /* *fmai_fmadd_v8hf */
    4615          852 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4616          852 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    4617          852 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    4618          852 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    4619          852 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4620          852 :       recog_data.dup_num[0] = 1;
    4621          852 :       break;
    4622              : 
    4623         1280 :     case 4266:  /* avx512vl_fmsubadd_v2df_mask3_round */
    4624         1280 :     case 4264:  /* avx512vl_fmsubadd_v4df_mask3_round */
    4625         1280 :     case 4262:  /* avx512f_fmsubadd_v8df_mask3_round */
    4626         1280 :     case 4260:  /* avx512vl_fmsubadd_v4sf_mask3_round */
    4627         1280 :     case 4258:  /* avx512vl_fmsubadd_v8sf_mask3_round */
    4628         1280 :     case 4256:  /* avx512f_fmsubadd_v16sf_mask3_round */
    4629         1280 :     case 4254:  /* avx512fp16_fmsubadd_v8hf_mask3_round */
    4630         1280 :     case 4252:  /* avx512vl_fmsubadd_v16hf_mask3_round */
    4631         1280 :     case 4250:  /* avx512bw_fmsubadd_v32hf_mask3_round */
    4632         1280 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4633         1280 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4634         1280 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4635         1280 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2), 0));
    4636         1280 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    4637         1280 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4638         1280 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4639         1280 :       recog_data.dup_num[0] = 3;
    4640         1280 :       break;
    4641              : 
    4642         2077 :     case 4265:  /* avx512vl_fmsubadd_v2df_mask3 */
    4643         2077 :     case 4263:  /* avx512vl_fmsubadd_v4df_mask3 */
    4644         2077 :     case 4261:  /* avx512f_fmsubadd_v8df_mask3 */
    4645         2077 :     case 4259:  /* avx512vl_fmsubadd_v4sf_mask3 */
    4646         2077 :     case 4257:  /* avx512vl_fmsubadd_v8sf_mask3 */
    4647         2077 :     case 4255:  /* avx512f_fmsubadd_v16sf_mask3 */
    4648         2077 :     case 4253:  /* avx512fp16_fmsubadd_v8hf_mask3 */
    4649         2077 :     case 4251:  /* avx512vl_fmsubadd_v16hf_mask3 */
    4650         2077 :     case 4249:  /* avx512bw_fmsubadd_v32hf_mask3 */
    4651         2077 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4652         2077 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4653         2077 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4654         2077 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2), 0));
    4655         2077 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    4656         2077 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4657         2077 :       recog_data.dup_num[0] = 3;
    4658         2077 :       break;
    4659              : 
    4660         1059 :     case 4248:  /* avx512vl_fmsubadd_v2df_mask_round */
    4661         1059 :     case 4246:  /* avx512vl_fmsubadd_v4df_mask_round */
    4662         1059 :     case 4244:  /* avx512f_fmsubadd_v8df_mask_round */
    4663         1059 :     case 4242:  /* avx512vl_fmsubadd_v4sf_mask_round */
    4664         1059 :     case 4240:  /* avx512vl_fmsubadd_v8sf_mask_round */
    4665         1059 :     case 4238:  /* avx512f_fmsubadd_v16sf_mask_round */
    4666         1059 :     case 4236:  /* avx512fp16_fmsubadd_v8hf_mask_round */
    4667         1059 :     case 4234:  /* avx512vl_fmsubadd_v16hf_mask_round */
    4668         1059 :     case 4232:  /* avx512bw_fmsubadd_v32hf_mask_round */
    4669         1059 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4670         1059 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4671         1059 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4672         1059 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2), 0));
    4673         1059 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    4674         1059 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4675         1059 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4676         1059 :       recog_data.dup_num[0] = 1;
    4677         1059 :       break;
    4678              : 
    4679         1504 :     case 4247:  /* avx512vl_fmsubadd_v2df_mask */
    4680         1504 :     case 4245:  /* avx512vl_fmsubadd_v4df_mask */
    4681         1504 :     case 4243:  /* avx512f_fmsubadd_v8df_mask */
    4682         1504 :     case 4241:  /* avx512vl_fmsubadd_v4sf_mask */
    4683         1504 :     case 4239:  /* avx512vl_fmsubadd_v8sf_mask */
    4684         1504 :     case 4237:  /* avx512f_fmsubadd_v16sf_mask */
    4685         1504 :     case 4235:  /* avx512fp16_fmsubadd_v8hf_mask */
    4686         1504 :     case 4233:  /* avx512vl_fmsubadd_v16hf_mask */
    4687         1504 :     case 4231:  /* avx512bw_fmsubadd_v32hf_mask */
    4688         1504 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4689         1504 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4690         1504 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4691         1504 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2), 0));
    4692         1504 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    4693         1504 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4694         1504 :       recog_data.dup_num[0] = 1;
    4695         1504 :       break;
    4696              : 
    4697          974 :     case 4226:  /* fma_fmsubadd_v8df_maskz_1_round */
    4698          974 :     case 4218:  /* fma_fmsubadd_v16sf_maskz_1_round */
    4699          974 :     case 4210:  /* fma_fmsubadd_v32hf_maskz_1_round */
    4700          974 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4701          974 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4702          974 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4703          974 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2), 0));
    4704          974 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    4705          974 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    4706          974 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4707          974 :       break;
    4708              : 
    4709          694 :     case 4225:  /* *fma_fmsubadd_v8df_round */
    4710          694 :     case 4217:  /* *fma_fmsubadd_v16sf_round */
    4711          694 :     case 4209:  /* *fma_fmsubadd_v32hf_round */
    4712          694 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4713          694 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0));
    4714          694 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 1));
    4715          694 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 2), 0));
    4716          694 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4717          694 :       break;
    4718              : 
    4719         1286 :     case 4230:  /* fma_fmsubadd_v2df_maskz_1 */
    4720         1286 :     case 4228:  /* fma_fmsubadd_v4df_maskz_1 */
    4721         1286 :     case 4224:  /* fma_fmsubadd_v8df_maskz_1 */
    4722         1286 :     case 4222:  /* fma_fmsubadd_v4sf_maskz_1 */
    4723         1286 :     case 4220:  /* fma_fmsubadd_v8sf_maskz_1 */
    4724         1286 :     case 4216:  /* fma_fmsubadd_v16sf_maskz_1 */
    4725         1286 :     case 4214:  /* fma_fmsubadd_v8hf_maskz_1 */
    4726         1286 :     case 4212:  /* fma_fmsubadd_v16hf_maskz_1 */
    4727         1286 :     case 4208:  /* fma_fmsubadd_v32hf_maskz_1 */
    4728         1286 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4729         1286 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4730         1286 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4731         1286 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2), 0));
    4732         1286 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    4733         1286 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    4734         1286 :       break;
    4735              : 
    4736         1703 :     case 4229:  /* *fma_fmsubadd_v2df */
    4737         1703 :     case 4227:  /* *fma_fmsubadd_v4df */
    4738         1703 :     case 4223:  /* *fma_fmsubadd_v8df */
    4739         1703 :     case 4221:  /* *fma_fmsubadd_v4sf */
    4740         1703 :     case 4219:  /* *fma_fmsubadd_v8sf */
    4741         1703 :     case 4215:  /* *fma_fmsubadd_v16sf */
    4742         1703 :     case 4213:  /* *fma_fmsubadd_v8hf */
    4743         1703 :     case 4211:  /* *fma_fmsubadd_v16hf */
    4744         1703 :     case 4207:  /* *fma_fmsubadd_v32hf */
    4745         1703 :     case 4206:  /* *fma_fmsubadd_v2df */
    4746         1703 :     case 4205:  /* *fma_fmsubadd_v4df */
    4747         1703 :     case 4204:  /* *fma_fmsubadd_v4sf */
    4748         1703 :     case 4203:  /* *fma_fmsubadd_v8sf */
    4749         1703 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4750         1703 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    4751         1703 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4752         1703 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0));
    4753         1703 :       break;
    4754              : 
    4755         1280 :     case 4202:  /* avx512vl_fmaddsub_v2df_mask3_round */
    4756         1280 :     case 4200:  /* avx512vl_fmaddsub_v4df_mask3_round */
    4757         1280 :     case 4198:  /* avx512f_fmaddsub_v8df_mask3_round */
    4758         1280 :     case 4196:  /* avx512vl_fmaddsub_v4sf_mask3_round */
    4759         1280 :     case 4194:  /* avx512vl_fmaddsub_v8sf_mask3_round */
    4760         1280 :     case 4192:  /* avx512f_fmaddsub_v16sf_mask3_round */
    4761         1280 :     case 4190:  /* avx512fp16_fmaddsub_v8hf_mask3_round */
    4762         1280 :     case 4188:  /* avx512vl_fmaddsub_v16hf_mask3_round */
    4763         1280 :     case 4186:  /* avx512bw_fmaddsub_v32hf_mask3_round */
    4764         1280 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4765         1280 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4766         1280 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4767         1280 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    4768         1280 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    4769         1280 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4770         1280 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4771         1280 :       recog_data.dup_num[0] = 3;
    4772         1280 :       break;
    4773              : 
    4774         2063 :     case 4201:  /* avx512vl_fmaddsub_v2df_mask3 */
    4775         2063 :     case 4199:  /* avx512vl_fmaddsub_v4df_mask3 */
    4776         2063 :     case 4197:  /* avx512f_fmaddsub_v8df_mask3 */
    4777         2063 :     case 4195:  /* avx512vl_fmaddsub_v4sf_mask3 */
    4778         2063 :     case 4193:  /* avx512vl_fmaddsub_v8sf_mask3 */
    4779         2063 :     case 4191:  /* avx512f_fmaddsub_v16sf_mask3 */
    4780         2063 :     case 4189:  /* avx512fp16_fmaddsub_v8hf_mask3 */
    4781         2063 :     case 4187:  /* avx512vl_fmaddsub_v16hf_mask3 */
    4782         2063 :     case 4185:  /* avx512bw_fmaddsub_v32hf_mask3 */
    4783         2063 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4784         2063 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4785         2063 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4786         2063 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    4787         2063 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    4788         2063 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4789         2063 :       recog_data.dup_num[0] = 3;
    4790         2063 :       break;
    4791              : 
    4792         1599 :     case 4184:  /* avx512vl_fmaddsub_v2df_mask_round */
    4793         1599 :     case 4182:  /* avx512vl_fmaddsub_v4df_mask_round */
    4794         1599 :     case 4180:  /* avx512f_fmaddsub_v8df_mask_round */
    4795         1599 :     case 4178:  /* avx512vl_fmaddsub_v4sf_mask_round */
    4796         1599 :     case 4176:  /* avx512vl_fmaddsub_v8sf_mask_round */
    4797         1599 :     case 4174:  /* avx512f_fmaddsub_v16sf_mask_round */
    4798         1599 :     case 4172:  /* avx512fp16_fmaddsub_v8hf_mask_round */
    4799         1599 :     case 4170:  /* avx512vl_fmaddsub_v16hf_mask_round */
    4800         1599 :     case 4168:  /* avx512bw_fmaddsub_v32hf_mask_round */
    4801         1599 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4802         1599 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4803         1599 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4804         1599 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    4805         1599 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    4806         1599 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4807         1599 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    4808         1599 :       recog_data.dup_num[0] = 1;
    4809         1599 :       break;
    4810              : 
    4811        20679 :     case 10734:  /* vdpphps_v4sf_mask */
    4812        20679 :     case 10733:  /* vdpphps_v8sf_mask */
    4813        20679 :     case 10732:  /* vdpphps_v16sf_mask */
    4814        20679 :     case 10710:  /* vpdpwuuds_v4si_mask */
    4815        20679 :     case 10709:  /* vpdpwuud_v4si_mask */
    4816        20679 :     case 10708:  /* vpdpwsuds_v4si_mask */
    4817        20679 :     case 10707:  /* vpdpwsud_v4si_mask */
    4818        20679 :     case 10706:  /* vpdpwusds_v4si_mask */
    4819        20679 :     case 10705:  /* vpdpwusd_v4si_mask */
    4820        20679 :     case 10704:  /* vpdpwuuds_v8si_mask */
    4821        20679 :     case 10703:  /* vpdpwuud_v8si_mask */
    4822        20679 :     case 10702:  /* vpdpwsuds_v8si_mask */
    4823        20679 :     case 10701:  /* vpdpwsud_v8si_mask */
    4824        20679 :     case 10700:  /* vpdpwusds_v8si_mask */
    4825        20679 :     case 10699:  /* vpdpwusd_v8si_mask */
    4826        20679 :     case 10698:  /* vpdpwuuds_v16si_mask */
    4827        20679 :     case 10697:  /* vpdpwuud_v16si_mask */
    4828        20679 :     case 10696:  /* vpdpwsuds_v16si_mask */
    4829        20679 :     case 10695:  /* vpdpwsud_v16si_mask */
    4830        20679 :     case 10694:  /* vpdpwusds_v16si_mask */
    4831        20679 :     case 10693:  /* vpdpwusd_v16si_mask */
    4832        20679 :     case 10558:  /* vpdpbuuds_v4si_mask */
    4833        20679 :     case 10557:  /* vpdpbuud_v4si_mask */
    4834        20679 :     case 10556:  /* vpdpbsuds_v4si_mask */
    4835        20679 :     case 10555:  /* vpdpbsud_v4si_mask */
    4836        20679 :     case 10554:  /* vpdpbssds_v4si_mask */
    4837        20679 :     case 10553:  /* vpdpbssd_v4si_mask */
    4838        20679 :     case 10552:  /* vpdpbuuds_v8si_mask */
    4839        20679 :     case 10551:  /* vpdpbuud_v8si_mask */
    4840        20679 :     case 10550:  /* vpdpbsuds_v8si_mask */
    4841        20679 :     case 10549:  /* vpdpbsud_v8si_mask */
    4842        20679 :     case 10548:  /* vpdpbssds_v8si_mask */
    4843        20679 :     case 10547:  /* vpdpbssd_v8si_mask */
    4844        20679 :     case 10546:  /* vpdpbuuds_v16si_mask */
    4845        20679 :     case 10545:  /* vpdpbuud_v16si_mask */
    4846        20679 :     case 10544:  /* vpdpbsuds_v16si_mask */
    4847        20679 :     case 10543:  /* vpdpbsud_v16si_mask */
    4848        20679 :     case 10542:  /* vpdpbssds_v16si_mask */
    4849        20679 :     case 10541:  /* vpdpbssd_v16si_mask */
    4850        20679 :     case 10511:  /* avx512f_dpbf16ps_v4sf_mask */
    4851        20679 :     case 10510:  /* avx512f_dpbf16ps_v8sf_mask */
    4852        20679 :     case 10509:  /* avx512f_dpbf16ps_v16sf_mask */
    4853        20679 :     case 10457:  /* vpdpwssds_v4si_mask */
    4854        20679 :     case 10456:  /* vpdpwssds_v8si_mask */
    4855        20679 :     case 10455:  /* vpdpwssds_v16si_mask */
    4856        20679 :     case 10448:  /* vpdpwssd_v4si_mask */
    4857        20679 :     case 10447:  /* vpdpwssd_v8si_mask */
    4858        20679 :     case 10446:  /* vpdpwssd_v16si_mask */
    4859        20679 :     case 10439:  /* vpdpbusds_v4si_mask */
    4860        20679 :     case 10438:  /* vpdpbusds_v8si_mask */
    4861        20679 :     case 10437:  /* vpdpbusds_v16si_mask */
    4862        20679 :     case 10430:  /* vpdpbusd_v4si_mask */
    4863        20679 :     case 10429:  /* vpdpbusd_v8si_mask */
    4864        20679 :     case 10428:  /* vpdpbusd_v16si_mask */
    4865        20679 :     case 10415:  /* vpshldv_v2di_mask */
    4866        20679 :     case 10414:  /* vpshldv_v4si_mask */
    4867        20679 :     case 10413:  /* vpshldv_v8hi_mask */
    4868        20679 :     case 10412:  /* vpshldv_v4di_mask */
    4869        20679 :     case 10411:  /* vpshldv_v8si_mask */
    4870        20679 :     case 10410:  /* vpshldv_v16hi_mask */
    4871        20679 :     case 10409:  /* vpshldv_v8di_mask */
    4872        20679 :     case 10408:  /* vpshldv_v16si_mask */
    4873        20679 :     case 10407:  /* vpshldv_v32hi_mask */
    4874        20679 :     case 10388:  /* vpshrdv_v2di_mask */
    4875        20679 :     case 10387:  /* vpshrdv_v4si_mask */
    4876        20679 :     case 10386:  /* vpshrdv_v8hi_mask */
    4877        20679 :     case 10385:  /* vpshrdv_v4di_mask */
    4878        20679 :     case 10384:  /* vpshrdv_v8si_mask */
    4879        20679 :     case 10383:  /* vpshrdv_v16hi_mask */
    4880        20679 :     case 10382:  /* vpshrdv_v8di_mask */
    4881        20679 :     case 10381:  /* vpshrdv_v16si_mask */
    4882        20679 :     case 10380:  /* vpshrdv_v32hi_mask */
    4883        20679 :     case 10278:  /* vpmadd52huqv2di_mask */
    4884        20679 :     case 10277:  /* vpmadd52luqv2di_mask */
    4885        20679 :     case 10276:  /* vpmadd52huqv4di_mask */
    4886        20679 :     case 10275:  /* vpmadd52luqv4di_mask */
    4887        20679 :     case 10274:  /* vpmadd52huqv8di_mask */
    4888        20679 :     case 10273:  /* vpmadd52luqv8di_mask */
    4889        20679 :     case 4183:  /* avx512vl_fmaddsub_v2df_mask */
    4890        20679 :     case 4181:  /* avx512vl_fmaddsub_v4df_mask */
    4891        20679 :     case 4179:  /* avx512f_fmaddsub_v8df_mask */
    4892        20679 :     case 4177:  /* avx512vl_fmaddsub_v4sf_mask */
    4893        20679 :     case 4175:  /* avx512vl_fmaddsub_v8sf_mask */
    4894        20679 :     case 4173:  /* avx512f_fmaddsub_v16sf_mask */
    4895        20679 :     case 4171:  /* avx512fp16_fmaddsub_v8hf_mask */
    4896        20679 :     case 4169:  /* avx512vl_fmaddsub_v16hf_mask */
    4897        20679 :     case 4167:  /* avx512bw_fmaddsub_v32hf_mask */
    4898        20679 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4899        20679 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    4900        20679 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    4901        20679 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    4902        20679 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    4903        20679 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    4904        20679 :       recog_data.dup_num[0] = 1;
    4905        20679 :       break;
    4906              : 
    4907         2840 :     case 11099:  /* avx10_2_minmaxpv2df_mask_round */
    4908         2840 :     case 11095:  /* avx10_2_minmaxpv4df_mask_round */
    4909         2840 :     case 11091:  /* avx10_2_minmaxpv8df_mask_round */
    4910         2840 :     case 11087:  /* avx10_2_minmaxpv4sf_mask_round */
    4911         2840 :     case 11083:  /* avx10_2_minmaxpv8sf_mask_round */
    4912         2840 :     case 11079:  /* avx10_2_minmaxpv16sf_mask_round */
    4913         2840 :     case 11075:  /* avx10_2_minmaxpv8hf_mask_round */
    4914         2840 :     case 11071:  /* avx10_2_minmaxpv16hf_mask_round */
    4915         2840 :     case 11067:  /* avx10_2_minmaxpv32hf_mask_round */
    4916         2840 :     case 10121:  /* avx512dq_rangepv8df_mask_round */
    4917         2840 :     case 10113:  /* avx512dq_rangepv16sf_mask_round */
    4918         2840 :     case 4162:  /* fma_fmaddsub_v8df_maskz_1_round */
    4919         2840 :     case 4154:  /* fma_fmaddsub_v16sf_maskz_1_round */
    4920         2840 :     case 4146:  /* fma_fmaddsub_v32hf_maskz_1_round */
    4921         2840 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    4922         2840 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    4923         2840 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    4924         2840 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    4925         2840 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    4926         2840 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    4927         2840 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    4928         2840 :       break;
    4929              : 
    4930        44743 :     case 11098:  /* avx10_2_minmaxpv2df_mask */
    4931        44743 :     case 11094:  /* avx10_2_minmaxpv4df_mask */
    4932        44743 :     case 11090:  /* avx10_2_minmaxpv8df_mask */
    4933        44743 :     case 11086:  /* avx10_2_minmaxpv4sf_mask */
    4934        44743 :     case 11082:  /* avx10_2_minmaxpv8sf_mask */
    4935        44743 :     case 11078:  /* avx10_2_minmaxpv16sf_mask */
    4936        44743 :     case 11074:  /* avx10_2_minmaxpv8hf_mask */
    4937        44743 :     case 11070:  /* avx10_2_minmaxpv16hf_mask */
    4938        44743 :     case 11066:  /* avx10_2_minmaxpv32hf_mask */
    4939        44743 :     case 11063:  /* avx10_2_minmaxbf16_v8bf_mask */
    4940        44743 :     case 11061:  /* avx10_2_minmaxbf16_v16bf_mask */
    4941        44743 :     case 11059:  /* avx10_2_minmaxbf16_v32bf_mask */
    4942        44743 :     case 10737:  /* vdpphps_v4sf_maskz_1 */
    4943        44743 :     case 10736:  /* vdpphps_v8sf_maskz_1 */
    4944        44743 :     case 10735:  /* vdpphps_v16sf_maskz_1 */
    4945        44743 :     case 10508:  /* avx512f_dpbf16ps_v4sf_maskz_1 */
    4946        44743 :     case 10506:  /* avx512f_dpbf16ps_v8sf_maskz_1 */
    4947        44743 :     case 10504:  /* avx512f_dpbf16ps_v16sf_maskz_1 */
    4948        44743 :     case 10460:  /* vpdpwssds_v4si_maskz_1 */
    4949        44743 :     case 10459:  /* vpdpwssds_v8si_maskz_1 */
    4950        44743 :     case 10458:  /* vpdpwssds_v16si_maskz_1 */
    4951        44743 :     case 10451:  /* vpdpwssd_v4si_maskz_1 */
    4952        44743 :     case 10450:  /* vpdpwssd_v8si_maskz_1 */
    4953        44743 :     case 10449:  /* vpdpwssd_v16si_maskz_1 */
    4954        44743 :     case 10442:  /* vpdpbusds_v4si_maskz_1 */
    4955        44743 :     case 10441:  /* vpdpbusds_v8si_maskz_1 */
    4956        44743 :     case 10440:  /* vpdpbusds_v16si_maskz_1 */
    4957        44743 :     case 10433:  /* vpdpbusd_v4si_maskz_1 */
    4958        44743 :     case 10432:  /* vpdpbusd_v8si_maskz_1 */
    4959        44743 :     case 10431:  /* vpdpbusd_v16si_maskz_1 */
    4960        44743 :     case 10424:  /* vpshldv_v2di_maskz_1 */
    4961        44743 :     case 10423:  /* vpshldv_v4si_maskz_1 */
    4962        44743 :     case 10422:  /* vpshldv_v8hi_maskz_1 */
    4963        44743 :     case 10421:  /* vpshldv_v4di_maskz_1 */
    4964        44743 :     case 10420:  /* vpshldv_v8si_maskz_1 */
    4965        44743 :     case 10419:  /* vpshldv_v16hi_maskz_1 */
    4966        44743 :     case 10418:  /* vpshldv_v8di_maskz_1 */
    4967        44743 :     case 10417:  /* vpshldv_v16si_maskz_1 */
    4968        44743 :     case 10416:  /* vpshldv_v32hi_maskz_1 */
    4969        44743 :     case 10397:  /* vpshrdv_v2di_maskz_1 */
    4970        44743 :     case 10396:  /* vpshrdv_v4si_maskz_1 */
    4971        44743 :     case 10395:  /* vpshrdv_v8hi_maskz_1 */
    4972        44743 :     case 10394:  /* vpshrdv_v4di_maskz_1 */
    4973        44743 :     case 10393:  /* vpshrdv_v8si_maskz_1 */
    4974        44743 :     case 10392:  /* vpshrdv_v16hi_maskz_1 */
    4975        44743 :     case 10391:  /* vpshrdv_v8di_maskz_1 */
    4976        44743 :     case 10390:  /* vpshrdv_v16si_maskz_1 */
    4977        44743 :     case 10389:  /* vpshrdv_v32hi_maskz_1 */
    4978        44743 :     case 10370:  /* vpshld_v2di_mask */
    4979        44743 :     case 10368:  /* vpshld_v4si_mask */
    4980        44743 :     case 10366:  /* vpshld_v8hi_mask */
    4981        44743 :     case 10364:  /* vpshld_v4di_mask */
    4982        44743 :     case 10362:  /* vpshld_v8si_mask */
    4983        44743 :     case 10360:  /* vpshld_v16hi_mask */
    4984        44743 :     case 10358:  /* vpshld_v8di_mask */
    4985        44743 :     case 10356:  /* vpshld_v16si_mask */
    4986        44743 :     case 10354:  /* vpshld_v32hi_mask */
    4987        44743 :     case 10352:  /* vpshrd_v2di_mask */
    4988        44743 :     case 10350:  /* vpshrd_v4si_mask */
    4989        44743 :     case 10348:  /* vpshrd_v8hi_mask */
    4990        44743 :     case 10346:  /* vpshrd_v4di_mask */
    4991        44743 :     case 10344:  /* vpshrd_v8si_mask */
    4992        44743 :     case 10342:  /* vpshrd_v16hi_mask */
    4993        44743 :     case 10340:  /* vpshrd_v8di_mask */
    4994        44743 :     case 10338:  /* vpshrd_v16si_mask */
    4995        44743 :     case 10336:  /* vpshrd_v32hi_mask */
    4996        44743 :     case 10328:  /* vgf2p8affineqb_v16qi_mask */
    4997        44743 :     case 10326:  /* vgf2p8affineqb_v32qi_mask */
    4998        44743 :     case 10324:  /* vgf2p8affineqb_v64qi_mask */
    4999        44743 :     case 10322:  /* vgf2p8affineinvqb_v16qi_mask */
    5000        44743 :     case 10320:  /* vgf2p8affineinvqb_v32qi_mask */
    5001        44743 :     case 10318:  /* vgf2p8affineinvqb_v64qi_mask */
    5002        44743 :     case 10272:  /* vpmadd52huqv2di_maskz_1 */
    5003        44743 :     case 10271:  /* vpmadd52luqv2di_maskz_1 */
    5004        44743 :     case 10270:  /* vpmadd52huqv4di_maskz_1 */
    5005        44743 :     case 10269:  /* vpmadd52luqv4di_maskz_1 */
    5006        44743 :     case 10268:  /* vpmadd52huqv8di_maskz_1 */
    5007        44743 :     case 10267:  /* vpmadd52luqv8di_maskz_1 */
    5008        44743 :     case 10211:  /* avx512bw_dbpsadbwv32hi_mask */
    5009        44743 :     case 10209:  /* avx512bw_dbpsadbwv16hi_mask */
    5010        44743 :     case 10207:  /* avx512bw_dbpsadbwv8hi_mask */
    5011        44743 :     case 10125:  /* avx512dq_rangepv2df_mask */
    5012        44743 :     case 10123:  /* avx512dq_rangepv4df_mask */
    5013        44743 :     case 10120:  /* avx512dq_rangepv8df_mask */
    5014        44743 :     case 10117:  /* avx512dq_rangepv4sf_mask */
    5015        44743 :     case 10115:  /* avx512dq_rangepv8sf_mask */
    5016        44743 :     case 10112:  /* avx512dq_rangepv16sf_mask */
    5017        44743 :     case 9581:  /* avx512vl_vpermt2varv8bf3_maskz_1 */
    5018        44743 :     case 9579:  /* avx512vl_vpermt2varv16bf3_maskz_1 */
    5019        44743 :     case 9577:  /* avx512bw_vpermt2varv32bf3_maskz_1 */
    5020        44743 :     case 9575:  /* avx512fp16_vpermt2varv8hf3_maskz_1 */
    5021        44743 :     case 9573:  /* avx512vl_vpermt2varv16hf3_maskz_1 */
    5022        44743 :     case 9571:  /* avx512bw_vpermt2varv32hf3_maskz_1 */
    5023        44743 :     case 9569:  /* avx512vl_vpermt2varv16qi3_maskz_1 */
    5024        44743 :     case 9567:  /* avx512vl_vpermt2varv32qi3_maskz_1 */
    5025        44743 :     case 9565:  /* avx512bw_vpermt2varv64qi3_maskz_1 */
    5026        44743 :     case 9563:  /* avx512vl_vpermt2varv8hi3_maskz_1 */
    5027        44743 :     case 9561:  /* avx512vl_vpermt2varv16hi3_maskz_1 */
    5028        44743 :     case 9559:  /* avx512bw_vpermt2varv32hi3_maskz_1 */
    5029        44743 :     case 9557:  /* avx512vl_vpermt2varv2df3_maskz_1 */
    5030        44743 :     case 9555:  /* avx512vl_vpermt2varv2di3_maskz_1 */
    5031        44743 :     case 9553:  /* avx512vl_vpermt2varv4sf3_maskz_1 */
    5032        44743 :     case 9551:  /* avx512vl_vpermt2varv4si3_maskz_1 */
    5033        44743 :     case 9549:  /* avx512vl_vpermt2varv4df3_maskz_1 */
    5034        44743 :     case 9547:  /* avx512vl_vpermt2varv4di3_maskz_1 */
    5035        44743 :     case 9545:  /* avx512vl_vpermt2varv8sf3_maskz_1 */
    5036        44743 :     case 9543:  /* avx512vl_vpermt2varv8si3_maskz_1 */
    5037        44743 :     case 9541:  /* avx512f_vpermt2varv8df3_maskz_1 */
    5038        44743 :     case 9539:  /* avx512f_vpermt2varv8di3_maskz_1 */
    5039        44743 :     case 9537:  /* avx512f_vpermt2varv16sf3_maskz_1 */
    5040        44743 :     case 9535:  /* avx512f_vpermt2varv16si3_maskz_1 */
    5041        44743 :     case 8850:  /* sse4_1_mpsadbw_mask */
    5042        44743 :     case 8848:  /* avx2_mpsadbw_mask */
    5043        44743 :     case 8846:  /* avx10_2_mpsadbw_mask */
    5044        44743 :     case 8765:  /* ssse3_palignrv16qi_mask */
    5045        44743 :     case 8764:  /* avx2_palignrv32qi_mask */
    5046        44743 :     case 8763:  /* avx512bw_palignrv64qi_mask */
    5047        44743 :     case 7168:  /* avx512vl_alignv2di_mask */
    5048        44743 :     case 7166:  /* avx512vl_alignv4di_mask */
    5049        44743 :     case 7164:  /* avx512f_alignv8di_mask */
    5050        44743 :     case 7162:  /* avx512vl_alignv4si_mask */
    5051        44743 :     case 7160:  /* avx512vl_alignv8si_mask */
    5052        44743 :     case 7158:  /* avx512f_alignv16si_mask */
    5053        44743 :     case 4166:  /* fma_fmaddsub_v2df_maskz_1 */
    5054        44743 :     case 4164:  /* fma_fmaddsub_v4df_maskz_1 */
    5055        44743 :     case 4160:  /* fma_fmaddsub_v8df_maskz_1 */
    5056        44743 :     case 4158:  /* fma_fmaddsub_v4sf_maskz_1 */
    5057        44743 :     case 4156:  /* fma_fmaddsub_v8sf_maskz_1 */
    5058        44743 :     case 4152:  /* fma_fmaddsub_v16sf_maskz_1 */
    5059        44743 :     case 4150:  /* fma_fmaddsub_v8hf_maskz_1 */
    5060        44743 :     case 4148:  /* fma_fmaddsub_v16hf_maskz_1 */
    5061        44743 :     case 4144:  /* fma_fmaddsub_v32hf_maskz_1 */
    5062        44743 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5063        44743 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    5064        44743 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    5065        44743 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    5066        44743 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    5067        44743 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    5068        44743 :       break;
    5069              : 
    5070         1213 :     case 4138:  /* avx512vl_fnmsub_v2df_mask3_round */
    5071         1213 :     case 4136:  /* avx512vl_fnmsub_v4df_mask3_round */
    5072         1213 :     case 4134:  /* avx512f_fnmsub_v8df_mask3_round */
    5073         1213 :     case 4132:  /* avx512vl_fnmsub_v4sf_mask3_round */
    5074         1213 :     case 4130:  /* avx512vl_fnmsub_v8sf_mask3_round */
    5075         1213 :     case 4128:  /* avx512f_fnmsub_v16sf_mask3_round */
    5076         1213 :     case 4126:  /* avx512fp16_fnmsub_v8hf_mask3_round */
    5077         1213 :     case 4124:  /* avx512vl_fnmsub_v16hf_mask3_round */
    5078         1213 :     case 4122:  /* avx512bw_fnmsub_v32hf_mask3_round */
    5079         1213 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5080         1213 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    5081         1213 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5082         1213 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    5083         1213 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5084         1213 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5085         1213 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5086         1213 :       recog_data.dup_num[0] = 3;
    5087         1213 :       break;
    5088              : 
    5089         3146 :     case 10827:  /* avx10_2_fnmsubbf16_v8bf_mask3 */
    5090         3146 :     case 10826:  /* avx10_2_fnmsubbf16_v16bf_mask3 */
    5091         3146 :     case 10825:  /* avx10_2_fnmsubbf16_v32bf_mask3 */
    5092         3146 :     case 4137:  /* avx512vl_fnmsub_v2df_mask3 */
    5093         3146 :     case 4135:  /* avx512vl_fnmsub_v4df_mask3 */
    5094         3146 :     case 4133:  /* avx512f_fnmsub_v8df_mask3 */
    5095         3146 :     case 4131:  /* avx512vl_fnmsub_v4sf_mask3 */
    5096         3146 :     case 4129:  /* avx512vl_fnmsub_v8sf_mask3 */
    5097         3146 :     case 4127:  /* avx512f_fnmsub_v16sf_mask3 */
    5098         3146 :     case 4125:  /* avx512fp16_fnmsub_v8hf_mask3 */
    5099         3146 :     case 4123:  /* avx512vl_fnmsub_v16hf_mask3 */
    5100         3146 :     case 4121:  /* avx512bw_fnmsub_v32hf_mask3 */
    5101         3146 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5102         3146 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5103         3146 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5104         3146 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    5105         3146 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5106         3146 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5107         3146 :       recog_data.dup_num[0] = 3;
    5108         3146 :       break;
    5109              : 
    5110         1373 :     case 4118:  /* avx512f_fnmsub_v8df_mask_round */
    5111         1373 :     case 4114:  /* avx512f_fnmsub_v16sf_mask_round */
    5112         1373 :     case 4110:  /* avx512bw_fnmsub_v32hf_mask_round */
    5113         1373 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5114         1373 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    5115         1373 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5116         1373 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    5117         1373 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5118         1373 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5119         1373 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5120         1373 :       recog_data.dup_num[0] = 1;
    5121         1373 :       break;
    5122              : 
    5123         3588 :     case 10824:  /* avx10_2_fnmsubbf16_v8bf_mask */
    5124         3588 :     case 10823:  /* avx10_2_fnmsubbf16_v16bf_mask */
    5125         3588 :     case 10822:  /* avx10_2_fnmsubbf16_v32bf_mask */
    5126         3588 :     case 4120:  /* avx512vl_fnmsub_v2df_mask */
    5127         3588 :     case 4119:  /* avx512vl_fnmsub_v4df_mask */
    5128         3588 :     case 4117:  /* avx512f_fnmsub_v8df_mask */
    5129         3588 :     case 4116:  /* avx512vl_fnmsub_v4sf_mask */
    5130         3588 :     case 4115:  /* avx512vl_fnmsub_v8sf_mask */
    5131         3588 :     case 4113:  /* avx512f_fnmsub_v16sf_mask */
    5132         3588 :     case 4112:  /* avx512fp16_fnmsub_v8hf_mask */
    5133         3588 :     case 4111:  /* avx512vl_fnmsub_v16hf_mask */
    5134         3588 :     case 4109:  /* avx512bw_fnmsub_v32hf_mask */
    5135         3588 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5136         3588 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5137         3588 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5138         3588 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    5139         3588 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5140         3588 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5141         3588 :       recog_data.dup_num[0] = 1;
    5142         3588 :       break;
    5143              : 
    5144         1150 :     case 4104:  /* fma_fnmsub_v8df_maskz_1_round */
    5145         1150 :     case 4095:  /* fma_fnmsub_v16sf_maskz_1_round */
    5146         1150 :     case 4085:  /* fma_fnmsub_v32hf_maskz_1_round */
    5147         1150 :     case 4081:  /* *fma_fnmsub_v4df */
    5148         1150 :     case 4077:  /* *fma_fnmsub_v8sf */
    5149         1150 :     case 4073:  /* *fma_fnmsub_v2df */
    5150         1150 :     case 4069:  /* *fma_fnmsub_v4sf */
    5151         1150 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5152         1150 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    5153         1150 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5154         1150 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    5155         1150 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5156         1150 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5157         1150 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5158         1150 :       break;
    5159              : 
    5160         3392 :     case 10821:  /* avx10_2_fnmsubbf16_v8bf_maskz_1 */
    5161         3392 :     case 10819:  /* avx10_2_fnmsubbf16_v16bf_maskz_1 */
    5162         3392 :     case 10817:  /* avx10_2_fnmsubbf16_v32bf_maskz_1 */
    5163         3392 :     case 4108:  /* fma_fnmsub_v2df_maskz_1 */
    5164         3392 :     case 4106:  /* fma_fnmsub_v4df_maskz_1 */
    5165         3392 :     case 4102:  /* fma_fnmsub_v8df_maskz_1 */
    5166         3392 :     case 4099:  /* fma_fnmsub_v4sf_maskz_1 */
    5167         3392 :     case 4097:  /* fma_fnmsub_v8sf_maskz_1 */
    5168         3392 :     case 4093:  /* fma_fnmsub_v16sf_maskz_1 */
    5169         3392 :     case 4089:  /* fma_fnmsub_v8hf_maskz_1 */
    5170         3392 :     case 4087:  /* fma_fnmsub_v16hf_maskz_1 */
    5171         3392 :     case 4083:  /* fma_fnmsub_v32hf_maskz_1 */
    5172         3392 :     case 4079:  /* *fma_fnmsub_v4df */
    5173         3392 :     case 4075:  /* *fma_fnmsub_v8sf */
    5174         3392 :     case 4071:  /* *fma_fnmsub_v2df */
    5175         3392 :     case 4067:  /* *fma_fnmsub_v4sf */
    5176         3392 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5177         3392 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5178         3392 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5179         3392 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    5180         3392 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    5181         3392 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    5182         3392 :       break;
    5183              : 
    5184          764 :     case 4103:  /* *fma_fnmsub_v8df_round */
    5185          764 :     case 4094:  /* *fma_fnmsub_v16sf_round */
    5186          764 :     case 4084:  /* *fma_fnmsub_v32hf_round */
    5187          764 :     case 4080:  /* *fma_fnmsub_v4df */
    5188          764 :     case 4076:  /* *fma_fnmsub_v8sf */
    5189          764 :     case 4072:  /* *fma_fnmsub_v2df */
    5190          764 :     case 4068:  /* *fma_fnmsub_v4sf */
    5191          764 :     case 4065:  /* *fma_fnmsub_df */
    5192          764 :     case 4063:  /* *fma_fnmsub_sf */
    5193          764 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5194          764 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5195          764 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5196          764 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0));
    5197          764 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5198          764 :       break;
    5199              : 
    5200        20476 :     case 10820:  /* avx10_2_fnmsubbf16_v8bf */
    5201        20476 :     case 10818:  /* avx10_2_fnmsubbf16_v16bf */
    5202        20476 :     case 10816:  /* avx10_2_fnmsubbf16_v32bf */
    5203        20476 :     case 4107:  /* *fma_fnmsub_v2df */
    5204        20476 :     case 4105:  /* *fma_fnmsub_v4df */
    5205        20476 :     case 4101:  /* *fma_fnmsub_v8df */
    5206        20476 :     case 4100:  /* *fma_fnmsub_df */
    5207        20476 :     case 4098:  /* *fma_fnmsub_v4sf */
    5208        20476 :     case 4096:  /* *fma_fnmsub_v8sf */
    5209        20476 :     case 4092:  /* *fma_fnmsub_v16sf */
    5210        20476 :     case 4091:  /* *fma_fnmsub_sf */
    5211        20476 :     case 4090:  /* *fma_fnmsub_hf */
    5212        20476 :     case 4088:  /* *fma_fnmsub_v8hf */
    5213        20476 :     case 4086:  /* *fma_fnmsub_v16hf */
    5214        20476 :     case 4082:  /* *fma_fnmsub_v32hf */
    5215        20476 :     case 4078:  /* *fma_fnmsub_v4df */
    5216        20476 :     case 4074:  /* *fma_fnmsub_v8sf */
    5217        20476 :     case 4070:  /* *fma_fnmsub_v2df */
    5218        20476 :     case 4066:  /* *fma_fnmsub_v4sf */
    5219        20476 :     case 4064:  /* *fma_fnmsub_df */
    5220        20476 :     case 4062:  /* *fma_fnmsub_sf */
    5221        20476 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5222        20476 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5223        20476 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    5224        20476 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 2), 0));
    5225        20476 :       break;
    5226              : 
    5227         1213 :     case 4059:  /* avx512f_fnmadd_v8df_mask3_round */
    5228         1213 :     case 4055:  /* avx512f_fnmadd_v16sf_mask3_round */
    5229         1213 :     case 4051:  /* avx512bw_fnmadd_v32hf_mask3_round */
    5230         1213 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5231         1213 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    5232         1213 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5233         1213 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    5234         1213 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5235         1213 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5236         1213 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5237         1213 :       recog_data.dup_num[0] = 3;
    5238         1213 :       break;
    5239              : 
    5240         3146 :     case 10803:  /* avx10_2_fnmaddbf16_v8bf_mask3 */
    5241         3146 :     case 10802:  /* avx10_2_fnmaddbf16_v16bf_mask3 */
    5242         3146 :     case 10801:  /* avx10_2_fnmaddbf16_v32bf_mask3 */
    5243         3146 :     case 4061:  /* avx512vl_fnmadd_v2df_mask3 */
    5244         3146 :     case 4060:  /* avx512vl_fnmadd_v4df_mask3 */
    5245         3146 :     case 4058:  /* avx512f_fnmadd_v8df_mask3 */
    5246         3146 :     case 4057:  /* avx512vl_fnmadd_v4sf_mask3 */
    5247         3146 :     case 4056:  /* avx512vl_fnmadd_v8sf_mask3 */
    5248         3146 :     case 4054:  /* avx512f_fnmadd_v16sf_mask3 */
    5249         3146 :     case 4053:  /* avx512fp16_fnmadd_v8hf_mask3 */
    5250         3146 :     case 4052:  /* avx512vl_fnmadd_v16hf_mask3 */
    5251         3146 :     case 4050:  /* avx512bw_fnmadd_v32hf_mask3 */
    5252         3146 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5253         3146 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5254         3146 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5255         3146 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    5256         3146 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5257         3146 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5258         3146 :       recog_data.dup_num[0] = 3;
    5259         3146 :       break;
    5260              : 
    5261         1373 :     case 4047:  /* avx512f_fnmadd_v8df_mask_round */
    5262         1373 :     case 4043:  /* avx512f_fnmadd_v16sf_mask_round */
    5263         1373 :     case 4039:  /* avx512bw_fnmadd_v32hf_mask_round */
    5264         1373 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5265         1373 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    5266         1373 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5267         1373 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    5268         1373 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5269         1373 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5270         1373 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5271         1373 :       recog_data.dup_num[0] = 1;
    5272         1373 :       break;
    5273              : 
    5274         3590 :     case 10800:  /* avx10_2_fnmaddbf16_v8bf_mask */
    5275         3590 :     case 10799:  /* avx10_2_fnmaddbf16_v16bf_mask */
    5276         3590 :     case 10798:  /* avx10_2_fnmaddbf16_v32bf_mask */
    5277         3590 :     case 4049:  /* avx512vl_fnmadd_v2df_mask */
    5278         3590 :     case 4048:  /* avx512vl_fnmadd_v4df_mask */
    5279         3590 :     case 4046:  /* avx512f_fnmadd_v8df_mask */
    5280         3590 :     case 4045:  /* avx512vl_fnmadd_v4sf_mask */
    5281         3590 :     case 4044:  /* avx512vl_fnmadd_v8sf_mask */
    5282         3590 :     case 4042:  /* avx512f_fnmadd_v16sf_mask */
    5283         3590 :     case 4041:  /* avx512fp16_fnmadd_v8hf_mask */
    5284         3590 :     case 4040:  /* avx512vl_fnmadd_v16hf_mask */
    5285         3590 :     case 4038:  /* avx512bw_fnmadd_v32hf_mask */
    5286         3590 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5287         3590 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5288         3590 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5289         3590 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    5290         3590 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5291         3590 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5292         3590 :       recog_data.dup_num[0] = 1;
    5293         3590 :       break;
    5294              : 
    5295         1150 :     case 4033:  /* fma_fnmadd_v8df_maskz_1_round */
    5296         1150 :     case 4024:  /* fma_fnmadd_v16sf_maskz_1_round */
    5297         1150 :     case 4014:  /* fma_fnmadd_v32hf_maskz_1_round */
    5298         1150 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5299         1150 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    5300         1150 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5301         1150 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    5302         1150 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5303         1150 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5304         1150 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5305         1150 :       break;
    5306              : 
    5307         3437 :     case 10797:  /* avx10_2_fnmaddbf16_v8bf_maskz_1 */
    5308         3437 :     case 10795:  /* avx10_2_fnmaddbf16_v16bf_maskz_1 */
    5309         3437 :     case 10793:  /* avx10_2_fnmaddbf16_v32bf_maskz_1 */
    5310         3437 :     case 4037:  /* fma_fnmadd_v2df_maskz_1 */
    5311         3437 :     case 4035:  /* fma_fnmadd_v4df_maskz_1 */
    5312         3437 :     case 4031:  /* fma_fnmadd_v8df_maskz_1 */
    5313         3437 :     case 4028:  /* fma_fnmadd_v4sf_maskz_1 */
    5314         3437 :     case 4026:  /* fma_fnmadd_v8sf_maskz_1 */
    5315         3437 :     case 4022:  /* fma_fnmadd_v16sf_maskz_1 */
    5316         3437 :     case 4018:  /* fma_fnmadd_v8hf_maskz_1 */
    5317         3437 :     case 4016:  /* fma_fnmadd_v16hf_maskz_1 */
    5318         3437 :     case 4012:  /* fma_fnmadd_v32hf_maskz_1 */
    5319         3437 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5320         3437 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5321         3437 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5322         3437 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    5323         3437 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    5324         3437 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    5325         3437 :       break;
    5326              : 
    5327         1213 :     case 4002:  /* avx512f_fmsub_v8df_mask3_round */
    5328         1213 :     case 3998:  /* avx512f_fmsub_v16sf_mask3_round */
    5329         1213 :     case 3994:  /* avx512bw_fmsub_v32hf_mask3_round */
    5330         1213 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5331         1213 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5332         1213 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5333         1213 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    5334         1213 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5335         1213 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5336         1213 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5337         1213 :       recog_data.dup_num[0] = 3;
    5338         1213 :       break;
    5339              : 
    5340         3148 :     case 10815:  /* avx10_2_fmsubbf16_v8bf_mask3 */
    5341         3148 :     case 10814:  /* avx10_2_fmsubbf16_v16bf_mask3 */
    5342         3148 :     case 10813:  /* avx10_2_fmsubbf16_v32bf_mask3 */
    5343         3148 :     case 4004:  /* avx512vl_fmsub_v2df_mask3 */
    5344         3148 :     case 4003:  /* avx512vl_fmsub_v4df_mask3 */
    5345         3148 :     case 4001:  /* avx512f_fmsub_v8df_mask3 */
    5346         3148 :     case 4000:  /* avx512vl_fmsub_v4sf_mask3 */
    5347         3148 :     case 3999:  /* avx512vl_fmsub_v8sf_mask3 */
    5348         3148 :     case 3997:  /* avx512f_fmsub_v16sf_mask3 */
    5349         3148 :     case 3996:  /* avx512fp16_fmsub_v8hf_mask3 */
    5350         3148 :     case 3995:  /* avx512vl_fmsub_v16hf_mask3 */
    5351         3148 :     case 3993:  /* avx512bw_fmsub_v32hf_mask3 */
    5352         3148 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5353         3148 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5354         3148 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5355         3148 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    5356         3148 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5357         3148 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5358         3148 :       recog_data.dup_num[0] = 3;
    5359         3148 :       break;
    5360              : 
    5361         1373 :     case 3992:  /* avx512vl_fmsub_v2df_mask_round */
    5362         1373 :     case 3990:  /* avx512vl_fmsub_v4df_mask_round */
    5363         1373 :     case 3988:  /* avx512f_fmsub_v8df_mask_round */
    5364         1373 :     case 3986:  /* avx512vl_fmsub_v4sf_mask_round */
    5365         1373 :     case 3984:  /* avx512vl_fmsub_v8sf_mask_round */
    5366         1373 :     case 3982:  /* avx512f_fmsub_v16sf_mask_round */
    5367         1373 :     case 3980:  /* avx512fp16_fmsub_v8hf_mask_round */
    5368         1373 :     case 3978:  /* avx512vl_fmsub_v16hf_mask_round */
    5369         1373 :     case 3976:  /* avx512bw_fmsub_v32hf_mask_round */
    5370         1373 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5371         1373 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5372         1373 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5373         1373 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    5374         1373 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5375         1373 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5376         1373 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5377         1373 :       recog_data.dup_num[0] = 1;
    5378         1373 :       break;
    5379              : 
    5380         3590 :     case 10812:  /* avx10_2_fmsubbf16_v8bf_mask */
    5381         3590 :     case 10811:  /* avx10_2_fmsubbf16_v16bf_mask */
    5382         3590 :     case 10810:  /* avx10_2_fmsubbf16_v32bf_mask */
    5383         3590 :     case 3991:  /* avx512vl_fmsub_v2df_mask */
    5384         3590 :     case 3989:  /* avx512vl_fmsub_v4df_mask */
    5385         3590 :     case 3987:  /* avx512f_fmsub_v8df_mask */
    5386         3590 :     case 3985:  /* avx512vl_fmsub_v4sf_mask */
    5387         3590 :     case 3983:  /* avx512vl_fmsub_v8sf_mask */
    5388         3590 :     case 3981:  /* avx512f_fmsub_v16sf_mask */
    5389         3590 :     case 3979:  /* avx512fp16_fmsub_v8hf_mask */
    5390         3590 :     case 3977:  /* avx512vl_fmsub_v16hf_mask */
    5391         3590 :     case 3975:  /* avx512bw_fmsub_v32hf_mask */
    5392         3590 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5393         3590 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5394         3590 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5395         3590 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    5396         3590 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5397         3590 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5398         3590 :       recog_data.dup_num[0] = 1;
    5399         3590 :       break;
    5400              : 
    5401         1150 :     case 3970:  /* fma_fmsub_v8df_maskz_1_round */
    5402         1150 :     case 3961:  /* fma_fmsub_v16sf_maskz_1_round */
    5403         1150 :     case 3951:  /* fma_fmsub_v32hf_maskz_1_round */
    5404         1150 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5405         1150 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5406         1150 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5407         1150 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2), 0));
    5408         1150 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5409         1150 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5410         1150 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5411         1150 :       break;
    5412              : 
    5413          764 :     case 3969:  /* *fma_fmsub_v8df_round */
    5414          764 :     case 3960:  /* *fma_fmsub_v16sf_round */
    5415          764 :     case 3950:  /* *fma_fmsub_v32hf_round */
    5416          764 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5417          764 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    5418          764 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5419          764 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2), 0));
    5420          764 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5421          764 :       break;
    5422              : 
    5423         3476 :     case 10809:  /* avx10_2_fmsubbf16_v8bf_maskz_1 */
    5424         3476 :     case 10807:  /* avx10_2_fmsubbf16_v16bf_maskz_1 */
    5425         3476 :     case 10805:  /* avx10_2_fmsubbf16_v32bf_maskz_1 */
    5426         3476 :     case 3974:  /* fma_fmsub_v2df_maskz_1 */
    5427         3476 :     case 3972:  /* fma_fmsub_v4df_maskz_1 */
    5428         3476 :     case 3968:  /* fma_fmsub_v8df_maskz_1 */
    5429         3476 :     case 3965:  /* fma_fmsub_v4sf_maskz_1 */
    5430         3476 :     case 3963:  /* fma_fmsub_v8sf_maskz_1 */
    5431         3476 :     case 3959:  /* fma_fmsub_v16sf_maskz_1 */
    5432         3476 :     case 3955:  /* fma_fmsub_v8hf_maskz_1 */
    5433         3476 :     case 3953:  /* fma_fmsub_v16hf_maskz_1 */
    5434         3476 :     case 3949:  /* fma_fmsub_v32hf_maskz_1 */
    5435         3476 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5436         3476 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5437         3476 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5438         3476 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 2), 0));
    5439         3476 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    5440         3476 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    5441         3476 :       break;
    5442              : 
    5443        52475 :     case 10808:  /* avx10_2_fmsubbf16_v8bf */
    5444        52475 :     case 10806:  /* avx10_2_fmsubbf16_v16bf */
    5445        52475 :     case 10804:  /* avx10_2_fmsubbf16_v32bf */
    5446        52475 :     case 3973:  /* *fma_fmsub_v2df */
    5447        52475 :     case 3971:  /* *fma_fmsub_v4df */
    5448        52475 :     case 3967:  /* *fma_fmsub_v8df */
    5449        52475 :     case 3966:  /* *fma_fmsub_df */
    5450        52475 :     case 3964:  /* *fma_fmsub_v4sf */
    5451        52475 :     case 3962:  /* *fma_fmsub_v8sf */
    5452        52475 :     case 3958:  /* *fma_fmsub_v16sf */
    5453        52475 :     case 3957:  /* *fma_fmsub_sf */
    5454        52475 :     case 3956:  /* *fma_fmsub_hf */
    5455        52475 :     case 3954:  /* *fma_fmsub_v8hf */
    5456        52475 :     case 3952:  /* *fma_fmsub_v16hf */
    5457        52475 :     case 3948:  /* *fma_fmsub_v32hf */
    5458        52475 :     case 3947:  /* *fma_fmsub_v4df */
    5459        52475 :     case 3946:  /* *fma_fmsub_v8sf */
    5460        52475 :     case 3945:  /* *fma_fmsub_v2df */
    5461        52475 :     case 3944:  /* *fma_fmsub_v4sf */
    5462        52475 :     case 3943:  /* *fma_fmsub_df */
    5463        52475 :     case 3942:  /* *fma_fmsub_sf */
    5464        52475 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5465        52475 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    5466        52475 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    5467        52475 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 2), 0));
    5468        52475 :       break;
    5469              : 
    5470         1269 :     case 3941:  /* avx512vl_fmadd_v2df_mask3_round */
    5471         1269 :     case 3939:  /* avx512vl_fmadd_v4df_mask3_round */
    5472         1269 :     case 3937:  /* avx512f_fmadd_v8df_mask3_round */
    5473         1269 :     case 3935:  /* avx512vl_fmadd_v4sf_mask3_round */
    5474         1269 :     case 3933:  /* avx512vl_fmadd_v8sf_mask3_round */
    5475         1269 :     case 3931:  /* avx512f_fmadd_v16sf_mask3_round */
    5476         1269 :     case 3929:  /* avx512fp16_fmadd_v8hf_mask3_round */
    5477         1269 :     case 3927:  /* avx512vl_fmadd_v16hf_mask3_round */
    5478         1269 :     case 3925:  /* avx512bw_fmadd_v32hf_mask3_round */
    5479         1269 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5480         1269 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5481         1269 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5482         1269 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    5483         1269 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5484         1269 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5485         1269 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5486         1269 :       recog_data.dup_num[0] = 3;
    5487         1269 :       break;
    5488              : 
    5489         3348 :     case 10791:  /* avx10_2_fmaddbf16_v8bf_mask3 */
    5490         3348 :     case 10790:  /* avx10_2_fmaddbf16_v16bf_mask3 */
    5491         3348 :     case 10789:  /* avx10_2_fmaddbf16_v32bf_mask3 */
    5492         3348 :     case 3940:  /* avx512vl_fmadd_v2df_mask3 */
    5493         3348 :     case 3938:  /* avx512vl_fmadd_v4df_mask3 */
    5494         3348 :     case 3936:  /* avx512f_fmadd_v8df_mask3 */
    5495         3348 :     case 3934:  /* avx512vl_fmadd_v4sf_mask3 */
    5496         3348 :     case 3932:  /* avx512vl_fmadd_v8sf_mask3 */
    5497         3348 :     case 3930:  /* avx512f_fmadd_v16sf_mask3 */
    5498         3348 :     case 3928:  /* avx512fp16_fmadd_v8hf_mask3 */
    5499         3348 :     case 3926:  /* avx512vl_fmadd_v16hf_mask3 */
    5500         3348 :     case 3924:  /* avx512bw_fmadd_v32hf_mask3 */
    5501         3348 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5502         3348 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5503         3348 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5504         3348 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    5505         3348 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5506         3348 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5507         3348 :       recog_data.dup_num[0] = 3;
    5508         3348 :       break;
    5509              : 
    5510         1373 :     case 3921:  /* avx512f_fmadd_v8df_mask_round */
    5511         1373 :     case 3917:  /* avx512f_fmadd_v16sf_mask_round */
    5512         1373 :     case 3913:  /* avx512bw_fmadd_v32hf_mask_round */
    5513         1373 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5514         1373 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5515         1373 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5516         1373 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    5517         1373 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5518         1373 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5519         1373 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    5520         1373 :       recog_data.dup_num[0] = 1;
    5521         1373 :       break;
    5522              : 
    5523         3608 :     case 10788:  /* avx10_2_fmaddbf16_v8bf_mask */
    5524         3608 :     case 10787:  /* avx10_2_fmaddbf16_v16bf_mask */
    5525         3608 :     case 10786:  /* avx10_2_fmaddbf16_v32bf_mask */
    5526         3608 :     case 3923:  /* avx512vl_fmadd_v2df_mask */
    5527         3608 :     case 3922:  /* avx512vl_fmadd_v4df_mask */
    5528         3608 :     case 3920:  /* avx512f_fmadd_v8df_mask */
    5529         3608 :     case 3919:  /* avx512vl_fmadd_v4sf_mask */
    5530         3608 :     case 3918:  /* avx512vl_fmadd_v8sf_mask */
    5531         3608 :     case 3916:  /* avx512f_fmadd_v16sf_mask */
    5532         3608 :     case 3915:  /* avx512fp16_fmadd_v8hf_mask */
    5533         3608 :     case 3914:  /* avx512vl_fmadd_v16hf_mask */
    5534         3608 :     case 3912:  /* avx512bw_fmadd_v32hf_mask */
    5535         3608 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5536         3608 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5537         3608 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5538         3608 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    5539         3608 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5540         3608 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    5541         3608 :       recog_data.dup_num[0] = 1;
    5542         3608 :       break;
    5543              : 
    5544         1150 :     case 3907:  /* fma_fmadd_v8df_maskz_1_round */
    5545         1150 :     case 3898:  /* fma_fmadd_v16sf_maskz_1_round */
    5546         1150 :     case 3888:  /* fma_fmadd_v32hf_maskz_1_round */
    5547         1150 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5548         1150 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5549         1150 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    5550         1150 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    5551         1150 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5552         1150 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5553         1150 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5554         1150 :       break;
    5555              : 
    5556          764 :     case 3906:  /* *fma_fmadd_v8df_round */
    5557          764 :     case 3897:  /* *fma_fmadd_v16sf_round */
    5558          764 :     case 3887:  /* *fma_fmadd_v32hf_round */
    5559          764 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5560          764 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    5561          764 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5562          764 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    5563          764 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5564          764 :       break;
    5565              : 
    5566         3699 :     case 10785:  /* avx10_2_fmaddbf16_v8bf_maskz_1 */
    5567         3699 :     case 10783:  /* avx10_2_fmaddbf16_v16bf_maskz_1 */
    5568         3699 :     case 10781:  /* avx10_2_fmaddbf16_v32bf_maskz_1 */
    5569         3699 :     case 3911:  /* fma_fmadd_v2df_maskz_1 */
    5570         3699 :     case 3909:  /* fma_fmadd_v4df_maskz_1 */
    5571         3699 :     case 3905:  /* fma_fmadd_v8df_maskz_1 */
    5572         3699 :     case 3902:  /* fma_fmadd_v4sf_maskz_1 */
    5573         3699 :     case 3900:  /* fma_fmadd_v8sf_maskz_1 */
    5574         3699 :     case 3896:  /* fma_fmadd_v16sf_maskz_1 */
    5575         3699 :     case 3892:  /* fma_fmadd_v8hf_maskz_1 */
    5576         3699 :     case 3890:  /* fma_fmadd_v16hf_maskz_1 */
    5577         3699 :     case 3886:  /* fma_fmadd_v32hf_maskz_1 */
    5578         3699 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5579         3699 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5580         3699 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5581         3699 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    5582         3699 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    5583         3699 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (pat, 1), 2));
    5584         3699 :       break;
    5585              : 
    5586        10514 :     case 9629:  /* vec_set_hi_v8sf_mask */
    5587        10514 :     case 9627:  /* vec_set_hi_v8si_mask */
    5588        10514 :     case 9621:  /* vec_set_hi_v4df_mask */
    5589        10514 :     case 9619:  /* vec_set_hi_v4di_mask */
    5590        10514 :     case 8535:  /* vec_set_hi_v8di_mask */
    5591        10514 :     case 8533:  /* vec_set_hi_v8df_mask */
    5592        10514 :     case 8527:  /* vec_set_hi_v16si_mask */
    5593        10514 :     case 8525:  /* vec_set_hi_v16sf_mask */
    5594        10514 :     case 8125:  /* *andnotv2di3_mask */
    5595        10514 :     case 8124:  /* *andnotv4di3_mask */
    5596        10514 :     case 8123:  /* *andnotv8di3_mask */
    5597        10514 :     case 8122:  /* *andnotv4si3_mask */
    5598        10514 :     case 8121:  /* *andnotv8si3_mask */
    5599        10514 :     case 8120:  /* *andnotv16si3_mask */
    5600        10514 :     case 3791:  /* avx512f_andnotv8df3_mask */
    5601        10514 :     case 3789:  /* avx512f_andnotv16sf3_mask */
    5602        10514 :     case 3785:  /* sse2_andnotv2df3_mask */
    5603        10514 :     case 3783:  /* avx_andnotv4df3_mask */
    5604        10514 :     case 3781:  /* sse_andnotv4sf3_mask */
    5605        10514 :     case 3779:  /* avx_andnotv8sf3_mask */
    5606        10514 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5607        10514 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    5608        10514 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    5609        10514 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    5610        10514 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    5611        10514 :       break;
    5612              : 
    5613          680 :     case 3772:  /* sse2_ucomi_round */
    5614          680 :     case 3768:  /* sse_ucomi_round */
    5615          680 :     case 3764:  /* avx512fp16_ucomi_round */
    5616          680 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0), 0));
    5617          680 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 1), 0));
    5618          680 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5619          680 :       break;
    5620              : 
    5621         4414 :     case 3771:  /* sse2_ucomi */
    5622         4414 :     case 3767:  /* sse_ucomi */
    5623         4414 :     case 3763:  /* avx512fp16_ucomi */
    5624         4414 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5625         4414 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1), 0));
    5626         4414 :       break;
    5627              : 
    5628         1128 :     case 3770:  /* sse2_comi_round */
    5629         1128 :     case 3766:  /* sse_comi_round */
    5630         1128 :     case 3762:  /* avx512fp16_comi_round */
    5631         1128 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    5632         1128 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1), 0));
    5633         1128 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5634         1128 :       break;
    5635              : 
    5636         5148 :     case 3773:  /* avx10_2_comisbf16_v8bf */
    5637         5148 :     case 3769:  /* sse2_comi */
    5638         5148 :     case 3765:  /* sse_comi */
    5639         5148 :     case 3761:  /* avx512fp16_comi */
    5640         5148 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    5641         5148 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    5642         5148 :       break;
    5643              : 
    5644           89 :     case 3760:  /* avx10_2_ucomxdf_round */
    5645           89 :     case 3756:  /* avx10_2_ucomxsf_round */
    5646           89 :     case 3752:  /* avx10_2_ucomxhf_round */
    5647           89 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0, 0), 0));
    5648           89 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0, 1), 0));
    5649           89 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5650           89 :       break;
    5651              : 
    5652          566 :     case 3759:  /* avx10_2_ucomxdf */
    5653          566 :     case 3755:  /* avx10_2_ucomxsf */
    5654          566 :     case 3751:  /* avx10_2_ucomxhf */
    5655          566 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0));
    5656          566 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 1), 0));
    5657          566 :       break;
    5658              : 
    5659           43 :     case 3758:  /* avx10_2_comxdf_round */
    5660           43 :     case 3754:  /* avx10_2_comxsf_round */
    5661           43 :     case 3750:  /* avx10_2_comxhf_round */
    5662           43 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0));
    5663           43 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 1), 0));
    5664           43 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5665           43 :       break;
    5666              : 
    5667          566 :     case 3757:  /* avx10_2_comxdf */
    5668          566 :     case 3753:  /* avx10_2_comxsf */
    5669          566 :     case 3749:  /* avx10_2_comxhf */
    5670          566 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    5671          566 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 1), 0));
    5672          566 :       break;
    5673              : 
    5674         1491 :     case 3748:  /* avx512f_vmcmpv2df3_mask_round */
    5675         1491 :     case 3746:  /* avx512f_vmcmpv4sf3_mask_round */
    5676         1491 :     case 3744:  /* avx512f_vmcmpv8hf3_mask_round */
    5677         1491 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5678         1491 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    5679         1491 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    5680         1491 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    5681         1491 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1), 0));
    5682         1491 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5683         1491 :       break;
    5684              : 
    5685         1087 :     case 3747:  /* avx512f_vmcmpv2df3_mask */
    5686         1087 :     case 3745:  /* avx512f_vmcmpv4sf3_mask */
    5687         1087 :     case 3743:  /* avx512f_vmcmpv8hf3_mask */
    5688         1087 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5689         1087 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    5690         1087 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    5691         1087 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    5692         1087 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    5693         1087 :       break;
    5694              : 
    5695         3943 :     case 3742:  /* avx512f_vmcmpv2df3_round */
    5696         3943 :     case 3740:  /* avx512f_vmcmpv4sf3_round */
    5697         3943 :     case 3738:  /* avx512f_vmcmpv8hf3_round */
    5698         3943 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5699         3943 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    5700         3943 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    5701         3943 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    5702         3943 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5703         3943 :       break;
    5704              : 
    5705           72 :     case 3736:  /* *avx512vl_ucmpv8hi3_1 */
    5706           72 :     case 3735:  /* *avx512vl_ucmpv8hi3_1 */
    5707           72 :     case 3734:  /* *avx512vl_ucmpv16hi3_1 */
    5708           72 :     case 3733:  /* *avx512vl_ucmpv16hi3_1 */
    5709           72 :     case 3732:  /* *avx512bw_ucmpv32hi3_1 */
    5710           72 :     case 3731:  /* *avx512bw_ucmpv32hi3_1 */
    5711           72 :     case 3730:  /* *avx512vl_ucmpv32qi3_1 */
    5712           72 :     case 3729:  /* *avx512vl_ucmpv32qi3_1 */
    5713           72 :     case 3728:  /* *avx512vl_ucmpv16qi3_1 */
    5714           72 :     case 3727:  /* *avx512vl_ucmpv16qi3_1 */
    5715           72 :     case 3726:  /* *avx512bw_ucmpv64qi3_1 */
    5716           72 :     case 3725:  /* *avx512bw_ucmpv64qi3_1 */
    5717           72 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5718           72 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    5719           72 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    5720           72 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    5721           72 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 2));
    5722           72 :       break;
    5723              : 
    5724        14939 :     case 11189:  /* *vcvtbiasps2hf8sv8sf */
    5725        14939 :     case 11188:  /* *vcvtbiasps2hf8v8sf */
    5726        14939 :     case 11187:  /* *vcvtbiasps2bf8sv8sf */
    5727        14939 :     case 11186:  /* *vcvtbiasps2bf8v8sf */
    5728        14939 :     case 11185:  /* *vcvtbiasps2hf8sv4sf */
    5729        14939 :     case 11184:  /* *vcvtbiasps2hf8v4sf */
    5730        14939 :     case 11183:  /* *vcvtbiasps2bf8sv4sf */
    5731        14939 :     case 11182:  /* *vcvtbiasps2bf8v4sf */
    5732        14939 :     case 10875:  /* avx10_2_fpclassbf16_v8bf_mask */
    5733        14939 :     case 10873:  /* avx10_2_fpclassbf16_v16bf_mask */
    5734        14939 :     case 10871:  /* avx10_2_fpclassbf16_v32bf_mask */
    5735        14939 :     case 10624:  /* *vcvtbiasph2hf8sv8hf */
    5736        14939 :     case 10623:  /* *vcvtbiasph2hf8v8hf */
    5737        14939 :     case 10622:  /* *vcvtbiasph2bf8sv8hf */
    5738        14939 :     case 10621:  /* *vcvtbiasph2bf8v8hf */
    5739        14939 :     case 10481:  /* avx512vl_vpshufbitqmbv32qi_mask */
    5740        14939 :     case 10479:  /* avx512vl_vpshufbitqmbv16qi_mask */
    5741        14939 :     case 10477:  /* avx512vl_vpshufbitqmbv64qi_mask */
    5742        14939 :     case 10151:  /* avx512dq_fpclassv2df_mask */
    5743        14939 :     case 10149:  /* avx512dq_fpclassv4df_mask */
    5744        14939 :     case 10147:  /* avx512dq_fpclassv8df_mask */
    5745        14939 :     case 10145:  /* avx512dq_fpclassv4sf_mask */
    5746        14939 :     case 10143:  /* avx512dq_fpclassv8sf_mask */
    5747        14939 :     case 10141:  /* avx512dq_fpclassv16sf_mask */
    5748        14939 :     case 10139:  /* avx512dq_fpclassv8hf_mask */
    5749        14939 :     case 10137:  /* avx512dq_fpclassv16hf_mask */
    5750        14939 :     case 10135:  /* avx512dq_fpclassv32hf_mask */
    5751        14939 :     case 9809:  /* *vcvtps2ph */
    5752        14939 :     case 8278:  /* avx512vl_testnmv2di3_mask */
    5753        14939 :     case 8276:  /* avx512vl_testnmv4di3_mask */
    5754        14939 :     case 8274:  /* avx512f_testnmv8di3_mask */
    5755        14939 :     case 8272:  /* avx512vl_testnmv4si3_mask */
    5756        14939 :     case 8270:  /* avx512vl_testnmv8si3_mask */
    5757        14939 :     case 8268:  /* avx512f_testnmv16si3_mask */
    5758        14939 :     case 8266:  /* avx512vl_testnmv8hi3_mask */
    5759        14939 :     case 8264:  /* avx512vl_testnmv16hi3_mask */
    5760        14939 :     case 8262:  /* avx512bw_testnmv32hi3_mask */
    5761        14939 :     case 8260:  /* avx512vl_testnmv16qi3_mask */
    5762        14939 :     case 8258:  /* avx512vl_testnmv32qi3_mask */
    5763        14939 :     case 8256:  /* avx512bw_testnmv64qi3_mask */
    5764        14939 :     case 8254:  /* avx512vl_testmv2di3_mask */
    5765        14939 :     case 8252:  /* avx512vl_testmv4di3_mask */
    5766        14939 :     case 8250:  /* avx512f_testmv8di3_mask */
    5767        14939 :     case 8248:  /* avx512vl_testmv4si3_mask */
    5768        14939 :     case 8246:  /* avx512vl_testmv8si3_mask */
    5769        14939 :     case 8244:  /* avx512f_testmv16si3_mask */
    5770        14939 :     case 8242:  /* avx512vl_testmv8hi3_mask */
    5771        14939 :     case 8240:  /* avx512vl_testmv16hi3_mask */
    5772        14939 :     case 8238:  /* avx512bw_testmv32hi3_mask */
    5773        14939 :     case 8236:  /* avx512vl_testmv16qi3_mask */
    5774        14939 :     case 8234:  /* avx512vl_testmv32qi3_mask */
    5775        14939 :     case 8232:  /* avx512bw_testmv64qi3_mask */
    5776        14939 :     case 4392:  /* fma_v8hf_fadd_fcmul */
    5777        14939 :     case 4391:  /* fma_v16hf_fadd_fcmul */
    5778        14939 :     case 4390:  /* fma_v32hf_fadd_fcmul */
    5779        14939 :     case 4389:  /* fma_v8hf_fadd_fmul */
    5780        14939 :     case 4388:  /* fma_v16hf_fadd_fmul */
    5781        14939 :     case 4387:  /* fma_v32hf_fadd_fmul */
    5782        14939 :     case 3658:  /* *avx512vl_eqv2di3_mask_1 */
    5783        14939 :     case 3656:  /* *avx512vl_eqv2di3_mask_1 */
    5784        14939 :     case 3654:  /* *avx512vl_eqv4di3_mask_1 */
    5785        14939 :     case 3652:  /* *avx512vl_eqv4di3_mask_1 */
    5786        14939 :     case 3650:  /* *avx512f_eqv8di3_mask_1 */
    5787        14939 :     case 3648:  /* *avx512f_eqv8di3_mask_1 */
    5788        14939 :     case 3646:  /* *avx512vl_eqv4si3_mask_1 */
    5789        14939 :     case 3644:  /* *avx512vl_eqv4si3_mask_1 */
    5790        14939 :     case 3642:  /* *avx512vl_eqv8si3_mask_1 */
    5791        14939 :     case 3640:  /* *avx512vl_eqv8si3_mask_1 */
    5792        14939 :     case 3638:  /* *avx512f_eqv16si3_mask_1 */
    5793        14939 :     case 3636:  /* *avx512f_eqv16si3_mask_1 */
    5794        14939 :     case 3598:  /* *avx512vl_eqv8hi3_mask_1 */
    5795        14939 :     case 3596:  /* *avx512vl_eqv8hi3_mask_1 */
    5796        14939 :     case 3594:  /* *avx512vl_eqv16hi3_mask_1 */
    5797        14939 :     case 3592:  /* *avx512vl_eqv16hi3_mask_1 */
    5798        14939 :     case 3590:  /* *avx512bw_eqv32hi3_mask_1 */
    5799        14939 :     case 3588:  /* *avx512bw_eqv32hi3_mask_1 */
    5800        14939 :     case 3586:  /* *avx512vl_eqv32qi3_mask_1 */
    5801        14939 :     case 3584:  /* *avx512vl_eqv32qi3_mask_1 */
    5802        14939 :     case 3582:  /* *avx512vl_eqv16qi3_mask_1 */
    5803        14939 :     case 3580:  /* *avx512vl_eqv16qi3_mask_1 */
    5804        14939 :     case 3578:  /* *avx512bw_eqv64qi3_mask_1 */
    5805        14939 :     case 3576:  /* *avx512bw_eqv64qi3_mask_1 */
    5806        14939 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    5807        14939 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    5808        14939 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    5809        14939 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    5810        14939 :       break;
    5811              : 
    5812          570 :     case 3718:  /* *avx512vl_ucmpv2di3_zero_extenddi_2 */
    5813          570 :     case 3717:  /* *avx512vl_ucmpv4di3_zero_extenddi_2 */
    5814          570 :     case 3716:  /* *avx512f_ucmpv8di3_zero_extenddi_2 */
    5815          570 :     case 3715:  /* *avx512vl_ucmpv4si3_zero_extenddi_2 */
    5816          570 :     case 3714:  /* *avx512vl_ucmpv8si3_zero_extenddi_2 */
    5817          570 :     case 3713:  /* *avx512f_ucmpv16si3_zero_extenddi_2 */
    5818          570 :     case 3712:  /* *avx512vl_ucmpv2di3_zero_extendsi_2 */
    5819          570 :     case 3711:  /* *avx512vl_ucmpv4di3_zero_extendsi_2 */
    5820          570 :     case 3710:  /* *avx512f_ucmpv8di3_zero_extendsi_2 */
    5821          570 :     case 3709:  /* *avx512vl_ucmpv4si3_zero_extendsi_2 */
    5822          570 :     case 3708:  /* *avx512vl_ucmpv8si3_zero_extendsi_2 */
    5823          570 :     case 3707:  /* *avx512f_ucmpv16si3_zero_extendsi_2 */
    5824          570 :     case 3706:  /* *avx512vl_ucmpv2di3_zero_extendhi_2 */
    5825          570 :     case 3705:  /* *avx512vl_ucmpv4di3_zero_extendhi_2 */
    5826          570 :     case 3704:  /* *avx512f_ucmpv8di3_zero_extendhi_2 */
    5827          570 :     case 3703:  /* *avx512vl_ucmpv4si3_zero_extendhi_2 */
    5828          570 :     case 3702:  /* *avx512vl_ucmpv8si3_zero_extendhi_2 */
    5829          570 :     case 3701:  /* *avx512f_ucmpv16si3_zero_extendhi_2 */
    5830          570 :     case 3634:  /* *avx512vl_ucmpv8hi3_zero_extenddi_2 */
    5831          570 :     case 3633:  /* *avx512vl_ucmpv8hi3_zero_extendsi_2 */
    5832          570 :     case 3632:  /* *avx512vl_ucmpv8hi3_zero_extendhi_2 */
    5833          570 :     case 3631:  /* *avx512vl_ucmpv16hi3_zero_extenddi_2 */
    5834          570 :     case 3630:  /* *avx512vl_ucmpv16hi3_zero_extendsi_2 */
    5835          570 :     case 3629:  /* *avx512vl_ucmpv16hi3_zero_extendhi_2 */
    5836          570 :     case 3628:  /* *avx512bw_ucmpv32hi3_zero_extenddi_2 */
    5837          570 :     case 3627:  /* *avx512bw_ucmpv32hi3_zero_extendsi_2 */
    5838          570 :     case 3626:  /* *avx512bw_ucmpv32hi3_zero_extendhi_2 */
    5839          570 :     case 3625:  /* *avx512vl_ucmpv32qi3_zero_extenddi_2 */
    5840          570 :     case 3624:  /* *avx512vl_ucmpv32qi3_zero_extendsi_2 */
    5841          570 :     case 3623:  /* *avx512vl_ucmpv32qi3_zero_extendhi_2 */
    5842          570 :     case 3622:  /* *avx512vl_ucmpv16qi3_zero_extenddi_2 */
    5843          570 :     case 3621:  /* *avx512vl_ucmpv16qi3_zero_extendsi_2 */
    5844          570 :     case 3620:  /* *avx512vl_ucmpv16qi3_zero_extendhi_2 */
    5845          570 :     case 3619:  /* *avx512bw_ucmpv64qi3_zero_extenddi_2 */
    5846          570 :     case 3618:  /* *avx512bw_ucmpv64qi3_zero_extendsi_2 */
    5847          570 :     case 3617:  /* *avx512bw_ucmpv64qi3_zero_extendhi_2 */
    5848          570 :     case 3538:  /* *avx512vl_cmpv8hi3_zero_extenddi_2 */
    5849          570 :     case 3537:  /* *avx512vl_cmpv8hi3_zero_extendsi_2 */
    5850          570 :     case 3536:  /* *avx512vl_cmpv8hi3_zero_extendhi_2 */
    5851          570 :     case 3535:  /* *avx512vl_cmpv16hi3_zero_extenddi_2 */
    5852          570 :     case 3534:  /* *avx512vl_cmpv16hi3_zero_extendsi_2 */
    5853          570 :     case 3533:  /* *avx512vl_cmpv16hi3_zero_extendhi_2 */
    5854          570 :     case 3532:  /* *avx512bw_cmpv32hi3_zero_extenddi_2 */
    5855          570 :     case 3531:  /* *avx512bw_cmpv32hi3_zero_extendsi_2 */
    5856          570 :     case 3530:  /* *avx512bw_cmpv32hi3_zero_extendhi_2 */
    5857          570 :     case 3529:  /* *avx512vl_cmpv32qi3_zero_extenddi_2 */
    5858          570 :     case 3528:  /* *avx512vl_cmpv32qi3_zero_extendsi_2 */
    5859          570 :     case 3527:  /* *avx512vl_cmpv32qi3_zero_extendhi_2 */
    5860          570 :     case 3526:  /* *avx512vl_cmpv16qi3_zero_extenddi_2 */
    5861          570 :     case 3525:  /* *avx512vl_cmpv16qi3_zero_extendsi_2 */
    5862          570 :     case 3524:  /* *avx512vl_cmpv16qi3_zero_extendhi_2 */
    5863          570 :     case 3523:  /* *avx512bw_cmpv64qi3_zero_extenddi_2 */
    5864          570 :     case 3522:  /* *avx512bw_cmpv64qi3_zero_extendsi_2 */
    5865          570 :     case 3521:  /* *avx512bw_cmpv64qi3_zero_extendhi_2 */
    5866          570 :     case 3448:  /* *avx512vl_cmpv2df3_zero_extenddi_2 */
    5867          570 :     case 3447:  /* *avx512vl_cmpv2df3_zero_extendsi_2 */
    5868          570 :     case 3446:  /* *avx512vl_cmpv2df3_zero_extendhi_2 */
    5869          570 :     case 3445:  /* *avx512vl_cmpv4df3_zero_extenddi_2 */
    5870          570 :     case 3444:  /* *avx512vl_cmpv4df3_zero_extendsi_2 */
    5871          570 :     case 3443:  /* *avx512vl_cmpv4df3_zero_extendhi_2 */
    5872          570 :     case 3442:  /* *avx512f_cmpv8df3_zero_extenddi_2 */
    5873          570 :     case 3441:  /* *avx512f_cmpv8df3_zero_extendsi_2 */
    5874          570 :     case 3440:  /* *avx512f_cmpv8df3_zero_extendhi_2 */
    5875          570 :     case 3439:  /* *avx512vl_cmpv4sf3_zero_extenddi_2 */
    5876          570 :     case 3438:  /* *avx512vl_cmpv4sf3_zero_extendsi_2 */
    5877          570 :     case 3437:  /* *avx512vl_cmpv4sf3_zero_extendhi_2 */
    5878          570 :     case 3436:  /* *avx512vl_cmpv8sf3_zero_extenddi_2 */
    5879          570 :     case 3435:  /* *avx512vl_cmpv8sf3_zero_extendsi_2 */
    5880          570 :     case 3434:  /* *avx512vl_cmpv8sf3_zero_extendhi_2 */
    5881          570 :     case 3433:  /* *avx512f_cmpv16sf3_zero_extenddi_2 */
    5882          570 :     case 3432:  /* *avx512f_cmpv16sf3_zero_extendsi_2 */
    5883          570 :     case 3431:  /* *avx512f_cmpv16sf3_zero_extendhi_2 */
    5884          570 :     case 3430:  /* *avx512fp16_cmpv8hf3_zero_extenddi_2 */
    5885          570 :     case 3429:  /* *avx512fp16_cmpv8hf3_zero_extendsi_2 */
    5886          570 :     case 3428:  /* *avx512fp16_cmpv8hf3_zero_extendhi_2 */
    5887          570 :     case 3427:  /* *avx512vl_cmpv16hf3_zero_extenddi_2 */
    5888          570 :     case 3426:  /* *avx512vl_cmpv16hf3_zero_extendsi_2 */
    5889          570 :     case 3425:  /* *avx512vl_cmpv16hf3_zero_extendhi_2 */
    5890          570 :     case 3424:  /* *avx512bw_cmpv32hf3_zero_extenddi_2 */
    5891          570 :     case 3423:  /* *avx512bw_cmpv32hf3_zero_extendsi_2 */
    5892          570 :     case 3422:  /* *avx512bw_cmpv32hf3_zero_extendhi_2 */
    5893          570 :     case 3421:  /* *avx512vl_cmpv2di3_zero_extenddi_2 */
    5894          570 :     case 3420:  /* *avx512vl_cmpv2di3_zero_extendsi_2 */
    5895          570 :     case 3419:  /* *avx512vl_cmpv2di3_zero_extendhi_2 */
    5896          570 :     case 3418:  /* *avx512vl_cmpv4di3_zero_extenddi_2 */
    5897          570 :     case 3417:  /* *avx512vl_cmpv4di3_zero_extendsi_2 */
    5898          570 :     case 3416:  /* *avx512vl_cmpv4di3_zero_extendhi_2 */
    5899          570 :     case 3415:  /* *avx512f_cmpv8di3_zero_extenddi_2 */
    5900          570 :     case 3414:  /* *avx512f_cmpv8di3_zero_extendsi_2 */
    5901          570 :     case 3413:  /* *avx512f_cmpv8di3_zero_extendhi_2 */
    5902          570 :     case 3412:  /* *avx512vl_cmpv4si3_zero_extenddi_2 */
    5903          570 :     case 3411:  /* *avx512vl_cmpv4si3_zero_extendsi_2 */
    5904          570 :     case 3410:  /* *avx512vl_cmpv4si3_zero_extendhi_2 */
    5905          570 :     case 3409:  /* *avx512vl_cmpv8si3_zero_extenddi_2 */
    5906          570 :     case 3408:  /* *avx512vl_cmpv8si3_zero_extendsi_2 */
    5907          570 :     case 3407:  /* *avx512vl_cmpv8si3_zero_extendhi_2 */
    5908          570 :     case 3406:  /* *avx512f_cmpv16si3_zero_extenddi_2 */
    5909          570 :     case 3405:  /* *avx512f_cmpv16si3_zero_extendsi_2 */
    5910          570 :     case 3404:  /* *avx512f_cmpv16si3_zero_extendhi_2 */
    5911          570 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    5912          570 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
    5913          570 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
    5914          570 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 2));
    5915          570 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 1), 0));
    5916          570 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 2);
    5917          570 :       recog_data.dup_num[0] = 3;
    5918          570 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    5919          570 :       recog_data.dup_num[1] = 2;
    5920          570 :       recog_data.dup_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    5921          570 :       recog_data.dup_num[2] = 1;
    5922          570 :       break;
    5923              : 
    5924        15991 :     case 3741:  /* avx512f_vmcmpv2df3 */
    5925        15991 :     case 3739:  /* avx512f_vmcmpv4sf3 */
    5926        15991 :     case 3737:  /* avx512f_vmcmpv8hf3 */
    5927        15991 :     case 3724:  /* *avx512vl_ucmpv2di3 */
    5928        15991 :     case 3723:  /* *avx512vl_ucmpv4di3 */
    5929        15991 :     case 3722:  /* *avx512f_ucmpv8di3 */
    5930        15991 :     case 3721:  /* *avx512vl_ucmpv4si3 */
    5931        15991 :     case 3720:  /* *avx512vl_ucmpv8si3 */
    5932        15991 :     case 3719:  /* *avx512f_ucmpv16si3 */
    5933        15991 :     case 3700:  /* *avx512vl_ucmpv2di3_zero_extenddi */
    5934        15991 :     case 3699:  /* *avx512vl_ucmpv4di3_zero_extenddi */
    5935        15991 :     case 3698:  /* *avx512f_ucmpv8di3_zero_extenddi */
    5936        15991 :     case 3697:  /* *avx512vl_ucmpv4si3_zero_extenddi */
    5937        15991 :     case 3696:  /* *avx512vl_ucmpv8si3_zero_extenddi */
    5938        15991 :     case 3695:  /* *avx512f_ucmpv16si3_zero_extenddi */
    5939        15991 :     case 3694:  /* *avx512vl_ucmpv2di3_zero_extendsi */
    5940        15991 :     case 3693:  /* *avx512vl_ucmpv4di3_zero_extendsi */
    5941        15991 :     case 3692:  /* *avx512f_ucmpv8di3_zero_extendsi */
    5942        15991 :     case 3691:  /* *avx512vl_ucmpv4si3_zero_extendsi */
    5943        15991 :     case 3690:  /* *avx512vl_ucmpv8si3_zero_extendsi */
    5944        15991 :     case 3689:  /* *avx512f_ucmpv16si3_zero_extendsi */
    5945        15991 :     case 3688:  /* *avx512vl_ucmpv2di3_zero_extendhi */
    5946        15991 :     case 3687:  /* *avx512vl_ucmpv4di3_zero_extendhi */
    5947        15991 :     case 3686:  /* *avx512f_ucmpv8di3_zero_extendhi */
    5948        15991 :     case 3685:  /* *avx512vl_ucmpv4si3_zero_extendhi */
    5949        15991 :     case 3684:  /* *avx512vl_ucmpv8si3_zero_extendhi */
    5950        15991 :     case 3683:  /* *avx512f_ucmpv16si3_zero_extendhi */
    5951        15991 :     case 3616:  /* *avx512vl_ucmpv8hi3_zero_extenddi */
    5952        15991 :     case 3615:  /* *avx512vl_ucmpv8hi3_zero_extendsi */
    5953        15991 :     case 3614:  /* *avx512vl_ucmpv8hi3_zero_extendhi */
    5954        15991 :     case 3613:  /* *avx512vl_ucmpv16hi3_zero_extenddi */
    5955        15991 :     case 3612:  /* *avx512vl_ucmpv16hi3_zero_extendsi */
    5956        15991 :     case 3611:  /* *avx512vl_ucmpv16hi3_zero_extendhi */
    5957        15991 :     case 3610:  /* *avx512bw_ucmpv32hi3_zero_extenddi */
    5958        15991 :     case 3609:  /* *avx512bw_ucmpv32hi3_zero_extendsi */
    5959        15991 :     case 3608:  /* *avx512bw_ucmpv32hi3_zero_extendhi */
    5960        15991 :     case 3607:  /* *avx512vl_ucmpv32qi3_zero_extenddi */
    5961        15991 :     case 3606:  /* *avx512vl_ucmpv32qi3_zero_extendsi */
    5962        15991 :     case 3605:  /* *avx512vl_ucmpv32qi3_zero_extendhi */
    5963        15991 :     case 3604:  /* *avx512vl_ucmpv16qi3_zero_extenddi */
    5964        15991 :     case 3603:  /* *avx512vl_ucmpv16qi3_zero_extendsi */
    5965        15991 :     case 3602:  /* *avx512vl_ucmpv16qi3_zero_extendhi */
    5966        15991 :     case 3601:  /* *avx512bw_ucmpv64qi3_zero_extenddi */
    5967        15991 :     case 3600:  /* *avx512bw_ucmpv64qi3_zero_extendsi */
    5968        15991 :     case 3599:  /* *avx512bw_ucmpv64qi3_zero_extendhi */
    5969        15991 :     case 3550:  /* *avx512vl_cmpv8hi3 */
    5970        15991 :     case 3549:  /* *avx512vl_cmpv8hi3 */
    5971        15991 :     case 3548:  /* *avx512vl_cmpv16hi3 */
    5972        15991 :     case 3547:  /* *avx512vl_cmpv16hi3 */
    5973        15991 :     case 3546:  /* *avx512bw_cmpv32hi3 */
    5974        15991 :     case 3545:  /* *avx512bw_cmpv32hi3 */
    5975        15991 :     case 3544:  /* *avx512vl_cmpv32qi3 */
    5976        15991 :     case 3543:  /* *avx512vl_cmpv32qi3 */
    5977        15991 :     case 3542:  /* *avx512vl_cmpv16qi3 */
    5978        15991 :     case 3541:  /* *avx512vl_cmpv16qi3 */
    5979        15991 :     case 3540:  /* *avx512bw_cmpv64qi3 */
    5980        15991 :     case 3539:  /* *avx512bw_cmpv64qi3 */
    5981        15991 :     case 3520:  /* *avx512vl_cmpv8hi3_zero_extenddi */
    5982        15991 :     case 3519:  /* *avx512vl_cmpv8hi3_zero_extendsi */
    5983        15991 :     case 3518:  /* *avx512vl_cmpv8hi3_zero_extendhi */
    5984        15991 :     case 3517:  /* *avx512vl_cmpv16hi3_zero_extenddi */
    5985        15991 :     case 3516:  /* *avx512vl_cmpv16hi3_zero_extendsi */
    5986        15991 :     case 3515:  /* *avx512vl_cmpv16hi3_zero_extendhi */
    5987        15991 :     case 3514:  /* *avx512bw_cmpv32hi3_zero_extenddi */
    5988        15991 :     case 3513:  /* *avx512bw_cmpv32hi3_zero_extendsi */
    5989        15991 :     case 3512:  /* *avx512bw_cmpv32hi3_zero_extendhi */
    5990        15991 :     case 3511:  /* *avx512vl_cmpv32qi3_zero_extenddi */
    5991        15991 :     case 3510:  /* *avx512vl_cmpv32qi3_zero_extendsi */
    5992        15991 :     case 3509:  /* *avx512vl_cmpv32qi3_zero_extendhi */
    5993        15991 :     case 3508:  /* *avx512vl_cmpv16qi3_zero_extenddi */
    5994        15991 :     case 3507:  /* *avx512vl_cmpv16qi3_zero_extendsi */
    5995        15991 :     case 3506:  /* *avx512vl_cmpv16qi3_zero_extendhi */
    5996        15991 :     case 3505:  /* *avx512bw_cmpv64qi3_zero_extenddi */
    5997        15991 :     case 3504:  /* *avx512bw_cmpv64qi3_zero_extendsi */
    5998        15991 :     case 3503:  /* *avx512bw_cmpv64qi3_zero_extendhi */
    5999        15991 :     case 3476:  /* *avx512vl_ucmpv2di3_and3 */
    6000        15991 :     case 3475:  /* *avx512vl_cmpv2di3_and3 */
    6001        15991 :     case 3474:  /* *avx512vl_cmpv2df3_and3 */
    6002        15991 :     case 3469:  /* *avx512vl_ucmpv4di3_and15 */
    6003        15991 :     case 3468:  /* *avx512vl_ucmpv4si3_and15 */
    6004        15991 :     case 3467:  /* *avx512vl_cmpv4di3_and15 */
    6005        15991 :     case 3466:  /* *avx512vl_cmpv4si3_and15 */
    6006        15991 :     case 3465:  /* *avx512vl_cmpv4df3_and15 */
    6007        15991 :     case 3464:  /* *avx512vl_cmpv4sf3_and15 */
    6008        15991 :     case 3463:  /* *avx512vl_cmpv2df3 */
    6009        15991 :     case 3462:  /* *avx512vl_cmpv4df3 */
    6010        15991 :     case 3461:  /* *avx512f_cmpv8df3 */
    6011        15991 :     case 3460:  /* *avx512vl_cmpv4sf3 */
    6012        15991 :     case 3459:  /* *avx512vl_cmpv8sf3 */
    6013        15991 :     case 3458:  /* *avx512f_cmpv16sf3 */
    6014        15991 :     case 3457:  /* *avx512fp16_cmpv8hf3 */
    6015        15991 :     case 3456:  /* *avx512vl_cmpv16hf3 */
    6016        15991 :     case 3455:  /* *avx512bw_cmpv32hf3 */
    6017        15991 :     case 3454:  /* *avx512vl_cmpv2di3 */
    6018        15991 :     case 3453:  /* *avx512vl_cmpv4di3 */
    6019        15991 :     case 3452:  /* *avx512f_cmpv8di3 */
    6020        15991 :     case 3451:  /* *avx512vl_cmpv4si3 */
    6021        15991 :     case 3450:  /* *avx512vl_cmpv8si3 */
    6022        15991 :     case 3449:  /* *avx512f_cmpv16si3 */
    6023        15991 :     case 3403:  /* *avx512vl_cmpv2df3_zero_extenddi */
    6024        15991 :     case 3402:  /* *avx512vl_cmpv2df3_zero_extendsi */
    6025        15991 :     case 3401:  /* *avx512vl_cmpv2df3_zero_extendhi */
    6026        15991 :     case 3400:  /* *avx512vl_cmpv4df3_zero_extenddi */
    6027        15991 :     case 3399:  /* *avx512vl_cmpv4df3_zero_extendsi */
    6028        15991 :     case 3398:  /* *avx512vl_cmpv4df3_zero_extendhi */
    6029        15991 :     case 3397:  /* *avx512f_cmpv8df3_zero_extenddi */
    6030        15991 :     case 3396:  /* *avx512f_cmpv8df3_zero_extendsi */
    6031        15991 :     case 3395:  /* *avx512f_cmpv8df3_zero_extendhi */
    6032        15991 :     case 3394:  /* *avx512vl_cmpv4sf3_zero_extenddi */
    6033        15991 :     case 3393:  /* *avx512vl_cmpv4sf3_zero_extendsi */
    6034        15991 :     case 3392:  /* *avx512vl_cmpv4sf3_zero_extendhi */
    6035        15991 :     case 3391:  /* *avx512vl_cmpv8sf3_zero_extenddi */
    6036        15991 :     case 3390:  /* *avx512vl_cmpv8sf3_zero_extendsi */
    6037        15991 :     case 3389:  /* *avx512vl_cmpv8sf3_zero_extendhi */
    6038        15991 :     case 3388:  /* *avx512f_cmpv16sf3_zero_extenddi */
    6039        15991 :     case 3387:  /* *avx512f_cmpv16sf3_zero_extendsi */
    6040        15991 :     case 3386:  /* *avx512f_cmpv16sf3_zero_extendhi */
    6041        15991 :     case 3385:  /* *avx512fp16_cmpv8hf3_zero_extenddi */
    6042        15991 :     case 3384:  /* *avx512fp16_cmpv8hf3_zero_extendsi */
    6043        15991 :     case 3383:  /* *avx512fp16_cmpv8hf3_zero_extendhi */
    6044        15991 :     case 3382:  /* *avx512vl_cmpv16hf3_zero_extenddi */
    6045        15991 :     case 3381:  /* *avx512vl_cmpv16hf3_zero_extendsi */
    6046        15991 :     case 3380:  /* *avx512vl_cmpv16hf3_zero_extendhi */
    6047        15991 :     case 3379:  /* *avx512bw_cmpv32hf3_zero_extenddi */
    6048        15991 :     case 3378:  /* *avx512bw_cmpv32hf3_zero_extendsi */
    6049        15991 :     case 3377:  /* *avx512bw_cmpv32hf3_zero_extendhi */
    6050        15991 :     case 3376:  /* *avx512vl_cmpv2di3_zero_extenddi */
    6051        15991 :     case 3375:  /* *avx512vl_cmpv2di3_zero_extendsi */
    6052        15991 :     case 3374:  /* *avx512vl_cmpv2di3_zero_extendhi */
    6053        15991 :     case 3373:  /* *avx512vl_cmpv4di3_zero_extenddi */
    6054        15991 :     case 3372:  /* *avx512vl_cmpv4di3_zero_extendsi */
    6055        15991 :     case 3371:  /* *avx512vl_cmpv4di3_zero_extendhi */
    6056        15991 :     case 3370:  /* *avx512f_cmpv8di3_zero_extenddi */
    6057        15991 :     case 3369:  /* *avx512f_cmpv8di3_zero_extendsi */
    6058        15991 :     case 3368:  /* *avx512f_cmpv8di3_zero_extendhi */
    6059        15991 :     case 3367:  /* *avx512vl_cmpv4si3_zero_extenddi */
    6060        15991 :     case 3366:  /* *avx512vl_cmpv4si3_zero_extendsi */
    6061        15991 :     case 3365:  /* *avx512vl_cmpv4si3_zero_extendhi */
    6062        15991 :     case 3364:  /* *avx512vl_cmpv8si3_zero_extenddi */
    6063        15991 :     case 3363:  /* *avx512vl_cmpv8si3_zero_extendsi */
    6064        15991 :     case 3362:  /* *avx512vl_cmpv8si3_zero_extendhi */
    6065        15991 :     case 3361:  /* *avx512f_cmpv16si3_zero_extenddi */
    6066        15991 :     case 3360:  /* *avx512f_cmpv16si3_zero_extendsi */
    6067        15991 :     case 3359:  /* *avx512f_cmpv16si3_zero_extendhi */
    6068        15991 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6069        15991 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    6070        15991 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    6071        15991 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    6072        15991 :       break;
    6073              : 
    6074         3916 :     case 3354:  /* avx512f_cmpv8df3_mask_round */
    6075         3916 :     case 3346:  /* avx512f_cmpv16sf3_mask_round */
    6076         3916 :     case 3338:  /* avx512bw_cmpv32hf3_mask_round */
    6077         3916 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6078         3916 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    6079         3916 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    6080         3916 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    6081         3916 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6082         3916 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6083         3916 :       break;
    6084              : 
    6085        67252 :     case 10881:  /* avx10_2_cmpbf16_v8bf_mask */
    6086        67252 :     case 10879:  /* avx10_2_cmpbf16_v16bf_mask */
    6087        67252 :     case 10877:  /* avx10_2_cmpbf16_v32bf_mask */
    6088        67252 :     case 4398:  /* fma_fcmaddc_v8hf_fma_zero */
    6089        67252 :     case 4397:  /* fma_fmaddc_v8hf_fma_zero */
    6090        67252 :     case 4396:  /* fma_fcmaddc_v16hf_fma_zero */
    6091        67252 :     case 4395:  /* fma_fmaddc_v16hf_fma_zero */
    6092        67252 :     case 4394:  /* fma_fcmaddc_v32hf_fma_zero */
    6093        67252 :     case 4393:  /* fma_fmaddc_v32hf_fma_zero */
    6094        67252 :     case 3682:  /* avx512vl_ucmpv2di3_mask */
    6095        67252 :     case 3680:  /* avx512vl_ucmpv4di3_mask */
    6096        67252 :     case 3678:  /* avx512f_ucmpv8di3_mask */
    6097        67252 :     case 3676:  /* avx512vl_ucmpv4si3_mask */
    6098        67252 :     case 3674:  /* avx512vl_ucmpv8si3_mask */
    6099        67252 :     case 3672:  /* avx512f_ucmpv16si3_mask */
    6100        67252 :     case 3670:  /* avx512vl_ucmpv8hi3_mask */
    6101        67252 :     case 3668:  /* avx512vl_ucmpv16hi3_mask */
    6102        67252 :     case 3666:  /* avx512bw_ucmpv32hi3_mask */
    6103        67252 :     case 3664:  /* avx512vl_ucmpv16qi3_mask */
    6104        67252 :     case 3662:  /* avx512vl_ucmpv32qi3_mask */
    6105        67252 :     case 3660:  /* avx512bw_ucmpv64qi3_mask */
    6106        67252 :     case 3502:  /* avx512vl_cmpv2di3_mask */
    6107        67252 :     case 3500:  /* avx512vl_cmpv4di3_mask */
    6108        67252 :     case 3498:  /* avx512f_cmpv8di3_mask */
    6109        67252 :     case 3496:  /* avx512vl_cmpv4si3_mask */
    6110        67252 :     case 3494:  /* avx512vl_cmpv8si3_mask */
    6111        67252 :     case 3492:  /* avx512f_cmpv16si3_mask */
    6112        67252 :     case 3490:  /* avx512vl_cmpv8hi3_mask */
    6113        67252 :     case 3488:  /* avx512vl_cmpv16hi3_mask */
    6114        67252 :     case 3486:  /* avx512bw_cmpv32hi3_mask */
    6115        67252 :     case 3484:  /* avx512vl_cmpv16qi3_mask */
    6116        67252 :     case 3482:  /* avx512vl_cmpv32qi3_mask */
    6117        67252 :     case 3480:  /* avx512bw_cmpv64qi3_mask */
    6118        67252 :     case 3358:  /* avx512vl_cmpv2df3_mask */
    6119        67252 :     case 3356:  /* avx512vl_cmpv4df3_mask */
    6120        67252 :     case 3353:  /* avx512f_cmpv8df3_mask */
    6121        67252 :     case 3350:  /* avx512vl_cmpv4sf3_mask */
    6122        67252 :     case 3348:  /* avx512vl_cmpv8sf3_mask */
    6123        67252 :     case 3345:  /* avx512f_cmpv16sf3_mask */
    6124        67252 :     case 3342:  /* avx512fp16_cmpv8hf3_mask */
    6125        67252 :     case 3340:  /* avx512vl_cmpv16hf3_mask */
    6126        67252 :     case 3337:  /* avx512bw_cmpv32hf3_mask */
    6127        67252 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6128        67252 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    6129        67252 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    6130        67252 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    6131        67252 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    6132        67252 :       break;
    6133              : 
    6134         4791 :     case 11097:  /* avx10_2_minmaxpv2df_round */
    6135         4791 :     case 11093:  /* avx10_2_minmaxpv4df_round */
    6136         4791 :     case 11089:  /* avx10_2_minmaxpv8df_round */
    6137         4791 :     case 11085:  /* avx10_2_minmaxpv4sf_round */
    6138         4791 :     case 11081:  /* avx10_2_minmaxpv8sf_round */
    6139         4791 :     case 11077:  /* avx10_2_minmaxpv16sf_round */
    6140         4791 :     case 11073:  /* avx10_2_minmaxpv8hf_round */
    6141         4791 :     case 11069:  /* avx10_2_minmaxpv16hf_round */
    6142         4791 :     case 11065:  /* avx10_2_minmaxpv32hf_round */
    6143         4791 :     case 10119:  /* avx512dq_rangepv8df_round */
    6144         4791 :     case 10111:  /* avx512dq_rangepv16sf_round */
    6145         4791 :     case 4376:  /* fma_fcmaddc_v32hf_round */
    6146         4791 :     case 4372:  /* fma_fmaddc_v32hf_round */
    6147         4791 :     case 4161:  /* *fma_fmaddsub_v8df_round */
    6148         4791 :     case 4153:  /* *fma_fmaddsub_v16sf_round */
    6149         4791 :     case 4145:  /* *fma_fmaddsub_v32hf_round */
    6150         4791 :     case 3352:  /* avx512f_cmpv8df3_round */
    6151         4791 :     case 3344:  /* avx512f_cmpv16sf3_round */
    6152         4791 :     case 3336:  /* avx512bw_cmpv32hf3_round */
    6153         4791 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6154         4791 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0));
    6155         4791 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 1));
    6156         4791 :       ro[3] = *(ro_loc[3] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 2));
    6157         4791 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6158         4791 :       break;
    6159              : 
    6160         4574 :     case 3334:  /* sse2_vmmaskcmpv2df3 */
    6161         4574 :     case 3333:  /* sse_vmmaskcmpv4sf3 */
    6162         4574 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6163         4574 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    6164         4574 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6165         4574 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 0));
    6166         4574 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    6167         4574 :       recog_data.dup_num[0] = 1;
    6168         4574 :       break;
    6169              : 
    6170           42 :     case 8031:  /* *avx2_pcmpv16qi3_4 */
    6171           42 :     case 8030:  /* *avx2_pcmpv32qi3_4 */
    6172           42 :     case 3318:  /* *avx_cmpv4di3_ltint_not */
    6173           42 :     case 3317:  /* *avx_cmpv8si3_ltint_not */
    6174           42 :     case 3316:  /* *avx_cmpv2di3_ltint_not */
    6175           42 :     case 3315:  /* *avx_cmpv4si3_ltint_not */
    6176           42 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6177           42 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    6178           42 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    6179           42 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0), 0), 0));
    6180           42 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 1));
    6181           42 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 2));
    6182           42 :       break;
    6183              : 
    6184            0 :     case 8027:  /* *avx2_pcmpv4di3_2 */
    6185            0 :     case 8026:  /* *avx2_pcmpv8si3_2 */
    6186            0 :     case 8025:  /* *avx2_pcmpv16hi3_2 */
    6187            0 :     case 8024:  /* *avx2_pcmpv32qi3_2 */
    6188            0 :     case 8023:  /* *avx2_pcmpv2di3_2 */
    6189            0 :     case 8022:  /* *avx2_pcmpv4si3_2 */
    6190            0 :     case 8021:  /* *avx2_pcmpv8hi3_2 */
    6191            0 :     case 8020:  /* *avx2_pcmpv16qi3_2 */
    6192            0 :     case 3306:  /* *avx_cmpv2df3_4 */
    6193            0 :     case 3305:  /* *avx_cmpv4df3_4 */
    6194            0 :     case 3304:  /* *avx_cmpv4sf3_4 */
    6195            0 :     case 3303:  /* *avx_cmpv8sf3_4 */
    6196            0 :     case 3298:  /* *avx_cmpv2df3_2 */
    6197            0 :     case 3297:  /* *avx_cmpv4df3_2 */
    6198            0 :     case 3296:  /* *avx_cmpv4sf3_2 */
    6199            0 :     case 3295:  /* *avx_cmpv8sf3_2 */
    6200            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6201            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    6202            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    6203            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 2), 0), 0, 0));
    6204            0 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 2), 0), 0, 1));
    6205            0 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 2), 0), 0, 2));
    6206            0 :       break;
    6207              : 
    6208         3537 :     case 11111:  /* avx10_2_minmaxsv2df_mask_round */
    6209         3537 :     case 11107:  /* avx10_2_minmaxsv4sf_mask_round */
    6210         3537 :     case 11103:  /* avx10_2_minmaxsv8hf_mask_round */
    6211         3537 :     case 10205:  /* avx512f_vgetmantv2df_mask_round */
    6212         3537 :     case 10201:  /* avx512f_vgetmantv4sf_mask_round */
    6213         3537 :     case 10197:  /* avx512f_vgetmantv8hf_mask_round */
    6214         3537 :     case 10133:  /* avx512dq_rangesv2df_mask_round */
    6215         3537 :     case 10129:  /* avx512dq_rangesv4sf_mask_round */
    6216         3537 :     case 3286:  /* reducesv2df_mask_round */
    6217         3537 :     case 3282:  /* reducesv4sf_mask_round */
    6218         3537 :     case 3278:  /* reducesv8hf_mask_round */
    6219         3537 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6220         3537 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    6221         3537 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    6222         3537 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 2));
    6223         3537 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    6224         3537 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    6225         3537 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6226         3537 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    6227         3537 :       recog_data.dup_num[0] = 1;
    6228         3537 :       break;
    6229              : 
    6230         3255 :     case 11110:  /* avx10_2_minmaxsv2df_round */
    6231         3255 :     case 11106:  /* avx10_2_minmaxsv4sf_round */
    6232         3255 :     case 11102:  /* avx10_2_minmaxsv8hf_round */
    6233         3255 :     case 10204:  /* avx512f_vgetmantv2df_round */
    6234         3255 :     case 10200:  /* avx512f_vgetmantv4sf_round */
    6235         3255 :     case 10196:  /* avx512f_vgetmantv8hf_round */
    6236         3255 :     case 10132:  /* avx512dq_rangesv2df_round */
    6237         3255 :     case 10128:  /* avx512dq_rangesv4sf_round */
    6238         3255 :     case 3285:  /* reducesv2df_round */
    6239         3255 :     case 3281:  /* reducesv4sf_round */
    6240         3255 :     case 3277:  /* reducesv8hf_round */
    6241         3255 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6242         3255 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    6243         3255 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    6244         3255 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 2));
    6245         3255 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6246         3255 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    6247         3255 :       recog_data.dup_num[0] = 1;
    6248         3255 :       break;
    6249              : 
    6250         5470 :     case 11109:  /* avx10_2_minmaxsv2df_mask */
    6251         5470 :     case 11105:  /* avx10_2_minmaxsv4sf_mask */
    6252         5470 :     case 11101:  /* avx10_2_minmaxsv8hf_mask */
    6253         5470 :     case 10203:  /* avx512f_vgetmantv2df_mask */
    6254         5470 :     case 10199:  /* avx512f_vgetmantv4sf_mask */
    6255         5470 :     case 10195:  /* avx512f_vgetmantv8hf_mask */
    6256         5470 :     case 10131:  /* avx512dq_rangesv2df_mask */
    6257         5470 :     case 10127:  /* avx512dq_rangesv4sf_mask */
    6258         5470 :     case 3284:  /* reducesv2df_mask */
    6259         5470 :     case 3280:  /* reducesv4sf_mask */
    6260         5470 :     case 3276:  /* reducesv8hf_mask */
    6261         5470 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6262         5470 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    6263         5470 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    6264         5470 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 2));
    6265         5470 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6266         5470 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    6267         5470 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    6268         5470 :       recog_data.dup_num[0] = 1;
    6269         5470 :       break;
    6270              : 
    6271         4794 :     case 11108:  /* avx10_2_minmaxsv2df */
    6272         4794 :     case 11104:  /* avx10_2_minmaxsv4sf */
    6273         4794 :     case 11100:  /* avx10_2_minmaxsv8hf */
    6274         4794 :     case 10202:  /* avx512f_vgetmantv2df */
    6275         4794 :     case 10198:  /* avx512f_vgetmantv4sf */
    6276         4794 :     case 10194:  /* avx512f_vgetmantv8hf */
    6277         4794 :     case 10130:  /* avx512dq_rangesv2df */
    6278         4794 :     case 10126:  /* avx512dq_rangesv4sf */
    6279         4794 :     case 3320:  /* avx_vmcmpv2df3 */
    6280         4794 :     case 3319:  /* avx_vmcmpv4sf3 */
    6281         4794 :     case 3283:  /* reducesv2df */
    6282         4794 :     case 3279:  /* reducesv4sf */
    6283         4794 :     case 3275:  /* reducesv8hf */
    6284         4794 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6285         4794 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    6286         4794 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    6287         4794 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 2));
    6288         4794 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    6289         4794 :       recog_data.dup_num[0] = 1;
    6290         4794 :       break;
    6291              : 
    6292         4216 :     case 3238:  /* sse3_hsubv4sf3 */
    6293         4216 :     case 3237:  /* sse3_haddv4sf3 */
    6294         4216 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6295         4216 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    6296         4216 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0));
    6297         4216 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0);
    6298         4216 :       recog_data.dup_num[0] = 1;
    6299         4216 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0);
    6300         4216 :       recog_data.dup_num[1] = 1;
    6301         4216 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 0);
    6302         4216 :       recog_data.dup_num[2] = 1;
    6303         4216 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 0);
    6304         4216 :       recog_data.dup_num[3] = 2;
    6305         4216 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 0);
    6306         4216 :       recog_data.dup_num[4] = 2;
    6307         4216 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 0);
    6308         4216 :       recog_data.dup_num[5] = 2;
    6309         4216 :       break;
    6310              : 
    6311          360 :     case 3236:  /* avx_hsubv8sf3 */
    6312          360 :     case 3235:  /* avx_haddv8sf3 */
    6313          360 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6314          360 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    6315          360 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0), 0));
    6316          360 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1), 0);
    6317          360 :       recog_data.dup_num[0] = 1;
    6318          360 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0), 0);
    6319          360 :       recog_data.dup_num[1] = 1;
    6320          360 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 1), 0);
    6321          360 :       recog_data.dup_num[2] = 1;
    6322          360 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 1), 0);
    6323          360 :       recog_data.dup_num[3] = 2;
    6324          360 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 0), 0);
    6325          360 :       recog_data.dup_num[4] = 2;
    6326          360 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 1), 0);
    6327          360 :       recog_data.dup_num[5] = 2;
    6328          360 :       recog_data.dup_loc[6] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0), 0);
    6329          360 :       recog_data.dup_num[6] = 1;
    6330          360 :       recog_data.dup_loc[7] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 1), 0);
    6331          360 :       recog_data.dup_num[7] = 1;
    6332          360 :       recog_data.dup_loc[8] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 0), 0);
    6333          360 :       recog_data.dup_num[8] = 1;
    6334          360 :       recog_data.dup_loc[9] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 1), 0);
    6335          360 :       recog_data.dup_num[9] = 1;
    6336          360 :       recog_data.dup_loc[10] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 0), 0);
    6337          360 :       recog_data.dup_num[10] = 2;
    6338          360 :       recog_data.dup_loc[11] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 1), 0);
    6339          360 :       recog_data.dup_num[11] = 2;
    6340          360 :       recog_data.dup_loc[12] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 0), 0);
    6341          360 :       recog_data.dup_num[12] = 2;
    6342          360 :       recog_data.dup_loc[13] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 1), 0);
    6343          360 :       recog_data.dup_num[13] = 2;
    6344          360 :       break;
    6345              : 
    6346          360 :     case 3230:  /* avx_hsubv4df3 */
    6347          360 :     case 3229:  /* avx_haddv4df3 */
    6348          360 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6349          360 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    6350          360 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0));
    6351          360 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0);
    6352          360 :       recog_data.dup_num[0] = 1;
    6353          360 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 0);
    6354          360 :       recog_data.dup_num[1] = 2;
    6355          360 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0);
    6356          360 :       recog_data.dup_num[2] = 1;
    6357          360 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 0);
    6358          360 :       recog_data.dup_num[3] = 1;
    6359          360 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 0);
    6360          360 :       recog_data.dup_num[4] = 2;
    6361          360 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 0);
    6362          360 :       recog_data.dup_num[5] = 2;
    6363          360 :       break;
    6364              : 
    6365        35364 :     case 3228:  /* vec_addsubv2df3 */
    6366        35364 :     case 3227:  /* vec_addsubv4df3 */
    6367        35364 :     case 3226:  /* vec_addsubv4sf3 */
    6368        35364 :     case 3225:  /* vec_addsubv8sf3 */
    6369        35364 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6370        35364 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    6371        35364 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6372        35364 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0);
    6373        35364 :       recog_data.dup_num[0] = 1;
    6374        35364 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 1);
    6375        35364 :       recog_data.dup_num[1] = 2;
    6376        35364 :       break;
    6377              : 
    6378         3394 :     case 7156:  /* avx512f_sgetexpv2df_mask_round */
    6379         3394 :     case 7152:  /* avx512f_sgetexpv4sf_mask_round */
    6380         3394 :     case 7148:  /* avx512f_sgetexpv8hf_mask_round */
    6381         3394 :     case 5494:  /* avx512f_vmscalefv2df_mask_round */
    6382         3394 :     case 5490:  /* avx512f_vmscalefv4sf_mask_round */
    6383         3394 :     case 5486:  /* avx512f_vmscalefv8hf_mask_round */
    6384         3394 :     case 3224:  /* sse2_ieee_vmminv2df3_mask_round */
    6385         3394 :     case 3220:  /* sse2_ieee_vmmaxv2df3_mask_round */
    6386         3394 :     case 3216:  /* sse_ieee_vmminv4sf3_mask_round */
    6387         3394 :     case 3212:  /* sse_ieee_vmmaxv4sf3_mask_round */
    6388         3394 :     case 3208:  /* avx512fp16_ieee_vmminv8hf3_mask_round */
    6389         3394 :     case 3204:  /* avx512fp16_ieee_vmmaxv8hf3_mask_round */
    6390         3394 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6391         3394 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 0));
    6392         3394 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0, 1));
    6393         3394 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    6394         3394 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    6395         3394 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6396         3394 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    6397         3394 :       recog_data.dup_num[0] = 1;
    6398         3394 :       break;
    6399              : 
    6400         2287 :     case 7155:  /* avx512f_sgetexpv2df_round */
    6401         2287 :     case 7151:  /* avx512f_sgetexpv4sf_round */
    6402         2287 :     case 7147:  /* avx512f_sgetexpv8hf_round */
    6403         2287 :     case 5492:  /* avx512f_vmscalefv2df_round */
    6404         2287 :     case 5488:  /* avx512f_vmscalefv4sf_round */
    6405         2287 :     case 5484:  /* avx512f_vmscalefv8hf_round */
    6406         2287 :     case 4452:  /* avx512fp16_fcmulcsh_v8hf_round */
    6407         2287 :     case 4448:  /* avx512fp16_fmulcsh_v8hf_round */
    6408         2287 :     case 3223:  /* sse2_ieee_vmminv2df3_round */
    6409         2287 :     case 3219:  /* sse2_ieee_vmmaxv2df3_round */
    6410         2287 :     case 3215:  /* sse_ieee_vmminv4sf3_round */
    6411         2287 :     case 3211:  /* sse_ieee_vmmaxv4sf3_round */
    6412         2287 :     case 3207:  /* avx512fp16_ieee_vmminv8hf3_round */
    6413         2287 :     case 3203:  /* avx512fp16_ieee_vmmaxv8hf3_round */
    6414         2287 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6415         2287 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    6416         2287 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    6417         2287 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6418         2287 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    6419         2287 :       recog_data.dup_num[0] = 1;
    6420         2287 :       break;
    6421              : 
    6422         6294 :     case 7154:  /* avx512f_sgetexpv2df_mask */
    6423         6294 :     case 7150:  /* avx512f_sgetexpv4sf_mask */
    6424         6294 :     case 7146:  /* avx512f_sgetexpv8hf_mask */
    6425         6294 :     case 5493:  /* avx512f_vmscalefv2df_mask */
    6426         6294 :     case 5489:  /* avx512f_vmscalefv4sf_mask */
    6427         6294 :     case 5485:  /* avx512f_vmscalefv8hf_mask */
    6428         6294 :     case 3222:  /* sse2_ieee_vmminv2df3_mask */
    6429         6294 :     case 3218:  /* sse2_ieee_vmmaxv2df3_mask */
    6430         6294 :     case 3214:  /* sse_ieee_vmminv4sf3_mask */
    6431         6294 :     case 3210:  /* sse_ieee_vmmaxv4sf3_mask */
    6432         6294 :     case 3206:  /* avx512fp16_ieee_vmminv8hf3_mask */
    6433         6294 :     case 3202:  /* avx512fp16_ieee_vmmaxv8hf3_mask */
    6434         6294 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6435         6294 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    6436         6294 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    6437         6294 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6438         6294 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    6439         6294 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    6440         6294 :       recog_data.dup_num[0] = 1;
    6441         6294 :       break;
    6442              : 
    6443         3523 :     case 7153:  /* avx512f_sgetexpv2df */
    6444         3523 :     case 7149:  /* avx512f_sgetexpv4sf */
    6445         3523 :     case 7145:  /* avx512f_sgetexpv8hf */
    6446         3523 :     case 5491:  /* avx512f_vmscalefv2df */
    6447         3523 :     case 5487:  /* avx512f_vmscalefv4sf */
    6448         3523 :     case 5483:  /* avx512f_vmscalefv8hf */
    6449         3523 :     case 4451:  /* avx512fp16_fcmulcsh_v8hf */
    6450         3523 :     case 4447:  /* avx512fp16_fmulcsh_v8hf */
    6451         3523 :     case 3221:  /* sse2_ieee_vmminv2df3 */
    6452         3523 :     case 3217:  /* sse2_ieee_vmmaxv2df3 */
    6453         3523 :     case 3213:  /* sse_ieee_vmminv4sf3 */
    6454         3523 :     case 3209:  /* sse_ieee_vmmaxv4sf3 */
    6455         3523 :     case 3205:  /* avx512fp16_ieee_vmminv8hf3 */
    6456         3523 :     case 3201:  /* avx512fp16_ieee_vmmaxv8hf3 */
    6457         3523 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6458         3523 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    6459         3523 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    6460         3523 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    6461         3523 :       recog_data.dup_num[0] = 1;
    6462         3523 :       break;
    6463              : 
    6464          187 :     case 3176:  /* *ieee_minv2df3 */
    6465          187 :     case 3175:  /* *ieee_maxv2df3 */
    6466          187 :     case 3174:  /* *ieee_minv4sf3 */
    6467          187 :     case 3173:  /* *ieee_maxv4sf3 */
    6468          187 :     case 3172:  /* *ieee_minv8hf3 */
    6469          187 :     case 3171:  /* *ieee_maxv8hf3 */
    6470          187 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6471          187 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0), 0));
    6472          187 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 1));
    6473          187 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    6474          187 :       recog_data.dup_num[0] = 1;
    6475          187 :       break;
    6476              : 
    6477        13209 :     case 10193:  /* avx512vl_getmantv2df_mask_round */
    6478        13209 :     case 10189:  /* avx512vl_getmantv4df_mask_round */
    6479        13209 :     case 10185:  /* avx512f_getmantv8df_mask_round */
    6480        13209 :     case 10181:  /* avx512vl_getmantv4sf_mask_round */
    6481        13209 :     case 10177:  /* avx512vl_getmantv8sf_mask_round */
    6482        13209 :     case 10173:  /* avx512f_getmantv16sf_mask_round */
    6483        13209 :     case 10169:  /* avx512fp16_getmantv8hf_mask_round */
    6484        13209 :     case 10165:  /* avx512vl_getmantv16hf_mask_round */
    6485        13209 :     case 10161:  /* avx512bw_getmantv32hf_mask_round */
    6486        13209 :     case 9819:  /* avx512f_vcvtps2ph512_mask_round */
    6487        13209 :     case 7260:  /* avx512vl_rndscalev2df_mask_round */
    6488        13209 :     case 7256:  /* avx512vl_rndscalev4df_mask_round */
    6489        13209 :     case 7252:  /* avx512f_rndscalev8df_mask_round */
    6490        13209 :     case 7248:  /* avx512vl_rndscalev4sf_mask_round */
    6491        13209 :     case 7244:  /* avx512vl_rndscalev8sf_mask_round */
    6492        13209 :     case 7240:  /* avx512f_rndscalev16sf_mask_round */
    6493        13209 :     case 7236:  /* avx512fp16_rndscalev8hf_mask_round */
    6494        13209 :     case 7232:  /* avx512vl_rndscalev16hf_mask_round */
    6495        13209 :     case 7228:  /* avx512bw_rndscalev32hf_mask_round */
    6496        13209 :     case 5530:  /* avx512vl_scalefv2df_mask_round */
    6497        13209 :     case 5526:  /* avx512vl_scalefv4df_mask_round */
    6498        13209 :     case 5522:  /* avx512f_scalefv8df_mask_round */
    6499        13209 :     case 5518:  /* avx512vl_scalefv4sf_mask_round */
    6500        13209 :     case 5514:  /* avx512vl_scalefv8sf_mask_round */
    6501        13209 :     case 5510:  /* avx512f_scalefv16sf_mask_round */
    6502        13209 :     case 5506:  /* avx512fp16_scalefv8hf_mask_round */
    6503        13209 :     case 5502:  /* avx512vl_scalefv16hf_mask_round */
    6504        13209 :     case 5498:  /* avx512bw_scalefv32hf_mask_round */
    6505        13209 :     case 3274:  /* reducepv2df_mask_round */
    6506        13209 :     case 3270:  /* reducepv4df_mask_round */
    6507        13209 :     case 3266:  /* reducepv8df_mask_round */
    6508        13209 :     case 3262:  /* reducepv4sf_mask_round */
    6509        13209 :     case 3258:  /* reducepv8sf_mask_round */
    6510        13209 :     case 3254:  /* reducepv16sf_mask_round */
    6511        13209 :     case 3250:  /* reducepv8hf_mask_round */
    6512        13209 :     case 3246:  /* reducepv16hf_mask_round */
    6513        13209 :     case 3242:  /* reducepv32hf_mask_round */
    6514        13209 :     case 3162:  /* ieee_minv8df3_mask_round */
    6515        13209 :     case 3158:  /* ieee_maxv8df3_mask_round */
    6516        13209 :     case 3146:  /* ieee_minv16sf3_mask_round */
    6517        13209 :     case 3142:  /* ieee_maxv16sf3_mask_round */
    6518        13209 :     case 3130:  /* ieee_minv32hf3_mask_round */
    6519        13209 :     case 3126:  /* ieee_maxv32hf3_mask_round */
    6520        13209 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6521        13209 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 0));
    6522        13209 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0, 1));
    6523        13209 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6524        13209 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    6525        13209 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6526        13209 :       break;
    6527              : 
    6528        67987 :     case 11253:  /* vunpackbv32qi_mask */
    6529        67987 :     case 11251:  /* vunpackbv16qi_mask */
    6530        67987 :     case 11249:  /* vunpackbv64qi_mask */
    6531        67987 :     case 11205:  /* vcvtbiasps2hf8sv16sf_mask */
    6532        67987 :     case 11203:  /* vcvtbiasps2hf8v16sf_mask */
    6533        67987 :     case 11201:  /* vcvtbiasps2bf8sv16sf_mask */
    6534        67987 :     case 11199:  /* vcvtbiasps2bf8v16sf_mask */
    6535        67987 :     case 10869:  /* avx10_2_getmantbf16_v8bf_mask */
    6536        67987 :     case 10867:  /* avx10_2_reducebf16_v8bf_mask */
    6537        67987 :     case 10865:  /* avx10_2_rndscalebf16_v8bf_mask */
    6538        67987 :     case 10863:  /* avx10_2_getmantbf16_v16bf_mask */
    6539        67987 :     case 10861:  /* avx10_2_reducebf16_v16bf_mask */
    6540        67987 :     case 10859:  /* avx10_2_rndscalebf16_v16bf_mask */
    6541        67987 :     case 10857:  /* avx10_2_getmantbf16_v32bf_mask */
    6542        67987 :     case 10855:  /* avx10_2_reducebf16_v32bf_mask */
    6543        67987 :     case 10853:  /* avx10_2_rndscalebf16_v32bf_mask */
    6544        67987 :     case 10743:  /* avx10_2_scalefbf16_v8bf_mask */
    6545        67987 :     case 10741:  /* avx10_2_scalefbf16_v16bf_mask */
    6546        67987 :     case 10739:  /* avx10_2_scalefbf16_v32bf_mask */
    6547        67987 :     case 10644:  /* vcvtbiasph2hf8sv16hf_mask */
    6548        67987 :     case 10642:  /* vcvtbiasph2hf8v16hf_mask */
    6549        67987 :     case 10640:  /* vcvtbiasph2bf8sv16hf_mask */
    6550        67987 :     case 10638:  /* vcvtbiasph2bf8v16hf_mask */
    6551        67987 :     case 10636:  /* vcvtbiasph2hf8sv32hf_mask */
    6552        67987 :     case 10634:  /* vcvtbiasph2hf8v32hf_mask */
    6553        67987 :     case 10632:  /* vcvtbiasph2bf8sv32hf_mask */
    6554        67987 :     case 10630:  /* vcvtbiasph2bf8v32hf_mask */
    6555        67987 :     case 10620:  /* vcvt2ph2hf8sv8hf_mask */
    6556        67987 :     case 10618:  /* vcvt2ph2hf8v8hf_mask */
    6557        67987 :     case 10616:  /* vcvt2ph2bf8sv8hf_mask */
    6558        67987 :     case 10614:  /* vcvt2ph2bf8v8hf_mask */
    6559        67987 :     case 10612:  /* vcvt2ph2hf8sv16hf_mask */
    6560        67987 :     case 10610:  /* vcvt2ph2hf8v16hf_mask */
    6561        67987 :     case 10608:  /* vcvt2ph2bf8sv16hf_mask */
    6562        67987 :     case 10606:  /* vcvt2ph2bf8v16hf_mask */
    6563        67987 :     case 10604:  /* vcvt2ph2hf8sv32hf_mask */
    6564        67987 :     case 10602:  /* vcvt2ph2hf8v32hf_mask */
    6565        67987 :     case 10600:  /* vcvt2ph2bf8sv32hf_mask */
    6566        67987 :     case 10598:  /* vcvt2ph2bf8v32hf_mask */
    6567        67987 :     case 10334:  /* vgf2p8mulb_v16qi_mask */
    6568        67987 :     case 10332:  /* vgf2p8mulb_v32qi_mask */
    6569        67987 :     case 10330:  /* vgf2p8mulb_v64qi_mask */
    6570        67987 :     case 10284:  /* vpmultishiftqbv32qi_mask */
    6571        67987 :     case 10282:  /* vpmultishiftqbv16qi_mask */
    6572        67987 :     case 10280:  /* vpmultishiftqbv64qi_mask */
    6573        67987 :     case 10192:  /* avx512vl_getmantv2df_mask */
    6574        67987 :     case 10188:  /* avx512vl_getmantv4df_mask */
    6575        67987 :     case 10184:  /* avx512f_getmantv8df_mask */
    6576        67987 :     case 10180:  /* avx512vl_getmantv4sf_mask */
    6577        67987 :     case 10176:  /* avx512vl_getmantv8sf_mask */
    6578        67987 :     case 10172:  /* avx512f_getmantv16sf_mask */
    6579        67987 :     case 10168:  /* avx512fp16_getmantv8hf_mask */
    6580        67987 :     case 10164:  /* avx512vl_getmantv16hf_mask */
    6581        67987 :     case 10160:  /* avx512bw_getmantv32hf_mask */
    6582        67987 :     case 9818:  /* avx512f_vcvtps2ph512_mask */
    6583        67987 :     case 9813:  /* vcvtps2ph256_mask */
    6584        67987 :     case 9515:  /* avx_vpermilvarv2df3_mask */
    6585        67987 :     case 9513:  /* avx_vpermilvarv4df3_mask */
    6586        67987 :     case 9511:  /* avx512f_vpermilvarv8df3_mask */
    6587        67987 :     case 9509:  /* avx_vpermilvarv4sf3_mask */
    6588        67987 :     case 9507:  /* avx_vpermilvarv8sf3_mask */
    6589        67987 :     case 9505:  /* avx512f_vpermilvarv16sf3_mask */
    6590        67987 :     case 9286:  /* avx512bw_permvarv32bf_mask */
    6591        67987 :     case 9284:  /* avx512vl_permvarv16bf_mask */
    6592        67987 :     case 9282:  /* avx512vl_permvarv8bf_mask */
    6593        67987 :     case 9280:  /* avx512bw_permvarv32hf_mask */
    6594        67987 :     case 9278:  /* avx512vl_permvarv16hf_mask */
    6595        67987 :     case 9276:  /* avx512fp16_permvarv8hf_mask */
    6596        67987 :     case 9274:  /* avx512bw_permvarv32hi_mask */
    6597        67987 :     case 9272:  /* avx512vl_permvarv16hi_mask */
    6598        67987 :     case 9270:  /* avx512vl_permvarv8hi_mask */
    6599        67987 :     case 9268:  /* avx512vl_permvarv32qi_mask */
    6600        67987 :     case 9266:  /* avx512vl_permvarv16qi_mask */
    6601        67987 :     case 9264:  /* avx512bw_permvarv64qi_mask */
    6602        67987 :     case 9262:  /* avx2_permvarv4df_mask */
    6603        67987 :     case 9260:  /* avx2_permvarv4di_mask */
    6604        67987 :     case 9258:  /* avx512f_permvarv8df_mask */
    6605        67987 :     case 9256:  /* avx512f_permvarv8di_mask */
    6606        67987 :     case 9254:  /* avx512f_permvarv16sf_mask */
    6607        67987 :     case 9252:  /* avx512f_permvarv16si_mask */
    6608        67987 :     case 9250:  /* avx2_permvarv8sf_mask */
    6609        67987 :     case 9248:  /* avx2_permvarv8si_mask */
    6610        67987 :     case 8856:  /* sse4_1_packusdw_mask */
    6611        67987 :     case 8854:  /* avx2_packusdw_mask */
    6612        67987 :     case 8852:  /* avx512bw_packusdw_mask */
    6613        67987 :     case 8752:  /* ssse3_pshufbv16qi3_mask */
    6614        67987 :     case 8750:  /* avx2_pshufbv32qi3_mask */
    6615        67987 :     case 8748:  /* avx512bw_pshufbv64qi3_mask */
    6616        67987 :     case 8734:  /* avx512bw_pmaddubsw512v32hi_mask */
    6617        67987 :     case 8732:  /* avx512bw_pmaddubsw512v16hi_mask */
    6618        67987 :     case 8730:  /* avx512bw_pmaddubsw512v8hi_mask */
    6619        67987 :     case 8573:  /* avx512bw_pshufhwv32hi_mask */
    6620        67987 :     case 8567:  /* avx512bw_pshuflwv32hi_mask */
    6621        67987 :     case 8440:  /* sse2_packuswb_mask */
    6622        67987 :     case 8438:  /* avx2_packuswb_mask */
    6623        67987 :     case 8436:  /* avx512bw_packuswb_mask */
    6624        67987 :     case 7707:  /* avx512bw_pmaddwd512v8hi_mask */
    6625        67987 :     case 7705:  /* avx512bw_pmaddwd512v16hi_mask */
    6626        67987 :     case 7703:  /* avx512bw_pmaddwd512v32hi_mask */
    6627        67987 :     case 7259:  /* avx512vl_rndscalev2df_mask */
    6628        67987 :     case 7255:  /* avx512vl_rndscalev4df_mask */
    6629        67987 :     case 7251:  /* avx512f_rndscalev8df_mask */
    6630        67987 :     case 7247:  /* avx512vl_rndscalev4sf_mask */
    6631        67987 :     case 7243:  /* avx512vl_rndscalev8sf_mask */
    6632        67987 :     case 7239:  /* avx512f_rndscalev16sf_mask */
    6633        67987 :     case 7235:  /* avx512fp16_rndscalev8hf_mask */
    6634        67987 :     case 7231:  /* avx512vl_rndscalev16hf_mask */
    6635        67987 :     case 7227:  /* avx512bw_rndscalev32hf_mask */
    6636        67987 :     case 5529:  /* avx512vl_scalefv2df_mask */
    6637        67987 :     case 5525:  /* avx512vl_scalefv4df_mask */
    6638        67987 :     case 5521:  /* avx512f_scalefv8df_mask */
    6639        67987 :     case 5517:  /* avx512vl_scalefv4sf_mask */
    6640        67987 :     case 5513:  /* avx512vl_scalefv8sf_mask */
    6641        67987 :     case 5509:  /* avx512f_scalefv16sf_mask */
    6642        67987 :     case 5505:  /* avx512fp16_scalefv8hf_mask */
    6643        67987 :     case 5501:  /* avx512vl_scalefv16hf_mask */
    6644        67987 :     case 5497:  /* avx512bw_scalefv32hf_mask */
    6645        67987 :     case 3273:  /* reducepv2df_mask */
    6646        67987 :     case 3269:  /* reducepv4df_mask */
    6647        67987 :     case 3265:  /* reducepv8df_mask */
    6648        67987 :     case 3261:  /* reducepv4sf_mask */
    6649        67987 :     case 3257:  /* reducepv8sf_mask */
    6650        67987 :     case 3253:  /* reducepv16sf_mask */
    6651        67987 :     case 3249:  /* reducepv8hf_mask */
    6652        67987 :     case 3245:  /* reducepv16hf_mask */
    6653        67987 :     case 3241:  /* reducepv32hf_mask */
    6654        67987 :     case 3170:  /* ieee_minv2df3_mask */
    6655        67987 :     case 3168:  /* ieee_maxv2df3_mask */
    6656        67987 :     case 3166:  /* ieee_minv4df3_mask */
    6657        67987 :     case 3164:  /* ieee_maxv4df3_mask */
    6658        67987 :     case 3161:  /* ieee_minv8df3_mask */
    6659        67987 :     case 3157:  /* ieee_maxv8df3_mask */
    6660        67987 :     case 3154:  /* ieee_minv4sf3_mask */
    6661        67987 :     case 3152:  /* ieee_maxv4sf3_mask */
    6662        67987 :     case 3150:  /* ieee_minv8sf3_mask */
    6663        67987 :     case 3148:  /* ieee_maxv8sf3_mask */
    6664        67987 :     case 3145:  /* ieee_minv16sf3_mask */
    6665        67987 :     case 3141:  /* ieee_maxv16sf3_mask */
    6666        67987 :     case 3138:  /* ieee_minv8hf3_mask */
    6667        67987 :     case 3136:  /* ieee_maxv8hf3_mask */
    6668        67987 :     case 3134:  /* ieee_minv16hf3_mask */
    6669        67987 :     case 3132:  /* ieee_maxv16hf3_mask */
    6670        67987 :     case 3129:  /* ieee_minv32hf3_mask */
    6671        67987 :     case 3125:  /* ieee_maxv32hf3_mask */
    6672        67987 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6673        67987 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    6674        67987 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    6675        67987 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    6676        67987 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    6677        67987 :       break;
    6678              : 
    6679         5079 :     case 10191:  /* avx512vl_getmantv2df_round */
    6680         5079 :     case 10187:  /* avx512vl_getmantv4df_round */
    6681         5079 :     case 10183:  /* avx512f_getmantv8df_round */
    6682         5079 :     case 10179:  /* avx512vl_getmantv4sf_round */
    6683         5079 :     case 10175:  /* avx512vl_getmantv8sf_round */
    6684         5079 :     case 10171:  /* avx512f_getmantv16sf_round */
    6685         5079 :     case 10167:  /* avx512fp16_getmantv8hf_round */
    6686         5079 :     case 10163:  /* avx512vl_getmantv16hf_round */
    6687         5079 :     case 10159:  /* avx512bw_getmantv32hf_round */
    6688         5079 :     case 9817:  /* *avx512f_vcvtps2ph512_round */
    6689         5079 :     case 7258:  /* avx512vl_rndscalev2df_round */
    6690         5079 :     case 7254:  /* avx512vl_rndscalev4df_round */
    6691         5079 :     case 7250:  /* avx512f_rndscalev8df_round */
    6692         5079 :     case 7246:  /* avx512vl_rndscalev4sf_round */
    6693         5079 :     case 7242:  /* avx512vl_rndscalev8sf_round */
    6694         5079 :     case 7238:  /* avx512f_rndscalev16sf_round */
    6695         5079 :     case 7234:  /* avx512fp16_rndscalev8hf_round */
    6696         5079 :     case 7230:  /* avx512vl_rndscalev16hf_round */
    6697         5079 :     case 7226:  /* avx512bw_rndscalev32hf_round */
    6698         5079 :     case 5528:  /* avx512vl_scalefv2df_round */
    6699         5079 :     case 5524:  /* avx512vl_scalefv4df_round */
    6700         5079 :     case 5520:  /* avx512f_scalefv8df_round */
    6701         5079 :     case 5516:  /* avx512vl_scalefv4sf_round */
    6702         5079 :     case 5512:  /* avx512vl_scalefv8sf_round */
    6703         5079 :     case 5508:  /* avx512f_scalefv16sf_round */
    6704         5079 :     case 5504:  /* avx512fp16_scalefv8hf_round */
    6705         5079 :     case 5500:  /* avx512vl_scalefv16hf_round */
    6706         5079 :     case 5496:  /* avx512bw_scalefv32hf_round */
    6707         5079 :     case 4425:  /* avx512bw_fcmulc_v32hf_round */
    6708         5079 :     case 4421:  /* avx512bw_fmulc_v32hf_round */
    6709         5079 :     case 3272:  /* *reducepv2df_round */
    6710         5079 :     case 3268:  /* *reducepv4df_round */
    6711         5079 :     case 3264:  /* *reducepv8df_round */
    6712         5079 :     case 3260:  /* *reducepv4sf_round */
    6713         5079 :     case 3256:  /* *reducepv8sf_round */
    6714         5079 :     case 3252:  /* *reducepv16sf_round */
    6715         5079 :     case 3248:  /* *reducepv8hf_round */
    6716         5079 :     case 3244:  /* *reducepv16hf_round */
    6717         5079 :     case 3240:  /* *reducepv32hf_round */
    6718         5079 :     case 3160:  /* ieee_minv8df3_round */
    6719         5079 :     case 3156:  /* ieee_maxv8df3_round */
    6720         5079 :     case 3144:  /* ieee_minv16sf3_round */
    6721         5079 :     case 3140:  /* ieee_maxv16sf3_round */
    6722         5079 :     case 3128:  /* ieee_minv32hf3_round */
    6723         5079 :     case 3124:  /* ieee_maxv32hf3_round */
    6724         5079 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6725         5079 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0));
    6726         5079 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 1));
    6727         5079 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6728         5079 :       break;
    6729              : 
    6730          228 :     case 3122:  /* *minmaxv2df3_4 */
    6731          228 :     case 3121:  /* *minmaxv4df3_4 */
    6732          228 :     case 3120:  /* *minmaxv4sf3_4 */
    6733          228 :     case 3119:  /* *minmaxv8sf3_4 */
    6734          228 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6735          228 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    6736          228 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    6737          228 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6738          228 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    6739          228 :       break;
    6740              : 
    6741           60 :     case 3118:  /* *minmaxv2df3_3 */
    6742           60 :     case 3117:  /* *minmaxv4df3_3 */
    6743           60 :     case 3116:  /* *minmaxv4sf3_3 */
    6744           60 :     case 3115:  /* *minmaxv8sf3_3 */
    6745           60 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6746           60 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    6747           60 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    6748           60 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    6749           60 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    6750           60 :       break;
    6751              : 
    6752         4158 :     case 8065:  /* *avx2_pcmpv4di3_8 */
    6753         4158 :     case 8064:  /* *avx2_pcmpv8si3_8 */
    6754         4158 :     case 8063:  /* *avx2_pcmpv16hi3_8 */
    6755         4158 :     case 8062:  /* *avx2_pcmpv32qi3_8 */
    6756         4158 :     case 8061:  /* *avx2_pcmpv2di3_8 */
    6757         4158 :     case 8060:  /* *avx2_pcmpv4si3_8 */
    6758         4158 :     case 8059:  /* *avx2_pcmpv8hi3_8 */
    6759         4158 :     case 8058:  /* *avx2_pcmpv16qi3_8 */
    6760         4158 :     case 8057:  /* *avx2_pcmpv4di3_7 */
    6761         4158 :     case 8056:  /* *avx2_pcmpv8si3_7 */
    6762         4158 :     case 8055:  /* *avx2_pcmpv16hi3_7 */
    6763         4158 :     case 8054:  /* *avx2_pcmpv32qi3_7 */
    6764         4158 :     case 8053:  /* *avx2_pcmpv2di3_7 */
    6765         4158 :     case 8052:  /* *avx2_pcmpv4si3_7 */
    6766         4158 :     case 8051:  /* *avx2_pcmpv8hi3_7 */
    6767         4158 :     case 8050:  /* *avx2_pcmpv16qi3_7 */
    6768         4158 :     case 8049:  /* *avx2_pcmpv4di3_6 */
    6769         4158 :     case 8048:  /* *avx2_pcmpv4di3_6 */
    6770         4158 :     case 8047:  /* *avx2_pcmpv8si3_6 */
    6771         4158 :     case 8046:  /* *avx2_pcmpv8si3_6 */
    6772         4158 :     case 8045:  /* *avx2_pcmpv16hi3_6 */
    6773         4158 :     case 8044:  /* *avx2_pcmpv16hi3_6 */
    6774         4158 :     case 8043:  /* *avx2_pcmpv32qi3_6 */
    6775         4158 :     case 8042:  /* *avx2_pcmpv32qi3_6 */
    6776         4158 :     case 8041:  /* *avx2_pcmpv2di3_6 */
    6777         4158 :     case 8040:  /* *avx2_pcmpv2di3_6 */
    6778         4158 :     case 8039:  /* *avx2_pcmpv4si3_6 */
    6779         4158 :     case 8038:  /* *avx2_pcmpv4si3_6 */
    6780         4158 :     case 8037:  /* *avx2_pcmpv8hi3_6 */
    6781         4158 :     case 8036:  /* *avx2_pcmpv8hi3_6 */
    6782         4158 :     case 8035:  /* *avx2_pcmpv16qi3_6 */
    6783         4158 :     case 8034:  /* *avx2_pcmpv16qi3_6 */
    6784         4158 :     case 8029:  /* *avx2_pcmpv16qi3_3 */
    6785         4158 :     case 8028:  /* *avx2_pcmpv32qi3_3 */
    6786         4158 :     case 8019:  /* *avx2_pcmpv4di3_1 */
    6787         4158 :     case 8018:  /* *avx2_pcmpv8si3_1 */
    6788         4158 :     case 8017:  /* *avx2_pcmpv16hi3_1 */
    6789         4158 :     case 8016:  /* *avx2_pcmpv32qi3_1 */
    6790         4158 :     case 8015:  /* *avx2_pcmpv2di3_1 */
    6791         4158 :     case 8014:  /* *avx2_pcmpv4si3_1 */
    6792         4158 :     case 8013:  /* *avx2_pcmpv8hi3_1 */
    6793         4158 :     case 8012:  /* *avx2_pcmpv16qi3_1 */
    6794         4158 :     case 3314:  /* *avx_cmpv4di3_ltint */
    6795         4158 :     case 3313:  /* *avx_cmpv8si3_ltint */
    6796         4158 :     case 3312:  /* *avx_cmpv2di3_ltint */
    6797         4158 :     case 3311:  /* *avx_cmpv4si3_ltint */
    6798         4158 :     case 3310:  /* *avx_cmpv2df3_lt */
    6799         4158 :     case 3309:  /* *avx_cmpv4df3_lt */
    6800         4158 :     case 3308:  /* *avx_cmpv4sf3_lt */
    6801         4158 :     case 3307:  /* *avx_cmpv8sf3_lt */
    6802         4158 :     case 3302:  /* *avx_cmpv2df3_3 */
    6803         4158 :     case 3301:  /* *avx_cmpv4df3_3 */
    6804         4158 :     case 3300:  /* *avx_cmpv4sf3_3 */
    6805         4158 :     case 3299:  /* *avx_cmpv8sf3_3 */
    6806         4158 :     case 3294:  /* *avx_cmpv2df3_1 */
    6807         4158 :     case 3293:  /* *avx_cmpv4df3_1 */
    6808         4158 :     case 3292:  /* *avx_cmpv4sf3_1 */
    6809         4158 :     case 3291:  /* *avx_cmpv8sf3_1 */
    6810         4158 :     case 3110:  /* *minmaxv2df3_1 */
    6811         4158 :     case 3109:  /* *minmaxv4df3_1 */
    6812         4158 :     case 3108:  /* *minmaxv8df3_1 */
    6813         4158 :     case 3107:  /* *minmaxv4sf3_1 */
    6814         4158 :     case 3106:  /* *minmaxv8sf3_1 */
    6815         4158 :     case 3105:  /* *minmaxv16sf3_1 */
    6816         4158 :     case 3104:  /* *minmaxv8hf3_1 */
    6817         4158 :     case 3103:  /* *minmaxv16hf3_1 */
    6818         4158 :     case 3102:  /* *minmaxv32hf3_1 */
    6819         4158 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6820         4158 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    6821         4158 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    6822         4158 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0));
    6823         4158 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 1));
    6824         4158 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 2));
    6825         4158 :       break;
    6826              : 
    6827            0 :     case 3053:  /* *avx512fp16_vmrsqrtv8hf2 */
    6828            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6829            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0, 0));
    6830            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    6831            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6832            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    6833            0 :       break;
    6834              : 
    6835            0 :     case 3023:  /* *sse2_vmsqrtv2df2_mask_round */
    6836            0 :     case 3019:  /* *sse_vmsqrtv4sf2_mask_round */
    6837            0 :     case 3015:  /* *avx512fp16_vmsqrtv8hf2_mask_round */
    6838            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6839            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0), 0));
    6840            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6841            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    6842            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    6843            0 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6844            0 :       break;
    6845              : 
    6846            0 :     case 4843:  /* avx512fp16_vcvtsd2sh_mask_mem */
    6847            0 :     case 4841:  /* avx512fp16_vcvtss2sh_mask_mem */
    6848            0 :     case 4831:  /* avx512fp16_vcvtsh2ss_mask_mem */
    6849            0 :     case 4829:  /* avx512fp16_vcvtsh2sd_mask_mem */
    6850            0 :     case 3022:  /* *sse2_vmsqrtv2df2_mask */
    6851            0 :     case 3018:  /* *sse_vmsqrtv4sf2_mask */
    6852            0 :     case 3014:  /* *avx512fp16_vmsqrtv8hf2_mask */
    6853            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6854            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    6855            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    6856            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6857            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    6858            0 :       break;
    6859              : 
    6860            0 :     case 3021:  /* *sse2_vmsqrtv2df2_round */
    6861            0 :     case 3017:  /* *sse_vmsqrtv4sf2_round */
    6862            0 :     case 3013:  /* *avx512fp16_vmsqrtv8hf2_round */
    6863            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6864            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    6865            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6866            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6867            0 :       break;
    6868              : 
    6869         1721 :     case 3011:  /* sse2_vmsqrtv2df2_mask_round */
    6870         1721 :     case 3007:  /* sse_vmsqrtv4sf2_mask_round */
    6871         1721 :     case 3003:  /* avx512fp16_vmsqrtv8hf2_mask_round */
    6872         1721 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6873         1721 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    6874         1721 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6875         1721 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    6876         1721 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    6877         1721 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6878         1721 :       break;
    6879              : 
    6880          310 :     case 3010:  /* sse2_vmsqrtv2df2_mask */
    6881          310 :     case 3006:  /* sse_vmsqrtv4sf2_mask */
    6882          310 :     case 3002:  /* avx512fp16_vmsqrtv8hf2_mask */
    6883          310 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6884          310 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    6885          310 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    6886          310 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    6887          310 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    6888          310 :       break;
    6889              : 
    6890          486 :     case 3009:  /* sse2_vmsqrtv2df2_round */
    6891          486 :     case 3005:  /* sse_vmsqrtv4sf2_round */
    6892          486 :     case 3001:  /* avx512fp16_vmsqrtv8hf2_round */
    6893          486 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6894          486 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    6895          486 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6896          486 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6897          486 :       break;
    6898              : 
    6899        16658 :     case 5249:  /* avx512f_cvtps2pd512_mask_round */
    6900        16658 :     case 5239:  /* avx512f_cvtpd2ps512_mask_round */
    6901        16658 :     case 5200:  /* fixuns_truncv8sfv8di2_mask_round */
    6902        16658 :     case 5196:  /* fix_truncv8sfv8di2_mask_round */
    6903        16658 :     case 5156:  /* fixuns_truncv8dfv8di2_mask_round */
    6904        16658 :     case 5152:  /* fix_truncv8dfv8di2_mask_round */
    6905        16658 :     case 5119:  /* fixuns_truncv8dfv8si2_mask_round */
    6906        16658 :     case 5115:  /* fix_truncv8dfv8si2_mask_round */
    6907        16658 :     case 5062:  /* floatunsv8div8sf2_mask_round */
    6908        16658 :     case 5058:  /* floatv8div8sf2_mask_round */
    6909        16658 :     case 5054:  /* floatunsv2div2df2_mask_round */
    6910        16658 :     case 5050:  /* floatv2div2df2_mask_round */
    6911        16658 :     case 5046:  /* floatunsv4div4df2_mask_round */
    6912        16658 :     case 5042:  /* floatv4div4df2_mask_round */
    6913        16658 :     case 5038:  /* floatunsv8div8df2_mask_round */
    6914        16658 :     case 5034:  /* floatv8div8df2_mask_round */
    6915        16658 :     case 4951:  /* fixuns_truncv16sfv16si2_mask_round */
    6916        16658 :     case 4947:  /* fix_truncv16sfv16si2_mask_round */
    6917        16658 :     case 4899:  /* floatunsv4siv4sf2_mask_round */
    6918        16658 :     case 4895:  /* floatunsv8siv8sf2_mask_round */
    6919        16658 :     case 4891:  /* floatunsv16siv16sf2_mask_round */
    6920        16658 :     case 4883:  /* floatv16siv16sf2_mask_round */
    6921        16658 :     case 4810:  /* avx512fp16_vcvtps2ph_v8sf_mask_round */
    6922        16658 :     case 4806:  /* avx512fp16_vcvtps2ph_v16sf_mask_round */
    6923        16658 :     case 4802:  /* avx512fp16_vcvtpd2ph_v8df_mask_round */
    6924        16658 :     case 4786:  /* avx512fp16_float_extend_phv8sf2_mask_round */
    6925        16658 :     case 4782:  /* avx512fp16_float_extend_phv16sf2_mask_round */
    6926        16658 :     case 4778:  /* avx512fp16_float_extend_phv8df2_mask_round */
    6927        16658 :     case 4714:  /* avx512fp16_fixuns_truncv8di2_mask_round */
    6928        16658 :     case 4710:  /* avx512fp16_fix_truncv8di2_mask_round */
    6929        16658 :     case 4706:  /* avx512fp16_fixuns_truncv16si2_mask_round */
    6930        16658 :     case 4702:  /* avx512fp16_fix_truncv16si2_mask_round */
    6931        16658 :     case 4698:  /* avx512fp16_fixuns_truncv8si2_mask_round */
    6932        16658 :     case 4694:  /* avx512fp16_fix_truncv8si2_mask_round */
    6933        16658 :     case 4690:  /* avx512fp16_fixuns_truncv32hi2_mask_round */
    6934        16658 :     case 4686:  /* avx512fp16_fix_truncv32hi2_mask_round */
    6935        16658 :     case 4682:  /* avx512fp16_fixuns_truncv16hi2_mask_round */
    6936        16658 :     case 4678:  /* avx512fp16_fix_truncv16hi2_mask_round */
    6937        16658 :     case 4674:  /* avx512fp16_fixuns_truncv8hi2_mask_round */
    6938        16658 :     case 4670:  /* avx512fp16_fix_truncv8hi2_mask_round */
    6939        16658 :     case 4574:  /* avx512fp16_vcvtuqq2ph_v8di_mask_round */
    6940        16658 :     case 4570:  /* avx512fp16_vcvtqq2ph_v8di_mask_round */
    6941        16658 :     case 4566:  /* avx512fp16_vcvtudq2ph_v16si_mask_round */
    6942        16658 :     case 4562:  /* avx512fp16_vcvtdq2ph_v16si_mask_round */
    6943        16658 :     case 4558:  /* avx512fp16_vcvtudq2ph_v8si_mask_round */
    6944        16658 :     case 4554:  /* avx512fp16_vcvtdq2ph_v8si_mask_round */
    6945        16658 :     case 4550:  /* avx512fp16_vcvtuw2ph_v32hi_mask_round */
    6946        16658 :     case 4546:  /* avx512fp16_vcvtw2ph_v32hi_mask_round */
    6947        16658 :     case 4542:  /* avx512fp16_vcvtuw2ph_v16hi_mask_round */
    6948        16658 :     case 4538:  /* avx512fp16_vcvtw2ph_v16hi_mask_round */
    6949        16658 :     case 4534:  /* avx512fp16_vcvtuw2ph_v8hi_mask_round */
    6950        16658 :     case 4530:  /* avx512fp16_vcvtw2ph_v8hi_mask_round */
    6951        16658 :     case 4032:  /* *fma_fnmadd_v8df_round */
    6952        16658 :     case 4023:  /* *fma_fnmadd_v16sf_round */
    6953        16658 :     case 4013:  /* *fma_fnmadd_v32hf_round */
    6954        16658 :     case 2995:  /* avx512f_sqrtv8df2_mask_round */
    6955        16658 :     case 2987:  /* avx512f_sqrtv16sf2_mask_round */
    6956        16658 :     case 2979:  /* avx512fp16_sqrtv32hf2_mask_round */
    6957        16658 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    6958        16658 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    6959        16658 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    6960        16658 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    6961        16658 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (pat, 1), 0, 1));
    6962        16658 :       break;
    6963              : 
    6964       197122 :     case 10839:  /* avx10_2_sqrtbf16_v8bf_mask */
    6965       197122 :     case 10837:  /* avx10_2_sqrtbf16_v16bf_mask */
    6966       197122 :     case 10835:  /* avx10_2_sqrtbf16_v32bf_mask */
    6967       197122 :     case 10796:  /* avx10_2_fnmaddbf16_v8bf */
    6968       197122 :     case 10794:  /* avx10_2_fnmaddbf16_v16bf */
    6969       197122 :     case 10792:  /* avx10_2_fnmaddbf16_v32bf */
    6970       197122 :     case 10502:  /* avx512f_cvtneps2bf16_v8sf_mask */
    6971       197122 :     case 10500:  /* avx512f_cvtneps2bf16_v16sf_mask */
    6972       197122 :     case 10316:  /* vpopcountv8hi_mask */
    6973       197122 :     case 10314:  /* vpopcountv16hi_mask */
    6974       197122 :     case 10312:  /* vpopcountv32hi_mask */
    6975       197122 :     case 10310:  /* vpopcountv32qi_mask */
    6976       197122 :     case 10308:  /* vpopcountv16qi_mask */
    6977       197122 :     case 10306:  /* vpopcountv64qi_mask */
    6978       197122 :     case 10296:  /* vpopcountv2di_mask */
    6979       197122 :     case 10294:  /* vpopcountv4di_mask */
    6980       197122 :     case 10292:  /* vpopcountv8di_mask */
    6981       197122 :     case 10290:  /* vpopcountv4si_mask */
    6982       197122 :     case 10288:  /* vpopcountv8si_mask */
    6983       197122 :     case 10286:  /* vpopcountv16si_mask */
    6984       197122 :     case 10223:  /* clzv2di2_mask */
    6985       197122 :     case 10221:  /* clzv4di2_mask */
    6986       197122 :     case 10219:  /* clzv8di2_mask */
    6987       197122 :     case 10217:  /* clzv4si2_mask */
    6988       197122 :     case 10215:  /* clzv8si2_mask */
    6989       197122 :     case 10213:  /* clzv16si2_mask */
    6990       197122 :     case 9497:  /* avx512dq_broadcastv4df_mask_1 */
    6991       197122 :     case 9495:  /* avx512dq_broadcastv4di_mask_1 */
    6992       197122 :     case 9493:  /* avx512dq_broadcastv8df_mask_1 */
    6993       197122 :     case 9491:  /* avx512dq_broadcastv8di_mask_1 */
    6994       197122 :     case 9489:  /* avx512dq_broadcastv16si_mask_1 */
    6995       197122 :     case 9487:  /* avx512dq_broadcastv16sf_mask_1 */
    6996       197122 :     case 9485:  /* avx512vl_broadcastv8sf_mask_1 */
    6997       197122 :     case 9483:  /* avx512vl_broadcastv8si_mask_1 */
    6998       197122 :     case 9433:  /* avx512vl_vec_dup_gprv2df_mask */
    6999       197122 :     case 9431:  /* avx512vl_vec_dup_gprv4df_mask */
    7000       197122 :     case 9429:  /* avx512f_vec_dup_gprv8df_mask */
    7001       197122 :     case 9427:  /* avx512vl_vec_dup_gprv4sf_mask */
    7002       197122 :     case 9425:  /* avx512vl_vec_dup_gprv8sf_mask */
    7003       197122 :     case 9423:  /* avx512f_vec_dup_gprv16sf_mask */
    7004       197122 :     case 9421:  /* avx512vl_vec_dup_gprv2di_mask */
    7005       197122 :     case 9419:  /* avx512vl_vec_dup_gprv4di_mask */
    7006       197122 :     case 9417:  /* avx512f_vec_dup_gprv8di_mask */
    7007       197122 :     case 9415:  /* avx512vl_vec_dup_gprv4si_mask */
    7008       197122 :     case 9413:  /* avx512vl_vec_dup_gprv8si_mask */
    7009       197122 :     case 9411:  /* avx512f_vec_dup_gprv16si_mask */
    7010       197122 :     case 9409:  /* avx512vl_vec_dup_gprv8bf_mask */
    7011       197122 :     case 9407:  /* avx512vl_vec_dup_gprv16bf_mask */
    7012       197122 :     case 9405:  /* avx512bw_vec_dup_gprv32bf_mask */
    7013       197122 :     case 9403:  /* avx512fp16_vec_dup_gprv8hf_mask */
    7014       197122 :     case 9401:  /* avx512vl_vec_dup_gprv16hf_mask */
    7015       197122 :     case 9399:  /* avx512bw_vec_dup_gprv32hf_mask */
    7016       197122 :     case 9397:  /* avx512vl_vec_dup_gprv8hi_mask */
    7017       197122 :     case 9395:  /* avx512vl_vec_dup_gprv16hi_mask */
    7018       197122 :     case 9393:  /* avx512bw_vec_dup_gprv32hi_mask */
    7019       197122 :     case 9391:  /* avx512vl_vec_dup_gprv32qi_mask */
    7020       197122 :     case 9389:  /* avx512vl_vec_dup_gprv16qi_mask */
    7021       197122 :     case 9387:  /* avx512bw_vec_dup_gprv64qi_mask */
    7022       197122 :     case 9385:  /* avx512f_broadcastv8di_mask */
    7023       197122 :     case 9383:  /* avx512f_broadcastv8df_mask */
    7024       197122 :     case 9381:  /* avx512f_broadcastv16si_mask */
    7025       197122 :     case 9379:  /* avx512f_broadcastv16sf_mask */
    7026       197122 :     case 9052:  /* *sse4_1_zero_extendv2siv2di2_mask_1 */
    7027       197122 :     case 9050:  /* *sse4_1_sign_extendv2siv2di2_mask_1 */
    7028       197122 :     case 9042:  /* avx2_zero_extendv4siv4di2_mask */
    7029       197122 :     case 9040:  /* avx2_sign_extendv4siv4di2_mask */
    7030       197122 :     case 9036:  /* avx512f_zero_extendv8siv8di2_mask */
    7031       197122 :     case 9034:  /* avx512f_sign_extendv8siv8di2_mask */
    7032       197122 :     case 9028:  /* *sse4_1_zero_extendv2hiv2di2_mask_1 */
    7033       197122 :     case 9026:  /* *sse4_1_sign_extendv2hiv2di2_mask_1 */
    7034       197122 :     case 9016:  /* *avx2_zero_extendv4hiv4di2_mask_1 */
    7035       197122 :     case 9014:  /* *avx2_sign_extendv4hiv4di2_mask_1 */
    7036       197122 :     case 9008:  /* avx512f_zero_extendv8hiv8di2_mask */
    7037       197122 :     case 9006:  /* avx512f_sign_extendv8hiv8di2_mask */
    7038       197122 :     case 9001:  /* *sse4_1_zero_extendv2qiv2di2_mask_1 */
    7039       197122 :     case 8999:  /* *sse4_1_sign_extendv2qiv2di2_mask_1 */
    7040       197122 :     case 8989:  /* *avx2_zero_extendv4qiv4di2_mask_1 */
    7041       197122 :     case 8987:  /* *avx2_sign_extendv4qiv4di2_mask_1 */
    7042       197122 :     case 8977:  /* *avx512f_zero_extendv8qiv8di2_mask_1 */
    7043       197122 :     case 8975:  /* *avx512f_sign_extendv8qiv8di2_mask_1 */
    7044       197122 :     case 8961:  /* *sse4_1_zero_extendv4hiv4si2_mask_1 */
    7045       197122 :     case 8959:  /* *sse4_1_sign_extendv4hiv4si2_mask_1 */
    7046       197122 :     case 8949:  /* avx2_zero_extendv8hiv8si2_mask */
    7047       197122 :     case 8947:  /* avx2_sign_extendv8hiv8si2_mask */
    7048       197122 :     case 8941:  /* avx512f_zero_extendv16hiv16si2_mask */
    7049       197122 :     case 8939:  /* avx512f_sign_extendv16hiv16si2_mask */
    7050       197122 :     case 8931:  /* *sse4_1_zero_extendv4qiv4si2_mask_1 */
    7051       197122 :     case 8929:  /* *sse4_1_sign_extendv4qiv4si2_mask_1 */
    7052       197122 :     case 8919:  /* *avx2_zero_extendv8qiv8si2_mask_1 */
    7053       197122 :     case 8917:  /* *avx2_sign_extendv8qiv8si2_mask_1 */
    7054       197122 :     case 8911:  /* avx512f_zero_extendv16qiv16si2_mask */
    7055       197122 :     case 8909:  /* avx512f_sign_extendv16qiv16si2_mask */
    7056       197122 :     case 8899:  /* *sse4_1_zero_extendv8qiv8hi2_mask_1 */
    7057       197122 :     case 8897:  /* *sse4_1_sign_extendv8qiv8hi2_mask_1 */
    7058       197122 :     case 8887:  /* avx512bw_zero_extendv32qiv32hi2_mask */
    7059       197122 :     case 8885:  /* avx512bw_sign_extendv32qiv32hi2_mask */
    7060       197122 :     case 8879:  /* avx2_zero_extendv16qiv16hi2_mask */
    7061       197122 :     case 8877:  /* avx2_sign_extendv16qiv16hi2_mask */
    7062       197122 :     case 8793:  /* absv8hi2_mask */
    7063       197122 :     case 8792:  /* absv16hi2_mask */
    7064       197122 :     case 8791:  /* absv32hi2_mask */
    7065       197122 :     case 8790:  /* absv32qi2_mask */
    7066       197122 :     case 8789:  /* absv16qi2_mask */
    7067       197122 :     case 8788:  /* absv64qi2_mask */
    7068       197122 :     case 8787:  /* absv2di2_mask */
    7069       197122 :     case 8786:  /* absv4di2_mask */
    7070       197122 :     case 8785:  /* absv8di2_mask */
    7071       197122 :     case 8784:  /* absv4si2_mask */
    7072       197122 :     case 8783:  /* absv8si2_mask */
    7073       197122 :     case 8782:  /* absv16si2_mask */
    7074       197122 :     case 8511:  /* *avx512f_vinserti32x4_0 */
    7075       197122 :     case 8510:  /* *avx512f_vinsertf32x4_0 */
    7076       197122 :     case 8509:  /* *avx512dq_vinserti64x2_0 */
    7077       197122 :     case 8508:  /* *avx512dq_vinsertf64x2_0 */
    7078       197122 :     case 7368:  /* avx512vl_us_truncatev16hiv16qi2_mask */
    7079       197122 :     case 7367:  /* avx512vl_truncatev16hiv16qi2_mask */
    7080       197122 :     case 7366:  /* avx512vl_ss_truncatev16hiv16qi2_mask */
    7081       197122 :     case 7365:  /* avx512vl_us_truncatev8siv8hi2_mask */
    7082       197122 :     case 7364:  /* avx512vl_truncatev8siv8hi2_mask */
    7083       197122 :     case 7363:  /* avx512vl_ss_truncatev8siv8hi2_mask */
    7084       197122 :     case 7362:  /* avx512vl_us_truncatev4div4si2_mask */
    7085       197122 :     case 7361:  /* avx512vl_truncatev4div4si2_mask */
    7086       197122 :     case 7360:  /* avx512vl_ss_truncatev4div4si2_mask */
    7087       197122 :     case 7348:  /* avx512bw_us_truncatev32hiv32qi2_mask */
    7088       197122 :     case 7347:  /* avx512bw_truncatev32hiv32qi2_mask */
    7089       197122 :     case 7346:  /* avx512bw_ss_truncatev32hiv32qi2_mask */
    7090       197122 :     case 7341:  /* avx512f_us_truncatev8div8hi2_mask */
    7091       197122 :     case 7340:  /* avx512f_truncatev8div8hi2_mask */
    7092       197122 :     case 7339:  /* avx512f_ss_truncatev8div8hi2_mask */
    7093       197122 :     case 7338:  /* avx512f_us_truncatev8div8si2_mask */
    7094       197122 :     case 7337:  /* avx512f_truncatev8div8si2_mask */
    7095       197122 :     case 7336:  /* avx512f_ss_truncatev8div8si2_mask */
    7096       197122 :     case 7335:  /* avx512f_us_truncatev16siv16hi2_mask */
    7097       197122 :     case 7334:  /* avx512f_truncatev16siv16hi2_mask */
    7098       197122 :     case 7333:  /* avx512f_ss_truncatev16siv16hi2_mask */
    7099       197122 :     case 7332:  /* avx512f_us_truncatev16siv16qi2_mask */
    7100       197122 :     case 7331:  /* avx512f_truncatev16siv16qi2_mask */
    7101       197122 :     case 7330:  /* avx512f_ss_truncatev16siv16qi2_mask */
    7102       197122 :     case 7309:  /* vec_dupv2df_mask */
    7103       197122 :     case 5440:  /* vec_extract_hi_v8sf_mask */
    7104       197122 :     case 5439:  /* vec_extract_hi_v8si_mask */
    7105       197122 :     case 5436:  /* vec_extract_lo_v8sf_mask */
    7106       197122 :     case 5435:  /* vec_extract_lo_v8si_mask */
    7107       197122 :     case 5432:  /* vec_extract_hi_v4df_mask */
    7108       197122 :     case 5431:  /* vec_extract_hi_v4di_mask */
    7109       197122 :     case 5428:  /* vec_extract_lo_v4df_mask */
    7110       197122 :     case 5427:  /* vec_extract_lo_v4di_mask */
    7111       197122 :     case 5424:  /* vec_extract_lo_v16si_mask */
    7112       197122 :     case 5423:  /* vec_extract_lo_v16sf_mask */
    7113       197122 :     case 5420:  /* vec_extract_hi_v16si_mask */
    7114       197122 :     case 5419:  /* vec_extract_hi_v16sf_mask */
    7115       197122 :     case 5416:  /* vec_extract_hi_v8di_mask */
    7116       197122 :     case 5415:  /* vec_extract_hi_v8df_mask */
    7117       197122 :     case 5412:  /* vec_extract_lo_v8di_mask */
    7118       197122 :     case 5411:  /* vec_extract_lo_v8df_mask */
    7119       197122 :     case 5393:  /* sse4_1_insertps_v4sf_init */
    7120       197122 :     case 5299:  /* sse2_cvtps2pd_mask_1 */
    7121       197122 :     case 5251:  /* avx_cvtps2pd256_mask */
    7122       197122 :     case 5248:  /* avx512f_cvtps2pd512_mask */
    7123       197122 :     case 5241:  /* avx_cvtpd2ps256_mask */
    7124       197122 :     case 5238:  /* avx512f_cvtpd2ps512_mask */
    7125       197122 :     case 5220:  /* fixuns_truncv4sfv4si2_mask */
    7126       197122 :     case 5218:  /* fixuns_truncv8sfv8si2_mask */
    7127       197122 :     case 5204:  /* fixuns_truncv4sfv4di2_mask */
    7128       197122 :     case 5202:  /* fix_truncv4sfv4di2_mask */
    7129       197122 :     case 5199:  /* fixuns_truncv8sfv8di2_mask */
    7130       197122 :     case 5195:  /* fix_truncv8sfv8di2_mask */
    7131       197122 :     case 5164:  /* fixuns_truncv2dfv2di2_mask */
    7132       197122 :     case 5162:  /* fix_truncv2dfv2di2_mask */
    7133       197122 :     case 5160:  /* fixuns_truncv4dfv4di2_mask */
    7134       197122 :     case 5158:  /* fix_truncv4dfv4di2_mask */
    7135       197122 :     case 5155:  /* fixuns_truncv8dfv8di2_mask */
    7136       197122 :     case 5151:  /* fix_truncv8dfv8di2_mask */
    7137       197122 :     case 5132:  /* fixuns_truncv4dfv4si2_mask */
    7138       197122 :     case 5128:  /* fix_truncv4dfv4si2_mask */
    7139       197122 :     case 5118:  /* fixuns_truncv8dfv8si2_mask */
    7140       197122 :     case 5114:  /* fix_truncv8dfv8si2_mask */
    7141       197122 :     case 5076:  /* floatunsv4siv4df2_mask */
    7142       197122 :     case 5074:  /* floatunsv8siv8df2_mask */
    7143       197122 :     case 5066:  /* floatunsv4div4sf2_mask */
    7144       197122 :     case 5064:  /* floatv4div4sf2_mask */
    7145       197122 :     case 5061:  /* floatunsv8div8sf2_mask */
    7146       197122 :     case 5057:  /* floatv8div8sf2_mask */
    7147       197122 :     case 5053:  /* floatunsv2div2df2_mask */
    7148       197122 :     case 5049:  /* floatv2div2df2_mask */
    7149       197122 :     case 5045:  /* floatunsv4div4df2_mask */
    7150       197122 :     case 5041:  /* floatv4div4df2_mask */
    7151       197122 :     case 5037:  /* floatunsv8div8df2_mask */
    7152       197122 :     case 5033:  /* floatv8div8df2_mask */
    7153       197122 :     case 5030:  /* floatv4siv4df2_mask */
    7154       197122 :     case 5028:  /* floatv8siv8df2_mask */
    7155       197122 :     case 4959:  /* fix_truncv4sfv4si2_mask */
    7156       197122 :     case 4955:  /* fix_truncv8sfv8si2_mask */
    7157       197122 :     case 4950:  /* fixuns_truncv16sfv16si2_mask */
    7158       197122 :     case 4946:  /* fix_truncv16sfv16si2_mask */
    7159       197122 :     case 4898:  /* floatunsv4siv4sf2_mask */
    7160       197122 :     case 4894:  /* floatunsv8siv8sf2_mask */
    7161       197122 :     case 4890:  /* floatunsv16siv16sf2_mask */
    7162       197122 :     case 4887:  /* floatv4siv4sf2_mask */
    7163       197122 :     case 4885:  /* floatv8siv8sf2_mask */
    7164       197122 :     case 4882:  /* floatv16siv16sf2_mask */
    7165       197122 :     case 4809:  /* avx512fp16_vcvtps2ph_v8sf_mask */
    7166       197122 :     case 4805:  /* avx512fp16_vcvtps2ph_v16sf_mask */
    7167       197122 :     case 4801:  /* avx512fp16_vcvtpd2ph_v8df_mask */
    7168       197122 :     case 4798:  /* *avx512fp16_float_extend_phv2df2_load_mask */
    7169       197122 :     case 4794:  /* *avx512fp16_float_extend_phv4sf2_load_mask */
    7170       197122 :     case 4792:  /* *avx512fp16_float_extend_phv4df2_load_mask */
    7171       197122 :     case 4785:  /* avx512fp16_float_extend_phv8sf2_mask */
    7172       197122 :     case 4781:  /* avx512fp16_float_extend_phv16sf2_mask */
    7173       197122 :     case 4777:  /* avx512fp16_float_extend_phv8df2_mask */
    7174       197122 :     case 4750:  /* *avx512fp16_fixuns_truncv2di2_load_mask */
    7175       197122 :     case 4748:  /* *avx512fp16_fix_truncv2di2_load_mask */
    7176       197122 :     case 4738:  /* *avx512fp16_fixuns_truncv4di2_load_mask */
    7177       197122 :     case 4736:  /* *avx512fp16_fix_truncv4di2_load_mask */
    7178       197122 :     case 4734:  /* *avx512fp16_fixuns_truncv4si2_load_mask */
    7179       197122 :     case 4732:  /* *avx512fp16_fix_truncv4si2_load_mask */
    7180       197122 :     case 4713:  /* avx512fp16_fixuns_truncv8di2_mask */
    7181       197122 :     case 4709:  /* avx512fp16_fix_truncv8di2_mask */
    7182       197122 :     case 4705:  /* avx512fp16_fixuns_truncv16si2_mask */
    7183       197122 :     case 4701:  /* avx512fp16_fix_truncv16si2_mask */
    7184       197122 :     case 4697:  /* avx512fp16_fixuns_truncv8si2_mask */
    7185       197122 :     case 4693:  /* avx512fp16_fix_truncv8si2_mask */
    7186       197122 :     case 4689:  /* avx512fp16_fixuns_truncv32hi2_mask */
    7187       197122 :     case 4685:  /* avx512fp16_fix_truncv32hi2_mask */
    7188       197122 :     case 4681:  /* avx512fp16_fixuns_truncv16hi2_mask */
    7189       197122 :     case 4677:  /* avx512fp16_fix_truncv16hi2_mask */
    7190       197122 :     case 4673:  /* avx512fp16_fixuns_truncv8hi2_mask */
    7191       197122 :     case 4669:  /* avx512fp16_fix_truncv8hi2_mask */
    7192       197122 :     case 4573:  /* avx512fp16_vcvtuqq2ph_v8di_mask */
    7193       197122 :     case 4569:  /* avx512fp16_vcvtqq2ph_v8di_mask */
    7194       197122 :     case 4565:  /* avx512fp16_vcvtudq2ph_v16si_mask */
    7195       197122 :     case 4561:  /* avx512fp16_vcvtdq2ph_v16si_mask */
    7196       197122 :     case 4557:  /* avx512fp16_vcvtudq2ph_v8si_mask */
    7197       197122 :     case 4553:  /* avx512fp16_vcvtdq2ph_v8si_mask */
    7198       197122 :     case 4549:  /* avx512fp16_vcvtuw2ph_v32hi_mask */
    7199       197122 :     case 4545:  /* avx512fp16_vcvtw2ph_v32hi_mask */
    7200       197122 :     case 4541:  /* avx512fp16_vcvtuw2ph_v16hi_mask */
    7201       197122 :     case 4537:  /* avx512fp16_vcvtw2ph_v16hi_mask */
    7202       197122 :     case 4533:  /* avx512fp16_vcvtuw2ph_v8hi_mask */
    7203       197122 :     case 4529:  /* avx512fp16_vcvtw2ph_v8hi_mask */
    7204       197122 :     case 4036:  /* *fma_fnmadd_v2df */
    7205       197122 :     case 4034:  /* *fma_fnmadd_v4df */
    7206       197122 :     case 4030:  /* *fma_fnmadd_v8df */
    7207       197122 :     case 4029:  /* *fma_fnmadd_df */
    7208       197122 :     case 4027:  /* *fma_fnmadd_v4sf */
    7209       197122 :     case 4025:  /* *fma_fnmadd_v8sf */
    7210       197122 :     case 4021:  /* *fma_fnmadd_v16sf */
    7211       197122 :     case 4020:  /* *fma_fnmadd_sf */
    7212       197122 :     case 4019:  /* *fma_fnmadd_hf */
    7213       197122 :     case 4017:  /* *fma_fnmadd_v8hf */
    7214       197122 :     case 4015:  /* *fma_fnmadd_v16hf */
    7215       197122 :     case 4011:  /* *fma_fnmadd_v32hf */
    7216       197122 :     case 4010:  /* *fma_fnmadd_v4df */
    7217       197122 :     case 4009:  /* *fma_fnmadd_v8sf */
    7218       197122 :     case 4008:  /* *fma_fnmadd_v2df */
    7219       197122 :     case 4007:  /* *fma_fnmadd_v4sf */
    7220       197122 :     case 4006:  /* *fma_fnmadd_df */
    7221       197122 :     case 4005:  /* *fma_fnmadd_sf */
    7222       197122 :     case 2999:  /* sse2_sqrtv2df2_mask */
    7223       197122 :     case 2997:  /* avx_sqrtv4df2_mask */
    7224       197122 :     case 2994:  /* avx512f_sqrtv8df2_mask */
    7225       197122 :     case 2991:  /* sse_sqrtv4sf2_mask */
    7226       197122 :     case 2989:  /* avx_sqrtv8sf2_mask */
    7227       197122 :     case 2986:  /* avx512f_sqrtv16sf2_mask */
    7228       197122 :     case 2983:  /* avx512fp16_sqrtv8hf2_mask */
    7229       197122 :     case 2981:  /* avx512fp16_sqrtv16hf2_mask */
    7230       197122 :     case 2978:  /* avx512fp16_sqrtv32hf2_mask */
    7231       197122 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7232       197122 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    7233       197122 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    7234       197122 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    7235       197122 :       break;
    7236              : 
    7237         4149 :     case 5247:  /* avx512f_cvtps2pd512_round */
    7238         4149 :     case 5237:  /* *avx512f_cvtpd2ps512_round */
    7239         4149 :     case 5198:  /* fixuns_truncv8sfv8di2_round */
    7240         4149 :     case 5194:  /* fix_truncv8sfv8di2_round */
    7241         4149 :     case 5154:  /* fixuns_truncv8dfv8di2_round */
    7242         4149 :     case 5150:  /* fix_truncv8dfv8di2_round */
    7243         4149 :     case 5117:  /* fixuns_truncv8dfv8si2_round */
    7244         4149 :     case 5113:  /* fix_truncv8dfv8si2_round */
    7245         4149 :     case 5060:  /* floatunsv8div8sf2_round */
    7246         4149 :     case 5056:  /* floatv8div8sf2_round */
    7247         4149 :     case 5052:  /* floatunsv2div2df2_round */
    7248         4149 :     case 5048:  /* floatv2div2df2_round */
    7249         4149 :     case 5044:  /* floatunsv4div4df2_round */
    7250         4149 :     case 5040:  /* floatv4div4df2_round */
    7251         4149 :     case 5036:  /* floatunsv8div8df2_round */
    7252         4149 :     case 5032:  /* floatv8div8df2_round */
    7253         4149 :     case 4949:  /* fixuns_truncv16sfv16si2_round */
    7254         4149 :     case 4945:  /* fix_truncv16sfv16si2_round */
    7255         4149 :     case 4897:  /* *floatunsv4siv4sf2_round */
    7256         4149 :     case 4893:  /* *floatunsv8siv8sf2_round */
    7257         4149 :     case 4889:  /* *floatunsv16siv16sf2_round */
    7258         4149 :     case 4881:  /* floatv16siv16sf2_round */
    7259         4149 :     case 4808:  /* avx512fp16_vcvtps2ph_v8sf_round */
    7260         4149 :     case 4804:  /* avx512fp16_vcvtps2ph_v16sf_round */
    7261         4149 :     case 4800:  /* avx512fp16_vcvtpd2ph_v8df_round */
    7262         4149 :     case 4784:  /* avx512fp16_float_extend_phv8sf2_round */
    7263         4149 :     case 4780:  /* avx512fp16_float_extend_phv16sf2_round */
    7264         4149 :     case 4776:  /* avx512fp16_float_extend_phv8df2_round */
    7265         4149 :     case 4712:  /* avx512fp16_fixuns_truncv8di2_round */
    7266         4149 :     case 4708:  /* avx512fp16_fix_truncv8di2_round */
    7267         4149 :     case 4704:  /* avx512fp16_fixuns_truncv16si2_round */
    7268         4149 :     case 4700:  /* avx512fp16_fix_truncv16si2_round */
    7269         4149 :     case 4696:  /* avx512fp16_fixuns_truncv8si2_round */
    7270         4149 :     case 4692:  /* avx512fp16_fix_truncv8si2_round */
    7271         4149 :     case 4688:  /* avx512fp16_fixuns_truncv32hi2_round */
    7272         4149 :     case 4684:  /* avx512fp16_fix_truncv32hi2_round */
    7273         4149 :     case 4680:  /* avx512fp16_fixuns_truncv16hi2_round */
    7274         4149 :     case 4676:  /* avx512fp16_fix_truncv16hi2_round */
    7275         4149 :     case 4672:  /* avx512fp16_fixuns_truncv8hi2_round */
    7276         4149 :     case 4668:  /* avx512fp16_fix_truncv8hi2_round */
    7277         4149 :     case 4572:  /* avx512fp16_vcvtuqq2ph_v8di_round */
    7278         4149 :     case 4568:  /* avx512fp16_vcvtqq2ph_v8di_round */
    7279         4149 :     case 4564:  /* avx512fp16_vcvtudq2ph_v16si_round */
    7280         4149 :     case 4560:  /* avx512fp16_vcvtdq2ph_v16si_round */
    7281         4149 :     case 4556:  /* avx512fp16_vcvtudq2ph_v8si_round */
    7282         4149 :     case 4552:  /* avx512fp16_vcvtdq2ph_v8si_round */
    7283         4149 :     case 4548:  /* avx512fp16_vcvtuw2ph_v32hi_round */
    7284         4149 :     case 4544:  /* avx512fp16_vcvtw2ph_v32hi_round */
    7285         4149 :     case 4540:  /* avx512fp16_vcvtuw2ph_v16hi_round */
    7286         4149 :     case 4536:  /* avx512fp16_vcvtw2ph_v16hi_round */
    7287         4149 :     case 4532:  /* avx512fp16_vcvtuw2ph_v8hi_round */
    7288         4149 :     case 4528:  /* avx512fp16_vcvtw2ph_v8hi_round */
    7289         4149 :     case 2993:  /* avx512f_sqrtv8df2_round */
    7290         4149 :     case 2985:  /* avx512f_sqrtv16sf2_round */
    7291         4149 :     case 2977:  /* avx512fp16_sqrtv32hf2_round */
    7292         4149 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7293         4149 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    7294         4149 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    7295         4149 :       break;
    7296              : 
    7297         2943 :     case 3051:  /* avx512fp16_vmrsqrtv8hf2_mask */
    7298         2943 :     case 3047:  /* rsqrt14_v2df_mask */
    7299         2943 :     case 3046:  /* rsqrt14_v4sf_mask */
    7300         2943 :     case 2975:  /* srcp14v2df_mask */
    7301         2943 :     case 2974:  /* srcp14v4sf_mask */
    7302         2943 :     case 2958:  /* avx512fp16_vmrcpv8hf2_mask */
    7303         2943 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7304         2943 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    7305         2943 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    7306         2943 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    7307         2943 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    7308         2943 :       break;
    7309              : 
    7310          460 :     case 3052:  /* *avx512fp16_vmrsqrtv8hf2 */
    7311          460 :     case 3049:  /* *sse_vmrsqrtv4sf2 */
    7312          460 :     case 2959:  /* *avx512fp16_vmrcpv8hf2 */
    7313          460 :     case 2950:  /* *sse_vmrcpv4sf2 */
    7314          460 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7315          460 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0, 0));
    7316          460 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    7317          460 :       break;
    7318              : 
    7319         4518 :     case 11255:  /* *avx10v2aux_sym_truncatev8siv8qi2 */
    7320         4518 :     case 11254:  /* *avx10v2aux_sym_truncatev4siv4qi2 */
    7321         4518 :     case 11219:  /* *vcvthf82bf4sv16qi */
    7322         4518 :     case 11218:  /* *vcvtbf82bf4sv16qi */
    7323         4518 :     case 11157:  /* *vcvtrops2hf8sv8sf */
    7324         4518 :     case 11156:  /* *vcvtrops2hf8v8sf */
    7325         4518 :     case 11155:  /* *vcvtps2hf8sv8sf */
    7326         4518 :     case 11154:  /* *vcvtps2hf8v8sf */
    7327         4518 :     case 11153:  /* *vcvtps2bf8sv8sf */
    7328         4518 :     case 11152:  /* *vcvtps2bf8v8sf */
    7329         4518 :     case 11151:  /* *vcvtrops2hf8sv4sf */
    7330         4518 :     case 11150:  /* *vcvtrops2hf8v4sf */
    7331         4518 :     case 11149:  /* *vcvtps2hf8sv4sf */
    7332         4518 :     case 11148:  /* *vcvtps2hf8v4sf */
    7333         4518 :     case 11147:  /* *vcvtps2bf8sv4sf */
    7334         4518 :     case 11146:  /* *vcvtps2bf8v4sf */
    7335         4518 :     case 10648:  /* *vcvtph2hf8sv8hf */
    7336         4518 :     case 10647:  /* *vcvtph2hf8v8hf */
    7337         4518 :     case 10646:  /* *vcvtph2bf8sv8hf */
    7338         4518 :     case 10645:  /* *vcvtph2bf8v8hf */
    7339         4518 :     case 9193:  /* *xop_vmfrczv2df2 */
    7340         4518 :     case 9192:  /* *xop_vmfrczv4sf2 */
    7341         4518 :     case 5089:  /* *avx_cvtpd2dq256_2 */
    7342         4518 :     case 3050:  /* avx512fp16_vmrsqrtv8hf2 */
    7343         4518 :     case 3048:  /* sse_vmrsqrtv4sf2 */
    7344         4518 :     case 3045:  /* rsqrt14v2df */
    7345         4518 :     case 3044:  /* rsqrt14v4sf */
    7346         4518 :     case 2973:  /* srcp14v2df */
    7347         4518 :     case 2972:  /* srcp14v4sf */
    7348         4518 :     case 2957:  /* avx512fp16_vmrcpv8hf2 */
    7349         4518 :     case 2949:  /* sse_vmrcpv4sf2 */
    7350         4518 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7351         4518 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    7352         4518 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    7353         4518 :       break;
    7354              : 
    7355         8584 :     case 3200:  /* *sse2_vmsminv2df3_mask_round */
    7356         8584 :     case 3196:  /* *sse2_vmsmaxv2df3_mask_round */
    7357         8584 :     case 3192:  /* *sse_vmsminv4sf3_mask_round */
    7358         8584 :     case 3188:  /* *sse_vmsmaxv4sf3_mask_round */
    7359         8584 :     case 3184:  /* *avx512fp16_vmsminv8hf3_mask_round */
    7360         8584 :     case 3180:  /* *avx512fp16_vmsmaxv8hf3_mask_round */
    7361         8584 :     case 2922:  /* sse2_vmdivv2df3_mask_round */
    7362         8584 :     case 2918:  /* sse2_vmmulv2df3_mask_round */
    7363         8584 :     case 2914:  /* sse_vmdivv4sf3_mask_round */
    7364         8584 :     case 2910:  /* sse_vmmulv4sf3_mask_round */
    7365         8584 :     case 2906:  /* avx512fp16_vmdivv8hf3_mask_round */
    7366         8584 :     case 2902:  /* avx512fp16_vmmulv8hf3_mask_round */
    7367         8584 :     case 2856:  /* sse2_vmsubv2df3_mask_round */
    7368         8584 :     case 2852:  /* sse2_vmaddv2df3_mask_round */
    7369         8584 :     case 2848:  /* sse_vmsubv4sf3_mask_round */
    7370         8584 :     case 2844:  /* sse_vmaddv4sf3_mask_round */
    7371         8584 :     case 2840:  /* avx512fp16_vmsubv8hf3_mask_round */
    7372         8584 :     case 2836:  /* avx512fp16_vmaddv8hf3_mask_round */
    7373         8584 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7374         8584 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 0));
    7375         8584 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0), 1));
    7376         8584 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    7377         8584 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 2));
    7378         8584 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    7379         8584 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    7380         8584 :       recog_data.dup_num[0] = 1;
    7381         8584 :       break;
    7382              : 
    7383         3239 :     case 3198:  /* *sse2_vmsminv2df3_mask */
    7384         3239 :     case 3194:  /* *sse2_vmsmaxv2df3_mask */
    7385         3239 :     case 3190:  /* *sse_vmsminv4sf3_mask */
    7386         3239 :     case 3186:  /* *sse_vmsmaxv4sf3_mask */
    7387         3239 :     case 3182:  /* *avx512fp16_vmsminv8hf3_mask */
    7388         3239 :     case 3178:  /* *avx512fp16_vmsmaxv8hf3_mask */
    7389         3239 :     case 2921:  /* sse2_vmdivv2df3_mask */
    7390         3239 :     case 2917:  /* sse2_vmmulv2df3_mask */
    7391         3239 :     case 2913:  /* sse_vmdivv4sf3_mask */
    7392         3239 :     case 2909:  /* sse_vmmulv4sf3_mask */
    7393         3239 :     case 2905:  /* avx512fp16_vmdivv8hf3_mask */
    7394         3239 :     case 2901:  /* avx512fp16_vmmulv8hf3_mask */
    7395         3239 :     case 2855:  /* sse2_vmsubv2df3_mask */
    7396         3239 :     case 2851:  /* sse2_vmaddv2df3_mask */
    7397         3239 :     case 2847:  /* sse_vmsubv4sf3_mask */
    7398         3239 :     case 2843:  /* sse_vmaddv4sf3_mask */
    7399         3239 :     case 2839:  /* avx512fp16_vmsubv8hf3_mask */
    7400         3239 :     case 2835:  /* avx512fp16_vmaddv8hf3_mask */
    7401         3239 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7402         3239 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    7403         3239 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    7404         3239 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    7405         3239 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    7406         3239 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    7407         3239 :       recog_data.dup_num[0] = 1;
    7408         3239 :       break;
    7409              : 
    7410         4428 :     case 3199:  /* *sse2_vmsminv2df3_round */
    7411         4428 :     case 3195:  /* *sse2_vmsmaxv2df3_round */
    7412         4428 :     case 3191:  /* *sse_vmsminv4sf3_round */
    7413         4428 :     case 3187:  /* *sse_vmsmaxv4sf3_round */
    7414         4428 :     case 3183:  /* *avx512fp16_vmsminv8hf3_round */
    7415         4428 :     case 3179:  /* *avx512fp16_vmsmaxv8hf3_round */
    7416         4428 :     case 2920:  /* sse2_vmdivv2df3_round */
    7417         4428 :     case 2916:  /* sse2_vmmulv2df3_round */
    7418         4428 :     case 2912:  /* sse_vmdivv4sf3_round */
    7419         4428 :     case 2908:  /* sse_vmmulv4sf3_round */
    7420         4428 :     case 2904:  /* avx512fp16_vmdivv8hf3_round */
    7421         4428 :     case 2900:  /* avx512fp16_vmmulv8hf3_round */
    7422         4428 :     case 2854:  /* sse2_vmsubv2df3_round */
    7423         4428 :     case 2850:  /* sse2_vmaddv2df3_round */
    7424         4428 :     case 2846:  /* sse_vmsubv4sf3_round */
    7425         4428 :     case 2842:  /* sse_vmaddv4sf3_round */
    7426         4428 :     case 2838:  /* avx512fp16_vmsubv8hf3_round */
    7427         4428 :     case 2834:  /* avx512fp16_vmaddv8hf3_round */
    7428         4428 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7429         4428 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    7430         4428 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    7431         4428 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    7432         4428 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1);
    7433         4428 :       recog_data.dup_num[0] = 1;
    7434         4428 :       break;
    7435              : 
    7436         1719 :     case 3197:  /* *sse2_vmsminv2df3 */
    7437         1719 :     case 3193:  /* *sse2_vmsmaxv2df3 */
    7438         1719 :     case 3189:  /* *sse_vmsminv4sf3 */
    7439         1719 :     case 3185:  /* *sse_vmsmaxv4sf3 */
    7440         1719 :     case 3181:  /* *avx512fp16_vmsminv8hf3 */
    7441         1719 :     case 3177:  /* *avx512fp16_vmsmaxv8hf3 */
    7442         1719 :     case 2919:  /* sse2_vmdivv2df3 */
    7443         1719 :     case 2915:  /* sse2_vmmulv2df3 */
    7444         1719 :     case 2911:  /* sse_vmdivv4sf3 */
    7445         1719 :     case 2907:  /* sse_vmmulv4sf3 */
    7446         1719 :     case 2903:  /* avx512fp16_vmdivv8hf3 */
    7447         1719 :     case 2899:  /* avx512fp16_vmmulv8hf3 */
    7448         1719 :     case 2853:  /* sse2_vmsubv2df3 */
    7449         1719 :     case 2849:  /* sse2_vmaddv2df3 */
    7450         1719 :     case 2845:  /* sse_vmsubv4sf3 */
    7451         1719 :     case 2841:  /* sse_vmaddv4sf3 */
    7452         1719 :     case 2837:  /* avx512fp16_vmsubv8hf3 */
    7453         1719 :     case 2833:  /* avx512fp16_vmaddv8hf3 */
    7454         1719 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7455         1719 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    7456         1719 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    7457         1719 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    7458         1719 :       recog_data.dup_num[0] = 1;
    7459         1719 :       break;
    7460              : 
    7461          855 :     case 2898:  /* *sse2_vmdivv2df3 */
    7462          855 :     case 2897:  /* *sse2_vmmulv2df3 */
    7463          855 :     case 2896:  /* *sse_vmdivv4sf3 */
    7464          855 :     case 2895:  /* *sse_vmmulv4sf3 */
    7465          855 :     case 2894:  /* *avx512fp16_vmdivv8hf3 */
    7466          855 :     case 2893:  /* *avx512fp16_vmmulv8hf3 */
    7467          855 :     case 2832:  /* *sse2_vmsubv2df3 */
    7468          855 :     case 2831:  /* *sse2_vmaddv2df3 */
    7469          855 :     case 2830:  /* *sse_vmsubv4sf3 */
    7470          855 :     case 2829:  /* *sse_vmaddv4sf3 */
    7471          855 :     case 2828:  /* *avx512fp16_vmsubv8hf3 */
    7472          855 :     case 2827:  /* *avx512fp16_vmaddv8hf3 */
    7473          855 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7474          855 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    7475          855 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
    7476          855 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    7477          855 :       recog_data.dup_num[0] = 1;
    7478          855 :       break;
    7479              : 
    7480         8912 :     case 3093:  /* *sminv8df3_mask_round */
    7481         8912 :     case 3089:  /* *smaxv8df3_mask_round */
    7482         8912 :     case 3077:  /* *sminv16sf3_mask_round */
    7483         8912 :     case 3073:  /* *smaxv16sf3_mask_round */
    7484         8912 :     case 3061:  /* *sminv32hf3_mask_round */
    7485         8912 :     case 3057:  /* *smaxv32hf3_mask_round */
    7486         8912 :     case 2942:  /* avx512f_divv8df3_mask_round */
    7487         8912 :     case 2934:  /* avx512f_divv16sf3_mask_round */
    7488         8912 :     case 2926:  /* avx512fp16_divv32hf3_mask_round */
    7489         8912 :     case 2892:  /* *mulv2df3_mask_round */
    7490         8912 :     case 2888:  /* *mulv4df3_mask_round */
    7491         8912 :     case 2884:  /* *mulv8df3_mask_round */
    7492         8912 :     case 2880:  /* *mulv4sf3_mask_round */
    7493         8912 :     case 2876:  /* *mulv8sf3_mask_round */
    7494         8912 :     case 2872:  /* *mulv16sf3_mask_round */
    7495         8912 :     case 2868:  /* *mulv8hf3_mask_round */
    7496         8912 :     case 2864:  /* *mulv16hf3_mask_round */
    7497         8912 :     case 2860:  /* *mulv32hf3_mask_round */
    7498         8912 :     case 2826:  /* *subv2df3_mask_round */
    7499         8912 :     case 2822:  /* *addv2df3_mask_round */
    7500         8912 :     case 2818:  /* *subv4df3_mask_round */
    7501         8912 :     case 2814:  /* *addv4df3_mask_round */
    7502         8912 :     case 2810:  /* *subv8df3_mask_round */
    7503         8912 :     case 2806:  /* *addv8df3_mask_round */
    7504         8912 :     case 2802:  /* *subv4sf3_mask_round */
    7505         8912 :     case 2798:  /* *addv4sf3_mask_round */
    7506         8912 :     case 2794:  /* *subv8sf3_mask_round */
    7507         8912 :     case 2790:  /* *addv8sf3_mask_round */
    7508         8912 :     case 2786:  /* *subv16sf3_mask_round */
    7509         8912 :     case 2782:  /* *addv16sf3_mask_round */
    7510         8912 :     case 2778:  /* *subv8hf3_mask_round */
    7511         8912 :     case 2774:  /* *addv8hf3_mask_round */
    7512         8912 :     case 2770:  /* *subv16hf3_mask_round */
    7513         8912 :     case 2766:  /* *addv16hf3_mask_round */
    7514         8912 :     case 2762:  /* *subv32hf3_mask_round */
    7515         8912 :     case 2758:  /* *addv32hf3_mask_round */
    7516         8912 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7517         8912 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 0));
    7518         8912 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0), 1));
    7519         8912 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    7520         8912 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 2));
    7521         8912 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (pat, 1), 0, 1));
    7522         8912 :       break;
    7523              : 
    7524       209512 :     case 10779:  /* avx10_2_divbf16_v8bf_mask */
    7525       209512 :     case 10777:  /* avx10_2_mulbf16_v8bf_mask */
    7526       209512 :     case 10775:  /* avx10_2_subbf16_v8bf_mask */
    7527       209512 :     case 10773:  /* avx10_2_addbf16_v8bf_mask */
    7528       209512 :     case 10771:  /* avx10_2_divbf16_v16bf_mask */
    7529       209512 :     case 10769:  /* avx10_2_mulbf16_v16bf_mask */
    7530       209512 :     case 10767:  /* avx10_2_subbf16_v16bf_mask */
    7531       209512 :     case 10765:  /* avx10_2_addbf16_v16bf_mask */
    7532       209512 :     case 10763:  /* avx10_2_divbf16_v32bf_mask */
    7533       209512 :     case 10761:  /* avx10_2_mulbf16_v32bf_mask */
    7534       209512 :     case 10759:  /* avx10_2_subbf16_v32bf_mask */
    7535       209512 :     case 10757:  /* avx10_2_addbf16_v32bf_mask */
    7536       209512 :     case 10755:  /* avx10_2_sminbf16_v8bf_mask */
    7537       209512 :     case 10753:  /* avx10_2_smaxbf16_v8bf_mask */
    7538       209512 :     case 10751:  /* avx10_2_sminbf16_v16bf_mask */
    7539       209512 :     case 10749:  /* avx10_2_smaxbf16_v16bf_mask */
    7540       209512 :     case 10747:  /* avx10_2_sminbf16_v32bf_mask */
    7541       209512 :     case 10745:  /* avx10_2_smaxbf16_v32bf_mask */
    7542       209512 :     case 9758:  /* avx512bw_lshrvv32hi_mask */
    7543       209512 :     case 9756:  /* avx512bw_ashlvv32hi_mask */
    7544       209512 :     case 9754:  /* avx512vl_lshrvv16hi_mask */
    7545       209512 :     case 9752:  /* avx512vl_ashlvv16hi_mask */
    7546       209512 :     case 9750:  /* avx512vl_lshrvv8hi_mask */
    7547       209512 :     case 9748:  /* avx512vl_ashlvv8hi_mask */
    7548       209512 :     case 9746:  /* avx2_lshrvv2di_mask */
    7549       209512 :     case 9744:  /* avx2_ashlvv2di_mask */
    7550       209512 :     case 9742:  /* avx2_lshrvv4di_mask */
    7551       209512 :     case 9740:  /* avx2_ashlvv4di_mask */
    7552       209512 :     case 9738:  /* avx512f_lshrvv8di_mask */
    7553       209512 :     case 9736:  /* avx512f_ashlvv8di_mask */
    7554       209512 :     case 9734:  /* avx2_lshrvv4si_mask */
    7555       209512 :     case 9732:  /* avx2_ashlvv4si_mask */
    7556       209512 :     case 9730:  /* avx2_lshrvv8si_mask */
    7557       209512 :     case 9728:  /* avx2_ashlvv8si_mask */
    7558       209512 :     case 9726:  /* avx512f_lshrvv16si_mask */
    7559       209512 :     case 9724:  /* avx512f_ashlvv16si_mask */
    7560       209512 :     case 9722:  /* avx512bw_ashrvv32hi_mask */
    7561       209512 :     case 9720:  /* avx512vl_ashrvv16hi_mask */
    7562       209512 :     case 9718:  /* avx512vl_ashrvv8hi_mask */
    7563       209512 :     case 9716:  /* avx512f_ashrvv8di_mask */
    7564       209512 :     case 9714:  /* avx2_ashrvv4di_mask */
    7565       209512 :     case 9712:  /* avx2_ashrvv2di_mask */
    7566       209512 :     case 9710:  /* avx512f_ashrvv16si_mask */
    7567       209512 :     case 9708:  /* avx2_ashrvv8si_mask */
    7568       209512 :     case 9706:  /* avx2_ashrvv4si_mask */
    7569       209512 :     case 8161:  /* *xorv2di3_mask */
    7570       209512 :     case 8159:  /* *iorv2di3_mask */
    7571       209512 :     case 8157:  /* *andv2di3_mask */
    7572       209512 :     case 8155:  /* *xorv4di3_mask */
    7573       209512 :     case 8153:  /* *iorv4di3_mask */
    7574       209512 :     case 8151:  /* *andv4di3_mask */
    7575       209512 :     case 8149:  /* *xorv8di3_mask */
    7576       209512 :     case 8147:  /* *iorv8di3_mask */
    7577       209512 :     case 8145:  /* *andv8di3_mask */
    7578       209512 :     case 8143:  /* *xorv4si3_mask */
    7579       209512 :     case 8141:  /* *iorv4si3_mask */
    7580       209512 :     case 8139:  /* *andv4si3_mask */
    7581       209512 :     case 8137:  /* *xorv8si3_mask */
    7582       209512 :     case 8135:  /* *iorv8si3_mask */
    7583       209512 :     case 8133:  /* *andv8si3_mask */
    7584       209512 :     case 8131:  /* *xorv16si3_mask */
    7585       209512 :     case 8129:  /* *iorv16si3_mask */
    7586       209512 :     case 8127:  /* *andv16si3_mask */
    7587       209512 :     case 8095:  /* one_cmplv2di2_mask */
    7588       209512 :     case 8093:  /* one_cmplv4di2_mask */
    7589       209512 :     case 8091:  /* one_cmplv4si2_mask */
    7590       209512 :     case 8089:  /* one_cmplv8si2_mask */
    7591       209512 :     case 8081:  /* one_cmplv8di2_mask */
    7592       209512 :     case 8079:  /* one_cmplv16si2_mask */
    7593       209512 :     case 7997:  /* *sse4_1_uminv4si3_mask */
    7594       209512 :     case 7995:  /* *sse4_1_umaxv4si3_mask */
    7595       209512 :     case 7993:  /* *sse4_1_uminv8hi3_mask */
    7596       209512 :     case 7991:  /* *sse4_1_umaxv8hi3_mask */
    7597       209512 :     case 7987:  /* *sse4_1_sminv4si3_mask */
    7598       209512 :     case 7985:  /* *sse4_1_smaxv4si3_mask */
    7599       209512 :     case 7983:  /* *sse4_1_sminv16qi3_mask */
    7600       209512 :     case 7981:  /* *sse4_1_smaxv16qi3_mask */
    7601       209512 :     case 7979:  /* *avx512bw_uminv8hi3_mask */
    7602       209512 :     case 7977:  /* *avx512bw_umaxv8hi3_mask */
    7603       209512 :     case 7975:  /* *avx512bw_sminv8hi3_mask */
    7604       209512 :     case 7973:  /* *avx512bw_smaxv8hi3_mask */
    7605       209512 :     case 7971:  /* *avx512bw_uminv16hi3_mask */
    7606       209512 :     case 7969:  /* *avx512bw_umaxv16hi3_mask */
    7607       209512 :     case 7967:  /* *avx512bw_sminv16hi3_mask */
    7608       209512 :     case 7965:  /* *avx512bw_smaxv16hi3_mask */
    7609       209512 :     case 7963:  /* *avx512bw_uminv32hi3_mask */
    7610       209512 :     case 7961:  /* *avx512bw_umaxv32hi3_mask */
    7611       209512 :     case 7959:  /* *avx512bw_sminv32hi3_mask */
    7612       209512 :     case 7957:  /* *avx512bw_smaxv32hi3_mask */
    7613       209512 :     case 7955:  /* *avx512bw_uminv32qi3_mask */
    7614       209512 :     case 7953:  /* *avx512bw_umaxv32qi3_mask */
    7615       209512 :     case 7951:  /* *avx512bw_sminv32qi3_mask */
    7616       209512 :     case 7949:  /* *avx512bw_smaxv32qi3_mask */
    7617       209512 :     case 7947:  /* *avx512bw_uminv16qi3_mask */
    7618       209512 :     case 7945:  /* *avx512bw_umaxv16qi3_mask */
    7619       209512 :     case 7943:  /* *avx512bw_sminv16qi3_mask */
    7620       209512 :     case 7941:  /* *avx512bw_smaxv16qi3_mask */
    7621       209512 :     case 7939:  /* *avx512bw_uminv64qi3_mask */
    7622       209512 :     case 7937:  /* *avx512bw_umaxv64qi3_mask */
    7623       209512 :     case 7935:  /* *avx512bw_sminv64qi3_mask */
    7624       209512 :     case 7933:  /* *avx512bw_smaxv64qi3_mask */
    7625       209512 :     case 7931:  /* *avx512f_uminv2di3_mask */
    7626       209512 :     case 7929:  /* *avx512f_umaxv2di3_mask */
    7627       209512 :     case 7927:  /* *avx512f_sminv2di3_mask */
    7628       209512 :     case 7925:  /* *avx512f_smaxv2di3_mask */
    7629       209512 :     case 7923:  /* *avx512f_uminv4di3_mask */
    7630       209512 :     case 7921:  /* *avx512f_umaxv4di3_mask */
    7631       209512 :     case 7919:  /* *avx512f_sminv4di3_mask */
    7632       209512 :     case 7917:  /* *avx512f_smaxv4di3_mask */
    7633       209512 :     case 7915:  /* *avx512f_uminv8di3_mask */
    7634       209512 :     case 7913:  /* *avx512f_umaxv8di3_mask */
    7635       209512 :     case 7911:  /* *avx512f_sminv8di3_mask */
    7636       209512 :     case 7909:  /* *avx512f_smaxv8di3_mask */
    7637       209512 :     case 7907:  /* *avx512f_uminv4si3_mask */
    7638       209512 :     case 7905:  /* *avx512f_umaxv4si3_mask */
    7639       209512 :     case 7903:  /* *avx512f_sminv4si3_mask */
    7640       209512 :     case 7901:  /* *avx512f_smaxv4si3_mask */
    7641       209512 :     case 7899:  /* *avx512f_uminv8si3_mask */
    7642       209512 :     case 7897:  /* *avx512f_umaxv8si3_mask */
    7643       209512 :     case 7895:  /* *avx512f_sminv8si3_mask */
    7644       209512 :     case 7893:  /* *avx512f_smaxv8si3_mask */
    7645       209512 :     case 7891:  /* *avx512f_uminv16si3_mask */
    7646       209512 :     case 7889:  /* *avx512f_umaxv16si3_mask */
    7647       209512 :     case 7887:  /* *avx512f_sminv16si3_mask */
    7648       209512 :     case 7885:  /* *avx512f_smaxv16si3_mask */
    7649       209512 :     case 7871:  /* avx512vl_rorv2di_mask */
    7650       209512 :     case 7869:  /* avx512vl_rolv2di_mask */
    7651       209512 :     case 7867:  /* avx512vl_rorv4di_mask */
    7652       209512 :     case 7865:  /* avx512vl_rolv4di_mask */
    7653       209512 :     case 7863:  /* avx512f_rorv8di_mask */
    7654       209512 :     case 7861:  /* avx512f_rolv8di_mask */
    7655       209512 :     case 7859:  /* avx512vl_rorv4si_mask */
    7656       209512 :     case 7857:  /* avx512vl_rolv4si_mask */
    7657       209512 :     case 7855:  /* avx512vl_rorv8si_mask */
    7658       209512 :     case 7853:  /* avx512vl_rolv8si_mask */
    7659       209512 :     case 7851:  /* avx512f_rorv16si_mask */
    7660       209512 :     case 7849:  /* avx512f_rolv16si_mask */
    7661       209512 :     case 7847:  /* avx512vl_rorvv2di_mask */
    7662       209512 :     case 7845:  /* avx512vl_rolvv2di_mask */
    7663       209512 :     case 7843:  /* avx512vl_rorvv4di_mask */
    7664       209512 :     case 7841:  /* avx512vl_rolvv4di_mask */
    7665       209512 :     case 7839:  /* avx512f_rorvv8di_mask */
    7666       209512 :     case 7837:  /* avx512f_rolvv8di_mask */
    7667       209512 :     case 7835:  /* avx512vl_rorvv4si_mask */
    7668       209512 :     case 7833:  /* avx512vl_rolvv4si_mask */
    7669       209512 :     case 7831:  /* avx512vl_rorvv8si_mask */
    7670       209512 :     case 7829:  /* avx512vl_rolvv8si_mask */
    7671       209512 :     case 7827:  /* avx512f_rorvv16si_mask */
    7672       209512 :     case 7825:  /* avx512f_rolvv16si_mask */
    7673       209512 :     case 7808:  /* lshrv8di3_mask */
    7674       209512 :     case 7806:  /* ashlv8di3_mask */
    7675       209512 :     case 7804:  /* lshrv16si3_mask */
    7676       209512 :     case 7802:  /* ashlv16si3_mask */
    7677       209512 :     case 7800:  /* lshrv32hi3_mask */
    7678       209512 :     case 7798:  /* ashlv32hi3_mask */
    7679       209512 :     case 7780:  /* lshrv2di3_mask */
    7680       209512 :     case 7778:  /* ashlv2di3_mask */
    7681       209512 :     case 7776:  /* lshrv4di3_mask */
    7682       209512 :     case 7774:  /* ashlv4di3_mask */
    7683       209512 :     case 7772:  /* lshrv4si3_mask */
    7684       209512 :     case 7770:  /* ashlv4si3_mask */
    7685       209512 :     case 7768:  /* lshrv8si3_mask */
    7686       209512 :     case 7766:  /* ashlv8si3_mask */
    7687       209512 :     case 7764:  /* lshrv8hi3_mask */
    7688       209512 :     case 7762:  /* ashlv8hi3_mask */
    7689       209512 :     case 7760:  /* lshrv16hi3_mask */
    7690       209512 :     case 7758:  /* ashlv16hi3_mask */
    7691       209512 :     case 7747:  /* ashrv8di3_mask */
    7692       209512 :     case 7745:  /* ashrv16si3_mask */
    7693       209512 :     case 7743:  /* ashrv4di3_mask */
    7694       209512 :     case 7741:  /* ashrv32hi3_mask */
    7695       209512 :     case 7731:  /* ashrv2di3_mask */
    7696       209512 :     case 7729:  /* ashrv4si3_mask */
    7697       209512 :     case 7727:  /* ashrv8si3_mask */
    7698       209512 :     case 7725:  /* ashrv8hi3_mask */
    7699       209512 :     case 7723:  /* ashrv16hi3_mask */
    7700       209512 :     case 7721:  /* *sse4_1_mulv4si3_mask */
    7701       209512 :     case 7719:  /* *avx2_mulv8si3_mask */
    7702       209512 :     case 7717:  /* *avx512f_mulv16si3_mask */
    7703       209512 :     case 7715:  /* *avx512dq_mulv2di3_mask */
    7704       209512 :     case 7713:  /* *avx512dq_mulv4di3_mask */
    7705       209512 :     case 7711:  /* *avx512dq_mulv8di3_mask */
    7706       209512 :     case 7677:  /* *mulv8hi3_mask */
    7707       209512 :     case 7675:  /* *mulv16hi3_mask */
    7708       209512 :     case 7673:  /* *mulv32hi3_mask */
    7709       209512 :     case 7671:  /* *sse2_ussubv8hi3_mask */
    7710       209512 :     case 7669:  /* *sse2_sssubv8hi3_mask */
    7711       209512 :     case 7667:  /* *sse2_usaddv8hi3_mask */
    7712       209512 :     case 7665:  /* *sse2_ssaddv8hi3_mask */
    7713       209512 :     case 7663:  /* *avx2_ussubv16hi3_mask */
    7714       209512 :     case 7661:  /* *avx2_sssubv16hi3_mask */
    7715       209512 :     case 7659:  /* *avx2_usaddv16hi3_mask */
    7716       209512 :     case 7657:  /* *avx2_ssaddv16hi3_mask */
    7717       209512 :     case 7655:  /* *avx512bw_ussubv32hi3_mask */
    7718       209512 :     case 7653:  /* *avx512bw_sssubv32hi3_mask */
    7719       209512 :     case 7651:  /* *avx512bw_usaddv32hi3_mask */
    7720       209512 :     case 7649:  /* *avx512bw_ssaddv32hi3_mask */
    7721       209512 :     case 7647:  /* *sse2_ussubv16qi3_mask */
    7722       209512 :     case 7645:  /* *sse2_sssubv16qi3_mask */
    7723       209512 :     case 7643:  /* *sse2_usaddv16qi3_mask */
    7724       209512 :     case 7641:  /* *sse2_ssaddv16qi3_mask */
    7725       209512 :     case 7639:  /* *avx2_ussubv32qi3_mask */
    7726       209512 :     case 7637:  /* *avx2_sssubv32qi3_mask */
    7727       209512 :     case 7635:  /* *avx2_usaddv32qi3_mask */
    7728       209512 :     case 7633:  /* *avx2_ssaddv32qi3_mask */
    7729       209512 :     case 7631:  /* *avx512bw_ussubv64qi3_mask */
    7730       209512 :     case 7629:  /* *avx512bw_sssubv64qi3_mask */
    7731       209512 :     case 7627:  /* *avx512bw_usaddv64qi3_mask */
    7732       209512 :     case 7625:  /* *avx512bw_ssaddv64qi3_mask */
    7733       209512 :     case 7599:  /* *subv8hi3_mask */
    7734       209512 :     case 7598:  /* *addv8hi3_mask */
    7735       209512 :     case 7597:  /* *subv16hi3_mask */
    7736       209512 :     case 7596:  /* *addv16hi3_mask */
    7737       209512 :     case 7595:  /* *subv32hi3_mask */
    7738       209512 :     case 7594:  /* *addv32hi3_mask */
    7739       209512 :     case 7593:  /* *subv32qi3_mask */
    7740       209512 :     case 7592:  /* *addv32qi3_mask */
    7741       209512 :     case 7591:  /* *subv16qi3_mask */
    7742       209512 :     case 7590:  /* *addv16qi3_mask */
    7743       209512 :     case 7589:  /* *subv64qi3_mask */
    7744       209512 :     case 7588:  /* *addv64qi3_mask */
    7745       209512 :     case 7587:  /* *subv2di3_mask */
    7746       209512 :     case 7586:  /* *addv2di3_mask */
    7747       209512 :     case 7585:  /* *subv4di3_mask */
    7748       209512 :     case 7584:  /* *addv4di3_mask */
    7749       209512 :     case 7583:  /* *subv8di3_mask */
    7750       209512 :     case 7582:  /* *addv8di3_mask */
    7751       209512 :     case 7581:  /* *subv4si3_mask */
    7752       209512 :     case 7580:  /* *addv4si3_mask */
    7753       209512 :     case 7579:  /* *subv8si3_mask */
    7754       209512 :     case 7578:  /* *addv8si3_mask */
    7755       209512 :     case 7577:  /* *subv16si3_mask */
    7756       209512 :     case 7576:  /* *addv16si3_mask */
    7757       209512 :     case 3845:  /* *xorv8df3_mask */
    7758       209512 :     case 3843:  /* *iorv8df3_mask */
    7759       209512 :     case 3841:  /* *andv8df3_mask */
    7760       209512 :     case 3839:  /* *xorv16sf3_mask */
    7761       209512 :     case 3837:  /* *iorv16sf3_mask */
    7762       209512 :     case 3835:  /* *andv16sf3_mask */
    7763       209512 :     case 3827:  /* *xorv2df3_mask */
    7764       209512 :     case 3825:  /* *iorv2df3_mask */
    7765       209512 :     case 3823:  /* *andv2df3_mask */
    7766       209512 :     case 3821:  /* *xorv4df3_mask */
    7767       209512 :     case 3819:  /* *iorv4df3_mask */
    7768       209512 :     case 3817:  /* *andv4df3_mask */
    7769       209512 :     case 3815:  /* *xorv4sf3_mask */
    7770       209512 :     case 3813:  /* *iorv4sf3_mask */
    7771       209512 :     case 3811:  /* *andv4sf3_mask */
    7772       209512 :     case 3809:  /* *xorv8sf3_mask */
    7773       209512 :     case 3807:  /* *iorv8sf3_mask */
    7774       209512 :     case 3805:  /* *andv8sf3_mask */
    7775       209512 :     case 3101:  /* *sminv2df3_mask */
    7776       209512 :     case 3099:  /* *smaxv2df3_mask */
    7777       209512 :     case 3097:  /* *sminv4df3_mask */
    7778       209512 :     case 3095:  /* *smaxv4df3_mask */
    7779       209512 :     case 3092:  /* *sminv8df3_mask */
    7780       209512 :     case 3088:  /* *smaxv8df3_mask */
    7781       209512 :     case 3085:  /* *sminv4sf3_mask */
    7782       209512 :     case 3083:  /* *smaxv4sf3_mask */
    7783       209512 :     case 3081:  /* *sminv8sf3_mask */
    7784       209512 :     case 3079:  /* *smaxv8sf3_mask */
    7785       209512 :     case 3076:  /* *sminv16sf3_mask */
    7786       209512 :     case 3072:  /* *smaxv16sf3_mask */
    7787       209512 :     case 3069:  /* *sminv8hf3_mask */
    7788       209512 :     case 3067:  /* *smaxv8hf3_mask */
    7789       209512 :     case 3065:  /* *sminv16hf3_mask */
    7790       209512 :     case 3063:  /* *smaxv16hf3_mask */
    7791       209512 :     case 3060:  /* *sminv32hf3_mask */
    7792       209512 :     case 3056:  /* *smaxv32hf3_mask */
    7793       209512 :     case 2946:  /* sse2_divv2df3_mask */
    7794       209512 :     case 2944:  /* avx_divv4df3_mask */
    7795       209512 :     case 2941:  /* avx512f_divv8df3_mask */
    7796       209512 :     case 2938:  /* sse_divv4sf3_mask */
    7797       209512 :     case 2936:  /* avx_divv8sf3_mask */
    7798       209512 :     case 2933:  /* avx512f_divv16sf3_mask */
    7799       209512 :     case 2930:  /* avx512fp16_divv8hf3_mask */
    7800       209512 :     case 2928:  /* avx512fp16_divv16hf3_mask */
    7801       209512 :     case 2925:  /* avx512fp16_divv32hf3_mask */
    7802       209512 :     case 2891:  /* *mulv2df3_mask */
    7803       209512 :     case 2887:  /* *mulv4df3_mask */
    7804       209512 :     case 2883:  /* *mulv8df3_mask */
    7805       209512 :     case 2879:  /* *mulv4sf3_mask */
    7806       209512 :     case 2875:  /* *mulv8sf3_mask */
    7807       209512 :     case 2871:  /* *mulv16sf3_mask */
    7808       209512 :     case 2867:  /* *mulv8hf3_mask */
    7809       209512 :     case 2863:  /* *mulv16hf3_mask */
    7810       209512 :     case 2859:  /* *mulv32hf3_mask */
    7811       209512 :     case 2825:  /* *subv2df3_mask */
    7812       209512 :     case 2821:  /* *addv2df3_mask */
    7813       209512 :     case 2817:  /* *subv4df3_mask */
    7814       209512 :     case 2813:  /* *addv4df3_mask */
    7815       209512 :     case 2809:  /* *subv8df3_mask */
    7816       209512 :     case 2805:  /* *addv8df3_mask */
    7817       209512 :     case 2801:  /* *subv4sf3_mask */
    7818       209512 :     case 2797:  /* *addv4sf3_mask */
    7819       209512 :     case 2793:  /* *subv8sf3_mask */
    7820       209512 :     case 2789:  /* *addv8sf3_mask */
    7821       209512 :     case 2785:  /* *subv16sf3_mask */
    7822       209512 :     case 2781:  /* *addv16sf3_mask */
    7823       209512 :     case 2777:  /* *subv8hf3_mask */
    7824       209512 :     case 2773:  /* *addv8hf3_mask */
    7825       209512 :     case 2769:  /* *subv16hf3_mask */
    7826       209512 :     case 2765:  /* *addv16hf3_mask */
    7827       209512 :     case 2761:  /* *subv32hf3_mask */
    7828       209512 :     case 2757:  /* *addv32hf3_mask */
    7829       209512 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7830       209512 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    7831       209512 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    7832       209512 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    7833       209512 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 2));
    7834       209512 :       break;
    7835              : 
    7836         1704 :     case 3091:  /* *sminv8df3_round */
    7837         1704 :     case 3087:  /* *smaxv8df3_round */
    7838         1704 :     case 3075:  /* *sminv16sf3_round */
    7839         1704 :     case 3071:  /* *smaxv16sf3_round */
    7840         1704 :     case 3059:  /* *sminv32hf3_round */
    7841         1704 :     case 3055:  /* *smaxv32hf3_round */
    7842         1704 :     case 2940:  /* avx512f_divv8df3_round */
    7843         1704 :     case 2932:  /* avx512f_divv16sf3_round */
    7844         1704 :     case 2924:  /* avx512fp16_divv32hf3_round */
    7845         1704 :     case 2890:  /* *mulv2df3_round */
    7846         1704 :     case 2886:  /* *mulv4df3_round */
    7847         1704 :     case 2882:  /* *mulv8df3_round */
    7848         1704 :     case 2878:  /* *mulv4sf3_round */
    7849         1704 :     case 2874:  /* *mulv8sf3_round */
    7850         1704 :     case 2870:  /* *mulv16sf3_round */
    7851         1704 :     case 2866:  /* *mulv8hf3_round */
    7852         1704 :     case 2862:  /* *mulv16hf3_round */
    7853         1704 :     case 2858:  /* *mulv32hf3_round */
    7854         1704 :     case 2824:  /* *subv2df3_round */
    7855         1704 :     case 2820:  /* *addv2df3_round */
    7856         1704 :     case 2816:  /* *subv4df3_round */
    7857         1704 :     case 2812:  /* *addv4df3_round */
    7858         1704 :     case 2808:  /* *subv8df3_round */
    7859         1704 :     case 2804:  /* *addv8df3_round */
    7860         1704 :     case 2800:  /* *subv4sf3_round */
    7861         1704 :     case 2796:  /* *addv4sf3_round */
    7862         1704 :     case 2792:  /* *subv8sf3_round */
    7863         1704 :     case 2788:  /* *addv8sf3_round */
    7864         1704 :     case 2784:  /* *subv16sf3_round */
    7865         1704 :     case 2780:  /* *addv16sf3_round */
    7866         1704 :     case 2776:  /* *subv8hf3_round */
    7867         1704 :     case 2772:  /* *addv8hf3_round */
    7868         1704 :     case 2768:  /* *subv16hf3_round */
    7869         1704 :     case 2764:  /* *addv16hf3_round */
    7870         1704 :     case 2760:  /* *subv32hf3_round */
    7871         1704 :     case 2756:  /* *addv32hf3_round */
    7872         1704 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7873         1704 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    7874         1704 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
    7875         1704 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 1));
    7876         1704 :       break;
    7877              : 
    7878        15439 :     case 2724:  /* kunpckdi */
    7879        15439 :     case 2723:  /* kunpcksi */
    7880        15439 :     case 2722:  /* kunpckhi */
    7881        15439 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    7882        15439 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    7883        15439 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    7884        15439 :       break;
    7885              : 
    7886          236 :     case 2721:  /* *kortest_cmpdi_movdicc */
    7887          236 :     case 2720:  /* *kortest_cmpdi_movsicc */
    7888          236 :     case 2719:  /* *kortest_cmpdi_movhicc */
    7889          236 :     case 2718:  /* *kortest_cmpsi_movdicc */
    7890          236 :     case 2717:  /* *kortest_cmpsi_movsicc */
    7891          236 :     case 2716:  /* *kortest_cmpsi_movhicc */
    7892          236 :     case 2715:  /* *kortest_cmphi_movdicc */
    7893          236 :     case 2714:  /* *kortest_cmphi_movsicc */
    7894          236 :     case 2713:  /* *kortest_cmphi_movhicc */
    7895          236 :     case 2712:  /* *kortest_cmpqi_movdicc */
    7896          236 :     case 2711:  /* *kortest_cmpqi_movsicc */
    7897          236 :     case 2710:  /* *kortest_cmpqi_movhicc */
    7898          236 :     case 2709:  /* *kortest_cmpdi_movqicc */
    7899          236 :     case 2708:  /* *kortest_cmpsi_movqicc */
    7900          236 :     case 2707:  /* *kortest_cmphi_movqicc */
    7901          236 :     case 2706:  /* *kortest_cmpqi_movqicc */
    7902          236 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    7903          236 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    7904          236 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    7905          236 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2));
    7906          236 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    7907          236 :       break;
    7908              : 
    7909          801 :     case 2705:  /* *kortest_cmpdi_jcc */
    7910          801 :     case 2704:  /* *kortest_cmpsi_jcc */
    7911          801 :     case 2703:  /* *kortest_cmphi_jcc */
    7912          801 :     case 2702:  /* *kortest_cmpqi_jcc */
    7913          801 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    7914          801 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    7915          801 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    7916          801 :       break;
    7917              : 
    7918          519 :     case 2701:  /* *kortest_cmpdi_setcc */
    7919          519 :     case 2700:  /* *kortest_cmpsi_setcc */
    7920          519 :     case 2699:  /* *kortest_cmphi_setcc */
    7921          519 :     case 2698:  /* *kortest_cmpqi_setcc */
    7922          519 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    7923          519 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1));
    7924          519 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    7925          519 :       break;
    7926              : 
    7927         1663 :     case 2616:  /* *avx512vl_storev8bf_mask */
    7928         1663 :     case 2615:  /* *avx512vl_storev16bf_mask */
    7929         1663 :     case 2614:  /* *avx512bw_storev32bf_mask */
    7930         1663 :     case 2613:  /* *avx512fp16_storev8hf_mask */
    7931         1663 :     case 2612:  /* *avx512vl_storev16hf_mask */
    7932         1663 :     case 2611:  /* *avx512bw_storev32hf_mask */
    7933         1663 :     case 2610:  /* *avx512vl_storev8hi_mask */
    7934         1663 :     case 2609:  /* *avx512vl_storev16hi_mask */
    7935         1663 :     case 2608:  /* *avx512bw_storev32hi_mask */
    7936         1663 :     case 2607:  /* *avx512vl_storev32qi_mask */
    7937         1663 :     case 2606:  /* *avx512vl_storev16qi_mask */
    7938         1663 :     case 2605:  /* *avx512bw_storev64qi_mask */
    7939         1663 :     case 2604:  /* *avx512vl_storev2df_mask */
    7940         1663 :     case 2603:  /* *avx512vl_storev4df_mask */
    7941         1663 :     case 2602:  /* *avx512f_storev8df_mask */
    7942         1663 :     case 2601:  /* *avx512vl_storev4sf_mask */
    7943         1663 :     case 2600:  /* *avx512vl_storev8sf_mask */
    7944         1663 :     case 2599:  /* *avx512f_storev16sf_mask */
    7945         1663 :     case 2598:  /* *avx512vl_storev2di_mask */
    7946         1663 :     case 2597:  /* *avx512vl_storev4di_mask */
    7947         1663 :     case 2596:  /* *avx512f_storev8di_mask */
    7948         1663 :     case 2595:  /* *avx512vl_storev4si_mask */
    7949         1663 :     case 2594:  /* *avx512vl_storev8si_mask */
    7950         1663 :     case 2593:  /* *avx512f_storev16si_mask */
    7951         1663 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7952         1663 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    7953         1663 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 2));
    7954         1663 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 1);
    7955         1663 :       recog_data.dup_num[0] = 0;
    7956         1663 :       break;
    7957              : 
    7958          789 :     case 2568:  /* avx512f_storedf_mask */
    7959          789 :     case 2567:  /* avx512f_storesf_mask */
    7960          789 :     case 2566:  /* avx512f_storehf_mask */
    7961          789 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7962          789 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    7963          789 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    7964          789 :       recog_data.dup_loc[0] = &XEXP (XEXP (pat, 1), 2);
    7965          789 :       recog_data.dup_num[0] = 0;
    7966          789 :       break;
    7967              : 
    7968         1846 :     case 4368:  /* *fma4i_vmfnmadd_v2df */
    7969         1846 :     case 4367:  /* *fma4i_vmfnmadd_v4sf */
    7970         1846 :     case 2565:  /* *avx512f_loaddf_mask */
    7971         1846 :     case 2564:  /* *avx512f_loadsf_mask */
    7972         1846 :     case 2563:  /* *avx512f_loadhf_mask */
    7973         1846 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7974         1846 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    7975         1846 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    7976         1846 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    7977         1846 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
    7978         1846 :       break;
    7979              : 
    7980         2583 :     case 2562:  /* avx512f_movdf_mask */
    7981         2583 :     case 2561:  /* avx512f_movsf_mask */
    7982         2583 :     case 2560:  /* avx512f_movhf_mask */
    7983         2583 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7984         2583 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    7985         2583 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    7986         2583 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    7987         2583 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    7988         2583 :       break;
    7989              : 
    7990          292 :     case 2535:  /* *avx512vl_loadv2dimask_and3 */
    7991          292 :     case 2534:  /* *avx512vl_loadv2dfmask_and3 */
    7992          292 :     case 2533:  /* *avx512vl_loadv4dimask_and15 */
    7993          292 :     case 2532:  /* *avx512vl_loadv4simask_and15 */
    7994          292 :     case 2531:  /* *avx512vl_loadv4dfmask_and15 */
    7995          292 :     case 2530:  /* *avx512vl_loadv4sfmask_and15 */
    7996          292 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    7997          292 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    7998          292 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    7999          292 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 2), 0));
    8000          292 :       break;
    8001              : 
    8002       147529 :     case 11259:  /* avx10v2aux_sym_truncatev16siv16qi2_mask */
    8003       147529 :     case 11247:  /* vcvthf62hf8v32qi_mask */
    8004       147529 :     case 11245:  /* vcvtbf62hf8v32qi_mask */
    8005       147529 :     case 11243:  /* vcvthf62hf8v16qi_mask */
    8006       147529 :     case 11241:  /* vcvtbf62hf8v16qi_mask */
    8007       147529 :     case 11239:  /* vcvthf62hf8v64qi_mask */
    8008       147529 :     case 11237:  /* vcvtbf62hf8v64qi_mask */
    8009       147529 :     case 11229:  /* vcvtbf42hf8v32qi_mask */
    8010       147529 :     case 11227:  /* vcvtbf42hf8v16qi_mask */
    8011       147529 :     case 11225:  /* vcvtbf42hf8v64qi_mask */
    8012       147529 :     case 11217:  /* vcvthf82psv4sf_mask */
    8013       147529 :     case 11215:  /* vcvtbf82psv4sf_mask */
    8014       147529 :     case 11213:  /* vcvthf82psv8sf_mask */
    8015       147529 :     case 11211:  /* vcvtbf82psv8sf_mask */
    8016       147529 :     case 11209:  /* vcvthf82psv16sf_mask */
    8017       147529 :     case 11207:  /* vcvtbf82psv16sf_mask */
    8018       147529 :     case 11181:  /* vcvtrops2hf8sv16sf_mask */
    8019       147529 :     case 11179:  /* vcvtrops2hf8v16sf_mask */
    8020       147529 :     case 11177:  /* vcvtps2hf8sv16sf_mask */
    8021       147529 :     case 11175:  /* vcvtps2hf8v16sf_mask */
    8022       147529 :     case 11173:  /* vcvtps2bf8sv16sf_mask */
    8023       147529 :     case 11171:  /* vcvtps2bf8v16sf_mask */
    8024       147529 :     case 11142:  /* avx512bmm_vbitrevb_v32qi_mask */
    8025       147529 :     case 11141:  /* avx512bmm_vbitrevb_v16qi_mask */
    8026       147529 :     case 11140:  /* avx512bmm_vbitrevb_v64qi_mask */
    8027       147529 :     case 11135:  /* avx10_2_vmovrsqv2di_mask */
    8028       147529 :     case 11133:  /* avx10_2_vmovrsqv4di_mask */
    8029       147529 :     case 11131:  /* avx10_2_vmovrsqv8di_mask */
    8030       147529 :     case 11129:  /* avx10_2_vmovrsdv4si_mask */
    8031       147529 :     case 11127:  /* avx10_2_vmovrsdv8si_mask */
    8032       147529 :     case 11125:  /* avx10_2_vmovrsdv16si_mask */
    8033       147529 :     case 11123:  /* avx10_2_vmovrswv8hi_mask */
    8034       147529 :     case 11121:  /* avx10_2_vmovrswv16hi_mask */
    8035       147529 :     case 11119:  /* avx10_2_vmovrswv32hi_mask */
    8036       147529 :     case 11117:  /* avx10_2_vmovrsbv16qi_mask */
    8037       147529 :     case 11115:  /* avx10_2_vmovrsbv32qi_mask */
    8038       147529 :     case 11113:  /* avx10_2_vmovrsbv64qi_mask */
    8039       147529 :     case 11033:  /* avx10_2_vcvttps2uqqsv2di_mask */
    8040       147529 :     case 11031:  /* avx10_2_vcvttps2qqsv2di_mask */
    8041       147529 :     case 11029:  /* avx10_2_vcvttps2uqqsv4di_mask */
    8042       147529 :     case 11027:  /* avx10_2_vcvttps2qqsv4di_mask */
    8043       147529 :     case 11024:  /* avx10_2_vcvttps2uqqsv8di_mask */
    8044       147529 :     case 11020:  /* avx10_2_vcvttps2qqsv8di_mask */
    8045       147529 :     case 11017:  /* avx10_2_vcvttpd2uqqsv2df_mask */
    8046       147529 :     case 11015:  /* avx10_2_vcvttpd2qqsv2df_mask */
    8047       147529 :     case 11013:  /* avx10_2_vcvttpd2uqqsv4df_mask */
    8048       147529 :     case 11011:  /* avx10_2_vcvttpd2qqsv4df_mask */
    8049       147529 :     case 11008:  /* avx10_2_vcvttpd2uqqsv8df_mask */
    8050       147529 :     case 11004:  /* avx10_2_vcvttpd2qqsv8df_mask */
    8051       147529 :     case 11001:  /* avx10_2_vcvttpd2udqsv2df_mask */
    8052       147529 :     case 10999:  /* avx10_2_vcvttpd2dqsv2df_mask */
    8053       147529 :     case 10997:  /* avx10_2_vcvttpd2udqsv4df_mask */
    8054       147529 :     case 10995:  /* avx10_2_vcvttpd2dqsv4df_mask */
    8055       147529 :     case 10992:  /* avx10_2_vcvttpd2udqsv8df_mask */
    8056       147529 :     case 10988:  /* avx10_2_vcvttpd2dqsv8df_mask */
    8057       147529 :     case 10985:  /* avx10_2_vcvttps2udqsv4sf_mask */
    8058       147529 :     case 10983:  /* avx10_2_vcvttps2dqsv4sf_mask */
    8059       147529 :     case 10981:  /* avx10_2_vcvttps2udqsv8sf_mask */
    8060       147529 :     case 10979:  /* avx10_2_vcvttps2dqsv8sf_mask */
    8061       147529 :     case 10976:  /* avx10_2_vcvttps2udqsv16sf_mask */
    8062       147529 :     case 10972:  /* avx10_2_vcvttps2dqsv16sf_mask */
    8063       147529 :     case 10969:  /* avx10_2_cvttps2iubsv4sf_mask */
    8064       147529 :     case 10967:  /* avx10_2_cvttps2ibsv4sf_mask */
    8065       147529 :     case 10965:  /* avx10_2_cvttps2iubsv8sf_mask */
    8066       147529 :     case 10963:  /* avx10_2_cvttps2ibsv8sf_mask */
    8067       147529 :     case 10960:  /* avx10_2_cvttps2iubsv16sf_mask */
    8068       147529 :     case 10956:  /* avx10_2_cvttps2ibsv16sf_mask */
    8069       147529 :     case 10953:  /* avx10_2_cvtps2iubsv4sf_mask */
    8070       147529 :     case 10951:  /* avx10_2_cvtps2ibsv4sf_mask */
    8071       147529 :     case 10949:  /* avx10_2_cvtps2iubsv8sf_mask */
    8072       147529 :     case 10947:  /* avx10_2_cvtps2ibsv8sf_mask */
    8073       147529 :     case 10944:  /* avx10_2_cvtps2iubsv16sf_mask */
    8074       147529 :     case 10940:  /* avx10_2_cvtps2ibsv16sf_mask */
    8075       147529 :     case 10937:  /* avx10_2_cvttph2iubsv8hf_mask */
    8076       147529 :     case 10935:  /* avx10_2_cvttph2ibsv8hf_mask */
    8077       147529 :     case 10933:  /* avx10_2_cvttph2iubsv16hf_mask */
    8078       147529 :     case 10931:  /* avx10_2_cvttph2ibsv16hf_mask */
    8079       147529 :     case 10928:  /* avx10_2_cvttph2iubsv32hf_mask */
    8080       147529 :     case 10924:  /* avx10_2_cvttph2ibsv32hf_mask */
    8081       147529 :     case 10921:  /* avx10_2_cvtph2iubsv8hf_mask */
    8082       147529 :     case 10919:  /* avx10_2_cvtph2ibsv8hf_mask */
    8083       147529 :     case 10917:  /* avx10_2_cvtph2iubsv16hf_mask */
    8084       147529 :     case 10915:  /* avx10_2_cvtph2ibsv16hf_mask */
    8085       147529 :     case 10912:  /* avx10_2_cvtph2iubsv32hf_mask */
    8086       147529 :     case 10908:  /* avx10_2_cvtph2ibsv32hf_mask */
    8087       147529 :     case 10905:  /* avx10_2_cvttbf162iubsv8bf_mask */
    8088       147529 :     case 10903:  /* avx10_2_cvttbf162ibsv8bf_mask */
    8089       147529 :     case 10901:  /* avx10_2_cvtbf162iubsv8bf_mask */
    8090       147529 :     case 10899:  /* avx10_2_cvtbf162ibsv8bf_mask */
    8091       147529 :     case 10897:  /* avx10_2_cvttbf162iubsv16bf_mask */
    8092       147529 :     case 10895:  /* avx10_2_cvttbf162ibsv16bf_mask */
    8093       147529 :     case 10893:  /* avx10_2_cvtbf162iubsv16bf_mask */
    8094       147529 :     case 10891:  /* avx10_2_cvtbf162ibsv16bf_mask */
    8095       147529 :     case 10889:  /* avx10_2_cvttbf162iubsv32bf_mask */
    8096       147529 :     case 10887:  /* avx10_2_cvttbf162ibsv32bf_mask */
    8097       147529 :     case 10885:  /* avx10_2_cvtbf162iubsv32bf_mask */
    8098       147529 :     case 10883:  /* avx10_2_cvtbf162ibsv32bf_mask */
    8099       147529 :     case 10851:  /* avx10_2_getexpbf16_v8bf_mask */
    8100       147529 :     case 10849:  /* avx10_2_getexpbf16_v16bf_mask */
    8101       147529 :     case 10847:  /* avx10_2_getexpbf16_v32bf_mask */
    8102       147529 :     case 10845:  /* avx10_2_rcpbf16_v8bf_mask */
    8103       147529 :     case 10843:  /* avx10_2_rcpbf16_v16bf_mask */
    8104       147529 :     case 10841:  /* avx10_2_rcpbf16_v32bf_mask */
    8105       147529 :     case 10833:  /* avx10_2_rsqrtbf16_v8bf_mask */
    8106       147529 :     case 10831:  /* avx10_2_rsqrtbf16_v16bf_mask */
    8107       147529 :     case 10829:  /* avx10_2_rsqrtbf16_v32bf_mask */
    8108       147529 :     case 10674:  /* vcvthf82phv8hf_mask */
    8109       147529 :     case 10672:  /* vcvthf82phv16hf_mask */
    8110       147529 :     case 10670:  /* vcvthf82phv32hf_mask */
    8111       147529 :     case 10668:  /* vcvtph2hf8sv32hf_mask */
    8112       147529 :     case 10666:  /* vcvtph2hf8v32hf_mask */
    8113       147529 :     case 10664:  /* vcvtph2bf8sv32hf_mask */
    8114       147529 :     case 10662:  /* vcvtph2bf8v32hf_mask */
    8115       147529 :     case 10660:  /* vcvtph2hf8sv16hf_mask */
    8116       147529 :     case 10658:  /* vcvtph2hf8v16hf_mask */
    8117       147529 :     case 10656:  /* vcvtph2bf8sv16hf_mask */
    8118       147529 :     case 10654:  /* vcvtph2bf8v16hf_mask */
    8119       147529 :     case 10235:  /* conflictv2di_mask */
    8120       147529 :     case 10233:  /* conflictv4di_mask */
    8121       147529 :     case 10231:  /* conflictv8di_mask */
    8122       147529 :     case 10229:  /* conflictv4si_mask */
    8123       147529 :     case 10227:  /* conflictv8si_mask */
    8124       147529 :     case 10225:  /* conflictv16si_mask */
    8125       147529 :     case 9807:  /* avx512f_vcvtph2ps512_mask */
    8126       147529 :     case 9804:  /* vcvtph2ps256_mask */
    8127       147529 :     case 9802:  /* *vcvtph2ps_load_mask */
    8128       147529 :     case 7143:  /* avx512vl_getexpv2df_mask */
    8129       147529 :     case 7139:  /* avx512vl_getexpv4df_mask */
    8130       147529 :     case 7135:  /* avx512f_getexpv8df_mask */
    8131       147529 :     case 7131:  /* avx512vl_getexpv4sf_mask */
    8132       147529 :     case 7127:  /* avx512vl_getexpv8sf_mask */
    8133       147529 :     case 7123:  /* avx512f_getexpv16sf_mask */
    8134       147529 :     case 7119:  /* avx512fp16_getexpv8hf_mask */
    8135       147529 :     case 7115:  /* avx512vl_getexpv16hf_mask */
    8136       147529 :     case 7111:  /* avx512bw_getexpv32hf_mask */
    8137       147529 :     case 5222:  /* unspec_sse2_cvttpd2dq_mask */
    8138       147529 :     case 5216:  /* unspec_fixuns_truncv4sfv4si2_mask */
    8139       147529 :     case 5214:  /* unspec_fixuns_truncv8sfv8si2_mask */
    8140       147529 :     case 5208:  /* unspec_avx512dq_fixuns_truncv2sfv2di2_mask */
    8141       147529 :     case 5206:  /* unspec_avx512dq_fix_truncv2sfv2di2_mask */
    8142       147529 :     case 5192:  /* unspec_fixuns_truncv4sfv4di2_mask */
    8143       147529 :     case 5190:  /* unspec_fix_truncv4sfv4di2_mask */
    8144       147529 :     case 5187:  /* unspec_fixuns_truncv8sfv8di2_mask */
    8145       147529 :     case 5183:  /* unspec_fix_truncv8sfv8di2_mask */
    8146       147529 :     case 5180:  /* fixuns_notruncv2dfv2di2_mask */
    8147       147529 :     case 5178:  /* fixuns_notruncv4dfv4di2_mask */
    8148       147529 :     case 5175:  /* fixuns_notruncv8dfv8di2_mask */
    8149       147529 :     case 5172:  /* fix_notruncv2dfv2di2_mask */
    8150       147529 :     case 5170:  /* fix_notruncv4dfv4di2_mask */
    8151       147529 :     case 5167:  /* fix_notruncv8dfv8di2_mask */
    8152       147529 :     case 5148:  /* unspec_fixuns_truncv2dfv2di2_mask */
    8153       147529 :     case 5146:  /* unspec_fix_truncv2dfv2di2_mask */
    8154       147529 :     case 5144:  /* unspec_fixuns_truncv4dfv4di2_mask */
    8155       147529 :     case 5142:  /* unspec_fix_truncv4dfv4di2_mask */
    8156       147529 :     case 5139:  /* unspec_fixuns_truncv8dfv8di2_mask */
    8157       147529 :     case 5135:  /* unspec_fix_truncv8dfv8di2_mask */
    8158       147529 :     case 5130:  /* unspec_fixuns_truncv4dfv4si2_mask */
    8159       147529 :     case 5126:  /* unspec_fix_truncv4dfv4si2_mask */
    8160       147529 :     case 5110:  /* unspec_fixuns_truncv8dfv8si2_mask */
    8161       147529 :     case 5106:  /* unspec_fix_truncv8dfv8si2_mask */
    8162       147529 :     case 5099:  /* fixuns_notruncv4dfv4si2_mask */
    8163       147529 :     case 5095:  /* fixuns_notruncv8dfv8si2_mask */
    8164       147529 :     case 5088:  /* avx_cvtpd2dq256_mask */
    8165       147529 :     case 5085:  /* avx512f_cvtpd2dq512_mask */
    8166       147529 :     case 4957:  /* unspec_fix_truncv4sfv4si2_mask */
    8167       147529 :     case 4953:  /* unspec_fix_truncv8sfv8si2_mask */
    8168       147529 :     case 4942:  /* unspec_fixuns_truncv16sfv16si2_mask */
    8169       147529 :     case 4938:  /* unspec_fix_truncv16sfv16si2_mask */
    8170       147529 :     case 4933:  /* avx512dq_cvtps2uqqv4di_mask */
    8171       147529 :     case 4930:  /* avx512dq_cvtps2uqqv8di_mask */
    8172       147529 :     case 4925:  /* avx512dq_cvtps2qqv4di_mask */
    8173       147529 :     case 4922:  /* avx512dq_cvtps2qqv8di_mask */
    8174       147529 :     case 4918:  /* avx512vl_fixuns_notruncv4sfv4si_mask */
    8175       147529 :     case 4914:  /* avx512vl_fixuns_notruncv8sfv8si_mask */
    8176       147529 :     case 4910:  /* avx512f_fixuns_notruncv16sfv16si_mask */
    8177       147529 :     case 4906:  /* avx512f_fix_notruncv16sfv16si_mask */
    8178       147529 :     case 4903:  /* sse2_fix_notruncv4sfv4si_mask */
    8179       147529 :     case 4901:  /* avx_fix_notruncv8sfv8si_mask */
    8180       147529 :     case 4742:  /* unspec_avx512fp16_fixuns_truncv2di2_mask */
    8181       147529 :     case 4740:  /* unspec_avx512fp16_fix_truncv2di2_mask */
    8182       147529 :     case 4722:  /* unspec_avx512fp16_fixuns_truncv4di2_mask */
    8183       147529 :     case 4720:  /* unspec_avx512fp16_fix_truncv4di2_mask */
    8184       147529 :     case 4718:  /* unspec_avx512fp16_fixuns_truncv4si2_mask */
    8185       147529 :     case 4716:  /* unspec_avx512fp16_fix_truncv4si2_mask */
    8186       147529 :     case 4665:  /* unspec_avx512fp16_fixuns_truncv8di2_mask */
    8187       147529 :     case 4661:  /* unspec_avx512fp16_fix_truncv8di2_mask */
    8188       147529 :     case 4657:  /* unspec_avx512fp16_fixuns_truncv16si2_mask */
    8189       147529 :     case 4653:  /* unspec_avx512fp16_fix_truncv16si2_mask */
    8190       147529 :     case 4649:  /* unspec_avx512fp16_fixuns_truncv8si2_mask */
    8191       147529 :     case 4645:  /* unspec_avx512fp16_fix_truncv8si2_mask */
    8192       147529 :     case 4641:  /* unspec_avx512fp16_fixuns_truncv32hi2_mask */
    8193       147529 :     case 4637:  /* unspec_avx512fp16_fix_truncv32hi2_mask */
    8194       147529 :     case 4633:  /* unspec_avx512fp16_fixuns_truncv16hi2_mask */
    8195       147529 :     case 4629:  /* unspec_avx512fp16_fix_truncv16hi2_mask */
    8196       147529 :     case 4625:  /* unspec_avx512fp16_fixuns_truncv8hi2_mask */
    8197       147529 :     case 4621:  /* unspec_avx512fp16_fix_truncv8hi2_mask */
    8198       147529 :     case 4525:  /* avx512fp16_vcvtph2qq_v2di_mask */
    8199       147529 :     case 4521:  /* avx512fp16_vcvtph2uqq_v2di_mask */
    8200       147529 :     case 4517:  /* avx512fp16_vcvtph2dq_v4si_mask */
    8201       147529 :     case 4513:  /* avx512fp16_vcvtph2udq_v4si_mask */
    8202       147529 :     case 4509:  /* avx512fp16_vcvtph2w_v8hi_mask */
    8203       147529 :     case 4505:  /* avx512fp16_vcvtph2uw_v8hi_mask */
    8204       147529 :     case 4501:  /* avx512fp16_vcvtph2qq_v4di_mask */
    8205       147529 :     case 4497:  /* avx512fp16_vcvtph2uqq_v4di_mask */
    8206       147529 :     case 4493:  /* avx512fp16_vcvtph2dq_v8si_mask */
    8207       147529 :     case 4489:  /* avx512fp16_vcvtph2udq_v8si_mask */
    8208       147529 :     case 4485:  /* avx512fp16_vcvtph2w_v16hi_mask */
    8209       147529 :     case 4481:  /* avx512fp16_vcvtph2uw_v16hi_mask */
    8210       147529 :     case 4477:  /* avx512fp16_vcvtph2qq_v8di_mask */
    8211       147529 :     case 4473:  /* avx512fp16_vcvtph2uqq_v8di_mask */
    8212       147529 :     case 4469:  /* avx512fp16_vcvtph2dq_v16si_mask */
    8213       147529 :     case 4465:  /* avx512fp16_vcvtph2udq_v16si_mask */
    8214       147529 :     case 4461:  /* avx512fp16_vcvtph2w_v32hi_mask */
    8215       147529 :     case 4457:  /* avx512fp16_vcvtph2uw_v32hi_mask */
    8216       147529 :     case 3043:  /* rsqrt14v2df_mask */
    8217       147529 :     case 3041:  /* rsqrt14v4df_mask */
    8218       147529 :     case 3039:  /* rsqrt14v8df_mask */
    8219       147529 :     case 3037:  /* rsqrt14v4sf_mask */
    8220       147529 :     case 3035:  /* rsqrt14v8sf_mask */
    8221       147529 :     case 3033:  /* rsqrt14v16sf_mask */
    8222       147529 :     case 3031:  /* avx512fp16_rsqrtv8hf2_mask */
    8223       147529 :     case 3029:  /* avx512fp16_rsqrtv16hf2_mask */
    8224       147529 :     case 3027:  /* avx512fp16_rsqrtv32hf2_mask */
    8225       147529 :     case 2971:  /* rcp14v2df_mask */
    8226       147529 :     case 2969:  /* rcp14v4df_mask */
    8227       147529 :     case 2967:  /* rcp14v8df_mask */
    8228       147529 :     case 2965:  /* rcp14v4sf_mask */
    8229       147529 :     case 2963:  /* rcp14v8sf_mask */
    8230       147529 :     case 2961:  /* rcp14v16sf_mask */
    8231       147529 :     case 2956:  /* avx512fp16_rcpv8hf2_mask */
    8232       147529 :     case 2954:  /* avx512fp16_rcpv16hf2_mask */
    8233       147529 :     case 2952:  /* avx512fp16_rcpv32hf2_mask */
    8234       147529 :     case 2547:  /* *avx512vl_loadv8bf_mask */
    8235       147529 :     case 2546:  /* *avx512vl_loadv16bf_mask */
    8236       147529 :     case 2545:  /* *avx512bw_loadv32bf_mask */
    8237       147529 :     case 2544:  /* *avx512fp16_loadv8hf_mask */
    8238       147529 :     case 2543:  /* *avx512vl_loadv16hf_mask */
    8239       147529 :     case 2542:  /* *avx512bw_loadv32hf_mask */
    8240       147529 :     case 2541:  /* *avx512vl_loadv8hi_mask */
    8241       147529 :     case 2540:  /* *avx512vl_loadv16hi_mask */
    8242       147529 :     case 2539:  /* *avx512bw_loadv32hi_mask */
    8243       147529 :     case 2538:  /* *avx512vl_loadv32qi_mask */
    8244       147529 :     case 2537:  /* *avx512vl_loadv16qi_mask */
    8245       147529 :     case 2536:  /* *avx512bw_loadv64qi_mask */
    8246       147529 :     case 2517:  /* *avx512vl_loadv2df_mask */
    8247       147529 :     case 2516:  /* *avx512vl_loadv4df_mask */
    8248       147529 :     case 2515:  /* *avx512f_loadv8df_mask */
    8249       147529 :     case 2514:  /* *avx512vl_loadv4sf_mask */
    8250       147529 :     case 2513:  /* *avx512vl_loadv8sf_mask */
    8251       147529 :     case 2512:  /* *avx512f_loadv16sf_mask */
    8252       147529 :     case 2511:  /* *avx512vl_loadv2di_mask */
    8253       147529 :     case 2510:  /* *avx512vl_loadv4di_mask */
    8254       147529 :     case 2509:  /* *avx512f_loadv8di_mask */
    8255       147529 :     case 2508:  /* *avx512vl_loadv4si_mask */
    8256       147529 :     case 2507:  /* *avx512vl_loadv8si_mask */
    8257       147529 :     case 2506:  /* *avx512f_loadv16si_mask */
    8258       147529 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8259       147529 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    8260       147529 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    8261       147529 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    8262       147529 :       break;
    8263              : 
    8264         7327 :     case 2505:  /* *vmovv2df_constm1_pternlog_false_dep */
    8265         7327 :     case 2504:  /* *vmovv4df_constm1_pternlog_false_dep */
    8266         7327 :     case 2503:  /* *vmovv8df_constm1_pternlog_false_dep */
    8267         7327 :     case 2502:  /* *vmovv4sf_constm1_pternlog_false_dep */
    8268         7327 :     case 2501:  /* *vmovv8sf_constm1_pternlog_false_dep */
    8269         7327 :     case 2500:  /* *vmovv16sf_constm1_pternlog_false_dep */
    8270         7327 :     case 2499:  /* *vmovv8bf_constm1_pternlog_false_dep */
    8271         7327 :     case 2498:  /* *vmovv16bf_constm1_pternlog_false_dep */
    8272         7327 :     case 2497:  /* *vmovv32bf_constm1_pternlog_false_dep */
    8273         7327 :     case 2496:  /* *vmovv8hf_constm1_pternlog_false_dep */
    8274         7327 :     case 2495:  /* *vmovv16hf_constm1_pternlog_false_dep */
    8275         7327 :     case 2494:  /* *vmovv32hf_constm1_pternlog_false_dep */
    8276         7327 :     case 2493:  /* *vmovv1ti_constm1_pternlog_false_dep */
    8277         7327 :     case 2492:  /* *vmovv2ti_constm1_pternlog_false_dep */
    8278         7327 :     case 2491:  /* *vmovv4ti_constm1_pternlog_false_dep */
    8279         7327 :     case 2490:  /* *vmovv2di_constm1_pternlog_false_dep */
    8280         7327 :     case 2489:  /* *vmovv4di_constm1_pternlog_false_dep */
    8281         7327 :     case 2488:  /* *vmovv8di_constm1_pternlog_false_dep */
    8282         7327 :     case 2487:  /* *vmovv4si_constm1_pternlog_false_dep */
    8283         7327 :     case 2486:  /* *vmovv8si_constm1_pternlog_false_dep */
    8284         7327 :     case 2485:  /* *vmovv16si_constm1_pternlog_false_dep */
    8285         7327 :     case 2484:  /* *vmovv8hi_constm1_pternlog_false_dep */
    8286         7327 :     case 2483:  /* *vmovv16hi_constm1_pternlog_false_dep */
    8287         7327 :     case 2482:  /* *vmovv32hi_constm1_pternlog_false_dep */
    8288         7327 :     case 2481:  /* *vmovv16qi_constm1_pternlog_false_dep */
    8289         7327 :     case 2480:  /* *vmovv32qi_constm1_pternlog_false_dep */
    8290         7327 :     case 2479:  /* *vmovv64qi_constm1_pternlog_false_dep */
    8291         7327 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8292         7327 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1));
    8293         7327 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    8294         7327 :       break;
    8295              : 
    8296          570 :     case 8703:  /* *sse2_maskmovdqu */
    8297          570 :     case 8702:  /* *sse2_maskmovdqu */
    8298          570 :     case 2443:  /* *mmx_maskmovq */
    8299          570 :     case 2442:  /* *mmx_maskmovq */
    8300          570 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0));
    8301          570 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8302          570 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8303          570 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0);
    8304          570 :       recog_data.dup_num[0] = 0;
    8305          570 :       break;
    8306              : 
    8307       108931 :     case 7299:  /* sse2_shufpd_v2df */
    8308       108931 :     case 7298:  /* sse2_shufpd_v2di */
    8309       108931 :     case 2427:  /* *punpckwd */
    8310       108931 :     case 2426:  /* *punpckwd */
    8311       108931 :     case 2425:  /* *punpckwd */
    8312       108931 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8313       108931 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    8314       108931 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    8315       108931 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    8316       108931 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    8317       108931 :       break;
    8318              : 
    8319        23574 :     case 5406:  /* *avx512dq_vextracti64x2_1 */
    8320        23574 :     case 5405:  /* *avx512dq_vextractf64x2_1 */
    8321        23574 :     case 2430:  /* *pshufwv2hi_1 */
    8322        23574 :     case 2429:  /* *pshufwv2bf_1 */
    8323        23574 :     case 2428:  /* *pshufwv2hf_1 */
    8324        23574 :     case 2392:  /* *mmx_pshufd_1 */
    8325        23574 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8326        23574 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    8327        23574 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    8328        23574 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    8329        23574 :       break;
    8330              : 
    8331       872737 :     case 9316:  /* avx2_permv4df_1 */
    8332       872737 :     case 9314:  /* avx2_permv4di_1 */
    8333       872737 :     case 8570:  /* sse2_pshuflw_1 */
    8334       872737 :     case 8564:  /* sse2_pshufd_1 */
    8335       872737 :     case 5410:  /* *avx512f_vextracti32x4_1 */
    8336       872737 :     case 5409:  /* *avx512f_vextractf32x4_1 */
    8337       872737 :     case 2391:  /* mmx_pshufwv4hi_1 */
    8338       872737 :     case 2390:  /* mmx_pshufwv4bf_1 */
    8339       872737 :     case 2389:  /* mmx_pshufwv4hf_1 */
    8340       872737 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8341       872737 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    8342       872737 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    8343       872737 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 1));
    8344       872737 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 2));
    8345       872737 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 3));
    8346       872737 :       break;
    8347              : 
    8348       259285 :     case 8598:  /* *vec_extractv4si_zext_mem */
    8349       259285 :     case 8596:  /* *vec_extractv4si_zext */
    8350       259285 :     case 8587:  /* *vec_extractv16qi_zext */
    8351       259285 :     case 8586:  /* *vec_extractv8hi_zext */
    8352       259285 :     case 8585:  /* *vec_extractv8hi_zext */
    8353       259285 :     case 8584:  /* *vec_extractv16qi_zext */
    8354       259285 :     case 8583:  /* *vec_extractv16qi_zext */
    8355       259285 :     case 2424:  /* *pextrb_zext */
    8356       259285 :     case 2423:  /* *pextrb_zext */
    8357       259285 :     case 2422:  /* *pextrb_zext */
    8358       259285 :     case 2420:  /* *pextrw_zext */
    8359       259285 :     case 2419:  /* *pextrw_zext */
    8360       259285 :     case 2411:  /* *vec_extractv2si_zext_mem */
    8361       259285 :     case 2386:  /* *mmx_pextrb_zext */
    8362       259285 :     case 2385:  /* *mmx_pextrb_zext */
    8363       259285 :     case 2384:  /* *mmx_pextrb_zext */
    8364       259285 :     case 2382:  /* *mmx_pextrw_zext */
    8365       259285 :     case 2381:  /* *mmx_pextrw_zext */
    8366       259285 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8367       259285 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    8368       259285 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    8369       259285 :       break;
    8370              : 
    8371       222028 :     case 8601:  /* *vec_extractv4ti */
    8372       222028 :     case 8600:  /* *vec_extractv2ti */
    8373       222028 :     case 8597:  /* *vec_extractv4si_mem */
    8374       222028 :     case 8595:  /* *vec_extractv4si */
    8375       222028 :     case 8589:  /* *vec_extractv8hi_mem */
    8376       222028 :     case 8588:  /* *vec_extractv16qi_mem */
    8377       222028 :     case 8582:  /* *vec_extractv8hi */
    8378       222028 :     case 8581:  /* *vec_extractv16qi */
    8379       222028 :     case 7176:  /* *vec_extractv4dfdf_valign */
    8380       222028 :     case 7175:  /* *vec_extractv8dfdf_valign */
    8381       222028 :     case 7174:  /* *vec_extractv8sfsf_valign */
    8382       222028 :     case 7173:  /* *vec_extractv16sfsf_valign */
    8383       222028 :     case 7172:  /* *vec_extractv4didi_valign */
    8384       222028 :     case 7171:  /* *vec_extractv8didi_valign */
    8385       222028 :     case 7170:  /* *vec_extractv8sisi_valign */
    8386       222028 :     case 7169:  /* *vec_extractv16sisi_valign */
    8387       222028 :     case 5466:  /* *vec_extractbf */
    8388       222028 :     case 5465:  /* *vec_extracthf */
    8389       222028 :     case 5402:  /* *vec_extractv4sf_mem */
    8390       222028 :     case 5401:  /* *sse4_1_extractps */
    8391       222028 :     case 2421:  /* *pextrb */
    8392       222028 :     case 2418:  /* *pextrwv2bf */
    8393       222028 :     case 2417:  /* *pextrwv2hf */
    8394       222028 :     case 2416:  /* *pextrw */
    8395       222028 :     case 2383:  /* *mmx_pextrb */
    8396       222028 :     case 2380:  /* *mmx_pextrwv4bf */
    8397       222028 :     case 2379:  /* *mmx_pextrwv4hf */
    8398       222028 :     case 2378:  /* *mmx_pextrw */
    8399       222028 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8400       222028 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    8401       222028 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 1), 0, 0));
    8402       222028 :       break;
    8403              : 
    8404       291760 :     case 8507:  /* sse4_1_pinsrq */
    8405       291760 :     case 8506:  /* sse4_1_pinsrd */
    8406       291760 :     case 8505:  /* sse2_pinsrbf */
    8407       291760 :     case 8504:  /* sse2_pinsrph */
    8408       291760 :     case 8503:  /* sse2_pinsrw */
    8409       291760 :     case 8502:  /* sse4_1_pinsrb */
    8410       291760 :     case 5380:  /* vec_setv4sf_sse4_1 */
    8411       291760 :     case 2415:  /* *pinsrb */
    8412       291760 :     case 2414:  /* *pinsrw */
    8413       291760 :     case 2413:  /* *pinsrw */
    8414       291760 :     case 2412:  /* *pinsrw */
    8415       291760 :     case 2377:  /* *mmx_pinsrb */
    8416       291760 :     case 2376:  /* *mmx_pinsrw */
    8417       291760 :     case 2375:  /* *mmx_pinsrw */
    8418       291760 :     case 2374:  /* *mmx_pinsrw */
    8419       291760 :     case 2373:  /* *mmx_pinsrd */
    8420       291760 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8421       291760 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    8422       291760 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    8423       291760 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    8424       291760 :       break;
    8425              : 
    8426          881 :     case 9145:  /* xop_pcmov_v2df */
    8427          881 :     case 9144:  /* xop_pcmov_v4df256 */
    8428          881 :     case 9143:  /* xop_pcmov_v4sf */
    8429          881 :     case 9142:  /* xop_pcmov_v8sf256 */
    8430          881 :     case 9141:  /* xop_pcmov_v8hf */
    8431          881 :     case 9140:  /* xop_pcmov_v16hf256 */
    8432          881 :     case 9139:  /* xop_pcmov_v1ti */
    8433          881 :     case 9138:  /* xop_pcmov_v2ti256 */
    8434          881 :     case 9137:  /* xop_pcmov_v2di */
    8435          881 :     case 9136:  /* xop_pcmov_v4di256 */
    8436          881 :     case 9135:  /* xop_pcmov_v4si */
    8437          881 :     case 9134:  /* xop_pcmov_v8si256 */
    8438          881 :     case 9133:  /* xop_pcmov_v8hi */
    8439          881 :     case 9132:  /* xop_pcmov_v16hi256 */
    8440          881 :     case 9131:  /* xop_pcmov_v16qi */
    8441          881 :     case 9130:  /* xop_pcmov_v32qi256 */
    8442          881 :     case 2319:  /* *xop_pcmov_v2bf */
    8443          881 :     case 2318:  /* *xop_pcmov_v2hf */
    8444          881 :     case 2317:  /* *xop_pcmov_v2hi */
    8445          881 :     case 2316:  /* *xop_pcmov_v2qi */
    8446          881 :     case 2315:  /* *xop_pcmov_v4qi */
    8447          881 :     case 2314:  /* *xop_pcmov_v4bf */
    8448          881 :     case 2313:  /* *xop_pcmov_v4hf */
    8449          881 :     case 2312:  /* *xop_pcmov_v2sf */
    8450          881 :     case 2311:  /* *xop_pcmov_v2si */
    8451          881 :     case 2310:  /* *xop_pcmov_v4hi */
    8452          881 :     case 2309:  /* *xop_pcmov_v8qi */
    8453          881 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8454          881 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    8455          881 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 2));
    8456          881 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 0));
    8457          881 :       break;
    8458              : 
    8459           72 :     case 2308:  /* *mmx_pblendvb_v4qi_2 */
    8460           72 :     case 2301:  /* *mmx_pblendvb_v8qi_2 */
    8461           72 :     case 2300:  /* *mmx_pblendvb_v8qi_2 */
    8462           72 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8463           72 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8464           72 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8465           72 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 0), 0));
    8466           72 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 0), 1));
    8467           72 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 1));
    8468           72 :       break;
    8469              : 
    8470           36 :     case 2307:  /* *mmx_pblendvb_v2hi_1 */
    8471           36 :     case 2306:  /* *mmx_pblendvb_v2qi_1 */
    8472           36 :     case 2305:  /* *mmx_pblendvb_v4qi_1 */
    8473           36 :     case 2299:  /* *mmx_pblendvb_v8qi_1 */
    8474           36 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8475           36 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8476           36 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8477           36 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 0));
    8478           36 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0), 1));
    8479           36 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 1));
    8480           36 :       break;
    8481              : 
    8482         7727 :     case 9201:  /* xop_maskcmp_unsv2di3 */
    8483         7727 :     case 9200:  /* xop_maskcmp_unsv4si3 */
    8484         7727 :     case 9199:  /* xop_maskcmp_unsv8hi3 */
    8485         7727 :     case 9198:  /* xop_maskcmp_unsv16qi3 */
    8486         7727 :     case 9197:  /* xop_maskcmpv2di3 */
    8487         7727 :     case 9196:  /* xop_maskcmpv4si3 */
    8488         7727 :     case 9195:  /* xop_maskcmpv8hi3 */
    8489         7727 :     case 9194:  /* xop_maskcmpv16qi3 */
    8490         7727 :     case 2297:  /* *xop_maskcmp_unsv2hi3 */
    8491         7727 :     case 2296:  /* *xop_maskcmp_unsv2qi3 */
    8492         7727 :     case 2295:  /* *xop_maskcmp_unsv4qi3 */
    8493         7727 :     case 2294:  /* *xop_maskcmp_unsv2si3 */
    8494         7727 :     case 2293:  /* *xop_maskcmp_unsv4hi3 */
    8495         7727 :     case 2292:  /* *xop_maskcmp_unsv8qi3 */
    8496         7727 :     case 2291:  /* *xop_maskcmpv2hi3 */
    8497         7727 :     case 2290:  /* *xop_maskcmpv2qi3 */
    8498         7727 :     case 2289:  /* *xop_maskcmpv4qi3 */
    8499         7727 :     case 2288:  /* *xop_maskcmpv2si3 */
    8500         7727 :     case 2287:  /* *xop_maskcmpv4hi3 */
    8501         7727 :     case 2286:  /* *xop_maskcmpv8qi3 */
    8502         7727 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8503         7727 :       ro[1] = *(ro_loc[1] = &XEXP (pat, 1));
    8504         7727 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
    8505         7727 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    8506         7727 :       break;
    8507              : 
    8508       352121 :     case 7700:  /* *sse4_1_mulv2siv2di3 */
    8509       352121 :     case 7698:  /* *vec_widen_smult_even_v8si */
    8510       352121 :     case 7696:  /* *vec_widen_smult_even_v16si */
    8511       352121 :     case 7694:  /* *vec_widen_umult_even_v4si */
    8512       352121 :     case 7692:  /* *vec_widen_umult_even_v8si */
    8513       352121 :     case 7690:  /* *vec_widen_umult_even_v16si */
    8514       352121 :     case 2224:  /* *sse2_umulv1siv1di3 */
    8515       352121 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8516       352121 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    8517       352121 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
    8518       352121 :       break;
    8519              : 
    8520         1758 :     case 2439:  /* uavgv2hi3_ceil */
    8521         1758 :     case 2438:  /* uavgv2qi3_ceil */
    8522         1758 :     case 2437:  /* uavgv4qi3_ceil */
    8523         1758 :     case 2436:  /* *mmx_uavgv4hi3 */
    8524         1758 :     case 2435:  /* *mmx_uavgv8qi3 */
    8525         1758 :     case 2223:  /* *mmx_pmulhrwv4hi3 */
    8526         1758 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8527         1758 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
    8528         1758 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1), 0));
    8529         1758 :       break;
    8530              : 
    8531        12999 :     case 8738:  /* ssse3_pmaddubsw */
    8532        12999 :     case 8737:  /* ssse3_pmaddubsw128 */
    8533        12999 :     case 8728:  /* avx2_pmaddubsw256 */
    8534        12999 :     case 7709:  /* *sse2_pmaddwd */
    8535        12999 :     case 7708:  /* *avx2_pmaddwd */
    8536        12999 :     case 2222:  /* *mmx_pmaddwd */
    8537        12999 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8538        12999 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    8539        12999 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0));
    8540        12999 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0);
    8541        12999 :       recog_data.dup_num[0] = 1;
    8542        12999 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0), 0);
    8543        12999 :       recog_data.dup_num[1] = 2;
    8544        12999 :       break;
    8545              : 
    8546        12977 :     case 7688:  /* *umulv8hi3_highpart */
    8547        12977 :     case 7686:  /* *smulv8hi3_highpart */
    8548        12977 :     case 7684:  /* *umulv16hi3_highpart */
    8549        12977 :     case 7682:  /* *smulv16hi3_highpart */
    8550        12977 :     case 7680:  /* *umulv32hi3_highpart */
    8551        12977 :     case 7678:  /* *smulv32hi3_highpart */
    8552        12977 :     case 2221:  /* umulv2hi3_highpart */
    8553        12977 :     case 2220:  /* smulv2hi3_highpart */
    8554        12977 :     case 2219:  /* *mmx_umulv4hi3_highpart */
    8555        12977 :     case 2218:  /* *mmx_smulv4hi3_highpart */
    8556        12977 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8557        12977 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    8558        12977 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0));
    8559        12977 :       break;
    8560              : 
    8561       281924 :     case 7307:  /* sse2_movsd_v2df */
    8562       281924 :     case 7306:  /* sse2_movsd_v2di */
    8563       281924 :     case 5379:  /* *avx512fp16_movv8bf */
    8564       281924 :     case 5378:  /* *avx512fp16_movv8hf */
    8565       281924 :     case 5377:  /* *avx512fp16_movv8hi */
    8566       281924 :     case 5339:  /* sse_movss_v4sf */
    8567       281924 :     case 5338:  /* sse_movss_v4si */
    8568       281924 :     case 2148:  /* *mmx_movss_v2si */
    8569       281924 :     case 2147:  /* *mmx_movss_v2sf */
    8570       281924 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8571       281924 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    8572       281924 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
    8573       281924 :       break;
    8574              : 
    8575          494 :     case 7518:  /* *avx512f_pshufd_truncv2div2si_1 */
    8576          494 :     case 5025:  /* *sse2_cvttsd2si_zext */
    8577          494 :     case 5004:  /* *avx512f_vcvttsd2usi_zext */
    8578          494 :     case 4986:  /* *avx512f_vcvttss2usi_zext */
    8579          494 :     case 4871:  /* *sse_cvttss2si_zext */
    8580          494 :     case 2140:  /* mmx_pi2fw */
    8581          494 :     case 2139:  /* mmx_pf2iw */
    8582          494 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8583          494 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    8584          494 :       break;
    8585              : 
    8586       205043 :     case 8874:  /* avx2_pblenddv4si */
    8587       205043 :     case 8873:  /* avx2_pblenddv8si */
    8588       205043 :     case 8872:  /* *avx2_pblendbf */
    8589       205043 :     case 8871:  /* *avx2_pblendph */
    8590       205043 :     case 8870:  /* *avx2_pblendw */
    8591       205043 :     case 8869:  /* sse4_1_pblendbf */
    8592       205043 :     case 8868:  /* sse4_1_pblendph */
    8593       205043 :     case 8867:  /* sse4_1_pblendw */
    8594       205043 :     case 8805:  /* sse4_1_blendpd */
    8595       205043 :     case 8804:  /* avx_blendpd256 */
    8596       205043 :     case 8803:  /* sse4_1_blendps */
    8597       205043 :     case 8802:  /* avx_blendps256 */
    8598       205043 :     case 2592:  /* avx512vl_blendmv8bf */
    8599       205043 :     case 2591:  /* avx512vl_blendmv16bf */
    8600       205043 :     case 2590:  /* avx512bw_blendmv32bf */
    8601       205043 :     case 2589:  /* avx512fp16_blendmv8hf */
    8602       205043 :     case 2588:  /* avx512vl_blendmv16hf */
    8603       205043 :     case 2587:  /* avx512bw_blendmv32hf */
    8604       205043 :     case 2586:  /* avx512vl_blendmv8hi */
    8605       205043 :     case 2585:  /* avx512vl_blendmv16hi */
    8606       205043 :     case 2584:  /* avx512bw_blendmv32hi */
    8607       205043 :     case 2583:  /* avx512vl_blendmv32qi */
    8608       205043 :     case 2582:  /* avx512vl_blendmv16qi */
    8609       205043 :     case 2581:  /* avx512bw_blendmv64qi */
    8610       205043 :     case 2580:  /* avx512vl_blendmv2df */
    8611       205043 :     case 2579:  /* avx512vl_blendmv4df */
    8612       205043 :     case 2578:  /* avx512f_blendmv8df */
    8613       205043 :     case 2577:  /* avx512vl_blendmv4sf */
    8614       205043 :     case 2576:  /* avx512vl_blendmv8sf */
    8615       205043 :     case 2575:  /* avx512f_blendmv16sf */
    8616       205043 :     case 2574:  /* avx512vl_blendmv2di */
    8617       205043 :     case 2573:  /* avx512vl_blendmv4di */
    8618       205043 :     case 2572:  /* avx512f_blendmv8di */
    8619       205043 :     case 2571:  /* avx512vl_blendmv4si */
    8620       205043 :     case 2570:  /* avx512vl_blendmv8si */
    8621       205043 :     case 2569:  /* avx512f_blendmv16si */
    8622       205043 :     case 2398:  /* *mmx_pblendw32 */
    8623       205043 :     case 2397:  /* *mmx_pblendw32 */
    8624       205043 :     case 2396:  /* *mmx_pblendw32 */
    8625       205043 :     case 2395:  /* *mmx_pblendw64 */
    8626       205043 :     case 2394:  /* *mmx_pblendw64 */
    8627       205043 :     case 2393:  /* *mmx_pblendw64 */
    8628       205043 :     case 2131:  /* *mmx_blendps */
    8629       205043 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8630       205043 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
    8631       205043 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
    8632       205043 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    8633       205043 :       break;
    8634              : 
    8635        15164 :     case 5390:  /* sse4_1_insertps_v4sf */
    8636        15164 :     case 5389:  /* sse4_1_insertps_v4si */
    8637        15164 :     case 2130:  /* sse4_1_insertps_v2si */
    8638        15164 :     case 2129:  /* sse4_1_insertps_v2sf */
    8639        15164 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8640        15164 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8641        15164 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8642        15164 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 2));
    8643        15164 :       break;
    8644              : 
    8645          310 :     case 2125:  /* *mmx_haddsubv2sf3 */
    8646          310 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8647          310 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    8648          310 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
    8649          310 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 0, 0));
    8650          310 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 0, 0));
    8651          310 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0);
    8652          310 :       recog_data.dup_num[0] = 1;
    8653          310 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0);
    8654          310 :       recog_data.dup_num[1] = 2;
    8655          310 :       break;
    8656              : 
    8657           30 :     case 3234:  /* *sse3_hsubv2df3_low */
    8658           30 :     case 2124:  /* *mmx_hsubv2sf3_low */
    8659           30 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8660           30 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    8661           30 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0);
    8662           30 :       recog_data.dup_num[0] = 1;
    8663           30 :       break;
    8664              : 
    8665          588 :     case 3232:  /* sse3_hsubv2df3 */
    8666          588 :     case 2123:  /* mmx_hsubv2sf3 */
    8667          588 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8668          588 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    8669          588 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
    8670          588 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0);
    8671          588 :       recog_data.dup_num[0] = 1;
    8672          588 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0);
    8673          588 :       recog_data.dup_num[1] = 2;
    8674          588 :       break;
    8675              : 
    8676          605 :     case 3233:  /* *sse3_haddv2df3_low */
    8677          605 :     case 2122:  /* *mmx_haddv2sf3_low */
    8678          605 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8679          605 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    8680          605 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0, 0));
    8681          605 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0, 0));
    8682          605 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0);
    8683          605 :       recog_data.dup_num[0] = 1;
    8684          605 :       break;
    8685              : 
    8686          656 :     case 3231:  /* *sse3_haddv2df3 */
    8687          656 :     case 2121:  /* *mmx_haddv2sf3 */
    8688          656 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8689          656 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    8690          656 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
    8691          656 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1), 0, 0));
    8692          656 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 1), 0, 0));
    8693          656 :       ro[5] = *(ro_loc[5] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 0, 0));
    8694          656 :       ro[6] = *(ro_loc[6] = &XVECEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 1), 0, 0));
    8695          656 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0);
    8696          656 :       recog_data.dup_num[0] = 1;
    8697          656 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 1), 0);
    8698          656 :       recog_data.dup_num[1] = 2;
    8699          656 :       break;
    8700              : 
    8701       369593 :     case 9077:  /* ptesttf2 */
    8702       369593 :     case 9076:  /* *avx_ptestv4df */
    8703       369593 :     case 9075:  /* *avx_ptestv8sf */
    8704       369593 :     case 9074:  /* *avx_ptestv2ti */
    8705       369593 :     case 9073:  /* *avx_ptestv4di */
    8706       369593 :     case 9072:  /* *avx_ptestv8si */
    8707       369593 :     case 9071:  /* *avx_ptestv16hi */
    8708       369593 :     case 9070:  /* *avx_ptestv32qi */
    8709       369593 :     case 9069:  /* *sse4_1_ptestv2df */
    8710       369593 :     case 9068:  /* *sse4_1_ptestv4sf */
    8711       369593 :     case 9067:  /* *sse4_1_ptestv1ti */
    8712       369593 :     case 9066:  /* *sse4_1_ptestv2di */
    8713       369593 :     case 9065:  /* *sse4_1_ptestv4si */
    8714       369593 :     case 9064:  /* *sse4_1_ptestv8hi */
    8715       369593 :     case 9063:  /* *sse4_1_ptestv16qi */
    8716       369593 :     case 9062:  /* avx_vtestpd */
    8717       369593 :     case 9061:  /* avx_vtestpd256 */
    8718       369593 :     case 9060:  /* avx_vtestps */
    8719       369593 :     case 9059:  /* avx_vtestps256 */
    8720       369593 :     case 2697:  /* kortestdi_ccz */
    8721       369593 :     case 2696:  /* kortestsi_ccz */
    8722       369593 :     case 2695:  /* kortesthi_ccz */
    8723       369593 :     case 2694:  /* kortestqi_ccz */
    8724       369593 :     case 2693:  /* kortestdi_ccc */
    8725       369593 :     case 2692:  /* kortestsi_ccc */
    8726       369593 :     case 2691:  /* kortesthi_ccc */
    8727       369593 :     case 2690:  /* kortestqi_ccc */
    8728       369593 :     case 2689:  /* *kortestdi */
    8729       369593 :     case 2688:  /* *kortestsi */
    8730       369593 :     case 2687:  /* *kortesthi */
    8731       369593 :     case 2686:  /* *kortestqi */
    8732       369593 :     case 2685:  /* ktestdi */
    8733       369593 :     case 2684:  /* ktestsi */
    8734       369593 :     case 2683:  /* ktesthi */
    8735       369593 :     case 2682:  /* ktestqi */
    8736       369593 :     case 2058:  /* tpause */
    8737       369593 :     case 2054:  /* umwait */
    8738       369593 :     case 2049:  /* enqcmds_di */
    8739       369593 :     case 2048:  /* enqcmd_di */
    8740       369593 :     case 2047:  /* enqcmds_si */
    8741       369593 :     case 2046:  /* enqcmd_si */
    8742       369593 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8743       369593 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8744       369593 :       break;
    8745              : 
    8746          361 :     case 2043:  /* movdir64b_di */
    8747          361 :     case 2042:  /* movdir64b_si */
    8748          361 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0));
    8749          361 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8750          361 :       break;
    8751              : 
    8752          222 :     case 2034:  /* *rdpkru */
    8753          222 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8754          222 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    8755          222 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    8756          222 :       break;
    8757              : 
    8758          286 :     case 2023:  /* xbegin_1 */
    8759          286 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    8760          286 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    8761          286 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    8762          286 :       recog_data.dup_num[0] = 0;
    8763          286 :       break;
    8764              : 
    8765         1935 :     case 11285:  /* top4buud */
    8766         1935 :     case 11284:  /* top4busd */
    8767         1935 :     case 11283:  /* top4bsud */
    8768         1935 :     case 11282:  /* top4bssd */
    8769         1935 :     case 11281:  /* top2bf16ps */
    8770         1935 :     case 11280:  /* tilemovcol_insert */
    8771         1935 :     case 11279:  /* tilemovrow_insert */
    8772         1935 :     case 2059:  /* tpause_rex64 */
    8773         1935 :     case 2055:  /* umwait_rex64 */
    8774         1935 :     case 1992:  /* lwp_lwpinsdi */
    8775         1935 :     case 1991:  /* lwp_lwpinssi */
    8776         1935 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8777         1935 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8778         1935 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 2));
    8779         1935 :       break;
    8780              : 
    8781       177677 :     case 1982:  /* fldenv */
    8782       177677 :       ro[0] = *(ro_loc[0] = &XVECEXP (XVECEXP (pat, 0, 0), 0, 0));
    8783       177677 :       break;
    8784              : 
    8785         3397 :     case 8709:  /* sse3_monitor_di */
    8786         3397 :     case 8708:  /* sse3_monitor_si */
    8787         3397 :     case 2035:  /* *wrpkru */
    8788         3397 :     case 2031:  /* monitorx_di */
    8789         3397 :     case 2030:  /* monitorx_si */
    8790         3397 :     case 2029:  /* mwaitx */
    8791         3397 :     case 1990:  /* lwp_lwpvaldi */
    8792         3397 :     case 1989:  /* lwp_lwpvalsi */
    8793         3397 :     case 1978:  /* xsetbv_rex64 */
    8794         3397 :     case 1976:  /* xrstors64 */
    8795         3397 :     case 1975:  /* xrstor64 */
    8796         3397 :     case 1974:  /* xrstors_rex64 */
    8797         3397 :     case 1973:  /* xrstor_rex64 */
    8798         3397 :       ro[0] = *(ro_loc[0] = &XVECEXP (pat, 0, 0));
    8799         3397 :       ro[1] = *(ro_loc[1] = &XVECEXP (pat, 0, 1));
    8800         3397 :       ro[2] = *(ro_loc[2] = &XVECEXP (pat, 0, 2));
    8801         3397 :       break;
    8802              : 
    8803          246 :     case 1954:  /* rdtscp_rex64 */
    8804          246 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8805          246 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    8806          246 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 2), 0));
    8807          246 :       break;
    8808              : 
    8809          407 :     case 1953:  /* rdtscp */
    8810          407 :     case 1952:  /* rdtsc_rex64 */
    8811          407 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8812          407 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    8813          407 :       break;
    8814              : 
    8815         1203 :     case 10156:  /* avx512dq_vmfpclassv2df */
    8816         1203 :     case 10154:  /* avx512dq_vmfpclassv4sf */
    8817         1203 :     case 10152:  /* avx512dq_vmfpclassv8hf */
    8818         1203 :     case 8386:  /* *avx512vl_testnmv2di3_zext */
    8819         1203 :     case 8385:  /* *avx512vl_testnmv2di3_zext */
    8820         1203 :     case 8384:  /* *avx512vl_testnmv2di3_zext */
    8821         1203 :     case 8383:  /* *avx512vl_testnmv4di3_zext */
    8822         1203 :     case 8382:  /* *avx512vl_testnmv4di3_zext */
    8823         1203 :     case 8381:  /* *avx512vl_testnmv4di3_zext */
    8824         1203 :     case 8380:  /* *avx512f_testnmv8di3_zext */
    8825         1203 :     case 8379:  /* *avx512f_testnmv8di3_zext */
    8826         1203 :     case 8378:  /* *avx512f_testnmv8di3_zext */
    8827         1203 :     case 8377:  /* *avx512vl_testnmv4si3_zext */
    8828         1203 :     case 8376:  /* *avx512vl_testnmv4si3_zext */
    8829         1203 :     case 8375:  /* *avx512vl_testnmv4si3_zext */
    8830         1203 :     case 8374:  /* *avx512vl_testnmv8si3_zext */
    8831         1203 :     case 8373:  /* *avx512vl_testnmv8si3_zext */
    8832         1203 :     case 8372:  /* *avx512vl_testnmv8si3_zext */
    8833         1203 :     case 8371:  /* *avx512f_testnmv16si3_zext */
    8834         1203 :     case 8370:  /* *avx512f_testnmv16si3_zext */
    8835         1203 :     case 8369:  /* *avx512f_testnmv16si3_zext */
    8836         1203 :     case 8368:  /* *avx512vl_testnmv8hi3_zext */
    8837         1203 :     case 8367:  /* *avx512vl_testnmv8hi3_zext */
    8838         1203 :     case 8366:  /* *avx512vl_testnmv8hi3_zext */
    8839         1203 :     case 8365:  /* *avx512vl_testnmv16hi3_zext */
    8840         1203 :     case 8364:  /* *avx512vl_testnmv16hi3_zext */
    8841         1203 :     case 8363:  /* *avx512vl_testnmv16hi3_zext */
    8842         1203 :     case 8362:  /* *avx512bw_testnmv32hi3_zext */
    8843         1203 :     case 8361:  /* *avx512bw_testnmv32hi3_zext */
    8844         1203 :     case 8360:  /* *avx512bw_testnmv32hi3_zext */
    8845         1203 :     case 8359:  /* *avx512vl_testnmv16qi3_zext */
    8846         1203 :     case 8358:  /* *avx512vl_testnmv16qi3_zext */
    8847         1203 :     case 8357:  /* *avx512vl_testnmv16qi3_zext */
    8848         1203 :     case 8356:  /* *avx512vl_testnmv32qi3_zext */
    8849         1203 :     case 8355:  /* *avx512vl_testnmv32qi3_zext */
    8850         1203 :     case 8354:  /* *avx512vl_testnmv32qi3_zext */
    8851         1203 :     case 8353:  /* *avx512bw_testnmv64qi3_zext */
    8852         1203 :     case 8352:  /* *avx512bw_testnmv64qi3_zext */
    8853         1203 :     case 8351:  /* *avx512bw_testnmv64qi3_zext */
    8854         1203 :     case 8314:  /* *avx512vl_testmv2di3_zext */
    8855         1203 :     case 8313:  /* *avx512vl_testmv2di3_zext */
    8856         1203 :     case 8312:  /* *avx512vl_testmv2di3_zext */
    8857         1203 :     case 8311:  /* *avx512vl_testmv4di3_zext */
    8858         1203 :     case 8310:  /* *avx512vl_testmv4di3_zext */
    8859         1203 :     case 8309:  /* *avx512vl_testmv4di3_zext */
    8860         1203 :     case 8308:  /* *avx512f_testmv8di3_zext */
    8861         1203 :     case 8307:  /* *avx512f_testmv8di3_zext */
    8862         1203 :     case 8306:  /* *avx512f_testmv8di3_zext */
    8863         1203 :     case 8305:  /* *avx512vl_testmv4si3_zext */
    8864         1203 :     case 8304:  /* *avx512vl_testmv4si3_zext */
    8865         1203 :     case 8303:  /* *avx512vl_testmv4si3_zext */
    8866         1203 :     case 8302:  /* *avx512vl_testmv8si3_zext */
    8867         1203 :     case 8301:  /* *avx512vl_testmv8si3_zext */
    8868         1203 :     case 8300:  /* *avx512vl_testmv8si3_zext */
    8869         1203 :     case 8299:  /* *avx512f_testmv16si3_zext */
    8870         1203 :     case 8298:  /* *avx512f_testmv16si3_zext */
    8871         1203 :     case 8297:  /* *avx512f_testmv16si3_zext */
    8872         1203 :     case 8296:  /* *avx512vl_testmv8hi3_zext */
    8873         1203 :     case 8295:  /* *avx512vl_testmv8hi3_zext */
    8874         1203 :     case 8294:  /* *avx512vl_testmv8hi3_zext */
    8875         1203 :     case 8293:  /* *avx512vl_testmv16hi3_zext */
    8876         1203 :     case 8292:  /* *avx512vl_testmv16hi3_zext */
    8877         1203 :     case 8291:  /* *avx512vl_testmv16hi3_zext */
    8878         1203 :     case 8290:  /* *avx512bw_testmv32hi3_zext */
    8879         1203 :     case 8289:  /* *avx512bw_testmv32hi3_zext */
    8880         1203 :     case 8288:  /* *avx512bw_testmv32hi3_zext */
    8881         1203 :     case 8287:  /* *avx512vl_testmv16qi3_zext */
    8882         1203 :     case 8286:  /* *avx512vl_testmv16qi3_zext */
    8883         1203 :     case 8285:  /* *avx512vl_testmv16qi3_zext */
    8884         1203 :     case 8284:  /* *avx512vl_testmv32qi3_zext */
    8885         1203 :     case 8283:  /* *avx512vl_testmv32qi3_zext */
    8886         1203 :     case 8282:  /* *avx512vl_testmv32qi3_zext */
    8887         1203 :     case 8281:  /* *avx512bw_testmv64qi3_zext */
    8888         1203 :     case 8280:  /* *avx512bw_testmv64qi3_zext */
    8889         1203 :     case 8279:  /* *avx512bw_testmv64qi3_zext */
    8890         1203 :     case 7359:  /* *avx512f_permvar_truncv4div4si_1 */
    8891         1203 :     case 7358:  /* *avx512f_permvar_truncv16hiv16qi_1 */
    8892         1203 :     case 7345:  /* *avx512f_permvar_truncv32hiv32qi_1 */
    8893         1203 :     case 7329:  /* *avx512f_vpermvar_truncv8div8si_1 */
    8894         1203 :     case 7327:  /* *avx512f_permvar_truncv8siv8hi_1 */
    8895         1203 :     case 7325:  /* *avx512bw_permvar_truncv16siv16hi_1 */
    8896         1203 :     case 3478:  /* *avx512vl_eqv2di_and3 */
    8897         1203 :     case 3477:  /* *avx512vl_eqv2di_and3 */
    8898         1203 :     case 3473:  /* *avx512vl_eqv4di3_and15 */
    8899         1203 :     case 3472:  /* *avx512vl_eqv4di3_and15 */
    8900         1203 :     case 3471:  /* *avx512vl_eqv4si3_and15 */
    8901         1203 :     case 3470:  /* *avx512vl_eqv4si3_and15 */
    8902         1203 :     case 1948:  /* sse4_2_crc32di */
    8903         1203 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8904         1203 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 0));
    8905         1203 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (pat, 1), 0), 0, 1));
    8906         1203 :       break;
    8907              : 
    8908       291772 :     case 1941:  /* *prefetch_sse */
    8909       291772 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8910       291772 :       ro[1] = *(ro_loc[1] = &XEXP (pat, 2));
    8911       291772 :       break;
    8912              : 
    8913            6 :     case 1936:  /* *stack_protect_set_4s_di_di */
    8914            6 :     case 1935:  /* *stack_protect_set_4s_si_di */
    8915            6 :     case 1934:  /* *stack_protect_set_4z_di_di */
    8916            6 :     case 1933:  /* *stack_protect_set_4z_si_di */
    8917            6 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8918            6 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    8919            6 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0));
    8920            6 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    8921            6 :       break;
    8922              : 
    8923          293 :     case 1932:  /* *stack_protect_set_3_di_di */
    8924          293 :     case 1931:  /* *stack_protect_set_3_di_si */
    8925          293 :     case 1930:  /* *stack_protect_set_3_si_di */
    8926          293 :     case 1929:  /* *stack_protect_set_3_si_si */
    8927          293 :     case 1928:  /* *stack_protect_set_2_di_di */
    8928          293 :     case 1927:  /* *stack_protect_set_2_si_di */
    8929          293 :     case 1926:  /* *stack_protect_set_2_di_si */
    8930          293 :     case 1925:  /* *stack_protect_set_2_si_si */
    8931          293 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8932          293 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    8933          293 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 1));
    8934          293 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    8935          293 :       break;
    8936              : 
    8937           48 :     case 1918:  /* adjust_stack_and_probe_di */
    8938           48 :     case 1917:  /* adjust_stack_and_probe_si */
    8939           48 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8940           48 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    8941           48 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    8942           48 :       break;
    8943              : 
    8944          950 :     case 1901:  /* *plus_within_umindi3_2 */
    8945          950 :     case 1899:  /* *plus_within_umaxdi3_2 */
    8946          950 :     case 1897:  /* *plus_within_uminsi3_2 */
    8947          950 :     case 1895:  /* *plus_within_umaxsi3_2 */
    8948          950 :     case 1893:  /* *plus_within_uminhi3_2 */
    8949          950 :     case 1891:  /* *plus_within_umaxhi3_2 */
    8950          950 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8951          950 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    8952          950 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
    8953          950 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
    8954          950 :       recog_data.dup_num[0] = 2;
    8955          950 :       break;
    8956              : 
    8957          425 :     case 1907:  /* *minus_within_umindi3 */
    8958          425 :     case 1906:  /* *minus_within_umaxdi3 */
    8959          425 :     case 1905:  /* *minus_within_uminsi3 */
    8960          425 :     case 1904:  /* *minus_within_umaxsi3 */
    8961          425 :     case 1903:  /* *minus_within_uminhi3 */
    8962          425 :     case 1902:  /* *minus_within_umaxhi3 */
    8963          425 :     case 1900:  /* *plus_within_umindi3_1 */
    8964          425 :     case 1898:  /* *plus_within_umaxdi3_1 */
    8965          425 :     case 1896:  /* *plus_within_uminsi3_1 */
    8966          425 :     case 1894:  /* *plus_within_umaxsi3_1 */
    8967          425 :     case 1892:  /* *plus_within_uminhi3_1 */
    8968          425 :     case 1890:  /* *plus_within_umaxhi3_1 */
    8969          425 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    8970          425 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    8971          425 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
    8972          425 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
    8973          425 :       recog_data.dup_num[0] = 1;
    8974          425 :       break;
    8975              : 
    8976         1997 :     case 8862:  /* *sse4_1_pblendvb_gt */
    8977         1997 :     case 8861:  /* *avx2_pblendvb_gt */
    8978         1997 :     case 8860:  /* *sse4_1_pblendvb_lt */
    8979         1997 :     case 8859:  /* *avx2_pblendvb_lt */
    8980         1997 :     case 8819:  /* *sse4_1_blendvpd_gt */
    8981         1997 :     case 8818:  /* *avx_blendvpd256_gt */
    8982         1997 :     case 8817:  /* *sse4_1_blendvps_gt */
    8983         1997 :     case 8816:  /* *avx_blendvps256_gt */
    8984         1997 :     case 8815:  /* *sse4_1_blendvpd_lt */
    8985         1997 :     case 8814:  /* *avx_blendvpd256_lt */
    8986         1997 :     case 8813:  /* *sse4_1_blendvps_lt */
    8987         1997 :     case 8812:  /* *avx_blendvps256_lt */
    8988         1997 :     case 3114:  /* *minmaxv2df3_2 */
    8989         1997 :     case 3113:  /* *minmaxv4df3_2 */
    8990         1997 :     case 3112:  /* *minmaxv4sf3_2 */
    8991         1997 :     case 3111:  /* *minmaxv8sf3_2 */
    8992         1997 :     case 1865:  /* *ieee_mindf3_1 */
    8993         1997 :     case 1864:  /* *ieee_minsf3_1 */
    8994         1997 :     case 1863:  /* *ieee_maxdf3_1 */
    8995         1997 :     case 1862:  /* *ieee_maxsf3_1 */
    8996         1997 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    8997         1997 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
    8998         1997 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
    8999         1997 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 0));
    9000         1997 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 2), 1));
    9001         1997 :       break;
    9002              : 
    9003         6542 :     case 1842:  /* *movsicc_noc_zext_1 */
    9004         6542 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9005         6542 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    9006         6542 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
    9007         6542 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
    9008         6542 :       break;
    9009              : 
    9010            0 :     case 1841:  /* *movsicc_noc_zext */
    9011            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9012            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    9013            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    9014            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 2), 0));
    9015            0 :       break;
    9016              : 
    9017      7400724 :     case 10784:  /* avx10_2_fmaddbf16_v8bf */
    9018      7400724 :     case 10782:  /* avx10_2_fmaddbf16_v16bf */
    9019      7400724 :     case 10780:  /* avx10_2_fmaddbf16_v32bf */
    9020      7400724 :     case 5392:  /* sse4_1_insertps_v4sf_zero */
    9021      7400724 :     case 5391:  /* sse4_1_insertps_v4si_zero */
    9022      7400724 :     case 3910:  /* *fma_fmadd_v2df */
    9023      7400724 :     case 3908:  /* *fma_fmadd_v4df */
    9024      7400724 :     case 3904:  /* *fma_fmadd_v8df */
    9025      7400724 :     case 3903:  /* *fma_fmadd_df */
    9026      7400724 :     case 3901:  /* *fma_fmadd_v4sf */
    9027      7400724 :     case 3899:  /* *fma_fmadd_v8sf */
    9028      7400724 :     case 3895:  /* *fma_fmadd_v16sf */
    9029      7400724 :     case 3894:  /* *fma_fmadd_sf */
    9030      7400724 :     case 3893:  /* *fma_fmadd_hf */
    9031      7400724 :     case 3891:  /* *fma_fmadd_v8hf */
    9032      7400724 :     case 3889:  /* *fma_fmadd_v16hf */
    9033      7400724 :     case 3885:  /* *fma_fmadd_v32hf */
    9034      7400724 :     case 3884:  /* *fma_fmadd_v4df */
    9035      7400724 :     case 3883:  /* *fma_fmadd_v8sf */
    9036      7400724 :     case 3882:  /* *fma_fmadd_v2df */
    9037      7400724 :     case 3881:  /* *fma_fmadd_v4sf */
    9038      7400724 :     case 3880:  /* *fma_fmadd_df */
    9039      7400724 :     case 3879:  /* *fma_fmadd_sf */
    9040      7400724 :     case 1849:  /* *xop_pcmov_df */
    9041      7400724 :     case 1848:  /* *xop_pcmov_sf */
    9042      7400724 :     case 1847:  /* *movsfcc_1_387 */
    9043      7400724 :     case 1846:  /* *movdfcc_1 */
    9044      7400724 :     case 1845:  /* *movxfcc_1 */
    9045      7400724 :     case 1843:  /* *movqicc_noc */
    9046      7400724 :     case 1840:  /* *movdicc_noc */
    9047      7400724 :     case 1839:  /* *movsicc_noc */
    9048      7400724 :     case 1838:  /* *movhicc_noc */
    9049      7400724 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9050      7400724 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    9051      7400724 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    9052      7400724 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 2));
    9053      7400724 :       break;
    9054              : 
    9055            0 :     case 1829:  /* *strlenqi_1 */
    9056            0 :     case 1828:  /* *strlenqi_1 */
    9057            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9058            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9059            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9060            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    9061            0 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 3));
    9062            0 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0), 0));
    9063            0 :       break;
    9064              : 
    9065       174826 :     case 1827:  /* *cmpstrnqi_1 */
    9066       174826 :     case 1826:  /* *cmpstrnqi_1 */
    9067       174826 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9068       174826 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 3), 0));
    9069       174826 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 4), 0));
    9070       174826 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9071       174826 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
    9072       174826 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 0));
    9073       174826 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9074       174826 :       break;
    9075              : 
    9076            0 :     case 1825:  /* *cmpstrnqi_nz_1 */
    9077            0 :     case 1824:  /* *cmpstrnqi_nz_1 */
    9078            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 3), 0));
    9079            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 4), 0));
    9080            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 5), 0));
    9081            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9082            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9083            0 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    9084            0 :       ro[6] = *(ro_loc[6] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9085            0 :       break;
    9086              : 
    9087        28787 :     case 1823:  /* *rep_stosqi */
    9088        28787 :     case 1822:  /* *rep_stosqi */
    9089        28787 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9090        28787 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9091        28787 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 3), 0));
    9092        28787 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0));
    9093        28787 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    9094        28787 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 4), 0);
    9095        28787 :       recog_data.dup_num[0] = 4;
    9096        28787 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 0), 0);
    9097        28787 :       recog_data.dup_num[1] = 3;
    9098        28787 :       break;
    9099              : 
    9100       146660 :     case 1821:  /* *rep_stossi */
    9101       146660 :     case 1820:  /* *rep_stossi */
    9102       146660 :     case 1819:  /* *rep_stosdi_rex64 */
    9103       146660 :     case 1818:  /* *rep_stosdi_rex64 */
    9104       146660 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9105       146660 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9106       146660 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 3), 0));
    9107       146660 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    9108       146660 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0));
    9109       146660 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 4), 0);
    9110       146660 :       recog_data.dup_num[0] = 4;
    9111       146660 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 0), 0);
    9112       146660 :       recog_data.dup_num[1] = 3;
    9113       146660 :       break;
    9114              : 
    9115            0 :     case 1817:  /* *strsetqi_1 */
    9116            0 :     case 1816:  /* *strsetqi_1 */
    9117            0 :     case 1815:  /* *strsethi_1 */
    9118            0 :     case 1814:  /* *strsethi_1 */
    9119            0 :     case 1813:  /* *strsetsi_1 */
    9120            0 :     case 1812:  /* *strsetsi_1 */
    9121            0 :     case 1811:  /* *strsetdi_rex_1 */
    9122            0 :     case 1810:  /* *strsetdi_rex_1 */
    9123            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9124            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
    9125            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 0), 1));
    9126            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
    9127            0 :       recog_data.dup_num[0] = 1;
    9128            0 :       break;
    9129              : 
    9130       116384 :     case 1809:  /* *rep_movqi */
    9131       116384 :     case 1808:  /* *rep_movqi */
    9132       116384 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9133       116384 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9134       116384 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9135       116384 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0));
    9136       116384 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0));
    9137       116384 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    9138       116384 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 4), 0);
    9139       116384 :       recog_data.dup_num[0] = 5;
    9140       116384 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 3), 0), 0);
    9141       116384 :       recog_data.dup_num[1] = 3;
    9142       116384 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 3), 1), 0);
    9143       116384 :       recog_data.dup_num[2] = 4;
    9144       116384 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 1);
    9145       116384 :       recog_data.dup_num[3] = 5;
    9146       116384 :       break;
    9147              : 
    9148       184661 :     case 1807:  /* *rep_movsi */
    9149       184661 :     case 1806:  /* *rep_movsi */
    9150       184661 :     case 1805:  /* *rep_movdi_rex64 */
    9151       184661 :     case 1804:  /* *rep_movdi_rex64 */
    9152       184661 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9153       184661 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9154       184661 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9155       184661 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    9156       184661 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 1));
    9157       184661 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0));
    9158       184661 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 4), 0);
    9159       184661 :       recog_data.dup_num[0] = 5;
    9160       184661 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 3), 0), 0);
    9161       184661 :       recog_data.dup_num[1] = 3;
    9162       184661 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 3), 1), 0);
    9163       184661 :       recog_data.dup_num[2] = 4;
    9164       184661 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0), 0);
    9165       184661 :       recog_data.dup_num[3] = 5;
    9166       184661 :       break;
    9167              : 
    9168          217 :     case 1803:  /* *strmovqi_1 */
    9169          217 :     case 1802:  /* *strmovqi_1 */
    9170          217 :     case 1801:  /* *strmovhi_1 */
    9171          217 :     case 1800:  /* *strmovhi_1 */
    9172          217 :     case 1799:  /* *strmovsi_1 */
    9173          217 :     case 1798:  /* *strmovsi_1 */
    9174          217 :     case 1797:  /* *strmovdi_rex_1 */
    9175          217 :     case 1796:  /* *strmovdi_rex_1 */
    9176          217 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9177          217 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9178          217 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
    9179          217 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    9180          217 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0);
    9181          217 :       recog_data.dup_num[0] = 3;
    9182          217 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
    9183          217 :       recog_data.dup_num[1] = 2;
    9184          217 :       break;
    9185              : 
    9186         1954 :     case 1786:  /* fistdi2_ceil */
    9187         1954 :     case 1785:  /* fistdi2_floor */
    9188         1954 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9189         1954 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9190         1954 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9191         1954 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9192         1954 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 3), 0));
    9193         1954 :       break;
    9194              : 
    9195        30703 :     case 11300:  /* atomic_storedi_fpu */
    9196        30703 :     case 11295:  /* atomic_loaddi_fpu */
    9197        30703 :     case 1790:  /* fistsi2_ceil */
    9198        30703 :     case 1789:  /* fistsi2_floor */
    9199        30703 :     case 1788:  /* fisthi2_ceil */
    9200        30703 :     case 1787:  /* fisthi2_floor */
    9201        30703 :     case 1778:  /* frndintxf2_trunc_i387 */
    9202        30703 :     case 1777:  /* frndintxf2_ceil_i387 */
    9203        30703 :     case 1776:  /* frndintxf2_floor_i387 */
    9204        30703 :     case 1775:  /* frndintxf2_roundeven_i387 */
    9205        30703 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9206        30703 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9207        30703 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9208        30703 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9209        30703 :       break;
    9210              : 
    9211          672 :     case 1761:  /* fscalexf4_i387 */
    9212          672 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9213          672 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9214          672 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9215          672 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9216          672 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    9217          672 :       recog_data.dup_num[0] = 3;
    9218          672 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    9219          672 :       recog_data.dup_num[1] = 2;
    9220          672 :       break;
    9221              : 
    9222         6669 :     case 1938:  /* stack_protect_test_1_di */
    9223         6669 :     case 1937:  /* stack_protect_test_1_si */
    9224         6669 :     case 1758:  /* fyl2xp1xf3_i387 */
    9225         6669 :     case 1757:  /* fyl2xxf3_i387 */
    9226         6669 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9227         6669 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9228         6669 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9229         6669 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9230         6669 :       break;
    9231              : 
    9232          177 :     case 1756:  /* atan2xf3 */
    9233          177 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9234          177 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9235          177 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9236          177 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9237          177 :       break;
    9238              : 
    9239           34 :     case 1755:  /* fptanxf4_i387 */
    9240           34 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9241           34 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9242           34 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0));
    9243           34 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 0), 1));
    9244           34 :       break;
    9245              : 
    9246          730 :     case 1980:  /* xgetbv_rex64 */
    9247          730 :     case 1950:  /* rdpmc_rex64 */
    9248          730 :     case 1759:  /* fxtractxf3_i387 */
    9249          730 :     case 1754:  /* sincosxf3 */
    9250          730 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9251          730 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9252          730 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9253          730 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    9254          730 :       recog_data.dup_num[0] = 2;
    9255          730 :       break;
    9256              : 
    9257         5399 :     case 1751:  /* fprem1xf4_i387 */
    9258         5399 :     case 1750:  /* fpremxf4_i387 */
    9259         5399 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9260         5399 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9261         5399 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9262         5399 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9263         5399 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 1);
    9264         5399 :       recog_data.dup_num[0] = 3;
    9265         5399 :       recog_data.dup_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 2), 1), 0, 0);
    9266         5399 :       recog_data.dup_num[1] = 2;
    9267         5399 :       recog_data.dup_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 1);
    9268         5399 :       recog_data.dup_num[2] = 3;
    9269         5399 :       recog_data.dup_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0, 0);
    9270         5399 :       recog_data.dup_num[3] = 2;
    9271         5399 :       break;
    9272              : 
    9273        79693 :     case 1740:  /* *fop_df_6_i387 */
    9274        79693 :     case 1739:  /* *fop_xf_6_i387 */
    9275        79693 :     case 1738:  /* *fop_xf_6_i387 */
    9276        79693 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9277        79693 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    9278        79693 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    9279        79693 :       ro[3] = *(ro_loc[3] = &XEXP (pat, 1));
    9280        79693 :       break;
    9281              : 
    9282        64957 :     case 1737:  /* *fop_df_5_i387 */
    9283        64957 :     case 1736:  /* *fop_xf_5_i387 */
    9284        64957 :     case 1735:  /* *fop_xf_5_i387 */
    9285        64957 :     case 1731:  /* *fop_xf_3_i387 */
    9286        64957 :     case 1730:  /* *fop_df_3_i387 */
    9287        64957 :     case 1729:  /* *fop_sf_3_i387 */
    9288        64957 :     case 1728:  /* *fop_xf_3_i387 */
    9289        64957 :     case 1727:  /* *fop_df_3_i387 */
    9290        64957 :     case 1726:  /* *fop_sf_3_i387 */
    9291        64957 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9292        64957 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    9293        64957 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    9294        64957 :       ro[3] = *(ro_loc[3] = &XEXP (pat, 1));
    9295        64957 :       break;
    9296              : 
    9297        87709 :     case 1734:  /* *fop_df_4_i387 */
    9298        87709 :     case 1733:  /* *fop_xf_4_i387 */
    9299        87709 :     case 1732:  /* *fop_xf_4_i387 */
    9300        87709 :     case 1725:  /* *fop_xf_2_i387 */
    9301        87709 :     case 1724:  /* *fop_df_2_i387 */
    9302        87709 :     case 1723:  /* *fop_sf_2_i387 */
    9303        87709 :     case 1722:  /* *fop_xf_2_i387 */
    9304        87709 :     case 1721:  /* *fop_df_2_i387 */
    9305        87709 :     case 1720:  /* *fop_sf_2_i387 */
    9306        87709 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9307        87709 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
    9308        87709 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    9309        87709 :       ro[3] = *(ro_loc[3] = &XEXP (pat, 1));
    9310        87709 :       break;
    9311              : 
    9312           94 :     case 1707:  /* *tls_dynamic_gnu2_combine_64_di */
    9313           94 :     case 1706:  /* *tls_dynamic_gnu2_combine_64_si */
    9314           94 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9315           94 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0, 0));
    9316           94 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
    9317           94 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
    9318           94 :       break;
    9319              : 
    9320            0 :     case 1701:  /* *tls_dynamic_gnu2_combine_32 */
    9321            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9322            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0, 0));
    9323            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 2));
    9324            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
    9325            0 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
    9326            0 :       break;
    9327              : 
    9328            0 :     case 1700:  /* *tls_dynamic_gnu2_call_32 */
    9329            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9330            0 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9331            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9332            0 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    9333            0 :       break;
    9334              : 
    9335            0 :     case 1699:  /* *tls_dynamic_gnu2_lea_32 */
    9336            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9337            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    9338            0 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0, 0));
    9339            0 :       break;
    9340              : 
    9341            6 :     case 1698:  /* *add_tp_x32_zext */
    9342            6 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9343            6 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
    9344            6 :       break;
    9345              : 
    9346         5692 :     case 1697:  /* *add_tp_di */
    9347         5692 :     case 1696:  /* *add_tp_si */
    9348         5692 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9349         5692 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9350         5692 :       break;
    9351              : 
    9352          156 :     case 1692:  /* *tls_local_dynamic_32_once */
    9353          156 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9354          156 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
    9355          156 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
    9356          156 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0, 0));
    9357          156 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9358          156 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9359          156 :       break;
    9360              : 
    9361           13 :     case 1691:  /* *tls_local_dynamic_base_64_largepic */
    9362           13 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9363           13 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9364           13 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
    9365           13 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9366           13 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9367           13 :       break;
    9368              : 
    9369         2465 :     case 1690:  /* *tls_local_dynamic_base_64_di */
    9370         2465 :     case 1689:  /* *tls_local_dynamic_base_64_si */
    9371         2465 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9372         2465 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9373         2465 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9374         2465 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9375         2465 :       break;
    9376              : 
    9377          897 :     case 1688:  /* *tls_local_dynamic_base_32_gnu */
    9378          897 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9379          897 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9380          897 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9381          897 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9382          897 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9383          897 :       break;
    9384              : 
    9385           13 :     case 1687:  /* *tls_global_dynamic_64_largepic */
    9386           13 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9387           13 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    9388           13 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9389           13 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
    9390           13 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9391           13 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9392           13 :       break;
    9393              : 
    9394        32989 :     case 1686:  /* *tls_global_dynamic_64_di */
    9395        32989 :     case 1685:  /* *tls_global_dynamic_64_si */
    9396        32989 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9397        32989 :       ro[1] = *(ro_loc[1] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    9398        32989 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9399        32989 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9400        32989 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9401        32989 :       break;
    9402              : 
    9403        32285 :     case 1684:  /* *tls_global_dynamic_32_gnu */
    9404        32285 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9405        32285 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9406        32285 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
    9407        32285 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2));
    9408        32285 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9409        32285 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (pat, 0, 2), 0));
    9410        32285 :       break;
    9411              : 
    9412         2664 :     case 1682:  /* parityhi2_cmp */
    9413         2664 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9414         2664 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
    9415         2664 :       recog_data.dup_num[0] = 0;
    9416         2664 :       break;
    9417              : 
    9418            0 :     case 1681:  /* bswaphisi2_lowpart */
    9419            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9420            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9421            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0);
    9422            0 :       recog_data.dup_num[0] = 1;
    9423            0 :       break;
    9424              : 
    9425         1488 :     case 1657:  /* *tbm_tzmsk_di */
    9426         1488 :     case 1656:  /* *tbm_tzmsk_si */
    9427         1488 :     case 1655:  /* *tbm_t1mskc_di */
    9428         1488 :     case 1654:  /* *tbm_t1mskc_si */
    9429         1488 :     case 1653:  /* *tbm_blsic_di */
    9430         1488 :     case 1652:  /* *tbm_blsic_si */
    9431         1488 :     case 1645:  /* *tbm_blcic_di */
    9432         1488 :     case 1644:  /* *tbm_blcic_si */
    9433         1488 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9434         1488 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9435         1488 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0);
    9436         1488 :       recog_data.dup_num[0] = 1;
    9437         1488 :       break;
    9438              : 
    9439            0 :     case 1643:  /* *tbm_blci_di */
    9440            0 :     case 1642:  /* *tbm_blci_si */
    9441            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9442            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9443            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
    9444            0 :       recog_data.dup_num[0] = 1;
    9445            0 :       break;
    9446              : 
    9447          380 :     case 1639:  /* tbm_bextri_di */
    9448          380 :     case 1638:  /* tbm_bextri_si */
    9449          380 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9450          380 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    9451          380 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9452          380 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2));
    9453          380 :       break;
    9454              : 
    9455            0 :     case 1633:  /* *bmi2_bzhi_zero_extendsidi_5 */
    9456            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9457            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9458            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 1));
    9459            0 :       break;
    9460              : 
    9461           17 :     case 1632:  /* *bmi2_bzhi_zero_extendsidi_4 */
    9462           17 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9463           17 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
    9464           17 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 1));
    9465           17 :       break;
    9466              : 
    9467           17 :     case 1627:  /* *bmi2_bzhi_di3_1_ccz */
    9468           17 :     case 1626:  /* *bmi2_bzhi_si3_1_ccz */
    9469           17 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9470           17 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
    9471           17 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9472           17 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 1), 1));
    9473           17 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 1), 0);
    9474           17 :       recog_data.dup_num[0] = 2;
    9475           17 :       break;
    9476              : 
    9477         1076 :     case 1625:  /* *bmi2_bzhi_di3 */
    9478         1076 :     case 1624:  /* *bmi2_bzhi_si3 */
    9479         1076 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9480         1076 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    9481         1076 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9482         1076 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 1));
    9483         1076 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 0);
    9484         1076 :       recog_data.dup_num[0] = 2;
    9485         1076 :       break;
    9486              : 
    9487            4 :     case 1615:  /* *bmi_blsmsk_di_falsedep */
    9488            4 :     case 1614:  /* *bmi_blsmsk_si_falsedep */
    9489            4 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9490            4 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9491            4 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 2), 0, 0));
    9492            4 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
    9493            4 :       recog_data.dup_num[0] = 1;
    9494            4 :       break;
    9495              : 
    9496          180 :     case 1623:  /* *bmi_blsr_di_ccz */
    9497          180 :     case 1622:  /* *bmi_blsr_si_ccz */
    9498          180 :     case 1611:  /* *bmi_blsi_di_ccno */
    9499          180 :     case 1610:  /* *bmi_blsi_si_ccno */
    9500          180 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9501          180 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9502          180 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1);
    9503          180 :       recog_data.dup_num[0] = 1;
    9504          180 :       break;
    9505              : 
    9506           16 :     case 1621:  /* *bmi_blsr_di_cmp_falsedep */
    9507           16 :     case 1620:  /* *bmi_blsr_si_cmp_falsedep */
    9508           16 :     case 1609:  /* *bmi_blsi_di_falsedep */
    9509           16 :     case 1608:  /* *bmi_blsi_si_falsedep */
    9510           16 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9511           16 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9512           16 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 2), 0, 0));
    9513           16 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
    9514           16 :       recog_data.dup_num[0] = 1;
    9515           16 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
    9516           16 :       recog_data.dup_num[1] = 1;
    9517           16 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1);
    9518           16 :       recog_data.dup_num[2] = 1;
    9519           16 :       break;
    9520              : 
    9521           44 :     case 1619:  /* *bmi_blsr_di_cmp */
    9522           44 :     case 1618:  /* *bmi_blsr_si_cmp */
    9523           44 :     case 1607:  /* *bmi_blsi_di_cmp */
    9524           44 :     case 1606:  /* *bmi_blsi_si_cmp */
    9525           44 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9526           44 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9527           44 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
    9528           44 :       recog_data.dup_num[0] = 1;
    9529           44 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
    9530           44 :       recog_data.dup_num[1] = 1;
    9531           44 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1);
    9532           44 :       recog_data.dup_num[2] = 1;
    9533           44 :       break;
    9534              : 
    9535         4284 :     case 1651:  /* *tbm_blsfill_di */
    9536         4284 :     case 1650:  /* *tbm_blsfill_si */
    9537         4284 :     case 1649:  /* *tbm_blcs_di */
    9538         4284 :     case 1648:  /* *tbm_blcs_si */
    9539         4284 :     case 1647:  /* *tbm_blcmsk_di */
    9540         4284 :     case 1646:  /* *tbm_blcmsk_si */
    9541         4284 :     case 1641:  /* *tbm_blcfill_di */
    9542         4284 :     case 1640:  /* *tbm_blcfill_si */
    9543         4284 :     case 1617:  /* *bmi_blsr_di */
    9544         4284 :     case 1616:  /* *bmi_blsr_si */
    9545         4284 :     case 1613:  /* *bmi_blsmsk_di */
    9546         4284 :     case 1612:  /* *bmi_blsmsk_si */
    9547         4284 :     case 1605:  /* *bmi_blsi_di */
    9548         4284 :     case 1604:  /* *bmi_blsi_si */
    9549         4284 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9550         4284 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9551         4284 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
    9552         4284 :       recog_data.dup_num[0] = 1;
    9553         4284 :       break;
    9554              : 
    9555           17 :     case 1603:  /* *bmi_bextr_di_ccz */
    9556           17 :     case 1602:  /* *bmi_bextr_si_ccz */
    9557           17 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9558           17 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 0));
    9559           17 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0, 1));
    9560           17 :       break;
    9561              : 
    9562          268 :     case 1595:  /* *lzcnt_di_falsedep */
    9563          268 :     case 1594:  /* *tzcnt_di_falsedep */
    9564          268 :     case 1593:  /* *lzcnt_si_falsedep */
    9565          268 :     case 1592:  /* *tzcnt_si_falsedep */
    9566          268 :     case 1591:  /* *lzcnt_di_falsedep_nf */
    9567          268 :     case 1590:  /* *tzcnt_di_falsedep_nf */
    9568          268 :     case 1589:  /* *lzcnt_si_falsedep_nf */
    9569          268 :     case 1588:  /* *tzcnt_si_falsedep_nf */
    9570          268 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9571          268 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9572          268 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    9573          268 :       break;
    9574              : 
    9575         6821 :     case 1916:  /* probe_stack_1 */
    9576         6821 :     case 1915:  /* allocate_stack_worker_probe_di */
    9577         6821 :     case 1914:  /* allocate_stack_worker_probe_si */
    9578         6821 :     case 1784:  /* *fistdi2_ceil_1 */
    9579         6821 :     case 1783:  /* *fistdi2_floor_1 */
    9580         6821 :     case 1782:  /* *fistsi2_ceil_1 */
    9581         6821 :     case 1781:  /* *fistsi2_floor_1 */
    9582         6821 :     case 1780:  /* *fisthi2_ceil_1 */
    9583         6821 :     case 1779:  /* *fisthi2_floor_1 */
    9584         6821 :     case 1774:  /* frndintxf2_trunc */
    9585         6821 :     case 1773:  /* frndintxf2_ceil */
    9586         6821 :     case 1772:  /* frndintxf2_floor */
    9587         6821 :     case 1771:  /* frndintxf2_roundeven */
    9588         6821 :     case 1599:  /* lzcnt_hi */
    9589         6821 :     case 1597:  /* tzcnt_hi */
    9590         6821 :     case 1587:  /* lzcnt_di */
    9591         6821 :     case 1586:  /* tzcnt_di */
    9592         6821 :     case 1585:  /* lzcnt_si */
    9593         6821 :     case 1584:  /* tzcnt_si */
    9594         6821 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9595         6821 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
    9596         6821 :       break;
    9597              : 
    9598          101 :     case 1565:  /* *bsru_2 */
    9599          101 :     case 1564:  /* *bsr_2 */
    9600          101 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9601          101 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
    9602          101 :       break;
    9603              : 
    9604          451 :     case 1563:  /* *bsr_rex64u_2 */
    9605          451 :     case 1562:  /* *bsr_rex64_2 */
    9606          451 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9607          451 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0), 0));
    9608          451 :       break;
    9609              : 
    9610           75 :     case 1561:  /* bsr_zext_1 */
    9611           75 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9612           75 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
    9613           75 :       break;
    9614              : 
    9615        10506 :     case 1558:  /* bsr_rex64_1_zext */
    9616        10506 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9617        10506 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0), 0));
    9618        10506 :       break;
    9619              : 
    9620        37181 :     case 1560:  /* bsr_1 */
    9621        37181 :     case 1557:  /* bsr_rex64_1 */
    9622        37181 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9623        37181 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
    9624        37181 :       break;
    9625              : 
    9626        80737 :     case 1559:  /* bsr */
    9627        80737 :     case 1556:  /* bsr_rex64 */
    9628        80737 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9629        80737 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    9630        80737 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1), 0);
    9631        80737 :       recog_data.dup_num[0] = 1;
    9632        80737 :       break;
    9633              : 
    9634         1400 :     case 1669:  /* *popcountsi2_zext_2_falsedep */
    9635         1400 :     case 1579:  /* *clzsi2_lzcnt_zext_2_falsedep */
    9636         1400 :     case 1578:  /* *clzsi2_lzcnt_zext_2_falsedep */
    9637         1400 :     case 1555:  /* *ctzsidi2_uext_falsedep */
    9638         1400 :     case 1554:  /* *ctzsidi2_sext_falsedep */
    9639         1400 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9640         1400 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9641         1400 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    9642         1400 :       break;
    9643              : 
    9644           40 :     case 1667:  /* *popcountsi2_zext_falsedep */
    9645           40 :     case 1576:  /* *clzsi2_lzcnt_zext_falsedep */
    9646           40 :     case 1575:  /* *clzsi2_lzcnt_zext_falsedep */
    9647           40 :     case 1551:  /* *ctzsi2_zext_falsedep */
    9648           40 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9649           40 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9650           40 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    9651           40 :       break;
    9652              : 
    9653          256 :     case 1666:  /* *popcountsi2_zext */
    9654          256 :     case 1574:  /* *clzsi2_lzcnt_zext */
    9655          256 :     case 1550:  /* *ctzsi2_zext */
    9656          256 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9657          256 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
    9658          256 :       break;
    9659              : 
    9660         4723 :     case 1665:  /* *popcountdi2_falsedep */
    9661         4723 :     case 1664:  /* *popcountsi2_falsedep */
    9662         4723 :     case 1663:  /* *popcountdi2_falsedep_nf */
    9663         4723 :     case 1662:  /* *popcountsi2_falsedep_nf */
    9664         4723 :     case 1573:  /* *clzdi2_lzcnt_falsedep */
    9665         4723 :     case 1572:  /* *clzsi2_lzcnt_falsedep */
    9666         4723 :     case 1571:  /* *clzdi2_lzcnt_falsedep_nf */
    9667         4723 :     case 1570:  /* *clzsi2_lzcnt_falsedep_nf */
    9668         4723 :     case 1549:  /* *ctzdi2_falsedep */
    9669         4723 :     case 1548:  /* *ctzsi2_falsedep */
    9670         4723 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9671         4723 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    9672         4723 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 1), 0, 0));
    9673         4723 :       break;
    9674              : 
    9675          110 :     case 1543:  /* *tzcntdi_1_falsedep */
    9676          110 :     case 1542:  /* *tzcntsi_1_falsedep */
    9677          110 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9678          110 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    9679          110 :       ro[2] = *(ro_loc[2] = &XVECEXP (XVECEXP (pat, 0, 2), 0, 0));
    9680          110 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
    9681          110 :       recog_data.dup_num[0] = 1;
    9682          110 :       break;
    9683              : 
    9684         2700 :     case 1545:  /* *bsfdi_1 */
    9685         2700 :     case 1544:  /* *bsfsi_1 */
    9686         2700 :     case 1541:  /* *tzcntdi_1 */
    9687         2700 :     case 1540:  /* *tzcntsi_1 */
    9688         2700 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9689         2700 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
    9690         2700 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
    9691         2700 :       recog_data.dup_num[0] = 1;
    9692         2700 :       break;
    9693              : 
    9694         5453 :     case 11052:  /* avx10_2_vcvttss2usisdi */
    9695         5453 :     case 11050:  /* avx10_2_vcvttss2sisdi */
    9696         5453 :     case 11048:  /* avx10_2_vcvttss2usissi */
    9697         5453 :     case 11046:  /* avx10_2_vcvttss2sissi */
    9698         5453 :     case 11040:  /* avx10_2_vcvttsd2usisdi */
    9699         5453 :     case 11038:  /* avx10_2_vcvttsd2sisdi */
    9700         5453 :     case 11036:  /* avx10_2_vcvttsd2usissi */
    9701         5453 :     case 11034:  /* avx10_2_vcvttsd2sissi */
    9702         5453 :     case 8797:  /* sse4a_vmmovntv2df */
    9703         5453 :     case 8796:  /* sse4a_vmmovntv4sf */
    9704         5453 :     case 5008:  /* sse2_cvtsd2siq */
    9705         5453 :     case 5006:  /* sse2_cvtsd2si */
    9706         5453 :     case 4990:  /* avx512f_vcvtsd2usiq */
    9707         5453 :     case 4988:  /* avx512f_vcvtsd2usi */
    9708         5453 :     case 4972:  /* avx512f_vcvtss2usiq */
    9709         5453 :     case 4970:  /* avx512f_vcvtss2usi */
    9710         5453 :     case 4934:  /* *avx512dq_cvtps2uqqv2di */
    9711         5453 :     case 4926:  /* *avx512dq_cvtps2qqv2di */
    9712         5453 :     case 4854:  /* sse_cvtss2siq */
    9713         5453 :     case 4852:  /* sse_cvtss2si */
    9714         5453 :     case 4599:  /* avx512fp16_vcvtsh2siq */
    9715         5453 :     case 4597:  /* avx512fp16_vcvtsh2usiq */
    9716         5453 :     case 4595:  /* avx512fp16_vcvtsh2si */
    9717         5453 :     case 4593:  /* avx512fp16_vcvtsh2usi */
    9718         5453 :     case 1534:  /* set_got_offset_rex64 */
    9719         5453 :     case 1533:  /* set_rip_rex64 */
    9720         5453 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9721         5453 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
    9722         5453 :       break;
    9723              : 
    9724            0 :     case 1531:  /* *set_got_labelled */
    9725            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9726            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0), 0));
    9727            0 :       break;
    9728              : 
    9729       655101 :     case 2008:  /* rdseeddi */
    9730       655101 :     case 2007:  /* rdseedsi */
    9731       655101 :     case 2006:  /* rdseedhi */
    9732       655101 :     case 2005:  /* rdranddi */
    9733       655101 :     case 2004:  /* rdrandsi */
    9734       655101 :     case 2003:  /* rdrandhi */
    9735       655101 :     case 1981:  /* fnstenv */
    9736       655101 :     case 1530:  /* *set_got */
    9737       655101 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9738       655101 :       break;
    9739              : 
    9740       188003 :     case 8707:  /* sse3_mwait */
    9741       188003 :     case 2066:  /* uwrmsr */
    9742       188003 :     case 2063:  /* patchable_area */
    9743       188003 :     case 2019:  /* wrussdi */
    9744       188003 :     case 2018:  /* wrusssi */
    9745       188003 :     case 2017:  /* wrssdi */
    9746       188003 :     case 2016:  /* wrsssi */
    9747       188003 :     case 1977:  /* xsetbv */
    9748       188003 :     case 1972:  /* xrstors */
    9749       188003 :     case 1971:  /* xrstor */
    9750       188003 :     case 1943:  /* prefetchi */
    9751       188003 :     case 1529:  /* max_skip_align */
    9752       188003 :       ro[0] = *(ro_loc[0] = &XVECEXP (pat, 0, 0));
    9753       188003 :       ro[1] = *(ro_loc[1] = &XVECEXP (pat, 0, 1));
    9754       188003 :       break;
    9755              : 
    9756        58505 :     case 1526:  /* *simple_return_indirect_internaldi */
    9757        58505 :     case 1525:  /* *simple_return_indirect_internalsi */
    9758        58505 :     case 1524:  /* simple_return_pop_internal */
    9759        58505 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
    9760        58505 :       break;
    9761              : 
    9762      1507630 :     case 8706:  /* sse2_clflush */
    9763      1507630 :     case 8704:  /* sse_ldmxcsr */
    9764      1507630 :     case 2067:  /* ldtilecfg */
    9765      1507630 :     case 2064:  /* hreset */
    9766      1507630 :     case 2060:  /* cldemote */
    9767      1507630 :     case 2057:  /* umonitor_di */
    9768      1507630 :     case 2056:  /* umonitor_si */
    9769      1507630 :     case 2053:  /* senduipi */
    9770      1507630 :     case 2033:  /* clzero_di */
    9771      1507630 :     case 2032:  /* clzero_si */
    9772      1507630 :     case 2028:  /* clflushopt */
    9773      1507630 :     case 2027:  /* clwb */
    9774      1507630 :     case 2025:  /* xabort */
    9775      1507630 :     case 2021:  /* clrssbsy */
    9776      1507630 :     case 2015:  /* rstorssp */
    9777      1507630 :     case 2013:  /* incsspdi */
    9778      1507630 :     case 2012:  /* incsspsi */
    9779      1507630 :     case 2002:  /* ptwritedi */
    9780      1507630 :     case 2001:  /* ptwritesi */
    9781      1507630 :     case 2000:  /* wrgsbasedi */
    9782      1507630 :     case 1999:  /* wrfsbasedi */
    9783      1507630 :     case 1998:  /* wrgsbasesi */
    9784      1507630 :     case 1997:  /* wrfsbasesi */
    9785      1507630 :     case 1986:  /* lwp_llwpcbdi */
    9786      1507630 :     case 1985:  /* lwp_llwpcbsi */
    9787      1507630 :     case 1958:  /* fxrstor64 */
    9788      1507630 :     case 1957:  /* fxrstor */
    9789      1507630 :     case 1538:  /* split_stack_return */
    9790      1507630 :     case 1528:  /* nops */
    9791      1507630 :     case 1520:  /* prologue_use */
    9792      1507630 :       ro[0] = *(ro_loc[0] = &XVECEXP (pat, 0, 0));
    9793      1507630 :       break;
    9794              : 
    9795      2066043 :     case 11293:  /* mfence_sse2 */
    9796      2066043 :     case 11292:  /* *sse_sfence */
    9797      2066043 :     case 11291:  /* *sse2_lfence */
    9798      2066043 :     case 2009:  /* *pause */
    9799      2066043 :     case 1519:  /* *memory_blockage */
    9800      2066043 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9801      2066043 :       recog_data.dup_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 0);
    9802      2066043 :       recog_data.dup_num[0] = 0;
    9803      2066043 :       break;
    9804              : 
    9805            0 :     case 1517:  /* *sibcall_value_pop_memory */
    9806            0 :     case 1516:  /* *sibcall_value_pop */
    9807            0 :     case 1515:  /* *call_value_pop */
    9808            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
    9809            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
    9810            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
    9811            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    9812            0 :       break;
    9813              : 
    9814            0 :     case 1510:  /* *sibcall_value_GOT_32 */
    9815            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9816            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
    9817            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 1));
    9818            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
    9819            0 :       break;
    9820              : 
    9821          249 :     case 5387:  /* *vec_setv2di_0_zero_extendsi */
    9822          249 :     case 5386:  /* *vec_setv4di_0_zero_extendsi */
    9823          249 :     case 5385:  /* *vec_setv8di_0_zero_extendsi */
    9824          249 :     case 5375:  /* *vec_setv2di_0_zero_extendhi */
    9825          249 :     case 5374:  /* *vec_setv4di_0_zero_extendhi */
    9826          249 :     case 5373:  /* *vec_setv8di_0_zero_extendhi */
    9827          249 :     case 5372:  /* *vec_setv4si_0_zero_extendhi */
    9828          249 :     case 5371:  /* *vec_setv8si_0_zero_extendhi */
    9829          249 :     case 5370:  /* *vec_setv16si_0_zero_extendhi */
    9830          249 :     case 4842:  /* avx512fp16_vcvtsd2sh_mem */
    9831          249 :     case 4840:  /* avx512fp16_vcvtss2sh_mem */
    9832          249 :     case 4830:  /* avx512fp16_vcvtsh2ss_mem */
    9833          249 :     case 4828:  /* avx512fp16_vcvtsh2sd_mem */
    9834          249 :     case 3020:  /* *sse2_vmsqrtv2df2 */
    9835          249 :     case 3016:  /* *sse_vmsqrtv4sf2 */
    9836          249 :     case 3012:  /* *avx512fp16_vmsqrtv8hf2 */
    9837          249 :     case 1509:  /* *call_value_got_x32 */
    9838          249 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
    9839          249 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
    9840          249 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
    9841          249 :       break;
    9842              : 
    9843      3644901 :     case 1506:  /* *sibcall_pop_memory */
    9844      3644901 :     case 1505:  /* *sibcall_pop */
    9845      3644901 :     case 1504:  /* *call_pop */
    9846      3644901 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
    9847      3644901 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1));
    9848      3644901 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
    9849      3644901 :       break;
    9850              : 
    9851            0 :     case 1499:  /* *sibcall_GOT_32 */
    9852            0 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 0), 0), 0), 0));
    9853            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 0), 0), 0), 1));
    9854            0 :       ro[2] = *(ro_loc[2] = &XEXP (pat, 1));
    9855            0 :       break;
    9856              : 
    9857            0 :     case 1498:  /* *call_got_x32 */
    9858            0 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 0), 0), 0));
    9859            0 :       ro[1] = *(ro_loc[1] = &XEXP (pat, 1));
    9860            0 :       break;
    9861              : 
    9862       180895 :     case 1495:  /* *tablejump_1 */
    9863       180895 :     case 1494:  /* *tablejump_1 */
    9864       180895 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 1));
    9865       180895 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 0));
    9866       180895 :       break;
    9867              : 
    9868        23061 :     case 1493:  /* *indirect_jump */
    9869        23061 :     case 1492:  /* *indirect_jump */
    9870        23061 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 1));
    9871        23061 :       break;
    9872              : 
    9873     41192986 :     case 1491:  /* jump */
    9874     41192986 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0));
    9875     41192986 :       break;
    9876              : 
    9877    144408147 :     case 1490:  /* *jcc */
    9878    144408147 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
    9879    144408147 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
    9880    144408147 :       break;
    9881              : 
    9882       487794 :     case 11139:  /* avx512bmm_vbmacxor16x16x16_v16hi */
    9883       487794 :     case 11138:  /* avx512bmm_vbmacxor16x16x16_v32hi */
    9884       487794 :     case 11137:  /* avx512bmm_vbmacor16x16x16_v16hi */
    9885       487794 :     case 11136:  /* avx512bmm_vbmacor16x16x16_v32hi */
    9886       487794 :     case 11096:  /* avx10_2_minmaxpv2df */
    9887       487794 :     case 11092:  /* avx10_2_minmaxpv4df */
    9888       487794 :     case 11088:  /* avx10_2_minmaxpv8df */
    9889       487794 :     case 11084:  /* avx10_2_minmaxpv4sf */
    9890       487794 :     case 11080:  /* avx10_2_minmaxpv8sf */
    9891       487794 :     case 11076:  /* avx10_2_minmaxpv16sf */
    9892       487794 :     case 11072:  /* avx10_2_minmaxpv8hf */
    9893       487794 :     case 11068:  /* avx10_2_minmaxpv16hf */
    9894       487794 :     case 11064:  /* avx10_2_minmaxpv32hf */
    9895       487794 :     case 11062:  /* avx10_2_minmaxbf16_v8bf */
    9896       487794 :     case 11060:  /* avx10_2_minmaxbf16_v16bf */
    9897       487794 :     case 11058:  /* avx10_2_minmaxbf16_v32bf */
    9898       487794 :     case 10880:  /* avx10_2_cmpbf16_v8bf */
    9899       487794 :     case 10878:  /* avx10_2_cmpbf16_v16bf */
    9900       487794 :     case 10876:  /* avx10_2_cmpbf16_v32bf */
    9901       487794 :     case 10731:  /* vdpphps_v4sf */
    9902       487794 :     case 10730:  /* vdpphps_v8sf */
    9903       487794 :     case 10729:  /* vdpphps_v16sf */
    9904       487794 :     case 10692:  /* vpdpwuuds_v16si */
    9905       487794 :     case 10691:  /* vpdpwuud_v16si */
    9906       487794 :     case 10690:  /* vpdpwsuds_v16si */
    9907       487794 :     case 10689:  /* vpdpwsud_v16si */
    9908       487794 :     case 10688:  /* vpdpwusds_v16si */
    9909       487794 :     case 10687:  /* vpdpwusd_v16si */
    9910       487794 :     case 10686:  /* vpdpwuuds_v4si */
    9911       487794 :     case 10685:  /* vpdpwuud_v4si */
    9912       487794 :     case 10684:  /* vpdpwsuds_v4si */
    9913       487794 :     case 10683:  /* vpdpwsud_v4si */
    9914       487794 :     case 10682:  /* vpdpwusds_v4si */
    9915       487794 :     case 10681:  /* vpdpwusd_v4si */
    9916       487794 :     case 10680:  /* vpdpwuuds_v8si */
    9917       487794 :     case 10679:  /* vpdpwuud_v8si */
    9918       487794 :     case 10678:  /* vpdpwsuds_v8si */
    9919       487794 :     case 10677:  /* vpdpwsud_v8si */
    9920       487794 :     case 10676:  /* vpdpwusds_v8si */
    9921       487794 :     case 10675:  /* vpdpwusd_v8si */
    9922       487794 :     case 10540:  /* vpdpbuuds_v16si */
    9923       487794 :     case 10539:  /* vpdpbuud_v16si */
    9924       487794 :     case 10538:  /* vpdpbsuds_v16si */
    9925       487794 :     case 10537:  /* vpdpbsud_v16si */
    9926       487794 :     case 10536:  /* vpdpbssds_v16si */
    9927       487794 :     case 10535:  /* vpdpbssd_v16si */
    9928       487794 :     case 10534:  /* vpdpbuuds_v4si */
    9929       487794 :     case 10533:  /* vpdpbuud_v4si */
    9930       487794 :     case 10532:  /* vpdpbsuds_v4si */
    9931       487794 :     case 10531:  /* vpdpbsud_v4si */
    9932       487794 :     case 10530:  /* vpdpbssds_v4si */
    9933       487794 :     case 10529:  /* vpdpbssd_v4si */
    9934       487794 :     case 10528:  /* vpdpbuuds_v8si */
    9935       487794 :     case 10527:  /* vpdpbuud_v8si */
    9936       487794 :     case 10526:  /* vpdpbsuds_v8si */
    9937       487794 :     case 10525:  /* vpdpbsud_v8si */
    9938       487794 :     case 10524:  /* vpdpbssds_v8si */
    9939       487794 :     case 10523:  /* vpdpbssd_v8si */
    9940       487794 :     case 10507:  /* avx512f_dpbf16ps_v4sf */
    9941       487794 :     case 10505:  /* avx512f_dpbf16ps_v8sf */
    9942       487794 :     case 10503:  /* avx512f_dpbf16ps_v16sf */
    9943       487794 :     case 10475:  /* vpclmulqdq_v2di */
    9944       487794 :     case 10474:  /* vpclmulqdq_v4di */
    9945       487794 :     case 10473:  /* vpclmulqdq_v8di */
    9946       487794 :     case 10454:  /* vpdpwssds_v4si */
    9947       487794 :     case 10453:  /* vpdpwssds_v8si */
    9948       487794 :     case 10452:  /* vpdpwssds_v16si */
    9949       487794 :     case 10445:  /* vpdpwssd_v4si */
    9950       487794 :     case 10444:  /* vpdpwssd_v8si */
    9951       487794 :     case 10443:  /* vpdpwssd_v16si */
    9952       487794 :     case 10436:  /* vpdpbusds_v4si */
    9953       487794 :     case 10435:  /* vpdpbusds_v8si */
    9954       487794 :     case 10434:  /* vpdpbusds_v16si */
    9955       487794 :     case 10427:  /* vpdpbusd_v4si */
    9956       487794 :     case 10426:  /* vpdpbusd_v8si */
    9957       487794 :     case 10425:  /* vpdpbusd_v16si */
    9958       487794 :     case 10406:  /* vpshldv_v2di */
    9959       487794 :     case 10405:  /* vpshldv_v4si */
    9960       487794 :     case 10404:  /* vpshldv_v8hi */
    9961       487794 :     case 10403:  /* vpshldv_v4di */
    9962       487794 :     case 10402:  /* vpshldv_v8si */
    9963       487794 :     case 10401:  /* vpshldv_v16hi */
    9964       487794 :     case 10400:  /* vpshldv_v8di */
    9965       487794 :     case 10399:  /* vpshldv_v16si */
    9966       487794 :     case 10398:  /* vpshldv_v32hi */
    9967       487794 :     case 10379:  /* vpshrdv_v2di */
    9968       487794 :     case 10378:  /* vpshrdv_v4si */
    9969       487794 :     case 10377:  /* vpshrdv_v8hi */
    9970       487794 :     case 10376:  /* vpshrdv_v4di */
    9971       487794 :     case 10375:  /* vpshrdv_v8si */
    9972       487794 :     case 10374:  /* vpshrdv_v16hi */
    9973       487794 :     case 10373:  /* vpshrdv_v8di */
    9974       487794 :     case 10372:  /* vpshrdv_v16si */
    9975       487794 :     case 10371:  /* vpshrdv_v32hi */
    9976       487794 :     case 10369:  /* vpshld_v2di */
    9977       487794 :     case 10367:  /* vpshld_v4si */
    9978       487794 :     case 10365:  /* vpshld_v8hi */
    9979       487794 :     case 10363:  /* vpshld_v4di */
    9980       487794 :     case 10361:  /* vpshld_v8si */
    9981       487794 :     case 10359:  /* vpshld_v16hi */
    9982       487794 :     case 10357:  /* vpshld_v8di */
    9983       487794 :     case 10355:  /* vpshld_v16si */
    9984       487794 :     case 10353:  /* vpshld_v32hi */
    9985       487794 :     case 10351:  /* vpshrd_v2di */
    9986       487794 :     case 10349:  /* vpshrd_v4si */
    9987       487794 :     case 10347:  /* vpshrd_v8hi */
    9988       487794 :     case 10345:  /* vpshrd_v4di */
    9989       487794 :     case 10343:  /* vpshrd_v8si */
    9990       487794 :     case 10341:  /* vpshrd_v16hi */
    9991       487794 :     case 10339:  /* vpshrd_v8di */
    9992       487794 :     case 10337:  /* vpshrd_v16si */
    9993       487794 :     case 10335:  /* vpshrd_v32hi */
    9994       487794 :     case 10327:  /* vgf2p8affineqb_v16qi */
    9995       487794 :     case 10325:  /* vgf2p8affineqb_v32qi */
    9996       487794 :     case 10323:  /* vgf2p8affineqb_v64qi */
    9997       487794 :     case 10321:  /* vgf2p8affineinvqb_v16qi */
    9998       487794 :     case 10319:  /* vgf2p8affineinvqb_v32qi */
    9999       487794 :     case 10317:  /* vgf2p8affineinvqb_v64qi */
   10000       487794 :     case 10266:  /* vpmadd52huqv2di */
   10001       487794 :     case 10265:  /* vpmadd52luqv2di */
   10002       487794 :     case 10264:  /* vpmadd52huqv4di */
   10003       487794 :     case 10263:  /* vpmadd52luqv4di */
   10004       487794 :     case 10262:  /* vpmadd52huqv8di */
   10005       487794 :     case 10261:  /* vpmadd52luqv8di */
   10006       487794 :     case 10248:  /* vsha512rnds2 */
   10007       487794 :     case 10244:  /* vsm3msg2 */
   10008       487794 :     case 10243:  /* vsm3msg1 */
   10009       487794 :     case 10242:  /* sha256rnds2 */
   10010       487794 :     case 10239:  /* sha1rnds4 */
   10011       487794 :     case 10210:  /* *avx512bw_dbpsadbwv32hi */
   10012       487794 :     case 10208:  /* *avx512bw_dbpsadbwv16hi */
   10013       487794 :     case 10206:  /* *avx512bw_dbpsadbwv8hi */
   10014       487794 :     case 10124:  /* avx512dq_rangepv2df */
   10015       487794 :     case 10122:  /* avx512dq_rangepv4df */
   10016       487794 :     case 10118:  /* avx512dq_rangepv8df */
   10017       487794 :     case 10116:  /* avx512dq_rangepv4sf */
   10018       487794 :     case 10114:  /* avx512dq_rangepv8sf */
   10019       487794 :     case 10110:  /* avx512dq_rangepv16sf */
   10020       487794 :     case 10109:  /* *expandv8hi_mask */
   10021       487794 :     case 10108:  /* *expandv16hi_mask */
   10022       487794 :     case 10107:  /* *expandv32hi_mask */
   10023       487794 :     case 10106:  /* *expandv32qi_mask */
   10024       487794 :     case 10105:  /* *expandv16qi_mask */
   10025       487794 :     case 10104:  /* *expandv64qi_mask */
   10026       487794 :     case 10103:  /* *expandv2df_mask */
   10027       487794 :     case 10102:  /* *expandv2di_mask */
   10028       487794 :     case 10101:  /* *expandv4sf_mask */
   10029       487794 :     case 10100:  /* *expandv4si_mask */
   10030       487794 :     case 10099:  /* *expandv4df_mask */
   10031       487794 :     case 10098:  /* *expandv4di_mask */
   10032       487794 :     case 10097:  /* *expandv8sf_mask */
   10033       487794 :     case 10096:  /* *expandv8si_mask */
   10034       487794 :     case 10095:  /* *expandv8df_mask */
   10035       487794 :     case 10094:  /* *expandv8di_mask */
   10036       487794 :     case 10093:  /* *expandv16sf_mask */
   10037       487794 :     case 10092:  /* *expandv16si_mask */
   10038       487794 :     case 10091:  /* expandv8hi_mask */
   10039       487794 :     case 10090:  /* expandv16hi_mask */
   10040       487794 :     case 10089:  /* expandv32hi_mask */
   10041       487794 :     case 10088:  /* expandv32qi_mask */
   10042       487794 :     case 10087:  /* expandv16qi_mask */
   10043       487794 :     case 10086:  /* expandv64qi_mask */
   10044       487794 :     case 10085:  /* expandv2df_mask */
   10045       487794 :     case 10084:  /* expandv2di_mask */
   10046       487794 :     case 10083:  /* expandv4sf_mask */
   10047       487794 :     case 10082:  /* expandv4si_mask */
   10048       487794 :     case 10081:  /* expandv4df_mask */
   10049       487794 :     case 10080:  /* expandv4di_mask */
   10050       487794 :     case 10079:  /* expandv8sf_mask */
   10051       487794 :     case 10078:  /* expandv8si_mask */
   10052       487794 :     case 10077:  /* expandv8df_mask */
   10053       487794 :     case 10076:  /* expandv8di_mask */
   10054       487794 :     case 10075:  /* expandv16sf_mask */
   10055       487794 :     case 10074:  /* expandv16si_mask */
   10056       487794 :     case 10055:  /* compressv8hi_mask */
   10057       487794 :     case 10054:  /* compressv16hi_mask */
   10058       487794 :     case 10053:  /* compressv32hi_mask */
   10059       487794 :     case 10052:  /* compressv32qi_mask */
   10060       487794 :     case 10051:  /* compressv16qi_mask */
   10061       487794 :     case 10050:  /* compressv64qi_mask */
   10062       487794 :     case 10049:  /* avx512vl_compressv2df_mask */
   10063       487794 :     case 10048:  /* avx512vl_compressv2di_mask */
   10064       487794 :     case 10047:  /* avx512vl_compressv4sf_mask */
   10065       487794 :     case 10046:  /* avx512vl_compressv4si_mask */
   10066       487794 :     case 10045:  /* avx512vl_compressv4df_mask */
   10067       487794 :     case 10044:  /* avx512vl_compressv4di_mask */
   10068       487794 :     case 10043:  /* avx512vl_compressv8sf_mask */
   10069       487794 :     case 10042:  /* avx512vl_compressv8si_mask */
   10070       487794 :     case 10041:  /* avx512f_compressv8df_mask */
   10071       487794 :     case 10040:  /* avx512f_compressv8di_mask */
   10072       487794 :     case 10039:  /* avx512f_compressv16sf_mask */
   10073       487794 :     case 10038:  /* avx512f_compressv16si_mask */
   10074       487794 :     case 9602:  /* *avx_vperm2f128v4df_full */
   10075       487794 :     case 9601:  /* *avx_vperm2f128v8sf_full */
   10076       487794 :     case 9600:  /* *avx_vperm2f128v8si_full */
   10077       487794 :     case 9580:  /* avx512vl_vpermt2varv8bf3 */
   10078       487794 :     case 9578:  /* avx512vl_vpermt2varv16bf3 */
   10079       487794 :     case 9576:  /* avx512bw_vpermt2varv32bf3 */
   10080       487794 :     case 9574:  /* avx512fp16_vpermt2varv8hf3 */
   10081       487794 :     case 9572:  /* avx512vl_vpermt2varv16hf3 */
   10082       487794 :     case 9570:  /* avx512bw_vpermt2varv32hf3 */
   10083       487794 :     case 9568:  /* avx512vl_vpermt2varv16qi3 */
   10084       487794 :     case 9566:  /* avx512vl_vpermt2varv32qi3 */
   10085       487794 :     case 9564:  /* avx512bw_vpermt2varv64qi3 */
   10086       487794 :     case 9562:  /* avx512vl_vpermt2varv8hi3 */
   10087       487794 :     case 9560:  /* avx512vl_vpermt2varv16hi3 */
   10088       487794 :     case 9558:  /* avx512bw_vpermt2varv32hi3 */
   10089       487794 :     case 9556:  /* avx512vl_vpermt2varv2df3 */
   10090       487794 :     case 9554:  /* avx512vl_vpermt2varv2di3 */
   10091       487794 :     case 9552:  /* avx512vl_vpermt2varv4sf3 */
   10092       487794 :     case 9550:  /* avx512vl_vpermt2varv4si3 */
   10093       487794 :     case 9548:  /* avx512vl_vpermt2varv4df3 */
   10094       487794 :     case 9546:  /* avx512vl_vpermt2varv4di3 */
   10095       487794 :     case 9544:  /* avx512vl_vpermt2varv8sf3 */
   10096       487794 :     case 9542:  /* avx512vl_vpermt2varv8si3 */
   10097       487794 :     case 9540:  /* avx512f_vpermt2varv8df3 */
   10098       487794 :     case 9538:  /* avx512f_vpermt2varv8di3 */
   10099       487794 :     case 9536:  /* avx512f_vpermt2varv16sf3 */
   10100       487794 :     case 9534:  /* avx512f_vpermt2varv16si3 */
   10101       487794 :     case 9322:  /* avx2_permv2ti */
   10102       487794 :     case 9220:  /* pclmulqdq */
   10103       487794 :     case 9209:  /* xop_pcom_tfv2di3 */
   10104       487794 :     case 9208:  /* xop_pcom_tfv4si3 */
   10105       487794 :     case 9207:  /* xop_pcom_tfv8hi3 */
   10106       487794 :     case 9206:  /* xop_pcom_tfv16qi3 */
   10107       487794 :     case 9161:  /* xop_pperm */
   10108       487794 :     case 8858:  /* sse4_1_pblendvb */
   10109       487794 :     case 8857:  /* avx2_pblendvb */
   10110       487794 :     case 8849:  /* *sse4_1_mpsadbw */
   10111       487794 :     case 8847:  /* *avx2_mpsadbw */
   10112       487794 :     case 8845:  /* avx10_2_mpsadbw */
   10113       487794 :     case 8844:  /* sse4_1_mpsadbw */
   10114       487794 :     case 8843:  /* avx2_mpsadbw */
   10115       487794 :     case 8839:  /* sse4_1_dppd */
   10116       487794 :     case 8838:  /* avx_dppd256 */
   10117       487794 :     case 8837:  /* sse4_1_dpps */
   10118       487794 :     case 8836:  /* avx_dpps256 */
   10119       487794 :     case 8811:  /* sse4_1_blendvsd */
   10120       487794 :     case 8810:  /* sse4_1_blendvss */
   10121       487794 :     case 8809:  /* sse4_1_blendvpd */
   10122       487794 :     case 8808:  /* avx_blendvpd256 */
   10123       487794 :     case 8807:  /* sse4_1_blendvps */
   10124       487794 :     case 8806:  /* avx_blendvps256 */
   10125       487794 :     case 8798:  /* sse4a_extrqi */
   10126       487794 :     case 8769:  /* ssse3_palignrdi */
   10127       487794 :     case 8768:  /* ssse3_palignrv1ti */
   10128       487794 :     case 8767:  /* avx2_palignrv2ti */
   10129       487794 :     case 8766:  /* avx512bw_palignrv4ti */
   10130       487794 :     case 7167:  /* *avx512vl_alignv2di */
   10131       487794 :     case 7165:  /* *avx512vl_alignv4di */
   10132       487794 :     case 7163:  /* *avx512f_alignv8di */
   10133       487794 :     case 7161:  /* *avx512vl_alignv4si */
   10134       487794 :     case 7159:  /* *avx512vl_alignv8si */
   10135       487794 :     case 7157:  /* *avx512f_alignv16si */
   10136       487794 :     case 4404:  /* fma_fcmaddc_v4sf_pair */
   10137       487794 :     case 4403:  /* fma_fmaddc_v4sf_pair */
   10138       487794 :     case 4402:  /* fma_fcmaddc_v8sf_pair */
   10139       487794 :     case 4401:  /* fma_fmaddc_v8sf_pair */
   10140       487794 :     case 4400:  /* fma_fcmaddc_v16sf_pair */
   10141       487794 :     case 4399:  /* fma_fmaddc_v16sf_pair */
   10142       487794 :     case 4385:  /* fma_fcmaddc_v8hf */
   10143       487794 :     case 4383:  /* fma_fmaddc_v8hf */
   10144       487794 :     case 4381:  /* fma_fcmaddc_v16hf */
   10145       487794 :     case 4379:  /* fma_fmaddc_v16hf */
   10146       487794 :     case 4375:  /* fma_fcmaddc_v32hf */
   10147       487794 :     case 4371:  /* fma_fmaddc_v32hf */
   10148       487794 :     case 4165:  /* *fma_fmaddsub_v2df */
   10149       487794 :     case 4163:  /* *fma_fmaddsub_v4df */
   10150       487794 :     case 4159:  /* *fma_fmaddsub_v8df */
   10151       487794 :     case 4157:  /* *fma_fmaddsub_v4sf */
   10152       487794 :     case 4155:  /* *fma_fmaddsub_v8sf */
   10153       487794 :     case 4151:  /* *fma_fmaddsub_v16sf */
   10154       487794 :     case 4149:  /* *fma_fmaddsub_v8hf */
   10155       487794 :     case 4147:  /* *fma_fmaddsub_v16hf */
   10156       487794 :     case 4143:  /* *fma_fmaddsub_v32hf */
   10157       487794 :     case 4142:  /* *fma_fmaddsub_v2df */
   10158       487794 :     case 4141:  /* *fma_fmaddsub_v4df */
   10159       487794 :     case 4140:  /* *fma_fmaddsub_v4sf */
   10160       487794 :     case 4139:  /* *fma_fmaddsub_v8sf */
   10161       487794 :     case 3681:  /* avx512vl_ucmpv2di3 */
   10162       487794 :     case 3679:  /* avx512vl_ucmpv4di3 */
   10163       487794 :     case 3677:  /* avx512f_ucmpv8di3 */
   10164       487794 :     case 3675:  /* avx512vl_ucmpv4si3 */
   10165       487794 :     case 3673:  /* avx512vl_ucmpv8si3 */
   10166       487794 :     case 3671:  /* avx512f_ucmpv16si3 */
   10167       487794 :     case 3669:  /* avx512vl_ucmpv8hi3 */
   10168       487794 :     case 3667:  /* avx512vl_ucmpv16hi3 */
   10169       487794 :     case 3665:  /* avx512bw_ucmpv32hi3 */
   10170       487794 :     case 3663:  /* avx512vl_ucmpv16qi3 */
   10171       487794 :     case 3661:  /* avx512vl_ucmpv32qi3 */
   10172       487794 :     case 3659:  /* avx512bw_ucmpv64qi3 */
   10173       487794 :     case 3574:  /* *avx512vl_cmpv2di3_dup_op */
   10174       487794 :     case 3573:  /* *avx512vl_cmpv2di3_dup_op */
   10175       487794 :     case 3572:  /* *avx512vl_cmpv4di3_dup_op */
   10176       487794 :     case 3571:  /* *avx512vl_cmpv4di3_dup_op */
   10177       487794 :     case 3570:  /* *avx512f_cmpv8di3_dup_op */
   10178       487794 :     case 3569:  /* *avx512f_cmpv8di3_dup_op */
   10179       487794 :     case 3568:  /* *avx512vl_cmpv4si3_dup_op */
   10180       487794 :     case 3567:  /* *avx512vl_cmpv4si3_dup_op */
   10181       487794 :     case 3566:  /* *avx512vl_cmpv8si3_dup_op */
   10182       487794 :     case 3565:  /* *avx512vl_cmpv8si3_dup_op */
   10183       487794 :     case 3564:  /* *avx512f_cmpv16si3_dup_op */
   10184       487794 :     case 3563:  /* *avx512f_cmpv16si3_dup_op */
   10185       487794 :     case 3562:  /* *avx512vl_cmpv8hi3_dup_op */
   10186       487794 :     case 3561:  /* *avx512vl_cmpv8hi3_dup_op */
   10187       487794 :     case 3560:  /* *avx512vl_cmpv16hi3_dup_op */
   10188       487794 :     case 3559:  /* *avx512vl_cmpv16hi3_dup_op */
   10189       487794 :     case 3558:  /* *avx512bw_cmpv32hi3_dup_op */
   10190       487794 :     case 3557:  /* *avx512bw_cmpv32hi3_dup_op */
   10191       487794 :     case 3556:  /* *avx512vl_cmpv16qi3_dup_op */
   10192       487794 :     case 3555:  /* *avx512vl_cmpv16qi3_dup_op */
   10193       487794 :     case 3554:  /* *avx512vl_cmpv32qi3_dup_op */
   10194       487794 :     case 3553:  /* *avx512vl_cmpv32qi3_dup_op */
   10195       487794 :     case 3552:  /* *avx512bw_cmpv64qi3_dup_op */
   10196       487794 :     case 3551:  /* *avx512bw_cmpv64qi3_dup_op */
   10197       487794 :     case 3501:  /* avx512vl_cmpv2di3 */
   10198       487794 :     case 3499:  /* avx512vl_cmpv4di3 */
   10199       487794 :     case 3497:  /* avx512f_cmpv8di3 */
   10200       487794 :     case 3495:  /* avx512vl_cmpv4si3 */
   10201       487794 :     case 3493:  /* avx512vl_cmpv8si3 */
   10202       487794 :     case 3491:  /* avx512f_cmpv16si3 */
   10203       487794 :     case 3489:  /* avx512vl_cmpv8hi3 */
   10204       487794 :     case 3487:  /* avx512vl_cmpv16hi3 */
   10205       487794 :     case 3485:  /* avx512bw_cmpv32hi3 */
   10206       487794 :     case 3483:  /* avx512vl_cmpv16qi3 */
   10207       487794 :     case 3481:  /* avx512vl_cmpv32qi3 */
   10208       487794 :     case 3479:  /* avx512bw_cmpv64qi3 */
   10209       487794 :     case 3357:  /* avx512vl_cmpv2df3 */
   10210       487794 :     case 3355:  /* avx512vl_cmpv4df3 */
   10211       487794 :     case 3351:  /* avx512f_cmpv8df3 */
   10212       487794 :     case 3349:  /* avx512vl_cmpv4sf3 */
   10213       487794 :     case 3347:  /* avx512vl_cmpv8sf3 */
   10214       487794 :     case 3343:  /* avx512f_cmpv16sf3 */
   10215       487794 :     case 3341:  /* avx512fp16_cmpv8hf3 */
   10216       487794 :     case 3339:  /* avx512vl_cmpv16hf3 */
   10217       487794 :     case 3335:  /* avx512bw_cmpv32hf3 */
   10218       487794 :     case 3290:  /* avx_cmpv2df3 */
   10219       487794 :     case 3289:  /* avx_cmpv4df3 */
   10220       487794 :     case 3288:  /* avx_cmpv4sf3 */
   10221       487794 :     case 3287:  /* avx_cmpv8sf3 */
   10222       487794 :     case 2321:  /* mmx_ppermv32 */
   10223       487794 :     case 2320:  /* mmx_ppermv64 */
   10224       487794 :     case 2304:  /* mmx_pblendvb_v2hi */
   10225       487794 :     case 2303:  /* mmx_pblendvb_v2qi */
   10226       487794 :     case 2302:  /* mmx_pblendvb_v4qi */
   10227       487794 :     case 2298:  /* mmx_pblendvb_v8qi */
   10228       487794 :     case 2132:  /* mmx_blendvps */
   10229       487794 :     case 1844:  /* movhf_mask */
   10230       487794 :     case 1489:  /* setcc_hf_mask */
   10231       487794 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10232       487794 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
   10233       487794 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
   10234       487794 :       ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (pat, 1), 0, 2));
   10235       487794 :       break;
   10236              : 
   10237     13462602 :     case 3332:  /* sse2_maskcmpv2df3 */
   10238     13462602 :     case 3331:  /* avx_maskcmpv4df3 */
   10239     13462602 :     case 3330:  /* sse_maskcmpv4sf3 */
   10240     13462602 :     case 3329:  /* avx_maskcmpv8sf3 */
   10241     13462602 :     case 3328:  /* *sse2_imaskcmpv2df3_comm */
   10242     13462602 :     case 3327:  /* *avx_imaskcmpv4df3_comm */
   10243     13462602 :     case 3326:  /* *sse_imaskcmpv4sf3_comm */
   10244     13462602 :     case 3325:  /* *avx_imaskcmpv8sf3_comm */
   10245     13462602 :     case 3324:  /* *sse2_maskcmpv2df3_comm */
   10246     13462602 :     case 3323:  /* *avx_maskcmpv4df3_comm */
   10247     13462602 :     case 3322:  /* *sse_maskcmpv4sf3_comm */
   10248     13462602 :     case 3321:  /* *avx_maskcmpv8sf3_comm */
   10249     13462602 :     case 1719:  /* *fop_df_1 */
   10250     13462602 :     case 1718:  /* *fop_sf_1 */
   10251     13462602 :     case 1717:  /* *fop_xf_1_i387 */
   10252     13462602 :     case 1710:  /* *fop_df_comm */
   10253     13462602 :     case 1709:  /* *fop_sf_comm */
   10254     13462602 :     case 1708:  /* *fop_xf_comm_i387 */
   10255     13462602 :     case 1488:  /* setcc_df_sse */
   10256     13462602 :     case 1487:  /* setcc_sf_sse */
   10257     13462602 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10258     13462602 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
   10259     13462602 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
   10260     13462602 :       ro[3] = *(ro_loc[3] = &XEXP (pat, 1));
   10261     13462602 :       break;
   10262              : 
   10263          712 :     case 1475:  /* *btdi_setcdi_mask */
   10264          712 :     case 1474:  /* *btsi_setcsi_mask */
   10265          712 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10266          712 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10267          712 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2), 0), 0));
   10268          712 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2), 0), 1));
   10269          712 :       break;
   10270              : 
   10271          249 :     case 1473:  /* *btdi_setncqi_2 */
   10272          249 :     case 1472:  /* *btsi_setncqi_2 */
   10273          249 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10274          249 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10275          249 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 2));
   10276          249 :       break;
   10277              : 
   10278           54 :     case 1471:  /* *btdi_setncdi */
   10279           54 :     case 1470:  /* *btsi_setncsi */
   10280           54 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10281           54 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   10282           54 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   10283           54 :       break;
   10284              : 
   10285           77 :     case 1469:  /* *btdi_setncqi */
   10286           77 :     case 1468:  /* *btsi_setncqi */
   10287           77 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10288           77 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   10289           77 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 1));
   10290           77 :       break;
   10291              : 
   10292         5271 :     case 1467:  /* *btdi_setcqi */
   10293         5271 :     case 1466:  /* *btsi_setcqi */
   10294         5271 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   10295         5271 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10296         5271 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2));
   10297         5271 :       break;
   10298              : 
   10299           15 :     case 1465:  /* *cmov_btdi */
   10300           15 :     case 1464:  /* *cmov_btdi */
   10301           15 :     case 1463:  /* *cmov_btsi */
   10302           15 :     case 1462:  /* *cmov_btsi */
   10303           15 :     case 1461:  /* *cmov_bthi */
   10304           15 :     case 1460:  /* *cmov_bthi */
   10305           15 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10306           15 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   10307           15 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 2));
   10308           15 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10309           15 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2));
   10310           15 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10311           15 :       break;
   10312              : 
   10313          408 :     case 1459:  /* *jcc_btdi_mask_1 */
   10314          408 :     case 1458:  /* *jcc_btsi_mask_1 */
   10315          408 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10316          408 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   10317          408 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 2), 0), 0));
   10318          408 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 2), 0), 1));
   10319          408 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10320          408 :       break;
   10321              : 
   10322           12 :     case 1457:  /* *jcc_btdi_mask */
   10323           12 :     case 1456:  /* *jcc_btsi_mask */
   10324           12 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10325           12 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   10326           12 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 2), 0));
   10327           12 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 2), 1));
   10328           12 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10329           12 :       break;
   10330              : 
   10331        10841 :     case 1455:  /* *jcc_btdi */
   10332        10841 :     case 1454:  /* *jcc_btsi */
   10333        10841 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10334        10841 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   10335        10841 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 2));
   10336        10841 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10337        10841 :       break;
   10338              : 
   10339            0 :     case 1453:  /* *btdi_mask */
   10340            0 :     case 1452:  /* *btsi_mask */
   10341            0 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   10342            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 2), 0), 0));
   10343            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 2), 0), 1));
   10344            0 :       break;
   10345              : 
   10346        98171 :     case 1451:  /* *btdi */
   10347        98171 :     case 1450:  /* *btsi */
   10348        98171 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   10349        98171 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 2));
   10350        98171 :       break;
   10351              : 
   10352        24546 :     case 1449:  /* *btcq_imm */
   10353        24546 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   10354        24546 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 2));
   10355        24546 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0);
   10356        24546 :       recog_data.dup_num[0] = 0;
   10357        24546 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 2);
   10358        24546 :       recog_data.dup_num[1] = 1;
   10359        24546 :       break;
   10360              : 
   10361        21275 :     case 1448:  /* *btrq_imm */
   10362        21275 :     case 1447:  /* *btsq_imm */
   10363        21275 :     case 1446:  /* *btrhi_2 */
   10364        21275 :     case 1445:  /* *btrqi_2 */
   10365        21275 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   10366        21275 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 2));
   10367        21275 :       break;
   10368              : 
   10369          234 :     case 1631:  /* *bmi2_bzhi_di3_3 */
   10370          234 :     case 1630:  /* *bmi2_bzhi_si3_3 */
   10371          234 :     case 1629:  /* *bmi2_bzhi_di3_2 */
   10372          234 :     case 1628:  /* *bmi2_bzhi_si3_2 */
   10373          234 :     case 1444:  /* *btrhi_1 */
   10374          234 :     case 1443:  /* *btrqi_1 */
   10375          234 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10376          234 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10377          234 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   10378          234 :       break;
   10379              : 
   10380            6 :     case 1442:  /* *btrdi_mask_1 */
   10381            6 :     case 1441:  /* *btrsi_mask_1 */
   10382            6 :     case 1436:  /* *btcdi_mask_1 */
   10383            6 :     case 1435:  /* *btsdi_mask_1 */
   10384            6 :     case 1434:  /* *btcsi_mask_1 */
   10385            6 :     case 1433:  /* *btssi_mask_1 */
   10386            6 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10387            6 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   10388            6 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 1));
   10389            6 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10390            6 :       break;
   10391              : 
   10392           30 :     case 1440:  /* *btrdi_mask */
   10393           30 :     case 1439:  /* *btrsi_mask */
   10394           30 :     case 1432:  /* *btcdi_mask */
   10395           30 :     case 1431:  /* *btsdi_mask */
   10396           30 :     case 1430:  /* *btcsi_mask */
   10397           30 :     case 1429:  /* *btssi_mask */
   10398           30 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10399           30 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0), 0));
   10400           30 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0), 1));
   10401           30 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10402           30 :       break;
   10403              : 
   10404         5084 :     case 1438:  /* *btrdi */
   10405         5084 :     case 1437:  /* *btrsi */
   10406         5084 :     case 1428:  /* *btcdi */
   10407         5084 :     case 1427:  /* *btsdi */
   10408         5084 :     case 1426:  /* *btcsi */
   10409         5084 :     case 1425:  /* *btssi */
   10410         5084 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10411         5084 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10412         5084 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10413         5084 :       break;
   10414              : 
   10415           12 :     case 1424:  /* ashrdi3_carry */
   10416           12 :     case 1423:  /* lshrdi3_carry */
   10417           12 :     case 1422:  /* ashrsi3_carry */
   10418           12 :     case 1421:  /* lshrsi3_carry */
   10419           12 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10420           12 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0), 0));
   10421           12 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   10422           12 :       recog_data.dup_num[0] = 1;
   10423           12 :       break;
   10424              : 
   10425         1082 :     case 1369:  /* ix86_rotrti3_doubleword */
   10426         1082 :     case 1368:  /* ix86_rotrdi3_doubleword */
   10427         1082 :     case 1367:  /* ix86_rotlti3_doubleword */
   10428         1082 :     case 1366:  /* ix86_rotldi3_doubleword */
   10429         1082 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10430         1082 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10431         1082 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10432         1082 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
   10433         1082 :       break;
   10434              : 
   10435        42273 :     case 1315:  /* *extendti2_doubleword_highpart */
   10436        42273 :     case 1314:  /* *extenddi2_doubleword_highpart */
   10437        42273 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10438        42273 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10439        42273 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10440        42273 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   10441        42273 :       break;
   10442              : 
   10443         2983 :     case 1365:  /* *rotrdi3_sub_1 */
   10444         2983 :     case 1364:  /* *rotldi3_sub_1 */
   10445         2983 :     case 1363:  /* *rotrsi3_sub_1 */
   10446         2983 :     case 1362:  /* *rotlsi3_sub_1 */
   10447         2983 :     case 1361:  /* *rotrhi3_sub_1 */
   10448         2983 :     case 1360:  /* *rotlhi3_sub_1 */
   10449         2983 :     case 1359:  /* *rotrqi3_sub_1 */
   10450         2983 :     case 1358:  /* *rotlqi3_sub_1 */
   10451         2983 :     case 1313:  /* *ashrdi3_sub_1 */
   10452         2983 :     case 1312:  /* *lshrdi3_sub_1 */
   10453         2983 :     case 1311:  /* *ashldi3_sub_1 */
   10454         2983 :     case 1310:  /* *ashrsi3_sub_1 */
   10455         2983 :     case 1309:  /* *lshrsi3_sub_1 */
   10456         2983 :     case 1308:  /* *ashlsi3_sub_1 */
   10457         2983 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10458         2983 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10459         2983 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1));
   10460         2983 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10461         2983 :       break;
   10462              : 
   10463            0 :     case 1357:  /* *rotrdi3_sub */
   10464            0 :     case 1356:  /* *rotldi3_sub */
   10465            0 :     case 1355:  /* *rotrsi3_sub */
   10466            0 :     case 1354:  /* *rotlsi3_sub */
   10467            0 :     case 1353:  /* *rotrhi3_sub */
   10468            0 :     case 1352:  /* *rotlhi3_sub */
   10469            0 :     case 1351:  /* *rotrqi3_sub */
   10470            0 :     case 1350:  /* *rotlqi3_sub */
   10471            0 :     case 1307:  /* *ashrdi3_sub */
   10472            0 :     case 1306:  /* *lshrdi3_sub */
   10473            0 :     case 1305:  /* *ashldi3_sub */
   10474            0 :     case 1304:  /* *ashrsi3_sub */
   10475            0 :     case 1303:  /* *lshrsi3_sub */
   10476            0 :     case 1302:  /* *ashlsi3_sub */
   10477            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10478            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10479            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   10480            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   10481            0 :       break;
   10482              : 
   10483            0 :     case 1187:  /* *x86_64_shrd_ndd_2 */
   10484            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10485            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10486            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10487            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10488            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 1);
   10489            0 :       recog_data.dup_num[0] = 2;
   10490            0 :       break;
   10491              : 
   10492            3 :     case 1199:  /* *x86_shrd_ndd_2 */
   10493            3 :     case 1119:  /* *x86_shld_ndd_2 */
   10494            3 :     case 1107:  /* *x86_64_shld_ndd_2 */
   10495            3 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10496            3 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10497            3 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10498            3 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10499            3 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 1);
   10500            3 :       recog_data.dup_num[0] = 3;
   10501            3 :       break;
   10502              : 
   10503            0 :     case 1198:  /* *x86_shrd_2 */
   10504            0 :     case 1186:  /* *x86_64_shrd_2 */
   10505            0 :     case 1118:  /* *x86_shld_2 */
   10506            0 :     case 1106:  /* *x86_64_shld_2 */
   10507            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10508            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10509            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10510            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0);
   10511            0 :       recog_data.dup_num[0] = 0;
   10512            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 1);
   10513            0 :       recog_data.dup_num[1] = 2;
   10514            0 :       break;
   10515              : 
   10516         3212 :     case 1197:  /* *x86_shrd_shld_1_nozext */
   10517         3212 :     case 1185:  /* *x86_64_shrd_shld_1_nozext */
   10518         3212 :     case 1117:  /* *x86_shld_shrd_1_nozext */
   10519         3212 :     case 1105:  /* *x86_64_shld_shrd_1_nozext */
   10520         3212 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10521         3212 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10522         3212 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10523         3212 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1));
   10524         3212 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10525         3212 :       break;
   10526              : 
   10527            0 :     case 1196:  /* *x86_shrd_shld_1_nozext_nf */
   10528            0 :     case 1184:  /* *x86_64_shrd_shld_1_nozext_nf */
   10529            0 :     case 1116:  /* *x86_shld_shrd_1_nozext_nf */
   10530            0 :     case 1104:  /* *x86_64_shld_shrd_1_nozext_nf */
   10531            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10532            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   10533            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   10534            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 1));
   10535            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   10536            0 :       break;
   10537              : 
   10538          112 :     case 1195:  /* x86_shrd_ndd_1 */
   10539          112 :     case 1183:  /* x86_64_shrd_ndd_1 */
   10540          112 :     case 1115:  /* x86_shld_ndd_1 */
   10541          112 :     case 1103:  /* x86_64_shld_ndd_1 */
   10542          112 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10543          112 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10544          112 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0));
   10545          112 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10546          112 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   10547          112 :       break;
   10548              : 
   10549            0 :     case 1194:  /* x86_shrd_ndd_1_nf */
   10550            0 :     case 1182:  /* x86_64_shrd_ndd_1_nf */
   10551            0 :     case 1114:  /* x86_shld_ndd_1_nf */
   10552            0 :     case 1102:  /* x86_64_shld_ndd_1_nf */
   10553            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10554            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   10555            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0));
   10556            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   10557            0 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1));
   10558            0 :       break;
   10559              : 
   10560        15514 :     case 1193:  /* x86_shrd_1 */
   10561        15514 :     case 1181:  /* x86_64_shrd_1 */
   10562        15514 :     case 1113:  /* x86_shld_1 */
   10563        15514 :     case 1101:  /* x86_64_shld_1 */
   10564        15514 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10565        15514 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0));
   10566        15514 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   10567        15514 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   10568        15514 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0);
   10569        15514 :       recog_data.dup_num[0] = 0;
   10570        15514 :       break;
   10571              : 
   10572            7 :     case 1192:  /* x86_shrd_1_nf */
   10573            7 :     case 1180:  /* x86_64_shrd_1_nf */
   10574            7 :     case 1112:  /* x86_shld_1_nf */
   10575            7 :     case 1100:  /* x86_64_shld_1_nf */
   10576            7 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10577            7 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0));
   10578            7 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   10579            7 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1));
   10580            7 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 0);
   10581            7 :       recog_data.dup_num[0] = 0;
   10582            7 :       break;
   10583              : 
   10584           45 :     case 1191:  /* x86_shrd_ndd */
   10585           45 :     case 1179:  /* x86_64_shrd_ndd */
   10586           45 :     case 1111:  /* x86_shld_ndd */
   10587           45 :     case 1099:  /* x86_64_shld_ndd */
   10588           45 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10589           45 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10590           45 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0));
   10591           45 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   10592           45 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1), 1), 0);
   10593           45 :       recog_data.dup_num[0] = 3;
   10594           45 :       break;
   10595              : 
   10596            0 :     case 1190:  /* x86_shrd_ndd_nf */
   10597            0 :     case 1178:  /* x86_64_shrd_ndd_nf */
   10598            0 :     case 1110:  /* x86_shld_ndd_nf */
   10599            0 :     case 1098:  /* x86_64_shld_ndd_nf */
   10600            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10601            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   10602            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0));
   10603            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
   10604            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 1), 0);
   10605            0 :       recog_data.dup_num[0] = 3;
   10606            0 :       break;
   10607              : 
   10608        89309 :     case 1189:  /* x86_shrd */
   10609        89309 :     case 1177:  /* x86_64_shrd */
   10610        89309 :     case 1109:  /* x86_shld */
   10611        89309 :     case 1097:  /* x86_64_shld */
   10612        89309 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10613        89309 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0));
   10614        89309 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   10615        89309 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0);
   10616        89309 :       recog_data.dup_num[0] = 0;
   10617        89309 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1), 1), 0);
   10618        89309 :       recog_data.dup_num[1] = 2;
   10619        89309 :       break;
   10620              : 
   10621            0 :     case 1188:  /* x86_shrd_nf */
   10622            0 :     case 1176:  /* x86_64_shrd_nf */
   10623            0 :     case 1108:  /* x86_shld_nf */
   10624            0 :     case 1096:  /* x86_64_shld_nf */
   10625            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10626            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0));
   10627            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
   10628            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 0);
   10629            0 :       recog_data.dup_num[0] = 0;
   10630            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1), 1), 0);
   10631            0 :       recog_data.dup_num[1] = 2;
   10632            0 :       break;
   10633              : 
   10634         4166 :     case 1349:  /* *rotrdi3_add_1 */
   10635         4166 :     case 1348:  /* *rotldi3_add_1 */
   10636         4166 :     case 1347:  /* *rotrsi3_add_1 */
   10637         4166 :     case 1346:  /* *rotlsi3_add_1 */
   10638         4166 :     case 1345:  /* *rotrhi3_add_1 */
   10639         4166 :     case 1344:  /* *rotlhi3_add_1 */
   10640         4166 :     case 1343:  /* *rotrqi3_add_1 */
   10641         4166 :     case 1342:  /* *rotlqi3_add_1 */
   10642         4166 :     case 1333:  /* *rotrdi3_mask_1 */
   10643         4166 :     case 1332:  /* *rotldi3_mask_1 */
   10644         4166 :     case 1331:  /* *rotrsi3_mask_1 */
   10645         4166 :     case 1330:  /* *rotlsi3_mask_1 */
   10646         4166 :     case 1329:  /* *rotrhi3_mask_1 */
   10647         4166 :     case 1328:  /* *rotlhi3_mask_1 */
   10648         4166 :     case 1327:  /* *rotrqi3_mask_1 */
   10649         4166 :     case 1326:  /* *rotlqi3_mask_1 */
   10650         4166 :     case 1301:  /* *ashrdi3_add_1 */
   10651         4166 :     case 1300:  /* *lshrdi3_add_1 */
   10652         4166 :     case 1299:  /* *ashldi3_add_1 */
   10653         4166 :     case 1298:  /* *ashrsi3_add_1 */
   10654         4166 :     case 1297:  /* *lshrsi3_add_1 */
   10655         4166 :     case 1296:  /* *ashlsi3_add_1 */
   10656         4166 :     case 1289:  /* *ashrdi3_mask_1 */
   10657         4166 :     case 1288:  /* *lshrdi3_mask_1 */
   10658         4166 :     case 1287:  /* *ashldi3_mask_1 */
   10659         4166 :     case 1286:  /* *ashrsi3_mask_1 */
   10660         4166 :     case 1285:  /* *lshrsi3_mask_1 */
   10661         4166 :     case 1284:  /* *ashlsi3_mask_1 */
   10662         4166 :     case 1163:  /* *ashrti3_doubleword_mask_1 */
   10663         4166 :     case 1162:  /* *lshrti3_doubleword_mask_1 */
   10664         4166 :     case 1161:  /* *ashrdi3_doubleword_mask_1 */
   10665         4166 :     case 1160:  /* *lshrdi3_doubleword_mask_1 */
   10666         4166 :     case 1089:  /* *ashlti3_doubleword_mask_1 */
   10667         4166 :     case 1088:  /* *ashldi3_doubleword_mask_1 */
   10668         4166 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10669         4166 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10670         4166 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   10671         4166 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1));
   10672         4166 :       break;
   10673              : 
   10674        32579 :     case 1341:  /* *rotrdi3_add */
   10675        32579 :     case 1340:  /* *rotldi3_add */
   10676        32579 :     case 1339:  /* *rotrsi3_add */
   10677        32579 :     case 1338:  /* *rotlsi3_add */
   10678        32579 :     case 1337:  /* *rotrhi3_add */
   10679        32579 :     case 1336:  /* *rotlhi3_add */
   10680        32579 :     case 1335:  /* *rotrqi3_add */
   10681        32579 :     case 1334:  /* *rotlqi3_add */
   10682        32579 :     case 1325:  /* *rotrdi3_mask */
   10683        32579 :     case 1324:  /* *rotldi3_mask */
   10684        32579 :     case 1323:  /* *rotrsi3_mask */
   10685        32579 :     case 1322:  /* *rotlsi3_mask */
   10686        32579 :     case 1321:  /* *rotrhi3_mask */
   10687        32579 :     case 1320:  /* *rotlhi3_mask */
   10688        32579 :     case 1319:  /* *rotrqi3_mask */
   10689        32579 :     case 1318:  /* *rotlqi3_mask */
   10690        32579 :     case 1295:  /* *ashrdi3_add */
   10691        32579 :     case 1294:  /* *lshrdi3_add */
   10692        32579 :     case 1293:  /* *ashldi3_add */
   10693        32579 :     case 1292:  /* *ashrsi3_add */
   10694        32579 :     case 1291:  /* *lshrsi3_add */
   10695        32579 :     case 1290:  /* *ashlsi3_add */
   10696        32579 :     case 1283:  /* *ashrdi3_mask */
   10697        32579 :     case 1282:  /* *lshrdi3_mask */
   10698        32579 :     case 1281:  /* *ashldi3_mask */
   10699        32579 :     case 1280:  /* *ashrsi3_mask */
   10700        32579 :     case 1279:  /* *lshrsi3_mask */
   10701        32579 :     case 1278:  /* *ashlsi3_mask */
   10702        32579 :     case 1159:  /* *ashrti3_doubleword_mask */
   10703        32579 :     case 1158:  /* *lshrti3_doubleword_mask */
   10704        32579 :     case 1157:  /* *ashrdi3_doubleword_mask */
   10705        32579 :     case 1156:  /* *lshrdi3_doubleword_mask */
   10706        32579 :     case 1087:  /* *ashlti3_doubleword_mask */
   10707        32579 :     case 1086:  /* *ashldi3_doubleword_mask */
   10708        32579 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10709        32579 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10710        32579 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   10711        32579 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   10712        32579 :       break;
   10713              : 
   10714           16 :     case 2754:  /* *nabsv2df2 */
   10715           16 :     case 2753:  /* *nabsv4df2 */
   10716           16 :     case 2752:  /* *nabsv8df2 */
   10717           16 :     case 2751:  /* *nabsv4sf2 */
   10718           16 :     case 2750:  /* *nabsv8sf2 */
   10719           16 :     case 2749:  /* *nabsv16sf2 */
   10720           16 :     case 2163:  /* *mmx_nabsv4hf2 */
   10721           16 :     case 2162:  /* *mmx_nabsv2hf2 */
   10722           16 :     case 2161:  /* *mmx_nabsv4bf2 */
   10723           16 :     case 2160:  /* *mmx_nabsv2bf2 */
   10724           16 :     case 2108:  /* *mmx_nabsv2sf2 */
   10725           16 :     case 1057:  /* *nabsdf2_1 */
   10726           16 :     case 1056:  /* *nabssf2_1 */
   10727           16 :     case 1043:  /* *nabstf2_1 */
   10728           16 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10729           16 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10730           16 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10731           16 :       break;
   10732              : 
   10733        16748 :     case 1028:  /* *negvdi3 */
   10734        16748 :     case 1027:  /* *negvsi3 */
   10735        16748 :     case 1026:  /* *negvhi3 */
   10736        16748 :     case 1025:  /* *negvqi3 */
   10737        16748 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10738        16748 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
   10739        16748 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
   10740        16748 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   10741        16748 :       recog_data.dup_num[0] = 1;
   10742        16748 :       break;
   10743              : 
   10744          162 :     case 1024:  /* *negqi_extdi_1 */
   10745          162 :     case 1023:  /* *negqi_extsi_1 */
   10746          162 :     case 1022:  /* *negqi_exthi_1 */
   10747          162 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   10748          162 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   10749          162 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   10750          162 :       break;
   10751              : 
   10752        32036 :     case 1021:  /* *negdi_ccc_2 */
   10753        32036 :     case 1020:  /* *negsi_ccc_2 */
   10754        32036 :     case 1019:  /* *neghi_ccc_2 */
   10755        32036 :     case 1018:  /* *negqi_ccc_2 */
   10756        32036 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10757        32036 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
   10758        32036 :       break;
   10759              : 
   10760        29123 :     case 1017:  /* *negdi_ccc_1 */
   10761        29123 :     case 1016:  /* *negsi_ccc_1 */
   10762        29123 :     case 1015:  /* *neghi_ccc_1 */
   10763        29123 :     case 1014:  /* *negqi_ccc_1 */
   10764        29123 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10765        29123 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
   10766        29123 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   10767        29123 :       recog_data.dup_num[0] = 1;
   10768        29123 :       break;
   10769              : 
   10770            0 :     case 1082:  /* *one_cmplsi2_2_zext */
   10771            0 :     case 1013:  /* *negsi_2_zext */
   10772            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10773            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10774            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   10775            0 :       recog_data.dup_num[0] = 1;
   10776            0 :       break;
   10777              : 
   10778       123760 :     case 1081:  /* *one_cmpldi2_2 */
   10779       123760 :     case 1080:  /* *one_cmplsi2_2 */
   10780       123760 :     case 1079:  /* *one_cmplhi2_2 */
   10781       123760 :     case 1078:  /* *one_cmplqi2_2 */
   10782       123760 :     case 1012:  /* *negdi_2 */
   10783       123760 :     case 1011:  /* *negsi_2 */
   10784       123760 :     case 1010:  /* *neghi_2 */
   10785       123760 :     case 1009:  /* *negqi_2 */
   10786       123760 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   10787       123760 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10788       123760 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   10789       123760 :       recog_data.dup_num[0] = 1;
   10790       123760 :       break;
   10791              : 
   10792        36037 :     case 1213:  /* *highpartdisi2 */
   10793        36037 :     case 1008:  /* *neghi_1_slp */
   10794        36037 :     case 1007:  /* *negqi_1_slp */
   10795        36037 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   10796        36037 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   10797        36037 :       break;
   10798              : 
   10799         7569 :     case 9503:  /* avx512cd_maskw_vec_dupv4si */
   10800         7569 :     case 9502:  /* avx512cd_maskw_vec_dupv8si */
   10801         7569 :     case 9501:  /* avx512cd_maskw_vec_dupv16si */
   10802         7569 :     case 9500:  /* avx512cd_maskb_vec_dupv2di */
   10803         7569 :     case 9499:  /* avx512cd_maskb_vec_dupv4di */
   10804         7569 :     case 9498:  /* avx512cd_maskb_vec_dupv8di */
   10805         7569 :     case 2668:  /* *knotsi_1_zext */
   10806         7569 :     case 1671:  /* *popcounthi2_2 */
   10807         7569 :     case 1670:  /* *popcounthi2_1 */
   10808         7569 :     case 1668:  /* *popcountsi2_zext_2 */
   10809         7569 :     case 1577:  /* *clzsi2_lzcnt_zext_2 */
   10810         7569 :     case 1553:  /* *ctzsidi2_uext */
   10811         7569 :     case 1552:  /* *ctzsidi2_sext */
   10812         7569 :     case 1420:  /* rcrdi2 */
   10813         7569 :     case 1419:  /* rcrsi2 */
   10814         7569 :     case 1040:  /* *nabsdi2_1 */
   10815         7569 :     case 1039:  /* *nabssi2_1 */
   10816         7569 :     case 1038:  /* *nabshi2_1 */
   10817         7569 :     case 1037:  /* *nabsqi2_1 */
   10818         7569 :     case 1032:  /* *nabsti2_doubleword */
   10819         7569 :     case 1031:  /* *nabsdi2_doubleword */
   10820         7569 :     case 1006:  /* *negsi_1_zext */
   10821         7569 :     case 1005:  /* *neghi_1_zextdi */
   10822         7569 :     case 1003:  /* *neghi_1_zextsi */
   10823         7569 :     case 1001:  /* *negqi_1_zextdi */
   10824         7569 :     case 999:  /* *negqi_1_zextsi */
   10825         7569 :     case 997:  /* *negqi_1_zexthi */
   10826         7569 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   10827         7569 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   10828         7569 :       break;
   10829              : 
   10830     44140420 :     case 10496:  /* *vcvtneps2bf16_v4sf */
   10831     44140420 :     case 9637:  /* vec_set_hi_v32qi */
   10832     44140420 :     case 9635:  /* vec_set_hi_v16bf */
   10833     44140420 :     case 9634:  /* vec_set_hi_v16hf */
   10834     44140420 :     case 9633:  /* vec_set_hi_v16hi */
   10835     44140420 :     case 9628:  /* vec_set_hi_v8sf */
   10836     44140420 :     case 9626:  /* vec_set_hi_v8si */
   10837     44140420 :     case 9620:  /* vec_set_hi_v4df */
   10838     44140420 :     case 9618:  /* vec_set_hi_v4di */
   10839     44140420 :     case 8534:  /* vec_set_hi_v8di */
   10840     44140420 :     case 8532:  /* vec_set_hi_v8df */
   10841     44140420 :     case 8526:  /* vec_set_hi_v16si */
   10842     44140420 :     case 8524:  /* vec_set_hi_v16sf */
   10843     44140420 :     case 8194:  /* *iornotv2di3 */
   10844     44140420 :     case 8193:  /* *iornotv4di3 */
   10845     44140420 :     case 8192:  /* *iornotv4si3 */
   10846     44140420 :     case 8191:  /* *iornotv8si3 */
   10847     44140420 :     case 8190:  /* *iornotv8hi3 */
   10848     44140420 :     case 8189:  /* *iornotv16hi3 */
   10849     44140420 :     case 8188:  /* *iornotv32hi3 */
   10850     44140420 :     case 8187:  /* *iornotv16qi3 */
   10851     44140420 :     case 8186:  /* *iornotv32qi3 */
   10852     44140420 :     case 8185:  /* *iornotv64qi3 */
   10853     44140420 :     case 8184:  /* *iornotv8di3 */
   10854     44140420 :     case 8183:  /* *iornotv16si3 */
   10855     44140420 :     case 8119:  /* *andnotv2di3 */
   10856     44140420 :     case 8118:  /* *andnotv4di3 */
   10857     44140420 :     case 8117:  /* *andnotv4si3 */
   10858     44140420 :     case 8116:  /* *andnotv8si3 */
   10859     44140420 :     case 8115:  /* *andnotv8hi3 */
   10860     44140420 :     case 8114:  /* *andnotv16hi3 */
   10861     44140420 :     case 8113:  /* *andnotv32hi3 */
   10862     44140420 :     case 8112:  /* *andnotv16qi3 */
   10863     44140420 :     case 8111:  /* *andnotv32qi3 */
   10864     44140420 :     case 8110:  /* *andnotv64qi3 */
   10865     44140420 :     case 8109:  /* *andnotv8di3 */
   10866     44140420 :     case 8108:  /* *andnotv16si3 */
   10867     44140420 :     case 7517:  /* avx512vl_us_truncatev2div2si2 */
   10868     44140420 :     case 7516:  /* avx512vl_truncatev2div2si2 */
   10869     44140420 :     case 7515:  /* avx512vl_ss_truncatev2div2si2 */
   10870     44140420 :     case 7468:  /* avx512vl_us_truncatev4siv4hi2 */
   10871     44140420 :     case 7467:  /* avx512vl_truncatev4siv4hi2 */
   10872     44140420 :     case 7466:  /* avx512vl_ss_truncatev4siv4hi2 */
   10873     44140420 :     case 7465:  /* avx512vl_us_truncatev2div2hi2 */
   10874     44140420 :     case 7464:  /* avx512vl_truncatev2div2hi2 */
   10875     44140420 :     case 7463:  /* avx512vl_ss_truncatev2div2hi2 */
   10876     44140420 :     case 7462:  /* avx512vl_us_truncatev4div4hi2 */
   10877     44140420 :     case 7461:  /* avx512vl_truncatev4div4hi2 */
   10878     44140420 :     case 7460:  /* avx512vl_ss_truncatev4div4hi2 */
   10879     44140420 :     case 7383:  /* avx512vl_us_truncatev8hiv8qi2 */
   10880     44140420 :     case 7382:  /* avx512vl_truncatev8hiv8qi2 */
   10881     44140420 :     case 7381:  /* avx512vl_ss_truncatev8hiv8qi2 */
   10882     44140420 :     case 7380:  /* avx512vl_us_truncatev4siv4qi2 */
   10883     44140420 :     case 7379:  /* avx512vl_truncatev4siv4qi2 */
   10884     44140420 :     case 7378:  /* avx512vl_ss_truncatev4siv4qi2 */
   10885     44140420 :     case 7377:  /* avx512vl_us_truncatev8siv8qi2 */
   10886     44140420 :     case 7376:  /* avx512vl_truncatev8siv8qi2 */
   10887     44140420 :     case 7375:  /* avx512vl_ss_truncatev8siv8qi2 */
   10888     44140420 :     case 7374:  /* avx512vl_us_truncatev2div2qi2 */
   10889     44140420 :     case 7373:  /* avx512vl_truncatev2div2qi2 */
   10890     44140420 :     case 7372:  /* avx512vl_ss_truncatev2div2qi2 */
   10891     44140420 :     case 7371:  /* avx512vl_us_truncatev4div4qi2 */
   10892     44140420 :     case 7370:  /* avx512vl_truncatev4div4qi2 */
   10893     44140420 :     case 7369:  /* avx512vl_ss_truncatev4div4qi2 */
   10894     44140420 :     case 7304:  /* sse2_loadhpd */
   10895     44140420 :     case 5394:  /* sse2_insertps_v4sf_3 */
   10896     44140420 :     case 5335:  /* sse_loadhps */
   10897     44140420 :     case 5242:  /* *sse2_cvtpd2ps */
   10898     44140420 :     case 5068:  /* *avx512dq_floatunsv2div2sf2 */
   10899     44140420 :     case 5067:  /* *avx512dq_floatv2div2sf2 */
   10900     44140420 :     case 4817:  /* *avx512fp16_vcvtpd2ph_v2df */
   10901     44140420 :     case 4812:  /* *avx512fp16_vcvtps2ph_v4sf */
   10902     44140420 :     case 4811:  /* *avx512fp16_vcvtpd2ph_v4df */
   10903     44140420 :     case 4588:  /* *avx512fp16_vcvtuqq2ph_v2di */
   10904     44140420 :     case 4587:  /* *avx512fp16_vcvtqq2ph_v2di */
   10905     44140420 :     case 4578:  /* *avx512fp16_vcvtuqq2ph_v4di */
   10906     44140420 :     case 4577:  /* *avx512fp16_vcvtqq2ph_v4di */
   10907     44140420 :     case 4576:  /* *avx512fp16_vcvtudq2ph_v4si */
   10908     44140420 :     case 4575:  /* *avx512fp16_vcvtdq2ph_v4si */
   10909     44140420 :     case 3863:  /* *andnotv1ti3 */
   10910     44140420 :     case 3862:  /* *andnottf3 */
   10911     44140420 :     case 3861:  /* *andnotdf3 */
   10912     44140420 :     case 3860:  /* *andnotsf3 */
   10913     44140420 :     case 3859:  /* *andnothf3 */
   10914     44140420 :     case 3858:  /* *andnotbf3 */
   10915     44140420 :     case 3790:  /* avx512f_andnotv8df3 */
   10916     44140420 :     case 3788:  /* avx512f_andnotv16sf3 */
   10917     44140420 :     case 3787:  /* avx512fp16_andnotv32hf3 */
   10918     44140420 :     case 3786:  /* avx512bf16_andnotv32bf3 */
   10919     44140420 :     case 3784:  /* sse2_andnotv2df3 */
   10920     44140420 :     case 3782:  /* avx_andnotv4df3 */
   10921     44140420 :     case 3780:  /* sse_andnotv4sf3 */
   10922     44140420 :     case 3778:  /* avx_andnotv8sf3 */
   10923     44140420 :     case 3777:  /* avx512fp16_andnotv8hf3 */
   10924     44140420 :     case 3776:  /* avx512fp16_andnotv16hf3 */
   10925     44140420 :     case 3775:  /* avx512bf16_andnotv8bf3 */
   10926     44140420 :     case 3774:  /* avx512bf16_andnotv16bf3 */
   10927     44140420 :     case 3008:  /* sse2_vmsqrtv2df2 */
   10928     44140420 :     case 3004:  /* sse_vmsqrtv4sf2 */
   10929     44140420 :     case 3000:  /* avx512fp16_vmsqrtv8hf2 */
   10930     44140420 :     case 2618:  /* *sse2_movq128_v2df */
   10931     44140420 :     case 2617:  /* *sse2_movq128_v2di */
   10932     44140420 :     case 2327:  /* mmx_andnotv2si3 */
   10933     44140420 :     case 2326:  /* mmx_andnotv4hi3 */
   10934     44140420 :     case 2325:  /* mmx_andnotv8qi3 */
   10935     44140420 :     case 2167:  /* *mmx_andnotv4hf3 */
   10936     44140420 :     case 2166:  /* *mmx_andnotv2hf3 */
   10937     44140420 :     case 2165:  /* *mmx_andnotv4bf3 */
   10938     44140420 :     case 2164:  /* *mmx_andnotv2bf3 */
   10939     44140420 :     case 2133:  /* *mmx_andnotv2sf3 */
   10940     44140420 :     case 1512:  /* *sibcall_value */
   10941     44140420 :     case 1511:  /* *sibcall_value */
   10942     44140420 :     case 1508:  /* *call_value */
   10943     44140420 :     case 1507:  /* *call_value */
   10944     44140420 :     case 985:  /* *concatditi3_7 */
   10945     44140420 :     case 984:  /* *concatditi3_7 */
   10946     44140420 :     case 983:  /* *concatditi3_7 */
   10947     44140420 :     case 982:  /* *concatsidi3_7 */
   10948     44140420 :     case 981:  /* *concatsidi3_7 */
   10949     44140420 :     case 980:  /* *concatsidi3_7 */
   10950     44140420 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10951     44140420 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   10952     44140420 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
   10953     44140420 :       break;
   10954              : 
   10955        58312 :     case 979:  /* *concatditi3_6 */
   10956        58312 :     case 978:  /* *concatditi3_6 */
   10957        58312 :     case 977:  /* *concatditi3_6 */
   10958        58312 :     case 976:  /* *concatditi3_6 */
   10959        58312 :     case 975:  /* *concatditi3_6 */
   10960        58312 :     case 974:  /* *concatditi3_6 */
   10961        58312 :     case 973:  /* *concatsidi3_6 */
   10962        58312 :     case 972:  /* *concatsidi3_6 */
   10963        58312 :     case 971:  /* *concatsidi3_6 */
   10964        58312 :     case 970:  /* *concatsidi3_6 */
   10965        58312 :     case 969:  /* *concatsidi3_6 */
   10966        58312 :     case 968:  /* *concatsidi3_6 */
   10967        58312 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10968        58312 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   10969        58312 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   10970        58312 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
   10971        58312 :       break;
   10972              : 
   10973            0 :     case 961:  /* *concatditi3_4 */
   10974            0 :     case 960:  /* *concatditi3_4 */
   10975            0 :     case 959:  /* *concatditi3_4 */
   10976            0 :     case 958:  /* *concatditi3_4 */
   10977            0 :     case 957:  /* *concatditi3_4 */
   10978            0 :     case 956:  /* *concatditi3_4 */
   10979            0 :     case 955:  /* *concatsidi3_4 */
   10980            0 :     case 954:  /* *concatsidi3_4 */
   10981            0 :     case 953:  /* *concatsidi3_4 */
   10982            0 :     case 952:  /* *concatsidi3_4 */
   10983            0 :     case 951:  /* *concatsidi3_4 */
   10984            0 :     case 950:  /* *concatsidi3_4 */
   10985            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   10986            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   10987            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
   10988            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 1));
   10989            0 :       break;
   10990              : 
   10991       698318 :     case 949:  /* *concatditi3_3 */
   10992       698318 :     case 948:  /* *concatditi3_3 */
   10993       698318 :     case 947:  /* *concatditi3_3 */
   10994       698318 :     case 946:  /* *concatditi3_3 */
   10995       698318 :     case 945:  /* *concatditi3_3 */
   10996       698318 :     case 944:  /* *concatditi3_3 */
   10997       698318 :     case 943:  /* *concatsidi3_3 */
   10998       698318 :     case 942:  /* *concatsidi3_3 */
   10999       698318 :     case 941:  /* *concatsidi3_3 */
   11000       698318 :     case 940:  /* *concatsidi3_3 */
   11001       698318 :     case 939:  /* *concatsidi3_3 */
   11002       698318 :     case 938:  /* *concatsidi3_3 */
   11003       698318 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   11004       698318 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   11005       698318 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   11006       698318 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   11007       698318 :       break;
   11008              : 
   11009            0 :     case 937:  /* *concatditi3_2 */
   11010            0 :     case 936:  /* *concatditi3_2 */
   11011            0 :     case 935:  /* *concatditi3_2 */
   11012            0 :     case 934:  /* *concatsidi3_2 */
   11013            0 :     case 933:  /* *concatsidi3_2 */
   11014            0 :     case 932:  /* *concatsidi3_2 */
   11015            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   11016            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   11017            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   11018            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 1));
   11019            0 :       break;
   11020              : 
   11021        23714 :     case 931:  /* *concatditi3_1 */
   11022        23714 :     case 930:  /* *concatditi3_1 */
   11023        23714 :     case 929:  /* *concatditi3_1 */
   11024        23714 :     case 928:  /* *concatsidi3_1 */
   11025        23714 :     case 927:  /* *concatsidi3_1 */
   11026        23714 :     case 926:  /* *concatsidi3_1 */
   11027        23714 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   11028        23714 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   11029        23714 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   11030        23714 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   11031        23714 :       break;
   11032              : 
   11033            0 :     case 913:  /* *xorsi_2_zext_imm */
   11034            0 :     case 912:  /* *iorsi_2_zext_imm */
   11035            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11036            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11037            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11038            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11039            0 :       recog_data.dup_num[0] = 1;
   11040            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11041            0 :       recog_data.dup_num[1] = 2;
   11042            0 :       break;
   11043              : 
   11044          154 :     case 872:  /* *xor2andn */
   11045          154 :     case 871:  /* *xor2andn */
   11046          154 :     case 870:  /* *xor2andn */
   11047          154 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11048          154 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11049          154 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11050          154 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11051          154 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11052          154 :       recog_data.dup_num[0] = 1;
   11053          154 :       break;
   11054              : 
   11055         2273 :     case 848:  /* *andn_di_ccno */
   11056         2273 :     case 847:  /* *andn_si_ccno */
   11057         2273 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11058         2273 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11059         2273 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11060         2273 :       break;
   11061              : 
   11062        54603 :     case 2659:  /* kandndi */
   11063        54603 :     case 2658:  /* kandnsi */
   11064        54603 :     case 2657:  /* kandnhi */
   11065        54603 :     case 2656:  /* kandnqi */
   11066        54603 :     case 2330:  /* *andnotv2hi3 */
   11067        54603 :     case 2329:  /* *andnotv2qi3 */
   11068        54603 :     case 2328:  /* *andnotv4qi3 */
   11069        54603 :     case 1514:  /* *sibcall_value_memory */
   11070        54603 :     case 1513:  /* *sibcall_value_memory */
   11071        54603 :     case 1095:  /* *ashlti3_doubleword_highpart */
   11072        54603 :     case 1094:  /* *ashlti3_doubleword_highpart */
   11073        54603 :     case 1093:  /* *ashldi3_doubleword_highpart */
   11074        54603 :     case 1092:  /* *ashldi3_doubleword_highpart */
   11075        54603 :     case 896:  /* *xorsi_1_zext_imm */
   11076        54603 :     case 895:  /* *iorsi_1_zext_imm */
   11077        54603 :     case 846:  /* *andnhi_1 */
   11078        54603 :     case 845:  /* *andnqi_1 */
   11079        54603 :     case 844:  /* *andndi_1 */
   11080        54603 :     case 843:  /* *andnsi_1 */
   11081        54603 :     case 842:  /* *andnti3_doubleword */
   11082        54603 :     case 841:  /* *andndi3_doubleword */
   11083        54603 :     case 840:  /* *andnti3_doubleword_bmi */
   11084        54603 :     case 839:  /* *andndi3_doubleword_bmi */
   11085        54603 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11086        54603 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11087        54603 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11088        54603 :       break;
   11089              : 
   11090          414 :     case 838:  /* *xorqi_extdi_3 */
   11091          414 :     case 837:  /* *iorqi_extdi_3 */
   11092          414 :     case 836:  /* *andqi_extdi_3 */
   11093          414 :     case 835:  /* *xorqi_extsi_3 */
   11094          414 :     case 834:  /* *iorqi_extsi_3 */
   11095          414 :     case 833:  /* *andqi_extsi_3 */
   11096          414 :     case 832:  /* *xorqi_exthi_3 */
   11097          414 :     case 831:  /* *iorqi_exthi_3 */
   11098          414 :     case 830:  /* *andqi_exthi_3 */
   11099          414 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   11100          414 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11101          414 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11102          414 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 0), 1));
   11103          414 :       break;
   11104              : 
   11105         3071 :     case 820:  /* *xorqi_extdi_1_cc */
   11106         3071 :     case 819:  /* *iorqi_extdi_1_cc */
   11107         3071 :     case 818:  /* *andqi_extdi_1_cc */
   11108         3071 :     case 817:  /* *xorqi_extsi_1_cc */
   11109         3071 :     case 816:  /* *iorqi_extsi_1_cc */
   11110         3071 :     case 815:  /* *andqi_extsi_1_cc */
   11111         3071 :     case 814:  /* *xorqi_exthi_1_cc */
   11112         3071 :     case 813:  /* *iorqi_exthi_1_cc */
   11113         3071 :     case 812:  /* *andqi_exthi_1_cc */
   11114         3071 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 0));
   11115         3071 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11116         3071 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11117         3071 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11118         3071 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11119         3071 :       ro[5] = *(ro_loc[5] = &XEXP (XVECEXP (pat, 0, 0), 1));
   11120         3071 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0), 0), 0);
   11121         3071 :       recog_data.dup_num[0] = 0;
   11122         3071 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11123         3071 :       recog_data.dup_num[1] = 2;
   11124         3071 :       break;
   11125              : 
   11126        17139 :     case 732:  /* *testti_not_doubleword */
   11127        17139 :     case 731:  /* *testdi_not_doubleword */
   11128        17139 :     case 730:  /* *testdi_not */
   11129        17139 :     case 729:  /* *testsi_not */
   11130        17139 :     case 728:  /* *testhi_not */
   11131        17139 :     case 727:  /* *testqi_not */
   11132        17139 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   11133        17139 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   11134        17139 :       break;
   11135              : 
   11136       215614 :     case 726:  /* *testqi_ext_3 */
   11137       215614 :     case 725:  /* *testqi_ext_3 */
   11138       215614 :     case 724:  /* *testqi_ext_3 */
   11139       215614 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   11140       215614 :       ro[1] = *(ro_loc[1] = &XEXP (pat, 1));
   11141       215614 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   11142       215614 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   11143       215614 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (pat, 1), 0), 2));
   11144       215614 :       break;
   11145              : 
   11146            0 :     case 722:  /* *testqi_extdi_2 */
   11147            0 :     case 721:  /* *testqi_extsi_2 */
   11148            0 :     case 720:  /* *testqi_exthi_2 */
   11149            0 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
   11150            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0), 0));
   11151            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   11152            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 1), 0));
   11153            0 :       break;
   11154              : 
   11155        98297 :     case 719:  /* *testqi_extdi_1 */
   11156        98297 :     case 718:  /* *testqi_extsi_1 */
   11157        98297 :     case 717:  /* *testqi_exthi_1 */
   11158        98297 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0));
   11159        98297 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   11160        98297 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   11161        98297 :       break;
   11162              : 
   11163        10992 :     case 711:  /* udivmodhiqi3 */
   11164        10992 :     case 709:  /* divmodhiqi3 */
   11165        10992 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11166        10992 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0), 0));
   11167        10992 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0), 1), 0));
   11168        10992 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0);
   11169        10992 :       recog_data.dup_num[0] = 1;
   11170        10992 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1), 0);
   11171        10992 :       recog_data.dup_num[1] = 2;
   11172        10992 :       break;
   11173              : 
   11174            0 :     case 710:  /* udivmodhiqi3_nf */
   11175            0 :     case 708:  /* divmodhiqi3_nf */
   11176            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   11177            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 0));
   11178            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0), 0), 1), 0));
   11179            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 0);
   11180            0 :       recog_data.dup_num[0] = 1;
   11181            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0), 1), 0);
   11182            0 :       recog_data.dup_num[1] = 2;
   11183            0 :       break;
   11184              : 
   11185          351 :     case 706:  /* *udivmodsi4_noext_zext_2 */
   11186          351 :     case 705:  /* *divmodsi4_noext_zext_2 */
   11187          351 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11188          351 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11189          351 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11190          351 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11191          351 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0));
   11192          351 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11193          351 :       recog_data.dup_num[0] = 2;
   11194          351 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11195          351 :       recog_data.dup_num[1] = 3;
   11196          351 :       break;
   11197              : 
   11198         1285 :     case 704:  /* *udivmodsi4_noext_zext_1 */
   11199         1285 :     case 703:  /* *divmodsi4_noext_zext_1 */
   11200         1285 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11201         1285 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11202         1285 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11203         1285 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11204         1285 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0));
   11205         1285 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11206         1285 :       recog_data.dup_num[0] = 2;
   11207         1285 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11208         1285 :       recog_data.dup_num[1] = 3;
   11209         1285 :       break;
   11210              : 
   11211       749045 :     case 702:  /* *udivmoddi4_noext */
   11212       749045 :     case 701:  /* *divmoddi4_noext */
   11213       749045 :     case 700:  /* *udivmodsi4_noext */
   11214       749045 :     case 699:  /* *divmodsi4_noext */
   11215       749045 :     case 698:  /* *udivmodhi4_noext */
   11216       749045 :     case 697:  /* *divmodhi4_noext */
   11217       749045 :     case 696:  /* *udivmoddi4_noext_nf */
   11218       749045 :     case 695:  /* *divmoddi4_noext_nf */
   11219       749045 :     case 694:  /* *udivmodsi4_noext_nf */
   11220       749045 :     case 693:  /* *divmodsi4_noext_nf */
   11221       749045 :     case 692:  /* *udivmodhi4_noext_nf */
   11222       749045 :     case 691:  /* *divmodhi4_noext_nf */
   11223       749045 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11224       749045 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11225       749045 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11226       749045 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11227       749045 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0));
   11228       749045 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11229       749045 :       recog_data.dup_num[0] = 2;
   11230       749045 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11231       749045 :       recog_data.dup_num[1] = 3;
   11232       749045 :       break;
   11233              : 
   11234          562 :     case 690:  /* *udivmodsi4_pow2_zext_2 */
   11235          562 :     case 689:  /* *udivmodsi4_zext_2 */
   11236          562 :     case 688:  /* *divmodsi4_zext_2 */
   11237          562 :     case 676:  /* udivmodsi4_zext_2 */
   11238          562 :     case 675:  /* divmodsi4_zext_2 */
   11239          562 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11240          562 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11241          562 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11242          562 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11243          562 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11244          562 :       recog_data.dup_num[0] = 2;
   11245          562 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11246          562 :       recog_data.dup_num[1] = 3;
   11247          562 :       break;
   11248              : 
   11249         2179 :     case 687:  /* *udivmodsi4_pow2_zext_1 */
   11250         2179 :     case 686:  /* *udivmodsi4_zext_1 */
   11251         2179 :     case 685:  /* *divmodsi4_zext_1 */
   11252         2179 :     case 674:  /* udivmodsi4_zext_1 */
   11253         2179 :     case 673:  /* divmodsi4_zext_1 */
   11254         2179 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11255         2179 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11256         2179 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11257         2179 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11258         2179 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11259         2179 :       recog_data.dup_num[0] = 2;
   11260         2179 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11261         2179 :       recog_data.dup_num[1] = 3;
   11262         2179 :       break;
   11263              : 
   11264            0 :     case 666:  /* *umulsi3_highpart_zext */
   11265            0 :     case 665:  /* *smulsi3_highpart_zext */
   11266            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11267            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0), 0));
   11268            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 1), 0));
   11269            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11270            0 :       break;
   11271              : 
   11272            0 :     case 668:  /* *umulsi3_highpart_1 */
   11273            0 :     case 667:  /* *smulsi3_highpart_1 */
   11274            0 :     case 664:  /* *umuldi3_highpart_1 */
   11275            0 :     case 663:  /* *smuldi3_highpart_1 */
   11276            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11277            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11278            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
   11279            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11280            0 :       break;
   11281              : 
   11282            0 :     case 662:  /* *umulsi3_highpart_zext */
   11283            0 :     case 661:  /* *smulsi3_highpart_zext */
   11284            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11285            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11286            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11287            0 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11288            0 :       break;
   11289              : 
   11290       484341 :     case 660:  /* umuldi3_highpart */
   11291       484341 :     case 659:  /* smuldi3_highpart */
   11292       484341 :     case 658:  /* umulsi3_highpart */
   11293       484341 :     case 657:  /* smulsi3_highpart */
   11294       484341 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11295       484341 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11296       484341 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11297       484341 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11298       484341 :       break;
   11299              : 
   11300         3098 :     case 8429:  /* sse2_packssdw */
   11301         3098 :     case 8423:  /* sse2_packsswb */
   11302         3098 :     case 8230:  /* *nandv2di3 */
   11303         3098 :     case 8229:  /* *norv2di3 */
   11304         3098 :     case 8228:  /* *nandv4di3 */
   11305         3098 :     case 8227:  /* *norv4di3 */
   11306         3098 :     case 8226:  /* *nandv4si3 */
   11307         3098 :     case 8225:  /* *norv4si3 */
   11308         3098 :     case 8224:  /* *nandv8si3 */
   11309         3098 :     case 8223:  /* *norv8si3 */
   11310         3098 :     case 8222:  /* *nandv8hi3 */
   11311         3098 :     case 8221:  /* *norv8hi3 */
   11312         3098 :     case 8220:  /* *nandv16hi3 */
   11313         3098 :     case 8219:  /* *norv16hi3 */
   11314         3098 :     case 8218:  /* *nandv32hi3 */
   11315         3098 :     case 8217:  /* *norv32hi3 */
   11316         3098 :     case 8216:  /* *nandv16qi3 */
   11317         3098 :     case 8215:  /* *norv16qi3 */
   11318         3098 :     case 8214:  /* *nandv32qi3 */
   11319         3098 :     case 8213:  /* *norv32qi3 */
   11320         3098 :     case 8212:  /* *nandv64qi3 */
   11321         3098 :     case 8211:  /* *norv64qi3 */
   11322         3098 :     case 8210:  /* *nandv8di3 */
   11323         3098 :     case 8209:  /* *norv8di3 */
   11324         3098 :     case 8208:  /* *nandv16si3 */
   11325         3098 :     case 8207:  /* *norv16si3 */
   11326         3098 :     case 2351:  /* mmx_packssdw */
   11327         3098 :     case 2349:  /* mmx_packsswb */
   11328         3098 :     case 653:  /* *umulqihi3_1_nf */
   11329         3098 :     case 651:  /* *mulqihi3_1_nf */
   11330         3098 :     case 649:  /* *mulditi3_1_nf */
   11331         3098 :     case 647:  /* *mulsidi3_1_nf */
   11332         3098 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   11333         3098 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   11334         3098 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   11335         3098 :       break;
   11336              : 
   11337       925831 :     case 654:  /* *umulqihi3_1 */
   11338       925831 :     case 652:  /* *mulqihi3_1 */
   11339       925831 :     case 650:  /* *mulditi3_1 */
   11340       925831 :     case 648:  /* *mulsidi3_1 */
   11341       925831 :     case 646:  /* *umulditi3_1 */
   11342       925831 :     case 645:  /* *umulsidi3_1 */
   11343       925831 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11344       925831 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11345       925831 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11346       925831 :       break;
   11347              : 
   11348      1517670 :     case 707:  /* *divmodsi4_const */
   11349      1517670 :     case 684:  /* *udivmoddi4_pow2 */
   11350      1517670 :     case 683:  /* *udivmodsi4_pow2 */
   11351      1517670 :     case 682:  /* *udivmoddi4 */
   11352      1517670 :     case 681:  /* *udivmodsi4 */
   11353      1517670 :     case 680:  /* *udivmodhi4 */
   11354      1517670 :     case 679:  /* *divmoddi4 */
   11355      1517670 :     case 678:  /* *divmodsi4 */
   11356      1517670 :     case 677:  /* *divmodhi4 */
   11357      1517670 :     case 672:  /* udivmoddi4_1 */
   11358      1517670 :     case 671:  /* udivmodsi4_1 */
   11359      1517670 :     case 670:  /* divmoddi4_1 */
   11360      1517670 :     case 669:  /* divmodsi4_1 */
   11361      1517670 :     case 644:  /* *bmi2_umulditi3_1 */
   11362      1517670 :     case 643:  /* *bmi2_umulsidi3_1 */
   11363      1517670 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11364      1517670 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11365      1517670 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11366      1517670 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11367      1517670 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11368      1517670 :       recog_data.dup_num[0] = 2;
   11369      1517670 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11370      1517670 :       recog_data.dup_num[1] = 3;
   11371      1517670 :       break;
   11372              : 
   11373       139811 :     case 640:  /* *umulvdi4 */
   11374       139811 :     case 639:  /* *umulvsi4 */
   11375       139811 :     case 638:  /* *umulvhi4 */
   11376       139811 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11377       139811 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11378       139811 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   11379       139811 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
   11380       139811 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11381       139811 :       recog_data.dup_num[0] = 1;
   11382       139811 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11383       139811 :       recog_data.dup_num[1] = 2;
   11384       139811 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0);
   11385       139811 :       recog_data.dup_num[2] = 1;
   11386       139811 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1);
   11387       139811 :       recog_data.dup_num[3] = 2;
   11388       139811 :       break;
   11389              : 
   11390          165 :     case 609:  /* *subdi3_eq_1 */
   11391          165 :     case 608:  /* *subsi3_eq_1 */
   11392          165 :     case 607:  /* *subhi3_eq_1 */
   11393          165 :     case 606:  /* *subqi3_eq_1 */
   11394          165 :     case 605:  /* *subdi3_ne */
   11395          165 :     case 604:  /* *subsi3_ne */
   11396          165 :     case 603:  /* *subhi3_ne */
   11397          165 :     case 602:  /* *subqi3_ne */
   11398          165 :     case 601:  /* *subdi3_eq */
   11399          165 :     case 600:  /* *subsi3_eq */
   11400          165 :     case 599:  /* *subhi3_eq */
   11401          165 :     case 598:  /* *subqi3_eq */
   11402          165 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11403          165 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11404          165 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11405          165 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   11406          165 :       break;
   11407              : 
   11408          324 :     case 589:  /* *adddi3_ne */
   11409          324 :     case 588:  /* *addsi3_ne */
   11410          324 :     case 587:  /* *addhi3_ne */
   11411          324 :     case 586:  /* *addqi3_ne */
   11412          324 :     case 585:  /* *adddi3_eq */
   11413          324 :     case 584:  /* *addsi3_eq */
   11414          324 :     case 583:  /* *addhi3_eq */
   11415          324 :     case 582:  /* *addqi3_eq */
   11416          324 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11417          324 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11418          324 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11419          324 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11420          324 :       break;
   11421              : 
   11422            0 :     case 579:  /* *addsi3_zext_cc_overflow_2 */
   11423            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11424            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11425            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11426            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11427            0 :       recog_data.dup_num[0] = 1;
   11428            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11429            0 :       recog_data.dup_num[1] = 2;
   11430            0 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11431            0 :       recog_data.dup_num[2] = 2;
   11432            0 :       break;
   11433              : 
   11434         4989 :     case 578:  /* *adddi3_cc_overflow_2 */
   11435         4989 :     case 577:  /* *addsi3_cc_overflow_2 */
   11436         4989 :     case 576:  /* *addhi3_cc_overflow_2 */
   11437         4989 :     case 575:  /* *addqi3_cc_overflow_2 */
   11438         4989 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11439         4989 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11440         4989 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11441         4989 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11442         4989 :       recog_data.dup_num[0] = 1;
   11443         4989 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11444         4989 :       recog_data.dup_num[1] = 2;
   11445         4989 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11446         4989 :       recog_data.dup_num[2] = 2;
   11447         4989 :       break;
   11448              : 
   11449            2 :     case 574:  /* *adddi3_cconly_overflow_2 */
   11450            2 :     case 573:  /* *addsi3_cconly_overflow_2 */
   11451            2 :     case 572:  /* *addhi3_cconly_overflow_2 */
   11452            2 :     case 571:  /* *addqi3_cconly_overflow_2 */
   11453            2 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11454            2 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11455            2 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11456            2 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11457            2 :       recog_data.dup_num[0] = 2;
   11458            2 :       break;
   11459              : 
   11460            0 :     case 570:  /* *addsi3_zext_cc_overflow_1 */
   11461            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11462            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11463            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11464            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11465            0 :       recog_data.dup_num[0] = 1;
   11466            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11467            0 :       recog_data.dup_num[1] = 2;
   11468            0 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11469            0 :       recog_data.dup_num[2] = 1;
   11470            0 :       break;
   11471              : 
   11472       753547 :     case 581:  /* *addti3_doubleword_cc_overflow_1 */
   11473       753547 :     case 580:  /* *adddi3_doubleword_cc_overflow_1 */
   11474       753547 :     case 569:  /* adddi3_cc_overflow_1 */
   11475       753547 :     case 568:  /* addsi3_cc_overflow_1 */
   11476       753547 :     case 567:  /* addhi3_cc_overflow_1 */
   11477       753547 :     case 566:  /* addqi3_cc_overflow_1 */
   11478       753547 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11479       753547 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11480       753547 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11481       753547 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11482       753547 :       recog_data.dup_num[0] = 1;
   11483       753547 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11484       753547 :       recog_data.dup_num[1] = 2;
   11485       753547 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11486       753547 :       recog_data.dup_num[2] = 1;
   11487       753547 :       break;
   11488              : 
   11489       180897 :     case 565:  /* *adddi3_cconly_overflow_1 */
   11490       180897 :     case 564:  /* *addsi3_cconly_overflow_1 */
   11491       180897 :     case 563:  /* *addhi3_cconly_overflow_1 */
   11492       180897 :     case 562:  /* *addqi3_cconly_overflow_1 */
   11493       180897 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11494       180897 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11495       180897 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11496       180897 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1);
   11497       180897 :       recog_data.dup_num[0] = 1;
   11498       180897 :       break;
   11499              : 
   11500          468 :     case 554:  /* *subborrowdi_1 */
   11501          468 :     case 553:  /* *subborrowsi_1 */
   11502          468 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11503          468 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11504          468 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1));
   11505          468 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   11506          468 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11507          468 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1));
   11508          468 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1));
   11509          468 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11510          468 :       recog_data.dup_num[0] = 1;
   11511          468 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1), 0);
   11512          468 :       recog_data.dup_num[1] = 3;
   11513          468 :       break;
   11514              : 
   11515        96130 :     case 552:  /* subborrowdi */
   11516        96130 :     case 551:  /* subborrowsi */
   11517        96130 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11518        96130 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11519        96130 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 0));
   11520        96130 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   11521        96130 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11522        96130 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1));
   11523        96130 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11524        96130 :       recog_data.dup_num[0] = 1;
   11525        96130 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1), 0);
   11526        96130 :       recog_data.dup_num[1] = 3;
   11527        96130 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11528        96130 :       recog_data.dup_num[2] = 2;
   11529        96130 :       break;
   11530              : 
   11531       102885 :     case 550:  /* subdi3_carry_ccgz */
   11532       102885 :     case 549:  /* subsi3_carry_ccgz */
   11533       102885 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11534       102885 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
   11535       102885 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
   11536       102885 :       break;
   11537              : 
   11538         1698 :     case 548:  /* *subdi3_carry_ccc_1 */
   11539         1698 :     case 547:  /* *subsi3_carry_ccc_1 */
   11540         1698 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11541         1698 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11542         1698 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1));
   11543         1698 :       break;
   11544              : 
   11545       421293 :     case 546:  /* subdi3_carry_ccc */
   11546       421293 :     case 545:  /* subsi3_carry_ccc */
   11547       421293 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11548       421293 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11549       421293 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 0));
   11550       421293 :       break;
   11551              : 
   11552           73 :     case 532:  /* *subsi3_carry_zext */
   11553           73 :     case 531:  /* *subhi3_carry_zextdi */
   11554           73 :     case 530:  /* *subhi3_carry_zextsi */
   11555           73 :     case 529:  /* *subqi3_carry_zextdi */
   11556           73 :     case 528:  /* *subqi3_carry_zextsi */
   11557           73 :     case 527:  /* *subqi3_carry_zexthi */
   11558           73 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11559           73 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11560           73 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11561           73 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11562           73 :       break;
   11563              : 
   11564          702 :     case 526:  /* *subdi3_carry_0r_cc */
   11565          702 :     case 525:  /* *subsi3_carry_0r_cc */
   11566          702 :     case 524:  /* *subhi3_carry_0r_cc */
   11567          702 :     case 523:  /* *subqi3_carry_0r_cc */
   11568          702 :     case 518:  /* *subdi3_carry_0_cc */
   11569          702 :     case 517:  /* *subsi3_carry_0_cc */
   11570          702 :     case 516:  /* *subhi3_carry_0_cc */
   11571          702 :     case 515:  /* *subqi3_carry_0_cc */
   11572          702 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11573          702 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11574          702 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11575          702 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   11576          702 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11577          702 :       recog_data.dup_num[0] = 1;
   11578          702 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11579          702 :       recog_data.dup_num[1] = 2;
   11580          702 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1), 0);
   11581          702 :       recog_data.dup_num[2] = 3;
   11582          702 :       break;
   11583              : 
   11584         1332 :     case 510:  /* *subdi3_carry_2 */
   11585         1332 :     case 509:  /* *subsi3_carry_2 */
   11586         1332 :     case 508:  /* *subhi3_carry_2 */
   11587         1332 :     case 507:  /* *subqi3_carry_2 */
   11588         1332 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11589         1332 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11590         1332 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11591         1332 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
   11592         1332 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11593         1332 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11594         1332 :       recog_data.dup_num[0] = 1;
   11595         1332 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11596         1332 :       recog_data.dup_num[1] = 4;
   11597         1332 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1), 0);
   11598         1332 :       recog_data.dup_num[2] = 3;
   11599         1332 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11600         1332 :       recog_data.dup_num[3] = 2;
   11601         1332 :       break;
   11602              : 
   11603        83934 :     case 506:  /* subdi3_carry */
   11604        83934 :     case 505:  /* subsi3_carry */
   11605        83934 :     case 504:  /* subhi3_carry */
   11606        83934 :     case 503:  /* subqi3_carry */
   11607        83934 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11608        83934 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11609        83934 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11610        83934 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   11611        83934 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11612        83934 :       break;
   11613              : 
   11614         4308 :     case 502:  /* *addcarrydi_1 */
   11615         4308 :     case 501:  /* *addcarrysi_1 */
   11616         4308 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11617         4308 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 1));
   11618         4308 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11619         4308 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0), 0));
   11620         4308 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11621         4308 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11622         4308 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1));
   11623         4308 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11624         4308 :       recog_data.dup_num[0] = 5;
   11625         4308 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0), 0);
   11626         4308 :       recog_data.dup_num[1] = 3;
   11627         4308 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11628         4308 :       recog_data.dup_num[2] = 1;
   11629         4308 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11630         4308 :       recog_data.dup_num[3] = 2;
   11631         4308 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0);
   11632         4308 :       recog_data.dup_num[4] = 3;
   11633         4308 :       break;
   11634              : 
   11635       159854 :     case 500:  /* addcarrydi */
   11636       159854 :     case 499:  /* addcarrysi */
   11637       159854 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11638       159854 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 1));
   11639       159854 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11640       159854 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0), 0));
   11641       159854 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11642       159854 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11643       159854 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11644       159854 :       recog_data.dup_num[0] = 5;
   11645       159854 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0), 0);
   11646       159854 :       recog_data.dup_num[1] = 3;
   11647       159854 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11648       159854 :       recog_data.dup_num[2] = 1;
   11649       159854 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11650       159854 :       recog_data.dup_num[3] = 2;
   11651       159854 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0);
   11652       159854 :       recog_data.dup_num[4] = 3;
   11653       159854 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 1), 0);
   11654       159854 :       recog_data.dup_num[5] = 2;
   11655       159854 :       break;
   11656              : 
   11657          412 :     case 498:  /* *addsi3_carry_zext_0r */
   11658          412 :     case 497:  /* *addhi3_carry_zextdi_0r */
   11659          412 :     case 496:  /* *addhi3_carry_zextsi_0r */
   11660          412 :     case 495:  /* *addqi3_carry_zextdi_0r */
   11661          412 :     case 494:  /* *addqi3_carry_zextsi_0r */
   11662          412 :     case 493:  /* *addqi3_carry_zexthi_0r */
   11663          412 :     case 492:  /* *addsi3_carry_zext_0 */
   11664          412 :     case 491:  /* *addhi3_carry_zextdi_0 */
   11665          412 :     case 490:  /* *addhi3_carry_zextsi_0 */
   11666          412 :     case 489:  /* *addqi3_carry_zextdi_0 */
   11667          412 :     case 488:  /* *addqi3_carry_zextsi_0 */
   11668          412 :     case 487:  /* *addqi3_carry_zexthi_0 */
   11669          412 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11670          412 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11671          412 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11672          412 :       break;
   11673              : 
   11674           41 :     case 486:  /* *addsi3_carry_zext */
   11675           41 :     case 485:  /* *addhi3_carry_zextdi */
   11676           41 :     case 484:  /* *addhi3_carry_zextsi */
   11677           41 :     case 483:  /* *addqi3_carry_zextdi */
   11678           41 :     case 482:  /* *addqi3_carry_zextsi */
   11679           41 :     case 481:  /* *addqi3_carry_zexthi */
   11680           41 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11681           41 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11682           41 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11683           41 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11684           41 :       break;
   11685              : 
   11686          155 :     case 480:  /* *adddi3_carry_0r_cc */
   11687          155 :     case 479:  /* *addsi3_carry_0r_cc */
   11688          155 :     case 478:  /* *addhi3_carry_0r_cc */
   11689          155 :     case 477:  /* *addqi3_carry_0r_cc */
   11690          155 :     case 472:  /* *adddi3_carry_0_cc */
   11691          155 :     case 471:  /* *addsi3_carry_0_cc */
   11692          155 :     case 470:  /* *addhi3_carry_0_cc */
   11693          155 :     case 469:  /* *addqi3_carry_0_cc */
   11694          155 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11695          155 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11696          155 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11697          155 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11698          155 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11699          155 :       recog_data.dup_num[0] = 2;
   11700          155 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11701          155 :       recog_data.dup_num[1] = 3;
   11702          155 :       recog_data.dup_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11703          155 :       recog_data.dup_num[2] = 1;
   11704          155 :       break;
   11705              : 
   11706        48756 :     case 476:  /* *adddi3_carry_0r */
   11707        48756 :     case 475:  /* *addsi3_carry_0r */
   11708        48756 :     case 474:  /* *addhi3_carry_0r */
   11709        48756 :     case 473:  /* *addqi3_carry_0r */
   11710        48756 :     case 468:  /* *adddi3_carry_0 */
   11711        48756 :     case 467:  /* *addsi3_carry_0 */
   11712        48756 :     case 466:  /* *addhi3_carry_0 */
   11713        48756 :     case 465:  /* *addqi3_carry_0 */
   11714        48756 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11715        48756 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11716        48756 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11717        48756 :       break;
   11718              : 
   11719        18396 :     case 464:  /* *adddi3_carry_2 */
   11720        18396 :     case 463:  /* *addsi3_carry_2 */
   11721        18396 :     case 462:  /* *addhi3_carry_2 */
   11722        18396 :     case 461:  /* *addqi3_carry_2 */
   11723        18396 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11724        18396 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11725        18396 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11726        18396 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11727        18396 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11728        18396 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11729        18396 :       recog_data.dup_num[0] = 4;
   11730        18396 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0), 0);
   11731        18396 :       recog_data.dup_num[1] = 3;
   11732        18396 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11733        18396 :       recog_data.dup_num[2] = 1;
   11734        18396 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11735        18396 :       recog_data.dup_num[3] = 2;
   11736        18396 :       break;
   11737              : 
   11738       412928 :     case 460:  /* adddi3_carry */
   11739       412928 :     case 459:  /* addsi3_carry */
   11740       412928 :     case 458:  /* addhi3_carry */
   11741       412928 :     case 457:  /* addqi3_carry */
   11742       412928 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11743       412928 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11744       412928 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11745       412928 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   11746       412928 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11747       412928 :       break;
   11748              : 
   11749            0 :     case 456:  /* *subsi_3_zext */
   11750            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11751            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11752            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11753            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11754            0 :       recog_data.dup_num[0] = 1;
   11755            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11756            0 :       recog_data.dup_num[1] = 2;
   11757            0 :       break;
   11758              : 
   11759          138 :     case 455:  /* *dec_cmovdi */
   11760          138 :     case 454:  /* *dec_cmovsi */
   11761          138 :     case 453:  /* *dec_cmovhi */
   11762          138 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11763          138 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11764          138 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   11765          138 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 2));
   11766          138 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0);
   11767          138 :       recog_data.dup_num[0] = 2;
   11768          138 :       break;
   11769              : 
   11770       174522 :     case 452:  /* *subdi_3 */
   11771       174522 :     case 451:  /* *subsi_3 */
   11772       174522 :     case 450:  /* *subhi_3 */
   11773       174522 :     case 449:  /* *subqi_3 */
   11774       174522 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11775       174522 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11776       174522 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   11777       174522 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   11778       174522 :       recog_data.dup_num[0] = 1;
   11779       174522 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11780       174522 :       recog_data.dup_num[1] = 2;
   11781       174522 :       break;
   11782              : 
   11783         1413 :     case 448:  /* *subvdi4_overflow_2 */
   11784         1413 :     case 447:  /* *subvsi4_overflow_2 */
   11785         1413 :     case 446:  /* *subvhi4_overflow_2 */
   11786         1413 :     case 445:  /* *subvqi4_overflow_2 */
   11787         1413 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11788         1413 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11789         1413 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   11790         1413 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
   11791         1413 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11792         1413 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1));
   11793         1413 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   11794         1413 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11795         1413 :       recog_data.dup_num[0] = 1;
   11796         1413 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11797         1413 :       recog_data.dup_num[1] = 5;
   11798         1413 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1), 0);
   11799         1413 :       recog_data.dup_num[2] = 3;
   11800         1413 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11801         1413 :       recog_data.dup_num[3] = 2;
   11802         1413 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0);
   11803         1413 :       recog_data.dup_num[4] = 1;
   11804         1413 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1), 0);
   11805         1413 :       recog_data.dup_num[5] = 3;
   11806         1413 :       break;
   11807              : 
   11808         5920 :     case 444:  /* *subvdi4_overflow_1 */
   11809         5920 :     case 443:  /* *subvsi4_overflow_1 */
   11810         5920 :     case 442:  /* *subvhi4_overflow_1 */
   11811         5920 :     case 441:  /* *subvqi4_overflow_1 */
   11812         5920 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   11813         5920 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   11814         5920 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   11815         5920 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
   11816         5920 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   11817         5920 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1));
   11818         5920 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   11819         5920 :       recog_data.dup_num[0] = 1;
   11820         5920 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   11821         5920 :       recog_data.dup_num[1] = 5;
   11822         5920 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1), 0);
   11823         5920 :       recog_data.dup_num[2] = 3;
   11824         5920 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   11825         5920 :       recog_data.dup_num[3] = 2;
   11826         5920 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0);
   11827         5920 :       recog_data.dup_num[4] = 1;
   11828         5920 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1), 0);
   11829         5920 :       recog_data.dup_num[5] = 3;
   11830         5920 :       recog_data.dup_loc[6] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1);
   11831         5920 :       recog_data.dup_num[6] = 2;
   11832         5920 :       break;
   11833              : 
   11834          107 :     case 422:  /* *subqi_extdi_0 */
   11835          107 :     case 421:  /* *subqi_extsi_0 */
   11836          107 :     case 420:  /* *subqi_exthi_0 */
   11837          107 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11838          107 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11839          107 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   11840          107 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11841          107 :       break;
   11842              : 
   11843           90 :     case 411:  /* *subqi_extdi_1_slp */
   11844           90 :     case 410:  /* *subqi_extsi_1_slp */
   11845           90 :     case 409:  /* *subqi_exthi_1_slp */
   11846           90 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   11847           90 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11848           90 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   11849           90 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11850           90 :       break;
   11851              : 
   11852        24558 :     case 617:  /* *subdi3_ne_0 */
   11853        24558 :     case 616:  /* *subsi3_ne_0 */
   11854        24558 :     case 615:  /* *subhi3_ne_0 */
   11855        24558 :     case 614:  /* *subqi3_ne_0 */
   11856        24558 :     case 613:  /* *subdi3_eq_0 */
   11857        24558 :     case 612:  /* *subsi3_eq_0 */
   11858        24558 :     case 611:  /* *subhi3_eq_0 */
   11859        24558 :     case 610:  /* *subqi3_eq_0 */
   11860        24558 :     case 387:  /* *subti3_doubleword_zext */
   11861        24558 :     case 386:  /* *subdi3_doubleword_zext */
   11862        24558 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   11863        24558 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   11864        24558 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   11865        24558 :       break;
   11866              : 
   11867          663 :     case 8011:  /* *eqv2di3_2_negate */
   11868          663 :     case 8010:  /* *eqv4di3_2_negate */
   11869          663 :     case 8009:  /* *eqv4si3_2_negate */
   11870          663 :     case 8008:  /* *eqv8si3_2_negate */
   11871          663 :     case 8007:  /* *eqv8hi3_2_negate */
   11872          663 :     case 8006:  /* *eqv16hi3_2_negate */
   11873          663 :     case 8005:  /* *eqv16qi3_2_negate */
   11874          663 :     case 8004:  /* *eqv32qi3_2_negate */
   11875          663 :     case 6886:  /* *avx512vl_vpternlogv2df_2 */
   11876          663 :     case 6885:  /* *avx512vl_vpternlogv2df_2 */
   11877          663 :     case 6884:  /* *avx512vl_vpternlogv2df_2 */
   11878          663 :     case 6883:  /* *avx512vl_vpternlogv2df_2 */
   11879          663 :     case 6882:  /* *avx512vl_vpternlogv2df_2 */
   11880          663 :     case 6881:  /* *avx512vl_vpternlogv2df_2 */
   11881          663 :     case 6880:  /* *avx512vl_vpternlogv2df_2 */
   11882          663 :     case 6879:  /* *avx512vl_vpternlogv2df_2 */
   11883          663 :     case 6878:  /* *avx512vl_vpternlogv2df_2 */
   11884          663 :     case 6877:  /* *avx512vl_vpternlogv2df_2 */
   11885          663 :     case 6876:  /* *avx512vl_vpternlogv2df_2 */
   11886          663 :     case 6875:  /* *avx512vl_vpternlogv2df_2 */
   11887          663 :     case 6874:  /* *avx512vl_vpternlogv2df_2 */
   11888          663 :     case 6873:  /* *avx512vl_vpternlogv2df_2 */
   11889          663 :     case 6872:  /* *avx512vl_vpternlogv2df_2 */
   11890          663 :     case 6871:  /* *avx512vl_vpternlogv2df_2 */
   11891          663 :     case 6870:  /* *avx512vl_vpternlogv2df_2 */
   11892          663 :     case 6869:  /* *avx512vl_vpternlogv2df_2 */
   11893          663 :     case 6868:  /* *avx512vl_vpternlogv2df_2 */
   11894          663 :     case 6867:  /* *avx512vl_vpternlogv2df_2 */
   11895          663 :     case 6866:  /* *avx512vl_vpternlogv2df_2 */
   11896          663 :     case 6865:  /* *avx512vl_vpternlogv2df_2 */
   11897          663 :     case 6864:  /* *avx512vl_vpternlogv2df_2 */
   11898          663 :     case 6863:  /* *avx512vl_vpternlogv2df_2 */
   11899          663 :     case 6862:  /* *avx512vl_vpternlogv2df_2 */
   11900          663 :     case 6861:  /* *avx512vl_vpternlogv2df_2 */
   11901          663 :     case 6860:  /* *avx512vl_vpternlogv2df_2 */
   11902          663 :     case 6859:  /* *avx512vl_vpternlogv4df_2 */
   11903          663 :     case 6858:  /* *avx512vl_vpternlogv4df_2 */
   11904          663 :     case 6857:  /* *avx512vl_vpternlogv4df_2 */
   11905          663 :     case 6856:  /* *avx512vl_vpternlogv4df_2 */
   11906          663 :     case 6855:  /* *avx512vl_vpternlogv4df_2 */
   11907          663 :     case 6854:  /* *avx512vl_vpternlogv4df_2 */
   11908          663 :     case 6853:  /* *avx512vl_vpternlogv4df_2 */
   11909          663 :     case 6852:  /* *avx512vl_vpternlogv4df_2 */
   11910          663 :     case 6851:  /* *avx512vl_vpternlogv4df_2 */
   11911          663 :     case 6850:  /* *avx512vl_vpternlogv4df_2 */
   11912          663 :     case 6849:  /* *avx512vl_vpternlogv4df_2 */
   11913          663 :     case 6848:  /* *avx512vl_vpternlogv4df_2 */
   11914          663 :     case 6847:  /* *avx512vl_vpternlogv4df_2 */
   11915          663 :     case 6846:  /* *avx512vl_vpternlogv4df_2 */
   11916          663 :     case 6845:  /* *avx512vl_vpternlogv4df_2 */
   11917          663 :     case 6844:  /* *avx512vl_vpternlogv4df_2 */
   11918          663 :     case 6843:  /* *avx512vl_vpternlogv4df_2 */
   11919          663 :     case 6842:  /* *avx512vl_vpternlogv4df_2 */
   11920          663 :     case 6841:  /* *avx512vl_vpternlogv4df_2 */
   11921          663 :     case 6840:  /* *avx512vl_vpternlogv4df_2 */
   11922          663 :     case 6839:  /* *avx512vl_vpternlogv4df_2 */
   11923          663 :     case 6838:  /* *avx512vl_vpternlogv4df_2 */
   11924          663 :     case 6837:  /* *avx512vl_vpternlogv4df_2 */
   11925          663 :     case 6836:  /* *avx512vl_vpternlogv4df_2 */
   11926          663 :     case 6835:  /* *avx512vl_vpternlogv4df_2 */
   11927          663 :     case 6834:  /* *avx512vl_vpternlogv4df_2 */
   11928          663 :     case 6833:  /* *avx512vl_vpternlogv4df_2 */
   11929          663 :     case 6832:  /* *avx512f_vpternlogv8df_2 */
   11930          663 :     case 6831:  /* *avx512f_vpternlogv8df_2 */
   11931          663 :     case 6830:  /* *avx512f_vpternlogv8df_2 */
   11932          663 :     case 6829:  /* *avx512f_vpternlogv8df_2 */
   11933          663 :     case 6828:  /* *avx512f_vpternlogv8df_2 */
   11934          663 :     case 6827:  /* *avx512f_vpternlogv8df_2 */
   11935          663 :     case 6826:  /* *avx512f_vpternlogv8df_2 */
   11936          663 :     case 6825:  /* *avx512f_vpternlogv8df_2 */
   11937          663 :     case 6824:  /* *avx512f_vpternlogv8df_2 */
   11938          663 :     case 6823:  /* *avx512f_vpternlogv8df_2 */
   11939          663 :     case 6822:  /* *avx512f_vpternlogv8df_2 */
   11940          663 :     case 6821:  /* *avx512f_vpternlogv8df_2 */
   11941          663 :     case 6820:  /* *avx512f_vpternlogv8df_2 */
   11942          663 :     case 6819:  /* *avx512f_vpternlogv8df_2 */
   11943          663 :     case 6818:  /* *avx512f_vpternlogv8df_2 */
   11944          663 :     case 6817:  /* *avx512f_vpternlogv8df_2 */
   11945          663 :     case 6816:  /* *avx512f_vpternlogv8df_2 */
   11946          663 :     case 6815:  /* *avx512f_vpternlogv8df_2 */
   11947          663 :     case 6814:  /* *avx512f_vpternlogv8df_2 */
   11948          663 :     case 6813:  /* *avx512f_vpternlogv8df_2 */
   11949          663 :     case 6812:  /* *avx512f_vpternlogv8df_2 */
   11950          663 :     case 6811:  /* *avx512f_vpternlogv8df_2 */
   11951          663 :     case 6810:  /* *avx512f_vpternlogv8df_2 */
   11952          663 :     case 6809:  /* *avx512f_vpternlogv8df_2 */
   11953          663 :     case 6808:  /* *avx512f_vpternlogv8df_2 */
   11954          663 :     case 6807:  /* *avx512f_vpternlogv8df_2 */
   11955          663 :     case 6806:  /* *avx512f_vpternlogv8df_2 */
   11956          663 :     case 6805:  /* *avx512vl_vpternlogv4sf_2 */
   11957          663 :     case 6804:  /* *avx512vl_vpternlogv4sf_2 */
   11958          663 :     case 6803:  /* *avx512vl_vpternlogv4sf_2 */
   11959          663 :     case 6802:  /* *avx512vl_vpternlogv4sf_2 */
   11960          663 :     case 6801:  /* *avx512vl_vpternlogv4sf_2 */
   11961          663 :     case 6800:  /* *avx512vl_vpternlogv4sf_2 */
   11962          663 :     case 6799:  /* *avx512vl_vpternlogv4sf_2 */
   11963          663 :     case 6798:  /* *avx512vl_vpternlogv4sf_2 */
   11964          663 :     case 6797:  /* *avx512vl_vpternlogv4sf_2 */
   11965          663 :     case 6796:  /* *avx512vl_vpternlogv4sf_2 */
   11966          663 :     case 6795:  /* *avx512vl_vpternlogv4sf_2 */
   11967          663 :     case 6794:  /* *avx512vl_vpternlogv4sf_2 */
   11968          663 :     case 6793:  /* *avx512vl_vpternlogv4sf_2 */
   11969          663 :     case 6792:  /* *avx512vl_vpternlogv4sf_2 */
   11970          663 :     case 6791:  /* *avx512vl_vpternlogv4sf_2 */
   11971          663 :     case 6790:  /* *avx512vl_vpternlogv4sf_2 */
   11972          663 :     case 6789:  /* *avx512vl_vpternlogv4sf_2 */
   11973          663 :     case 6788:  /* *avx512vl_vpternlogv4sf_2 */
   11974          663 :     case 6787:  /* *avx512vl_vpternlogv4sf_2 */
   11975          663 :     case 6786:  /* *avx512vl_vpternlogv4sf_2 */
   11976          663 :     case 6785:  /* *avx512vl_vpternlogv4sf_2 */
   11977          663 :     case 6784:  /* *avx512vl_vpternlogv4sf_2 */
   11978          663 :     case 6783:  /* *avx512vl_vpternlogv4sf_2 */
   11979          663 :     case 6782:  /* *avx512vl_vpternlogv4sf_2 */
   11980          663 :     case 6781:  /* *avx512vl_vpternlogv4sf_2 */
   11981          663 :     case 6780:  /* *avx512vl_vpternlogv4sf_2 */
   11982          663 :     case 6779:  /* *avx512vl_vpternlogv4sf_2 */
   11983          663 :     case 6778:  /* *avx512vl_vpternlogv8sf_2 */
   11984          663 :     case 6777:  /* *avx512vl_vpternlogv8sf_2 */
   11985          663 :     case 6776:  /* *avx512vl_vpternlogv8sf_2 */
   11986          663 :     case 6775:  /* *avx512vl_vpternlogv8sf_2 */
   11987          663 :     case 6774:  /* *avx512vl_vpternlogv8sf_2 */
   11988          663 :     case 6773:  /* *avx512vl_vpternlogv8sf_2 */
   11989          663 :     case 6772:  /* *avx512vl_vpternlogv8sf_2 */
   11990          663 :     case 6771:  /* *avx512vl_vpternlogv8sf_2 */
   11991          663 :     case 6770:  /* *avx512vl_vpternlogv8sf_2 */
   11992          663 :     case 6769:  /* *avx512vl_vpternlogv8sf_2 */
   11993          663 :     case 6768:  /* *avx512vl_vpternlogv8sf_2 */
   11994          663 :     case 6767:  /* *avx512vl_vpternlogv8sf_2 */
   11995          663 :     case 6766:  /* *avx512vl_vpternlogv8sf_2 */
   11996          663 :     case 6765:  /* *avx512vl_vpternlogv8sf_2 */
   11997          663 :     case 6764:  /* *avx512vl_vpternlogv8sf_2 */
   11998          663 :     case 6763:  /* *avx512vl_vpternlogv8sf_2 */
   11999          663 :     case 6762:  /* *avx512vl_vpternlogv8sf_2 */
   12000          663 :     case 6761:  /* *avx512vl_vpternlogv8sf_2 */
   12001          663 :     case 6760:  /* *avx512vl_vpternlogv8sf_2 */
   12002          663 :     case 6759:  /* *avx512vl_vpternlogv8sf_2 */
   12003          663 :     case 6758:  /* *avx512vl_vpternlogv8sf_2 */
   12004          663 :     case 6757:  /* *avx512vl_vpternlogv8sf_2 */
   12005          663 :     case 6756:  /* *avx512vl_vpternlogv8sf_2 */
   12006          663 :     case 6755:  /* *avx512vl_vpternlogv8sf_2 */
   12007          663 :     case 6754:  /* *avx512vl_vpternlogv8sf_2 */
   12008          663 :     case 6753:  /* *avx512vl_vpternlogv8sf_2 */
   12009          663 :     case 6752:  /* *avx512vl_vpternlogv8sf_2 */
   12010          663 :     case 6751:  /* *avx512f_vpternlogv16sf_2 */
   12011          663 :     case 6750:  /* *avx512f_vpternlogv16sf_2 */
   12012          663 :     case 6749:  /* *avx512f_vpternlogv16sf_2 */
   12013          663 :     case 6748:  /* *avx512f_vpternlogv16sf_2 */
   12014          663 :     case 6747:  /* *avx512f_vpternlogv16sf_2 */
   12015          663 :     case 6746:  /* *avx512f_vpternlogv16sf_2 */
   12016          663 :     case 6745:  /* *avx512f_vpternlogv16sf_2 */
   12017          663 :     case 6744:  /* *avx512f_vpternlogv16sf_2 */
   12018          663 :     case 6743:  /* *avx512f_vpternlogv16sf_2 */
   12019          663 :     case 6742:  /* *avx512f_vpternlogv16sf_2 */
   12020          663 :     case 6741:  /* *avx512f_vpternlogv16sf_2 */
   12021          663 :     case 6740:  /* *avx512f_vpternlogv16sf_2 */
   12022          663 :     case 6739:  /* *avx512f_vpternlogv16sf_2 */
   12023          663 :     case 6738:  /* *avx512f_vpternlogv16sf_2 */
   12024          663 :     case 6737:  /* *avx512f_vpternlogv16sf_2 */
   12025          663 :     case 6736:  /* *avx512f_vpternlogv16sf_2 */
   12026          663 :     case 6735:  /* *avx512f_vpternlogv16sf_2 */
   12027          663 :     case 6734:  /* *avx512f_vpternlogv16sf_2 */
   12028          663 :     case 6733:  /* *avx512f_vpternlogv16sf_2 */
   12029          663 :     case 6732:  /* *avx512f_vpternlogv16sf_2 */
   12030          663 :     case 6731:  /* *avx512f_vpternlogv16sf_2 */
   12031          663 :     case 6730:  /* *avx512f_vpternlogv16sf_2 */
   12032          663 :     case 6729:  /* *avx512f_vpternlogv16sf_2 */
   12033          663 :     case 6728:  /* *avx512f_vpternlogv16sf_2 */
   12034          663 :     case 6727:  /* *avx512f_vpternlogv16sf_2 */
   12035          663 :     case 6726:  /* *avx512f_vpternlogv16sf_2 */
   12036          663 :     case 6725:  /* *avx512f_vpternlogv16sf_2 */
   12037          663 :     case 6724:  /* *avx512vl_vpternlogv8bf_2 */
   12038          663 :     case 6723:  /* *avx512vl_vpternlogv8bf_2 */
   12039          663 :     case 6722:  /* *avx512vl_vpternlogv8bf_2 */
   12040          663 :     case 6721:  /* *avx512vl_vpternlogv8bf_2 */
   12041          663 :     case 6720:  /* *avx512vl_vpternlogv8bf_2 */
   12042          663 :     case 6719:  /* *avx512vl_vpternlogv8bf_2 */
   12043          663 :     case 6718:  /* *avx512vl_vpternlogv8bf_2 */
   12044          663 :     case 6717:  /* *avx512vl_vpternlogv8bf_2 */
   12045          663 :     case 6716:  /* *avx512vl_vpternlogv8bf_2 */
   12046          663 :     case 6715:  /* *avx512vl_vpternlogv8bf_2 */
   12047          663 :     case 6714:  /* *avx512vl_vpternlogv8bf_2 */
   12048          663 :     case 6713:  /* *avx512vl_vpternlogv8bf_2 */
   12049          663 :     case 6712:  /* *avx512vl_vpternlogv8bf_2 */
   12050          663 :     case 6711:  /* *avx512vl_vpternlogv8bf_2 */
   12051          663 :     case 6710:  /* *avx512vl_vpternlogv8bf_2 */
   12052          663 :     case 6709:  /* *avx512vl_vpternlogv8bf_2 */
   12053          663 :     case 6708:  /* *avx512vl_vpternlogv8bf_2 */
   12054          663 :     case 6707:  /* *avx512vl_vpternlogv8bf_2 */
   12055          663 :     case 6706:  /* *avx512vl_vpternlogv8bf_2 */
   12056          663 :     case 6705:  /* *avx512vl_vpternlogv8bf_2 */
   12057          663 :     case 6704:  /* *avx512vl_vpternlogv8bf_2 */
   12058          663 :     case 6703:  /* *avx512vl_vpternlogv8bf_2 */
   12059          663 :     case 6702:  /* *avx512vl_vpternlogv8bf_2 */
   12060          663 :     case 6701:  /* *avx512vl_vpternlogv8bf_2 */
   12061          663 :     case 6700:  /* *avx512vl_vpternlogv8bf_2 */
   12062          663 :     case 6699:  /* *avx512vl_vpternlogv8bf_2 */
   12063          663 :     case 6698:  /* *avx512vl_vpternlogv8bf_2 */
   12064          663 :     case 6697:  /* *avx512vl_vpternlogv16bf_2 */
   12065          663 :     case 6696:  /* *avx512vl_vpternlogv16bf_2 */
   12066          663 :     case 6695:  /* *avx512vl_vpternlogv16bf_2 */
   12067          663 :     case 6694:  /* *avx512vl_vpternlogv16bf_2 */
   12068          663 :     case 6693:  /* *avx512vl_vpternlogv16bf_2 */
   12069          663 :     case 6692:  /* *avx512vl_vpternlogv16bf_2 */
   12070          663 :     case 6691:  /* *avx512vl_vpternlogv16bf_2 */
   12071          663 :     case 6690:  /* *avx512vl_vpternlogv16bf_2 */
   12072          663 :     case 6689:  /* *avx512vl_vpternlogv16bf_2 */
   12073          663 :     case 6688:  /* *avx512vl_vpternlogv16bf_2 */
   12074          663 :     case 6687:  /* *avx512vl_vpternlogv16bf_2 */
   12075          663 :     case 6686:  /* *avx512vl_vpternlogv16bf_2 */
   12076          663 :     case 6685:  /* *avx512vl_vpternlogv16bf_2 */
   12077          663 :     case 6684:  /* *avx512vl_vpternlogv16bf_2 */
   12078          663 :     case 6683:  /* *avx512vl_vpternlogv16bf_2 */
   12079          663 :     case 6682:  /* *avx512vl_vpternlogv16bf_2 */
   12080          663 :     case 6681:  /* *avx512vl_vpternlogv16bf_2 */
   12081          663 :     case 6680:  /* *avx512vl_vpternlogv16bf_2 */
   12082          663 :     case 6679:  /* *avx512vl_vpternlogv16bf_2 */
   12083          663 :     case 6678:  /* *avx512vl_vpternlogv16bf_2 */
   12084          663 :     case 6677:  /* *avx512vl_vpternlogv16bf_2 */
   12085          663 :     case 6676:  /* *avx512vl_vpternlogv16bf_2 */
   12086          663 :     case 6675:  /* *avx512vl_vpternlogv16bf_2 */
   12087          663 :     case 6674:  /* *avx512vl_vpternlogv16bf_2 */
   12088          663 :     case 6673:  /* *avx512vl_vpternlogv16bf_2 */
   12089          663 :     case 6672:  /* *avx512vl_vpternlogv16bf_2 */
   12090          663 :     case 6671:  /* *avx512vl_vpternlogv16bf_2 */
   12091          663 :     case 6670:  /* *avx512bw_vpternlogv32bf_2 */
   12092          663 :     case 6669:  /* *avx512bw_vpternlogv32bf_2 */
   12093          663 :     case 6668:  /* *avx512bw_vpternlogv32bf_2 */
   12094          663 :     case 6667:  /* *avx512bw_vpternlogv32bf_2 */
   12095          663 :     case 6666:  /* *avx512bw_vpternlogv32bf_2 */
   12096          663 :     case 6665:  /* *avx512bw_vpternlogv32bf_2 */
   12097          663 :     case 6664:  /* *avx512bw_vpternlogv32bf_2 */
   12098          663 :     case 6663:  /* *avx512bw_vpternlogv32bf_2 */
   12099          663 :     case 6662:  /* *avx512bw_vpternlogv32bf_2 */
   12100          663 :     case 6661:  /* *avx512bw_vpternlogv32bf_2 */
   12101          663 :     case 6660:  /* *avx512bw_vpternlogv32bf_2 */
   12102          663 :     case 6659:  /* *avx512bw_vpternlogv32bf_2 */
   12103          663 :     case 6658:  /* *avx512bw_vpternlogv32bf_2 */
   12104          663 :     case 6657:  /* *avx512bw_vpternlogv32bf_2 */
   12105          663 :     case 6656:  /* *avx512bw_vpternlogv32bf_2 */
   12106          663 :     case 6655:  /* *avx512bw_vpternlogv32bf_2 */
   12107          663 :     case 6654:  /* *avx512bw_vpternlogv32bf_2 */
   12108          663 :     case 6653:  /* *avx512bw_vpternlogv32bf_2 */
   12109          663 :     case 6652:  /* *avx512bw_vpternlogv32bf_2 */
   12110          663 :     case 6651:  /* *avx512bw_vpternlogv32bf_2 */
   12111          663 :     case 6650:  /* *avx512bw_vpternlogv32bf_2 */
   12112          663 :     case 6649:  /* *avx512bw_vpternlogv32bf_2 */
   12113          663 :     case 6648:  /* *avx512bw_vpternlogv32bf_2 */
   12114          663 :     case 6647:  /* *avx512bw_vpternlogv32bf_2 */
   12115          663 :     case 6646:  /* *avx512bw_vpternlogv32bf_2 */
   12116          663 :     case 6645:  /* *avx512bw_vpternlogv32bf_2 */
   12117          663 :     case 6644:  /* *avx512bw_vpternlogv32bf_2 */
   12118          663 :     case 6643:  /* *avx512fp16_vpternlogv8hf_2 */
   12119          663 :     case 6642:  /* *avx512fp16_vpternlogv8hf_2 */
   12120          663 :     case 6641:  /* *avx512fp16_vpternlogv8hf_2 */
   12121          663 :     case 6640:  /* *avx512fp16_vpternlogv8hf_2 */
   12122          663 :     case 6639:  /* *avx512fp16_vpternlogv8hf_2 */
   12123          663 :     case 6638:  /* *avx512fp16_vpternlogv8hf_2 */
   12124          663 :     case 6637:  /* *avx512fp16_vpternlogv8hf_2 */
   12125          663 :     case 6636:  /* *avx512fp16_vpternlogv8hf_2 */
   12126          663 :     case 6635:  /* *avx512fp16_vpternlogv8hf_2 */
   12127          663 :     case 6634:  /* *avx512fp16_vpternlogv8hf_2 */
   12128          663 :     case 6633:  /* *avx512fp16_vpternlogv8hf_2 */
   12129          663 :     case 6632:  /* *avx512fp16_vpternlogv8hf_2 */
   12130          663 :     case 6631:  /* *avx512fp16_vpternlogv8hf_2 */
   12131          663 :     case 6630:  /* *avx512fp16_vpternlogv8hf_2 */
   12132          663 :     case 6629:  /* *avx512fp16_vpternlogv8hf_2 */
   12133          663 :     case 6628:  /* *avx512fp16_vpternlogv8hf_2 */
   12134          663 :     case 6627:  /* *avx512fp16_vpternlogv8hf_2 */
   12135          663 :     case 6626:  /* *avx512fp16_vpternlogv8hf_2 */
   12136          663 :     case 6625:  /* *avx512fp16_vpternlogv8hf_2 */
   12137          663 :     case 6624:  /* *avx512fp16_vpternlogv8hf_2 */
   12138          663 :     case 6623:  /* *avx512fp16_vpternlogv8hf_2 */
   12139          663 :     case 6622:  /* *avx512fp16_vpternlogv8hf_2 */
   12140          663 :     case 6621:  /* *avx512fp16_vpternlogv8hf_2 */
   12141          663 :     case 6620:  /* *avx512fp16_vpternlogv8hf_2 */
   12142          663 :     case 6619:  /* *avx512fp16_vpternlogv8hf_2 */
   12143          663 :     case 6618:  /* *avx512fp16_vpternlogv8hf_2 */
   12144          663 :     case 6617:  /* *avx512fp16_vpternlogv8hf_2 */
   12145          663 :     case 6616:  /* *avx512vl_vpternlogv16hf_2 */
   12146          663 :     case 6615:  /* *avx512vl_vpternlogv16hf_2 */
   12147          663 :     case 6614:  /* *avx512vl_vpternlogv16hf_2 */
   12148          663 :     case 6613:  /* *avx512vl_vpternlogv16hf_2 */
   12149          663 :     case 6612:  /* *avx512vl_vpternlogv16hf_2 */
   12150          663 :     case 6611:  /* *avx512vl_vpternlogv16hf_2 */
   12151          663 :     case 6610:  /* *avx512vl_vpternlogv16hf_2 */
   12152          663 :     case 6609:  /* *avx512vl_vpternlogv16hf_2 */
   12153          663 :     case 6608:  /* *avx512vl_vpternlogv16hf_2 */
   12154          663 :     case 6607:  /* *avx512vl_vpternlogv16hf_2 */
   12155          663 :     case 6606:  /* *avx512vl_vpternlogv16hf_2 */
   12156          663 :     case 6605:  /* *avx512vl_vpternlogv16hf_2 */
   12157          663 :     case 6604:  /* *avx512vl_vpternlogv16hf_2 */
   12158          663 :     case 6603:  /* *avx512vl_vpternlogv16hf_2 */
   12159          663 :     case 6602:  /* *avx512vl_vpternlogv16hf_2 */
   12160          663 :     case 6601:  /* *avx512vl_vpternlogv16hf_2 */
   12161          663 :     case 6600:  /* *avx512vl_vpternlogv16hf_2 */
   12162          663 :     case 6599:  /* *avx512vl_vpternlogv16hf_2 */
   12163          663 :     case 6598:  /* *avx512vl_vpternlogv16hf_2 */
   12164          663 :     case 6597:  /* *avx512vl_vpternlogv16hf_2 */
   12165          663 :     case 6596:  /* *avx512vl_vpternlogv16hf_2 */
   12166          663 :     case 6595:  /* *avx512vl_vpternlogv16hf_2 */
   12167          663 :     case 6594:  /* *avx512vl_vpternlogv16hf_2 */
   12168          663 :     case 6593:  /* *avx512vl_vpternlogv16hf_2 */
   12169          663 :     case 6592:  /* *avx512vl_vpternlogv16hf_2 */
   12170          663 :     case 6591:  /* *avx512vl_vpternlogv16hf_2 */
   12171          663 :     case 6590:  /* *avx512vl_vpternlogv16hf_2 */
   12172          663 :     case 6589:  /* *avx512bw_vpternlogv32hf_2 */
   12173          663 :     case 6588:  /* *avx512bw_vpternlogv32hf_2 */
   12174          663 :     case 6587:  /* *avx512bw_vpternlogv32hf_2 */
   12175          663 :     case 6586:  /* *avx512bw_vpternlogv32hf_2 */
   12176          663 :     case 6585:  /* *avx512bw_vpternlogv32hf_2 */
   12177          663 :     case 6584:  /* *avx512bw_vpternlogv32hf_2 */
   12178          663 :     case 6583:  /* *avx512bw_vpternlogv32hf_2 */
   12179          663 :     case 6582:  /* *avx512bw_vpternlogv32hf_2 */
   12180          663 :     case 6581:  /* *avx512bw_vpternlogv32hf_2 */
   12181          663 :     case 6580:  /* *avx512bw_vpternlogv32hf_2 */
   12182          663 :     case 6579:  /* *avx512bw_vpternlogv32hf_2 */
   12183          663 :     case 6578:  /* *avx512bw_vpternlogv32hf_2 */
   12184          663 :     case 6577:  /* *avx512bw_vpternlogv32hf_2 */
   12185          663 :     case 6576:  /* *avx512bw_vpternlogv32hf_2 */
   12186          663 :     case 6575:  /* *avx512bw_vpternlogv32hf_2 */
   12187          663 :     case 6574:  /* *avx512bw_vpternlogv32hf_2 */
   12188          663 :     case 6573:  /* *avx512bw_vpternlogv32hf_2 */
   12189          663 :     case 6572:  /* *avx512bw_vpternlogv32hf_2 */
   12190          663 :     case 6571:  /* *avx512bw_vpternlogv32hf_2 */
   12191          663 :     case 6570:  /* *avx512bw_vpternlogv32hf_2 */
   12192          663 :     case 6569:  /* *avx512bw_vpternlogv32hf_2 */
   12193          663 :     case 6568:  /* *avx512bw_vpternlogv32hf_2 */
   12194          663 :     case 6567:  /* *avx512bw_vpternlogv32hf_2 */
   12195          663 :     case 6566:  /* *avx512bw_vpternlogv32hf_2 */
   12196          663 :     case 6565:  /* *avx512bw_vpternlogv32hf_2 */
   12197          663 :     case 6564:  /* *avx512bw_vpternlogv32hf_2 */
   12198          663 :     case 6563:  /* *avx512bw_vpternlogv32hf_2 */
   12199          663 :     case 6562:  /* *avx512vl_vpternlogv2di_2 */
   12200          663 :     case 6561:  /* *avx512vl_vpternlogv2di_2 */
   12201          663 :     case 6560:  /* *avx512vl_vpternlogv2di_2 */
   12202          663 :     case 6559:  /* *avx512vl_vpternlogv2di_2 */
   12203          663 :     case 6558:  /* *avx512vl_vpternlogv2di_2 */
   12204          663 :     case 6557:  /* *avx512vl_vpternlogv2di_2 */
   12205          663 :     case 6556:  /* *avx512vl_vpternlogv2di_2 */
   12206          663 :     case 6555:  /* *avx512vl_vpternlogv2di_2 */
   12207          663 :     case 6554:  /* *avx512vl_vpternlogv2di_2 */
   12208          663 :     case 6553:  /* *avx512vl_vpternlogv2di_2 */
   12209          663 :     case 6552:  /* *avx512vl_vpternlogv2di_2 */
   12210          663 :     case 6551:  /* *avx512vl_vpternlogv2di_2 */
   12211          663 :     case 6550:  /* *avx512vl_vpternlogv2di_2 */
   12212          663 :     case 6549:  /* *avx512vl_vpternlogv2di_2 */
   12213          663 :     case 6548:  /* *avx512vl_vpternlogv2di_2 */
   12214          663 :     case 6547:  /* *avx512vl_vpternlogv2di_2 */
   12215          663 :     case 6546:  /* *avx512vl_vpternlogv2di_2 */
   12216          663 :     case 6545:  /* *avx512vl_vpternlogv2di_2 */
   12217          663 :     case 6544:  /* *avx512vl_vpternlogv2di_2 */
   12218          663 :     case 6543:  /* *avx512vl_vpternlogv2di_2 */
   12219          663 :     case 6542:  /* *avx512vl_vpternlogv2di_2 */
   12220          663 :     case 6541:  /* *avx512vl_vpternlogv2di_2 */
   12221          663 :     case 6540:  /* *avx512vl_vpternlogv2di_2 */
   12222          663 :     case 6539:  /* *avx512vl_vpternlogv2di_2 */
   12223          663 :     case 6538:  /* *avx512vl_vpternlogv2di_2 */
   12224          663 :     case 6537:  /* *avx512vl_vpternlogv2di_2 */
   12225          663 :     case 6536:  /* *avx512vl_vpternlogv2di_2 */
   12226          663 :     case 6535:  /* *avx512vl_vpternlogv4di_2 */
   12227          663 :     case 6534:  /* *avx512vl_vpternlogv4di_2 */
   12228          663 :     case 6533:  /* *avx512vl_vpternlogv4di_2 */
   12229          663 :     case 6532:  /* *avx512vl_vpternlogv4di_2 */
   12230          663 :     case 6531:  /* *avx512vl_vpternlogv4di_2 */
   12231          663 :     case 6530:  /* *avx512vl_vpternlogv4di_2 */
   12232          663 :     case 6529:  /* *avx512vl_vpternlogv4di_2 */
   12233          663 :     case 6528:  /* *avx512vl_vpternlogv4di_2 */
   12234          663 :     case 6527:  /* *avx512vl_vpternlogv4di_2 */
   12235          663 :     case 6526:  /* *avx512vl_vpternlogv4di_2 */
   12236          663 :     case 6525:  /* *avx512vl_vpternlogv4di_2 */
   12237          663 :     case 6524:  /* *avx512vl_vpternlogv4di_2 */
   12238          663 :     case 6523:  /* *avx512vl_vpternlogv4di_2 */
   12239          663 :     case 6522:  /* *avx512vl_vpternlogv4di_2 */
   12240          663 :     case 6521:  /* *avx512vl_vpternlogv4di_2 */
   12241          663 :     case 6520:  /* *avx512vl_vpternlogv4di_2 */
   12242          663 :     case 6519:  /* *avx512vl_vpternlogv4di_2 */
   12243          663 :     case 6518:  /* *avx512vl_vpternlogv4di_2 */
   12244          663 :     case 6517:  /* *avx512vl_vpternlogv4di_2 */
   12245          663 :     case 6516:  /* *avx512vl_vpternlogv4di_2 */
   12246          663 :     case 6515:  /* *avx512vl_vpternlogv4di_2 */
   12247          663 :     case 6514:  /* *avx512vl_vpternlogv4di_2 */
   12248          663 :     case 6513:  /* *avx512vl_vpternlogv4di_2 */
   12249          663 :     case 6512:  /* *avx512vl_vpternlogv4di_2 */
   12250          663 :     case 6511:  /* *avx512vl_vpternlogv4di_2 */
   12251          663 :     case 6510:  /* *avx512vl_vpternlogv4di_2 */
   12252          663 :     case 6509:  /* *avx512vl_vpternlogv4di_2 */
   12253          663 :     case 6508:  /* *avx512f_vpternlogv8di_2 */
   12254          663 :     case 6507:  /* *avx512f_vpternlogv8di_2 */
   12255          663 :     case 6506:  /* *avx512f_vpternlogv8di_2 */
   12256          663 :     case 6505:  /* *avx512f_vpternlogv8di_2 */
   12257          663 :     case 6504:  /* *avx512f_vpternlogv8di_2 */
   12258          663 :     case 6503:  /* *avx512f_vpternlogv8di_2 */
   12259          663 :     case 6502:  /* *avx512f_vpternlogv8di_2 */
   12260          663 :     case 6501:  /* *avx512f_vpternlogv8di_2 */
   12261          663 :     case 6500:  /* *avx512f_vpternlogv8di_2 */
   12262          663 :     case 6499:  /* *avx512f_vpternlogv8di_2 */
   12263          663 :     case 6498:  /* *avx512f_vpternlogv8di_2 */
   12264          663 :     case 6497:  /* *avx512f_vpternlogv8di_2 */
   12265          663 :     case 6496:  /* *avx512f_vpternlogv8di_2 */
   12266          663 :     case 6495:  /* *avx512f_vpternlogv8di_2 */
   12267          663 :     case 6494:  /* *avx512f_vpternlogv8di_2 */
   12268          663 :     case 6493:  /* *avx512f_vpternlogv8di_2 */
   12269          663 :     case 6492:  /* *avx512f_vpternlogv8di_2 */
   12270          663 :     case 6491:  /* *avx512f_vpternlogv8di_2 */
   12271          663 :     case 6490:  /* *avx512f_vpternlogv8di_2 */
   12272          663 :     case 6489:  /* *avx512f_vpternlogv8di_2 */
   12273          663 :     case 6488:  /* *avx512f_vpternlogv8di_2 */
   12274          663 :     case 6487:  /* *avx512f_vpternlogv8di_2 */
   12275          663 :     case 6486:  /* *avx512f_vpternlogv8di_2 */
   12276          663 :     case 6485:  /* *avx512f_vpternlogv8di_2 */
   12277          663 :     case 6484:  /* *avx512f_vpternlogv8di_2 */
   12278          663 :     case 6483:  /* *avx512f_vpternlogv8di_2 */
   12279          663 :     case 6482:  /* *avx512f_vpternlogv8di_2 */
   12280          663 :     case 6481:  /* *avx512vl_vpternlogv4si_2 */
   12281          663 :     case 6480:  /* *avx512vl_vpternlogv4si_2 */
   12282          663 :     case 6479:  /* *avx512vl_vpternlogv4si_2 */
   12283          663 :     case 6478:  /* *avx512vl_vpternlogv4si_2 */
   12284          663 :     case 6477:  /* *avx512vl_vpternlogv4si_2 */
   12285          663 :     case 6476:  /* *avx512vl_vpternlogv4si_2 */
   12286          663 :     case 6475:  /* *avx512vl_vpternlogv4si_2 */
   12287          663 :     case 6474:  /* *avx512vl_vpternlogv4si_2 */
   12288          663 :     case 6473:  /* *avx512vl_vpternlogv4si_2 */
   12289          663 :     case 6472:  /* *avx512vl_vpternlogv4si_2 */
   12290          663 :     case 6471:  /* *avx512vl_vpternlogv4si_2 */
   12291          663 :     case 6470:  /* *avx512vl_vpternlogv4si_2 */
   12292          663 :     case 6469:  /* *avx512vl_vpternlogv4si_2 */
   12293          663 :     case 6468:  /* *avx512vl_vpternlogv4si_2 */
   12294          663 :     case 6467:  /* *avx512vl_vpternlogv4si_2 */
   12295          663 :     case 6466:  /* *avx512vl_vpternlogv4si_2 */
   12296          663 :     case 6465:  /* *avx512vl_vpternlogv4si_2 */
   12297          663 :     case 6464:  /* *avx512vl_vpternlogv4si_2 */
   12298          663 :     case 6463:  /* *avx512vl_vpternlogv4si_2 */
   12299          663 :     case 6462:  /* *avx512vl_vpternlogv4si_2 */
   12300          663 :     case 6461:  /* *avx512vl_vpternlogv4si_2 */
   12301          663 :     case 6460:  /* *avx512vl_vpternlogv4si_2 */
   12302          663 :     case 6459:  /* *avx512vl_vpternlogv4si_2 */
   12303          663 :     case 6458:  /* *avx512vl_vpternlogv4si_2 */
   12304          663 :     case 6457:  /* *avx512vl_vpternlogv4si_2 */
   12305          663 :     case 6456:  /* *avx512vl_vpternlogv4si_2 */
   12306          663 :     case 6455:  /* *avx512vl_vpternlogv4si_2 */
   12307          663 :     case 6454:  /* *avx512vl_vpternlogv8si_2 */
   12308          663 :     case 6453:  /* *avx512vl_vpternlogv8si_2 */
   12309          663 :     case 6452:  /* *avx512vl_vpternlogv8si_2 */
   12310          663 :     case 6451:  /* *avx512vl_vpternlogv8si_2 */
   12311          663 :     case 6450:  /* *avx512vl_vpternlogv8si_2 */
   12312          663 :     case 6449:  /* *avx512vl_vpternlogv8si_2 */
   12313          663 :     case 6448:  /* *avx512vl_vpternlogv8si_2 */
   12314          663 :     case 6447:  /* *avx512vl_vpternlogv8si_2 */
   12315          663 :     case 6446:  /* *avx512vl_vpternlogv8si_2 */
   12316          663 :     case 6445:  /* *avx512vl_vpternlogv8si_2 */
   12317          663 :     case 6444:  /* *avx512vl_vpternlogv8si_2 */
   12318          663 :     case 6443:  /* *avx512vl_vpternlogv8si_2 */
   12319          663 :     case 6442:  /* *avx512vl_vpternlogv8si_2 */
   12320          663 :     case 6441:  /* *avx512vl_vpternlogv8si_2 */
   12321          663 :     case 6440:  /* *avx512vl_vpternlogv8si_2 */
   12322          663 :     case 6439:  /* *avx512vl_vpternlogv8si_2 */
   12323          663 :     case 6438:  /* *avx512vl_vpternlogv8si_2 */
   12324          663 :     case 6437:  /* *avx512vl_vpternlogv8si_2 */
   12325          663 :     case 6436:  /* *avx512vl_vpternlogv8si_2 */
   12326          663 :     case 6435:  /* *avx512vl_vpternlogv8si_2 */
   12327          663 :     case 6434:  /* *avx512vl_vpternlogv8si_2 */
   12328          663 :     case 6433:  /* *avx512vl_vpternlogv8si_2 */
   12329          663 :     case 6432:  /* *avx512vl_vpternlogv8si_2 */
   12330          663 :     case 6431:  /* *avx512vl_vpternlogv8si_2 */
   12331          663 :     case 6430:  /* *avx512vl_vpternlogv8si_2 */
   12332          663 :     case 6429:  /* *avx512vl_vpternlogv8si_2 */
   12333          663 :     case 6428:  /* *avx512vl_vpternlogv8si_2 */
   12334          663 :     case 6427:  /* *avx512f_vpternlogv16si_2 */
   12335          663 :     case 6426:  /* *avx512f_vpternlogv16si_2 */
   12336          663 :     case 6425:  /* *avx512f_vpternlogv16si_2 */
   12337          663 :     case 6424:  /* *avx512f_vpternlogv16si_2 */
   12338          663 :     case 6423:  /* *avx512f_vpternlogv16si_2 */
   12339          663 :     case 6422:  /* *avx512f_vpternlogv16si_2 */
   12340          663 :     case 6421:  /* *avx512f_vpternlogv16si_2 */
   12341          663 :     case 6420:  /* *avx512f_vpternlogv16si_2 */
   12342          663 :     case 6419:  /* *avx512f_vpternlogv16si_2 */
   12343          663 :     case 6418:  /* *avx512f_vpternlogv16si_2 */
   12344          663 :     case 6417:  /* *avx512f_vpternlogv16si_2 */
   12345          663 :     case 6416:  /* *avx512f_vpternlogv16si_2 */
   12346          663 :     case 6415:  /* *avx512f_vpternlogv16si_2 */
   12347          663 :     case 6414:  /* *avx512f_vpternlogv16si_2 */
   12348          663 :     case 6413:  /* *avx512f_vpternlogv16si_2 */
   12349          663 :     case 6412:  /* *avx512f_vpternlogv16si_2 */
   12350          663 :     case 6411:  /* *avx512f_vpternlogv16si_2 */
   12351          663 :     case 6410:  /* *avx512f_vpternlogv16si_2 */
   12352          663 :     case 6409:  /* *avx512f_vpternlogv16si_2 */
   12353          663 :     case 6408:  /* *avx512f_vpternlogv16si_2 */
   12354          663 :     case 6407:  /* *avx512f_vpternlogv16si_2 */
   12355          663 :     case 6406:  /* *avx512f_vpternlogv16si_2 */
   12356          663 :     case 6405:  /* *avx512f_vpternlogv16si_2 */
   12357          663 :     case 6404:  /* *avx512f_vpternlogv16si_2 */
   12358          663 :     case 6403:  /* *avx512f_vpternlogv16si_2 */
   12359          663 :     case 6402:  /* *avx512f_vpternlogv16si_2 */
   12360          663 :     case 6401:  /* *avx512f_vpternlogv16si_2 */
   12361          663 :     case 6400:  /* *avx512vl_vpternlogv8hi_2 */
   12362          663 :     case 6399:  /* *avx512vl_vpternlogv8hi_2 */
   12363          663 :     case 6398:  /* *avx512vl_vpternlogv8hi_2 */
   12364          663 :     case 6397:  /* *avx512vl_vpternlogv8hi_2 */
   12365          663 :     case 6396:  /* *avx512vl_vpternlogv8hi_2 */
   12366          663 :     case 6395:  /* *avx512vl_vpternlogv8hi_2 */
   12367          663 :     case 6394:  /* *avx512vl_vpternlogv8hi_2 */
   12368          663 :     case 6393:  /* *avx512vl_vpternlogv8hi_2 */
   12369          663 :     case 6392:  /* *avx512vl_vpternlogv8hi_2 */
   12370          663 :     case 6391:  /* *avx512vl_vpternlogv8hi_2 */
   12371          663 :     case 6390:  /* *avx512vl_vpternlogv8hi_2 */
   12372          663 :     case 6389:  /* *avx512vl_vpternlogv8hi_2 */
   12373          663 :     case 6388:  /* *avx512vl_vpternlogv8hi_2 */
   12374          663 :     case 6387:  /* *avx512vl_vpternlogv8hi_2 */
   12375          663 :     case 6386:  /* *avx512vl_vpternlogv8hi_2 */
   12376          663 :     case 6385:  /* *avx512vl_vpternlogv8hi_2 */
   12377          663 :     case 6384:  /* *avx512vl_vpternlogv8hi_2 */
   12378          663 :     case 6383:  /* *avx512vl_vpternlogv8hi_2 */
   12379          663 :     case 6382:  /* *avx512vl_vpternlogv8hi_2 */
   12380          663 :     case 6381:  /* *avx512vl_vpternlogv8hi_2 */
   12381          663 :     case 6380:  /* *avx512vl_vpternlogv8hi_2 */
   12382          663 :     case 6379:  /* *avx512vl_vpternlogv8hi_2 */
   12383          663 :     case 6378:  /* *avx512vl_vpternlogv8hi_2 */
   12384          663 :     case 6377:  /* *avx512vl_vpternlogv8hi_2 */
   12385          663 :     case 6376:  /* *avx512vl_vpternlogv8hi_2 */
   12386          663 :     case 6375:  /* *avx512vl_vpternlogv8hi_2 */
   12387          663 :     case 6374:  /* *avx512vl_vpternlogv8hi_2 */
   12388          663 :     case 6373:  /* *avx512vl_vpternlogv16hi_2 */
   12389          663 :     case 6372:  /* *avx512vl_vpternlogv16hi_2 */
   12390          663 :     case 6371:  /* *avx512vl_vpternlogv16hi_2 */
   12391          663 :     case 6370:  /* *avx512vl_vpternlogv16hi_2 */
   12392          663 :     case 6369:  /* *avx512vl_vpternlogv16hi_2 */
   12393          663 :     case 6368:  /* *avx512vl_vpternlogv16hi_2 */
   12394          663 :     case 6367:  /* *avx512vl_vpternlogv16hi_2 */
   12395          663 :     case 6366:  /* *avx512vl_vpternlogv16hi_2 */
   12396          663 :     case 6365:  /* *avx512vl_vpternlogv16hi_2 */
   12397          663 :     case 6364:  /* *avx512vl_vpternlogv16hi_2 */
   12398          663 :     case 6363:  /* *avx512vl_vpternlogv16hi_2 */
   12399          663 :     case 6362:  /* *avx512vl_vpternlogv16hi_2 */
   12400          663 :     case 6361:  /* *avx512vl_vpternlogv16hi_2 */
   12401          663 :     case 6360:  /* *avx512vl_vpternlogv16hi_2 */
   12402          663 :     case 6359:  /* *avx512vl_vpternlogv16hi_2 */
   12403          663 :     case 6358:  /* *avx512vl_vpternlogv16hi_2 */
   12404          663 :     case 6357:  /* *avx512vl_vpternlogv16hi_2 */
   12405          663 :     case 6356:  /* *avx512vl_vpternlogv16hi_2 */
   12406          663 :     case 6355:  /* *avx512vl_vpternlogv16hi_2 */
   12407          663 :     case 6354:  /* *avx512vl_vpternlogv16hi_2 */
   12408          663 :     case 6353:  /* *avx512vl_vpternlogv16hi_2 */
   12409          663 :     case 6352:  /* *avx512vl_vpternlogv16hi_2 */
   12410          663 :     case 6351:  /* *avx512vl_vpternlogv16hi_2 */
   12411          663 :     case 6350:  /* *avx512vl_vpternlogv16hi_2 */
   12412          663 :     case 6349:  /* *avx512vl_vpternlogv16hi_2 */
   12413          663 :     case 6348:  /* *avx512vl_vpternlogv16hi_2 */
   12414          663 :     case 6347:  /* *avx512vl_vpternlogv16hi_2 */
   12415          663 :     case 6346:  /* *avx512bw_vpternlogv32hi_2 */
   12416          663 :     case 6345:  /* *avx512bw_vpternlogv32hi_2 */
   12417          663 :     case 6344:  /* *avx512bw_vpternlogv32hi_2 */
   12418          663 :     case 6343:  /* *avx512bw_vpternlogv32hi_2 */
   12419          663 :     case 6342:  /* *avx512bw_vpternlogv32hi_2 */
   12420          663 :     case 6341:  /* *avx512bw_vpternlogv32hi_2 */
   12421          663 :     case 6340:  /* *avx512bw_vpternlogv32hi_2 */
   12422          663 :     case 6339:  /* *avx512bw_vpternlogv32hi_2 */
   12423          663 :     case 6338:  /* *avx512bw_vpternlogv32hi_2 */
   12424          663 :     case 6337:  /* *avx512bw_vpternlogv32hi_2 */
   12425          663 :     case 6336:  /* *avx512bw_vpternlogv32hi_2 */
   12426          663 :     case 6335:  /* *avx512bw_vpternlogv32hi_2 */
   12427          663 :     case 6334:  /* *avx512bw_vpternlogv32hi_2 */
   12428          663 :     case 6333:  /* *avx512bw_vpternlogv32hi_2 */
   12429          663 :     case 6332:  /* *avx512bw_vpternlogv32hi_2 */
   12430          663 :     case 6331:  /* *avx512bw_vpternlogv32hi_2 */
   12431          663 :     case 6330:  /* *avx512bw_vpternlogv32hi_2 */
   12432          663 :     case 6329:  /* *avx512bw_vpternlogv32hi_2 */
   12433          663 :     case 6328:  /* *avx512bw_vpternlogv32hi_2 */
   12434          663 :     case 6327:  /* *avx512bw_vpternlogv32hi_2 */
   12435          663 :     case 6326:  /* *avx512bw_vpternlogv32hi_2 */
   12436          663 :     case 6325:  /* *avx512bw_vpternlogv32hi_2 */
   12437          663 :     case 6324:  /* *avx512bw_vpternlogv32hi_2 */
   12438          663 :     case 6323:  /* *avx512bw_vpternlogv32hi_2 */
   12439          663 :     case 6322:  /* *avx512bw_vpternlogv32hi_2 */
   12440          663 :     case 6321:  /* *avx512bw_vpternlogv32hi_2 */
   12441          663 :     case 6320:  /* *avx512bw_vpternlogv32hi_2 */
   12442          663 :     case 6319:  /* *avx512vl_vpternlogv16qi_2 */
   12443          663 :     case 6318:  /* *avx512vl_vpternlogv16qi_2 */
   12444          663 :     case 6317:  /* *avx512vl_vpternlogv16qi_2 */
   12445          663 :     case 6316:  /* *avx512vl_vpternlogv16qi_2 */
   12446          663 :     case 6315:  /* *avx512vl_vpternlogv16qi_2 */
   12447          663 :     case 6314:  /* *avx512vl_vpternlogv16qi_2 */
   12448          663 :     case 6313:  /* *avx512vl_vpternlogv16qi_2 */
   12449          663 :     case 6312:  /* *avx512vl_vpternlogv16qi_2 */
   12450          663 :     case 6311:  /* *avx512vl_vpternlogv16qi_2 */
   12451          663 :     case 6310:  /* *avx512vl_vpternlogv16qi_2 */
   12452          663 :     case 6309:  /* *avx512vl_vpternlogv16qi_2 */
   12453          663 :     case 6308:  /* *avx512vl_vpternlogv16qi_2 */
   12454          663 :     case 6307:  /* *avx512vl_vpternlogv16qi_2 */
   12455          663 :     case 6306:  /* *avx512vl_vpternlogv16qi_2 */
   12456          663 :     case 6305:  /* *avx512vl_vpternlogv16qi_2 */
   12457          663 :     case 6304:  /* *avx512vl_vpternlogv16qi_2 */
   12458          663 :     case 6303:  /* *avx512vl_vpternlogv16qi_2 */
   12459          663 :     case 6302:  /* *avx512vl_vpternlogv16qi_2 */
   12460          663 :     case 6301:  /* *avx512vl_vpternlogv16qi_2 */
   12461          663 :     case 6300:  /* *avx512vl_vpternlogv16qi_2 */
   12462          663 :     case 6299:  /* *avx512vl_vpternlogv16qi_2 */
   12463          663 :     case 6298:  /* *avx512vl_vpternlogv16qi_2 */
   12464          663 :     case 6297:  /* *avx512vl_vpternlogv16qi_2 */
   12465          663 :     case 6296:  /* *avx512vl_vpternlogv16qi_2 */
   12466          663 :     case 6295:  /* *avx512vl_vpternlogv16qi_2 */
   12467          663 :     case 6294:  /* *avx512vl_vpternlogv16qi_2 */
   12468          663 :     case 6293:  /* *avx512vl_vpternlogv16qi_2 */
   12469          663 :     case 6292:  /* *avx512vl_vpternlogv32qi_2 */
   12470          663 :     case 6291:  /* *avx512vl_vpternlogv32qi_2 */
   12471          663 :     case 6290:  /* *avx512vl_vpternlogv32qi_2 */
   12472          663 :     case 6289:  /* *avx512vl_vpternlogv32qi_2 */
   12473          663 :     case 6288:  /* *avx512vl_vpternlogv32qi_2 */
   12474          663 :     case 6287:  /* *avx512vl_vpternlogv32qi_2 */
   12475          663 :     case 6286:  /* *avx512vl_vpternlogv32qi_2 */
   12476          663 :     case 6285:  /* *avx512vl_vpternlogv32qi_2 */
   12477          663 :     case 6284:  /* *avx512vl_vpternlogv32qi_2 */
   12478          663 :     case 6283:  /* *avx512vl_vpternlogv32qi_2 */
   12479          663 :     case 6282:  /* *avx512vl_vpternlogv32qi_2 */
   12480          663 :     case 6281:  /* *avx512vl_vpternlogv32qi_2 */
   12481          663 :     case 6280:  /* *avx512vl_vpternlogv32qi_2 */
   12482          663 :     case 6279:  /* *avx512vl_vpternlogv32qi_2 */
   12483          663 :     case 6278:  /* *avx512vl_vpternlogv32qi_2 */
   12484          663 :     case 6277:  /* *avx512vl_vpternlogv32qi_2 */
   12485          663 :     case 6276:  /* *avx512vl_vpternlogv32qi_2 */
   12486          663 :     case 6275:  /* *avx512vl_vpternlogv32qi_2 */
   12487          663 :     case 6274:  /* *avx512vl_vpternlogv32qi_2 */
   12488          663 :     case 6273:  /* *avx512vl_vpternlogv32qi_2 */
   12489          663 :     case 6272:  /* *avx512vl_vpternlogv32qi_2 */
   12490          663 :     case 6271:  /* *avx512vl_vpternlogv32qi_2 */
   12491          663 :     case 6270:  /* *avx512vl_vpternlogv32qi_2 */
   12492          663 :     case 6269:  /* *avx512vl_vpternlogv32qi_2 */
   12493          663 :     case 6268:  /* *avx512vl_vpternlogv32qi_2 */
   12494          663 :     case 6267:  /* *avx512vl_vpternlogv32qi_2 */
   12495          663 :     case 6266:  /* *avx512vl_vpternlogv32qi_2 */
   12496          663 :     case 6265:  /* *avx512bw_vpternlogv64qi_2 */
   12497          663 :     case 6264:  /* *avx512bw_vpternlogv64qi_2 */
   12498          663 :     case 6263:  /* *avx512bw_vpternlogv64qi_2 */
   12499          663 :     case 6262:  /* *avx512bw_vpternlogv64qi_2 */
   12500          663 :     case 6261:  /* *avx512bw_vpternlogv64qi_2 */
   12501          663 :     case 6260:  /* *avx512bw_vpternlogv64qi_2 */
   12502          663 :     case 6259:  /* *avx512bw_vpternlogv64qi_2 */
   12503          663 :     case 6258:  /* *avx512bw_vpternlogv64qi_2 */
   12504          663 :     case 6257:  /* *avx512bw_vpternlogv64qi_2 */
   12505          663 :     case 6256:  /* *avx512bw_vpternlogv64qi_2 */
   12506          663 :     case 6255:  /* *avx512bw_vpternlogv64qi_2 */
   12507          663 :     case 6254:  /* *avx512bw_vpternlogv64qi_2 */
   12508          663 :     case 6253:  /* *avx512bw_vpternlogv64qi_2 */
   12509          663 :     case 6252:  /* *avx512bw_vpternlogv64qi_2 */
   12510          663 :     case 6251:  /* *avx512bw_vpternlogv64qi_2 */
   12511          663 :     case 6250:  /* *avx512bw_vpternlogv64qi_2 */
   12512          663 :     case 6249:  /* *avx512bw_vpternlogv64qi_2 */
   12513          663 :     case 6248:  /* *avx512bw_vpternlogv64qi_2 */
   12514          663 :     case 6247:  /* *avx512bw_vpternlogv64qi_2 */
   12515          663 :     case 6246:  /* *avx512bw_vpternlogv64qi_2 */
   12516          663 :     case 6245:  /* *avx512bw_vpternlogv64qi_2 */
   12517          663 :     case 6244:  /* *avx512bw_vpternlogv64qi_2 */
   12518          663 :     case 6243:  /* *avx512bw_vpternlogv64qi_2 */
   12519          663 :     case 6242:  /* *avx512bw_vpternlogv64qi_2 */
   12520          663 :     case 6241:  /* *avx512bw_vpternlogv64qi_2 */
   12521          663 :     case 6240:  /* *avx512bw_vpternlogv64qi_2 */
   12522          663 :     case 6239:  /* *avx512bw_vpternlogv64qi_2 */
   12523          663 :     case 375:  /* *leahi_general_3b */
   12524          663 :     case 374:  /* *leaqi_general_3b */
   12525          663 :     case 373:  /* *leahi_general_3 */
   12526          663 :     case 372:  /* *leaqi_general_3 */
   12527          663 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   12528          663 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   12529          663 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 1));
   12530          663 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   12531          663 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (pat, 1), 1));
   12532          663 :       break;
   12533              : 
   12534        47237 :     case 9121:  /* xop_pmacssdd */
   12535        47237 :     case 9120:  /* xop_pmacsdd */
   12536        47237 :     case 9119:  /* xop_pmacssww */
   12537        47237 :     case 9118:  /* xop_pmacsww */
   12538        47237 :     case 7796:  /* *avx2_lshrv2di3_2 */
   12539        47237 :     case 7795:  /* *avx2_lshrv4di3_2 */
   12540        47237 :     case 7794:  /* *avx2_lshrv2di3_1 */
   12541        47237 :     case 7793:  /* *avx2_lshrv4di3_1 */
   12542        47237 :     case 7102:  /* *avx512vl_vpternlogv2df_3 */
   12543        47237 :     case 7101:  /* *avx512vl_vpternlogv2df_3 */
   12544        47237 :     case 7100:  /* *avx512vl_vpternlogv2df_3 */
   12545        47237 :     case 7099:  /* *avx512vl_vpternlogv2df_3 */
   12546        47237 :     case 7098:  /* *avx512vl_vpternlogv2df_3 */
   12547        47237 :     case 7097:  /* *avx512vl_vpternlogv2df_3 */
   12548        47237 :     case 7096:  /* *avx512vl_vpternlogv2df_3 */
   12549        47237 :     case 7095:  /* *avx512vl_vpternlogv2df_3 */
   12550        47237 :     case 7094:  /* *avx512vl_vpternlogv2df_3 */
   12551        47237 :     case 7093:  /* *avx512vl_vpternlogv4df_3 */
   12552        47237 :     case 7092:  /* *avx512vl_vpternlogv4df_3 */
   12553        47237 :     case 7091:  /* *avx512vl_vpternlogv4df_3 */
   12554        47237 :     case 7090:  /* *avx512vl_vpternlogv4df_3 */
   12555        47237 :     case 7089:  /* *avx512vl_vpternlogv4df_3 */
   12556        47237 :     case 7088:  /* *avx512vl_vpternlogv4df_3 */
   12557        47237 :     case 7087:  /* *avx512vl_vpternlogv4df_3 */
   12558        47237 :     case 7086:  /* *avx512vl_vpternlogv4df_3 */
   12559        47237 :     case 7085:  /* *avx512vl_vpternlogv4df_3 */
   12560        47237 :     case 7084:  /* *avx512f_vpternlogv8df_3 */
   12561        47237 :     case 7083:  /* *avx512f_vpternlogv8df_3 */
   12562        47237 :     case 7082:  /* *avx512f_vpternlogv8df_3 */
   12563        47237 :     case 7081:  /* *avx512f_vpternlogv8df_3 */
   12564        47237 :     case 7080:  /* *avx512f_vpternlogv8df_3 */
   12565        47237 :     case 7079:  /* *avx512f_vpternlogv8df_3 */
   12566        47237 :     case 7078:  /* *avx512f_vpternlogv8df_3 */
   12567        47237 :     case 7077:  /* *avx512f_vpternlogv8df_3 */
   12568        47237 :     case 7076:  /* *avx512f_vpternlogv8df_3 */
   12569        47237 :     case 7075:  /* *avx512vl_vpternlogv4sf_3 */
   12570        47237 :     case 7074:  /* *avx512vl_vpternlogv4sf_3 */
   12571        47237 :     case 7073:  /* *avx512vl_vpternlogv4sf_3 */
   12572        47237 :     case 7072:  /* *avx512vl_vpternlogv4sf_3 */
   12573        47237 :     case 7071:  /* *avx512vl_vpternlogv4sf_3 */
   12574        47237 :     case 7070:  /* *avx512vl_vpternlogv4sf_3 */
   12575        47237 :     case 7069:  /* *avx512vl_vpternlogv4sf_3 */
   12576        47237 :     case 7068:  /* *avx512vl_vpternlogv4sf_3 */
   12577        47237 :     case 7067:  /* *avx512vl_vpternlogv4sf_3 */
   12578        47237 :     case 7066:  /* *avx512vl_vpternlogv8sf_3 */
   12579        47237 :     case 7065:  /* *avx512vl_vpternlogv8sf_3 */
   12580        47237 :     case 7064:  /* *avx512vl_vpternlogv8sf_3 */
   12581        47237 :     case 7063:  /* *avx512vl_vpternlogv8sf_3 */
   12582        47237 :     case 7062:  /* *avx512vl_vpternlogv8sf_3 */
   12583        47237 :     case 7061:  /* *avx512vl_vpternlogv8sf_3 */
   12584        47237 :     case 7060:  /* *avx512vl_vpternlogv8sf_3 */
   12585        47237 :     case 7059:  /* *avx512vl_vpternlogv8sf_3 */
   12586        47237 :     case 7058:  /* *avx512vl_vpternlogv8sf_3 */
   12587        47237 :     case 7057:  /* *avx512f_vpternlogv16sf_3 */
   12588        47237 :     case 7056:  /* *avx512f_vpternlogv16sf_3 */
   12589        47237 :     case 7055:  /* *avx512f_vpternlogv16sf_3 */
   12590        47237 :     case 7054:  /* *avx512f_vpternlogv16sf_3 */
   12591        47237 :     case 7053:  /* *avx512f_vpternlogv16sf_3 */
   12592        47237 :     case 7052:  /* *avx512f_vpternlogv16sf_3 */
   12593        47237 :     case 7051:  /* *avx512f_vpternlogv16sf_3 */
   12594        47237 :     case 7050:  /* *avx512f_vpternlogv16sf_3 */
   12595        47237 :     case 7049:  /* *avx512f_vpternlogv16sf_3 */
   12596        47237 :     case 7048:  /* *avx512vl_vpternlogv8bf_3 */
   12597        47237 :     case 7047:  /* *avx512vl_vpternlogv8bf_3 */
   12598        47237 :     case 7046:  /* *avx512vl_vpternlogv8bf_3 */
   12599        47237 :     case 7045:  /* *avx512vl_vpternlogv8bf_3 */
   12600        47237 :     case 7044:  /* *avx512vl_vpternlogv8bf_3 */
   12601        47237 :     case 7043:  /* *avx512vl_vpternlogv8bf_3 */
   12602        47237 :     case 7042:  /* *avx512vl_vpternlogv8bf_3 */
   12603        47237 :     case 7041:  /* *avx512vl_vpternlogv8bf_3 */
   12604        47237 :     case 7040:  /* *avx512vl_vpternlogv8bf_3 */
   12605        47237 :     case 7039:  /* *avx512vl_vpternlogv16bf_3 */
   12606        47237 :     case 7038:  /* *avx512vl_vpternlogv16bf_3 */
   12607        47237 :     case 7037:  /* *avx512vl_vpternlogv16bf_3 */
   12608        47237 :     case 7036:  /* *avx512vl_vpternlogv16bf_3 */
   12609        47237 :     case 7035:  /* *avx512vl_vpternlogv16bf_3 */
   12610        47237 :     case 7034:  /* *avx512vl_vpternlogv16bf_3 */
   12611        47237 :     case 7033:  /* *avx512vl_vpternlogv16bf_3 */
   12612        47237 :     case 7032:  /* *avx512vl_vpternlogv16bf_3 */
   12613        47237 :     case 7031:  /* *avx512vl_vpternlogv16bf_3 */
   12614        47237 :     case 7030:  /* *avx512bw_vpternlogv32bf_3 */
   12615        47237 :     case 7029:  /* *avx512bw_vpternlogv32bf_3 */
   12616        47237 :     case 7028:  /* *avx512bw_vpternlogv32bf_3 */
   12617        47237 :     case 7027:  /* *avx512bw_vpternlogv32bf_3 */
   12618        47237 :     case 7026:  /* *avx512bw_vpternlogv32bf_3 */
   12619        47237 :     case 7025:  /* *avx512bw_vpternlogv32bf_3 */
   12620        47237 :     case 7024:  /* *avx512bw_vpternlogv32bf_3 */
   12621        47237 :     case 7023:  /* *avx512bw_vpternlogv32bf_3 */
   12622        47237 :     case 7022:  /* *avx512bw_vpternlogv32bf_3 */
   12623        47237 :     case 7021:  /* *avx512fp16_vpternlogv8hf_3 */
   12624        47237 :     case 7020:  /* *avx512fp16_vpternlogv8hf_3 */
   12625        47237 :     case 7019:  /* *avx512fp16_vpternlogv8hf_3 */
   12626        47237 :     case 7018:  /* *avx512fp16_vpternlogv8hf_3 */
   12627        47237 :     case 7017:  /* *avx512fp16_vpternlogv8hf_3 */
   12628        47237 :     case 7016:  /* *avx512fp16_vpternlogv8hf_3 */
   12629        47237 :     case 7015:  /* *avx512fp16_vpternlogv8hf_3 */
   12630        47237 :     case 7014:  /* *avx512fp16_vpternlogv8hf_3 */
   12631        47237 :     case 7013:  /* *avx512fp16_vpternlogv8hf_3 */
   12632        47237 :     case 7012:  /* *avx512vl_vpternlogv16hf_3 */
   12633        47237 :     case 7011:  /* *avx512vl_vpternlogv16hf_3 */
   12634        47237 :     case 7010:  /* *avx512vl_vpternlogv16hf_3 */
   12635        47237 :     case 7009:  /* *avx512vl_vpternlogv16hf_3 */
   12636        47237 :     case 7008:  /* *avx512vl_vpternlogv16hf_3 */
   12637        47237 :     case 7007:  /* *avx512vl_vpternlogv16hf_3 */
   12638        47237 :     case 7006:  /* *avx512vl_vpternlogv16hf_3 */
   12639        47237 :     case 7005:  /* *avx512vl_vpternlogv16hf_3 */
   12640        47237 :     case 7004:  /* *avx512vl_vpternlogv16hf_3 */
   12641        47237 :     case 7003:  /* *avx512bw_vpternlogv32hf_3 */
   12642        47237 :     case 7002:  /* *avx512bw_vpternlogv32hf_3 */
   12643        47237 :     case 7001:  /* *avx512bw_vpternlogv32hf_3 */
   12644        47237 :     case 7000:  /* *avx512bw_vpternlogv32hf_3 */
   12645        47237 :     case 6999:  /* *avx512bw_vpternlogv32hf_3 */
   12646        47237 :     case 6998:  /* *avx512bw_vpternlogv32hf_3 */
   12647        47237 :     case 6997:  /* *avx512bw_vpternlogv32hf_3 */
   12648        47237 :     case 6996:  /* *avx512bw_vpternlogv32hf_3 */
   12649        47237 :     case 6995:  /* *avx512bw_vpternlogv32hf_3 */
   12650        47237 :     case 6994:  /* *avx512vl_vpternlogv2di_3 */
   12651        47237 :     case 6993:  /* *avx512vl_vpternlogv2di_3 */
   12652        47237 :     case 6992:  /* *avx512vl_vpternlogv2di_3 */
   12653        47237 :     case 6991:  /* *avx512vl_vpternlogv2di_3 */
   12654        47237 :     case 6990:  /* *avx512vl_vpternlogv2di_3 */
   12655        47237 :     case 6989:  /* *avx512vl_vpternlogv2di_3 */
   12656        47237 :     case 6988:  /* *avx512vl_vpternlogv2di_3 */
   12657        47237 :     case 6987:  /* *avx512vl_vpternlogv2di_3 */
   12658        47237 :     case 6986:  /* *avx512vl_vpternlogv2di_3 */
   12659        47237 :     case 6985:  /* *avx512vl_vpternlogv4di_3 */
   12660        47237 :     case 6984:  /* *avx512vl_vpternlogv4di_3 */
   12661        47237 :     case 6983:  /* *avx512vl_vpternlogv4di_3 */
   12662        47237 :     case 6982:  /* *avx512vl_vpternlogv4di_3 */
   12663        47237 :     case 6981:  /* *avx512vl_vpternlogv4di_3 */
   12664        47237 :     case 6980:  /* *avx512vl_vpternlogv4di_3 */
   12665        47237 :     case 6979:  /* *avx512vl_vpternlogv4di_3 */
   12666        47237 :     case 6978:  /* *avx512vl_vpternlogv4di_3 */
   12667        47237 :     case 6977:  /* *avx512vl_vpternlogv4di_3 */
   12668        47237 :     case 6976:  /* *avx512f_vpternlogv8di_3 */
   12669        47237 :     case 6975:  /* *avx512f_vpternlogv8di_3 */
   12670        47237 :     case 6974:  /* *avx512f_vpternlogv8di_3 */
   12671        47237 :     case 6973:  /* *avx512f_vpternlogv8di_3 */
   12672        47237 :     case 6972:  /* *avx512f_vpternlogv8di_3 */
   12673        47237 :     case 6971:  /* *avx512f_vpternlogv8di_3 */
   12674        47237 :     case 6970:  /* *avx512f_vpternlogv8di_3 */
   12675        47237 :     case 6969:  /* *avx512f_vpternlogv8di_3 */
   12676        47237 :     case 6968:  /* *avx512f_vpternlogv8di_3 */
   12677        47237 :     case 6967:  /* *avx512vl_vpternlogv4si_3 */
   12678        47237 :     case 6966:  /* *avx512vl_vpternlogv4si_3 */
   12679        47237 :     case 6965:  /* *avx512vl_vpternlogv4si_3 */
   12680        47237 :     case 6964:  /* *avx512vl_vpternlogv4si_3 */
   12681        47237 :     case 6963:  /* *avx512vl_vpternlogv4si_3 */
   12682        47237 :     case 6962:  /* *avx512vl_vpternlogv4si_3 */
   12683        47237 :     case 6961:  /* *avx512vl_vpternlogv4si_3 */
   12684        47237 :     case 6960:  /* *avx512vl_vpternlogv4si_3 */
   12685        47237 :     case 6959:  /* *avx512vl_vpternlogv4si_3 */
   12686        47237 :     case 6958:  /* *avx512vl_vpternlogv8si_3 */
   12687        47237 :     case 6957:  /* *avx512vl_vpternlogv8si_3 */
   12688        47237 :     case 6956:  /* *avx512vl_vpternlogv8si_3 */
   12689        47237 :     case 6955:  /* *avx512vl_vpternlogv8si_3 */
   12690        47237 :     case 6954:  /* *avx512vl_vpternlogv8si_3 */
   12691        47237 :     case 6953:  /* *avx512vl_vpternlogv8si_3 */
   12692        47237 :     case 6952:  /* *avx512vl_vpternlogv8si_3 */
   12693        47237 :     case 6951:  /* *avx512vl_vpternlogv8si_3 */
   12694        47237 :     case 6950:  /* *avx512vl_vpternlogv8si_3 */
   12695        47237 :     case 6949:  /* *avx512f_vpternlogv16si_3 */
   12696        47237 :     case 6948:  /* *avx512f_vpternlogv16si_3 */
   12697        47237 :     case 6947:  /* *avx512f_vpternlogv16si_3 */
   12698        47237 :     case 6946:  /* *avx512f_vpternlogv16si_3 */
   12699        47237 :     case 6945:  /* *avx512f_vpternlogv16si_3 */
   12700        47237 :     case 6944:  /* *avx512f_vpternlogv16si_3 */
   12701        47237 :     case 6943:  /* *avx512f_vpternlogv16si_3 */
   12702        47237 :     case 6942:  /* *avx512f_vpternlogv16si_3 */
   12703        47237 :     case 6941:  /* *avx512f_vpternlogv16si_3 */
   12704        47237 :     case 6940:  /* *avx512vl_vpternlogv8hi_3 */
   12705        47237 :     case 6939:  /* *avx512vl_vpternlogv8hi_3 */
   12706        47237 :     case 6938:  /* *avx512vl_vpternlogv8hi_3 */
   12707        47237 :     case 6937:  /* *avx512vl_vpternlogv8hi_3 */
   12708        47237 :     case 6936:  /* *avx512vl_vpternlogv8hi_3 */
   12709        47237 :     case 6935:  /* *avx512vl_vpternlogv8hi_3 */
   12710        47237 :     case 6934:  /* *avx512vl_vpternlogv8hi_3 */
   12711        47237 :     case 6933:  /* *avx512vl_vpternlogv8hi_3 */
   12712        47237 :     case 6932:  /* *avx512vl_vpternlogv8hi_3 */
   12713        47237 :     case 6931:  /* *avx512vl_vpternlogv16hi_3 */
   12714        47237 :     case 6930:  /* *avx512vl_vpternlogv16hi_3 */
   12715        47237 :     case 6929:  /* *avx512vl_vpternlogv16hi_3 */
   12716        47237 :     case 6928:  /* *avx512vl_vpternlogv16hi_3 */
   12717        47237 :     case 6927:  /* *avx512vl_vpternlogv16hi_3 */
   12718        47237 :     case 6926:  /* *avx512vl_vpternlogv16hi_3 */
   12719        47237 :     case 6925:  /* *avx512vl_vpternlogv16hi_3 */
   12720        47237 :     case 6924:  /* *avx512vl_vpternlogv16hi_3 */
   12721        47237 :     case 6923:  /* *avx512vl_vpternlogv16hi_3 */
   12722        47237 :     case 6922:  /* *avx512bw_vpternlogv32hi_3 */
   12723        47237 :     case 6921:  /* *avx512bw_vpternlogv32hi_3 */
   12724        47237 :     case 6920:  /* *avx512bw_vpternlogv32hi_3 */
   12725        47237 :     case 6919:  /* *avx512bw_vpternlogv32hi_3 */
   12726        47237 :     case 6918:  /* *avx512bw_vpternlogv32hi_3 */
   12727        47237 :     case 6917:  /* *avx512bw_vpternlogv32hi_3 */
   12728        47237 :     case 6916:  /* *avx512bw_vpternlogv32hi_3 */
   12729        47237 :     case 6915:  /* *avx512bw_vpternlogv32hi_3 */
   12730        47237 :     case 6914:  /* *avx512bw_vpternlogv32hi_3 */
   12731        47237 :     case 6913:  /* *avx512vl_vpternlogv16qi_3 */
   12732        47237 :     case 6912:  /* *avx512vl_vpternlogv16qi_3 */
   12733        47237 :     case 6911:  /* *avx512vl_vpternlogv16qi_3 */
   12734        47237 :     case 6910:  /* *avx512vl_vpternlogv16qi_3 */
   12735        47237 :     case 6909:  /* *avx512vl_vpternlogv16qi_3 */
   12736        47237 :     case 6908:  /* *avx512vl_vpternlogv16qi_3 */
   12737        47237 :     case 6907:  /* *avx512vl_vpternlogv16qi_3 */
   12738        47237 :     case 6906:  /* *avx512vl_vpternlogv16qi_3 */
   12739        47237 :     case 6905:  /* *avx512vl_vpternlogv16qi_3 */
   12740        47237 :     case 6904:  /* *avx512vl_vpternlogv32qi_3 */
   12741        47237 :     case 6903:  /* *avx512vl_vpternlogv32qi_3 */
   12742        47237 :     case 6902:  /* *avx512vl_vpternlogv32qi_3 */
   12743        47237 :     case 6901:  /* *avx512vl_vpternlogv32qi_3 */
   12744        47237 :     case 6900:  /* *avx512vl_vpternlogv32qi_3 */
   12745        47237 :     case 6899:  /* *avx512vl_vpternlogv32qi_3 */
   12746        47237 :     case 6898:  /* *avx512vl_vpternlogv32qi_3 */
   12747        47237 :     case 6897:  /* *avx512vl_vpternlogv32qi_3 */
   12748        47237 :     case 6896:  /* *avx512vl_vpternlogv32qi_3 */
   12749        47237 :     case 6895:  /* *avx512bw_vpternlogv64qi_3 */
   12750        47237 :     case 6894:  /* *avx512bw_vpternlogv64qi_3 */
   12751        47237 :     case 6893:  /* *avx512bw_vpternlogv64qi_3 */
   12752        47237 :     case 6892:  /* *avx512bw_vpternlogv64qi_3 */
   12753        47237 :     case 6891:  /* *avx512bw_vpternlogv64qi_3 */
   12754        47237 :     case 6890:  /* *avx512bw_vpternlogv64qi_3 */
   12755        47237 :     case 6889:  /* *avx512bw_vpternlogv64qi_3 */
   12756        47237 :     case 6888:  /* *avx512bw_vpternlogv64qi_3 */
   12757        47237 :     case 6887:  /* *avx512bw_vpternlogv64qi_3 */
   12758        47237 :     case 1317:  /* *extendv2di2_highpart_stv_noavx512vl */
   12759        47237 :     case 1316:  /* *extendv2di2_highpart_stv */
   12760        47237 :     case 967:  /* *concatditi3_5 */
   12761        47237 :     case 966:  /* *concatditi3_5 */
   12762        47237 :     case 965:  /* *concatditi3_5 */
   12763        47237 :     case 964:  /* *concatsidi3_5 */
   12764        47237 :     case 963:  /* *concatsidi3_5 */
   12765        47237 :     case 962:  /* *concatsidi3_5 */
   12766        47237 :     case 383:  /* *leadi_general_4 */
   12767        47237 :     case 382:  /* *leadi_general_4 */
   12768        47237 :     case 381:  /* *leasi_general_4 */
   12769        47237 :     case 380:  /* *leasi_general_4 */
   12770        47237 :     case 379:  /* *leahi_general_4 */
   12771        47237 :     case 378:  /* *leahi_general_4 */
   12772        47237 :     case 377:  /* *leaqi_general_4 */
   12773        47237 :     case 376:  /* *leaqi_general_4 */
   12774        47237 :     case 371:  /* *leahi_general_2b */
   12775        47237 :     case 370:  /* *leaqi_general_2b */
   12776        47237 :     case 369:  /* *leahi_general_2 */
   12777        47237 :     case 368:  /* *leaqi_general_2 */
   12778        47237 :     case 367:  /* *leahi_general_1 */
   12779        47237 :     case 366:  /* *leaqi_general_1 */
   12780        47237 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   12781        47237 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   12782        47237 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   12783        47237 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (pat, 1), 1));
   12784        47237 :       break;
   12785              : 
   12786         2700 :     case 365:  /* *addvdi4_overflow_2 */
   12787         2700 :     case 364:  /* *addvsi4_overflow_2 */
   12788         2700 :     case 363:  /* *addvhi4_overflow_2 */
   12789         2700 :     case 362:  /* *addvqi4_overflow_2 */
   12790         2700 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   12791         2700 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
   12792         2700 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   12793         2700 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   12794         2700 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12795         2700 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0));
   12796         2700 :       ro[6] = *(ro_loc[6] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   12797         2700 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   12798         2700 :       recog_data.dup_num[0] = 5;
   12799         2700 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0), 0);
   12800         2700 :       recog_data.dup_num[1] = 3;
   12801         2700 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   12802         2700 :       recog_data.dup_num[2] = 1;
   12803         2700 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   12804         2700 :       recog_data.dup_num[3] = 2;
   12805         2700 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0), 0);
   12806         2700 :       recog_data.dup_num[4] = 3;
   12807         2700 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1);
   12808         2700 :       recog_data.dup_num[5] = 1;
   12809         2700 :       break;
   12810              : 
   12811         8074 :     case 361:  /* *addvdi4_overflow_1 */
   12812         8074 :     case 360:  /* *addvsi4_overflow_1 */
   12813         8074 :     case 359:  /* *addvhi4_overflow_1 */
   12814         8074 :     case 358:  /* *addvqi4_overflow_1 */
   12815         8074 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   12816         8074 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1), 0));
   12817         8074 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   12818         8074 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   12819         8074 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12820         8074 :       ro[5] = *(ro_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0));
   12821         8074 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   12822         8074 :       recog_data.dup_num[0] = 5;
   12823         8074 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0), 0);
   12824         8074 :       recog_data.dup_num[1] = 3;
   12825         8074 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   12826         8074 :       recog_data.dup_num[2] = 1;
   12827         8074 :       recog_data.dup_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   12828         8074 :       recog_data.dup_num[3] = 2;
   12829         8074 :       recog_data.dup_loc[4] = &XEXP (XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0), 0);
   12830         8074 :       recog_data.dup_num[4] = 3;
   12831         8074 :       recog_data.dup_loc[5] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 1);
   12832         8074 :       recog_data.dup_num[5] = 1;
   12833         8074 :       recog_data.dup_loc[6] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1);
   12834         8074 :       recog_data.dup_num[6] = 2;
   12835         8074 :       break;
   12836              : 
   12837       111011 :     case 637:  /* *mulvdi4_1 */
   12838       111011 :     case 636:  /* *mulvsi4_1 */
   12839       111011 :     case 635:  /* *mulvhi4_1 */
   12840       111011 :     case 440:  /* *subvti4_doubleword_1 */
   12841       111011 :     case 439:  /* *subvdi4_doubleword_1 */
   12842       111011 :     case 436:  /* subvdi4_1 */
   12843       111011 :     case 435:  /* subvsi4_1 */
   12844       111011 :     case 434:  /* subvhi4_1 */
   12845       111011 :     case 433:  /* subvqi4_1 */
   12846       111011 :     case 357:  /* *addvti4_doubleword_1 */
   12847       111011 :     case 356:  /* *addvdi4_doubleword_1 */
   12848       111011 :     case 353:  /* addvdi4_1 */
   12849       111011 :     case 352:  /* addvsi4_1 */
   12850       111011 :     case 351:  /* addvhi4_1 */
   12851       111011 :     case 350:  /* addvqi4_1 */
   12852       111011 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   12853       111011 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12854       111011 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1));
   12855       111011 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   12856       111011 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   12857       111011 :       recog_data.dup_num[0] = 1;
   12858       111011 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   12859       111011 :       recog_data.dup_num[1] = 2;
   12860       111011 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0);
   12861       111011 :       recog_data.dup_num[2] = 1;
   12862       111011 :       break;
   12863              : 
   12864       257845 :     case 642:  /* *umulvqi4 */
   12865       257845 :     case 641:  /* *mulvqi4 */
   12866       257845 :     case 634:  /* *mulvhi4 */
   12867       257845 :     case 633:  /* *mulvdi4 */
   12868       257845 :     case 632:  /* *mulvsi4 */
   12869       257845 :     case 438:  /* *subvti4_doubleword */
   12870       257845 :     case 437:  /* *subvdi4_doubleword */
   12871       257845 :     case 432:  /* *subvdi4 */
   12872       257845 :     case 431:  /* *subvsi4 */
   12873       257845 :     case 430:  /* *subvhi4 */
   12874       257845 :     case 429:  /* *subvqi4 */
   12875       257845 :     case 355:  /* *addvti4_doubleword */
   12876       257845 :     case 354:  /* *addvdi4_doubleword */
   12877       257845 :     case 349:  /* *addvdi4 */
   12878       257845 :     case 348:  /* *addvsi4 */
   12879       257845 :     case 347:  /* *addvhi4 */
   12880       257845 :     case 346:  /* *addvqi4 */
   12881       257845 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   12882       257845 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12883       257845 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   12884       257845 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   12885       257845 :       recog_data.dup_num[0] = 1;
   12886       257845 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   12887       257845 :       recog_data.dup_num[1] = 2;
   12888       257845 :       recog_data.dup_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0);
   12889       257845 :       recog_data.dup_num[2] = 1;
   12890       257845 :       recog_data.dup_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1);
   12891       257845 :       recog_data.dup_num[3] = 2;
   12892       257845 :       break;
   12893              : 
   12894         2560 :     case 829:  /* *xorqi_extdi_2 */
   12895         2560 :     case 828:  /* *iorqi_extdi_2 */
   12896         2560 :     case 827:  /* *andqi_extdi_2 */
   12897         2560 :     case 826:  /* *xorqi_extsi_2 */
   12898         2560 :     case 825:  /* *iorqi_extsi_2 */
   12899         2560 :     case 824:  /* *andqi_extsi_2 */
   12900         2560 :     case 823:  /* *xorqi_exthi_2 */
   12901         2560 :     case 822:  /* *iorqi_exthi_2 */
   12902         2560 :     case 821:  /* *andqi_exthi_2 */
   12903         2560 :     case 345:  /* *subqi_extdi_2 */
   12904         2560 :     case 344:  /* *addqi_extdi_2 */
   12905         2560 :     case 343:  /* *subqi_extsi_2 */
   12906         2560 :     case 342:  /* *addqi_extsi_2 */
   12907         2560 :     case 341:  /* *subqi_exthi_2 */
   12908         2560 :     case 340:  /* *addqi_exthi_2 */
   12909         2560 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   12910         2560 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   12911         2560 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0), 0));
   12912         2560 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12913         2560 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   12914         2560 :       break;
   12915              : 
   12916        39453 :     case 1277:  /* *ashrqi_extdi_1 */
   12917        39453 :     case 1276:  /* *lshrqi_extdi_1 */
   12918        39453 :     case 1275:  /* *ashrqi_extsi_1 */
   12919        39453 :     case 1274:  /* *lshrqi_extsi_1 */
   12920        39453 :     case 1273:  /* *ashrqi_exthi_1 */
   12921        39453 :     case 1272:  /* *lshrqi_exthi_1 */
   12922        39453 :     case 1155:  /* *ashlqi_extdi_1 */
   12923        39453 :     case 1154:  /* *ashlqi_extsi_1 */
   12924        39453 :     case 1153:  /* *ashlqi_exthi_1 */
   12925        39453 :     case 811:  /* *xorqi_extdi_1 */
   12926        39453 :     case 810:  /* *iorqi_extdi_1 */
   12927        39453 :     case 809:  /* *andqi_extdi_1 */
   12928        39453 :     case 808:  /* *xorqi_extsi_1 */
   12929        39453 :     case 807:  /* *iorqi_extsi_1 */
   12930        39453 :     case 806:  /* *andqi_extsi_1 */
   12931        39453 :     case 805:  /* *xorqi_exthi_1 */
   12932        39453 :     case 804:  /* *iorqi_exthi_1 */
   12933        39453 :     case 803:  /* *andqi_exthi_1 */
   12934        39453 :     case 428:  /* *subqi_extdi_1 */
   12935        39453 :     case 427:  /* *subqi_extsi_1 */
   12936        39453 :     case 426:  /* *subqi_exthi_1 */
   12937        39453 :     case 339:  /* *addqi_extdi_1 */
   12938        39453 :     case 338:  /* *addqi_extsi_1 */
   12939        39453 :     case 337:  /* *addqi_exthi_1 */
   12940        39453 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   12941        39453 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   12942        39453 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   12943        39453 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12944        39453 :       break;
   12945              : 
   12946          690 :     case 802:  /* *xorqi_ext2di_0 */
   12947          690 :     case 801:  /* *iorqi_ext2di_0 */
   12948          690 :     case 800:  /* *andqi_ext2di_0 */
   12949          690 :     case 799:  /* *xorqi_ext2si_0 */
   12950          690 :     case 798:  /* *iorqi_ext2si_0 */
   12951          690 :     case 797:  /* *andqi_ext2si_0 */
   12952          690 :     case 796:  /* *xorqi_ext2hi_0 */
   12953          690 :     case 795:  /* *iorqi_ext2hi_0 */
   12954          690 :     case 794:  /* *andqi_ext2hi_0 */
   12955          690 :     case 425:  /* *subqi_ext2di_0 */
   12956          690 :     case 424:  /* *subqi_ext2si_0 */
   12957          690 :     case 423:  /* *subqi_ext2hi_0 */
   12958          690 :     case 336:  /* *addqi_ext2di_0 */
   12959          690 :     case 335:  /* *addqi_ext2si_0 */
   12960          690 :     case 334:  /* *addqi_ext2hi_0 */
   12961          690 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   12962          690 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12963          690 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   12964          690 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   12965          690 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   12966          690 :       break;
   12967              : 
   12968         2980 :     case 793:  /* *xorqi_extdi_0 */
   12969         2980 :     case 792:  /* *iorqi_extdi_0 */
   12970         2980 :     case 791:  /* *andqi_extdi_0 */
   12971         2980 :     case 790:  /* *xorqi_extsi_0 */
   12972         2980 :     case 789:  /* *iorqi_extsi_0 */
   12973         2980 :     case 788:  /* *andqi_extsi_0 */
   12974         2980 :     case 787:  /* *xorqi_exthi_0 */
   12975         2980 :     case 786:  /* *iorqi_exthi_0 */
   12976         2980 :     case 785:  /* *andqi_exthi_0 */
   12977         2980 :     case 333:  /* *addqi_extdi_0 */
   12978         2980 :     case 332:  /* *addqi_extsi_0 */
   12979         2980 :     case 331:  /* *addqi_exthi_0 */
   12980         2980 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   12981         2980 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   12982         2980 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   12983         2980 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   12984         2980 :       break;
   12985              : 
   12986       586769 :     case 1271:  /* *ashrdi3_cconly */
   12987       586769 :     case 1270:  /* *lshrdi3_cconly */
   12988       586769 :     case 1269:  /* *ashrsi3_cconly */
   12989       586769 :     case 1268:  /* *lshrsi3_cconly */
   12990       586769 :     case 1267:  /* *ashrhi3_cconly */
   12991       586769 :     case 1266:  /* *lshrhi3_cconly */
   12992       586769 :     case 1265:  /* *ashrqi3_cconly */
   12993       586769 :     case 1264:  /* *lshrqi3_cconly */
   12994       586769 :     case 1152:  /* *ashldi3_cconly */
   12995       586769 :     case 1151:  /* *ashlsi3_cconly */
   12996       586769 :     case 1150:  /* *ashlhi3_cconly */
   12997       586769 :     case 1149:  /* *ashlqi3_cconly */
   12998       586769 :     case 925:  /* *xordi_3 */
   12999       586769 :     case 924:  /* *iordi_3 */
   13000       586769 :     case 923:  /* *xorsi_3 */
   13001       586769 :     case 922:  /* *iorsi_3 */
   13002       586769 :     case 921:  /* *xorhi_3 */
   13003       586769 :     case 920:  /* *iorhi_3 */
   13004       586769 :     case 919:  /* *xorqi_3 */
   13005       586769 :     case 918:  /* *iorqi_3 */
   13006       586769 :     case 917:  /* *iordi_ccz_1 */
   13007       586769 :     case 916:  /* *iorsi_ccz_1 */
   13008       586769 :     case 915:  /* *iorhi_ccz_1 */
   13009       586769 :     case 914:  /* *iorqi_ccz_1 */
   13010       586769 :     case 330:  /* *adddi_5 */
   13011       586769 :     case 329:  /* *addsi_5 */
   13012       586769 :     case 328:  /* *addhi_5 */
   13013       586769 :     case 327:  /* *addqi_5 */
   13014       586769 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   13015       586769 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13016       586769 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   13017       586769 :       break;
   13018              : 
   13019        81313 :     case 326:  /* *addsi_4 */
   13020        81313 :     case 325:  /* *addhi_4 */
   13021        81313 :     case 324:  /* *addqi_4 */
   13022        81313 :     case 323:  /* *adddi_4 */
   13023        81313 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   13024        81313 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   13025        81313 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   13026        81313 :       break;
   13027              : 
   13028            0 :     case 322:  /* *addsi_3_zext */
   13029            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   13030            0 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   13031            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13032            0 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   13033            0 :       recog_data.dup_num[0] = 1;
   13034            0 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   13035            0 :       recog_data.dup_num[1] = 2;
   13036            0 :       break;
   13037              : 
   13038        37798 :     case 321:  /* *adddi_3 */
   13039        37798 :     case 320:  /* *addsi_3 */
   13040        37798 :     case 319:  /* *addhi_3 */
   13041        37798 :     case 318:  /* *addqi_3 */
   13042        37798 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   13043        37798 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   13044        37798 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13045        37798 :       break;
   13046              : 
   13047           94 :     case 1263:  /* *ashrsi3_cmp_zext */
   13048           94 :     case 1262:  /* *lshrsi3_cmp_zext */
   13049           94 :     case 1148:  /* *ashlsi3_cmp_zext */
   13050           94 :     case 911:  /* *xorsi_2_zext */
   13051           94 :     case 910:  /* *iorsi_2_zext */
   13052           94 :     case 780:  /* *andsi_2_zext */
   13053           94 :     case 419:  /* *subsi_2_zext */
   13054           94 :     case 317:  /* *addsi_2_zext */
   13055           94 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   13056           94 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13057           94 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   13058           94 :       recog_data.dup_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 0);
   13059           94 :       recog_data.dup_num[0] = 1;
   13060           94 :       recog_data.dup_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0), 1);
   13061           94 :       recog_data.dup_num[1] = 2;
   13062           94 :       break;
   13063              : 
   13064      3334713 :     case 1261:  /* *ashrdi3_cmp */
   13065      3334713 :     case 1260:  /* *lshrdi3_cmp */
   13066      3334713 :     case 1259:  /* *ashrsi3_cmp */
   13067      3334713 :     case 1258:  /* *lshrsi3_cmp */
   13068      3334713 :     case 1257:  /* *ashrhi3_cmp */
   13069      3334713 :     case 1256:  /* *lshrhi3_cmp */
   13070      3334713 :     case 1255:  /* *ashrqi3_cmp */
   13071      3334713 :     case 1254:  /* *lshrqi3_cmp */
   13072      3334713 :     case 1147:  /* *ashldi3_cmp */
   13073      3334713 :     case 1146:  /* *ashlsi3_cmp */
   13074      3334713 :     case 1145:  /* *ashlhi3_cmp */
   13075      3334713 :     case 1144:  /* *ashlqi3_cmp */
   13076      3334713 :     case 909:  /* *xordi_2 */
   13077      3334713 :     case 908:  /* *iordi_2 */
   13078      3334713 :     case 907:  /* *xorsi_2 */
   13079      3334713 :     case 906:  /* *iorsi_2 */
   13080      3334713 :     case 905:  /* *xorhi_2 */
   13081      3334713 :     case 904:  /* *iorhi_2 */
   13082      3334713 :     case 903:  /* *xorqi_2 */
   13083      3334713 :     case 902:  /* *iorqi_2 */
   13084      3334713 :     case 784:  /* *andsi_2 */
   13085      3334713 :     case 783:  /* *andhi_2 */
   13086      3334713 :     case 782:  /* *andqi_2 */
   13087      3334713 :     case 781:  /* *andqi_2_maybe_si */
   13088      3334713 :     case 779:  /* *anddi_2 */
   13089      3334713 :     case 418:  /* *subdi_2 */
   13090      3334713 :     case 417:  /* *subsi_2 */
   13091      3334713 :     case 416:  /* *subhi_2 */
   13092      3334713 :     case 415:  /* *subqi_2 */
   13093      3334713 :     case 316:  /* *adddi_2 */
   13094      3334713 :     case 315:  /* *addsi_2 */
   13095      3334713 :     case 314:  /* *addhi_2 */
   13096      3334713 :     case 313:  /* *addqi_2 */
   13097      3334713 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0));
   13098      3334713 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13099      3334713 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   13100      3334713 :       recog_data.dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0);
   13101      3334713 :       recog_data.dup_num[0] = 1;
   13102      3334713 :       recog_data.dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1);
   13103      3334713 :       recog_data.dup_num[1] = 2;
   13104      3334713 :       break;
   13105              : 
   13106          346 :     case 778:  /* *xorqi_extdi_2_slp */
   13107          346 :     case 777:  /* *iorqi_extdi_2_slp */
   13108          346 :     case 776:  /* *andqi_extdi_2_slp */
   13109          346 :     case 775:  /* *xorqi_extsi_2_slp */
   13110          346 :     case 774:  /* *iorqi_extsi_2_slp */
   13111          346 :     case 773:  /* *andqi_extsi_2_slp */
   13112          346 :     case 772:  /* *xorqi_exthi_2_slp */
   13113          346 :     case 771:  /* *iorqi_exthi_2_slp */
   13114          346 :     case 770:  /* *andqi_exthi_2_slp */
   13115          346 :     case 414:  /* *subqi_extdi_2_slp */
   13116          346 :     case 413:  /* *subqi_extsi_2_slp */
   13117          346 :     case 412:  /* *subqi_exthi_2_slp */
   13118          346 :     case 312:  /* *addqi_extdi_2_slp */
   13119          346 :     case 311:  /* *addqi_extsi_2_slp */
   13120          346 :     case 310:  /* *addqi_exthi_2_slp */
   13121          346 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   13122          346 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   13123          346 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0));
   13124          346 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13125          346 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   13126          346 :       break;
   13127              : 
   13128          445 :     case 769:  /* *xorqi_extdi_1_slp */
   13129          445 :     case 768:  /* *iorqi_extdi_1_slp */
   13130          445 :     case 767:  /* *andqi_extdi_1_slp */
   13131          445 :     case 766:  /* *xorqi_extsi_1_slp */
   13132          445 :     case 765:  /* *iorqi_extsi_1_slp */
   13133          445 :     case 764:  /* *andqi_extsi_1_slp */
   13134          445 :     case 763:  /* *xorqi_exthi_1_slp */
   13135          445 :     case 762:  /* *iorqi_exthi_1_slp */
   13136          445 :     case 761:  /* *andqi_exthi_1_slp */
   13137          445 :     case 309:  /* *addqi_extdi_1_slp */
   13138          445 :     case 308:  /* *addqi_extsi_1_slp */
   13139          445 :     case 307:  /* *addqi_exthi_1_slp */
   13140          445 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   13141          445 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   13142          445 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0));
   13143          445 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13144          445 :       break;
   13145              : 
   13146        17249 :     case 1418:  /* *rotrhi3_1_slp */
   13147        17249 :     case 1417:  /* *rotlhi3_1_slp */
   13148        17249 :     case 1416:  /* *rotrqi3_1_slp */
   13149        17249 :     case 1415:  /* *rotlqi3_1_slp */
   13150        17249 :     case 1253:  /* *ashrhi3_1_slp */
   13151        17249 :     case 1252:  /* *lshrhi3_1_slp */
   13152        17249 :     case 1251:  /* *ashrqi3_1_slp */
   13153        17249 :     case 1250:  /* *lshrqi3_1_slp */
   13154        17249 :     case 1143:  /* *ashlhi3_1_slp */
   13155        17249 :     case 1142:  /* *ashlqi3_1_slp */
   13156        17249 :     case 760:  /* *xorhi_1_slp */
   13157        17249 :     case 759:  /* *iorhi_1_slp */
   13158        17249 :     case 758:  /* *andhi_1_slp */
   13159        17249 :     case 757:  /* *xorqi_1_slp */
   13160        17249 :     case 756:  /* *iorqi_1_slp */
   13161        17249 :     case 755:  /* *andqi_1_slp */
   13162        17249 :     case 408:  /* *subhi_1_slp */
   13163        17249 :     case 407:  /* *subqi_1_slp */
   13164        17249 :     case 306:  /* *addhi_1_slp */
   13165        17249 :     case 305:  /* *addqi_1_slp */
   13166        17249 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   13167        17249 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   13168        17249 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   13169        17249 :       break;
   13170              : 
   13171       577957 :     case 2681:  /* *klshrsi3_1_zext */
   13172       577957 :     case 2663:  /* kxnordi */
   13173       577957 :     case 2662:  /* kxnorsi */
   13174       577957 :     case 2661:  /* kxnorhi */
   13175       577957 :     case 2660:  /* kxnorqi */
   13176       577957 :     case 1406:  /* *rotrsi3_1_zext */
   13177       577957 :     case 1405:  /* *rotlsi3_1_zext */
   13178       577957 :     case 1404:  /* *rotrhi3_1_zextdi */
   13179       577957 :     case 1402:  /* *rotlhi3_1_zextdi */
   13180       577957 :     case 1400:  /* *rotrhi3_1_zextsi */
   13181       577957 :     case 1398:  /* *rotlhi3_1_zextsi */
   13182       577957 :     case 1396:  /* *rotrqi3_1_zextdi */
   13183       577957 :     case 1394:  /* *rotlqi3_1_zextdi */
   13184       577957 :     case 1392:  /* *rotrqi3_1_zextsi */
   13185       577957 :     case 1390:  /* *rotlqi3_1_zextsi */
   13186       577957 :     case 1388:  /* *rotrqi3_1_zexthi */
   13187       577957 :     case 1386:  /* *rotlqi3_1_zexthi */
   13188       577957 :     case 1241:  /* *ashrsi3_1_zext */
   13189       577957 :     case 1240:  /* *lshrsi3_1_zext */
   13190       577957 :     case 1239:  /* *ashrhi3_1_zextdi */
   13191       577957 :     case 1237:  /* *lshrhi3_1_zextdi */
   13192       577957 :     case 1235:  /* *ashrhi3_1_zextsi */
   13193       577957 :     case 1233:  /* *lshrhi3_1_zextsi */
   13194       577957 :     case 1231:  /* *ashrqi3_1_zextdi */
   13195       577957 :     case 1229:  /* *lshrqi3_1_zextdi */
   13196       577957 :     case 1227:  /* *ashrqi3_1_zextsi */
   13197       577957 :     case 1225:  /* *lshrqi3_1_zextsi */
   13198       577957 :     case 1223:  /* *ashrqi3_1_zexthi */
   13199       577957 :     case 1221:  /* *lshrqi3_1_zexthi */
   13200       577957 :     case 1204:  /* *ashrsi3_cvt_zext */
   13201       577957 :     case 1175:  /* ashrti3_doubleword_lowpart */
   13202       577957 :     case 1174:  /* lshrti3_doubleword_lowpart */
   13203       577957 :     case 1173:  /* ashrdi3_doubleword_lowpart */
   13204       577957 :     case 1172:  /* lshrdi3_doubleword_lowpart */
   13205       577957 :     case 1137:  /* *ashlsi3_1_zext */
   13206       577957 :     case 1136:  /* *ashlhi3_1_zextdi */
   13207       577957 :     case 1134:  /* *ashlhi3_1_zextsi */
   13208       577957 :     case 1132:  /* *ashlqi3_1_zextdi */
   13209       577957 :     case 1130:  /* *ashlqi3_1_zextsi */
   13210       577957 :     case 1128:  /* *ashlqi3_1_zexthi */
   13211       577957 :     case 901:  /* *notxorqi_1 */
   13212       577957 :     case 894:  /* *xorsi_1_zext */
   13213       577957 :     case 893:  /* *iorsi_1_zext */
   13214       577957 :     case 892:  /* *xorhi_1_zextdi */
   13215       577957 :     case 890:  /* *iorhi_1_zextdi */
   13216       577957 :     case 888:  /* *xorhi_1_zextsi */
   13217       577957 :     case 886:  /* *iorhi_1_zextsi */
   13218       577957 :     case 884:  /* *xorqi_1_zextdi */
   13219       577957 :     case 882:  /* *iorqi_1_zextdi */
   13220       577957 :     case 880:  /* *xorqi_1_zextsi */
   13221       577957 :     case 878:  /* *iorqi_1_zextsi */
   13222       577957 :     case 876:  /* *xorqi_1_zexthi */
   13223       577957 :     case 874:  /* *iorqi_1_zexthi */
   13224       577957 :     case 867:  /* *notxordi_1 */
   13225       577957 :     case 866:  /* *notxorsi_1 */
   13226       577957 :     case 865:  /* *notxorhi_1 */
   13227       577957 :     case 748:  /* *andsi_1_zext */
   13228       577957 :     case 747:  /* *andhi_1_zextdi */
   13229       577957 :     case 745:  /* *andhi_1_zextsi */
   13230       577957 :     case 743:  /* *andqi_1_zextdi */
   13231       577957 :     case 741:  /* *andqi_1_zextsi */
   13232       577957 :     case 739:  /* *andqi_1_zexthi */
   13233       577957 :     case 629:  /* *mulsi3_1_zext */
   13234       577957 :     case 627:  /* *imulhidizu */
   13235       577957 :     case 625:  /* *imulhisizu */
   13236       577957 :     case 544:  /* *subsi3_carry_zext_0r */
   13237       577957 :     case 543:  /* *subhi3_carry_zextdi_0r */
   13238       577957 :     case 542:  /* *subhi3_carry_zextsi_0r */
   13239       577957 :     case 541:  /* *subqi3_carry_zextdi_0r */
   13240       577957 :     case 540:  /* *subqi3_carry_zextsi_0r */
   13241       577957 :     case 539:  /* *subqi3_carry_zexthi_0r */
   13242       577957 :     case 538:  /* *subsi3_carry_zext_0 */
   13243       577957 :     case 537:  /* *subhi3_carry_zextdi_0 */
   13244       577957 :     case 536:  /* *subhi3_carry_zextsi_0 */
   13245       577957 :     case 535:  /* *subqi3_carry_zextdi_0 */
   13246       577957 :     case 534:  /* *subqi3_carry_zextsi_0 */
   13247       577957 :     case 533:  /* *subqi3_carry_zexthi_0 */
   13248       577957 :     case 406:  /* *subsi_1_zext */
   13249       577957 :     case 405:  /* *subhi_1_zextdi */
   13250       577957 :     case 403:  /* *subhi_1_zextsi */
   13251       577957 :     case 401:  /* *subqi_1_zextdi */
   13252       577957 :     case 399:  /* *subqi_1_zextsi */
   13253       577957 :     case 397:  /* *subqi_1_zexthi */
   13254       577957 :     case 300:  /* addsi_1_zext */
   13255       577957 :     case 299:  /* *addhi_1_zextdi */
   13256       577957 :     case 297:  /* *addhi_1_zextsi */
   13257       577957 :     case 295:  /* *addqi_1_zextdi */
   13258       577957 :     case 293:  /* *addqi_1_zextsi */
   13259       577957 :     case 291:  /* *addqi_1_zexthi */
   13260       577957 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   13261       577957 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   13262       577957 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1));
   13263       577957 :       break;
   13264              : 
   13265      2942589 :     case 8501:  /* *vec_interleave_lowv4si_sse */
   13266      2942589 :     case 8499:  /* vec_interleave_lowv4si */
   13267      2942589 :     case 8497:  /* *avx512f_interleave_lowv16si */
   13268      2942589 :     case 8495:  /* avx2_interleave_lowv8si */
   13269      2942589 :     case 8493:  /* vec_interleave_highv4si */
   13270      2942589 :     case 8491:  /* *avx512f_interleave_highv16si */
   13271      2942589 :     case 8489:  /* avx2_interleave_highv8si */
   13272      2942589 :     case 8487:  /* vec_interleave_lowv8bf */
   13273      2942589 :     case 8485:  /* vec_interleave_lowv8hf */
   13274      2942589 :     case 8483:  /* vec_interleave_lowv8hi */
   13275      2942589 :     case 8481:  /* avx2_interleave_lowv16bf */
   13276      2942589 :     case 8479:  /* avx2_interleave_lowv16hf */
   13277      2942589 :     case 8477:  /* avx2_interleave_lowv16hi */
   13278      2942589 :     case 8475:  /* *avx512bw_interleave_lowv32bf */
   13279      2942589 :     case 8473:  /* *avx512bw_interleave_lowv32hf */
   13280      2942589 :     case 8471:  /* *avx512bw_interleave_lowv32hi */
   13281      2942589 :     case 8469:  /* vec_interleave_highv8bf */
   13282      2942589 :     case 8467:  /* vec_interleave_highv8hf */
   13283      2942589 :     case 8465:  /* vec_interleave_highv8hi */
   13284      2942589 :     case 8463:  /* avx2_interleave_highv16bf */
   13285      2942589 :     case 8461:  /* avx2_interleave_highv16hf */
   13286      2942589 :     case 8459:  /* avx2_interleave_highv16hi */
   13287      2942589 :     case 8457:  /* avx512bw_interleave_highv32bf */
   13288      2942589 :     case 8455:  /* avx512bw_interleave_highv32hf */
   13289      2942589 :     case 8453:  /* avx512bw_interleave_highv32hi */
   13290      2942589 :     case 8451:  /* vec_interleave_lowv16qi */
   13291      2942589 :     case 8449:  /* avx2_interleave_lowv32qi */
   13292      2942589 :     case 8447:  /* avx512bw_interleave_lowv64qi */
   13293      2942589 :     case 8445:  /* vec_interleave_highv16qi */
   13294      2942589 :     case 8443:  /* avx2_interleave_highv32qi */
   13295      2942589 :     case 8441:  /* avx512bw_interleave_highv64qi */
   13296      2942589 :     case 8206:  /* *xnorv2di3 */
   13297      2942589 :     case 8205:  /* *xnorv4di3 */
   13298      2942589 :     case 8204:  /* *xnorv4si3 */
   13299      2942589 :     case 8203:  /* *xnorv8si3 */
   13300      2942589 :     case 8202:  /* *xnorv8hi3 */
   13301      2942589 :     case 8201:  /* *xnorv16hi3 */
   13302      2942589 :     case 8200:  /* *xnorv32hi3 */
   13303      2942589 :     case 8199:  /* *xnorv16qi3 */
   13304      2942589 :     case 8198:  /* *xnorv32qi3 */
   13305      2942589 :     case 8197:  /* *xnorv64qi3 */
   13306      2942589 :     case 8196:  /* *xnorv8di3 */
   13307      2942589 :     case 8195:  /* *xnorv16si3 */
   13308      2942589 :     case 7296:  /* vec_interleave_lowv2di */
   13309      2942589 :     case 7294:  /* *avx512f_interleave_lowv8di */
   13310      2942589 :     case 7292:  /* avx2_interleave_lowv4di */
   13311      2942589 :     case 7290:  /* vec_interleave_highv2di */
   13312      2942589 :     case 7288:  /* *avx512f_interleave_highv8di */
   13313      2942589 :     case 7286:  /* avx2_interleave_highv4di */
   13314      2942589 :     case 5482:  /* *vec_interleave_lowv2df */
   13315      2942589 :     case 5479:  /* avx_unpcklpd256 */
   13316      2942589 :     case 5475:  /* avx512f_unpcklpd512 */
   13317      2942589 :     case 5472:  /* *vec_interleave_highv2df */
   13318      2942589 :     case 5469:  /* avx_unpckhpd256 */
   13319      2942589 :     case 5467:  /* *avx512f_unpckhpd512 */
   13320      2942589 :     case 5316:  /* vec_interleave_lowv4sf */
   13321      2942589 :     case 5313:  /* avx_unpcklps256 */
   13322      2942589 :     case 5311:  /* *avx512f_unpcklps512 */
   13323      2942589 :     case 5309:  /* vec_interleave_highv4sf */
   13324      2942589 :     case 5307:  /* avx_unpckhps256 */
   13325      2942589 :     case 5305:  /* *avx512f_unpckhps512 */
   13326      2942589 :     case 5304:  /* sse_movlhps_v8bf */
   13327      2942589 :     case 5303:  /* sse_movlhps_v8hf */
   13328      2942589 :     case 5302:  /* sse_movlhps_v8hi */
   13329      2942589 :     case 5301:  /* sse_movlhps */
   13330      2942589 :     case 5300:  /* sse_movhlps */
   13331      2942589 :     case 2360:  /* mmx_punpckldq */
   13332      2942589 :     case 2359:  /* mmx_punpckhdq */
   13333      2942589 :     case 2358:  /* mmx_punpcklwd */
   13334      2942589 :     case 2357:  /* mmx_punpckhwd */
   13335      2942589 :     case 2356:  /* mmx_punpcklbw_low */
   13336      2942589 :     case 2355:  /* mmx_punpcklbw */
   13337      2942589 :     case 2354:  /* mmx_punpckhbw_low */
   13338      2942589 :     case 2353:  /* mmx_punpckhbw */
   13339      2942589 :     case 2145:  /* *vec_interleave_highv2sf */
   13340      2942589 :     case 2144:  /* *vec_interleave_lowv2sf */
   13341      2942589 :     case 1403:  /* *rotrhi3_1_zextdi_nf */
   13342      2942589 :     case 1401:  /* *rotlhi3_1_zextdi_nf */
   13343      2942589 :     case 1399:  /* *rotrhi3_1_zextsi_nf */
   13344      2942589 :     case 1397:  /* *rotlhi3_1_zextsi_nf */
   13345      2942589 :     case 1395:  /* *rotrqi3_1_zextdi_nf */
   13346      2942589 :     case 1393:  /* *rotlqi3_1_zextdi_nf */
   13347      2942589 :     case 1391:  /* *rotrqi3_1_zextsi_nf */
   13348      2942589 :     case 1389:  /* *rotlqi3_1_zextsi_nf */
   13349      2942589 :     case 1387:  /* *rotrqi3_1_zexthi_nf */
   13350      2942589 :     case 1385:  /* *rotlqi3_1_zexthi_nf */
   13351      2942589 :     case 1384:  /* *bmi2_rorxsi3_1_zext */
   13352      2942589 :     case 1238:  /* *ashrhi3_1_zextdi_nf */
   13353      2942589 :     case 1236:  /* *lshrhi3_1_zextdi_nf */
   13354      2942589 :     case 1234:  /* *ashrhi3_1_zextsi_nf */
   13355      2942589 :     case 1232:  /* *lshrhi3_1_zextsi_nf */
   13356      2942589 :     case 1230:  /* *ashrqi3_1_zextdi_nf */
   13357      2942589 :     case 1228:  /* *lshrqi3_1_zextdi_nf */
   13358      2942589 :     case 1226:  /* *ashrqi3_1_zextsi_nf */
   13359      2942589 :     case 1224:  /* *lshrqi3_1_zextsi_nf */
   13360      2942589 :     case 1222:  /* *ashrqi3_1_zexthi_nf */
   13361      2942589 :     case 1220:  /* *lshrqi3_1_zexthi_nf */
   13362      2942589 :     case 1219:  /* *bmi2_ashrsi3_1_zext */
   13363      2942589 :     case 1218:  /* *bmi2_lshrsi3_1_zext */
   13364      2942589 :     case 1171:  /* ashrti3_doubleword_lowpart_nf */
   13365      2942589 :     case 1170:  /* lshrti3_doubleword_lowpart_nf */
   13366      2942589 :     case 1169:  /* ashrdi3_doubleword_lowpart_nf */
   13367      2942589 :     case 1168:  /* lshrdi3_doubleword_lowpart_nf */
   13368      2942589 :     case 1135:  /* *ashlhi3_1_zextdi_nf */
   13369      2942589 :     case 1133:  /* *ashlhi3_1_zextsi_nf */
   13370      2942589 :     case 1131:  /* *ashlqi3_1_zextdi_nf */
   13371      2942589 :     case 1129:  /* *ashlqi3_1_zextsi_nf */
   13372      2942589 :     case 1127:  /* *ashlqi3_1_zexthi_nf */
   13373      2942589 :     case 1126:  /* *bmi2_ashlsi3_1_zext */
   13374      2942589 :     case 891:  /* *xorhi_1_zextdi_nf */
   13375      2942589 :     case 889:  /* *iorhi_1_zextdi_nf */
   13376      2942589 :     case 887:  /* *xorhi_1_zextsi_nf */
   13377      2942589 :     case 885:  /* *iorhi_1_zextsi_nf */
   13378      2942589 :     case 883:  /* *xorqi_1_zextdi_nf */
   13379      2942589 :     case 881:  /* *iorqi_1_zextdi_nf */
   13380      2942589 :     case 879:  /* *xorqi_1_zextsi_nf */
   13381      2942589 :     case 877:  /* *iorqi_1_zextsi_nf */
   13382      2942589 :     case 875:  /* *xorqi_1_zexthi_nf */
   13383      2942589 :     case 873:  /* *iorqi_1_zexthi_nf */
   13384      2942589 :     case 746:  /* *andhi_1_zextdi_nf */
   13385      2942589 :     case 744:  /* *andhi_1_zextsi_nf */
   13386      2942589 :     case 742:  /* *andqi_1_zextdi_nf */
   13387      2942589 :     case 740:  /* *andqi_1_zextsi_nf */
   13388      2942589 :     case 738:  /* *andqi_1_zexthi_nf */
   13389      2942589 :     case 628:  /* *mulsi3_1_zext_nf */
   13390      2942589 :     case 626:  /* *imulhidizu_nf */
   13391      2942589 :     case 624:  /* *imulhisizu_nf */
   13392      2942589 :     case 404:  /* *subhi_1_zextdi_nf */
   13393      2942589 :     case 402:  /* *subhi_1_zextsi_nf */
   13394      2942589 :     case 400:  /* *subqi_1_zextdi_nf */
   13395      2942589 :     case 398:  /* *subqi_1_zextsi_nf */
   13396      2942589 :     case 396:  /* *subqi_1_zexthi_nf */
   13397      2942589 :     case 298:  /* *addhi_1_zextdi_nf */
   13398      2942589 :     case 296:  /* *addhi_1_zextsi_nf */
   13399      2942589 :     case 294:  /* *addqi_1_zextdi_nf */
   13400      2942589 :     case 292:  /* *addqi_1_zextsi_nf */
   13401      2942589 :     case 290:  /* *addqi_1_zexthi_nf */
   13402      2942589 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   13403      2942589 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   13404      2942589 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   13405      2942589 :       break;
   13406              : 
   13407     21856207 :     case 10778:  /* avx10_2_divbf16_v8bf */
   13408     21856207 :     case 10776:  /* avx10_2_mulbf16_v8bf */
   13409     21856207 :     case 10774:  /* avx10_2_subbf16_v8bf */
   13410     21856207 :     case 10772:  /* avx10_2_addbf16_v8bf */
   13411     21856207 :     case 10770:  /* avx10_2_divbf16_v16bf */
   13412     21856207 :     case 10768:  /* avx10_2_mulbf16_v16bf */
   13413     21856207 :     case 10766:  /* avx10_2_subbf16_v16bf */
   13414     21856207 :     case 10764:  /* avx10_2_addbf16_v16bf */
   13415     21856207 :     case 10762:  /* avx10_2_divbf16_v32bf */
   13416     21856207 :     case 10760:  /* avx10_2_mulbf16_v32bf */
   13417     21856207 :     case 10758:  /* avx10_2_subbf16_v32bf */
   13418     21856207 :     case 10756:  /* avx10_2_addbf16_v32bf */
   13419     21856207 :     case 10754:  /* avx10_2_sminbf16_v8bf */
   13420     21856207 :     case 10752:  /* avx10_2_smaxbf16_v8bf */
   13421     21856207 :     case 10750:  /* avx10_2_sminbf16_v16bf */
   13422     21856207 :     case 10748:  /* avx10_2_smaxbf16_v16bf */
   13423     21856207 :     case 10746:  /* avx10_2_sminbf16_v32bf */
   13424     21856207 :     case 10744:  /* avx10_2_smaxbf16_v32bf */
   13425     21856207 :     case 9774:  /* avx_vec_concatv8df */
   13426     21856207 :     case 9773:  /* avx_vec_concatv16sf */
   13427     21856207 :     case 9772:  /* avx_vec_concatv8di */
   13428     21856207 :     case 9771:  /* avx_vec_concatv16si */
   13429     21856207 :     case 9770:  /* avx_vec_concatv32bf */
   13430     21856207 :     case 9769:  /* avx_vec_concatv32hf */
   13431     21856207 :     case 9768:  /* avx_vec_concatv32hi */
   13432     21856207 :     case 9767:  /* avx_vec_concatv64qi */
   13433     21856207 :     case 9766:  /* avx_vec_concatv4df */
   13434     21856207 :     case 9765:  /* avx_vec_concatv8sf */
   13435     21856207 :     case 9764:  /* avx_vec_concatv4di */
   13436     21856207 :     case 9763:  /* avx_vec_concatv8si */
   13437     21856207 :     case 9762:  /* avx_vec_concatv16bf */
   13438     21856207 :     case 9761:  /* avx_vec_concatv16hf */
   13439     21856207 :     case 9760:  /* avx_vec_concatv16hi */
   13440     21856207 :     case 9759:  /* avx_vec_concatv32qi */
   13441     21856207 :     case 9757:  /* avx512bw_lshrvv32hi */
   13442     21856207 :     case 9755:  /* avx512bw_ashlvv32hi */
   13443     21856207 :     case 9753:  /* avx512vl_lshrvv16hi */
   13444     21856207 :     case 9751:  /* avx512vl_ashlvv16hi */
   13445     21856207 :     case 9749:  /* avx512vl_lshrvv8hi */
   13446     21856207 :     case 9747:  /* avx512vl_ashlvv8hi */
   13447     21856207 :     case 9745:  /* avx2_lshrvv2di */
   13448     21856207 :     case 9743:  /* avx2_ashlvv2di */
   13449     21856207 :     case 9741:  /* avx2_lshrvv4di */
   13450     21856207 :     case 9739:  /* avx2_ashlvv4di */
   13451     21856207 :     case 9737:  /* avx512f_lshrvv8di */
   13452     21856207 :     case 9735:  /* avx512f_ashlvv8di */
   13453     21856207 :     case 9733:  /* avx2_lshrvv4si */
   13454     21856207 :     case 9731:  /* avx2_ashlvv4si */
   13455     21856207 :     case 9729:  /* avx2_lshrvv8si */
   13456     21856207 :     case 9727:  /* avx2_ashlvv8si */
   13457     21856207 :     case 9725:  /* avx512f_lshrvv16si */
   13458     21856207 :     case 9723:  /* avx512f_ashlvv16si */
   13459     21856207 :     case 9721:  /* avx512bw_ashrvv32hi */
   13460     21856207 :     case 9719:  /* avx512vl_ashrvv16hi */
   13461     21856207 :     case 9717:  /* avx512vl_ashrvv8hi */
   13462     21856207 :     case 9715:  /* avx512f_ashrvv8di */
   13463     21856207 :     case 9713:  /* avx2_ashrvv4di */
   13464     21856207 :     case 9711:  /* avx2_ashrvv2di */
   13465     21856207 :     case 9709:  /* avx512f_ashrvv16si */
   13466     21856207 :     case 9707:  /* avx2_ashrvv8si */
   13467     21856207 :     case 9705:  /* avx2_ashrvv4si */
   13468     21856207 :     case 9185:  /* *ashrv2di3 */
   13469     21856207 :     case 9172:  /* xop_rotrv2di3 */
   13470     21856207 :     case 9171:  /* xop_rotrv4si3 */
   13471     21856207 :     case 9170:  /* xop_rotrv8hi3 */
   13472     21856207 :     case 9169:  /* xop_rotrv16qi3 */
   13473     21856207 :     case 9168:  /* xop_rotlv2di3 */
   13474     21856207 :     case 9167:  /* xop_rotlv4si3 */
   13475     21856207 :     case 9166:  /* xop_rotlv8hi3 */
   13476     21856207 :     case 9165:  /* xop_rotlv16qi3 */
   13477     21856207 :     case 8613:  /* *vec_concatv2di_0 */
   13478     21856207 :     case 8612:  /* vec_concatv2di */
   13479     21856207 :     case 8611:  /* *vec_concatv4si_0 */
   13480     21856207 :     case 8610:  /* *vec_concatv8hi_0 */
   13481     21856207 :     case 8609:  /* *vec_concatv16qi_0 */
   13482     21856207 :     case 8606:  /* *vec_concatv4si */
   13483     21856207 :     case 8605:  /* *vec_concatv8hi */
   13484     21856207 :     case 8604:  /* *vec_concatv16qi */
   13485     21856207 :     case 8603:  /* *vec_concatv2si_sse */
   13486     21856207 :     case 8602:  /* *vec_concatv2si_sse4_1 */
   13487     21856207 :     case 8182:  /* xorv1ti3 */
   13488     21856207 :     case 8181:  /* iorv1ti3 */
   13489     21856207 :     case 8180:  /* andv1ti3 */
   13490     21856207 :     case 8179:  /* *xorv8hi3 */
   13491     21856207 :     case 8178:  /* *iorv8hi3 */
   13492     21856207 :     case 8177:  /* *andv8hi3 */
   13493     21856207 :     case 8176:  /* *xorv16hi3 */
   13494     21856207 :     case 8175:  /* *iorv16hi3 */
   13495     21856207 :     case 8174:  /* *andv16hi3 */
   13496     21856207 :     case 8173:  /* *xorv32hi3 */
   13497     21856207 :     case 8172:  /* *iorv32hi3 */
   13498     21856207 :     case 8171:  /* *andv32hi3 */
   13499     21856207 :     case 8170:  /* *xorv16qi3 */
   13500     21856207 :     case 8169:  /* *iorv16qi3 */
   13501     21856207 :     case 8168:  /* *andv16qi3 */
   13502     21856207 :     case 8167:  /* *xorv32qi3 */
   13503     21856207 :     case 8166:  /* *iorv32qi3 */
   13504     21856207 :     case 8165:  /* *andv32qi3 */
   13505     21856207 :     case 8164:  /* *xorv64qi3 */
   13506     21856207 :     case 8163:  /* *iorv64qi3 */
   13507     21856207 :     case 8162:  /* *andv64qi3 */
   13508     21856207 :     case 8160:  /* *xorv2di3 */
   13509     21856207 :     case 8158:  /* *iorv2di3 */
   13510     21856207 :     case 8156:  /* *andv2di3 */
   13511     21856207 :     case 8154:  /* *xorv4di3 */
   13512     21856207 :     case 8152:  /* *iorv4di3 */
   13513     21856207 :     case 8150:  /* *andv4di3 */
   13514     21856207 :     case 8148:  /* *xorv8di3 */
   13515     21856207 :     case 8146:  /* *iorv8di3 */
   13516     21856207 :     case 8144:  /* *andv8di3 */
   13517     21856207 :     case 8142:  /* *xorv4si3 */
   13518     21856207 :     case 8140:  /* *iorv4si3 */
   13519     21856207 :     case 8138:  /* *andv4si3 */
   13520     21856207 :     case 8136:  /* *xorv8si3 */
   13521     21856207 :     case 8134:  /* *iorv8si3 */
   13522     21856207 :     case 8132:  /* *andv8si3 */
   13523     21856207 :     case 8130:  /* *xorv16si3 */
   13524     21856207 :     case 8128:  /* *iorv16si3 */
   13525     21856207 :     case 8126:  /* *andv16si3 */
   13526     21856207 :     case 8094:  /* *one_cmplv2di2 */
   13527     21856207 :     case 8092:  /* *one_cmplv4di2 */
   13528     21856207 :     case 8090:  /* *one_cmplv4si2 */
   13529     21856207 :     case 8088:  /* *one_cmplv8si2 */
   13530     21856207 :     case 8087:  /* *one_cmplv8hi2 */
   13531     21856207 :     case 8086:  /* *one_cmplv16hi2 */
   13532     21856207 :     case 8085:  /* *one_cmplv32hi2 */
   13533     21856207 :     case 8084:  /* *one_cmplv16qi2 */
   13534     21856207 :     case 8083:  /* *one_cmplv32qi2 */
   13535     21856207 :     case 8082:  /* *one_cmplv64qi2 */
   13536     21856207 :     case 8080:  /* *one_cmplv8di2 */
   13537     21856207 :     case 8078:  /* *one_cmplv16si2 */
   13538     21856207 :     case 8077:  /* *sse2_gtv4si3 */
   13539     21856207 :     case 8076:  /* *sse2_gtv8hi3 */
   13540     21856207 :     case 8075:  /* *sse2_gtv16qi3 */
   13541     21856207 :     case 8074:  /* avx2_gtv4di3 */
   13542     21856207 :     case 8073:  /* avx2_gtv8si3 */
   13543     21856207 :     case 8072:  /* avx2_gtv16hi3 */
   13544     21856207 :     case 8071:  /* avx2_gtv32qi3 */
   13545     21856207 :     case 8070:  /* sse4_2_gtv2di3 */
   13546     21856207 :     case 8069:  /* *sse2_eqv4si3 */
   13547     21856207 :     case 8068:  /* *sse2_eqv8hi3 */
   13548     21856207 :     case 8067:  /* *sse2_eqv16qi3 */
   13549     21856207 :     case 8066:  /* *sse4_1_eqv2di3 */
   13550     21856207 :     case 8003:  /* *avx2_eqv4di3 */
   13551     21856207 :     case 8002:  /* *avx2_eqv8si3 */
   13552     21856207 :     case 8001:  /* *avx2_eqv16hi3 */
   13553     21856207 :     case 8000:  /* *avx2_eqv32qi3 */
   13554     21856207 :     case 7999:  /* *uminv16qi3 */
   13555     21856207 :     case 7998:  /* *umaxv16qi3 */
   13556     21856207 :     case 7996:  /* *sse4_1_uminv4si3 */
   13557     21856207 :     case 7994:  /* *sse4_1_umaxv4si3 */
   13558     21856207 :     case 7992:  /* *sse4_1_uminv8hi3 */
   13559     21856207 :     case 7990:  /* *sse4_1_umaxv8hi3 */
   13560     21856207 :     case 7989:  /* *sminv8hi3 */
   13561     21856207 :     case 7988:  /* *smaxv8hi3 */
   13562     21856207 :     case 7986:  /* *sse4_1_sminv4si3 */
   13563     21856207 :     case 7984:  /* *sse4_1_smaxv4si3 */
   13564     21856207 :     case 7982:  /* *sse4_1_sminv16qi3 */
   13565     21856207 :     case 7980:  /* *sse4_1_smaxv16qi3 */
   13566     21856207 :     case 7978:  /* *avx512bw_uminv8hi3 */
   13567     21856207 :     case 7976:  /* *avx512bw_umaxv8hi3 */
   13568     21856207 :     case 7974:  /* *avx512bw_sminv8hi3 */
   13569     21856207 :     case 7972:  /* *avx512bw_smaxv8hi3 */
   13570     21856207 :     case 7970:  /* *avx512bw_uminv16hi3 */
   13571     21856207 :     case 7968:  /* *avx512bw_umaxv16hi3 */
   13572     21856207 :     case 7966:  /* *avx512bw_sminv16hi3 */
   13573     21856207 :     case 7964:  /* *avx512bw_smaxv16hi3 */
   13574     21856207 :     case 7962:  /* *avx512bw_uminv32hi3 */
   13575     21856207 :     case 7960:  /* *avx512bw_umaxv32hi3 */
   13576     21856207 :     case 7958:  /* *avx512bw_sminv32hi3 */
   13577     21856207 :     case 7956:  /* *avx512bw_smaxv32hi3 */
   13578     21856207 :     case 7954:  /* *avx512bw_uminv32qi3 */
   13579     21856207 :     case 7952:  /* *avx512bw_umaxv32qi3 */
   13580     21856207 :     case 7950:  /* *avx512bw_sminv32qi3 */
   13581     21856207 :     case 7948:  /* *avx512bw_smaxv32qi3 */
   13582     21856207 :     case 7946:  /* *avx512bw_uminv16qi3 */
   13583     21856207 :     case 7944:  /* *avx512bw_umaxv16qi3 */
   13584     21856207 :     case 7942:  /* *avx512bw_sminv16qi3 */
   13585     21856207 :     case 7940:  /* *avx512bw_smaxv16qi3 */
   13586     21856207 :     case 7938:  /* *avx512bw_uminv64qi3 */
   13587     21856207 :     case 7936:  /* *avx512bw_umaxv64qi3 */
   13588     21856207 :     case 7934:  /* *avx512bw_sminv64qi3 */
   13589     21856207 :     case 7932:  /* *avx512bw_smaxv64qi3 */
   13590     21856207 :     case 7930:  /* *avx512f_uminv2di3 */
   13591     21856207 :     case 7928:  /* *avx512f_umaxv2di3 */
   13592     21856207 :     case 7926:  /* *avx512f_sminv2di3 */
   13593     21856207 :     case 7924:  /* *avx512f_smaxv2di3 */
   13594     21856207 :     case 7922:  /* *avx512f_uminv4di3 */
   13595     21856207 :     case 7920:  /* *avx512f_umaxv4di3 */
   13596     21856207 :     case 7918:  /* *avx512f_sminv4di3 */
   13597     21856207 :     case 7916:  /* *avx512f_smaxv4di3 */
   13598     21856207 :     case 7914:  /* *avx512f_uminv8di3 */
   13599     21856207 :     case 7912:  /* *avx512f_umaxv8di3 */
   13600     21856207 :     case 7910:  /* *avx512f_sminv8di3 */
   13601     21856207 :     case 7908:  /* *avx512f_smaxv8di3 */
   13602     21856207 :     case 7906:  /* *avx512f_uminv4si3 */
   13603     21856207 :     case 7904:  /* *avx512f_umaxv4si3 */
   13604     21856207 :     case 7902:  /* *avx512f_sminv4si3 */
   13605     21856207 :     case 7900:  /* *avx512f_smaxv4si3 */
   13606     21856207 :     case 7898:  /* *avx512f_uminv8si3 */
   13607     21856207 :     case 7896:  /* *avx512f_umaxv8si3 */
   13608     21856207 :     case 7894:  /* *avx512f_sminv8si3 */
   13609     21856207 :     case 7892:  /* *avx512f_smaxv8si3 */
   13610     21856207 :     case 7890:  /* *avx512f_uminv16si3 */
   13611     21856207 :     case 7888:  /* *avx512f_umaxv16si3 */
   13612     21856207 :     case 7886:  /* *avx512f_sminv16si3 */
   13613     21856207 :     case 7884:  /* *avx512f_smaxv16si3 */
   13614     21856207 :     case 7883:  /* *avx2_uminv8si3 */
   13615     21856207 :     case 7882:  /* *avx2_umaxv8si3 */
   13616     21856207 :     case 7881:  /* *avx2_sminv8si3 */
   13617     21856207 :     case 7880:  /* *avx2_smaxv8si3 */
   13618     21856207 :     case 7879:  /* *avx2_uminv16hi3 */
   13619     21856207 :     case 7878:  /* *avx2_umaxv16hi3 */
   13620     21856207 :     case 7877:  /* *avx2_sminv16hi3 */
   13621     21856207 :     case 7876:  /* *avx2_smaxv16hi3 */
   13622     21856207 :     case 7875:  /* *avx2_uminv32qi3 */
   13623     21856207 :     case 7874:  /* *avx2_umaxv32qi3 */
   13624     21856207 :     case 7873:  /* *avx2_sminv32qi3 */
   13625     21856207 :     case 7872:  /* *avx2_smaxv32qi3 */
   13626     21856207 :     case 7870:  /* avx512vl_rorv2di */
   13627     21856207 :     case 7868:  /* avx512vl_rolv2di */
   13628     21856207 :     case 7866:  /* avx512vl_rorv4di */
   13629     21856207 :     case 7864:  /* avx512vl_rolv4di */
   13630     21856207 :     case 7862:  /* avx512f_rorv8di */
   13631     21856207 :     case 7860:  /* avx512f_rolv8di */
   13632     21856207 :     case 7858:  /* avx512vl_rorv4si */
   13633     21856207 :     case 7856:  /* avx512vl_rolv4si */
   13634     21856207 :     case 7854:  /* avx512vl_rorv8si */
   13635     21856207 :     case 7852:  /* avx512vl_rolv8si */
   13636     21856207 :     case 7850:  /* avx512f_rorv16si */
   13637     21856207 :     case 7848:  /* avx512f_rolv16si */
   13638     21856207 :     case 7846:  /* avx512vl_rorvv2di */
   13639     21856207 :     case 7844:  /* avx512vl_rolvv2di */
   13640     21856207 :     case 7842:  /* avx512vl_rorvv4di */
   13641     21856207 :     case 7840:  /* avx512vl_rolvv4di */
   13642     21856207 :     case 7838:  /* avx512f_rorvv8di */
   13643     21856207 :     case 7836:  /* avx512f_rolvv8di */
   13644     21856207 :     case 7834:  /* avx512vl_rorvv4si */
   13645     21856207 :     case 7832:  /* avx512vl_rolvv4si */
   13646     21856207 :     case 7830:  /* avx512vl_rorvv8si */
   13647     21856207 :     case 7828:  /* avx512vl_rolvv8si */
   13648     21856207 :     case 7826:  /* avx512f_rorvv16si */
   13649     21856207 :     case 7824:  /* avx512f_rolvv16si */
   13650     21856207 :     case 7823:  /* sse2_lshrv1ti3 */
   13651     21856207 :     case 7822:  /* sse2_ashlv1ti3 */
   13652     21856207 :     case 7821:  /* avx2_lshrv2ti3 */
   13653     21856207 :     case 7820:  /* avx2_ashlv2ti3 */
   13654     21856207 :     case 7819:  /* avx512bw_lshrv1ti3 */
   13655     21856207 :     case 7818:  /* avx512bw_ashlv1ti3 */
   13656     21856207 :     case 7817:  /* avx512bw_lshrv2ti3 */
   13657     21856207 :     case 7816:  /* avx512bw_ashlv2ti3 */
   13658     21856207 :     case 7815:  /* avx512bw_lshrv4ti3 */
   13659     21856207 :     case 7814:  /* avx512bw_ashlv4ti3 */
   13660     21856207 :     case 7813:  /* *rotrv1ti3_internal */
   13661     21856207 :     case 7812:  /* *rotlv1ti3_internal */
   13662     21856207 :     case 7811:  /* *ashrv1ti3_internal */
   13663     21856207 :     case 7810:  /* *lshrv1ti3_internal */
   13664     21856207 :     case 7809:  /* *ashlv1ti3_internal */
   13665     21856207 :     case 7807:  /* lshrv8di3 */
   13666     21856207 :     case 7805:  /* ashlv8di3 */
   13667     21856207 :     case 7803:  /* lshrv16si3 */
   13668     21856207 :     case 7801:  /* ashlv16si3 */
   13669     21856207 :     case 7799:  /* lshrv32hi3 */
   13670     21856207 :     case 7797:  /* ashlv32hi3 */
   13671     21856207 :     case 7792:  /* lshrv2di3 */
   13672     21856207 :     case 7791:  /* ashlv2di3 */
   13673     21856207 :     case 7790:  /* lshrv4di3 */
   13674     21856207 :     case 7789:  /* ashlv4di3 */
   13675     21856207 :     case 7788:  /* lshrv4si3 */
   13676     21856207 :     case 7787:  /* ashlv4si3 */
   13677     21856207 :     case 7786:  /* lshrv8si3 */
   13678     21856207 :     case 7785:  /* ashlv8si3 */
   13679     21856207 :     case 7784:  /* lshrv8hi3 */
   13680     21856207 :     case 7783:  /* ashlv8hi3 */
   13681     21856207 :     case 7782:  /* lshrv16hi3 */
   13682     21856207 :     case 7781:  /* ashlv16hi3 */
   13683     21856207 :     case 7779:  /* *lshrv2di3 */
   13684     21856207 :     case 7777:  /* *ashlv2di3 */
   13685     21856207 :     case 7775:  /* *lshrv4di3 */
   13686     21856207 :     case 7773:  /* *ashlv4di3 */
   13687     21856207 :     case 7771:  /* *lshrv4si3 */
   13688     21856207 :     case 7769:  /* *ashlv4si3 */
   13689     21856207 :     case 7767:  /* *lshrv8si3 */
   13690     21856207 :     case 7765:  /* *ashlv8si3 */
   13691     21856207 :     case 7763:  /* *lshrv8hi3 */
   13692     21856207 :     case 7761:  /* *ashlv8hi3 */
   13693     21856207 :     case 7759:  /* *lshrv16hi3 */
   13694     21856207 :     case 7757:  /* *ashlv16hi3 */
   13695     21856207 :     case 7746:  /* *ashrv8di3 */
   13696     21856207 :     case 7744:  /* *ashrv16si3 */
   13697     21856207 :     case 7742:  /* *ashrv4di3 */
   13698     21856207 :     case 7740:  /* *ashrv32hi3 */
   13699     21856207 :     case 7739:  /* *ashrv4si3_1 */
   13700     21856207 :     case 7738:  /* *ashrv8si3_1 */
   13701     21856207 :     case 7737:  /* *ashrv8hi3_1 */
   13702     21856207 :     case 7736:  /* *ashrv16hi3_1 */
   13703     21856207 :     case 7735:  /* ashrv4si3 */
   13704     21856207 :     case 7734:  /* ashrv8si3 */
   13705     21856207 :     case 7733:  /* ashrv8hi3 */
   13706     21856207 :     case 7732:  /* ashrv16hi3 */
   13707     21856207 :     case 7730:  /* *ashrv2di3 */
   13708     21856207 :     case 7728:  /* *ashrv4si3 */
   13709     21856207 :     case 7726:  /* *ashrv8si3 */
   13710     21856207 :     case 7724:  /* *ashrv8hi3 */
   13711     21856207 :     case 7722:  /* *ashrv16hi3 */
   13712     21856207 :     case 7720:  /* *sse4_1_mulv4si3 */
   13713     21856207 :     case 7718:  /* *avx2_mulv8si3 */
   13714     21856207 :     case 7716:  /* *avx512f_mulv16si3 */
   13715     21856207 :     case 7714:  /* *avx512dq_mulv2di3 */
   13716     21856207 :     case 7712:  /* *avx512dq_mulv4di3 */
   13717     21856207 :     case 7710:  /* *avx512dq_mulv8di3 */
   13718     21856207 :     case 7676:  /* *mulv8hi3 */
   13719     21856207 :     case 7674:  /* *mulv16hi3 */
   13720     21856207 :     case 7672:  /* *mulv32hi3 */
   13721     21856207 :     case 7670:  /* *sse2_ussubv8hi3 */
   13722     21856207 :     case 7668:  /* *sse2_sssubv8hi3 */
   13723     21856207 :     case 7666:  /* *sse2_usaddv8hi3 */
   13724     21856207 :     case 7664:  /* *sse2_ssaddv8hi3 */
   13725     21856207 :     case 7662:  /* *avx2_ussubv16hi3 */
   13726     21856207 :     case 7660:  /* *avx2_sssubv16hi3 */
   13727     21856207 :     case 7658:  /* *avx2_usaddv16hi3 */
   13728     21856207 :     case 7656:  /* *avx2_ssaddv16hi3 */
   13729     21856207 :     case 7654:  /* *avx512bw_ussubv32hi3 */
   13730     21856207 :     case 7652:  /* *avx512bw_sssubv32hi3 */
   13731     21856207 :     case 7650:  /* *avx512bw_usaddv32hi3 */
   13732     21856207 :     case 7648:  /* *avx512bw_ssaddv32hi3 */
   13733     21856207 :     case 7646:  /* *sse2_ussubv16qi3 */
   13734     21856207 :     case 7644:  /* *sse2_sssubv16qi3 */
   13735     21856207 :     case 7642:  /* *sse2_usaddv16qi3 */
   13736     21856207 :     case 7640:  /* *sse2_ssaddv16qi3 */
   13737     21856207 :     case 7638:  /* *avx2_ussubv32qi3 */
   13738     21856207 :     case 7636:  /* *avx2_sssubv32qi3 */
   13739     21856207 :     case 7634:  /* *avx2_usaddv32qi3 */
   13740     21856207 :     case 7632:  /* *avx2_ssaddv32qi3 */
   13741     21856207 :     case 7630:  /* *avx512bw_ussubv64qi3 */
   13742     21856207 :     case 7628:  /* *avx512bw_sssubv64qi3 */
   13743     21856207 :     case 7626:  /* *avx512bw_usaddv64qi3 */
   13744     21856207 :     case 7624:  /* *avx512bw_ssaddv64qi3 */
   13745     21856207 :     case 7623:  /* *subv2di3_one */
   13746     21856207 :     case 7622:  /* *subv4di3_one */
   13747     21856207 :     case 7621:  /* *subv8di3_one */
   13748     21856207 :     case 7620:  /* *subv4si3_one */
   13749     21856207 :     case 7619:  /* *subv8si3_one */
   13750     21856207 :     case 7618:  /* *subv16si3_one */
   13751     21856207 :     case 7617:  /* *subv8hi3_one */
   13752     21856207 :     case 7616:  /* *subv16hi3_one */
   13753     21856207 :     case 7615:  /* *subv32hi3_one */
   13754     21856207 :     case 7614:  /* *subv16qi3_one */
   13755     21856207 :     case 7613:  /* *subv32qi3_one */
   13756     21856207 :     case 7612:  /* *subv64qi3_one */
   13757     21856207 :     case 7611:  /* *addv2di3_one */
   13758     21856207 :     case 7610:  /* *addv4di3_one */
   13759     21856207 :     case 7609:  /* *addv8di3_one */
   13760     21856207 :     case 7608:  /* *addv4si3_one */
   13761     21856207 :     case 7607:  /* *addv8si3_one */
   13762     21856207 :     case 7606:  /* *addv16si3_one */
   13763     21856207 :     case 7605:  /* *addv8hi3_one */
   13764     21856207 :     case 7604:  /* *addv16hi3_one */
   13765     21856207 :     case 7603:  /* *addv32hi3_one */
   13766     21856207 :     case 7602:  /* *addv16qi3_one */
   13767     21856207 :     case 7601:  /* *addv32qi3_one */
   13768     21856207 :     case 7600:  /* *addv64qi3_one */
   13769     21856207 :     case 7575:  /* *subv2di3 */
   13770     21856207 :     case 7574:  /* *addv2di3 */
   13771     21856207 :     case 7573:  /* *subv4di3 */
   13772     21856207 :     case 7572:  /* *addv4di3 */
   13773     21856207 :     case 7571:  /* *subv8di3 */
   13774     21856207 :     case 7570:  /* *addv8di3 */
   13775     21856207 :     case 7569:  /* *subv4si3 */
   13776     21856207 :     case 7568:  /* *addv4si3 */
   13777     21856207 :     case 7567:  /* *subv8si3 */
   13778     21856207 :     case 7566:  /* *addv8si3 */
   13779     21856207 :     case 7565:  /* *subv16si3 */
   13780     21856207 :     case 7564:  /* *addv16si3 */
   13781     21856207 :     case 7563:  /* *subv8hi3 */
   13782     21856207 :     case 7562:  /* *addv8hi3 */
   13783     21856207 :     case 7561:  /* *subv16hi3 */
   13784     21856207 :     case 7560:  /* *addv16hi3 */
   13785     21856207 :     case 7559:  /* *subv32hi3 */
   13786     21856207 :     case 7558:  /* *addv32hi3 */
   13787     21856207 :     case 7557:  /* *subv16qi3 */
   13788     21856207 :     case 7556:  /* *addv16qi3 */
   13789     21856207 :     case 7555:  /* *subv32qi3 */
   13790     21856207 :     case 7554:  /* *addv32qi3 */
   13791     21856207 :     case 7553:  /* *subv64qi3 */
   13792     21856207 :     case 7552:  /* *addv64qi3 */
   13793     21856207 :     case 7310:  /* vec_concatv2df */
   13794     21856207 :     case 5352:  /* *vec_concatv8bf_0 */
   13795     21856207 :     case 5351:  /* *vec_concatv8hf_0 */
   13796     21856207 :     case 5350:  /* *vec_concatv4sf_0 */
   13797     21856207 :     case 5349:  /* *vec_concatv8bf */
   13798     21856207 :     case 5348:  /* *vec_concatv8hf */
   13799     21856207 :     case 5347:  /* *vec_concatv4sf */
   13800     21856207 :     case 5346:  /* *vec_concatv2sf_sse */
   13801     21856207 :     case 5345:  /* *vec_concatv2sf_sse4_1 */
   13802     21856207 :     case 3878:  /* *xortf3 */
   13803     21856207 :     case 3877:  /* *iortf3 */
   13804     21856207 :     case 3876:  /* *andtf3 */
   13805     21856207 :     case 3875:  /* xordf3 */
   13806     21856207 :     case 3874:  /* iordf3 */
   13807     21856207 :     case 3873:  /* anddf3 */
   13808     21856207 :     case 3872:  /* xorsf3 */
   13809     21856207 :     case 3871:  /* iorsf3 */
   13810     21856207 :     case 3870:  /* andsf3 */
   13811     21856207 :     case 3869:  /* xorhf3 */
   13812     21856207 :     case 3868:  /* iorhf3 */
   13813     21856207 :     case 3867:  /* andhf3 */
   13814     21856207 :     case 3866:  /* xorbf3 */
   13815     21856207 :     case 3865:  /* iorbf3 */
   13816     21856207 :     case 3864:  /* andbf3 */
   13817     21856207 :     case 3857:  /* *bit_and_float_vector_all_ones */
   13818     21856207 :     case 3856:  /* *bit_and_float_vector_all_ones */
   13819     21856207 :     case 3855:  /* *bit_and_float_vector_all_ones */
   13820     21856207 :     case 3854:  /* *bit_and_float_vector_all_ones */
   13821     21856207 :     case 3853:  /* *bit_and_float_vector_all_ones */
   13822     21856207 :     case 3852:  /* *bit_and_float_vector_all_ones */
   13823     21856207 :     case 3851:  /* *bit_and_float_vector_all_ones */
   13824     21856207 :     case 3850:  /* *bit_and_float_vector_all_ones */
   13825     21856207 :     case 3849:  /* *bit_and_float_vector_all_ones */
   13826     21856207 :     case 3848:  /* *bit_and_float_vector_all_ones */
   13827     21856207 :     case 3847:  /* *bit_and_float_vector_all_ones */
   13828     21856207 :     case 3846:  /* *bit_and_float_vector_all_ones */
   13829     21856207 :     case 3844:  /* *xorv8df3 */
   13830     21856207 :     case 3842:  /* *iorv8df3 */
   13831     21856207 :     case 3840:  /* *andv8df3 */
   13832     21856207 :     case 3838:  /* *xorv16sf3 */
   13833     21856207 :     case 3836:  /* *iorv16sf3 */
   13834     21856207 :     case 3834:  /* *andv16sf3 */
   13835     21856207 :     case 3833:  /* *xorv32hf3 */
   13836     21856207 :     case 3832:  /* *iorv32hf3 */
   13837     21856207 :     case 3831:  /* *andv32hf3 */
   13838     21856207 :     case 3830:  /* *xorv32bf3 */
   13839     21856207 :     case 3829:  /* *iorv32bf3 */
   13840     21856207 :     case 3828:  /* *andv32bf3 */
   13841     21856207 :     case 3826:  /* *xorv2df3 */
   13842     21856207 :     case 3824:  /* *iorv2df3 */
   13843     21856207 :     case 3822:  /* *andv2df3 */
   13844     21856207 :     case 3820:  /* *xorv4df3 */
   13845     21856207 :     case 3818:  /* *iorv4df3 */
   13846     21856207 :     case 3816:  /* *andv4df3 */
   13847     21856207 :     case 3814:  /* *xorv4sf3 */
   13848     21856207 :     case 3812:  /* *iorv4sf3 */
   13849     21856207 :     case 3810:  /* *andv4sf3 */
   13850     21856207 :     case 3808:  /* *xorv8sf3 */
   13851     21856207 :     case 3806:  /* *iorv8sf3 */
   13852     21856207 :     case 3804:  /* *andv8sf3 */
   13853     21856207 :     case 3803:  /* *xorv8hf3 */
   13854     21856207 :     case 3802:  /* *iorv8hf3 */
   13855     21856207 :     case 3801:  /* *andv8hf3 */
   13856     21856207 :     case 3800:  /* *xorv16hf3 */
   13857     21856207 :     case 3799:  /* *iorv16hf3 */
   13858     21856207 :     case 3798:  /* *andv16hf3 */
   13859     21856207 :     case 3797:  /* *xorv8bf3 */
   13860     21856207 :     case 3796:  /* *iorv8bf3 */
   13861     21856207 :     case 3795:  /* *andv8bf3 */
   13862     21856207 :     case 3794:  /* *xorv16bf3 */
   13863     21856207 :     case 3793:  /* *iorv16bf3 */
   13864     21856207 :     case 3792:  /* *andv16bf3 */
   13865     21856207 :     case 3100:  /* *sminv2df3 */
   13866     21856207 :     case 3098:  /* *smaxv2df3 */
   13867     21856207 :     case 3096:  /* *sminv4df3 */
   13868     21856207 :     case 3094:  /* *smaxv4df3 */
   13869     21856207 :     case 3090:  /* *sminv8df3 */
   13870     21856207 :     case 3086:  /* *smaxv8df3 */
   13871     21856207 :     case 3084:  /* *sminv4sf3 */
   13872     21856207 :     case 3082:  /* *smaxv4sf3 */
   13873     21856207 :     case 3080:  /* *sminv8sf3 */
   13874     21856207 :     case 3078:  /* *smaxv8sf3 */
   13875     21856207 :     case 3074:  /* *sminv16sf3 */
   13876     21856207 :     case 3070:  /* *smaxv16sf3 */
   13877     21856207 :     case 3068:  /* *sminv8hf3 */
   13878     21856207 :     case 3066:  /* *smaxv8hf3 */
   13879     21856207 :     case 3064:  /* *sminv16hf3 */
   13880     21856207 :     case 3062:  /* *smaxv16hf3 */
   13881     21856207 :     case 3058:  /* *sminv32hf3 */
   13882     21856207 :     case 3054:  /* *smaxv32hf3 */
   13883     21856207 :     case 2945:  /* sse2_divv2df3 */
   13884     21856207 :     case 2943:  /* avx_divv4df3 */
   13885     21856207 :     case 2939:  /* avx512f_divv8df3 */
   13886     21856207 :     case 2937:  /* sse_divv4sf3 */
   13887     21856207 :     case 2935:  /* avx_divv8sf3 */
   13888     21856207 :     case 2931:  /* avx512f_divv16sf3 */
   13889     21856207 :     case 2929:  /* avx512fp16_divv8hf3 */
   13890     21856207 :     case 2927:  /* avx512fp16_divv16hf3 */
   13891     21856207 :     case 2923:  /* avx512fp16_divv32hf3 */
   13892     21856207 :     case 2889:  /* *mulv2df3 */
   13893     21856207 :     case 2885:  /* *mulv4df3 */
   13894     21856207 :     case 2881:  /* *mulv8df3 */
   13895     21856207 :     case 2877:  /* *mulv4sf3 */
   13896     21856207 :     case 2873:  /* *mulv8sf3 */
   13897     21856207 :     case 2869:  /* *mulv16sf3 */
   13898     21856207 :     case 2865:  /* *mulv8hf3 */
   13899     21856207 :     case 2861:  /* *mulv16hf3 */
   13900     21856207 :     case 2857:  /* *mulv32hf3 */
   13901     21856207 :     case 2823:  /* *subv2df3 */
   13902     21856207 :     case 2819:  /* *addv2df3 */
   13903     21856207 :     case 2815:  /* *subv4df3 */
   13904     21856207 :     case 2811:  /* *addv4df3 */
   13905     21856207 :     case 2807:  /* *subv8df3 */
   13906     21856207 :     case 2803:  /* *addv8df3 */
   13907     21856207 :     case 2799:  /* *subv4sf3 */
   13908     21856207 :     case 2795:  /* *addv4sf3 */
   13909     21856207 :     case 2791:  /* *subv8sf3 */
   13910     21856207 :     case 2787:  /* *addv8sf3 */
   13911     21856207 :     case 2783:  /* *subv16sf3 */
   13912     21856207 :     case 2779:  /* *addv16sf3 */
   13913     21856207 :     case 2775:  /* *subv8hf3 */
   13914     21856207 :     case 2771:  /* *addv8hf3 */
   13915     21856207 :     case 2767:  /* *subv16hf3 */
   13916     21856207 :     case 2763:  /* *addv16hf3 */
   13917     21856207 :     case 2759:  /* *subv32hf3 */
   13918     21856207 :     case 2755:  /* *addv32hf3 */
   13919     21856207 :     case 2620:  /* *sse2_movq128_v2df_1 */
   13920     21856207 :     case 2619:  /* *sse2_movq128_v2di_1 */
   13921     21856207 :     case 2405:  /* *mmx_concatv2si */
   13922     21856207 :     case 2339:  /* *mmx_xorv2si3 */
   13923     21856207 :     case 2338:  /* *mmx_iorv2si3 */
   13924     21856207 :     case 2337:  /* *mmx_andv2si3 */
   13925     21856207 :     case 2336:  /* *mmx_xorv4hi3 */
   13926     21856207 :     case 2335:  /* *mmx_iorv4hi3 */
   13927     21856207 :     case 2334:  /* *mmx_andv4hi3 */
   13928     21856207 :     case 2333:  /* *mmx_xorv8qi3 */
   13929     21856207 :     case 2332:  /* *mmx_iorv8qi3 */
   13930     21856207 :     case 2331:  /* *mmx_andv8qi3 */
   13931     21856207 :     case 2285:  /* *gtv2hi3 */
   13932     21856207 :     case 2284:  /* *gtv2qi3 */
   13933     21856207 :     case 2283:  /* *gtv4qi3 */
   13934     21856207 :     case 2282:  /* mmx_gtv2si3 */
   13935     21856207 :     case 2281:  /* mmx_gtv4hi3 */
   13936     21856207 :     case 2280:  /* mmx_gtv8qi3 */
   13937     21856207 :     case 2279:  /* *eqv2hi3 */
   13938     21856207 :     case 2278:  /* *eqv2qi3 */
   13939     21856207 :     case 2277:  /* *eqv4qi3 */
   13940     21856207 :     case 2276:  /* *mmx_eqv2si3 */
   13941     21856207 :     case 2275:  /* *mmx_eqv4hi3 */
   13942     21856207 :     case 2274:  /* *mmx_eqv8qi3 */
   13943     21856207 :     case 2270:  /* *mmx_ashrv2hi3_1 */
   13944     21856207 :     case 2269:  /* ashrv2hi3 */
   13945     21856207 :     case 2268:  /* lshrv2hi3 */
   13946     21856207 :     case 2267:  /* ashlv2hi3 */
   13947     21856207 :     case 2266:  /* mmx_lshrv1si3 */
   13948     21856207 :     case 2265:  /* mmx_ashlv1si3 */
   13949     21856207 :     case 2264:  /* mmx_lshrv1di3 */
   13950     21856207 :     case 2263:  /* mmx_ashlv1di3 */
   13951     21856207 :     case 2262:  /* mmx_lshrv2si3 */
   13952     21856207 :     case 2261:  /* mmx_ashlv2si3 */
   13953     21856207 :     case 2260:  /* mmx_lshrv4hi3 */
   13954     21856207 :     case 2259:  /* mmx_ashlv4hi3 */
   13955     21856207 :     case 2258:  /* *mmx_ashrv2si3_1 */
   13956     21856207 :     case 2257:  /* *mmx_ashrv4hi3_1 */
   13957     21856207 :     case 2256:  /* mmx_ashrv2si3 */
   13958     21856207 :     case 2255:  /* mmx_ashrv4hi3 */
   13959     21856207 :     case 2248:  /* uminv2hi3 */
   13960     21856207 :     case 2247:  /* umaxv2hi3 */
   13961     21856207 :     case 2246:  /* uminv2qi3 */
   13962     21856207 :     case 2245:  /* umaxv2qi3 */
   13963     21856207 :     case 2244:  /* uminv4qi3 */
   13964     21856207 :     case 2243:  /* umaxv4qi3 */
   13965     21856207 :     case 2242:  /* *mmx_uminv8qi3 */
   13966     21856207 :     case 2241:  /* *mmx_umaxv8qi3 */
   13967     21856207 :     case 2240:  /* uminv2si3 */
   13968     21856207 :     case 2239:  /* umaxv2si3 */
   13969     21856207 :     case 2238:  /* uminv4hi3 */
   13970     21856207 :     case 2237:  /* umaxv4hi3 */
   13971     21856207 :     case 2236:  /* sminv2hi3 */
   13972     21856207 :     case 2235:  /* smaxv2hi3 */
   13973     21856207 :     case 2234:  /* sminv2qi3 */
   13974     21856207 :     case 2233:  /* smaxv2qi3 */
   13975     21856207 :     case 2232:  /* sminv4qi3 */
   13976     21856207 :     case 2231:  /* smaxv4qi3 */
   13977     21856207 :     case 2230:  /* *mmx_sminv4hi3 */
   13978     21856207 :     case 2229:  /* *mmx_smaxv4hi3 */
   13979     21856207 :     case 2228:  /* sminv2si3 */
   13980     21856207 :     case 2227:  /* smaxv2si3 */
   13981     21856207 :     case 2226:  /* sminv8qi3 */
   13982     21856207 :     case 2225:  /* smaxv8qi3 */
   13983     21856207 :     case 2217:  /* mulv2hi3 */
   13984     21856207 :     case 2216:  /* *mmx_mulv4hi3 */
   13985     21856207 :     case 2215:  /* mulv2si3 */
   13986     21856207 :     case 2214:  /* ussubv2hi3 */
   13987     21856207 :     case 2213:  /* sssubv2hi3 */
   13988     21856207 :     case 2212:  /* usaddv2hi3 */
   13989     21856207 :     case 2211:  /* ssaddv2hi3 */
   13990     21856207 :     case 2210:  /* ussubv2qi3 */
   13991     21856207 :     case 2209:  /* sssubv2qi3 */
   13992     21856207 :     case 2208:  /* usaddv2qi3 */
   13993     21856207 :     case 2207:  /* ssaddv2qi3 */
   13994     21856207 :     case 2206:  /* ussubv4qi3 */
   13995     21856207 :     case 2205:  /* sssubv4qi3 */
   13996     21856207 :     case 2204:  /* usaddv4qi3 */
   13997     21856207 :     case 2203:  /* ssaddv4qi3 */
   13998     21856207 :     case 2202:  /* *mmx_ussubv4hi3 */
   13999     21856207 :     case 2201:  /* *mmx_sssubv4hi3 */
   14000     21856207 :     case 2200:  /* *mmx_usaddv4hi3 */
   14001     21856207 :     case 2199:  /* *mmx_ssaddv4hi3 */
   14002     21856207 :     case 2198:  /* *mmx_ussubv8qi3 */
   14003     21856207 :     case 2197:  /* *mmx_sssubv8qi3 */
   14004     21856207 :     case 2196:  /* *mmx_usaddv8qi3 */
   14005     21856207 :     case 2195:  /* *mmx_ssaddv8qi3 */
   14006     21856207 :     case 2192:  /* subv2hi3 */
   14007     21856207 :     case 2191:  /* addv2hi3 */
   14008     21856207 :     case 2190:  /* subv4qi3 */
   14009     21856207 :     case 2189:  /* addv4qi3 */
   14010     21856207 :     case 2188:  /* *mmx_subv1di3 */
   14011     21856207 :     case 2187:  /* *mmx_addv1di3 */
   14012     21856207 :     case 2186:  /* *mmx_subv2si3 */
   14013     21856207 :     case 2185:  /* *mmx_addv2si3 */
   14014     21856207 :     case 2184:  /* *mmx_subv4hi3 */
   14015     21856207 :     case 2183:  /* *mmx_addv4hi3 */
   14016     21856207 :     case 2182:  /* *mmx_subv8qi3 */
   14017     21856207 :     case 2181:  /* *mmx_addv8qi3 */
   14018     21856207 :     case 2179:  /* xorv4hf3 */
   14019     21856207 :     case 2178:  /* iorv4hf3 */
   14020     21856207 :     case 2177:  /* andv4hf3 */
   14021     21856207 :     case 2176:  /* xorv2hf3 */
   14022     21856207 :     case 2175:  /* iorv2hf3 */
   14023     21856207 :     case 2174:  /* andv2hf3 */
   14024     21856207 :     case 2173:  /* xorv4bf3 */
   14025     21856207 :     case 2172:  /* iorv4bf3 */
   14026     21856207 :     case 2171:  /* andv4bf3 */
   14027     21856207 :     case 2170:  /* xorv2bf3 */
   14028     21856207 :     case 2169:  /* iorv2bf3 */
   14029     21856207 :     case 2168:  /* andv2bf3 */
   14030     21856207 :     case 2149:  /* *mmx_concatv2sf */
   14031     21856207 :     case 2136:  /* xorv2sf3 */
   14032     21856207 :     case 2135:  /* iorv2sf3 */
   14033     21856207 :     case 2134:  /* andv2sf3 */
   14034     21856207 :     case 1855:  /* sminhf3 */
   14035     21856207 :     case 1854:  /* smaxhf3 */
   14036     21856207 :     case 1853:  /* smindf3 */
   14037     21856207 :     case 1852:  /* smaxdf3 */
   14038     21856207 :     case 1851:  /* sminsf3 */
   14039     21856207 :     case 1850:  /* smaxsf3 */
   14040     21856207 :     case 1714:  /* *divhf */
   14041     21856207 :     case 1713:  /* *mulhf */
   14042     21856207 :     case 1712:  /* *subhf */
   14043     21856207 :     case 1711:  /* *addhf */
   14044     21856207 :     case 1413:  /* *rotrhi3_1_nf */
   14045     21856207 :     case 1411:  /* *rotlhi3_1_nf */
   14046     21856207 :     case 1409:  /* *rotrqi3_1_nf */
   14047     21856207 :     case 1407:  /* *rotlqi3_1_nf */
   14048     21856207 :     case 1382:  /* *rotrdi3_1_nf */
   14049     21856207 :     case 1380:  /* *rotldi3_1_nf */
   14050     21856207 :     case 1378:  /* *rotrsi3_1_nf */
   14051     21856207 :     case 1376:  /* *rotlsi3_1_nf */
   14052     21856207 :     case 1375:  /* *bmi2_rorxdi3_1 */
   14053     21856207 :     case 1374:  /* *bmi2_rorxsi3_1 */
   14054     21856207 :     case 1248:  /* *lshrhi3_1_nf */
   14055     21856207 :     case 1246:  /* *lshrqi3_1_nf */
   14056     21856207 :     case 1244:  /* *ashrhi3_1_nf */
   14057     21856207 :     case 1242:  /* *ashrqi3_1_nf */
   14058     21856207 :     case 1216:  /* *lshrdi3_1_nf */
   14059     21856207 :     case 1214:  /* *lshrsi3_1_nf */
   14060     21856207 :     case 1211:  /* *ashrdi3_1_nf */
   14061     21856207 :     case 1209:  /* *ashrsi3_1_nf */
   14062     21856207 :     case 1208:  /* *bmi2_ashrdi3_1 */
   14063     21856207 :     case 1207:  /* *bmi2_lshrdi3_1 */
   14064     21856207 :     case 1206:  /* *bmi2_ashrsi3_1 */
   14065     21856207 :     case 1205:  /* *bmi2_lshrsi3_1 */
   14066     21856207 :     case 1202:  /* ashrdi3_cvt_nf */
   14067     21856207 :     case 1200:  /* ashrsi3_cvt_nf */
   14068     21856207 :     case 1140:  /* *ashlqi3_1_nf */
   14069     21856207 :     case 1138:  /* *ashlhi3_1_nf */
   14070     21856207 :     case 1124:  /* *ashldi3_1_nf */
   14071     21856207 :     case 1122:  /* *ashlsi3_1_nf */
   14072     21856207 :     case 1121:  /* *bmi2_ashldi3_1 */
   14073     21856207 :     case 1120:  /* *bmi2_ashlsi3_1 */
   14074     21856207 :     case 899:  /* *xorqi_1_nf */
   14075     21856207 :     case 897:  /* *iorqi_1_nf */
   14076     21856207 :     case 863:  /* *xordi_1_nf */
   14077     21856207 :     case 861:  /* *iordi_1_nf */
   14078     21856207 :     case 859:  /* *xorsi_1_nf */
   14079     21856207 :     case 857:  /* *iorsi_1_nf */
   14080     21856207 :     case 855:  /* *xorhi_1_nf */
   14081     21856207 :     case 853:  /* *iorhi_1_nf */
   14082     21856207 :     case 753:  /* *andqi_1_nf */
   14083     21856207 :     case 751:  /* *andsi_1_nf */
   14084     21856207 :     case 749:  /* *andhi_1_nf */
   14085     21856207 :     case 735:  /* *anddi_1_nf */
   14086     21856207 :     case 656:  /* *bmi2_umuldi3_highpart */
   14087     21856207 :     case 655:  /* *bmi2_umulsi3_highpart */
   14088     21856207 :     case 630:  /* *mulqi3_1_nf */
   14089     21856207 :     case 622:  /* *muldi3_1_nf */
   14090     21856207 :     case 620:  /* *mulsi3_1_nf */
   14091     21856207 :     case 618:  /* *mulhi3_1_nf */
   14092     21856207 :     case 394:  /* *subdi_1_nf */
   14093     21856207 :     case 392:  /* *subsi_1_nf */
   14094     21856207 :     case 390:  /* *subhi_1_nf */
   14095     21856207 :     case 388:  /* *subqi_1_nf */
   14096     21856207 :     case 303:  /* *addqi_1_nf */
   14097     21856207 :     case 301:  /* *addhi_1_nf */
   14098     21856207 :     case 288:  /* *adddi_1_nf */
   14099     21856207 :     case 286:  /* *addsi_1_nf */
   14100     21856207 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14101     21856207 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
   14102     21856207 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1));
   14103     21856207 :       break;
   14104              : 
   14105          114 :     case 285:  /* *addti3_doubleword_concat_zext */
   14106          114 :     case 284:  /* *addti3_doubleword_concat_zext */
   14107          114 :     case 283:  /* *addti3_doubleword_concat_zext */
   14108          114 :     case 282:  /* *adddi3_doubleword_concat_zext */
   14109          114 :     case 281:  /* *adddi3_doubleword_concat_zext */
   14110          114 :     case 280:  /* *adddi3_doubleword_concat_zext */
   14111          114 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14112          114 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0));
   14113          114 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   14114          114 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   14115          114 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   14116          114 :       break;
   14117              : 
   14118        16153 :     case 279:  /* *addti3_doubleword_concat */
   14119        16153 :     case 278:  /* *addti3_doubleword_concat */
   14120        16153 :     case 277:  /* *addti3_doubleword_concat */
   14121        16153 :     case 276:  /* *adddi3_doubleword_concat */
   14122        16153 :     case 275:  /* *adddi3_doubleword_concat */
   14123        16153 :     case 274:  /* *adddi3_doubleword_concat */
   14124        16153 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14125        16153 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   14126        16153 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 0), 0));
   14127        16153 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0), 1));
   14128        16153 :       ro[4] = *(ro_loc[4] = &XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 1), 0));
   14129        16153 :       break;
   14130              : 
   14131        33293 :     case 597:  /* *adddi3_ne_0 */
   14132        33293 :     case 596:  /* *addsi3_ne_0 */
   14133        33293 :     case 595:  /* *addhi3_ne_0 */
   14134        33293 :     case 594:  /* *addqi3_ne_0 */
   14135        33293 :     case 593:  /* *adddi3_eq_0 */
   14136        33293 :     case 592:  /* *addsi3_eq_0 */
   14137        33293 :     case 591:  /* *addhi3_eq_0 */
   14138        33293 :     case 590:  /* *addqi3_eq_0 */
   14139        33293 :     case 273:  /* *addti3_doubleword_zext */
   14140        33293 :     case 272:  /* *adddi3_doubleword_zext */
   14141        33293 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14142        33293 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   14143        33293 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0));
   14144        33293 :       break;
   14145              : 
   14146    224937566 :     case 2680:  /* klshiftrtdi */
   14147    224937566 :     case 2679:  /* kashiftdi */
   14148    224937566 :     case 2678:  /* klshiftrtsi */
   14149    224937566 :     case 2677:  /* kashiftsi */
   14150    224937566 :     case 2676:  /* klshiftrthi */
   14151    224937566 :     case 2675:  /* kashifthi */
   14152    224937566 :     case 2674:  /* klshiftrtqi */
   14153    224937566 :     case 2673:  /* kashiftqi */
   14154    224937566 :     case 2672:  /* kadddi */
   14155    224937566 :     case 2671:  /* kaddsi */
   14156    224937566 :     case 2670:  /* kaddhi */
   14157    224937566 :     case 2669:  /* kaddqi */
   14158    224937566 :     case 2655:  /* kxordi */
   14159    224937566 :     case 2654:  /* kiordi */
   14160    224937566 :     case 2653:  /* kanddi */
   14161    224937566 :     case 2652:  /* kxorsi */
   14162    224937566 :     case 2651:  /* kiorsi */
   14163    224937566 :     case 2650:  /* kandsi */
   14164    224937566 :     case 2649:  /* kxorhi */
   14165    224937566 :     case 2648:  /* kiorhi */
   14166    224937566 :     case 2647:  /* kandhi */
   14167    224937566 :     case 2646:  /* kxorqi */
   14168    224937566 :     case 2645:  /* kiorqi */
   14169    224937566 :     case 2644:  /* kandqi */
   14170    224937566 :     case 2348:  /* *xorv2hi3 */
   14171    224937566 :     case 2347:  /* *iorv2hi3 */
   14172    224937566 :     case 2346:  /* *andv2hi3 */
   14173    224937566 :     case 2345:  /* *xorv2qi3 */
   14174    224937566 :     case 2344:  /* *iorv2qi3 */
   14175    224937566 :     case 2343:  /* *andv2qi3 */
   14176    224937566 :     case 2342:  /* *xorv4qi3 */
   14177    224937566 :     case 2341:  /* *iorv4qi3 */
   14178    224937566 :     case 2340:  /* *andv4qi3 */
   14179    224937566 :     case 2273:  /* ashrv2qi3 */
   14180    224937566 :     case 2272:  /* lshrv2qi3 */
   14181    224937566 :     case 2271:  /* ashlv2qi3 */
   14182    224937566 :     case 2194:  /* subv2qi3 */
   14183    224937566 :     case 2193:  /* addv2qi3 */
   14184    224937566 :     case 2128:  /* mmx_gev2sf3 */
   14185    224937566 :     case 2127:  /* mmx_gtv2sf3 */
   14186    224937566 :     case 2126:  /* *mmx_eqv2sf3 */
   14187    224937566 :     case 2113:  /* *mmx_sminv2sf3 */
   14188    224937566 :     case 2112:  /* *mmx_smaxv2sf3 */
   14189    224937566 :     case 2111:  /* *mmx_mulv2sf3 */
   14190    224937566 :     case 2110:  /* *mmx_subv2sf3 */
   14191    224937566 :     case 2109:  /* *mmx_addv2sf3 */
   14192    224937566 :     case 1913:  /* pro_epilogue_adjust_stack_sub_di */
   14193    224937566 :     case 1912:  /* pro_epilogue_adjust_stack_sub_si */
   14194    224937566 :     case 1911:  /* pro_epilogue_adjust_stack_add_noccdi */
   14195    224937566 :     case 1910:  /* pro_epilogue_adjust_stack_add_noccsi */
   14196    224937566 :     case 1909:  /* pro_epilogue_adjust_stack_add_di */
   14197    224937566 :     case 1908:  /* pro_epilogue_adjust_stack_add_si */
   14198    224937566 :     case 1889:  /* *umindi3_1 */
   14199    224937566 :     case 1888:  /* *umaxdi3_1 */
   14200    224937566 :     case 1887:  /* *smindi3_1 */
   14201    224937566 :     case 1886:  /* *smaxdi3_1 */
   14202    224937566 :     case 1885:  /* *uminsi3_1 */
   14203    224937566 :     case 1884:  /* *umaxsi3_1 */
   14204    224937566 :     case 1883:  /* *sminsi3_1 */
   14205    224937566 :     case 1882:  /* *smaxsi3_1 */
   14206    224937566 :     case 1881:  /* *uminhi3_1 */
   14207    224937566 :     case 1880:  /* *umaxhi3_1 */
   14208    224937566 :     case 1879:  /* *sminhi3_1 */
   14209    224937566 :     case 1878:  /* *smaxhi3_1 */
   14210    224937566 :     case 1877:  /* *uminqi3_1 */
   14211    224937566 :     case 1876:  /* *umaxqi3_1 */
   14212    224937566 :     case 1875:  /* *sminqi3_1 */
   14213    224937566 :     case 1874:  /* *smaxqi3_1 */
   14214    224937566 :     case 1873:  /* *uminti3_doubleword */
   14215    224937566 :     case 1872:  /* *umaxti3_doubleword */
   14216    224937566 :     case 1871:  /* *sminti3_doubleword */
   14217    224937566 :     case 1870:  /* *smaxti3_doubleword */
   14218    224937566 :     case 1869:  /* *umindi3_doubleword */
   14219    224937566 :     case 1868:  /* *umaxdi3_doubleword */
   14220    224937566 :     case 1867:  /* *smindi3_doubleword */
   14221    224937566 :     case 1866:  /* *smaxdi3_doubleword */
   14222    224937566 :     case 1414:  /* *rotrhi3_1 */
   14223    224937566 :     case 1412:  /* *rotlhi3_1 */
   14224    224937566 :     case 1410:  /* *rotrqi3_1 */
   14225    224937566 :     case 1408:  /* *rotlqi3_1 */
   14226    224937566 :     case 1383:  /* *rotrdi3_1 */
   14227    224937566 :     case 1381:  /* *rotldi3_1 */
   14228    224937566 :     case 1379:  /* *rotrsi3_1 */
   14229    224937566 :     case 1377:  /* *rotlsi3_1 */
   14230    224937566 :     case 1249:  /* *lshrhi3_1 */
   14231    224937566 :     case 1247:  /* *lshrqi3_1 */
   14232    224937566 :     case 1245:  /* *ashrhi3_1 */
   14233    224937566 :     case 1243:  /* *ashrqi3_1 */
   14234    224937566 :     case 1217:  /* *lshrdi3_1 */
   14235    224937566 :     case 1215:  /* *lshrsi3_1 */
   14236    224937566 :     case 1212:  /* *ashrdi3_1 */
   14237    224937566 :     case 1210:  /* *ashrsi3_1 */
   14238    224937566 :     case 1203:  /* ashrdi3_cvt */
   14239    224937566 :     case 1201:  /* ashrsi3_cvt */
   14240    224937566 :     case 1167:  /* ashrti3_doubleword */
   14241    224937566 :     case 1166:  /* lshrti3_doubleword */
   14242    224937566 :     case 1165:  /* ashrdi3_doubleword */
   14243    224937566 :     case 1164:  /* lshrdi3_doubleword */
   14244    224937566 :     case 1141:  /* *ashlqi3_1 */
   14245    224937566 :     case 1139:  /* *ashlhi3_1 */
   14246    224937566 :     case 1125:  /* *ashldi3_1 */
   14247    224937566 :     case 1123:  /* *ashlsi3_1 */
   14248    224937566 :     case 1091:  /* ashlti3_doubleword */
   14249    224937566 :     case 1090:  /* ashldi3_doubleword */
   14250    224937566 :     case 900:  /* *xorqi_1 */
   14251    224937566 :     case 898:  /* *iorqi_1 */
   14252    224937566 :     case 869:  /* *xordi_1_btc */
   14253    224937566 :     case 868:  /* *iordi_1_bts */
   14254    224937566 :     case 864:  /* *xordi_1 */
   14255    224937566 :     case 862:  /* *iordi_1 */
   14256    224937566 :     case 860:  /* *xorsi_1 */
   14257    224937566 :     case 858:  /* *iorsi_1 */
   14258    224937566 :     case 856:  /* *xorhi_1 */
   14259    224937566 :     case 854:  /* *iorhi_1 */
   14260    224937566 :     case 852:  /* *xorti3_doubleword */
   14261    224937566 :     case 851:  /* *iorti3_doubleword */
   14262    224937566 :     case 850:  /* *xordi3_doubleword */
   14263    224937566 :     case 849:  /* *iordi3_doubleword */
   14264    224937566 :     case 754:  /* *andqi_1 */
   14265    224937566 :     case 752:  /* *andsi_1 */
   14266    224937566 :     case 750:  /* *andhi_1 */
   14267    224937566 :     case 737:  /* *anddi_1_btr */
   14268    224937566 :     case 736:  /* *anddi_1 */
   14269    224937566 :     case 734:  /* *andti3_doubleword */
   14270    224937566 :     case 733:  /* *anddi3_doubleword */
   14271    224937566 :     case 631:  /* *mulqi3_1 */
   14272    224937566 :     case 623:  /* *muldi3_1 */
   14273    224937566 :     case 621:  /* *mulsi3_1 */
   14274    224937566 :     case 619:  /* *mulhi3_1 */
   14275    224937566 :     case 522:  /* *subdi3_carry_0r */
   14276    224937566 :     case 521:  /* *subsi3_carry_0r */
   14277    224937566 :     case 520:  /* *subhi3_carry_0r */
   14278    224937566 :     case 519:  /* *subqi3_carry_0r */
   14279    224937566 :     case 514:  /* *subdi3_carry_0 */
   14280    224937566 :     case 513:  /* *subsi3_carry_0 */
   14281    224937566 :     case 512:  /* *subhi3_carry_0 */
   14282    224937566 :     case 511:  /* *subqi3_carry_0 */
   14283    224937566 :     case 395:  /* *subdi_1 */
   14284    224937566 :     case 393:  /* *subsi_1 */
   14285    224937566 :     case 391:  /* *subhi_1 */
   14286    224937566 :     case 389:  /* *subqi_1 */
   14287    224937566 :     case 385:  /* *subti3_doubleword */
   14288    224937566 :     case 384:  /* *subdi3_doubleword */
   14289    224937566 :     case 304:  /* *addqi_1 */
   14290    224937566 :     case 302:  /* *addhi_1 */
   14291    224937566 :     case 289:  /* *adddi_1 */
   14292    224937566 :     case 287:  /* *addsi_1 */
   14293    224937566 :     case 271:  /* *addti3_doubleword */
   14294    224937566 :     case 270:  /* *adddi3_doubleword */
   14295    224937566 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14296    224937566 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   14297    224937566 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1));
   14298    224937566 :       break;
   14299              : 
   14300       545236 :     case 11267:  /* bsrinit */
   14301       545236 :     case 8705:  /* sse_stmxcsr */
   14302       545236 :     case 2068:  /* sttilecfg */
   14303       545236 :     case 2037:  /* rdpid_rex64 */
   14304       545236 :     case 2036:  /* rdpid */
   14305       545236 :     case 1996:  /* rdgsbasedi */
   14306       545236 :     case 1995:  /* rdfsbasedi */
   14307       545236 :     case 1994:  /* rdgsbasesi */
   14308       545236 :     case 1993:  /* rdfsbasesi */
   14309       545236 :     case 1988:  /* lwp_slwpcbdi */
   14310       545236 :     case 1987:  /* lwp_slwpcbsi */
   14311       545236 :     case 1983:  /* fnstsw */
   14312       545236 :     case 1956:  /* fxsave64 */
   14313       545236 :     case 1955:  /* fxsave */
   14314       545236 :     case 1951:  /* rdtsc */
   14315       545236 :     case 1944:  /* *prefetch_rst2 */
   14316       545236 :     case 1749:  /* x86_fnstsw_1 */
   14317       545236 :     case 1695:  /* *load_tp_x32_zext */
   14318       545236 :     case 1694:  /* *load_tp_di */
   14319       545236 :     case 1693:  /* *load_tp_si */
   14320       545236 :     case 1532:  /* set_got_rex64 */
   14321       545236 :     case 242:  /* x86_fnstcw_1 */
   14322       545236 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14323       545236 :       break;
   14324              : 
   14325        87212 :     case 267:  /* floatunssixf2_i387_with_xmm */
   14326        87212 :     case 266:  /* floatunssidf2_i387_with_xmm */
   14327        87212 :     case 265:  /* floatunssisf2_i387_with_xmm */
   14328        87212 :     case 241:  /* fix_truncsi_i387 */
   14329        87212 :     case 240:  /* fix_trunchi_i387 */
   14330        87212 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14331        87212 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   14332        87212 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
   14333        87212 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
   14334        87212 :       break;
   14335              : 
   14336        96009 :     case 260:  /* floatdixf2_i387_with_xmm */
   14337        96009 :     case 259:  /* floatdidf2_i387_with_xmm */
   14338        96009 :     case 258:  /* floatdisf2_i387_with_xmm */
   14339        96009 :     case 239:  /* fix_truncdi_i387 */
   14340        96009 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14341        96009 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   14342        96009 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
   14343        96009 :       ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0));
   14344        96009 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 3), 0));
   14345        96009 :       break;
   14346              : 
   14347       536847 :     case 2748:  /* *negv2df2 */
   14348       536847 :     case 2747:  /* *absv2df2 */
   14349       536847 :     case 2746:  /* *negv4df2 */
   14350       536847 :     case 2745:  /* *absv4df2 */
   14351       536847 :     case 2744:  /* *negv8df2 */
   14352       536847 :     case 2743:  /* *absv8df2 */
   14353       536847 :     case 2742:  /* *negv4sf2 */
   14354       536847 :     case 2741:  /* *absv4sf2 */
   14355       536847 :     case 2740:  /* *negv8sf2 */
   14356       536847 :     case 2739:  /* *absv8sf2 */
   14357       536847 :     case 2738:  /* *negv16sf2 */
   14358       536847 :     case 2737:  /* *absv16sf2 */
   14359       536847 :     case 2736:  /* *negv8hf2 */
   14360       536847 :     case 2735:  /* *absv8hf2 */
   14361       536847 :     case 2734:  /* *negv16hf2 */
   14362       536847 :     case 2733:  /* *absv16hf2 */
   14363       536847 :     case 2732:  /* *negv32hf2 */
   14364       536847 :     case 2731:  /* *absv32hf2 */
   14365       536847 :     case 2730:  /* *negv8bf2 */
   14366       536847 :     case 2729:  /* *absv8bf2 */
   14367       536847 :     case 2728:  /* *negv16bf2 */
   14368       536847 :     case 2727:  /* *absv16bf2 */
   14369       536847 :     case 2726:  /* *negv32bf2 */
   14370       536847 :     case 2725:  /* *absv32bf2 */
   14371       536847 :     case 2159:  /* *mmx_negv4hf */
   14372       536847 :     case 2158:  /* *mmx_absv4hf */
   14373       536847 :     case 2157:  /* *mmx_negv2hf */
   14374       536847 :     case 2156:  /* *mmx_absv2hf */
   14375       536847 :     case 2155:  /* *mmx_negv4bf */
   14376       536847 :     case 2154:  /* *mmx_absv4bf */
   14377       536847 :     case 2153:  /* *mmx_negv2bf */
   14378       536847 :     case 2152:  /* *mmx_absv2bf */
   14379       536847 :     case 2107:  /* *mmx_negv2sf2 */
   14380       536847 :     case 2106:  /* *mmx_absv2sf2 */
   14381       536847 :     case 1539:  /* ffssi2_no_cmove */
   14382       536847 :     case 1055:  /* *negdf2_1 */
   14383       536847 :     case 1054:  /* *absdf2_1 */
   14384       536847 :     case 1053:  /* *negsf2_1 */
   14385       536847 :     case 1052:  /* *abssf2_1 */
   14386       536847 :     case 1051:  /* *neghf2_1 */
   14387       536847 :     case 1050:  /* *abshf2_1 */
   14388       536847 :     case 1042:  /* *negtf2_1 */
   14389       536847 :     case 1041:  /* *abstf2_1 */
   14390       536847 :     case 235:  /* fix_truncdi_i387_fisttp */
   14391       536847 :     case 234:  /* fix_truncsi_i387_fisttp */
   14392       536847 :     case 233:  /* fix_trunchi_i387_fisttp */
   14393       536847 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14394       536847 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   14395       536847 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
   14396       536847 :       break;
   14397              : 
   14398            0 :     case 228:  /* *fixuns_truncdf_1 */
   14399            0 :     case 227:  /* *fixuns_truncsf_1 */
   14400            0 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14401            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 2), 0));
   14402            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 3), 0));
   14403            0 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   14404            0 :       ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 1), 0));
   14405            0 :       break;
   14406              : 
   14407         6232 :     case 203:  /* *extendqisi_ext_1 */
   14408         6232 :     case 202:  /* *extendqisi_ext_1 */
   14409         6232 :     case 201:  /* *extendqisi_ext_1 */
   14410         6232 :     case 200:  /* *extendqihi_ext_1 */
   14411         6232 :     case 199:  /* *extendqihi_ext_1 */
   14412         6232 :     case 198:  /* *extendqihi_ext_1 */
   14413         6232 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14414         6232 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   14415         6232 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   14416         6232 :       break;
   14417              : 
   14418       267444 :     case 10588:  /* vcvtneobf162ps_v16bf */
   14419       267444 :     case 10587:  /* vcvtneoph2ps_v16hf */
   14420       267444 :     case 10586:  /* vcvtneobf162ps_v8bf */
   14421       267444 :     case 10585:  /* vcvtneoph2ps_v8hf */
   14422       267444 :     case 10584:  /* vcvtneebf162ps_v16bf */
   14423       267444 :     case 10583:  /* vcvtneeph2ps_v16hf */
   14424       267444 :     case 10582:  /* vcvtneebf162ps_v8bf */
   14425       267444 :     case 10581:  /* vcvtneeph2ps_v8hf */
   14426       267444 :     case 10580:  /* vbcstnesh2ps_v4sf */
   14427       267444 :     case 10579:  /* vbcstnesh2ps_v8sf */
   14428       267444 :     case 10578:  /* vbcstnebf162ps_v4sf */
   14429       267444 :     case 10577:  /* vbcstnebf162ps_v8sf */
   14430       267444 :     case 10257:  /* avx512f_pd512_pd */
   14431       267444 :     case 10256:  /* avx512f_ps512_ps */
   14432       267444 :     case 10255:  /* avx512f_si512_si */
   14433       267444 :     case 9480:  /* *avx512dq_broadcastv8sf */
   14434       267444 :     case 9478:  /* *avx512dq_broadcastv16sf */
   14435       267444 :     case 9476:  /* *avx512dq_broadcastv4si */
   14436       267444 :     case 9474:  /* *avx512dq_broadcastv8si */
   14437       267444 :     case 9472:  /* *avx512dq_broadcastv16si */
   14438       267444 :     case 9376:  /* avx512vl_vec_dupv8bf */
   14439       267444 :     case 9374:  /* avx512vl_vec_dupv16bf */
   14440       267444 :     case 9372:  /* avx512bw_vec_dupv32bf */
   14441       267444 :     case 9370:  /* avx512fp16_vec_dupv8hf */
   14442       267444 :     case 9368:  /* avx512vl_vec_dupv16hf */
   14443       267444 :     case 9366:  /* avx512bw_vec_dupv32hf */
   14444       267444 :     case 9364:  /* avx512vl_vec_dupv8hi */
   14445       267444 :     case 9362:  /* avx512vl_vec_dupv16hi */
   14446       267444 :     case 9360:  /* avx512bw_vec_dupv32hi */
   14447       267444 :     case 9358:  /* avx512vl_vec_dupv32qi */
   14448       267444 :     case 9356:  /* avx512vl_vec_dupv16qi */
   14449       267444 :     case 9354:  /* avx512bw_vec_dupv64qi */
   14450       267444 :     case 9352:  /* avx512vl_vec_dupv2df */
   14451       267444 :     case 9350:  /* avx512vl_vec_dupv4df */
   14452       267444 :     case 9348:  /* avx512f_vec_dupv8df */
   14453       267444 :     case 9346:  /* avx512vl_vec_dupv4sf */
   14454       267444 :     case 9344:  /* avx512vl_vec_dupv8sf */
   14455       267444 :     case 9342:  /* avx512f_vec_dupv16sf */
   14456       267444 :     case 9340:  /* avx512vl_vec_dupv2di */
   14457       267444 :     case 9338:  /* avx512vl_vec_dupv4di */
   14458       267444 :     case 9336:  /* avx512f_vec_dupv8di */
   14459       267444 :     case 9334:  /* avx512vl_vec_dupv4si */
   14460       267444 :     case 9332:  /* avx512vl_vec_dupv8si */
   14461       267444 :     case 9330:  /* avx512f_vec_dupv16si */
   14462       267444 :     case 9329:  /* avx512bw_vec_dupv32bf_1 */
   14463       267444 :     case 9328:  /* avx512bw_vec_dupv32hf_1 */
   14464       267444 :     case 9327:  /* avx512bw_vec_dupv64qi_1 */
   14465       267444 :     case 9326:  /* avx512bw_vec_dupv32hi_1 */
   14466       267444 :     case 9325:  /* avx512f_vec_dupv8di_1 */
   14467       267444 :     case 9324:  /* avx512f_vec_dupv16si_1 */
   14468       267444 :     case 9323:  /* avx2_vec_dupv4df */
   14469       267444 :     case 9246:  /* avx2_pbroadcastv16bf_1 */
   14470       267444 :     case 9245:  /* avx2_pbroadcastv16hf_1 */
   14471       267444 :     case 9244:  /* avx2_pbroadcastv4di_1 */
   14472       267444 :     case 9243:  /* avx2_pbroadcastv8si_1 */
   14473       267444 :     case 9242:  /* avx2_pbroadcastv16hi_1 */
   14474       267444 :     case 9241:  /* avx2_pbroadcastv32qi_1 */
   14475       267444 :     case 9240:  /* avx2_pbroadcastv8bf */
   14476       267444 :     case 9239:  /* avx2_pbroadcastv16bf */
   14477       267444 :     case 9238:  /* avx2_pbroadcastv32bf */
   14478       267444 :     case 9237:  /* avx2_pbroadcastv8hf */
   14479       267444 :     case 9236:  /* avx2_pbroadcastv16hf */
   14480       267444 :     case 9235:  /* avx2_pbroadcastv32hf */
   14481       267444 :     case 9234:  /* avx2_pbroadcastv2di */
   14482       267444 :     case 9233:  /* avx2_pbroadcastv4di */
   14483       267444 :     case 9232:  /* avx2_pbroadcastv4si */
   14484       267444 :     case 9231:  /* avx2_pbroadcastv8si */
   14485       267444 :     case 9230:  /* avx2_pbroadcastv8hi */
   14486       267444 :     case 9229:  /* avx2_pbroadcastv16hi */
   14487       267444 :     case 9228:  /* avx2_pbroadcastv32hi */
   14488       267444 :     case 9227:  /* avx2_pbroadcastv16qi */
   14489       267444 :     case 9226:  /* avx2_pbroadcastv32qi */
   14490       267444 :     case 9225:  /* avx2_pbroadcastv64qi */
   14491       267444 :     case 9224:  /* avx2_pbroadcastv8di */
   14492       267444 :     case 9223:  /* avx2_pbroadcastv16si */
   14493       267444 :     case 9047:  /* sse4_1_zero_extendv2siv2di2 */
   14494       267444 :     case 9045:  /* sse4_1_sign_extendv2siv2di2 */
   14495       267444 :     case 9023:  /* sse4_1_zero_extendv2hiv2di2 */
   14496       267444 :     case 9021:  /* sse4_1_sign_extendv2hiv2di2 */
   14497       267444 :     case 9011:  /* avx2_zero_extendv4hiv4di2 */
   14498       267444 :     case 9009:  /* avx2_sign_extendv4hiv4di2 */
   14499       267444 :     case 8996:  /* sse4_1_zero_extendv2qiv2di2 */
   14500       267444 :     case 8994:  /* sse4_1_sign_extendv2qiv2di2 */
   14501       267444 :     case 8984:  /* avx2_zero_extendv4qiv4di2 */
   14502       267444 :     case 8982:  /* avx2_sign_extendv4qiv4di2 */
   14503       267444 :     case 8972:  /* avx512f_zero_extendv8qiv8di2 */
   14504       267444 :     case 8970:  /* avx512f_sign_extendv8qiv8di2 */
   14505       267444 :     case 8956:  /* sse4_1_zero_extendv4hiv4si2 */
   14506       267444 :     case 8954:  /* sse4_1_sign_extendv4hiv4si2 */
   14507       267444 :     case 8926:  /* sse4_1_zero_extendv4qiv4si2 */
   14508       267444 :     case 8924:  /* sse4_1_sign_extendv4qiv4si2 */
   14509       267444 :     case 8914:  /* avx2_zero_extendv8qiv8si2 */
   14510       267444 :     case 8912:  /* avx2_sign_extendv8qiv8si2 */
   14511       267444 :     case 8894:  /* sse4_1_zero_extendv8qiv8hi2 */
   14512       267444 :     case 8892:  /* sse4_1_sign_extendv8qiv8hi2 */
   14513       267444 :     case 8594:  /* *vec_extractv4si_0_zext */
   14514       267444 :     case 8593:  /* *vec_extractv4si_0_zext_sse4 */
   14515       267444 :     case 7542:  /* *avx512f_us_truncatev8div16qi2_store_2 */
   14516       267444 :     case 7541:  /* *avx512f_truncatev8div16qi2_store_2 */
   14517       267444 :     case 7540:  /* *avx512f_ss_truncatev8div16qi2_store_2 */
   14518       267444 :     case 7536:  /* avx512f_us_truncatev8div16qi2 */
   14519       267444 :     case 7535:  /* avx512f_truncatev8div16qi2 */
   14520       267444 :     case 7534:  /* avx512f_ss_truncatev8div16qi2 */
   14521       267444 :     case 7524:  /* *avx512vl_us_truncatev2div2si2_store_2 */
   14522       267444 :     case 7523:  /* *avx512vl_truncatev2div2si2_store_2 */
   14523       267444 :     case 7522:  /* *avx512vl_ss_truncatev2div2si2_store_2 */
   14524       267444 :     case 7505:  /* *avx512vl_us_truncatev2div2hi2_store_2 */
   14525       267444 :     case 7504:  /* *avx512vl_truncatev2div2hi2_store_2 */
   14526       267444 :     case 7503:  /* *avx512vl_ss_truncatev2div2hi2_store_2 */
   14527       267444 :     case 7481:  /* *avx512vl_us_truncatev4div4hi2_store_2 */
   14528       267444 :     case 7480:  /* *avx512vl_truncatev4div4hi2_store_2 */
   14529       267444 :     case 7479:  /* *avx512vl_ss_truncatev4div4hi2_store_2 */
   14530       267444 :     case 7478:  /* *avx512vl_us_truncatev4siv4hi2_store_2 */
   14531       267444 :     case 7477:  /* *avx512vl_truncatev4siv4hi2_store_2 */
   14532       267444 :     case 7476:  /* *avx512vl_ss_truncatev4siv4hi2_store_2 */
   14533       267444 :     case 7441:  /* *avx512vl_us_truncatev8siv8qi2_store_2 */
   14534       267444 :     case 7440:  /* *avx512vl_truncatev8siv8qi2_store_2 */
   14535       267444 :     case 7439:  /* *avx512vl_ss_truncatev8siv8qi2_store_2 */
   14536       267444 :     case 7438:  /* *avx512vl_us_truncatev8hiv8qi2_store_2 */
   14537       267444 :     case 7437:  /* *avx512vl_truncatev8hiv8qi2_store_2 */
   14538       267444 :     case 7436:  /* *avx512vl_ss_truncatev8hiv8qi2_store_2 */
   14539       267444 :     case 7411:  /* *avx512vl_us_truncatev4div4qi2_store_2 */
   14540       267444 :     case 7410:  /* *avx512vl_truncatev4div4qi2_store_2 */
   14541       267444 :     case 7409:  /* *avx512vl_ss_truncatev4div4qi2_store_2 */
   14542       267444 :     case 7408:  /* *avx512vl_us_truncatev4siv4qi2_store_2 */
   14543       267444 :     case 7407:  /* *avx512vl_truncatev4siv4qi2_store_2 */
   14544       267444 :     case 7406:  /* *avx512vl_ss_truncatev4siv4qi2_store_2 */
   14545       267444 :     case 7390:  /* *avx512vl_us_truncatev2div2qi2_store_2 */
   14546       267444 :     case 7389:  /* *avx512vl_truncatev2div2qi2_store_2 */
   14547       267444 :     case 7388:  /* *avx512vl_ss_truncatev2div2qi2_store_2 */
   14548       267444 :     case 5388:  /* *vec_setv2di_0_zero_extendsi_1 */
   14549       267444 :     case 5376:  /* *vec_setv2di_0_zero_extendhi_1 */
   14550       267444 :     case 5344:  /* avx512f_vec_dupv8df_1 */
   14551       267444 :     case 5343:  /* avx512f_vec_dupv16sf_1 */
   14552       267444 :     case 5342:  /* avx2_vec_dupv8sf_1 */
   14553       267444 :     case 5341:  /* avx2_vec_dupv4sf */
   14554       267444 :     case 5340:  /* avx2_vec_dupv8sf */
   14555       267444 :     case 5296:  /* sse2_cvtps2pd */
   14556       267444 :     case 5253:  /* vec_unpacks_lo_v16sf */
   14557       267444 :     case 5252:  /* *avx_cvtps2pd256_2 */
   14558       267444 :     case 5223:  /* sse2_cvttpd2dq */
   14559       267444 :     case 5211:  /* avx512dq_fixuns_truncv2sfv2di2 */
   14560       267444 :     case 5209:  /* avx512dq_fix_truncv2sfv2di2 */
   14561       267444 :     case 5121:  /* *fixuns_truncv2dfv2si2 */
   14562       267444 :     case 5081:  /* sse2_cvtdq2pd */
   14563       267444 :     case 5080:  /* avx_cvtdq2pd256_2 */
   14564       267444 :     case 5079:  /* avx512f_cvtdq2pd512_2 */
   14565       267444 :     case 5077:  /* *floatunsv2siv2df2 */
   14566       267444 :     case 5023:  /* sse2_cvttsd2siq */
   14567       267444 :     case 5021:  /* sse2_cvttsd2si */
   14568       267444 :     case 5002:  /* avx512f_vcvttsd2usiq */
   14569       267444 :     case 5000:  /* avx512f_vcvttsd2usi */
   14570       267444 :     case 4984:  /* avx512f_vcvttss2usiq */
   14571       267444 :     case 4982:  /* avx512f_vcvttss2usi */
   14572       267444 :     case 4869:  /* sse_cvttss2siq */
   14573       267444 :     case 4867:  /* sse_cvttss2si */
   14574       267444 :     case 4847:  /* sse_cvttps2pi */
   14575       267444 :     case 4795:  /* avx512fp16_float_extend_phv2df2 */
   14576       267444 :     case 4789:  /* avx512fp16_float_extend_phv4sf2 */
   14577       267444 :     case 4787:  /* avx512fp16_float_extend_phv4df2 */
   14578       267444 :     case 4769:  /* avx512fp16_fixuns_truncdi2 */
   14579       267444 :     case 4767:  /* avx512fp16_fix_truncdi2 */
   14580       267444 :     case 4765:  /* avx512fp16_fixuns_truncsi2 */
   14581       267444 :     case 4763:  /* avx512fp16_fix_truncsi2 */
   14582       267444 :     case 4745:  /* avx512fp16_fixuns_truncv2di2 */
   14583       267444 :     case 4743:  /* avx512fp16_fix_truncv2di2 */
   14584       267444 :     case 4729:  /* avx512fp16_fixuns_truncv4di2 */
   14585       267444 :     case 4727:  /* avx512fp16_fix_truncv4di2 */
   14586       267444 :     case 4725:  /* avx512fp16_fixuns_truncv4si2 */
   14587       267444 :     case 4723:  /* avx512fp16_fix_truncv4si2 */
   14588       267444 :     case 2431:  /* *vec_dupv2hi */
   14589       267444 :     case 2410:  /* *vec_extractv2si_1_zext */
   14590       267444 :     case 2408:  /* *vec_extractv2si_0_zext */
   14591       267444 :     case 2407:  /* *vec_extractv2si_0_zext_sse4 */
   14592       267444 :     case 2400:  /* *vec_dupv4hi */
   14593       267444 :     case 2368:  /* sse4_1_zero_extendv2qiv2hi2 */
   14594       267444 :     case 2367:  /* sse4_1_sign_extendv2qiv2hi2 */
   14595       267444 :     case 2366:  /* sse4_1_zero_extendv2qiv2si2 */
   14596       267444 :     case 2365:  /* sse4_1_sign_extendv2qiv2si2 */
   14597       267444 :     case 2364:  /* sse4_1_zero_extendv2hiv2si2 */
   14598       267444 :     case 2363:  /* sse4_1_sign_extendv2hiv2si2 */
   14599       267444 :     case 2362:  /* sse4_1_zero_extendv4qiv4hi2 */
   14600       267444 :     case 2361:  /* sse4_1_sign_extendv4qiv4hi2 */
   14601       267444 :     case 1074:  /* *one_cmplsi2_1_zext */
   14602       267444 :     case 1073:  /* *one_cmplhi2_1_zextdi */
   14603       267444 :     case 1072:  /* *one_cmplhi2_1_zextsi */
   14604       267444 :     case 1071:  /* *one_cmplqi2_1_zextdi */
   14605       267444 :     case 1070:  /* *one_cmplqi2_1_zextsi */
   14606       267444 :     case 1069:  /* *one_cmplqi2_1_zexthi */
   14607       267444 :     case 1004:  /* *neghi_1_zextdi_nf */
   14608       267444 :     case 1002:  /* *neghi_1_zextsi_nf */
   14609       267444 :     case 1000:  /* *negqi_1_zextdi_nf */
   14610       267444 :     case 998:  /* *negqi_1_zextsi_nf */
   14611       267444 :     case 996:  /* *negqi_1_zexthi_nf */
   14612       267444 :     case 226:  /* *fixuns_truncdfsi2_avx512f_zext */
   14613       267444 :     case 225:  /* *fixuns_truncsfsi2_avx512f_zext */
   14614       267444 :     case 224:  /* *fixuns_trunchfsi2zext */
   14615       267444 :     case 196:  /* *extendqisi2_zext */
   14616       267444 :     case 194:  /* *extendhisi2_zext */
   14617       267444 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14618       267444 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   14619       267444 :       break;
   14620              : 
   14621       138711 :     case 190:  /* extendditi2 */
   14622       138711 :     case 189:  /* extendsidi2_1 */
   14623       138711 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14624       138711 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   14625       138711 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 2), 0));
   14626       138711 :       break;
   14627              : 
   14628         3186 :     case 2115:  /* mmx_ieee_minv2sf3 */
   14629         3186 :     case 2114:  /* mmx_ieee_maxv2sf3 */
   14630         3186 :     case 1920:  /* probe_stack_range_di */
   14631         3186 :     case 1919:  /* probe_stack_range_si */
   14632         3186 :     case 1705:  /* *tls_dynamic_gnu2_call_64_di */
   14633         3186 :     case 1704:  /* *tls_dynamic_gnu2_call_64_si */
   14634         3186 :     case 1601:  /* bmi_bextr_di */
   14635         3186 :     case 1600:  /* bmi_bextr_si */
   14636         3186 :     case 167:  /* push2p_di */
   14637         3186 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14638         3186 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
   14639         3186 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1));
   14640         3186 :       break;
   14641              : 
   14642         6575 :     case 2621:  /* movdi_to_sse */
   14643         6575 :     case 1924:  /* stack_protect_set_1_di_di */
   14644         6575 :     case 1923:  /* stack_protect_set_1_si_di */
   14645         6575 :     case 1922:  /* stack_protect_set_1_di_si */
   14646         6575 :     case 1921:  /* stack_protect_set_1_si_si */
   14647         6575 :     case 1768:  /* lrintxfdi2 */
   14648         6575 :     case 168:  /* pop2p_di */
   14649         6575 :     case 164:  /* pop2_di */
   14650         6575 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   14651         6575 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0));
   14652         6575 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0));
   14653         6575 :       break;
   14654              : 
   14655       772534 :     case 11299:  /* atomic_storedi_1 */
   14656       772534 :     case 11298:  /* atomic_storesi_1 */
   14657       772534 :     case 11297:  /* atomic_storehi_1 */
   14658       772534 :     case 11296:  /* atomic_storeqi_1 */
   14659       772534 :     case 11268:  /* bsrmovf */
   14660       772534 :     case 11252:  /* vunpackbv32qi */
   14661       772534 :     case 11250:  /* vunpackbv16qi */
   14662       772534 :     case 11248:  /* vunpackbv64qi */
   14663       772534 :     case 11204:  /* vcvtbiasps2hf8sv16sf */
   14664       772534 :     case 11202:  /* vcvtbiasps2hf8v16sf */
   14665       772534 :     case 11200:  /* vcvtbiasps2bf8sv16sf */
   14666       772534 :     case 11198:  /* vcvtbiasps2bf8v16sf */
   14667       772534 :     case 10874:  /* avx10_2_fpclassbf16_v8bf */
   14668       772534 :     case 10872:  /* avx10_2_fpclassbf16_v16bf */
   14669       772534 :     case 10870:  /* avx10_2_fpclassbf16_v32bf */
   14670       772534 :     case 10868:  /* avx10_2_getmantbf16_v8bf */
   14671       772534 :     case 10866:  /* avx10_2_reducebf16_v8bf */
   14672       772534 :     case 10864:  /* avx10_2_rndscalebf16_v8bf */
   14673       772534 :     case 10862:  /* avx10_2_getmantbf16_v16bf */
   14674       772534 :     case 10860:  /* avx10_2_reducebf16_v16bf */
   14675       772534 :     case 10858:  /* avx10_2_rndscalebf16_v16bf */
   14676       772534 :     case 10856:  /* avx10_2_getmantbf16_v32bf */
   14677       772534 :     case 10854:  /* avx10_2_reducebf16_v32bf */
   14678       772534 :     case 10852:  /* avx10_2_rndscalebf16_v32bf */
   14679       772534 :     case 10742:  /* avx10_2_scalefbf16_v8bf */
   14680       772534 :     case 10740:  /* avx10_2_scalefbf16_v16bf */
   14681       772534 :     case 10738:  /* avx10_2_scalefbf16_v32bf */
   14682       772534 :     case 10643:  /* vcvtbiasph2hf8sv16hf */
   14683       772534 :     case 10641:  /* vcvtbiasph2hf8v16hf */
   14684       772534 :     case 10639:  /* vcvtbiasph2bf8sv16hf */
   14685       772534 :     case 10637:  /* vcvtbiasph2bf8v16hf */
   14686       772534 :     case 10635:  /* vcvtbiasph2hf8sv32hf */
   14687       772534 :     case 10633:  /* vcvtbiasph2hf8v32hf */
   14688       772534 :     case 10631:  /* vcvtbiasph2bf8sv32hf */
   14689       772534 :     case 10629:  /* vcvtbiasph2bf8v32hf */
   14690       772534 :     case 10619:  /* vcvt2ph2hf8sv8hf */
   14691       772534 :     case 10617:  /* vcvt2ph2hf8v8hf */
   14692       772534 :     case 10615:  /* vcvt2ph2bf8sv8hf */
   14693       772534 :     case 10613:  /* vcvt2ph2bf8v8hf */
   14694       772534 :     case 10611:  /* vcvt2ph2hf8sv16hf */
   14695       772534 :     case 10609:  /* vcvt2ph2hf8v16hf */
   14696       772534 :     case 10607:  /* vcvt2ph2bf8sv16hf */
   14697       772534 :     case 10605:  /* vcvt2ph2bf8v16hf */
   14698       772534 :     case 10603:  /* vcvt2ph2hf8sv32hf */
   14699       772534 :     case 10601:  /* vcvt2ph2hf8v32hf */
   14700       772534 :     case 10599:  /* vcvt2ph2bf8sv32hf */
   14701       772534 :     case 10597:  /* vcvt2ph2bf8v32hf */
   14702       772534 :     case 10489:  /* avx512vp2intersect_2intersectv16si */
   14703       772534 :     case 10488:  /* avx512vp2intersect_2intersectv4si */
   14704       772534 :     case 10487:  /* avx512vp2intersect_2intersectv8si */
   14705       772534 :     case 10486:  /* avx512vp2intersect_2intersectv2di */
   14706       772534 :     case 10485:  /* avx512vp2intersect_2intersectv4di */
   14707       772534 :     case 10484:  /* avx512vp2intersect_2intersectv8di */
   14708       772534 :     case 10480:  /* avx512vl_vpshufbitqmbv32qi */
   14709       772534 :     case 10478:  /* avx512vl_vpshufbitqmbv16qi */
   14710       772534 :     case 10476:  /* avx512vl_vpshufbitqmbv64qi */
   14711       772534 :     case 10472:  /* vaesenclast_v64qi */
   14712       772534 :     case 10471:  /* vaesenclast_v16qi */
   14713       772534 :     case 10470:  /* vaesenclast_v32qi */
   14714       772534 :     case 10469:  /* vaesenc_v64qi */
   14715       772534 :     case 10468:  /* vaesenc_v16qi */
   14716       772534 :     case 10467:  /* vaesenc_v32qi */
   14717       772534 :     case 10466:  /* vaesdeclast_v64qi */
   14718       772534 :     case 10465:  /* vaesdeclast_v16qi */
   14719       772534 :     case 10464:  /* vaesdeclast_v32qi */
   14720       772534 :     case 10463:  /* vaesdec_v64qi */
   14721       772534 :     case 10462:  /* vaesdec_v16qi */
   14722       772534 :     case 10461:  /* vaesdec_v32qi */
   14723       772534 :     case 10333:  /* vgf2p8mulb_v16qi */
   14724       772534 :     case 10331:  /* vgf2p8mulb_v32qi */
   14725       772534 :     case 10329:  /* vgf2p8mulb_v64qi */
   14726       772534 :     case 10283:  /* vpmultishiftqbv32qi */
   14727       772534 :     case 10281:  /* vpmultishiftqbv16qi */
   14728       772534 :     case 10279:  /* vpmultishiftqbv64qi */
   14729       772534 :     case 10254:  /* vsm4rnds4_v4si */
   14730       772534 :     case 10253:  /* vsm4rnds4_v8si */
   14731       772534 :     case 10252:  /* vsm4rnds4_v16si */
   14732       772534 :     case 10251:  /* vsm4key4_v4si */
   14733       772534 :     case 10250:  /* vsm4key4_v8si */
   14734       772534 :     case 10249:  /* vsm4key4_v16si */
   14735       772534 :     case 10247:  /* vsha512msg2 */
   14736       772534 :     case 10246:  /* vsha512msg1 */
   14737       772534 :     case 10241:  /* sha256msg2 */
   14738       772534 :     case 10240:  /* sha256msg1 */
   14739       772534 :     case 10238:  /* sha1nexte */
   14740       772534 :     case 10237:  /* sha1msg2 */
   14741       772534 :     case 10236:  /* sha1msg1 */
   14742       772534 :     case 10190:  /* avx512vl_getmantv2df */
   14743       772534 :     case 10186:  /* avx512vl_getmantv4df */
   14744       772534 :     case 10182:  /* avx512f_getmantv8df */
   14745       772534 :     case 10178:  /* avx512vl_getmantv4sf */
   14746       772534 :     case 10174:  /* avx512vl_getmantv8sf */
   14747       772534 :     case 10170:  /* avx512f_getmantv16sf */
   14748       772534 :     case 10166:  /* avx512fp16_getmantv8hf */
   14749       772534 :     case 10162:  /* avx512vl_getmantv16hf */
   14750       772534 :     case 10158:  /* avx512bw_getmantv32hf */
   14751       772534 :     case 10150:  /* avx512dq_fpclassv2df */
   14752       772534 :     case 10148:  /* avx512dq_fpclassv4df */
   14753       772534 :     case 10146:  /* avx512dq_fpclassv8df */
   14754       772534 :     case 10144:  /* avx512dq_fpclassv4sf */
   14755       772534 :     case 10142:  /* avx512dq_fpclassv8sf */
   14756       772534 :     case 10140:  /* avx512dq_fpclassv16sf */
   14757       772534 :     case 10138:  /* avx512dq_fpclassv8hf */
   14758       772534 :     case 10136:  /* avx512dq_fpclassv16hf */
   14759       772534 :     case 10134:  /* avx512dq_fpclassv32hf */
   14760       772534 :     case 9820:  /* *avx512f_vcvtps2ph512 */
   14761       772534 :     case 9816:  /* *avx512f_vcvtps2ph512 */
   14762       772534 :     case 9814:  /* *vcvtps2ph256 */
   14763       772534 :     case 9812:  /* vcvtps2ph256 */
   14764       772534 :     case 9811:  /* *vcvtps2ph_store */
   14765       772534 :     case 9514:  /* avx_vpermilvarv2df3 */
   14766       772534 :     case 9512:  /* avx_vpermilvarv4df3 */
   14767       772534 :     case 9510:  /* avx512f_vpermilvarv8df3 */
   14768       772534 :     case 9508:  /* avx_vpermilvarv4sf3 */
   14769       772534 :     case 9506:  /* avx_vpermilvarv8sf3 */
   14770       772534 :     case 9504:  /* avx512f_vpermilvarv16sf3 */
   14771       772534 :     case 9285:  /* avx512bw_permvarv32bf */
   14772       772534 :     case 9283:  /* avx512vl_permvarv16bf */
   14773       772534 :     case 9281:  /* avx512vl_permvarv8bf */
   14774       772534 :     case 9279:  /* avx512bw_permvarv32hf */
   14775       772534 :     case 9277:  /* avx512vl_permvarv16hf */
   14776       772534 :     case 9275:  /* avx512fp16_permvarv8hf */
   14777       772534 :     case 9273:  /* avx512bw_permvarv32hi */
   14778       772534 :     case 9271:  /* avx512vl_permvarv16hi */
   14779       772534 :     case 9269:  /* avx512vl_permvarv8hi */
   14780       772534 :     case 9267:  /* avx512vl_permvarv32qi */
   14781       772534 :     case 9265:  /* avx512vl_permvarv16qi */
   14782       772534 :     case 9263:  /* avx512bw_permvarv64qi */
   14783       772534 :     case 9261:  /* avx2_permvarv4df */
   14784       772534 :     case 9259:  /* avx2_permvarv4di */
   14785       772534 :     case 9257:  /* avx512f_permvarv8df */
   14786       772534 :     case 9255:  /* avx512f_permvarv8di */
   14787       772534 :     case 9253:  /* avx512f_permvarv16sf */
   14788       772534 :     case 9251:  /* avx512f_permvarv16si */
   14789       772534 :     case 9249:  /* avx2_permvarv8sf */
   14790       772534 :     case 9247:  /* avx2_permvarv8si */
   14791       772534 :     case 9219:  /* aeskeygenassist */
   14792       772534 :     case 9217:  /* aesdeclast */
   14793       772534 :     case 9216:  /* aesdec */
   14794       772534 :     case 9215:  /* aesenclast */
   14795       772534 :     case 9214:  /* aesenc */
   14796       772534 :     case 9103:  /* sse4_1_roundpd */
   14797       772534 :     case 9102:  /* avx_roundpd256 */
   14798       772534 :     case 9101:  /* sse4_1_roundps */
   14799       772534 :     case 9100:  /* avx_roundps256 */
   14800       772534 :     case 8855:  /* sse4_1_packusdw */
   14801       772534 :     case 8853:  /* avx2_packusdw */
   14802       772534 :     case 8851:  /* avx512bw_packusdw */
   14803       772534 :     case 8801:  /* sse4a_insertq */
   14804       772534 :     case 8799:  /* sse4a_extrq */
   14805       772534 :     case 8762:  /* ssse3_psignv2si3 */
   14806       772534 :     case 8761:  /* ssse3_psignv4hi3 */
   14807       772534 :     case 8760:  /* ssse3_psignv8qi3 */
   14808       772534 :     case 8759:  /* ssse3_psignv4si3 */
   14809       772534 :     case 8758:  /* avx2_psignv8si3 */
   14810       772534 :     case 8757:  /* ssse3_psignv8hi3 */
   14811       772534 :     case 8756:  /* avx2_psignv16hi3 */
   14812       772534 :     case 8755:  /* ssse3_psignv16qi3 */
   14813       772534 :     case 8754:  /* avx2_psignv32qi3 */
   14814       772534 :     case 8751:  /* ssse3_pshufbv16qi3 */
   14815       772534 :     case 8749:  /* avx2_pshufbv32qi3 */
   14816       772534 :     case 8747:  /* avx512bw_pshufbv64qi3 */
   14817       772534 :     case 8733:  /* avx512bw_pmaddubsw512v32hi */
   14818       772534 :     case 8731:  /* avx512bw_pmaddubsw512v16hi */
   14819       772534 :     case 8729:  /* avx512bw_pmaddubsw512v8hi */
   14820       772534 :     case 8630:  /* *sse2_psadbw */
   14821       772534 :     case 8629:  /* *avx2_psadbw */
   14822       772534 :     case 8628:  /* *avx512f_psadbw */
   14823       772534 :     case 8572:  /* *avx512bw_pshufhwv32hi */
   14824       772534 :     case 8566:  /* *avx512bw_pshuflwv32hi */
   14825       772534 :     case 8439:  /* sse2_packuswb */
   14826       772534 :     case 8437:  /* avx2_packuswb */
   14827       772534 :     case 8435:  /* avx512bw_packuswb */
   14828       772534 :     case 8277:  /* avx512vl_testnmv2di3 */
   14829       772534 :     case 8275:  /* avx512vl_testnmv4di3 */
   14830       772534 :     case 8273:  /* avx512f_testnmv8di3 */
   14831       772534 :     case 8271:  /* avx512vl_testnmv4si3 */
   14832       772534 :     case 8269:  /* avx512vl_testnmv8si3 */
   14833       772534 :     case 8267:  /* avx512f_testnmv16si3 */
   14834       772534 :     case 8265:  /* avx512vl_testnmv8hi3 */
   14835       772534 :     case 8263:  /* avx512vl_testnmv16hi3 */
   14836       772534 :     case 8261:  /* avx512bw_testnmv32hi3 */
   14837       772534 :     case 8259:  /* avx512vl_testnmv16qi3 */
   14838       772534 :     case 8257:  /* avx512vl_testnmv32qi3 */
   14839       772534 :     case 8255:  /* avx512bw_testnmv64qi3 */
   14840       772534 :     case 8253:  /* avx512vl_testmv2di3 */
   14841       772534 :     case 8251:  /* avx512vl_testmv4di3 */
   14842       772534 :     case 8249:  /* avx512f_testmv8di3 */
   14843       772534 :     case 8247:  /* avx512vl_testmv4si3 */
   14844       772534 :     case 8245:  /* avx512vl_testmv8si3 */
   14845       772534 :     case 8243:  /* avx512f_testmv16si3 */
   14846       772534 :     case 8241:  /* avx512vl_testmv8hi3 */
   14847       772534 :     case 8239:  /* avx512vl_testmv16hi3 */
   14848       772534 :     case 8237:  /* avx512bw_testmv32hi3 */
   14849       772534 :     case 8235:  /* avx512vl_testmv16qi3 */
   14850       772534 :     case 8233:  /* avx512vl_testmv32qi3 */
   14851       772534 :     case 8231:  /* avx512bw_testmv64qi3 */
   14852       772534 :     case 7706:  /* avx512bw_pmaddwd512v8hi */
   14853       772534 :     case 7704:  /* avx512bw_pmaddwd512v16hi */
   14854       772534 :     case 7702:  /* avx512bw_pmaddwd512v32hi */
   14855       772534 :     case 7257:  /* avx512vl_rndscalev2df */
   14856       772534 :     case 7253:  /* avx512vl_rndscalev4df */
   14857       772534 :     case 7249:  /* avx512f_rndscalev8df */
   14858       772534 :     case 7245:  /* avx512vl_rndscalev4sf */
   14859       772534 :     case 7241:  /* avx512vl_rndscalev8sf */
   14860       772534 :     case 7237:  /* avx512f_rndscalev16sf */
   14861       772534 :     case 7233:  /* avx512fp16_rndscalev8hf */
   14862       772534 :     case 7229:  /* avx512vl_rndscalev16hf */
   14863       772534 :     case 7225:  /* avx512bw_rndscalev32hf */
   14864       772534 :     case 5527:  /* avx512vl_scalefv2df */
   14865       772534 :     case 5523:  /* avx512vl_scalefv4df */
   14866       772534 :     case 5519:  /* avx512f_scalefv8df */
   14867       772534 :     case 5515:  /* avx512vl_scalefv4sf */
   14868       772534 :     case 5511:  /* avx512vl_scalefv8sf */
   14869       772534 :     case 5507:  /* avx512f_scalefv16sf */
   14870       772534 :     case 5503:  /* avx512fp16_scalefv8hf */
   14871       772534 :     case 5499:  /* avx512vl_scalefv16hf */
   14872       772534 :     case 5495:  /* avx512bw_scalefv32hf */
   14873       772534 :     case 4433:  /* avx512fp16_fcmulc_v8hf */
   14874       772534 :     case 4431:  /* avx512fp16_fmulc_v8hf */
   14875       772534 :     case 4429:  /* avx512vl_fcmulc_v16hf */
   14876       772534 :     case 4427:  /* avx512vl_fmulc_v16hf */
   14877       772534 :     case 4423:  /* avx512bw_fcmulc_v32hf */
   14878       772534 :     case 4419:  /* avx512bw_fmulc_v32hf */
   14879       772534 :     case 3657:  /* *avx512vl_eqv2di3_1 */
   14880       772534 :     case 3655:  /* *avx512vl_eqv2di3_1 */
   14881       772534 :     case 3653:  /* *avx512vl_eqv4di3_1 */
   14882       772534 :     case 3651:  /* *avx512vl_eqv4di3_1 */
   14883       772534 :     case 3649:  /* *avx512f_eqv8di3_1 */
   14884       772534 :     case 3647:  /* *avx512f_eqv8di3_1 */
   14885       772534 :     case 3645:  /* *avx512vl_eqv4si3_1 */
   14886       772534 :     case 3643:  /* *avx512vl_eqv4si3_1 */
   14887       772534 :     case 3641:  /* *avx512vl_eqv8si3_1 */
   14888       772534 :     case 3639:  /* *avx512vl_eqv8si3_1 */
   14889       772534 :     case 3637:  /* *avx512f_eqv16si3_1 */
   14890       772534 :     case 3635:  /* *avx512f_eqv16si3_1 */
   14891       772534 :     case 3597:  /* *avx512vl_eqv8hi3_1 */
   14892       772534 :     case 3595:  /* *avx512vl_eqv8hi3_1 */
   14893       772534 :     case 3593:  /* *avx512vl_eqv16hi3_1 */
   14894       772534 :     case 3591:  /* *avx512vl_eqv16hi3_1 */
   14895       772534 :     case 3589:  /* *avx512bw_eqv32hi3_1 */
   14896       772534 :     case 3587:  /* *avx512bw_eqv32hi3_1 */
   14897       772534 :     case 3585:  /* *avx512vl_eqv32qi3_1 */
   14898       772534 :     case 3583:  /* *avx512vl_eqv32qi3_1 */
   14899       772534 :     case 3581:  /* *avx512vl_eqv16qi3_1 */
   14900       772534 :     case 3579:  /* *avx512vl_eqv16qi3_1 */
   14901       772534 :     case 3577:  /* *avx512bw_eqv64qi3_1 */
   14902       772534 :     case 3575:  /* *avx512bw_eqv64qi3_1 */
   14903       772534 :     case 3271:  /* *reducepv2df */
   14904       772534 :     case 3267:  /* *reducepv4df */
   14905       772534 :     case 3263:  /* *reducepv8df */
   14906       772534 :     case 3259:  /* *reducepv4sf */
   14907       772534 :     case 3255:  /* *reducepv8sf */
   14908       772534 :     case 3251:  /* *reducepv16sf */
   14909       772534 :     case 3247:  /* *reducepv8hf */
   14910       772534 :     case 3243:  /* *reducepv16hf */
   14911       772534 :     case 3239:  /* *reducepv32hf */
   14912       772534 :     case 3169:  /* ieee_minv2df3 */
   14913       772534 :     case 3167:  /* ieee_maxv2df3 */
   14914       772534 :     case 3165:  /* ieee_minv4df3 */
   14915       772534 :     case 3163:  /* ieee_maxv4df3 */
   14916       772534 :     case 3159:  /* ieee_minv8df3 */
   14917       772534 :     case 3155:  /* ieee_maxv8df3 */
   14918       772534 :     case 3153:  /* ieee_minv4sf3 */
   14919       772534 :     case 3151:  /* ieee_maxv4sf3 */
   14920       772534 :     case 3149:  /* ieee_minv8sf3 */
   14921       772534 :     case 3147:  /* ieee_maxv8sf3 */
   14922       772534 :     case 3143:  /* ieee_minv16sf3 */
   14923       772534 :     case 3139:  /* ieee_maxv16sf3 */
   14924       772534 :     case 3137:  /* ieee_minv8hf3 */
   14925       772534 :     case 3135:  /* ieee_maxv8hf3 */
   14926       772534 :     case 3133:  /* ieee_minv16hf3 */
   14927       772534 :     case 3131:  /* ieee_maxv16hf3 */
   14928       772534 :     case 3127:  /* ieee_minv32hf3 */
   14929       772534 :     case 3123:  /* ieee_maxv32hf3 */
   14930       772534 :     case 2440:  /* *mmx_psadbw */
   14931       772534 :     case 2388:  /* mmx_pshufbv4qi3 */
   14932       772534 :     case 2387:  /* mmx_pshufbv8qi3 */
   14933       772534 :     case 2352:  /* mmx_packusdw */
   14934       772534 :     case 2350:  /* mmx_packuswb */
   14935       772534 :     case 2120:  /* mmx_rsqit1v2sf3 */
   14936       772534 :     case 2118:  /* mmx_rcpit2v2sf3 */
   14937       772534 :     case 2117:  /* mmx_rcpit1v2sf3 */
   14938       772534 :     case 1970:  /* xsaves64 */
   14939       772534 :     case 1969:  /* xsavec64 */
   14940       772534 :     case 1968:  /* xsaveopt64 */
   14941       772534 :     case 1967:  /* xsave64 */
   14942       772534 :     case 1966:  /* xsaves_rex64 */
   14943       772534 :     case 1965:  /* xsavec_rex64 */
   14944       772534 :     case 1964:  /* xsaveopt_rex64 */
   14945       772534 :     case 1963:  /* xsave_rex64 */
   14946       772534 :     case 1947:  /* sse4_2_crc32si */
   14947       772534 :     case 1946:  /* sse4_2_crc32hi */
   14948       772534 :     case 1945:  /* sse4_2_crc32qi */
   14949       772534 :     case 1861:  /* *ieee_smindf3 */
   14950       772534 :     case 1860:  /* *ieee_smaxdf3 */
   14951       772534 :     case 1859:  /* *ieee_sminsf3 */
   14952       772534 :     case 1858:  /* *ieee_smaxsf3 */
   14953       772534 :     case 1857:  /* *ieee_sminhf3 */
   14954       772534 :     case 1856:  /* *ieee_smaxhf3 */
   14955       772534 :     case 1766:  /* sse4_1_rounddf2 */
   14956       772534 :     case 1765:  /* sse4_1_roundsf2 */
   14957       772534 :     case 1764:  /* sse4_1_roundhf2 */
   14958       772534 :     case 1763:  /* avx512f_scalefdf2 */
   14959       772534 :     case 1762:  /* avx512f_scalefsf2 */
   14960       772534 :     case 1637:  /* bmi2_pext_di3 */
   14961       772534 :     case 1636:  /* bmi2_pext_si3 */
   14962       772534 :     case 1635:  /* bmi2_pdep_di3 */
   14963       772534 :     case 1634:  /* bmi2_pdep_si3 */
   14964       772534 :     case 1486:  /* *setcc_si_slp */
   14965       772534 :     case 163:  /* push2_di */
   14966       772534 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14967       772534 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
   14968       772534 :       ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (pat, 1), 0, 1));
   14969       772534 :       break;
   14970              : 
   14971       394497 :     case 155:  /* *insvdi_lowpart_1 */
   14972       394497 :     case 154:  /* *insvdi_lowpart_1 */
   14973       394497 :     case 153:  /* *insvdi_lowpart_1 */
   14974       394497 :     case 152:  /* *insvti_lowpart_1 */
   14975       394497 :     case 151:  /* *insvti_lowpart_1 */
   14976       394497 :     case 150:  /* *insvti_lowpart_1 */
   14977       394497 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14978       394497 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   14979       394497 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   14980       394497 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   14981       394497 :       break;
   14982              : 
   14983      1276605 :     case 149:  /* *insvti_highpart_1 */
   14984      1276605 :     case 148:  /* *insvti_highpart_1 */
   14985      1276605 :     case 147:  /* *insvti_highpart_1 */
   14986      1276605 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   14987      1276605 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   14988      1276605 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
   14989      1276605 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   14990      1276605 :       break;
   14991              : 
   14992          451 :     case 140:  /* *insvqi_2 */
   14993          451 :     case 139:  /* *insvqi_2 */
   14994          451 :     case 138:  /* *insvqi_2 */
   14995          451 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0));
   14996          451 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
   14997          451 :       ro[2] = *(ro_loc[2] = &XEXP (pat, 1));
   14998          451 :       break;
   14999              : 
   15000         5523 :     case 1077:  /* *one_cmplhi_1_slp */
   15001         5523 :     case 1076:  /* *one_cmplqi_1_slp */
   15002         5523 :     case 146:  /* *insvqi_3 */
   15003         5523 :     case 145:  /* *insvqi_3 */
   15004         5523 :     case 144:  /* *insvqi_3 */
   15005         5523 :     case 143:  /* *insvqi_3 */
   15006         5523 :     case 142:  /* *insvqi_3 */
   15007         5523 :     case 141:  /* *insvqi_3 */
   15008         5523 :     case 137:  /* *insvqi_1 */
   15009         5523 :     case 136:  /* *insvqi_1 */
   15010         5523 :     case 135:  /* *insvqi_1 */
   15011         5523 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0));
   15012         5523 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
   15013         5523 :       break;
   15014              : 
   15015        35258 :     case 131:  /* *extzvqi */
   15016        35258 :     case 130:  /* *extzvqi */
   15017        35258 :     case 129:  /* *extzvqi */
   15018        35258 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   15019        35258 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   15020        35258 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
   15021        35258 :       break;
   15022              : 
   15023      1572067 :     case 2667:  /* knotdi */
   15024      1572067 :     case 2666:  /* knotsi */
   15025      1572067 :     case 2665:  /* knothi */
   15026      1572067 :     case 2664:  /* knotqi */
   15027      1572067 :     case 2180:  /* negv2qi2 */
   15028      1572067 :     case 2138:  /* mmx_floatv2siv2sf2 */
   15029      1572067 :     case 2137:  /* mmx_fix_truncv2sfv2si2 */
   15030      1572067 :     case 1837:  /* *x86_movdicc_0_m1_neg */
   15031      1572067 :     case 1836:  /* *x86_movsicc_0_m1_neg */
   15032      1572067 :     case 1835:  /* *x86_movhicc_0_m1_neg */
   15033      1572067 :     case 1834:  /* *x86_movqicc_0_m1_neg */
   15034      1572067 :     case 1833:  /* *x86_movdicc_0_m1_se */
   15035      1572067 :     case 1832:  /* *x86_movsicc_0_m1_se */
   15036      1572067 :     case 1831:  /* *x86_movdicc_0_m1 */
   15037      1572067 :     case 1830:  /* *x86_movsicc_0_m1 */
   15038      1572067 :     case 1680:  /* *bswaphi2 */
   15039      1572067 :     case 1679:  /* *bswaphi2_movbe */
   15040      1572067 :     case 1673:  /* popcounthi2 */
   15041      1572067 :     case 1661:  /* popcountdi2 */
   15042      1572067 :     case 1660:  /* popcountsi2 */
   15043      1572067 :     case 1569:  /* clzdi2_lzcnt */
   15044      1572067 :     case 1568:  /* clzsi2_lzcnt */
   15045      1572067 :     case 1547:  /* ctzdi2 */
   15046      1572067 :     case 1546:  /* ctzsi2 */
   15047      1572067 :     case 1049:  /* *negxf2_i387_1 */
   15048      1572067 :     case 1048:  /* *absxf2_i387_1 */
   15049      1572067 :     case 1047:  /* *negdf2_i387_1 */
   15050      1572067 :     case 1046:  /* *absdf2_i387_1 */
   15051      1572067 :     case 1045:  /* *negsf2_i387_1 */
   15052      1572067 :     case 1044:  /* *abssf2_i387_1 */
   15053      1572067 :     case 1036:  /* *absdi2_1 */
   15054      1572067 :     case 1035:  /* *abssi2_1 */
   15055      1572067 :     case 1034:  /* *abshi2_1 */
   15056      1572067 :     case 1033:  /* *absqi2_1 */
   15057      1572067 :     case 1030:  /* *absti2_doubleword */
   15058      1572067 :     case 1029:  /* *absdi2_doubleword */
   15059      1572067 :     case 995:  /* *negdi_1 */
   15060      1572067 :     case 993:  /* *negsi_1 */
   15061      1572067 :     case 991:  /* *neghi_1 */
   15062      1572067 :     case 989:  /* *negqi_1 */
   15063      1572067 :     case 987:  /* *negti2_doubleword */
   15064      1572067 :     case 986:  /* *negdi2_doubleword */
   15065      1572067 :     case 238:  /* *fix_truncdi_i387_1 */
   15066      1572067 :     case 237:  /* *fix_truncsi_i387_1 */
   15067      1572067 :     case 236:  /* *fix_trunchi_i387_1 */
   15068      1572067 :     case 186:  /* zero_extendqihi2_and */
   15069      1572067 :     case 183:  /* zero_extendhisi2_and */
   15070      1572067 :     case 182:  /* zero_extendqisi2_and */
   15071      1572067 :     case 125:  /* *extvdi_1_0 */
   15072      1572067 :     case 124:  /* *extvsi_1_0 */
   15073      1572067 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   15074      1572067 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0));
   15075      1572067 :       break;
   15076              : 
   15077          247 :     case 1085:  /* *one_cmplqi_extdi_1 */
   15078          247 :     case 1084:  /* *one_cmplqi_extsi_1 */
   15079          247 :     case 1083:  /* *one_cmplqi_exthi_1 */
   15080          247 :     case 121:  /* *movstrictqi_extdi_1 */
   15081          247 :     case 120:  /* *movstrictqi_extsi_1 */
   15082          247 :     case 119:  /* *movstrictqi_exthi_1 */
   15083          247 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0));
   15084          247 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   15085          247 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 0));
   15086          247 :       break;
   15087              : 
   15088        15613 :     case 1503:  /* *sibcall_memory */
   15089        15613 :     case 1502:  /* *sibcall_memory */
   15090        15613 :     case 118:  /* *movstricthi_xor */
   15091        15613 :     case 117:  /* *movstrictqi_xor */
   15092        15613 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0));
   15093        15613 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1));
   15094        15613 :       break;
   15095              : 
   15096       118090 :     case 177:  /* *swapxf */
   15097       118090 :     case 114:  /* *swaphi */
   15098       118090 :     case 113:  /* *swapqi */
   15099       118090 :     case 112:  /* swapdi */
   15100       118090 :     case 111:  /* swapsi */
   15101       118090 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   15102       118090 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1));
   15103       118090 :       recog_data.dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0);
   15104       118090 :       recog_data.dup_num[0] = 1;
   15105       118090 :       recog_data.dup_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 1);
   15106       118090 :       recog_data.dup_num[1] = 0;
   15107       118090 :       break;
   15108              : 
   15109     35774185 :     case 10838:  /* avx10_2_sqrtbf16_v8bf */
   15110     35774185 :     case 10836:  /* avx10_2_sqrtbf16_v16bf */
   15111     35774185 :     case 10834:  /* avx10_2_sqrtbf16_v32bf */
   15112     35774185 :     case 10501:  /* avx512f_cvtneps2bf16_v8sf */
   15113     35774185 :     case 10499:  /* avx512f_cvtneps2bf16_v16sf */
   15114     35774185 :     case 10498:  /* vcvtneps2bf16_v8sf */
   15115     35774185 :     case 10315:  /* vpopcountv8hi */
   15116     35774185 :     case 10313:  /* vpopcountv16hi */
   15117     35774185 :     case 10311:  /* vpopcountv32hi */
   15118     35774185 :     case 10309:  /* vpopcountv32qi */
   15119     35774185 :     case 10307:  /* vpopcountv16qi */
   15120     35774185 :     case 10305:  /* vpopcountv64qi */
   15121     35774185 :     case 10295:  /* vpopcountv2di */
   15122     35774185 :     case 10293:  /* vpopcountv4di */
   15123     35774185 :     case 10291:  /* vpopcountv8di */
   15124     35774185 :     case 10289:  /* vpopcountv4si */
   15125     35774185 :     case 10287:  /* vpopcountv8si */
   15126     35774185 :     case 10285:  /* vpopcountv16si */
   15127     35774185 :     case 10260:  /* avx512f_pd512_256pd */
   15128     35774185 :     case 10259:  /* avx512f_ps512_256ps */
   15129     35774185 :     case 10258:  /* avx512f_si512_256si */
   15130     35774185 :     case 10222:  /* clzv2di2 */
   15131     35774185 :     case 10220:  /* clzv4di2 */
   15132     35774185 :     case 10218:  /* clzv8di2 */
   15133     35774185 :     case 10216:  /* clzv4si2 */
   15134     35774185 :     case 10214:  /* clzv8si2 */
   15135     35774185 :     case 10212:  /* clzv16si2 */
   15136     35774185 :     case 9704:  /* avx_pd256_pd */
   15137     35774185 :     case 9703:  /* avx_ps256_ps */
   15138     35774185 :     case 9702:  /* avx_si256_si */
   15139     35774185 :     case 9496:  /* *avx512dq_broadcastv4df_1 */
   15140     35774185 :     case 9494:  /* *avx512dq_broadcastv4di_1 */
   15141     35774185 :     case 9492:  /* *avx512dq_broadcastv8df_1 */
   15142     35774185 :     case 9490:  /* *avx512dq_broadcastv8di_1 */
   15143     35774185 :     case 9488:  /* *avx512dq_broadcastv16si_1 */
   15144     35774185 :     case 9486:  /* *avx512dq_broadcastv16sf_1 */
   15145     35774185 :     case 9484:  /* *avx512vl_broadcastv8sf_1 */
   15146     35774185 :     case 9482:  /* *avx512vl_broadcastv8si_1 */
   15147     35774185 :     case 9455:  /* vec_dupv4df */
   15148     35774185 :     case 9454:  /* vec_dupv4di */
   15149     35774185 :     case 9453:  /* vec_dupv8sf */
   15150     35774185 :     case 9452:  /* vec_dupv8si */
   15151     35774185 :     case 9451:  /* *vec_dupv8bf */
   15152     35774185 :     case 9450:  /* *vec_dupv16bf */
   15153     35774185 :     case 9449:  /* *vec_dupv8hf */
   15154     35774185 :     case 9448:  /* *vec_dupv16hf */
   15155     35774185 :     case 9447:  /* *vec_dupv4si */
   15156     35774185 :     case 9446:  /* *vec_dupv8si */
   15157     35774185 :     case 9445:  /* *vec_dupv8hi */
   15158     35774185 :     case 9444:  /* *vec_dupv16hi */
   15159     35774185 :     case 9443:  /* *vec_dupv16qi */
   15160     35774185 :     case 9442:  /* *vec_dupv32qi */
   15161     35774185 :     case 9436:  /* *vec_dupv2di */
   15162     35774185 :     case 9435:  /* *vec_dupv4si */
   15163     35774185 :     case 9434:  /* vec_dupv4sf */
   15164     35774185 :     case 9432:  /* *avx512vl_vec_dup_gprv2df */
   15165     35774185 :     case 9430:  /* *avx512vl_vec_dup_gprv4df */
   15166     35774185 :     case 9428:  /* *avx512f_vec_dup_gprv8df */
   15167     35774185 :     case 9426:  /* *avx512vl_vec_dup_gprv4sf */
   15168     35774185 :     case 9424:  /* *avx512vl_vec_dup_gprv8sf */
   15169     35774185 :     case 9422:  /* *avx512f_vec_dup_gprv16sf */
   15170     35774185 :     case 9420:  /* *avx512vl_vec_dup_gprv2di */
   15171     35774185 :     case 9418:  /* *avx512vl_vec_dup_gprv4di */
   15172     35774185 :     case 9416:  /* *avx512f_vec_dup_gprv8di */
   15173     35774185 :     case 9414:  /* *avx512vl_vec_dup_gprv4si */
   15174     35774185 :     case 9412:  /* *avx512vl_vec_dup_gprv8si */
   15175     35774185 :     case 9410:  /* *avx512f_vec_dup_gprv16si */
   15176     35774185 :     case 9408:  /* *avx512vl_vec_dup_gprv8bf */
   15177     35774185 :     case 9406:  /* *avx512vl_vec_dup_gprv16bf */
   15178     35774185 :     case 9404:  /* *avx512bw_vec_dup_gprv32bf */
   15179     35774185 :     case 9402:  /* *avx512fp16_vec_dup_gprv8hf */
   15180     35774185 :     case 9400:  /* *avx512vl_vec_dup_gprv16hf */
   15181     35774185 :     case 9398:  /* *avx512bw_vec_dup_gprv32hf */
   15182     35774185 :     case 9396:  /* *avx512vl_vec_dup_gprv8hi */
   15183     35774185 :     case 9394:  /* *avx512vl_vec_dup_gprv16hi */
   15184     35774185 :     case 9392:  /* *avx512bw_vec_dup_gprv32hi */
   15185     35774185 :     case 9390:  /* *avx512vl_vec_dup_gprv32qi */
   15186     35774185 :     case 9388:  /* *avx512vl_vec_dup_gprv16qi */
   15187     35774185 :     case 9386:  /* *avx512bw_vec_dup_gprv64qi */
   15188     35774185 :     case 9384:  /* *avx512f_broadcastv8di */
   15189     35774185 :     case 9382:  /* *avx512f_broadcastv8df */
   15190     35774185 :     case 9380:  /* *avx512f_broadcastv16si */
   15191     35774185 :     case 9378:  /* *avx512f_broadcastv16sf */
   15192     35774185 :     case 9051:  /* *sse4_1_zero_extendv2siv2di2_1 */
   15193     35774185 :     case 9049:  /* *sse4_1_sign_extendv2siv2di2_1 */
   15194     35774185 :     case 9041:  /* avx2_zero_extendv4siv4di2 */
   15195     35774185 :     case 9039:  /* avx2_sign_extendv4siv4di2 */
   15196     35774185 :     case 9035:  /* avx512f_zero_extendv8siv8di2 */
   15197     35774185 :     case 9033:  /* avx512f_sign_extendv8siv8di2 */
   15198     35774185 :     case 9027:  /* *sse4_1_zero_extendv2hiv2di2_1 */
   15199     35774185 :     case 9025:  /* *sse4_1_sign_extendv2hiv2di2_1 */
   15200     35774185 :     case 9015:  /* *avx2_zero_extendv4hiv4di2_1 */
   15201     35774185 :     case 9013:  /* *avx2_sign_extendv4hiv4di2_1 */
   15202     35774185 :     case 9007:  /* avx512f_zero_extendv8hiv8di2 */
   15203     35774185 :     case 9005:  /* avx512f_sign_extendv8hiv8di2 */
   15204     35774185 :     case 9000:  /* *sse4_1_zero_extendv2qiv2di2_1 */
   15205     35774185 :     case 8998:  /* *sse4_1_sign_extendv2qiv2di2_1 */
   15206     35774185 :     case 8988:  /* *avx2_zero_extendv4qiv4di2_1 */
   15207     35774185 :     case 8986:  /* *avx2_sign_extendv4qiv4di2_1 */
   15208     35774185 :     case 8976:  /* *avx512f_zero_extendv8qiv8di2_1 */
   15209     35774185 :     case 8974:  /* *avx512f_sign_extendv8qiv8di2_1 */
   15210     35774185 :     case 8960:  /* *sse4_1_zero_extendv4hiv4si2_1 */
   15211     35774185 :     case 8958:  /* *sse4_1_sign_extendv4hiv4si2_1 */
   15212     35774185 :     case 8948:  /* avx2_zero_extendv8hiv8si2 */
   15213     35774185 :     case 8946:  /* avx2_sign_extendv8hiv8si2 */
   15214     35774185 :     case 8940:  /* avx512f_zero_extendv16hiv16si2 */
   15215     35774185 :     case 8938:  /* avx512f_sign_extendv16hiv16si2 */
   15216     35774185 :     case 8930:  /* *sse4_1_zero_extendv4qiv4si2_1 */
   15217     35774185 :     case 8928:  /* *sse4_1_sign_extendv4qiv4si2_1 */
   15218     35774185 :     case 8918:  /* *avx2_zero_extendv8qiv8si2_1 */
   15219     35774185 :     case 8916:  /* *avx2_sign_extendv8qiv8si2_1 */
   15220     35774185 :     case 8910:  /* *avx512f_zero_extendv16qiv16si2 */
   15221     35774185 :     case 8908:  /* *avx512f_sign_extendv16qiv16si2 */
   15222     35774185 :     case 8898:  /* *sse4_1_zero_extendv8qiv8hi2_1 */
   15223     35774185 :     case 8896:  /* *sse4_1_sign_extendv8qiv8hi2_1 */
   15224     35774185 :     case 8886:  /* avx512bw_zero_extendv32qiv32hi2 */
   15225     35774185 :     case 8884:  /* avx512bw_sign_extendv32qiv32hi2 */
   15226     35774185 :     case 8878:  /* avx2_zero_extendv16qiv16hi2 */
   15227     35774185 :     case 8876:  /* avx2_sign_extendv16qiv16hi2 */
   15228     35774185 :     case 8781:  /* *absv2di2 */
   15229     35774185 :     case 8780:  /* *absv4di2 */
   15230     35774185 :     case 8779:  /* *absv8di2 */
   15231     35774185 :     case 8778:  /* *absv4si2 */
   15232     35774185 :     case 8777:  /* *absv8si2 */
   15233     35774185 :     case 8776:  /* *absv16si2 */
   15234     35774185 :     case 8775:  /* *absv8hi2 */
   15235     35774185 :     case 8774:  /* *absv16hi2 */
   15236     35774185 :     case 8773:  /* *absv32hi2 */
   15237     35774185 :     case 8772:  /* *absv16qi2 */
   15238     35774185 :     case 8771:  /* *absv32qi2 */
   15239     35774185 :     case 8770:  /* *absv64qi2 */
   15240     35774185 :     case 8599:  /* *vec_extractv2di_1 */
   15241     35774185 :     case 8592:  /* *vec_extractv2di_0_sse */
   15242     35774185 :     case 8591:  /* *vec_extractv2di_0 */
   15243     35774185 :     case 8590:  /* *vec_extractv4si_0 */
   15244     35774185 :     case 8580:  /* *vec_extractv8hi_0_mem */
   15245     35774185 :     case 8579:  /* *vec_extractv16qi_0_mem */
   15246     35774185 :     case 7539:  /* *avx512f_us_truncatev8div16qi2_store_1 */
   15247     35774185 :     case 7538:  /* *avx512f_truncatev8div16qi2_store_1 */
   15248     35774185 :     case 7537:  /* *avx512f_ss_truncatev8div16qi2_store_1 */
   15249     35774185 :     case 7521:  /* *avx512vl_us_truncatev2div2si2_store_1 */
   15250     35774185 :     case 7520:  /* *avx512vl_truncatev2div2si2_store_1 */
   15251     35774185 :     case 7519:  /* *avx512vl_ss_truncatev2div2si2_store_1 */
   15252     35774185 :     case 7502:  /* *avx512vl_us_truncatev2div2hi2_store_1 */
   15253     35774185 :     case 7501:  /* *avx512vl_truncatev2div2hi2_store_1 */
   15254     35774185 :     case 7500:  /* *avx512vl_ss_truncatev2div2hi2_store_1 */
   15255     35774185 :     case 7475:  /* *avx512vl_us_truncatev4div4hi2_store_1 */
   15256     35774185 :     case 7474:  /* *avx512vl_truncatev4div4hi2_store_1 */
   15257     35774185 :     case 7473:  /* *avx512vl_ss_truncatev4div4hi2_store_1 */
   15258     35774185 :     case 7472:  /* *avx512vl_us_truncatev4siv4hi2_store_1 */
   15259     35774185 :     case 7471:  /* *avx512vl_truncatev4siv4hi2_store_1 */
   15260     35774185 :     case 7470:  /* *avx512vl_ss_truncatev4siv4hi2_store_1 */
   15261     35774185 :     case 7435:  /* *avx512vl_us_truncatev8siv8qi2_store_1 */
   15262     35774185 :     case 7434:  /* *avx512vl_truncatev8siv8qi2_store_1 */
   15263     35774185 :     case 7433:  /* *avx512vl_ss_truncatev8siv8qi2_store_1 */
   15264     35774185 :     case 7432:  /* *avx512vl_us_truncatev8hiv8qi2_store_1 */
   15265     35774185 :     case 7431:  /* *avx512vl_truncatev8hiv8qi2_store_1 */
   15266     35774185 :     case 7430:  /* *avx512vl_ss_truncatev8hiv8qi2_store_1 */
   15267     35774185 :     case 7405:  /* *avx512vl_us_truncatev4div4qi2_store_1 */
   15268     35774185 :     case 7404:  /* *avx512vl_truncatev4div4qi2_store_1 */
   15269     35774185 :     case 7403:  /* *avx512vl_ss_truncatev4div4qi2_store_1 */
   15270     35774185 :     case 7402:  /* *avx512vl_us_truncatev4siv4qi2_store_1 */
   15271     35774185 :     case 7401:  /* *avx512vl_truncatev4siv4qi2_store_1 */
   15272     35774185 :     case 7400:  /* *avx512vl_ss_truncatev4siv4qi2_store_1 */
   15273     35774185 :     case 7387:  /* *avx512vl_us_truncatev2div2qi2_store_1 */
   15274     35774185 :     case 7386:  /* *avx512vl_truncatev2div2qi2_store_1 */
   15275     35774185 :     case 7385:  /* *avx512vl_ss_truncatev2div2qi2_store_1 */
   15276     35774185 :     case 7357:  /* *avx512vl_us_truncatev16hiv16qi2 */
   15277     35774185 :     case 7356:  /* *avx512vl_truncatev16hiv16qi2 */
   15278     35774185 :     case 7355:  /* *avx512vl_ss_truncatev16hiv16qi2 */
   15279     35774185 :     case 7354:  /* *avx512vl_us_truncatev8siv8hi2 */
   15280     35774185 :     case 7353:  /* *avx512vl_truncatev8siv8hi2 */
   15281     35774185 :     case 7352:  /* *avx512vl_ss_truncatev8siv8hi2 */
   15282     35774185 :     case 7351:  /* *avx512vl_us_truncatev4div4si2 */
   15283     35774185 :     case 7350:  /* *avx512vl_truncatev4div4si2 */
   15284     35774185 :     case 7349:  /* *avx512vl_ss_truncatev4div4si2 */
   15285     35774185 :     case 7344:  /* avx512bw_us_truncatev32hiv32qi2 */
   15286     35774185 :     case 7343:  /* avx512bw_truncatev32hiv32qi2 */
   15287     35774185 :     case 7342:  /* avx512bw_ss_truncatev32hiv32qi2 */
   15288     35774185 :     case 7324:  /* *avx512f_us_truncatev8div8hi2 */
   15289     35774185 :     case 7323:  /* *avx512f_truncatev8div8hi2 */
   15290     35774185 :     case 7322:  /* *avx512f_ss_truncatev8div8hi2 */
   15291     35774185 :     case 7321:  /* *avx512f_us_truncatev8div8si2 */
   15292     35774185 :     case 7320:  /* *avx512f_truncatev8div8si2 */
   15293     35774185 :     case 7319:  /* *avx512f_ss_truncatev8div8si2 */
   15294     35774185 :     case 7318:  /* *avx512f_us_truncatev16siv16hi2 */
   15295     35774185 :     case 7317:  /* *avx512f_truncatev16siv16hi2 */
   15296     35774185 :     case 7316:  /* *avx512f_ss_truncatev16siv16hi2 */
   15297     35774185 :     case 7315:  /* *avx512f_us_truncatev16siv16qi2 */
   15298     35774185 :     case 7314:  /* *avx512f_truncatev16siv16qi2 */
   15299     35774185 :     case 7313:  /* *avx512f_ss_truncatev16siv16qi2 */
   15300     35774185 :     case 7308:  /* vec_dupv2df */
   15301     35774185 :     case 7303:  /* *vec_extractv2df_0_sse */
   15302     35774185 :     case 7302:  /* sse2_storelpd */
   15303     35774185 :     case 7301:  /* *vec_extractv2df_1_sse */
   15304     35774185 :     case 7300:  /* sse2_storehpd */
   15305     35774185 :     case 5464:  /* *vec_extractv8bf_0 */
   15306     35774185 :     case 5463:  /* *vec_extractv16bf_0 */
   15307     35774185 :     case 5462:  /* *vec_extractv32bf_0 */
   15308     35774185 :     case 5461:  /* *vec_extractv8hf_0 */
   15309     35774185 :     case 5460:  /* *vec_extractv16hf_0 */
   15310     35774185 :     case 5459:  /* *vec_extractv32hf_0 */
   15311     35774185 :     case 5458:  /* vec_extract_hi_v32qi */
   15312     35774185 :     case 5457:  /* vec_extract_lo_v32qi */
   15313     35774185 :     case 5456:  /* vec_extract_hi_v64qi */
   15314     35774185 :     case 5455:  /* vec_extract_lo_v64qi */
   15315     35774185 :     case 5454:  /* vec_extract_hi_v16bf */
   15316     35774185 :     case 5453:  /* vec_extract_hi_v16hf */
   15317     35774185 :     case 5452:  /* vec_extract_hi_v16hi */
   15318     35774185 :     case 5451:  /* vec_extract_lo_v16bf */
   15319     35774185 :     case 5450:  /* vec_extract_lo_v16hf */
   15320     35774185 :     case 5449:  /* vec_extract_lo_v16hi */
   15321     35774185 :     case 5448:  /* vec_extract_hi_v32bf */
   15322     35774185 :     case 5447:  /* vec_extract_hi_v32hf */
   15323     35774185 :     case 5446:  /* vec_extract_hi_v32hi */
   15324     35774185 :     case 5445:  /* vec_extract_lo_v32bf */
   15325     35774185 :     case 5444:  /* vec_extract_lo_v32hf */
   15326     35774185 :     case 5443:  /* vec_extract_lo_v32hi */
   15327     35774185 :     case 5442:  /* vec_extract_hi_v8sf */
   15328     35774185 :     case 5441:  /* vec_extract_hi_v8si */
   15329     35774185 :     case 5438:  /* vec_extract_lo_v8sf */
   15330     35774185 :     case 5437:  /* vec_extract_lo_v8si */
   15331     35774185 :     case 5434:  /* vec_extract_hi_v4df */
   15332     35774185 :     case 5433:  /* vec_extract_hi_v4di */
   15333     35774185 :     case 5430:  /* vec_extract_lo_v4df */
   15334     35774185 :     case 5429:  /* vec_extract_lo_v4di */
   15335     35774185 :     case 5426:  /* vec_extract_lo_v16si */
   15336     35774185 :     case 5425:  /* vec_extract_lo_v16sf */
   15337     35774185 :     case 5422:  /* vec_extract_hi_v16si */
   15338     35774185 :     case 5421:  /* vec_extract_hi_v16sf */
   15339     35774185 :     case 5418:  /* vec_extract_hi_v8di */
   15340     35774185 :     case 5417:  /* vec_extract_hi_v8df */
   15341     35774185 :     case 5414:  /* vec_extract_lo_v8di */
   15342     35774185 :     case 5413:  /* vec_extract_lo_v8df */
   15343     35774185 :     case 5400:  /* *vec_extractv4sf_0 */
   15344     35774185 :     case 5336:  /* sse_storelps */
   15345     35774185 :     case 5334:  /* sse_storehps */
   15346     35774185 :     case 5298:  /* sse2_cvtps2pd_1 */
   15347     35774185 :     case 5250:  /* avx_cvtps2pd256 */
   15348     35774185 :     case 5246:  /* avx512f_cvtps2pd512 */
   15349     35774185 :     case 5243:  /* truncv2dfv2sf2 */
   15350     35774185 :     case 5240:  /* avx_cvtpd2ps256 */
   15351     35774185 :     case 5236:  /* *avx512f_cvtpd2ps512 */
   15352     35774185 :     case 5219:  /* *fixuns_truncv4sfv4si2 */
   15353     35774185 :     case 5217:  /* *fixuns_truncv8sfv8si2 */
   15354     35774185 :     case 5203:  /* fixuns_truncv4sfv4di2 */
   15355     35774185 :     case 5201:  /* fix_truncv4sfv4di2 */
   15356     35774185 :     case 5197:  /* fixuns_truncv8sfv8di2 */
   15357     35774185 :     case 5193:  /* fix_truncv8sfv8di2 */
   15358     35774185 :     case 5163:  /* fixuns_truncv2dfv2di2 */
   15359     35774185 :     case 5161:  /* fix_truncv2dfv2di2 */
   15360     35774185 :     case 5159:  /* fixuns_truncv4dfv4di2 */
   15361     35774185 :     case 5157:  /* fix_truncv4dfv4di2 */
   15362     35774185 :     case 5153:  /* fixuns_truncv8dfv8di2 */
   15363     35774185 :     case 5149:  /* fix_truncv8dfv8di2 */
   15364     35774185 :     case 5131:  /* fixuns_truncv4dfv4si2 */
   15365     35774185 :     case 5127:  /* fix_truncv4dfv4si2 */
   15366     35774185 :     case 5116:  /* fixuns_truncv8dfv8si2 */
   15367     35774185 :     case 5112:  /* fix_truncv8dfv8si2 */
   15368     35774185 :     case 5075:  /* floatunsv4siv4df2 */
   15369     35774185 :     case 5073:  /* floatunsv8siv8df2 */
   15370     35774185 :     case 5065:  /* floatunsv4div4sf2 */
   15371     35774185 :     case 5063:  /* floatv4div4sf2 */
   15372     35774185 :     case 5059:  /* floatunsv8div8sf2 */
   15373     35774185 :     case 5055:  /* floatv8div8sf2 */
   15374     35774185 :     case 5051:  /* floatunsv2div2df2 */
   15375     35774185 :     case 5047:  /* floatv2div2df2 */
   15376     35774185 :     case 5043:  /* floatunsv4div4df2 */
   15377     35774185 :     case 5039:  /* floatv4div4df2 */
   15378     35774185 :     case 5035:  /* floatunsv8div8df2 */
   15379     35774185 :     case 5031:  /* floatv8div8df2 */
   15380     35774185 :     case 5029:  /* floatv4siv4df2 */
   15381     35774185 :     case 5027:  /* floatv8siv8df2 */
   15382     35774185 :     case 4966:  /* fixuns_truncv2dfv2si2 */
   15383     35774185 :     case 4964:  /* sse2_cvttpd2pi */
   15384     35774185 :     case 4961:  /* floatunsv2siv2df2 */
   15385     35774185 :     case 4960:  /* sse2_cvtpi2pd */
   15386     35774185 :     case 4958:  /* fix_truncv4sfv4si2 */
   15387     35774185 :     case 4954:  /* fix_truncv8sfv8si2 */
   15388     35774185 :     case 4948:  /* fixuns_truncv16sfv16si2 */
   15389     35774185 :     case 4944:  /* fix_truncv16sfv16si2 */
   15390     35774185 :     case 4896:  /* *floatunsv4siv4sf2 */
   15391     35774185 :     case 4892:  /* *floatunsv8siv8sf2 */
   15392     35774185 :     case 4888:  /* *floatunsv16siv16sf2 */
   15393     35774185 :     case 4886:  /* floatv4siv4sf2 */
   15394     35774185 :     case 4884:  /* floatv8siv8sf2 */
   15395     35774185 :     case 4880:  /* floatv16siv16sf2 */
   15396     35774185 :     case 4807:  /* avx512fp16_vcvtps2ph_v8sf */
   15397     35774185 :     case 4803:  /* avx512fp16_vcvtps2ph_v16sf */
   15398     35774185 :     case 4799:  /* avx512fp16_vcvtpd2ph_v8df */
   15399     35774185 :     case 4797:  /* *avx512fp16_float_extend_phv2df2_load */
   15400     35774185 :     case 4793:  /* *avx512fp16_float_extend_phv4sf2_load */
   15401     35774185 :     case 4791:  /* *avx512fp16_float_extend_phv4df2_load */
   15402     35774185 :     case 4783:  /* avx512fp16_float_extend_phv8sf2 */
   15403     35774185 :     case 4779:  /* avx512fp16_float_extend_phv16sf2 */
   15404     35774185 :     case 4775:  /* avx512fp16_float_extend_phv8df2 */
   15405     35774185 :     case 4774:  /* avx512fp16_fixuns_truncdi2_mem */
   15406     35774185 :     case 4773:  /* avx512fp16_fix_truncdi2_mem */
   15407     35774185 :     case 4772:  /* avx512fp16_fixuns_truncsi2_mem */
   15408     35774185 :     case 4771:  /* avx512fp16_fix_truncsi2_mem */
   15409     35774185 :     case 4749:  /* *avx512fp16_fixuns_truncv2di2_load */
   15410     35774185 :     case 4747:  /* *avx512fp16_fix_truncv2di2_load */
   15411     35774185 :     case 4737:  /* *avx512fp16_fixuns_truncv4di2_load */
   15412     35774185 :     case 4735:  /* *avx512fp16_fix_truncv4di2_load */
   15413     35774185 :     case 4733:  /* *avx512fp16_fixuns_truncv4si2_load */
   15414     35774185 :     case 4731:  /* *avx512fp16_fix_truncv4si2_load */
   15415     35774185 :     case 4711:  /* avx512fp16_fixuns_truncv8di2 */
   15416     35774185 :     case 4707:  /* avx512fp16_fix_truncv8di2 */
   15417     35774185 :     case 4703:  /* avx512fp16_fixuns_truncv16si2 */
   15418     35774185 :     case 4699:  /* avx512fp16_fix_truncv16si2 */
   15419     35774185 :     case 4695:  /* avx512fp16_fixuns_truncv8si2 */
   15420     35774185 :     case 4691:  /* avx512fp16_fix_truncv8si2 */
   15421     35774185 :     case 4687:  /* avx512fp16_fixuns_truncv32hi2 */
   15422     35774185 :     case 4683:  /* avx512fp16_fix_truncv32hi2 */
   15423     35774185 :     case 4679:  /* avx512fp16_fixuns_truncv16hi2 */
   15424     35774185 :     case 4675:  /* avx512fp16_fix_truncv16hi2 */
   15425     35774185 :     case 4671:  /* avx512fp16_fixuns_truncv8hi2 */
   15426     35774185 :     case 4667:  /* avx512fp16_fix_truncv8hi2 */
   15427     35774185 :     case 4571:  /* avx512fp16_vcvtuqq2ph_v8di */
   15428     35774185 :     case 4567:  /* avx512fp16_vcvtqq2ph_v8di */
   15429     35774185 :     case 4563:  /* avx512fp16_vcvtudq2ph_v16si */
   15430     35774185 :     case 4559:  /* avx512fp16_vcvtdq2ph_v16si */
   15431     35774185 :     case 4555:  /* avx512fp16_vcvtudq2ph_v8si */
   15432     35774185 :     case 4551:  /* avx512fp16_vcvtdq2ph_v8si */
   15433     35774185 :     case 4547:  /* avx512fp16_vcvtuw2ph_v32hi */
   15434     35774185 :     case 4543:  /* avx512fp16_vcvtw2ph_v32hi */
   15435     35774185 :     case 4539:  /* avx512fp16_vcvtuw2ph_v16hi */
   15436     35774185 :     case 4535:  /* avx512fp16_vcvtw2ph_v16hi */
   15437     35774185 :     case 4531:  /* avx512fp16_vcvtuw2ph_v8hi */
   15438     35774185 :     case 4527:  /* avx512fp16_vcvtw2ph_v8hi */
   15439     35774185 :     case 2998:  /* sse2_sqrtv2df2 */
   15440     35774185 :     case 2996:  /* avx_sqrtv4df2 */
   15441     35774185 :     case 2992:  /* avx512f_sqrtv8df2 */
   15442     35774185 :     case 2990:  /* sse_sqrtv4sf2 */
   15443     35774185 :     case 2988:  /* avx_sqrtv8sf2 */
   15444     35774185 :     case 2984:  /* avx512f_sqrtv16sf2 */
   15445     35774185 :     case 2982:  /* avx512fp16_sqrtv8hf2 */
   15446     35774185 :     case 2980:  /* avx512fp16_sqrtv16hf2 */
   15447     35774185 :     case 2976:  /* avx512fp16_sqrtv32hf2 */
   15448     35774185 :     case 2451:  /* popcountv2si2 */
   15449     35774185 :     case 2450:  /* popcountv2hi2 */
   15450     35774185 :     case 2449:  /* popcountv4hi2 */
   15451     35774185 :     case 2448:  /* popcountv2qi2 */
   15452     35774185 :     case 2447:  /* popcountv4qi2 */
   15453     35774185 :     case 2446:  /* popcountv8qi2 */
   15454     35774185 :     case 2434:  /* *vec_dupv2hi */
   15455     35774185 :     case 2433:  /* *vec_dupv2bf */
   15456     35774185 :     case 2432:  /* *vec_dupv2hf */
   15457     35774185 :     case 2409:  /* *vec_extractv2si_1 */
   15458     35774185 :     case 2406:  /* *vec_extractv2si_0 */
   15459     35774185 :     case 2404:  /* *vec_dupv2si */
   15460     35774185 :     case 2403:  /* *vec_dupv4hi */
   15461     35774185 :     case 2402:  /* *vec_dupv4bf */
   15462     35774185 :     case 2401:  /* *vec_dupv4hf */
   15463     35774185 :     case 2399:  /* mmx_pswapdv2si2 */
   15464     35774185 :     case 2372:  /* avx512vl_truncv2siv2hi2 */
   15465     35774185 :     case 2371:  /* avx512vl_truncv2siv2qi2 */
   15466     35774185 :     case 2370:  /* avx512vl_truncv2hiv2qi2 */
   15467     35774185 :     case 2369:  /* avx512vl_truncv4hiv4qi2 */
   15468     35774185 :     case 2324:  /* one_cmplv2hi2 */
   15469     35774185 :     case 2323:  /* one_cmplv2qi2 */
   15470     35774185 :     case 2322:  /* one_cmplv4qi2 */
   15471     35774185 :     case 2254:  /* absv2hi2 */
   15472     35774185 :     case 2253:  /* absv2qi2 */
   15473     35774185 :     case 2252:  /* absv4qi2 */
   15474     35774185 :     case 2251:  /* ssse3_absv2si2 */
   15475     35774185 :     case 2250:  /* ssse3_absv4hi2 */
   15476     35774185 :     case 2249:  /* ssse3_absv8qi2 */
   15477     35774185 :     case 2151:  /* *vec_extractv2sf_1 */
   15478     35774185 :     case 2150:  /* *vec_extractv2sf_0 */
   15479     35774185 :     case 2146:  /* *vec_dupv2sf */
   15480     35774185 :     case 2143:  /* *mmx_movsldup */
   15481     35774185 :     case 2142:  /* *mmx_movshdup */
   15482     35774185 :     case 2141:  /* mmx_pswapdv2sf2 */
   15483     35774185 :     case 1748:  /* *sqrtdf2_sse */
   15484     35774185 :     case 1747:  /* *sqrtsf2_sse */
   15485     35774185 :     case 1746:  /* sqrthf2 */
   15486     35774185 :     case 1743:  /* sqrtxf2 */
   15487     35774185 :     case 1678:  /* *movbehi2 */
   15488     35774185 :     case 1677:  /* *bswapdi2 */
   15489     35774185 :     case 1676:  /* *bswapsi2 */
   15490     35774185 :     case 1675:  /* *bswapdi2_movbe */
   15491     35774185 :     case 1674:  /* *bswapsi2_movbe */
   15492     35774185 :     case 1672:  /* popcounthi2_nf */
   15493     35774185 :     case 1659:  /* popcountdi2_nf */
   15494     35774185 :     case 1658:  /* popcountsi2_nf */
   15495     35774185 :     case 1567:  /* clzdi2_lzcnt_nf */
   15496     35774185 :     case 1566:  /* clzsi2_lzcnt_nf */
   15497     35774185 :     case 1373:  /* rotr64ti2_doubleword */
   15498     35774185 :     case 1372:  /* rotl64ti2_doubleword */
   15499     35774185 :     case 1371:  /* rotr32di2_doubleword */
   15500     35774185 :     case 1370:  /* rotl32di2_doubleword */
   15501     35774185 :     case 1075:  /* *one_cmplqi2_1 */
   15502     35774185 :     case 1068:  /* *one_cmpldi2_1 */
   15503     35774185 :     case 1067:  /* *one_cmplsi2_1 */
   15504     35774185 :     case 1066:  /* *one_cmplhi2_1 */
   15505     35774185 :     case 1065:  /* *one_cmplti2_doubleword */
   15506     35774185 :     case 1064:  /* *one_cmpldi2_doubleword */
   15507     35774185 :     case 1063:  /* *negxf2_i387 */
   15508     35774185 :     case 1062:  /* *absxf2_i387 */
   15509     35774185 :     case 1061:  /* *negdf2_i387 */
   15510     35774185 :     case 1060:  /* *absdf2_i387 */
   15511     35774185 :     case 1059:  /* *negsf2_i387 */
   15512     35774185 :     case 1058:  /* *abssf2_i387 */
   15513     35774185 :     case 994:  /* *negdi_1_nf */
   15514     35774185 :     case 992:  /* *negsi_1_nf */
   15515     35774185 :     case 990:  /* *neghi_1_nf */
   15516     35774185 :     case 988:  /* *negqi_1_nf */
   15517     35774185 :     case 264:  /* *floatunsdidf2_avx512 */
   15518     35774185 :     case 263:  /* *floatunssidf2_avx512 */
   15519     35774185 :     case 262:  /* *floatunsdisf2_avx512 */
   15520     35774185 :     case 261:  /* *floatunssisf2_avx512 */
   15521     35774185 :     case 257:  /* *floatdidf2_i387 */
   15522     35774185 :     case 256:  /* *floatdisf2_i387 */
   15523     35774185 :     case 255:  /* floatunsdihf2 */
   15524     35774185 :     case 254:  /* floatdihf2 */
   15525     35774185 :     case 253:  /* floatunssihf2 */
   15526     35774185 :     case 252:  /* floatsihf2 */
   15527     35774185 :     case 251:  /* *floatdidf2 */
   15528     35774185 :     case 250:  /* *floatsidf2 */
   15529     35774185 :     case 249:  /* *floatdisf2 */
   15530     35774185 :     case 248:  /* *floatsisf2 */
   15531     35774185 :     case 247:  /* floatdixf2 */
   15532     35774185 :     case 246:  /* floatsixf2 */
   15533     35774185 :     case 245:  /* floathixf2 */
   15534     35774185 :     case 244:  /* floathidf2 */
   15535     35774185 :     case 243:  /* floathisf2 */
   15536     35774185 :     case 232:  /* fix_truncdfdi_sse */
   15537     35774185 :     case 231:  /* fix_truncdfsi_sse */
   15538     35774185 :     case 230:  /* fix_truncsfdi_sse */
   15539     35774185 :     case 229:  /* fix_truncsfsi_sse */
   15540     35774185 :     case 223:  /* fixuns_truncdfsi2_avx512f */
   15541     35774185 :     case 222:  /* fixuns_truncsfsi2_avx512f */
   15542     35774185 :     case 221:  /* fixuns_truncdfdi2 */
   15543     35774185 :     case 220:  /* fixuns_truncsfdi2 */
   15544     35774185 :     case 219:  /* fixuns_trunchfdi2 */
   15545     35774185 :     case 218:  /* fix_trunchfdi2 */
   15546     35774185 :     case 217:  /* fixuns_trunchfsi2 */
   15547     35774185 :     case 216:  /* fix_trunchfsi2 */
   15548     35774185 :     case 215:  /* truncsfbf2_vcvtneps2bf16 */
   15549     35774185 :     case 214:  /* *truncdfhf2 */
   15550     35774185 :     case 213:  /* *truncsfhf2 */
   15551     35774185 :     case 212:  /* truncxfdf2 */
   15552     35774185 :     case 211:  /* truncxfsf2 */
   15553     35774185 :     case 210:  /* truncdfsf2 */
   15554     35774185 :     case 209:  /* *extenddfxf2_i387 */
   15555     35774185 :     case 208:  /* *extendsfxf2_i387 */
   15556     35774185 :     case 206:  /* *extendhfdf2 */
   15557     35774185 :     case 205:  /* *extendhfsf2 */
   15558     35774185 :     case 204:  /* *extendsfdf2 */
   15559     35774185 :     case 197:  /* extendqihi2 */
   15560     35774185 :     case 195:  /* extendqisi2 */
   15561     35774185 :     case 193:  /* extendhisi2 */
   15562     35774185 :     case 192:  /* extendhidi2 */
   15563     35774185 :     case 191:  /* extendqidi2 */
   15564     35774185 :     case 188:  /* *extendsidi2_rex64 */
   15565     35774185 :     case 187:  /* *zero_extendqihi2 */
   15566     35774185 :     case 185:  /* *zero_extendhisi2 */
   15567     35774185 :     case 184:  /* *zero_extendqisi2 */
   15568     35774185 :     case 181:  /* zero_extendhidi2 */
   15569     35774185 :     case 180:  /* zero_extendqidi2 */
   15570     35774185 :     case 179:  /* *zero_extendsidi2 */
   15571     35774185 :     case 178:  /* zero_extendditi2 */
   15572     35774185 :     case 128:  /* *extzvdi */
   15573     35774185 :     case 127:  /* *extzvsi */
   15574     35774185 :     case 126:  /* *extzvhi */
   15575     35774185 :     case 123:  /* *extvsi */
   15576     35774185 :     case 122:  /* *extvhi */
   15577     35774185 :     case 110:  /* *movabsdi_2 */
   15578     35774185 :     case 109:  /* *movabssi_2 */
   15579     35774185 :     case 108:  /* *movabshi_2 */
   15580     35774185 :     case 107:  /* *movabsqi_2 */
   15581     35774185 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   15582     35774185 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
   15583     35774185 :       break;
   15584              : 
   15585     57303921 :     case 1501:  /* *sibcall */
   15586     57303921 :     case 1500:  /* *sibcall */
   15587     57303921 :     case 1497:  /* *call */
   15588     57303921 :     case 1496:  /* *call */
   15589     57303921 :     case 1485:  /* *setcc_qi_slp */
   15590     57303921 :     case 134:  /* insvdi_1 */
   15591     57303921 :     case 133:  /* insvsi_1 */
   15592     57303921 :     case 132:  /* insvhi_1 */
   15593     57303921 :     case 116:  /* *movstricthi_1 */
   15594     57303921 :     case 115:  /* *movstrictqi_1 */
   15595     57303921 :     case 106:  /* *movabsdi_1 */
   15596     57303921 :     case 105:  /* *movabssi_1 */
   15597     57303921 :     case 104:  /* *movabshi_1 */
   15598     57303921 :     case 103:  /* *movabsqi_1 */
   15599     57303921 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0));
   15600     57303921 :       ro[1] = *(ro_loc[1] = &XEXP (pat, 1));
   15601     57303921 :       break;
   15602              : 
   15603       436879 :     case 11306:  /* atomic_storeti_sse */
   15604       436879 :     case 11305:  /* atomic_loadti_sse */
   15605       436879 :     case 11304:  /* storedi_via_sse */
   15606       436879 :     case 11303:  /* loaddi_via_sse */
   15607       436879 :     case 11302:  /* storedi_via_fpu */
   15608       436879 :     case 11301:  /* loaddi_via_fpu */
   15609       436879 :     case 11272:  /* bsrmovl_store */
   15610       436879 :     case 11271:  /* bsrmovh_store */
   15611       436879 :     case 11270:  /* bsrmovl_load */
   15612       436879 :     case 11269:  /* bsrmovh_load */
   15613       436879 :     case 11261:  /* *avx10v2aux_sym_truncatev4siv4qi2_store_1 */
   15614       436879 :     case 11260:  /* *avx10v2aux_sym_truncatev8siv8qi2_store_1 */
   15615       436879 :     case 11258:  /* *avx10v2aux_sym_truncatev16siv16qi2 */
   15616       436879 :     case 11246:  /* vcvthf62hf8v32qi */
   15617       436879 :     case 11244:  /* vcvtbf62hf8v32qi */
   15618       436879 :     case 11242:  /* vcvthf62hf8v16qi */
   15619       436879 :     case 11240:  /* vcvtbf62hf8v16qi */
   15620       436879 :     case 11238:  /* vcvthf62hf8v64qi */
   15621       436879 :     case 11236:  /* vcvtbf62hf8v64qi */
   15622       436879 :     case 11235:  /* vcvthf82hf6sv32qi */
   15623       436879 :     case 11234:  /* vcvtbf82bf6sv32qi */
   15624       436879 :     case 11233:  /* vcvthf82hf6sv16qi */
   15625       436879 :     case 11232:  /* vcvtbf82bf6sv16qi */
   15626       436879 :     case 11231:  /* vcvthf82hf6sv64qi */
   15627       436879 :     case 11230:  /* vcvtbf82bf6sv64qi */
   15628       436879 :     case 11228:  /* vcvtbf42hf8v32qi */
   15629       436879 :     case 11226:  /* vcvtbf42hf8v16qi */
   15630       436879 :     case 11224:  /* vcvtbf42hf8v64qi */
   15631       436879 :     case 11223:  /* vcvthf82bf4sv32qi */
   15632       436879 :     case 11222:  /* vcvtbf82bf4sv32qi */
   15633       436879 :     case 11221:  /* vcvthf82bf4sv64qi */
   15634       436879 :     case 11220:  /* vcvtbf82bf4sv64qi */
   15635       436879 :     case 11216:  /* vcvthf82psv4sf */
   15636       436879 :     case 11214:  /* vcvtbf82psv4sf */
   15637       436879 :     case 11212:  /* vcvthf82psv8sf */
   15638       436879 :     case 11210:  /* vcvtbf82psv8sf */
   15639       436879 :     case 11208:  /* vcvthf82psv16sf */
   15640       436879 :     case 11206:  /* vcvtbf82psv16sf */
   15641       436879 :     case 11180:  /* vcvtrops2hf8sv16sf */
   15642       436879 :     case 11178:  /* vcvtrops2hf8v16sf */
   15643       436879 :     case 11176:  /* vcvtps2hf8sv16sf */
   15644       436879 :     case 11174:  /* vcvtps2hf8v16sf */
   15645       436879 :     case 11172:  /* vcvtps2bf8sv16sf */
   15646       436879 :     case 11170:  /* vcvtps2bf8v16sf */
   15647       436879 :     case 11145:  /* avx512bmm_vbitrevb_v32qi */
   15648       436879 :     case 11144:  /* avx512bmm_vbitrevb_v16qi */
   15649       436879 :     case 11143:  /* avx512bmm_vbitrevb_v64qi */
   15650       436879 :     case 11134:  /* avx10_2_vmovrsqv2di */
   15651       436879 :     case 11132:  /* avx10_2_vmovrsqv4di */
   15652       436879 :     case 11130:  /* avx10_2_vmovrsqv8di */
   15653       436879 :     case 11128:  /* avx10_2_vmovrsdv4si */
   15654       436879 :     case 11126:  /* avx10_2_vmovrsdv8si */
   15655       436879 :     case 11124:  /* avx10_2_vmovrsdv16si */
   15656       436879 :     case 11122:  /* avx10_2_vmovrswv8hi */
   15657       436879 :     case 11120:  /* avx10_2_vmovrswv16hi */
   15658       436879 :     case 11118:  /* avx10_2_vmovrswv32hi */
   15659       436879 :     case 11116:  /* avx10_2_vmovrsbv16qi */
   15660       436879 :     case 11114:  /* avx10_2_vmovrsbv32qi */
   15661       436879 :     case 11112:  /* avx10_2_vmovrsbv64qi */
   15662       436879 :     case 11032:  /* avx10_2_vcvttps2uqqsv2di */
   15663       436879 :     case 11030:  /* avx10_2_vcvttps2qqsv2di */
   15664       436879 :     case 11028:  /* avx10_2_vcvttps2uqqsv4di */
   15665       436879 :     case 11026:  /* avx10_2_vcvttps2qqsv4di */
   15666       436879 :     case 11022:  /* avx10_2_vcvttps2uqqsv8di */
   15667       436879 :     case 11018:  /* avx10_2_vcvttps2qqsv8di */
   15668       436879 :     case 11016:  /* avx10_2_vcvttpd2uqqsv2df */
   15669       436879 :     case 11014:  /* avx10_2_vcvttpd2qqsv2df */
   15670       436879 :     case 11012:  /* avx10_2_vcvttpd2uqqsv4df */
   15671       436879 :     case 11010:  /* avx10_2_vcvttpd2qqsv4df */
   15672       436879 :     case 11006:  /* avx10_2_vcvttpd2uqqsv8df */
   15673       436879 :     case 11002:  /* avx10_2_vcvttpd2qqsv8df */
   15674       436879 :     case 11000:  /* avx10_2_vcvttpd2udqsv2df */
   15675       436879 :     case 10998:  /* avx10_2_vcvttpd2dqsv2df */
   15676       436879 :     case 10996:  /* avx10_2_vcvttpd2udqsv4df */
   15677       436879 :     case 10994:  /* avx10_2_vcvttpd2dqsv4df */
   15678       436879 :     case 10990:  /* avx10_2_vcvttpd2udqsv8df */
   15679       436879 :     case 10986:  /* avx10_2_vcvttpd2dqsv8df */
   15680       436879 :     case 10984:  /* avx10_2_vcvttps2udqsv4sf */
   15681       436879 :     case 10982:  /* avx10_2_vcvttps2dqsv4sf */
   15682       436879 :     case 10980:  /* avx10_2_vcvttps2udqsv8sf */
   15683       436879 :     case 10978:  /* avx10_2_vcvttps2dqsv8sf */
   15684       436879 :     case 10974:  /* avx10_2_vcvttps2udqsv16sf */
   15685       436879 :     case 10970:  /* avx10_2_vcvttps2dqsv16sf */
   15686       436879 :     case 10968:  /* avx10_2_cvttps2iubsv4sf */
   15687       436879 :     case 10966:  /* avx10_2_cvttps2ibsv4sf */
   15688       436879 :     case 10964:  /* avx10_2_cvttps2iubsv8sf */
   15689       436879 :     case 10962:  /* avx10_2_cvttps2ibsv8sf */
   15690       436879 :     case 10958:  /* avx10_2_cvttps2iubsv16sf */
   15691       436879 :     case 10954:  /* avx10_2_cvttps2ibsv16sf */
   15692       436879 :     case 10952:  /* avx10_2_cvtps2iubsv4sf */
   15693       436879 :     case 10950:  /* avx10_2_cvtps2ibsv4sf */
   15694       436879 :     case 10948:  /* avx10_2_cvtps2iubsv8sf */
   15695       436879 :     case 10946:  /* avx10_2_cvtps2ibsv8sf */
   15696       436879 :     case 10942:  /* avx10_2_cvtps2iubsv16sf */
   15697       436879 :     case 10938:  /* avx10_2_cvtps2ibsv16sf */
   15698       436879 :     case 10936:  /* avx10_2_cvttph2iubsv8hf */
   15699       436879 :     case 10934:  /* avx10_2_cvttph2ibsv8hf */
   15700       436879 :     case 10932:  /* avx10_2_cvttph2iubsv16hf */
   15701       436879 :     case 10930:  /* avx10_2_cvttph2ibsv16hf */
   15702       436879 :     case 10926:  /* avx10_2_cvttph2iubsv32hf */
   15703       436879 :     case 10922:  /* avx10_2_cvttph2ibsv32hf */
   15704       436879 :     case 10920:  /* avx10_2_cvtph2iubsv8hf */
   15705       436879 :     case 10918:  /* avx10_2_cvtph2ibsv8hf */
   15706       436879 :     case 10916:  /* avx10_2_cvtph2iubsv16hf */
   15707       436879 :     case 10914:  /* avx10_2_cvtph2ibsv16hf */
   15708       436879 :     case 10910:  /* avx10_2_cvtph2iubsv32hf */
   15709       436879 :     case 10906:  /* avx10_2_cvtph2ibsv32hf */
   15710       436879 :     case 10904:  /* avx10_2_cvttbf162iubsv8bf */
   15711       436879 :     case 10902:  /* avx10_2_cvttbf162ibsv8bf */
   15712       436879 :     case 10900:  /* avx10_2_cvtbf162iubsv8bf */
   15713       436879 :     case 10898:  /* avx10_2_cvtbf162ibsv8bf */
   15714       436879 :     case 10896:  /* avx10_2_cvttbf162iubsv16bf */
   15715       436879 :     case 10894:  /* avx10_2_cvttbf162ibsv16bf */
   15716       436879 :     case 10892:  /* avx10_2_cvtbf162iubsv16bf */
   15717       436879 :     case 10890:  /* avx10_2_cvtbf162ibsv16bf */
   15718       436879 :     case 10888:  /* avx10_2_cvttbf162iubsv32bf */
   15719       436879 :     case 10886:  /* avx10_2_cvttbf162ibsv32bf */
   15720       436879 :     case 10884:  /* avx10_2_cvtbf162iubsv32bf */
   15721       436879 :     case 10882:  /* avx10_2_cvtbf162ibsv32bf */
   15722       436879 :     case 10850:  /* avx10_2_getexpbf16_v8bf */
   15723       436879 :     case 10848:  /* avx10_2_getexpbf16_v16bf */
   15724       436879 :     case 10846:  /* avx10_2_getexpbf16_v32bf */
   15725       436879 :     case 10844:  /* avx10_2_rcpbf16_v8bf */
   15726       436879 :     case 10842:  /* avx10_2_rcpbf16_v16bf */
   15727       436879 :     case 10840:  /* avx10_2_rcpbf16_v32bf */
   15728       436879 :     case 10832:  /* avx10_2_rsqrtbf16_v8bf */
   15729       436879 :     case 10830:  /* avx10_2_rsqrtbf16_v16bf */
   15730       436879 :     case 10828:  /* avx10_2_rsqrtbf16_v32bf */
   15731       436879 :     case 10673:  /* vcvthf82phv8hf */
   15732       436879 :     case 10671:  /* vcvthf82phv16hf */
   15733       436879 :     case 10669:  /* vcvthf82phv32hf */
   15734       436879 :     case 10667:  /* vcvtph2hf8sv32hf */
   15735       436879 :     case 10665:  /* vcvtph2hf8v32hf */
   15736       436879 :     case 10663:  /* vcvtph2bf8sv32hf */
   15737       436879 :     case 10661:  /* vcvtph2bf8v32hf */
   15738       436879 :     case 10659:  /* vcvtph2hf8sv16hf */
   15739       436879 :     case 10657:  /* vcvtph2hf8v16hf */
   15740       436879 :     case 10655:  /* vcvtph2bf8sv16hf */
   15741       436879 :     case 10653:  /* vcvtph2bf8v16hf */
   15742       436879 :     case 10234:  /* *conflictv2di */
   15743       436879 :     case 10232:  /* *conflictv4di */
   15744       436879 :     case 10230:  /* *conflictv8di */
   15745       436879 :     case 10228:  /* *conflictv4si */
   15746       436879 :     case 10226:  /* *conflictv8si */
   15747       436879 :     case 10224:  /* *conflictv16si */
   15748       436879 :     case 9805:  /* *avx512f_vcvtph2ps512 */
   15749       436879 :     case 9803:  /* vcvtph2ps256 */
   15750       436879 :     case 9801:  /* *vcvtph2ps_load */
   15751       436879 :     case 9218:  /* aesimc */
   15752       436879 :     case 9191:  /* xop_frczv4df2 */
   15753       436879 :     case 9190:  /* xop_frczv8sf2 */
   15754       436879 :     case 9189:  /* xop_frczv2df2 */
   15755       436879 :     case 9188:  /* xop_frczv4sf2 */
   15756       436879 :     case 9187:  /* xop_frczdf2 */
   15757       436879 :     case 9186:  /* xop_frczsf2 */
   15758       436879 :     case 8875:  /* sse4_1_phminposuw */
   15759       436879 :     case 8842:  /* sse4_1_movntdqa */
   15760       436879 :     case 8841:  /* avx2_movntdqa */
   15761       436879 :     case 8840:  /* avx512f_movntdqa */
   15762       436879 :     case 8795:  /* sse4a_movntdf */
   15763       436879 :     case 8794:  /* sse4a_movntsf */
   15764       436879 :     case 8680:  /* sse2_pmovmskb */
   15765       436879 :     case 8679:  /* avx2_pmovmskb */
   15766       436879 :     case 8634:  /* sse2_movmskpd */
   15767       436879 :     case 8633:  /* avx_movmskpd256 */
   15768       436879 :     case 8632:  /* sse_movmskps */
   15769       436879 :     case 8631:  /* avx_movmskps256 */
   15770       436879 :     case 7141:  /* avx512vl_getexpv2df */
   15771       436879 :     case 7137:  /* avx512vl_getexpv4df */
   15772       436879 :     case 7133:  /* avx512f_getexpv8df */
   15773       436879 :     case 7129:  /* avx512vl_getexpv4sf */
   15774       436879 :     case 7125:  /* avx512vl_getexpv8sf */
   15775       436879 :     case 7121:  /* avx512f_getexpv16sf */
   15776       436879 :     case 7117:  /* avx512fp16_getexpv8hf */
   15777       436879 :     case 7113:  /* avx512vl_getexpv16hf */
   15778       436879 :     case 7109:  /* avx512bw_getexpv32hf */
   15779       436879 :     case 5265:  /* avx512vl_cvtq2maskv2di */
   15780       436879 :     case 5264:  /* avx512vl_cvtq2maskv4di */
   15781       436879 :     case 5263:  /* avx512f_cvtq2maskv8di */
   15782       436879 :     case 5262:  /* avx512vl_cvtd2maskv4si */
   15783       436879 :     case 5261:  /* avx512vl_cvtd2maskv8si */
   15784       436879 :     case 5260:  /* avx512f_cvtd2maskv16si */
   15785       436879 :     case 5259:  /* avx512vl_cvtw2maskv8hi */
   15786       436879 :     case 5258:  /* avx512vl_cvtw2maskv16hi */
   15787       436879 :     case 5257:  /* avx512bw_cvtw2maskv32hi */
   15788       436879 :     case 5256:  /* avx512vl_cvtb2maskv32qi */
   15789       436879 :     case 5255:  /* avx512vl_cvtb2maskv16qi */
   15790       436879 :     case 5254:  /* avx512bw_cvtb2maskv64qi */
   15791       436879 :     case 5221:  /* unspec_sse2_cvttpd2dq */
   15792       436879 :     case 5215:  /* *unspec_fixuns_truncv4sfv4si2 */
   15793       436879 :     case 5213:  /* *unspec_fixuns_truncv8sfv8si2 */
   15794       436879 :     case 5207:  /* unspec_avx512dq_fixuns_truncv2sfv2di2 */
   15795       436879 :     case 5205:  /* unspec_avx512dq_fix_truncv2sfv2di2 */
   15796       436879 :     case 5191:  /* unspec_fixuns_truncv4sfv4di2 */
   15797       436879 :     case 5189:  /* unspec_fix_truncv4sfv4di2 */
   15798       436879 :     case 5185:  /* unspec_fixuns_truncv8sfv8di2 */
   15799       436879 :     case 5181:  /* unspec_fix_truncv8sfv8di2 */
   15800       436879 :     case 5179:  /* fixuns_notruncv2dfv2di2 */
   15801       436879 :     case 5177:  /* fixuns_notruncv4dfv4di2 */
   15802       436879 :     case 5173:  /* fixuns_notruncv8dfv8di2 */
   15803       436879 :     case 5171:  /* fix_notruncv2dfv2di2 */
   15804       436879 :     case 5169:  /* fix_notruncv4dfv4di2 */
   15805       436879 :     case 5165:  /* fix_notruncv8dfv8di2 */
   15806       436879 :     case 5147:  /* unspec_fixuns_truncv2dfv2di2 */
   15807       436879 :     case 5145:  /* unspec_fix_truncv2dfv2di2 */
   15808       436879 :     case 5143:  /* unspec_fixuns_truncv4dfv4di2 */
   15809       436879 :     case 5141:  /* unspec_fix_truncv4dfv4di2 */
   15810       436879 :     case 5137:  /* unspec_fixuns_truncv8dfv8di2 */
   15811       436879 :     case 5133:  /* unspec_fix_truncv8dfv8di2 */
   15812       436879 :     case 5129:  /* unspec_fixuns_truncv4dfv4si2 */
   15813       436879 :     case 5125:  /* unspec_fix_truncv4dfv4si2 */
   15814       436879 :     case 5108:  /* unspec_fixuns_truncv8dfv8si2 */
   15815       436879 :     case 5104:  /* unspec_fix_truncv8dfv8si2 */
   15816       436879 :     case 5097:  /* fixuns_notruncv4dfv4si2 */
   15817       436879 :     case 5093:  /* fixuns_notruncv8dfv8si2 */
   15818       436879 :     case 5087:  /* avx_cvtpd2dq256 */
   15819       436879 :     case 5083:  /* avx512f_cvtpd2dq512 */
   15820       436879 :     case 5017:  /* unspec_sse2_cvttsd2siq */
   15821       436879 :     case 5015:  /* unspec_sse2_cvttsd2si */
   15822       436879 :     case 5013:  /* sse2_cvtsd2siq_2 */
   15823       436879 :     case 5012:  /* sse2_cvtsd2si_2 */
   15824       436879 :     case 4996:  /* unspec_avx512f_vcvttsd2usiq */
   15825       436879 :     case 4994:  /* unspec_avx512f_vcvttsd2usi */
   15826       436879 :     case 4978:  /* unspec_avx512f_vcvttss2usiq */
   15827       436879 :     case 4976:  /* unspec_avx512f_vcvttss2usi */
   15828       436879 :     case 4965:  /* unspec_fixuns_truncv2dfv2si2 */
   15829       436879 :     case 4963:  /* unspec_sse2_cvttpd2pi */
   15830       436879 :     case 4962:  /* sse2_cvtpd2pi */
   15831       436879 :     case 4956:  /* unspec_fix_truncv4sfv4si2 */
   15832       436879 :     case 4952:  /* unspec_fix_truncv8sfv8si2 */
   15833       436879 :     case 4940:  /* unspec_fixuns_truncv16sfv16si2 */
   15834       436879 :     case 4936:  /* unspec_fix_truncv16sfv16si2 */
   15835       436879 :     case 4932:  /* *avx512dq_cvtps2uqqv4di */
   15836       436879 :     case 4928:  /* *avx512dq_cvtps2uqqv8di */
   15837       436879 :     case 4924:  /* *avx512dq_cvtps2qqv4di */
   15838       436879 :     case 4920:  /* *avx512dq_cvtps2qqv8di */
   15839       436879 :     case 4916:  /* *avx512vl_fixuns_notruncv4sfv4si */
   15840       436879 :     case 4912:  /* *avx512vl_fixuns_notruncv8sfv8si */
   15841       436879 :     case 4908:  /* *avx512f_fixuns_notruncv16sfv16si */
   15842       436879 :     case 4904:  /* avx512f_fix_notruncv16sfv16si */
   15843       436879 :     case 4902:  /* sse2_fix_notruncv4sfv4si */
   15844       436879 :     case 4900:  /* avx_fix_notruncv8sfv8si */
   15845       436879 :     case 4863:  /* unspec_sse_cvttss2siq */
   15846       436879 :     case 4861:  /* unspec_sse_cvttss2si */
   15847       436879 :     case 4859:  /* sse_cvtss2siq_2 */
   15848       436879 :     case 4858:  /* sse_cvtss2si_2 */
   15849       436879 :     case 4846:  /* unspec_sse_cvttps2pi */
   15850       436879 :     case 4757:  /* unspec_avx512fp16_fixuns_truncdi2 */
   15851       436879 :     case 4755:  /* unspec_avx512fp16_fix_truncdi2 */
   15852       436879 :     case 4753:  /* unspec_avx512fp16_fixuns_truncsi2 */
   15853       436879 :     case 4751:  /* unspec_avx512fp16_fix_truncsi2 */
   15854       436879 :     case 4741:  /* unspec_avx512fp16_fixuns_truncv2di2 */
   15855       436879 :     case 4739:  /* unspec_avx512fp16_fix_truncv2di2 */
   15856       436879 :     case 4721:  /* unspec_avx512fp16_fixuns_truncv4di2 */
   15857       436879 :     case 4719:  /* unspec_avx512fp16_fix_truncv4di2 */
   15858       436879 :     case 4717:  /* unspec_avx512fp16_fixuns_truncv4si2 */
   15859       436879 :     case 4715:  /* unspec_avx512fp16_fix_truncv4si2 */
   15860       436879 :     case 4663:  /* unspec_avx512fp16_fixuns_truncv8di2 */
   15861       436879 :     case 4659:  /* unspec_avx512fp16_fix_truncv8di2 */
   15862       436879 :     case 4655:  /* unspec_avx512fp16_fixuns_truncv16si2 */
   15863       436879 :     case 4651:  /* unspec_avx512fp16_fix_truncv16si2 */
   15864       436879 :     case 4647:  /* unspec_avx512fp16_fixuns_truncv8si2 */
   15865       436879 :     case 4643:  /* unspec_avx512fp16_fix_truncv8si2 */
   15866       436879 :     case 4639:  /* unspec_avx512fp16_fixuns_truncv32hi2 */
   15867       436879 :     case 4635:  /* unspec_avx512fp16_fix_truncv32hi2 */
   15868       436879 :     case 4631:  /* unspec_avx512fp16_fixuns_truncv16hi2 */
   15869       436879 :     case 4627:  /* unspec_avx512fp16_fix_truncv16hi2 */
   15870       436879 :     case 4623:  /* unspec_avx512fp16_fixuns_truncv8hi2 */
   15871       436879 :     case 4619:  /* unspec_avx512fp16_fix_truncv8hi2 */
   15872       436879 :     case 4608:  /* avx512fp16_vcvtsh2siq_2 */
   15873       436879 :     case 4607:  /* avx512fp16_vcvtsh2usiq_2 */
   15874       436879 :     case 4606:  /* avx512fp16_vcvtsh2si_2 */
   15875       436879 :     case 4605:  /* avx512fp16_vcvtsh2usi_2 */
   15876       436879 :     case 4523:  /* avx512fp16_vcvtph2qq_v2di */
   15877       436879 :     case 4519:  /* avx512fp16_vcvtph2uqq_v2di */
   15878       436879 :     case 4515:  /* avx512fp16_vcvtph2dq_v4si */
   15879       436879 :     case 4511:  /* avx512fp16_vcvtph2udq_v4si */
   15880       436879 :     case 4507:  /* avx512fp16_vcvtph2w_v8hi */
   15881       436879 :     case 4503:  /* avx512fp16_vcvtph2uw_v8hi */
   15882       436879 :     case 4499:  /* avx512fp16_vcvtph2qq_v4di */
   15883       436879 :     case 4495:  /* avx512fp16_vcvtph2uqq_v4di */
   15884       436879 :     case 4491:  /* avx512fp16_vcvtph2dq_v8si */
   15885       436879 :     case 4487:  /* avx512fp16_vcvtph2udq_v8si */
   15886       436879 :     case 4483:  /* avx512fp16_vcvtph2w_v16hi */
   15887       436879 :     case 4479:  /* avx512fp16_vcvtph2uw_v16hi */
   15888       436879 :     case 4475:  /* avx512fp16_vcvtph2qq_v8di */
   15889       436879 :     case 4471:  /* avx512fp16_vcvtph2uqq_v8di */
   15890       436879 :     case 4467:  /* avx512fp16_vcvtph2dq_v16si */
   15891       436879 :     case 4463:  /* avx512fp16_vcvtph2udq_v16si */
   15892       436879 :     case 4459:  /* avx512fp16_vcvtph2w_v32hi */
   15893       436879 :     case 4455:  /* avx512fp16_vcvtph2uw_v32hi */
   15894       436879 :     case 3042:  /* *rsqrt14v2df */
   15895       436879 :     case 3040:  /* *rsqrt14v4df */
   15896       436879 :     case 3038:  /* *rsqrt14v8df */
   15897       436879 :     case 3036:  /* *rsqrt14v4sf */
   15898       436879 :     case 3034:  /* *rsqrt14v8sf */
   15899       436879 :     case 3032:  /* *rsqrt14v16sf */
   15900       436879 :     case 3030:  /* avx512fp16_rsqrtv8hf2 */
   15901       436879 :     case 3028:  /* avx512fp16_rsqrtv16hf2 */
   15902       436879 :     case 3026:  /* avx512fp16_rsqrtv32hf2 */
   15903       436879 :     case 3025:  /* sse_rsqrtv4sf2 */
   15904       436879 :     case 3024:  /* avx_rsqrtv8sf2 */
   15905       436879 :     case 2970:  /* *rcp14v2df */
   15906       436879 :     case 2968:  /* *rcp14v4df */
   15907       436879 :     case 2966:  /* *rcp14v8df */
   15908       436879 :     case 2964:  /* *rcp14v4sf */
   15909       436879 :     case 2962:  /* *rcp14v8sf */
   15910       436879 :     case 2960:  /* *rcp14v16sf */
   15911       436879 :     case 2955:  /* avx512fp16_rcpv8hf2 */
   15912       436879 :     case 2953:  /* avx512fp16_rcpv16hf2 */
   15913       436879 :     case 2951:  /* avx512fp16_rcpv32hf2 */
   15914       436879 :     case 2948:  /* sse_rcpv4sf2 */
   15915       436879 :     case 2947:  /* avx_rcpv8sf2 */
   15916       436879 :     case 2643:  /* sse2_movntv2di */
   15917       436879 :     case 2642:  /* avx_movntv4di */
   15918       436879 :     case 2641:  /* avx512f_movntv8di */
   15919       436879 :     case 2640:  /* sse2_movntv4si */
   15920       436879 :     case 2639:  /* avx_movntv8si */
   15921       436879 :     case 2638:  /* avx512f_movntv16si */
   15922       436879 :     case 2637:  /* sse2_movntv8hi */
   15923       436879 :     case 2636:  /* avx_movntv16hi */
   15924       436879 :     case 2635:  /* avx512f_movntv32hi */
   15925       436879 :     case 2634:  /* sse2_movntv16qi */
   15926       436879 :     case 2633:  /* avx_movntv32qi */
   15927       436879 :     case 2632:  /* avx512f_movntv64qi */
   15928       436879 :     case 2631:  /* sse2_movntv2df */
   15929       436879 :     case 2630:  /* avx_movntv4df */
   15930       436879 :     case 2629:  /* avx512f_movntv8df */
   15931       436879 :     case 2628:  /* sse_movntv4sf */
   15932       436879 :     case 2627:  /* avx_movntv8sf */
   15933       436879 :     case 2626:  /* avx512f_movntv16sf */
   15934       436879 :     case 2625:  /* sse2_movntidi */
   15935       436879 :     case 2624:  /* sse2_movntisi */
   15936       436879 :     case 2623:  /* sse3_lddqu */
   15937       436879 :     case 2622:  /* avx_lddqu256 */
   15938       436879 :     case 2559:  /* *avx512vl_loadv8bf */
   15939       436879 :     case 2558:  /* *avx512vl_loadv16bf */
   15940       436879 :     case 2557:  /* *avx512bw_loadv32bf */
   15941       436879 :     case 2556:  /* *avx512fp16_loadv8hf */
   15942       436879 :     case 2555:  /* *avx512vl_loadv16hf */
   15943       436879 :     case 2554:  /* *avx512bw_loadv32hf */
   15944       436879 :     case 2553:  /* *avx512vl_loadv8hi */
   15945       436879 :     case 2552:  /* *avx512vl_loadv16hi */
   15946       436879 :     case 2551:  /* *avx512bw_loadv32hi */
   15947       436879 :     case 2550:  /* *avx512vl_loadv32qi */
   15948       436879 :     case 2549:  /* *avx512vl_loadv16qi */
   15949       436879 :     case 2548:  /* *avx512bw_loadv64qi */
   15950       436879 :     case 2529:  /* *avx512vl_loadv2df */
   15951       436879 :     case 2528:  /* *avx512vl_loadv4df */
   15952       436879 :     case 2527:  /* *avx512f_loadv8df */
   15953       436879 :     case 2526:  /* *avx512vl_loadv4sf */
   15954       436879 :     case 2525:  /* *avx512vl_loadv8sf */
   15955       436879 :     case 2524:  /* *avx512f_loadv16sf */
   15956       436879 :     case 2523:  /* *avx512vl_loadv2di */
   15957       436879 :     case 2522:  /* *avx512vl_loadv4di */
   15958       436879 :     case 2521:  /* *avx512f_loadv8di */
   15959       436879 :     case 2520:  /* *avx512vl_loadv4si */
   15960       436879 :     case 2519:  /* *avx512vl_loadv8si */
   15961       436879 :     case 2518:  /* *avx512f_loadv16si */
   15962       436879 :     case 2441:  /* mmx_pmovmskb */
   15963       436879 :     case 2119:  /* mmx_rsqrtv2sf2 */
   15964       436879 :     case 2116:  /* mmx_rcpv2sf2 */
   15965       436879 :     case 2105:  /* sse_movntq */
   15966       436879 :     case 2072:  /* movrsdi */
   15967       436879 :     case 2071:  /* movrssi */
   15968       436879 :     case 2070:  /* movrshi */
   15969       436879 :     case 2069:  /* movrsqi */
   15970       436879 :     case 2065:  /* urdmsr */
   15971       436879 :     case 2041:  /* movdiridi */
   15972       436879 :     case 2040:  /* movdirisi */
   15973       436879 :     case 2011:  /* rdsspdi */
   15974       436879 :     case 2010:  /* rdsspsi */
   15975       436879 :     case 1979:  /* xgetbv */
   15976       436879 :     case 1962:  /* xsaves */
   15977       436879 :     case 1961:  /* xsavec */
   15978       436879 :     case 1960:  /* xsaveopt */
   15979       436879 :     case 1959:  /* xsave */
   15980       436879 :     case 1949:  /* rdpmc */
   15981       436879 :     case 1794:  /* movmsk_df */
   15982       436879 :     case 1793:  /* fxamxf2_i387 */
   15983       436879 :     case 1792:  /* fxamdf2_i387 */
   15984       436879 :     case 1791:  /* fxamsf2_i387 */
   15985       436879 :     case 1770:  /* lrintxfsi2 */
   15986       436879 :     case 1769:  /* lrintxfhi2 */
   15987       436879 :     case 1767:  /* rintxf2 */
   15988       436879 :     case 1760:  /* *f2xm1xf2_i387 */
   15989       436879 :     case 1753:  /* cosxf2 */
   15990       436879 :     case 1752:  /* sinxf2 */
   15991       436879 :     case 1745:  /* rsqrthf2 */
   15992       436879 :     case 1744:  /* *rsqrtsf2_sse */
   15993       436879 :     case 1742:  /* truncxfdf2_i387_noop_unspec */
   15994       436879 :     case 1741:  /* truncxfsf2_i387_noop_unspec */
   15995       436879 :     case 1716:  /* rcphf2 */
   15996       436879 :     case 1715:  /* *rcpsf2_sse */
   15997       436879 :     case 1703:  /* *tls_dynamic_gnu2_lea_64_di */
   15998       436879 :     case 1702:  /* *tls_dynamic_gnu2_lea_64_si */
   15999       436879 :     case 1598:  /* lzcnt_hi_nf */
   16000       436879 :     case 1596:  /* tzcnt_hi_nf */
   16001       436879 :     case 1583:  /* lzcnt_di_nf */
   16002       436879 :     case 1582:  /* tzcnt_di_nf */
   16003       436879 :     case 1581:  /* lzcnt_si_nf */
   16004       436879 :     case 1580:  /* tzcnt_si_nf */
   16005       436879 :     case 207:  /* extendbfsf2_1 */
   16006       436879 :     case 87:  /* popfldi1 */
   16007       436879 :     case 86:  /* popflsi1 */
   16008       436879 :     case 85:  /* pushfldi2 */
   16009       436879 :     case 84:  /* pushflsi2 */
   16010       436879 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   16011       436879 :       ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0));
   16012       436879 :       break;
   16013              : 
   16014     17280751 :     case 1481:  /* *setcc_si_1_and */
   16015     17280751 :     case 1480:  /* *setcc_hi_1_and */
   16016     17280751 :     case 166:  /* popp_di */
   16017     17280751 :     case 165:  /* pushp_di */
   16018     17280751 :     case 95:  /* *movdi_or */
   16019     17280751 :     case 94:  /* *movsi_or */
   16020     17280751 :     case 93:  /* *movhi_or */
   16021     17280751 :     case 92:  /* *movdi_and */
   16022     17280751 :     case 91:  /* *movsi_and */
   16023     17280751 :     case 90:  /* *movhi_and */
   16024     17280751 :     case 89:  /* *movdi_xor */
   16025     17280751 :     case 88:  /* *movsi_xor */
   16026     17280751 :     case 83:  /* *popdi1_epilogue */
   16027     17280751 :     case 82:  /* *popsi1_epilogue */
   16028     17280751 :     case 79:  /* *pushdi2_prologue */
   16029     17280751 :     case 78:  /* *pushsi2_prologue */
   16030     17280751 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0));
   16031     17280751 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1));
   16032     17280751 :       break;
   16033              : 
   16034   1483425074 :     case 10483:  /* *movp2hi_internal */
   16035   1483425074 :     case 10482:  /* *movp2qi_internal */
   16036   1483425074 :     case 5590:  /* *avx512vl_vpternlogv2df_0 */
   16037   1483425074 :     case 5589:  /* *avx512vl_vpternlogv4df_0 */
   16038   1483425074 :     case 5588:  /* *avx512f_vpternlogv8df_0 */
   16039   1483425074 :     case 5587:  /* *avx512vl_vpternlogv4sf_0 */
   16040   1483425074 :     case 5586:  /* *avx512vl_vpternlogv8sf_0 */
   16041   1483425074 :     case 5585:  /* *avx512f_vpternlogv16sf_0 */
   16042   1483425074 :     case 5584:  /* *avx512vl_vpternlogv8bf_0 */
   16043   1483425074 :     case 5583:  /* *avx512vl_vpternlogv16bf_0 */
   16044   1483425074 :     case 5582:  /* *avx512bw_vpternlogv32bf_0 */
   16045   1483425074 :     case 5581:  /* *avx512fp16_vpternlogv8hf_0 */
   16046   1483425074 :     case 5580:  /* *avx512vl_vpternlogv16hf_0 */
   16047   1483425074 :     case 5579:  /* *avx512bw_vpternlogv32hf_0 */
   16048   1483425074 :     case 5578:  /* *avx512vl_vpternlogv2di_0 */
   16049   1483425074 :     case 5577:  /* *avx512vl_vpternlogv4di_0 */
   16050   1483425074 :     case 5576:  /* *avx512f_vpternlogv8di_0 */
   16051   1483425074 :     case 5575:  /* *avx512vl_vpternlogv4si_0 */
   16052   1483425074 :     case 5574:  /* *avx512vl_vpternlogv8si_0 */
   16053   1483425074 :     case 5573:  /* *avx512f_vpternlogv16si_0 */
   16054   1483425074 :     case 5572:  /* *avx512vl_vpternlogv8hi_0 */
   16055   1483425074 :     case 5571:  /* *avx512vl_vpternlogv16hi_0 */
   16056   1483425074 :     case 5570:  /* *avx512bw_vpternlogv32hi_0 */
   16057   1483425074 :     case 5569:  /* *avx512vl_vpternlogv16qi_0 */
   16058   1483425074 :     case 5568:  /* *avx512vl_vpternlogv32qi_0 */
   16059   1483425074 :     case 5567:  /* *avx512bw_vpternlogv64qi_0 */
   16060   1483425074 :     case 2478:  /* movv2df_internal */
   16061   1483425074 :     case 2477:  /* movv4df_internal */
   16062   1483425074 :     case 2476:  /* movv8df_internal */
   16063   1483425074 :     case 2475:  /* movv4sf_internal */
   16064   1483425074 :     case 2474:  /* movv8sf_internal */
   16065   1483425074 :     case 2473:  /* movv16sf_internal */
   16066   1483425074 :     case 2472:  /* movv8bf_internal */
   16067   1483425074 :     case 2471:  /* movv16bf_internal */
   16068   1483425074 :     case 2470:  /* movv32bf_internal */
   16069   1483425074 :     case 2469:  /* movv8hf_internal */
   16070   1483425074 :     case 2468:  /* movv16hf_internal */
   16071   1483425074 :     case 2467:  /* movv32hf_internal */
   16072   1483425074 :     case 2466:  /* movv1ti_internal */
   16073   1483425074 :     case 2465:  /* movv2ti_internal */
   16074   1483425074 :     case 2464:  /* movv4ti_internal */
   16075   1483425074 :     case 2463:  /* movv2di_internal */
   16076   1483425074 :     case 2462:  /* movv4di_internal */
   16077   1483425074 :     case 2461:  /* movv8di_internal */
   16078   1483425074 :     case 2460:  /* movv4si_internal */
   16079   1483425074 :     case 2459:  /* movv8si_internal */
   16080   1483425074 :     case 2458:  /* movv16si_internal */
   16081   1483425074 :     case 2457:  /* movv8hi_internal */
   16082   1483425074 :     case 2456:  /* movv16hi_internal */
   16083   1483425074 :     case 2455:  /* movv32hi_internal */
   16084   1483425074 :     case 2454:  /* movv16qi_internal */
   16085   1483425074 :     case 2453:  /* movv32qi_internal */
   16086   1483425074 :     case 2452:  /* movv64qi_internal */
   16087   1483425074 :     case 2104:  /* *pushv2qi2 */
   16088   1483425074 :     case 2103:  /* *movv1di_imm */
   16089   1483425074 :     case 2102:  /* *movv2sf_imm */
   16090   1483425074 :     case 2101:  /* *movv2si_imm */
   16091   1483425074 :     case 2100:  /* *movv4bf_imm */
   16092   1483425074 :     case 2099:  /* *movv4hf_imm */
   16093   1483425074 :     case 2098:  /* *movv4hi_imm */
   16094   1483425074 :     case 2097:  /* *movv8qi_imm */
   16095   1483425074 :     case 2096:  /* *movv2bf_imm */
   16096   1483425074 :     case 2095:  /* *movv2hf_imm */
   16097   1483425074 :     case 2094:  /* *movv1si_imm */
   16098   1483425074 :     case 2093:  /* *movv2hi_imm */
   16099   1483425074 :     case 2092:  /* *movv4qi_imm */
   16100   1483425074 :     case 2091:  /* *movv2qi_imm */
   16101   1483425074 :     case 2090:  /* *movv2qi_internal */
   16102   1483425074 :     case 2089:  /* *pushv2bf2_rex64 */
   16103   1483425074 :     case 2088:  /* *pushv2hf2_rex64 */
   16104   1483425074 :     case 2087:  /* *pushv1si2_rex64 */
   16105   1483425074 :     case 2086:  /* *pushv2hi2_rex64 */
   16106   1483425074 :     case 2085:  /* *pushv4qi2_rex64 */
   16107   1483425074 :     case 2084:  /* *movv2bf_internal */
   16108   1483425074 :     case 2083:  /* *movv2hf_internal */
   16109   1483425074 :     case 2082:  /* *movv1si_internal */
   16110   1483425074 :     case 2081:  /* *movv2hi_internal */
   16111   1483425074 :     case 2080:  /* *movv4qi_internal */
   16112   1483425074 :     case 2079:  /* *movv4bf_internal */
   16113   1483425074 :     case 2078:  /* *movv4hf_internal */
   16114   1483425074 :     case 2077:  /* *movv2sf_internal */
   16115   1483425074 :     case 2076:  /* *movv1di_internal */
   16116   1483425074 :     case 2075:  /* *movv2si_internal */
   16117   1483425074 :     case 2074:  /* *movv4hi_internal */
   16118   1483425074 :     case 2073:  /* *movv8qi_internal */
   16119   1483425074 :     case 1942:  /* *prefetch_3dnow */
   16120   1483425074 :     case 1484:  /* *setcc_qi */
   16121   1483425074 :     case 1483:  /* *setcc_si_1_movzbl */
   16122   1483425074 :     case 1482:  /* *setcc_hi_1_movzbl */
   16123   1483425074 :     case 1479:  /* *setcc_di_1 */
   16124   1483425074 :     case 1478:  /* *setcc_di_zu */
   16125   1483425074 :     case 1477:  /* *setcc_si_zu */
   16126   1483425074 :     case 1476:  /* *setcc_hi_zu */
   16127   1483425074 :     case 269:  /* *leadi */
   16128   1483425074 :     case 268:  /* *leasi */
   16129   1483425074 :     case 176:  /* *movbf_internal */
   16130   1483425074 :     case 175:  /* *movhf_internal */
   16131   1483425074 :     case 174:  /* *movsf_internal */
   16132   1483425074 :     case 173:  /* *movdf_internal */
   16133   1483425074 :     case 172:  /* *movxf_internal */
   16134   1483425074 :     case 171:  /* *movtf_internal */
   16135   1483425074 :     case 170:  /* *pushsf */
   16136   1483425074 :     case 169:  /* *pushsf_rex64 */
   16137   1483425074 :     case 162:  /* *pushbf */
   16138   1483425074 :     case 161:  /* *pushhf */
   16139   1483425074 :     case 160:  /* *pushbf_rex64 */
   16140   1483425074 :     case 159:  /* *pushhf_rex64 */
   16141   1483425074 :     case 158:  /* *pushdf */
   16142   1483425074 :     case 157:  /* *pushxf */
   16143   1483425074 :     case 156:  /* *pushtf */
   16144   1483425074 :     case 102:  /* *movqi_internal */
   16145   1483425074 :     case 101:  /* *movhi_internal */
   16146   1483425074 :     case 100:  /* *movsi_internal */
   16147   1483425074 :     case 99:  /* *movdi_internal */
   16148   1483425074 :     case 98:  /* *movti_internal */
   16149   1483425074 :     case 97:  /* *movoi_internal_avx */
   16150   1483425074 :     case 96:  /* *movxi_internal_avx512f */
   16151   1483425074 :     case 81:  /* *popdi1 */
   16152   1483425074 :     case 80:  /* *popsi1 */
   16153   1483425074 :     case 77:  /* *pushhi2 */
   16154   1483425074 :     case 76:  /* *pushqi2 */
   16155   1483425074 :     case 75:  /* *pushsi2 */
   16156   1483425074 :     case 74:  /* *pushsi2_rex64 */
   16157   1483425074 :     case 73:  /* *pushdi2_rex64 */
   16158   1483425074 :     case 72:  /* *pushti2 */
   16159   1483425074 :     case 71:  /* *pushdi2 */
   16160   1483425074 :     case 70:  /* *pushv1ti2 */
   16161   1483425074 :     case 69:  /* *pushv1ti2 */
   16162   1483425074 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   16163   1483425074 :       ro[1] = *(ro_loc[1] = &XEXP (pat, 1));
   16164   1483425074 :       break;
   16165              : 
   16166              :     case 9222:  /* avx_vzeroupper_callee_abi */
   16167              :     case 2445:  /* *mmx_femms */
   16168              :     case 2444:  /* *mmx_emms */
   16169              :     case 2062:  /* serialize */
   16170              :     case 2061:  /* speculation_barrier */
   16171              :     case 2052:  /* testui */
   16172              :     case 2051:  /* stui */
   16173              :     case 2050:  /* clui */
   16174              :     case 2045:  /* xresldtrk */
   16175              :     case 2044:  /* xsusldtrk */
   16176              :     case 2039:  /* wbnoinvd */
   16177              :     case 2038:  /* wbinvd */
   16178              :     case 2026:  /* xtest_1 */
   16179              :     case 2024:  /* xend */
   16180              :     case 2022:  /* nop_endbr */
   16181              :     case 2020:  /* setssbsy */
   16182              :     case 2014:  /* saveprevssp */
   16183              :     case 1984:  /* fnclex */
   16184              :     case 1940:  /* ud2 */
   16185              :     case 1939:  /* trap */
   16186              :     case 1795:  /* cld */
   16187              :     case 1537:  /* *leave_rex64 */
   16188              :     case 1536:  /* *leave */
   16189              :     case 1535:  /* eh_return_internal */
   16190              :     case 1527:  /* nop */
   16191              :     case 1523:  /* simple_return_internal_long */
   16192              :     case 1522:  /* interrupt_return */
   16193              :     case 1521:  /* simple_return_internal */
   16194              :     case 1518:  /* blockage */
   16195              :     case 561:  /* *setcc_qi_negqi_ccc_2_ccc */
   16196              :     case 560:  /* *setcc_qi_negqi_ccc_2_cc */
   16197              :     case 559:  /* *setcc_qi_negqi_ccc_1_ccc */
   16198              :     case 558:  /* *setcc_qi_negqi_ccc_1_cc */
   16199              :     case 557:  /* *setccc */
   16200              :     case 556:  /* *setcc_qi_addqi3_cconly_overflow_1_ccc */
   16201              :     case 555:  /* *setcc_qi_addqi3_cconly_overflow_1_cc */
   16202              :     case 68:  /* *x86_cmc */
   16203              :     case 67:  /* x86_stc */
   16204              :       break;
   16205              : 
   16206        17714 :     case 59:  /* *cmpxuhf */
   16207        17714 :     case 57:  /* *cmpxudf */
   16208        17714 :     case 55:  /* *cmpxusf */
   16209        17714 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0));
   16210        17714 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 1));
   16211        17714 :       break;
   16212              : 
   16213      6555250 :     case 65:  /* *cmpiuhf */
   16214      6555250 :     case 63:  /* *cmpiudf */
   16215      6555250 :     case 61:  /* *cmpiusf */
   16216      6555250 :     case 58:  /* *cmpxhf */
   16217      6555250 :     case 56:  /* *cmpxdf */
   16218      6555250 :     case 54:  /* *cmpxsf */
   16219      6555250 :     case 53:  /* *cmpiuxf_i387 */
   16220      6555250 :       ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
   16221      6555250 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
   16222      6555250 :       break;
   16223              : 
   16224         1054 :     case 11266:  /* tilezero */
   16225         1054 :     case 1683:  /* parityqi2_cmp */
   16226         1054 :     case 51:  /* x86_sahf_1 */
   16227         1054 :       ro[0] = *(ro_loc[0] = &XVECEXP (XEXP (pat, 1), 0, 0));
   16228         1054 :       break;
   16229              : 
   16230            0 :     case 50:  /* *cmpuxf_i387 */
   16231            0 :     case 49:  /* *cmpudf_i387 */
   16232            0 :     case 48:  /* *cmpusf_i387 */
   16233            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   16234            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 0));
   16235            0 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0, 0), 1));
   16236            0 :       break;
   16237              : 
   16238            0 :     case 47:  /* *cmpxf_si_i387 */
   16239            0 :     case 46:  /* *cmpdf_si_i387 */
   16240            0 :     case 45:  /* *cmpsf_si_i387 */
   16241            0 :     case 44:  /* *cmpxf_hi_i387 */
   16242            0 :     case 43:  /* *cmpdf_hi_i387 */
   16243            0 :     case 42:  /* *cmpsf_hi_i387 */
   16244            0 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   16245            0 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
   16246            0 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1), 0));
   16247            0 :       break;
   16248              : 
   16249           82 :     case 8686:  /* *sse2_pmovmskb_lt */
   16250           82 :     case 8685:  /* *avx2_pmovmskb_lt */
   16251           82 :     case 8646:  /* *sse2_movmskpd_lt */
   16252           82 :     case 8645:  /* *avx_movmskpd256_lt */
   16253           82 :     case 8644:  /* *sse_movmskps_lt */
   16254           82 :     case 8643:  /* *avx_movmskps256_lt */
   16255           82 :     case 41:  /* *cmpdf_i387 */
   16256           82 :     case 40:  /* *cmpsf_i387 */
   16257           82 :     case 39:  /* *cmpxf_i387 */
   16258           82 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   16259           82 :       ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0));
   16260           82 :       ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 1));
   16261           82 :       break;
   16262              : 
   16263          808 :     case 36:  /* *cmpqi_extdi_4 */
   16264          808 :     case 35:  /* *cmpqi_extsi_4 */
   16265          808 :     case 34:  /* *cmpqi_exthi_4 */
   16266          808 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   16267          808 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
   16268          808 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   16269          808 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   16270          808 :       break;
   16271              : 
   16272         6526 :     case 33:  /* *cmpqi_extdi_3 */
   16273         6526 :     case 32:  /* *cmpqi_extsi_3 */
   16274         6526 :     case 31:  /* *cmpqi_exthi_3 */
   16275         6526 :     case 30:  /* *cmpqi_extdi_2 */
   16276         6526 :     case 29:  /* *cmpqi_extsi_2 */
   16277         6526 :     case 28:  /* *cmpqi_exthi_2 */
   16278         6526 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 0), 0), 0));
   16279         6526 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
   16280         6526 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   16281         6526 :       break;
   16282              : 
   16283           59 :     case 27:  /* *cmpqi_extdi_1 */
   16284           59 :     case 26:  /* *cmpqi_extsi_1 */
   16285           59 :     case 25:  /* *cmpqi_exthi_1 */
   16286           59 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0));
   16287           59 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
   16288           59 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0));
   16289           59 :       break;
   16290              : 
   16291      2430602 :     case 723:  /* *testti_doubleword */
   16292      2430602 :     case 716:  /* *testsi_1 */
   16293      2430602 :     case 715:  /* *testhi_1 */
   16294      2430602 :     case 714:  /* *testqi_1 */
   16295      2430602 :     case 713:  /* *testqi_1_maybe_si */
   16296      2430602 :     case 712:  /* *testdi_1 */
   16297      2430602 :     case 24:  /* *cmpdi_plus_1 */
   16298      2430602 :     case 23:  /* *cmpsi_plus_1 */
   16299      2430602 :     case 22:  /* *cmphi_plus_1 */
   16300      2430602 :     case 21:  /* *cmpqi_plus_1 */
   16301      2430602 :     case 20:  /* *cmpdi_minus_1 */
   16302      2430602 :     case 19:  /* *cmpsi_minus_1 */
   16303      2430602 :     case 18:  /* *cmphi_minus_1 */
   16304      2430602 :     case 17:  /* *cmpqi_minus_1 */
   16305      2430602 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 0), 0));
   16306      2430602 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 1));
   16307      2430602 :       break;
   16308              : 
   16309    139193376 :     case 66:  /* *cmpibf */
   16310    139193376 :     case 64:  /* *cmpihf */
   16311    139193376 :     case 62:  /* *cmpidf */
   16312    139193376 :     case 60:  /* *cmpisf */
   16313    139193376 :     case 52:  /* *cmpixf_i387 */
   16314    139193376 :     case 38:  /* *cmpti_doubleword */
   16315    139193376 :     case 37:  /* *cmpdi_doubleword */
   16316    139193376 :     case 16:  /* *cmpdi_1 */
   16317    139193376 :     case 15:  /* *cmpsi_1 */
   16318    139193376 :     case 14:  /* *cmphi_1 */
   16319    139193376 :     case 13:  /* *cmpqi_1 */
   16320    139193376 :     case 12:  /* *cmpdi_ccno_1 */
   16321    139193376 :     case 11:  /* *cmpsi_ccno_1 */
   16322    139193376 :     case 10:  /* *cmphi_ccno_1 */
   16323    139193376 :     case 9:  /* *cmpqi_ccno_1 */
   16324    139193376 :     case 8:  /* *cmpdi_ccz_1 */
   16325    139193376 :     case 7:  /* *cmpsi_ccz_1 */
   16326    139193376 :     case 6:  /* *cmphi_ccz_1 */
   16327    139193376 :     case 5:  /* *cmpqi_ccz_1 */
   16328    139193376 :       ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0));
   16329    139193376 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1));
   16330    139193376 :       break;
   16331              : 
   16332          483 :     case 4:  /* ccmpdi */
   16333          483 :     case 3:  /* ccmpsi */
   16334          483 :     case 2:  /* ccmphi */
   16335          483 :     case 1:  /* ccmpqi */
   16336          483 :       ro[0] = *(ro_loc[0] = &XEXP (pat, 0));
   16337          483 :       ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0));
   16338          483 :       ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 0));
   16339          483 :       ro[3] = *(ro_loc[3] = &XEXP (XEXP (XEXP (XEXP (pat, 1), 1), 0), 1));
   16340          483 :       ro[4] = *(ro_loc[4] = &XVECEXP (XEXP (XEXP (pat, 1), 2), 0, 0));
   16341          483 :       break;
   16342              : 
   16343              :     }
   16344   2292030181 : }
        

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.