Home | History | Annotate | Download | only in opcodes
      1 /* Instruction opcode table for mep.
      2 
      3 THIS FILE IS MACHINE GENERATED WITH CGEN.
      4 
      5 Copyright (C) 1996-2016 Free Software Foundation, Inc.
      6 
      7 This file is part of the GNU Binutils and/or GDB, the GNU debugger.
      8 
      9    This file is free software; you can redistribute it and/or modify
     10    it under the terms of the GNU General Public License as published by
     11    the Free Software Foundation; either version 3, or (at your option)
     12    any later version.
     13 
     14    It is distributed in the hope that it will be useful, but WITHOUT
     15    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
     16    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
     17    License for more details.
     18 
     19    You should have received a copy of the GNU General Public License along
     20    with this program; if not, write to the Free Software Foundation, Inc.,
     21    51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
     22 
     23 */
     24 
     25 #include "sysdep.h"
     26 #include "ansidecl.h"
     27 #include "bfd.h"
     28 #include "symcat.h"
     29 #include "mep-desc.h"
     30 #include "mep-opc.h"
     31 #include "libiberty.h"
     32 
     33 /* -- opc.c */
     34 #include "elf/mep.h"
     35 
     36 /* A mask for all ISAs executed by the core. */
     37 CGEN_ATTR_VALUE_BITSET_TYPE mep_all_core_isas_mask = {0, 0};
     38 
     39 void
     40 init_mep_all_core_isas_mask (void)
     41 {
     42   if (mep_all_core_isas_mask.length != 0)
     43     return;
     44   cgen_bitset_init (& mep_all_core_isas_mask, ISA_MAX);
     45   cgen_bitset_set (& mep_all_core_isas_mask, ISA_MEP);
     46   /* begin-all-core-isas */
     47   cgen_bitset_add (& mep_all_core_isas_mask, ISA_EXT_CORE1);
     48   /* end-all-core-isas */
     49 }
     50 
     51 CGEN_ATTR_VALUE_BITSET_TYPE mep_all_cop_isas_mask = {0, 0};
     52 
     53 void
     54 init_mep_all_cop_isas_mask (void)
     55 {
     56   if (mep_all_cop_isas_mask.length != 0)
     57     return;
     58   cgen_bitset_init (& mep_all_cop_isas_mask, ISA_MAX);
     59   /* begin-all-cop-isas */
     60   cgen_bitset_add (& mep_all_cop_isas_mask, ISA_EXT_COP1_16);
     61   cgen_bitset_add (& mep_all_cop_isas_mask, ISA_EXT_COP1_32);
     62   cgen_bitset_add (& mep_all_cop_isas_mask, ISA_EXT_COP1_48);
     63   cgen_bitset_add (& mep_all_cop_isas_mask, ISA_EXT_COP1_64);
     64   /* end-all-cop-isas */
     65 }
     66 
     67 int
     68 mep_insn_supported_by_isa (const CGEN_INSN *insn, CGEN_ATTR_VALUE_BITSET_TYPE *isa_mask)
     69 {
     70   CGEN_BITSET insn_isas = CGEN_INSN_BITSET_ATTR_VALUE (insn, CGEN_INSN_ISA);
     71   return cgen_bitset_intersect_p (& insn_isas, isa_mask);
     72 }
     73 
     74 #define OPTION_MASK \
     75 	( (1 << CGEN_INSN_OPTIONAL_BIT_INSN) \
     76 	| (1 << CGEN_INSN_OPTIONAL_MUL_INSN) \
     77 	| (1 << CGEN_INSN_OPTIONAL_DIV_INSN) \
     78 	| (1 << CGEN_INSN_OPTIONAL_DEBUG_INSN) \
     79 	| (1 << CGEN_INSN_OPTIONAL_LDZ_INSN) \
     80 	| (1 << CGEN_INSN_OPTIONAL_ABS_INSN) \
     81 	| (1 << CGEN_INSN_OPTIONAL_AVE_INSN) \
     82 	| (1 << CGEN_INSN_OPTIONAL_MINMAX_INSN) \
     83 	| (1 << CGEN_INSN_OPTIONAL_CLIP_INSN) \
     84 	| (1 << CGEN_INSN_OPTIONAL_SAT_INSN) \
     85 	| (1 << CGEN_INSN_OPTIONAL_UCI_INSN) \
     86 	| (1 << CGEN_INSN_OPTIONAL_DSP_INSN) \
     87 	| (1 << CGEN_INSN_OPTIONAL_CP_INSN) \
     88 	| (1 << CGEN_INSN_OPTIONAL_CP64_INSN) )
     89 
     90 
     91 mep_config_map_struct mep_config_map[] =
     92 {
     93   /* config-map-start */
     94   /* Default entry: first module, with all options enabled. */
     95   { "", 0,  EF_MEP_COP_IVC2 | EF_MEP_CPU_C5,0, 64, { 1, "\x20" }, { 1, "\x10" }, { 1, "\x8" }, { 1, "\x4" }, { 1, "\x3c" }, { 1, "\xc0" }, OPTION_MASK | (1 << CGEN_INSN_OPTIONAL_DSP_INSN) | (1 << CGEN_INSN_OPTIONAL_UCI_INSN) },
     96   { "default", CONFIG_DEFAULT, EF_MEP_COP_IVC2 | EF_MEP_CPU_C5, 0, 64, { 1, "\x20" }, { 1, "\x10" }, { 1, "\x8" }, { 1, "\x4" }, { 1, "\x3c" }, { 1, "\xc0" },
     97 	  0
     98 	| (1 << CGEN_INSN_OPTIONAL_CP_INSN)
     99 	| (1 << CGEN_INSN_OPTIONAL_CP64_INSN)
    100 	| (1 << CGEN_INSN_OPTIONAL_MUL_INSN)
    101 	| (1 << CGEN_INSN_OPTIONAL_DIV_INSN)
    102 	| (1 << CGEN_INSN_OPTIONAL_BIT_INSN)
    103 	| (1 << CGEN_INSN_OPTIONAL_LDZ_INSN)
    104 	| (1 << CGEN_INSN_OPTIONAL_ABS_INSN)
    105 	| (1 << CGEN_INSN_OPTIONAL_AVE_INSN)
    106 	| (1 << CGEN_INSN_OPTIONAL_MINMAX_INSN)
    107 	| (1 << CGEN_INSN_OPTIONAL_CLIP_INSN)
    108 	| (1 << CGEN_INSN_OPTIONAL_SAT_INSN) },
    109   /* config-map-end */
    110   { 0, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, 0 }
    111 };
    112 
    113 int mep_config_index = 0;
    114 
    115 static int
    116 check_configured_mach (int machs)
    117 {
    118   /* All base insns are supported.  */
    119   int mach = 1 << MACH_BASE;
    120   switch (MEP_CPU & EF_MEP_CPU_MASK)
    121     {
    122     case EF_MEP_CPU_C2:
    123     case EF_MEP_CPU_C3:
    124       mach |= (1 << MACH_MEP);
    125       break;
    126     case EF_MEP_CPU_H1:
    127       mach |= (1 << MACH_H1);
    128       break;
    129     case EF_MEP_CPU_C5:
    130       mach |= (1 << MACH_MEP);
    131       mach |= (1 << MACH_C5);
    132       break;
    133     default:
    134       break;
    135     }
    136   return machs & mach;
    137 }
    138 
    139 int
    140 mep_cgen_insn_supported (CGEN_CPU_DESC cd, const CGEN_INSN *insn)
    141 {
    142   int iconfig = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_CONFIG);
    143   int machs = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_MACH);
    144   CGEN_BITSET isas = CGEN_INSN_BITSET_ATTR_VALUE (insn, CGEN_INSN_ISA);
    145   int ok1;
    146   int ok2;
    147   int ok3;
    148 
    149   /* If the insn has an option bit set that we don't want,
    150      reject it.  */
    151   if (CGEN_INSN_ATTRS (insn)->bool_ & OPTION_MASK & ~MEP_OMASK)
    152     return 0;
    153 
    154   /* If attributes are absent, assume no restriction. */
    155   if (machs == 0)
    156     machs = ~0;
    157 
    158   ok1 = ((machs & cd->machs) && cgen_bitset_intersect_p (& isas, cd->isas));
    159   /* If the insn is config-specific, make sure it matches.  */
    160   ok2 =  (iconfig == 0 || iconfig == MEP_CONFIG);
    161   /* Make sure the insn is supported by the configured mach  */
    162   ok3 = check_configured_mach (machs);
    163 
    164   return (ok1 && ok2 && ok3);
    165 }
    166 
    167 int
    168 mep_cgen_insn_supported_asm (CGEN_CPU_DESC cd, const CGEN_INSN *insn)
    169 {
    170 #ifdef MEP_IVC2_SUPPORTED
    171   /* If we're assembling VLIW packets, ignore the 12-bit BSR as we
    172      can't relax that.  The 24-bit BSR is matched instead.  */
    173   if (insn->base->num == MEP_INSN_BSR12
    174       && cgen_bitset_contains (cd->isas, ISA_EXT_COP1_64))
    175     return 0;
    176 #endif
    177 
    178   return mep_cgen_insn_supported (cd, insn);
    179 }
    180 /* The hash functions are recorded here to help keep assembler code out of
    181    the disassembler and vice versa.  */
    182 
    183 static int asm_hash_insn_p        (const CGEN_INSN *);
    184 static unsigned int asm_hash_insn (const char *);
    185 static int dis_hash_insn_p        (const CGEN_INSN *);
    186 static unsigned int dis_hash_insn (const char *, CGEN_INSN_INT);
    187 
    188 /* Instruction formats.  */
    189 
    190 #define F(f) & mep_cgen_ifld_table[MEP_##f]
    191 static const CGEN_IFMT ifmt_empty ATTRIBUTE_UNUSED = {
    192   0, 0, 0x0, { { 0 } }
    193 };
    194 
    195 static const CGEN_IFMT ifmt_stcb_r ATTRIBUTE_UNUSED = {
    196   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    197 };
    198 
    199 static const CGEN_IFMT ifmt_pref ATTRIBUTE_UNUSED = {
    200   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    201 };
    202 
    203 static const CGEN_IFMT ifmt_prefd ATTRIBUTE_UNUSED = {
    204   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    205 };
    206 
    207 static const CGEN_IFMT ifmt_casb3 ATTRIBUTE_UNUSED = {
    208   32, 32, 0xf00ff0ff, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_C5N4) }, { F (F_RL5) }, { F (F_C5N6) }, { F (F_C5N7) }, { 0 } }
    209 };
    210 
    211 static const CGEN_IFMT ifmt_sbcp ATTRIBUTE_UNUSED = {
    212   32, 32, 0xf00ff000, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_EXT4) }, { F (F_12S20) }, { 0 } }
    213 };
    214 
    215 static const CGEN_IFMT ifmt_lbucpa ATTRIBUTE_UNUSED = {
    216   32, 32, 0xf00ffc00, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_EXT4) }, { F (F_EXT62) }, { F (F_CDISP10) }, { 0 } }
    217 };
    218 
    219 static const CGEN_IFMT ifmt_lhucpa ATTRIBUTE_UNUSED = {
    220   32, 32, 0xf00ffc00, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_EXT4) }, { F (F_EXT62) }, { F (F_CDISP10) }, { 0 } }
    221 };
    222 
    223 static const CGEN_IFMT ifmt_uci ATTRIBUTE_UNUSED = {
    224   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    225 };
    226 
    227 static const CGEN_IFMT ifmt_dsp ATTRIBUTE_UNUSED = {
    228   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16U16) }, { 0 } }
    229 };
    230 
    231 static const CGEN_IFMT ifmt_dsp0 ATTRIBUTE_UNUSED = {
    232   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_C5_RNMUIMM24) }, { F (F_SUB4) }, { 0 } }
    233 };
    234 
    235 static const CGEN_IFMT ifmt_dsp1 ATTRIBUTE_UNUSED = {
    236   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_C5_RMUIMM20) }, { F (F_SUB4) }, { 0 } }
    237 };
    238 
    239 static const CGEN_IFMT ifmt_sb ATTRIBUTE_UNUSED = {
    240   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    241 };
    242 
    243 static const CGEN_IFMT ifmt_sh ATTRIBUTE_UNUSED = {
    244   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    245 };
    246 
    247 static const CGEN_IFMT ifmt_sw ATTRIBUTE_UNUSED = {
    248   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    249 };
    250 
    251 static const CGEN_IFMT ifmt_lbu ATTRIBUTE_UNUSED = {
    252   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    253 };
    254 
    255 static const CGEN_IFMT ifmt_lhu ATTRIBUTE_UNUSED = {
    256   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    257 };
    258 
    259 static const CGEN_IFMT ifmt_sw_sp ATTRIBUTE_UNUSED = {
    260   16, 16, 0xf083, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_8) }, { F (F_7U9A4) }, { F (F_SUB2) }, { 0 } }
    261 };
    262 
    263 static const CGEN_IFMT ifmt_sb_tp ATTRIBUTE_UNUSED = {
    264   16, 16, 0xf880, { { F (F_MAJOR) }, { F (F_4) }, { F (F_RN3) }, { F (F_8) }, { F (F_7U9) }, { 0 } }
    265 };
    266 
    267 static const CGEN_IFMT ifmt_sh_tp ATTRIBUTE_UNUSED = {
    268   16, 16, 0xf881, { { F (F_MAJOR) }, { F (F_4) }, { F (F_RN3) }, { F (F_8) }, { F (F_7U9A2) }, { F (F_15) }, { 0 } }
    269 };
    270 
    271 static const CGEN_IFMT ifmt_sw_tp ATTRIBUTE_UNUSED = {
    272   16, 16, 0xf883, { { F (F_MAJOR) }, { F (F_4) }, { F (F_RN3) }, { F (F_8) }, { F (F_7U9A4) }, { F (F_SUB2) }, { 0 } }
    273 };
    274 
    275 static const CGEN_IFMT ifmt_lbu_tp ATTRIBUTE_UNUSED = {
    276   16, 16, 0xf880, { { F (F_MAJOR) }, { F (F_4) }, { F (F_RN3) }, { F (F_8) }, { F (F_7U9) }, { 0 } }
    277 };
    278 
    279 static const CGEN_IFMT ifmt_lhu_tp ATTRIBUTE_UNUSED = {
    280   16, 16, 0xf881, { { F (F_MAJOR) }, { F (F_4) }, { F (F_RN3) }, { F (F_8) }, { F (F_7U9A2) }, { F (F_15) }, { 0 } }
    281 };
    282 
    283 static const CGEN_IFMT ifmt_sb16 ATTRIBUTE_UNUSED = {
    284   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    285 };
    286 
    287 static const CGEN_IFMT ifmt_sh16 ATTRIBUTE_UNUSED = {
    288   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    289 };
    290 
    291 static const CGEN_IFMT ifmt_sw16 ATTRIBUTE_UNUSED = {
    292   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    293 };
    294 
    295 static const CGEN_IFMT ifmt_lbu16 ATTRIBUTE_UNUSED = {
    296   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    297 };
    298 
    299 static const CGEN_IFMT ifmt_lhu16 ATTRIBUTE_UNUSED = {
    300   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    301 };
    302 
    303 static const CGEN_IFMT ifmt_sw24 ATTRIBUTE_UNUSED = {
    304   32, 32, 0xf0030000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_24U8A4N) }, { F (F_SUB2) }, { 0 } }
    305 };
    306 
    307 static const CGEN_IFMT ifmt_extb ATTRIBUTE_UNUSED = {
    308   16, 16, 0xf0ff, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    309 };
    310 
    311 static const CGEN_IFMT ifmt_ssarb ATTRIBUTE_UNUSED = {
    312   16, 16, 0xfc0f, { { F (F_MAJOR) }, { F (F_4) }, { F (F_5) }, { F (F_2U6) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    313 };
    314 
    315 static const CGEN_IFMT ifmt_mov ATTRIBUTE_UNUSED = {
    316   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    317 };
    318 
    319 static const CGEN_IFMT ifmt_movi8 ATTRIBUTE_UNUSED = {
    320   16, 16, 0xf000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_8S8) }, { 0 } }
    321 };
    322 
    323 static const CGEN_IFMT ifmt_movi16 ATTRIBUTE_UNUSED = {
    324   32, 32, 0xf0ff0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    325 };
    326 
    327 static const CGEN_IFMT ifmt_movu24 ATTRIBUTE_UNUSED = {
    328   32, 32, 0xf8000000, { { F (F_MAJOR) }, { F (F_4) }, { F (F_RN3) }, { F (F_24U8N) }, { 0 } }
    329 };
    330 
    331 static const CGEN_IFMT ifmt_movu16 ATTRIBUTE_UNUSED = {
    332   32, 32, 0xf0ff0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16U16) }, { 0 } }
    333 };
    334 
    335 static const CGEN_IFMT ifmt_add3 ATTRIBUTE_UNUSED = {
    336   16, 16, 0xf000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_RL) }, { 0 } }
    337 };
    338 
    339 static const CGEN_IFMT ifmt_add ATTRIBUTE_UNUSED = {
    340   16, 16, 0xf003, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_6S8) }, { F (F_SUB2) }, { 0 } }
    341 };
    342 
    343 static const CGEN_IFMT ifmt_add3i ATTRIBUTE_UNUSED = {
    344   16, 16, 0xf083, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_8) }, { F (F_7U9A4) }, { F (F_SUB2) }, { 0 } }
    345 };
    346 
    347 static const CGEN_IFMT ifmt_slt3i ATTRIBUTE_UNUSED = {
    348   16, 16, 0xf007, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_5U8) }, { F (F_SUB3) }, { 0 } }
    349 };
    350 
    351 static const CGEN_IFMT ifmt_bra ATTRIBUTE_UNUSED = {
    352   16, 16, 0xf001, { { F (F_MAJOR) }, { F (F_12S4A2) }, { F (F_15) }, { 0 } }
    353 };
    354 
    355 static const CGEN_IFMT ifmt_beqz ATTRIBUTE_UNUSED = {
    356   16, 16, 0xf001, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_8S8A2) }, { F (F_15) }, { 0 } }
    357 };
    358 
    359 static const CGEN_IFMT ifmt_beqi ATTRIBUTE_UNUSED = {
    360   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_4U8) }, { F (F_SUB4) }, { F (F_17S16A2) }, { 0 } }
    361 };
    362 
    363 static const CGEN_IFMT ifmt_beq ATTRIBUTE_UNUSED = {
    364   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_17S16A2) }, { 0 } }
    365 };
    366 
    367 static const CGEN_IFMT ifmt_bsr24 ATTRIBUTE_UNUSED = {
    368   32, 32, 0xf80f0000, { { F (F_MAJOR) }, { F (F_4) }, { F (F_24S5A2N) }, { F (F_SUB4) }, { 0 } }
    369 };
    370 
    371 static const CGEN_IFMT ifmt_jmp ATTRIBUTE_UNUSED = {
    372   16, 16, 0xff0f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    373 };
    374 
    375 static const CGEN_IFMT ifmt_jmp24 ATTRIBUTE_UNUSED = {
    376   32, 32, 0xf80f0000, { { F (F_MAJOR) }, { F (F_4) }, { F (F_24U5A2N) }, { F (F_SUB4) }, { 0 } }
    377 };
    378 
    379 static const CGEN_IFMT ifmt_ret ATTRIBUTE_UNUSED = {
    380   16, 16, 0xffff, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    381 };
    382 
    383 static const CGEN_IFMT ifmt_repeat ATTRIBUTE_UNUSED = {
    384   32, 32, 0xf0ff0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_17S16A2) }, { 0 } }
    385 };
    386 
    387 static const CGEN_IFMT ifmt_erepeat ATTRIBUTE_UNUSED = {
    388   32, 32, 0xffff0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_17S16A2) }, { 0 } }
    389 };
    390 
    391 static const CGEN_IFMT ifmt_stc_lp ATTRIBUTE_UNUSED = {
    392   16, 16, 0xf0ff, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_CSRN_LO) }, { F (F_12) }, { F (F_13) }, { F (F_14) }, { F (F_CSRN_HI) }, { 0 } }
    393 };
    394 
    395 static const CGEN_IFMT ifmt_stc ATTRIBUTE_UNUSED = {
    396   16, 16, 0xf00e, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_CSRN) }, { F (F_12) }, { F (F_13) }, { F (F_14) }, { 0 } }
    397 };
    398 
    399 static const CGEN_IFMT ifmt_swi ATTRIBUTE_UNUSED = {
    400   16, 16, 0xffcf, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_8) }, { F (F_9) }, { F (F_2U10) }, { F (F_SUB4) }, { 0 } }
    401 };
    402 
    403 static const CGEN_IFMT ifmt_bsetm ATTRIBUTE_UNUSED = {
    404   16, 16, 0xf80f, { { F (F_MAJOR) }, { F (F_4) }, { F (F_3U5) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    405 };
    406 
    407 static const CGEN_IFMT ifmt_madd ATTRIBUTE_UNUSED = {
    408   32, 32, 0xf00fffff, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16U16) }, { 0 } }
    409 };
    410 
    411 static const CGEN_IFMT ifmt_clip ATTRIBUTE_UNUSED = {
    412   32, 32, 0xf0ffff07, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_EXT) }, { F (F_5U24) }, { F (F_29) }, { F (F_30) }, { F (F_31) }, { 0 } }
    413 };
    414 
    415 static const CGEN_IFMT ifmt_swcp ATTRIBUTE_UNUSED = {
    416   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    417 };
    418 
    419 static const CGEN_IFMT ifmt_smcp ATTRIBUTE_UNUSED = {
    420   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
    421 };
    422 
    423 static const CGEN_IFMT ifmt_swcp16 ATTRIBUTE_UNUSED = {
    424   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    425 };
    426 
    427 static const CGEN_IFMT ifmt_smcp16 ATTRIBUTE_UNUSED = {
    428   32, 32, 0xf00f0000, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_16S16) }, { 0 } }
    429 };
    430 
    431 static const CGEN_IFMT ifmt_swcpa ATTRIBUTE_UNUSED = {
    432   32, 32, 0xf00ffc00, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_EXT4) }, { F (F_EXT62) }, { F (F_CDISP10) }, { 0 } }
    433 };
    434 
    435 static const CGEN_IFMT ifmt_smcpa ATTRIBUTE_UNUSED = {
    436   32, 32, 0xf00ffc00, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_EXT4) }, { F (F_EXT62) }, { F (F_CDISP10) }, { 0 } }
    437 };
    438 
    439 static const CGEN_IFMT ifmt_bcpeq ATTRIBUTE_UNUSED = {
    440   32, 32, 0xff0f0000, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_17S16A2) }, { 0 } }
    441 };
    442 
    443 static const CGEN_IFMT ifmt_sim_syscall ATTRIBUTE_UNUSED = {
    444   16, 16, 0xf8ef, { { F (F_MAJOR) }, { F (F_4) }, { F (F_CALLNUM) }, { F (F_8) }, { F (F_9) }, { F (F_10) }, { F (F_SUB4) }, { 0 } }
    445 };
    446 
    447 static const CGEN_IFMT ifmt_cmov_crn_rm ATTRIBUTE_UNUSED = {
    448   32, 32, 0xf00ffff7, { { F (F_MAJOR) }, { F (F_CRNX) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_IVC2_4U16) }, { F (F_IVC2_4U20) }, { F (F_IVC2_4U24) }, { F (F_29) }, { F (F_30) }, { F (F_31) }, { 0 } }
    449 };
    450 
    451 static const CGEN_IFMT ifmt_cmovc_ccrn_rm ATTRIBUTE_UNUSED = {
    452   32, 32, 0xf00ffff3, { { F (F_MAJOR) }, { F (F_IVC2_CCRN_C3) }, { F (F_RM) }, { F (F_SUB4) }, { F (F_IVC2_4U16) }, { F (F_IVC2_4U20) }, { F (F_IVC2_4U24) }, { F (F_30) }, { F (F_31) }, { 0 } }
    453 };
    454 
    455 static const CGEN_IFMT ifmt_cmov_crn_rm_p0 ATTRIBUTE_UNUSED = {
    456   32, 32, 0xfff7ff, { { F (F_IVC2_CRNX) }, { F (F_IVC2_CRM) }, { F (F_IVC2_CMOV1) }, { F (F_21) }, { F (F_IVC2_CMOV2) }, { F (F_IVC2_CMOV3) }, { 0 } }
    457 };
    458 
    459 static const CGEN_IFMT ifmt_cmovc_ccrn_rm_p0 ATTRIBUTE_UNUSED = {
    460   32, 32, 0xfff3ff, { { F (F_IVC2_CCRN) }, { F (F_IVC2_CRM) }, { F (F_IVC2_CMOV1) }, { F (F_IVC2_CMOV2) }, { F (F_IVC2_CMOV3) }, { 0 } }
    461 };
    462 
    463 static const CGEN_IFMT ifmt_cpadd3_b_C3 ATTRIBUTE_UNUSED = {
    464   32, 32, 0xfe0ff801, { { F (F_MAJOR) }, { F (F_IVC2_3U4) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    465 };
    466 
    467 static const CGEN_IFMT ifmt_cpfsftbi_C3 ATTRIBUTE_UNUSED = {
    468   32, 32, 0xf00ff801, { { F (F_MAJOR) }, { F (F_IVC2_3U4) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    469 };
    470 
    471 static const CGEN_IFMT ifmt_cpmovfrcsar0_C3 ATTRIBUTE_UNUSED = {
    472   32, 32, 0xfe0fffff, { { F (F_MAJOR) }, { F (F_IVC2_3U4) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    473 };
    474 
    475 static const CGEN_IFMT ifmt_cpmovtocsar0_C3 ATTRIBUTE_UNUSED = {
    476   32, 32, 0xfffff83f, { { F (F_MAJOR) }, { F (F_IVC2_3U4) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    477 };
    478 
    479 static const CGEN_IFMT ifmt_cpmov_C3 ATTRIBUTE_UNUSED = {
    480   32, 32, 0xfe0ff83f, { { F (F_MAJOR) }, { F (F_IVC2_3U4) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    481 };
    482 
    483 static const CGEN_IFMT ifmt_cpcmpeqz_b_C3 ATTRIBUTE_UNUSED = {
    484   32, 32, 0xfffff801, { { F (F_MAJOR) }, { F (F_IVC2_3U4) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    485 };
    486 
    487 static const CGEN_IFMT ifmt_cpsrli3_b_C3 ATTRIBUTE_UNUSED = {
    488   32, 32, 0xfc0ff801, { { F (F_MAJOR) }, { F (F_IVC2_2U4) }, { F (F_IVC2_3U6) }, { F (F_IVC2_3U9) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    489 };
    490 
    491 static const CGEN_IFMT ifmt_cpsrli3_h_C3 ATTRIBUTE_UNUSED = {
    492   32, 32, 0xfc0ff801, { { F (F_MAJOR) }, { F (F_IVC2_2U4) }, { F (F_IVC2_2U6) }, { F (F_IVC2_4U8) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    493 };
    494 
    495 static const CGEN_IFMT ifmt_cpsrli3_w_C3 ATTRIBUTE_UNUSED = {
    496   32, 32, 0xfc0ff801, { { F (F_MAJOR) }, { F (F_IVC2_2U4) }, { F (F_IVC2_1U6) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    497 };
    498 
    499 static const CGEN_IFMT ifmt_cdsrli3_C3 ATTRIBUTE_UNUSED = {
    500   32, 32, 0xfc0ff801, { { F (F_MAJOR) }, { F (F_IVC2_2U4) }, { F (F_IVC2_6U6) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    501 };
    502 
    503 static const CGEN_IFMT ifmt_cpmovi_b_C3 ATTRIBUTE_UNUSED = {
    504   32, 32, 0xf00ff83f, { { F (F_MAJOR) }, { F (F_IVC2_8S4) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    505 };
    506 
    507 static const CGEN_IFMT ifmt_cpmoviu_h_C3 ATTRIBUTE_UNUSED = {
    508   32, 32, 0xf00ff83f, { { F (F_MAJOR) }, { F (F_IVC2_8U4) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    509 };
    510 
    511 static const CGEN_IFMT ifmt_cpsrlia1_P1 ATTRIBUTE_UNUSED = {
    512   32, 32, 0xfc0fffff, { { F (F_MAJOR) }, { F (F_IVC2_2U4) }, { F (F_IVC2_1U6) }, { F (F_IVC2_5U7) }, { F (F_SUB4) }, { F (F_IVC2_5U16) }, { F (F_IVC2_5U21) }, { F (F_IVC2_5U26) }, { F (F_IVC2_1U31) }, { 0 } }
    513 };
    514 
    515 static const CGEN_IFMT ifmt_c0nop_P0_P0S ATTRIBUTE_UNUSED = {
    516   32, 32, 0xffffffff, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    517 };
    518 
    519 static const CGEN_IFMT ifmt_cpadd3_b_P0S_P1 ATTRIBUTE_UNUSED = {
    520   32, 32, 0xfff8000f, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    521 };
    522 
    523 static const CGEN_IFMT ifmt_cpmov_P0S_P1 ATTRIBUTE_UNUSED = {
    524   32, 32, 0xfff83e0f, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    525 };
    526 
    527 static const CGEN_IFMT ifmt_cpccadd_b_P0S_P1 ATTRIBUTE_UNUSED = {
    528   32, 32, 0xfff83fff, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    529 };
    530 
    531 static const CGEN_IFMT ifmt_cpmovfrcsar0_P0S_P1 ATTRIBUTE_UNUSED = {
    532   32, 32, 0xfffffe0f, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    533 };
    534 
    535 static const CGEN_IFMT ifmt_cpcmpeqz_b_P0S_P1 ATTRIBUTE_UNUSED = {
    536   32, 32, 0xfff801ff, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    537 };
    538 
    539 static const CGEN_IFMT ifmt_cpsrlia0_P0S ATTRIBUTE_UNUSED = {
    540   32, 32, 0xfffffe0f, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    541 };
    542 
    543 static const CGEN_IFMT ifmt_cpfsftbi_P0_P1 ATTRIBUTE_UNUSED = {
    544   32, 32, 0xf8000f, { { F (F_IVC2_5U0) }, { F (F_IVC2_3U5) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    545 };
    546 
    547 static const CGEN_IFMT ifmt_cpsrli3_b_P0_P1 ATTRIBUTE_UNUSED = {
    548   32, 32, 0xf83e0f, { { F (F_IVC2_5U0) }, { F (F_IVC2_3U5) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    549 };
    550 
    551 static const CGEN_IFMT ifmt_cpsrli3_h_P0_P1 ATTRIBUTE_UNUSED = {
    552   32, 32, 0xf83e0f, { { F (F_IVC2_4U0) }, { F (F_IVC2_4U4) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    553 };
    554 
    555 static const CGEN_IFMT ifmt_cpsrli3_w_P0_P1 ATTRIBUTE_UNUSED = {
    556   32, 32, 0xf83e0f, { { F (F_IVC2_3U0) }, { F (F_IVC2_5U3) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    557 };
    558 
    559 static const CGEN_IFMT ifmt_cdsrli3_P0_P1 ATTRIBUTE_UNUSED = {
    560   32, 32, 0xf83e0f, { { F (F_IVC2_2U0) }, { F (F_IVC2_6U2) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    561 };
    562 
    563 static const CGEN_IFMT ifmt_cpmovi_h_P0_P1 ATTRIBUTE_UNUSED = {
    564   32, 32, 0xf8300f, { { F (F_IVC2_SIMM16P0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_2U18) }, { F (F_IVC2_4U28) }, { 0 } }
    565 };
    566 
    567 static const CGEN_IFMT ifmt_cpmoviu_w_P0_P1 ATTRIBUTE_UNUSED = {
    568   32, 32, 0xf8300f, { { F (F_IVC2_IMM16P0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_2U18) }, { F (F_IVC2_4U28) }, { 0 } }
    569 };
    570 
    571 static const CGEN_IFMT ifmt_cpmovi_b_P0S_P1 ATTRIBUTE_UNUSED = {
    572   32, 32, 0xfff8300f, { { F (F_IVC2_8U0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_2U18) }, { F (F_IVC2_8U20) }, { F (F_IVC2_4U28) }, { 0 } }
    573 };
    574 
    575 static const CGEN_IFMT ifmt_cpfmulia1s0u_b_P1 ATTRIBUTE_UNUSED = {
    576   32, 32, 0xf801ff, { { F (F_IVC2_8S0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_5U23) }, { F (F_IVC2_4U28) }, { 0 } }
    577 };
    578 
    579 static const CGEN_IFMT ifmt_cpfmulia1u_b_P1 ATTRIBUTE_UNUSED = {
    580   32, 32, 0xf8018f, { { F (F_IVC2_8S0) }, { F (F_IVC2_5U8) }, { F (F_IVC2_5U13) }, { F (F_IVC2_5U18) }, { F (F_IVC2_2U23) }, { F (F_IVC2_3U25) }, { F (F_IVC2_4U28) }, { 0 } }
    581 };
    582 
    583 #undef F
    584 
    585 #define A(a) (1 << CGEN_INSN_##a)
    586 #define OPERAND(op) MEP_OPERAND_##op
    587 #define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
    588 #define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
    589 
    590 /* The instruction table.  */
    591 
    592 static const CGEN_OPCODE mep_cgen_insn_opcode_table[MAX_INSNS] =
    593 {
    594   /* Special null first entry.
    595      A `num' value of zero is thus invalid.
    596      Also, the special `invalid' insn resides here.  */
    597   { { 0, 0, 0, 0 }, {{0}}, 0, {0}},
    598 /* stcb $rn,($rma) */
    599   {
    600     { 0, 0, 0, 0 },
    601     { { MNEM, ' ', OP (RN), ',', '(', OP (RMA), ')', 0 } },
    602     & ifmt_stcb_r, { 0x700c }
    603   },
    604 /* ldcb $rn,($rma) */
    605   {
    606     { 0, 0, 0, 0 },
    607     { { MNEM, ' ', OP (RN), ',', '(', OP (RMA), ')', 0 } },
    608     & ifmt_stcb_r, { 0x700d }
    609   },
    610 /* pref $cimm4,($rma) */
    611   {
    612     { 0, 0, 0, 0 },
    613     { { MNEM, ' ', OP (CIMM4), ',', '(', OP (RMA), ')', 0 } },
    614     & ifmt_pref, { 0x7005 }
    615   },
    616 /* pref $cimm4,$sdisp16($rma) */
    617   {
    618     { 0, 0, 0, 0 },
    619     { { MNEM, ' ', OP (CIMM4), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    620     & ifmt_prefd, { 0xf0030000 }
    621   },
    622 /* casb3 $rl5,$rn,($rm) */
    623   {
    624     { 0, 0, 0, 0 },
    625     { { MNEM, ' ', OP (RL5), ',', OP (RN), ',', '(', OP (RM), ')', 0 } },
    626     & ifmt_casb3, { 0xf0012000 }
    627   },
    628 /* cash3 $rl5,$rn,($rm) */
    629   {
    630     { 0, 0, 0, 0 },
    631     { { MNEM, ' ', OP (RL5), ',', OP (RN), ',', '(', OP (RM), ')', 0 } },
    632     & ifmt_casb3, { 0xf0012001 }
    633   },
    634 /* casw3 $rl5,$rn,($rm) */
    635   {
    636     { 0, 0, 0, 0 },
    637     { { MNEM, ' ', OP (RL5), ',', OP (RN), ',', '(', OP (RM), ')', 0 } },
    638     & ifmt_casb3, { 0xf0012002 }
    639   },
    640 /* sbcp $crn,$cdisp12($rma) */
    641   {
    642     { 0, 0, 0, 0 },
    643     { { MNEM, ' ', OP (CRN), ',', OP (CDISP12), '(', OP (RMA), ')', 0 } },
    644     & ifmt_sbcp, { 0xf0060000 }
    645   },
    646 /* lbcp $crn,$cdisp12($rma) */
    647   {
    648     { 0, 0, 0, 0 },
    649     { { MNEM, ' ', OP (CRN), ',', OP (CDISP12), '(', OP (RMA), ')', 0 } },
    650     & ifmt_sbcp, { 0xf0064000 }
    651   },
    652 /* lbucp $crn,$cdisp12($rma) */
    653   {
    654     { 0, 0, 0, 0 },
    655     { { MNEM, ' ', OP (CRN), ',', OP (CDISP12), '(', OP (RMA), ')', 0 } },
    656     & ifmt_sbcp, { 0xf006c000 }
    657   },
    658 /* shcp $crn,$cdisp12($rma) */
    659   {
    660     { 0, 0, 0, 0 },
    661     { { MNEM, ' ', OP (CRN), ',', OP (CDISP12), '(', OP (RMA), ')', 0 } },
    662     & ifmt_sbcp, { 0xf0061000 }
    663   },
    664 /* lhcp $crn,$cdisp12($rma) */
    665   {
    666     { 0, 0, 0, 0 },
    667     { { MNEM, ' ', OP (CRN), ',', OP (CDISP12), '(', OP (RMA), ')', 0 } },
    668     & ifmt_sbcp, { 0xf0065000 }
    669   },
    670 /* lhucp $crn,$cdisp12($rma) */
    671   {
    672     { 0, 0, 0, 0 },
    673     { { MNEM, ' ', OP (CRN), ',', OP (CDISP12), '(', OP (RMA), ')', 0 } },
    674     & ifmt_sbcp, { 0xf006d000 }
    675   },
    676 /* lbucpa $crn,($rma+),$cdisp10 */
    677   {
    678     { 0, 0, 0, 0 },
    679     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
    680     & ifmt_lbucpa, { 0xf005c000 }
    681   },
    682 /* lhucpa $crn,($rma+),$cdisp10a2 */
    683   {
    684     { 0, 0, 0, 0 },
    685     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
    686     & ifmt_lhucpa, { 0xf005d000 }
    687   },
    688 /* lbucpm0 $crn,($rma+),$cdisp10 */
    689   {
    690     { 0, 0, 0, 0 },
    691     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
    692     & ifmt_lbucpa, { 0xf005c800 }
    693   },
    694 /* lhucpm0 $crn,($rma+),$cdisp10a2 */
    695   {
    696     { 0, 0, 0, 0 },
    697     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
    698     & ifmt_lhucpa, { 0xf005d800 }
    699   },
    700 /* lbucpm1 $crn,($rma+),$cdisp10 */
    701   {
    702     { 0, 0, 0, 0 },
    703     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
    704     & ifmt_lbucpa, { 0xf005cc00 }
    705   },
    706 /* lhucpm1 $crn,($rma+),$cdisp10a2 */
    707   {
    708     { 0, 0, 0, 0 },
    709     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
    710     & ifmt_lhucpa, { 0xf005dc00 }
    711   },
    712 /* uci $rn,$rm,$uimm16 */
    713   {
    714     { 0, 0, 0, 0 },
    715     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (UIMM16), 0 } },
    716     & ifmt_uci, { 0xf0020000 }
    717   },
    718 /* dsp $rn,$rm,$uimm16 */
    719   {
    720     { 0, 0, 0, 0 },
    721     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (UIMM16), 0 } },
    722     & ifmt_dsp, { 0xf0000000 }
    723   },
    724 /* dsp0 $c5rnmuimm24 */
    725   {
    726     { 0, 0, 0, 0 },
    727     { { MNEM, ' ', OP (C5RNMUIMM24), 0 } },
    728     & ifmt_dsp0, { 0xf0000000 }
    729   },
    730 /* dsp1 $rn,$c5rmuimm20 */
    731   {
    732     { 0, 0, 0, 0 },
    733     { { MNEM, ' ', OP (RN), ',', OP (C5RMUIMM20), 0 } },
    734     & ifmt_dsp1, { 0xf0000000 }
    735   },
    736 /* sb $rnc,($rma) */
    737   {
    738     { 0, 0, 0, 0 },
    739     { { MNEM, ' ', OP (RNC), ',', '(', OP (RMA), ')', 0 } },
    740     & ifmt_sb, { 0x8 }
    741   },
    742 /* sh $rns,($rma) */
    743   {
    744     { 0, 0, 0, 0 },
    745     { { MNEM, ' ', OP (RNS), ',', '(', OP (RMA), ')', 0 } },
    746     & ifmt_sh, { 0x9 }
    747   },
    748 /* sw $rnl,($rma) */
    749   {
    750     { 0, 0, 0, 0 },
    751     { { MNEM, ' ', OP (RNL), ',', '(', OP (RMA), ')', 0 } },
    752     & ifmt_sw, { 0xa }
    753   },
    754 /* lb $rnc,($rma) */
    755   {
    756     { 0, 0, 0, 0 },
    757     { { MNEM, ' ', OP (RNC), ',', '(', OP (RMA), ')', 0 } },
    758     & ifmt_sb, { 0xc }
    759   },
    760 /* lh $rns,($rma) */
    761   {
    762     { 0, 0, 0, 0 },
    763     { { MNEM, ' ', OP (RNS), ',', '(', OP (RMA), ')', 0 } },
    764     & ifmt_sh, { 0xd }
    765   },
    766 /* lw $rnl,($rma) */
    767   {
    768     { 0, 0, 0, 0 },
    769     { { MNEM, ' ', OP (RNL), ',', '(', OP (RMA), ')', 0 } },
    770     & ifmt_sw, { 0xe }
    771   },
    772 /* lbu $rnuc,($rma) */
    773   {
    774     { 0, 0, 0, 0 },
    775     { { MNEM, ' ', OP (RNUC), ',', '(', OP (RMA), ')', 0 } },
    776     & ifmt_lbu, { 0xb }
    777   },
    778 /* lhu $rnus,($rma) */
    779   {
    780     { 0, 0, 0, 0 },
    781     { { MNEM, ' ', OP (RNUS), ',', '(', OP (RMA), ')', 0 } },
    782     & ifmt_lhu, { 0xf }
    783   },
    784 /* sw $rnl,$udisp7a4($spr) */
    785   {
    786     { 0, 0, 0, 0 },
    787     { { MNEM, ' ', OP (RNL), ',', OP (UDISP7A4), '(', OP (SPR), ')', 0 } },
    788     & ifmt_sw_sp, { 0x4002 }
    789   },
    790 /* lw $rnl,$udisp7a4($spr) */
    791   {
    792     { 0, 0, 0, 0 },
    793     { { MNEM, ' ', OP (RNL), ',', OP (UDISP7A4), '(', OP (SPR), ')', 0 } },
    794     & ifmt_sw_sp, { 0x4003 }
    795   },
    796 /* sb $rn3c,$udisp7($tpr) */
    797   {
    798     { 0, 0, 0, 0 },
    799     { { MNEM, ' ', OP (RN3C), ',', OP (UDISP7), '(', OP (TPR), ')', 0 } },
    800     & ifmt_sb_tp, { 0x8000 }
    801   },
    802 /* sh $rn3s,$udisp7a2($tpr) */
    803   {
    804     { 0, 0, 0, 0 },
    805     { { MNEM, ' ', OP (RN3S), ',', OP (UDISP7A2), '(', OP (TPR), ')', 0 } },
    806     & ifmt_sh_tp, { 0x8080 }
    807   },
    808 /* sw $rn3l,$udisp7a4($tpr) */
    809   {
    810     { 0, 0, 0, 0 },
    811     { { MNEM, ' ', OP (RN3L), ',', OP (UDISP7A4), '(', OP (TPR), ')', 0 } },
    812     & ifmt_sw_tp, { 0x4082 }
    813   },
    814 /* lb $rn3c,$udisp7($tpr) */
    815   {
    816     { 0, 0, 0, 0 },
    817     { { MNEM, ' ', OP (RN3C), ',', OP (UDISP7), '(', OP (TPR), ')', 0 } },
    818     & ifmt_sb_tp, { 0x8800 }
    819   },
    820 /* lh $rn3s,$udisp7a2($tpr) */
    821   {
    822     { 0, 0, 0, 0 },
    823     { { MNEM, ' ', OP (RN3S), ',', OP (UDISP7A2), '(', OP (TPR), ')', 0 } },
    824     & ifmt_sh_tp, { 0x8880 }
    825   },
    826 /* lw $rn3l,$udisp7a4($tpr) */
    827   {
    828     { 0, 0, 0, 0 },
    829     { { MNEM, ' ', OP (RN3L), ',', OP (UDISP7A4), '(', OP (TPR), ')', 0 } },
    830     & ifmt_sw_tp, { 0x4083 }
    831   },
    832 /* lbu $rn3uc,$udisp7($tpr) */
    833   {
    834     { 0, 0, 0, 0 },
    835     { { MNEM, ' ', OP (RN3UC), ',', OP (UDISP7), '(', OP (TPR), ')', 0 } },
    836     & ifmt_lbu_tp, { 0x4880 }
    837   },
    838 /* lhu $rn3us,$udisp7a2($tpr) */
    839   {
    840     { 0, 0, 0, 0 },
    841     { { MNEM, ' ', OP (RN3US), ',', OP (UDISP7A2), '(', OP (TPR), ')', 0 } },
    842     & ifmt_lhu_tp, { 0x8881 }
    843   },
    844 /* sb $rnc,$sdisp16($rma) */
    845   {
    846     { 0, 0, 0, 0 },
    847     { { MNEM, ' ', OP (RNC), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    848     & ifmt_sb16, { 0xc0080000 }
    849   },
    850 /* sh $rns,$sdisp16($rma) */
    851   {
    852     { 0, 0, 0, 0 },
    853     { { MNEM, ' ', OP (RNS), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    854     & ifmt_sh16, { 0xc0090000 }
    855   },
    856 /* sw $rnl,$sdisp16($rma) */
    857   {
    858     { 0, 0, 0, 0 },
    859     { { MNEM, ' ', OP (RNL), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    860     & ifmt_sw16, { 0xc00a0000 }
    861   },
    862 /* lb $rnc,$sdisp16($rma) */
    863   {
    864     { 0, 0, 0, 0 },
    865     { { MNEM, ' ', OP (RNC), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    866     & ifmt_sb16, { 0xc00c0000 }
    867   },
    868 /* lh $rns,$sdisp16($rma) */
    869   {
    870     { 0, 0, 0, 0 },
    871     { { MNEM, ' ', OP (RNS), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    872     & ifmt_sh16, { 0xc00d0000 }
    873   },
    874 /* lw $rnl,$sdisp16($rma) */
    875   {
    876     { 0, 0, 0, 0 },
    877     { { MNEM, ' ', OP (RNL), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    878     & ifmt_sw16, { 0xc00e0000 }
    879   },
    880 /* lbu $rnuc,$sdisp16($rma) */
    881   {
    882     { 0, 0, 0, 0 },
    883     { { MNEM, ' ', OP (RNUC), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    884     & ifmt_lbu16, { 0xc00b0000 }
    885   },
    886 /* lhu $rnus,$sdisp16($rma) */
    887   {
    888     { 0, 0, 0, 0 },
    889     { { MNEM, ' ', OP (RNUS), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
    890     & ifmt_lhu16, { 0xc00f0000 }
    891   },
    892 /* sw $rnl,($addr24a4) */
    893   {
    894     { 0, 0, 0, 0 },
    895     { { MNEM, ' ', OP (RNL), ',', '(', OP (ADDR24A4), ')', 0 } },
    896     & ifmt_sw24, { 0xe0020000 }
    897   },
    898 /* lw $rnl,($addr24a4) */
    899   {
    900     { 0, 0, 0, 0 },
    901     { { MNEM, ' ', OP (RNL), ',', '(', OP (ADDR24A4), ')', 0 } },
    902     & ifmt_sw24, { 0xe0030000 }
    903   },
    904 /* extb $rn */
    905   {
    906     { 0, 0, 0, 0 },
    907     { { MNEM, ' ', OP (RN), 0 } },
    908     & ifmt_extb, { 0x100d }
    909   },
    910 /* exth $rn */
    911   {
    912     { 0, 0, 0, 0 },
    913     { { MNEM, ' ', OP (RN), 0 } },
    914     & ifmt_extb, { 0x102d }
    915   },
    916 /* extub $rn */
    917   {
    918     { 0, 0, 0, 0 },
    919     { { MNEM, ' ', OP (RN), 0 } },
    920     & ifmt_extb, { 0x108d }
    921   },
    922 /* extuh $rn */
    923   {
    924     { 0, 0, 0, 0 },
    925     { { MNEM, ' ', OP (RN), 0 } },
    926     & ifmt_extb, { 0x10ad }
    927   },
    928 /* ssarb $udisp2($rm) */
    929   {
    930     { 0, 0, 0, 0 },
    931     { { MNEM, ' ', OP (UDISP2), '(', OP (RM), ')', 0 } },
    932     & ifmt_ssarb, { 0x100c }
    933   },
    934 /* mov $rn,$rm */
    935   {
    936     { 0, 0, 0, 0 },
    937     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
    938     & ifmt_mov, { 0x0 }
    939   },
    940 /* mov $rn,$simm8 */
    941   {
    942     { 0, 0, 0, 0 },
    943     { { MNEM, ' ', OP (RN), ',', OP (SIMM8), 0 } },
    944     & ifmt_movi8, { 0x5000 }
    945   },
    946 /* mov $rn,$simm16 */
    947   {
    948     { 0, 0, 0, 0 },
    949     { { MNEM, ' ', OP (RN), ',', OP (SIMM16), 0 } },
    950     & ifmt_movi16, { 0xc0010000 }
    951   },
    952 /* movu $rn3,$uimm24 */
    953   {
    954     { 0, 0, 0, 0 },
    955     { { MNEM, ' ', OP (RN3), ',', OP (UIMM24), 0 } },
    956     & ifmt_movu24, { 0xd0000000 }
    957   },
    958 /* movu $rn,$uimm16 */
    959   {
    960     { 0, 0, 0, 0 },
    961     { { MNEM, ' ', OP (RN), ',', OP (UIMM16), 0 } },
    962     & ifmt_movu16, { 0xc0110000 }
    963   },
    964 /* movh $rn,$uimm16 */
    965   {
    966     { 0, 0, 0, 0 },
    967     { { MNEM, ' ', OP (RN), ',', OP (UIMM16), 0 } },
    968     & ifmt_movu16, { 0xc0210000 }
    969   },
    970 /* add3 $rl,$rn,$rm */
    971   {
    972     { 0, 0, 0, 0 },
    973     { { MNEM, ' ', OP (RL), ',', OP (RN), ',', OP (RM), 0 } },
    974     & ifmt_add3, { 0x9000 }
    975   },
    976 /* add $rn,$simm6 */
    977   {
    978     { 0, 0, 0, 0 },
    979     { { MNEM, ' ', OP (RN), ',', OP (SIMM6), 0 } },
    980     & ifmt_add, { 0x6000 }
    981   },
    982 /* add3 $rn,$spr,$uimm7a4 */
    983   {
    984     { 0, 0, 0, 0 },
    985     { { MNEM, ' ', OP (RN), ',', OP (SPR), ',', OP (UIMM7A4), 0 } },
    986     & ifmt_add3i, { 0x4000 }
    987   },
    988 /* advck3 \$0,$rn,$rm */
    989   {
    990     { 0, 0, 0, 0 },
    991     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (RM), 0 } },
    992     & ifmt_mov, { 0x7 }
    993   },
    994 /* sub $rn,$rm */
    995   {
    996     { 0, 0, 0, 0 },
    997     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
    998     & ifmt_mov, { 0x4 }
    999   },
   1000 /* sbvck3 \$0,$rn,$rm */
   1001   {
   1002     { 0, 0, 0, 0 },
   1003     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (RM), 0 } },
   1004     & ifmt_mov, { 0x5 }
   1005   },
   1006 /* neg $rn,$rm */
   1007   {
   1008     { 0, 0, 0, 0 },
   1009     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1010     & ifmt_mov, { 0x1 }
   1011   },
   1012 /* slt3 \$0,$rn,$rm */
   1013   {
   1014     { 0, 0, 0, 0 },
   1015     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (RM), 0 } },
   1016     & ifmt_mov, { 0x2 }
   1017   },
   1018 /* sltu3 \$0,$rn,$rm */
   1019   {
   1020     { 0, 0, 0, 0 },
   1021     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (RM), 0 } },
   1022     & ifmt_mov, { 0x3 }
   1023   },
   1024 /* slt3 \$0,$rn,$uimm5 */
   1025   {
   1026     { 0, 0, 0, 0 },
   1027     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (UIMM5), 0 } },
   1028     & ifmt_slt3i, { 0x6001 }
   1029   },
   1030 /* sltu3 \$0,$rn,$uimm5 */
   1031   {
   1032     { 0, 0, 0, 0 },
   1033     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (UIMM5), 0 } },
   1034     & ifmt_slt3i, { 0x6005 }
   1035   },
   1036 /* sl1ad3 \$0,$rn,$rm */
   1037   {
   1038     { 0, 0, 0, 0 },
   1039     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (RM), 0 } },
   1040     & ifmt_mov, { 0x2006 }
   1041   },
   1042 /* sl2ad3 \$0,$rn,$rm */
   1043   {
   1044     { 0, 0, 0, 0 },
   1045     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (RM), 0 } },
   1046     & ifmt_mov, { 0x2007 }
   1047   },
   1048 /* add3 $rn,$rm,$simm16 */
   1049   {
   1050     { 0, 0, 0, 0 },
   1051     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (SIMM16), 0 } },
   1052     & ifmt_uci, { 0xc0000000 }
   1053   },
   1054 /* slt3 $rn,$rm,$simm16 */
   1055   {
   1056     { 0, 0, 0, 0 },
   1057     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (SIMM16), 0 } },
   1058     & ifmt_uci, { 0xc0020000 }
   1059   },
   1060 /* sltu3 $rn,$rm,$uimm16 */
   1061   {
   1062     { 0, 0, 0, 0 },
   1063     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (UIMM16), 0 } },
   1064     & ifmt_dsp, { 0xc0030000 }
   1065   },
   1066 /* or $rn,$rm */
   1067   {
   1068     { 0, 0, 0, 0 },
   1069     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1070     & ifmt_mov, { 0x1000 }
   1071   },
   1072 /* and $rn,$rm */
   1073   {
   1074     { 0, 0, 0, 0 },
   1075     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1076     & ifmt_mov, { 0x1001 }
   1077   },
   1078 /* xor $rn,$rm */
   1079   {
   1080     { 0, 0, 0, 0 },
   1081     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1082     & ifmt_mov, { 0x1002 }
   1083   },
   1084 /* nor $rn,$rm */
   1085   {
   1086     { 0, 0, 0, 0 },
   1087     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1088     & ifmt_mov, { 0x1003 }
   1089   },
   1090 /* or3 $rn,$rm,$uimm16 */
   1091   {
   1092     { 0, 0, 0, 0 },
   1093     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (UIMM16), 0 } },
   1094     & ifmt_dsp, { 0xc0040000 }
   1095   },
   1096 /* and3 $rn,$rm,$uimm16 */
   1097   {
   1098     { 0, 0, 0, 0 },
   1099     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (UIMM16), 0 } },
   1100     & ifmt_dsp, { 0xc0050000 }
   1101   },
   1102 /* xor3 $rn,$rm,$uimm16 */
   1103   {
   1104     { 0, 0, 0, 0 },
   1105     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (UIMM16), 0 } },
   1106     & ifmt_dsp, { 0xc0060000 }
   1107   },
   1108 /* sra $rn,$rm */
   1109   {
   1110     { 0, 0, 0, 0 },
   1111     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1112     & ifmt_mov, { 0x200d }
   1113   },
   1114 /* srl $rn,$rm */
   1115   {
   1116     { 0, 0, 0, 0 },
   1117     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1118     & ifmt_mov, { 0x200c }
   1119   },
   1120 /* sll $rn,$rm */
   1121   {
   1122     { 0, 0, 0, 0 },
   1123     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1124     & ifmt_mov, { 0x200e }
   1125   },
   1126 /* sra $rn,$uimm5 */
   1127   {
   1128     { 0, 0, 0, 0 },
   1129     { { MNEM, ' ', OP (RN), ',', OP (UIMM5), 0 } },
   1130     & ifmt_slt3i, { 0x6003 }
   1131   },
   1132 /* srl $rn,$uimm5 */
   1133   {
   1134     { 0, 0, 0, 0 },
   1135     { { MNEM, ' ', OP (RN), ',', OP (UIMM5), 0 } },
   1136     & ifmt_slt3i, { 0x6002 }
   1137   },
   1138 /* sll $rn,$uimm5 */
   1139   {
   1140     { 0, 0, 0, 0 },
   1141     { { MNEM, ' ', OP (RN), ',', OP (UIMM5), 0 } },
   1142     & ifmt_slt3i, { 0x6006 }
   1143   },
   1144 /* sll3 \$0,$rn,$uimm5 */
   1145   {
   1146     { 0, 0, 0, 0 },
   1147     { { MNEM, ' ', '$', '0', ',', OP (RN), ',', OP (UIMM5), 0 } },
   1148     & ifmt_slt3i, { 0x6007 }
   1149   },
   1150 /* fsft $rn,$rm */
   1151   {
   1152     { 0, 0, 0, 0 },
   1153     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1154     & ifmt_mov, { 0x200f }
   1155   },
   1156 /* bra $pcrel12a2 */
   1157   {
   1158     { 0, 0, 0, 0 },
   1159     { { MNEM, ' ', OP (PCREL12A2), 0 } },
   1160     & ifmt_bra, { 0xb000 }
   1161   },
   1162 /* beqz $rn,$pcrel8a2 */
   1163   {
   1164     { 0, 0, 0, 0 },
   1165     { { MNEM, ' ', OP (RN), ',', OP (PCREL8A2), 0 } },
   1166     & ifmt_beqz, { 0xa000 }
   1167   },
   1168 /* bnez $rn,$pcrel8a2 */
   1169   {
   1170     { 0, 0, 0, 0 },
   1171     { { MNEM, ' ', OP (RN), ',', OP (PCREL8A2), 0 } },
   1172     & ifmt_beqz, { 0xa001 }
   1173   },
   1174 /* beqi $rn,$uimm4,$pcrel17a2 */
   1175   {
   1176     { 0, 0, 0, 0 },
   1177     { { MNEM, ' ', OP (RN), ',', OP (UIMM4), ',', OP (PCREL17A2), 0 } },
   1178     & ifmt_beqi, { 0xe0000000 }
   1179   },
   1180 /* bnei $rn,$uimm4,$pcrel17a2 */
   1181   {
   1182     { 0, 0, 0, 0 },
   1183     { { MNEM, ' ', OP (RN), ',', OP (UIMM4), ',', OP (PCREL17A2), 0 } },
   1184     & ifmt_beqi, { 0xe0040000 }
   1185   },
   1186 /* blti $rn,$uimm4,$pcrel17a2 */
   1187   {
   1188     { 0, 0, 0, 0 },
   1189     { { MNEM, ' ', OP (RN), ',', OP (UIMM4), ',', OP (PCREL17A2), 0 } },
   1190     & ifmt_beqi, { 0xe00c0000 }
   1191   },
   1192 /* bgei $rn,$uimm4,$pcrel17a2 */
   1193   {
   1194     { 0, 0, 0, 0 },
   1195     { { MNEM, ' ', OP (RN), ',', OP (UIMM4), ',', OP (PCREL17A2), 0 } },
   1196     & ifmt_beqi, { 0xe0080000 }
   1197   },
   1198 /* beq $rn,$rm,$pcrel17a2 */
   1199   {
   1200     { 0, 0, 0, 0 },
   1201     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (PCREL17A2), 0 } },
   1202     & ifmt_beq, { 0xe0010000 }
   1203   },
   1204 /* bne $rn,$rm,$pcrel17a2 */
   1205   {
   1206     { 0, 0, 0, 0 },
   1207     { { MNEM, ' ', OP (RN), ',', OP (RM), ',', OP (PCREL17A2), 0 } },
   1208     & ifmt_beq, { 0xe0050000 }
   1209   },
   1210 /* bsr $pcrel12a2 */
   1211   {
   1212     { 0, 0, 0, 0 },
   1213     { { MNEM, ' ', OP (PCREL12A2), 0 } },
   1214     & ifmt_bra, { 0xb001 }
   1215   },
   1216 /* bsr $pcrel24a2 */
   1217   {
   1218     { 0, 0, 0, 0 },
   1219     { { MNEM, ' ', OP (PCREL24A2), 0 } },
   1220     & ifmt_bsr24, { 0xd8090000 }
   1221   },
   1222 /* jmp $rm */
   1223   {
   1224     { 0, 0, 0, 0 },
   1225     { { MNEM, ' ', OP (RM), 0 } },
   1226     & ifmt_jmp, { 0x100e }
   1227   },
   1228 /* jmp $pcabs24a2 */
   1229   {
   1230     { 0, 0, 0, 0 },
   1231     { { MNEM, ' ', OP (PCABS24A2), 0 } },
   1232     & ifmt_jmp24, { 0xd8080000 }
   1233   },
   1234 /* jsr $rm */
   1235   {
   1236     { 0, 0, 0, 0 },
   1237     { { MNEM, ' ', OP (RM), 0 } },
   1238     & ifmt_jmp, { 0x100f }
   1239   },
   1240 /* ret */
   1241   {
   1242     { 0, 0, 0, 0 },
   1243     { { MNEM, 0 } },
   1244     & ifmt_ret, { 0x7002 }
   1245   },
   1246 /* repeat $rn,$pcrel17a2 */
   1247   {
   1248     { 0, 0, 0, 0 },
   1249     { { MNEM, ' ', OP (RN), ',', OP (PCREL17A2), 0 } },
   1250     & ifmt_repeat, { 0xe0090000 }
   1251   },
   1252 /* erepeat $pcrel17a2 */
   1253   {
   1254     { 0, 0, 0, 0 },
   1255     { { MNEM, ' ', OP (PCREL17A2), 0 } },
   1256     & ifmt_erepeat, { 0xe0190000 }
   1257   },
   1258 /* stc $rn,\$lp */
   1259   {
   1260     { 0, 0, 0, 0 },
   1261     { { MNEM, ' ', OP (RN), ',', '$', 'l', 'p', 0 } },
   1262     & ifmt_stc_lp, { 0x7018 }
   1263   },
   1264 /* stc $rn,\$hi */
   1265   {
   1266     { 0, 0, 0, 0 },
   1267     { { MNEM, ' ', OP (RN), ',', '$', 'h', 'i', 0 } },
   1268     & ifmt_stc_lp, { 0x7078 }
   1269   },
   1270 /* stc $rn,\$lo */
   1271   {
   1272     { 0, 0, 0, 0 },
   1273     { { MNEM, ' ', OP (RN), ',', '$', 'l', 'o', 0 } },
   1274     & ifmt_stc_lp, { 0x7088 }
   1275   },
   1276 /* stc $rn,$csrn */
   1277   {
   1278     { 0, 0, 0, 0 },
   1279     { { MNEM, ' ', OP (RN), ',', OP (CSRN), 0 } },
   1280     & ifmt_stc, { 0x7008 }
   1281   },
   1282 /* ldc $rn,\$lp */
   1283   {
   1284     { 0, 0, 0, 0 },
   1285     { { MNEM, ' ', OP (RN), ',', '$', 'l', 'p', 0 } },
   1286     & ifmt_stc_lp, { 0x701a }
   1287   },
   1288 /* ldc $rn,\$hi */
   1289   {
   1290     { 0, 0, 0, 0 },
   1291     { { MNEM, ' ', OP (RN), ',', '$', 'h', 'i', 0 } },
   1292     & ifmt_stc_lp, { 0x707a }
   1293   },
   1294 /* ldc $rn,\$lo */
   1295   {
   1296     { 0, 0, 0, 0 },
   1297     { { MNEM, ' ', OP (RN), ',', '$', 'l', 'o', 0 } },
   1298     & ifmt_stc_lp, { 0x708a }
   1299   },
   1300 /* ldc $rn,$csrn */
   1301   {
   1302     { 0, 0, 0, 0 },
   1303     { { MNEM, ' ', OP (RN), ',', OP (CSRN), 0 } },
   1304     & ifmt_stc, { 0x700a }
   1305   },
   1306 /* di */
   1307   {
   1308     { 0, 0, 0, 0 },
   1309     { { MNEM, 0 } },
   1310     & ifmt_ret, { 0x7000 }
   1311   },
   1312 /* ei */
   1313   {
   1314     { 0, 0, 0, 0 },
   1315     { { MNEM, 0 } },
   1316     & ifmt_ret, { 0x7010 }
   1317   },
   1318 /* reti */
   1319   {
   1320     { 0, 0, 0, 0 },
   1321     { { MNEM, 0 } },
   1322     & ifmt_ret, { 0x7012 }
   1323   },
   1324 /* halt */
   1325   {
   1326     { 0, 0, 0, 0 },
   1327     { { MNEM, 0 } },
   1328     & ifmt_ret, { 0x7022 }
   1329   },
   1330 /* sleep */
   1331   {
   1332     { 0, 0, 0, 0 },
   1333     { { MNEM, 0 } },
   1334     & ifmt_ret, { 0x7062 }
   1335   },
   1336 /* swi $uimm2 */
   1337   {
   1338     { 0, 0, 0, 0 },
   1339     { { MNEM, ' ', OP (UIMM2), 0 } },
   1340     & ifmt_swi, { 0x7006 }
   1341   },
   1342 /* break */
   1343   {
   1344     { 0, 0, 0, 0 },
   1345     { { MNEM, 0 } },
   1346     & ifmt_ret, { 0x7032 }
   1347   },
   1348 /* syncm */
   1349   {
   1350     { 0, 0, 0, 0 },
   1351     { { MNEM, 0 } },
   1352     & ifmt_ret, { 0x7011 }
   1353   },
   1354 /* stcb $rn,$uimm16 */
   1355   {
   1356     { 0, 0, 0, 0 },
   1357     { { MNEM, ' ', OP (RN), ',', OP (UIMM16), 0 } },
   1358     & ifmt_movu16, { 0xf0040000 }
   1359   },
   1360 /* ldcb $rn,$uimm16 */
   1361   {
   1362     { 0, 0, 0, 0 },
   1363     { { MNEM, ' ', OP (RN), ',', OP (UIMM16), 0 } },
   1364     & ifmt_movu16, { 0xf0140000 }
   1365   },
   1366 /* bsetm ($rma),$uimm3 */
   1367   {
   1368     { 0, 0, 0, 0 },
   1369     { { MNEM, ' ', '(', OP (RMA), ')', ',', OP (UIMM3), 0 } },
   1370     & ifmt_bsetm, { 0x2000 }
   1371   },
   1372 /* bclrm ($rma),$uimm3 */
   1373   {
   1374     { 0, 0, 0, 0 },
   1375     { { MNEM, ' ', '(', OP (RMA), ')', ',', OP (UIMM3), 0 } },
   1376     & ifmt_bsetm, { 0x2001 }
   1377   },
   1378 /* bnotm ($rma),$uimm3 */
   1379   {
   1380     { 0, 0, 0, 0 },
   1381     { { MNEM, ' ', '(', OP (RMA), ')', ',', OP (UIMM3), 0 } },
   1382     & ifmt_bsetm, { 0x2002 }
   1383   },
   1384 /* btstm \$0,($rma),$uimm3 */
   1385   {
   1386     { 0, 0, 0, 0 },
   1387     { { MNEM, ' ', '$', '0', ',', '(', OP (RMA), ')', ',', OP (UIMM3), 0 } },
   1388     & ifmt_bsetm, { 0x2003 }
   1389   },
   1390 /* tas $rn,($rma) */
   1391   {
   1392     { 0, 0, 0, 0 },
   1393     { { MNEM, ' ', OP (RN), ',', '(', OP (RMA), ')', 0 } },
   1394     & ifmt_stcb_r, { 0x2004 }
   1395   },
   1396 /* cache $cimm4,($rma) */
   1397   {
   1398     { 0, 0, 0, 0 },
   1399     { { MNEM, ' ', OP (CIMM4), ',', '(', OP (RMA), ')', 0 } },
   1400     & ifmt_pref, { 0x7004 }
   1401   },
   1402 /* mul $rn,$rm */
   1403   {
   1404     { 0, 0, 0, 0 },
   1405     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1406     & ifmt_mov, { 0x1004 }
   1407   },
   1408 /* mulu $rn,$rm */
   1409   {
   1410     { 0, 0, 0, 0 },
   1411     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1412     & ifmt_mov, { 0x1005 }
   1413   },
   1414 /* mulr $rn,$rm */
   1415   {
   1416     { 0, 0, 0, 0 },
   1417     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1418     & ifmt_mov, { 0x1006 }
   1419   },
   1420 /* mulru $rn,$rm */
   1421   {
   1422     { 0, 0, 0, 0 },
   1423     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1424     & ifmt_mov, { 0x1007 }
   1425   },
   1426 /* madd $rn,$rm */
   1427   {
   1428     { 0, 0, 0, 0 },
   1429     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1430     & ifmt_madd, { 0xf0013004 }
   1431   },
   1432 /* maddu $rn,$rm */
   1433   {
   1434     { 0, 0, 0, 0 },
   1435     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1436     & ifmt_madd, { 0xf0013005 }
   1437   },
   1438 /* maddr $rn,$rm */
   1439   {
   1440     { 0, 0, 0, 0 },
   1441     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1442     & ifmt_madd, { 0xf0013006 }
   1443   },
   1444 /* maddru $rn,$rm */
   1445   {
   1446     { 0, 0, 0, 0 },
   1447     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1448     & ifmt_madd, { 0xf0013007 }
   1449   },
   1450 /* div $rn,$rm */
   1451   {
   1452     { 0, 0, 0, 0 },
   1453     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1454     & ifmt_mov, { 0x1008 }
   1455   },
   1456 /* divu $rn,$rm */
   1457   {
   1458     { 0, 0, 0, 0 },
   1459     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1460     & ifmt_mov, { 0x1009 }
   1461   },
   1462 /* dret */
   1463   {
   1464     { 0, 0, 0, 0 },
   1465     { { MNEM, 0 } },
   1466     & ifmt_ret, { 0x7013 }
   1467   },
   1468 /* dbreak */
   1469   {
   1470     { 0, 0, 0, 0 },
   1471     { { MNEM, 0 } },
   1472     & ifmt_ret, { 0x7033 }
   1473   },
   1474 /* ldz $rn,$rm */
   1475   {
   1476     { 0, 0, 0, 0 },
   1477     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1478     & ifmt_madd, { 0xf0010000 }
   1479   },
   1480 /* abs $rn,$rm */
   1481   {
   1482     { 0, 0, 0, 0 },
   1483     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1484     & ifmt_madd, { 0xf0010003 }
   1485   },
   1486 /* ave $rn,$rm */
   1487   {
   1488     { 0, 0, 0, 0 },
   1489     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1490     & ifmt_madd, { 0xf0010002 }
   1491   },
   1492 /* min $rn,$rm */
   1493   {
   1494     { 0, 0, 0, 0 },
   1495     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1496     & ifmt_madd, { 0xf0010004 }
   1497   },
   1498 /* max $rn,$rm */
   1499   {
   1500     { 0, 0, 0, 0 },
   1501     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1502     & ifmt_madd, { 0xf0010005 }
   1503   },
   1504 /* minu $rn,$rm */
   1505   {
   1506     { 0, 0, 0, 0 },
   1507     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1508     & ifmt_madd, { 0xf0010006 }
   1509   },
   1510 /* maxu $rn,$rm */
   1511   {
   1512     { 0, 0, 0, 0 },
   1513     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1514     & ifmt_madd, { 0xf0010007 }
   1515   },
   1516 /* clip $rn,$cimm5 */
   1517   {
   1518     { 0, 0, 0, 0 },
   1519     { { MNEM, ' ', OP (RN), ',', OP (CIMM5), 0 } },
   1520     & ifmt_clip, { 0xf0011000 }
   1521   },
   1522 /* clipu $rn,$cimm5 */
   1523   {
   1524     { 0, 0, 0, 0 },
   1525     { { MNEM, ' ', OP (RN), ',', OP (CIMM5), 0 } },
   1526     & ifmt_clip, { 0xf0011001 }
   1527   },
   1528 /* sadd $rn,$rm */
   1529   {
   1530     { 0, 0, 0, 0 },
   1531     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1532     & ifmt_madd, { 0xf0010008 }
   1533   },
   1534 /* ssub $rn,$rm */
   1535   {
   1536     { 0, 0, 0, 0 },
   1537     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1538     & ifmt_madd, { 0xf001000a }
   1539   },
   1540 /* saddu $rn,$rm */
   1541   {
   1542     { 0, 0, 0, 0 },
   1543     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1544     & ifmt_madd, { 0xf0010009 }
   1545   },
   1546 /* ssubu $rn,$rm */
   1547   {
   1548     { 0, 0, 0, 0 },
   1549     { { MNEM, ' ', OP (RN), ',', OP (RM), 0 } },
   1550     & ifmt_madd, { 0xf001000b }
   1551   },
   1552 /* swcp $crn,($rma) */
   1553   {
   1554     { 0, 0, 0, 0 },
   1555     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), ')', 0 } },
   1556     & ifmt_swcp, { 0x3008 }
   1557   },
   1558 /* lwcp $crn,($rma) */
   1559   {
   1560     { 0, 0, 0, 0 },
   1561     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), ')', 0 } },
   1562     & ifmt_swcp, { 0x3009 }
   1563   },
   1564 /* smcp $crn64,($rma) */
   1565   {
   1566     { 0, 0, 0, 0 },
   1567     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), ')', 0 } },
   1568     & ifmt_smcp, { 0x300a }
   1569   },
   1570 /* lmcp $crn64,($rma) */
   1571   {
   1572     { 0, 0, 0, 0 },
   1573     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), ')', 0 } },
   1574     & ifmt_smcp, { 0x300b }
   1575   },
   1576 /* swcpi $crn,($rma+) */
   1577   {
   1578     { 0, 0, 0, 0 },
   1579     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', 0 } },
   1580     & ifmt_swcp, { 0x3000 }
   1581   },
   1582 /* lwcpi $crn,($rma+) */
   1583   {
   1584     { 0, 0, 0, 0 },
   1585     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', 0 } },
   1586     & ifmt_swcp, { 0x3001 }
   1587   },
   1588 /* smcpi $crn64,($rma+) */
   1589   {
   1590     { 0, 0, 0, 0 },
   1591     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', 0 } },
   1592     & ifmt_smcp, { 0x3002 }
   1593   },
   1594 /* lmcpi $crn64,($rma+) */
   1595   {
   1596     { 0, 0, 0, 0 },
   1597     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', 0 } },
   1598     & ifmt_smcp, { 0x3003 }
   1599   },
   1600 /* swcp $crn,$sdisp16($rma) */
   1601   {
   1602     { 0, 0, 0, 0 },
   1603     { { MNEM, ' ', OP (CRN), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
   1604     & ifmt_swcp16, { 0xf00c0000 }
   1605   },
   1606 /* lwcp $crn,$sdisp16($rma) */
   1607   {
   1608     { 0, 0, 0, 0 },
   1609     { { MNEM, ' ', OP (CRN), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
   1610     & ifmt_swcp16, { 0xf00d0000 }
   1611   },
   1612 /* smcp $crn64,$sdisp16($rma) */
   1613   {
   1614     { 0, 0, 0, 0 },
   1615     { { MNEM, ' ', OP (CRN64), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
   1616     & ifmt_smcp16, { 0xf00e0000 }
   1617   },
   1618 /* lmcp $crn64,$sdisp16($rma) */
   1619   {
   1620     { 0, 0, 0, 0 },
   1621     { { MNEM, ' ', OP (CRN64), ',', OP (SDISP16), '(', OP (RMA), ')', 0 } },
   1622     & ifmt_smcp16, { 0xf00f0000 }
   1623   },
   1624 /* sbcpa $crn,($rma+),$cdisp10 */
   1625   {
   1626     { 0, 0, 0, 0 },
   1627     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
   1628     & ifmt_lbucpa, { 0xf0050000 }
   1629   },
   1630 /* lbcpa $crn,($rma+),$cdisp10 */
   1631   {
   1632     { 0, 0, 0, 0 },
   1633     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
   1634     & ifmt_lbucpa, { 0xf0054000 }
   1635   },
   1636 /* shcpa $crn,($rma+),$cdisp10a2 */
   1637   {
   1638     { 0, 0, 0, 0 },
   1639     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
   1640     & ifmt_lhucpa, { 0xf0051000 }
   1641   },
   1642 /* lhcpa $crn,($rma+),$cdisp10a2 */
   1643   {
   1644     { 0, 0, 0, 0 },
   1645     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
   1646     & ifmt_lhucpa, { 0xf0055000 }
   1647   },
   1648 /* swcpa $crn,($rma+),$cdisp10a4 */
   1649   {
   1650     { 0, 0, 0, 0 },
   1651     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A4), 0 } },
   1652     & ifmt_swcpa, { 0xf0052000 }
   1653   },
   1654 /* lwcpa $crn,($rma+),$cdisp10a4 */
   1655   {
   1656     { 0, 0, 0, 0 },
   1657     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A4), 0 } },
   1658     & ifmt_swcpa, { 0xf0056000 }
   1659   },
   1660 /* smcpa $crn64,($rma+),$cdisp10a8 */
   1661   {
   1662     { 0, 0, 0, 0 },
   1663     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A8), 0 } },
   1664     & ifmt_smcpa, { 0xf0053000 }
   1665   },
   1666 /* lmcpa $crn64,($rma+),$cdisp10a8 */
   1667   {
   1668     { 0, 0, 0, 0 },
   1669     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A8), 0 } },
   1670     & ifmt_smcpa, { 0xf0057000 }
   1671   },
   1672 /* sbcpm0 $crn,($rma+),$cdisp10 */
   1673   {
   1674     { 0, 0, 0, 0 },
   1675     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
   1676     & ifmt_lbucpa, { 0xf0050800 }
   1677   },
   1678 /* lbcpm0 $crn,($rma+),$cdisp10 */
   1679   {
   1680     { 0, 0, 0, 0 },
   1681     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
   1682     & ifmt_lbucpa, { 0xf0054800 }
   1683   },
   1684 /* shcpm0 $crn,($rma+),$cdisp10a2 */
   1685   {
   1686     { 0, 0, 0, 0 },
   1687     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
   1688     & ifmt_lhucpa, { 0xf0051800 }
   1689   },
   1690 /* lhcpm0 $crn,($rma+),$cdisp10a2 */
   1691   {
   1692     { 0, 0, 0, 0 },
   1693     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
   1694     & ifmt_lhucpa, { 0xf0055800 }
   1695   },
   1696 /* swcpm0 $crn,($rma+),$cdisp10a4 */
   1697   {
   1698     { 0, 0, 0, 0 },
   1699     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A4), 0 } },
   1700     & ifmt_swcpa, { 0xf0052800 }
   1701   },
   1702 /* lwcpm0 $crn,($rma+),$cdisp10a4 */
   1703   {
   1704     { 0, 0, 0, 0 },
   1705     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A4), 0 } },
   1706     & ifmt_swcpa, { 0xf0056800 }
   1707   },
   1708 /* smcpm0 $crn64,($rma+),$cdisp10a8 */
   1709   {
   1710     { 0, 0, 0, 0 },
   1711     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A8), 0 } },
   1712     & ifmt_smcpa, { 0xf0053800 }
   1713   },
   1714 /* lmcpm0 $crn64,($rma+),$cdisp10a8 */
   1715   {
   1716     { 0, 0, 0, 0 },
   1717     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A8), 0 } },
   1718     & ifmt_smcpa, { 0xf0057800 }
   1719   },
   1720 /* sbcpm1 $crn,($rma+),$cdisp10 */
   1721   {
   1722     { 0, 0, 0, 0 },
   1723     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
   1724     & ifmt_lbucpa, { 0xf0050c00 }
   1725   },
   1726 /* lbcpm1 $crn,($rma+),$cdisp10 */
   1727   {
   1728     { 0, 0, 0, 0 },
   1729     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10), 0 } },
   1730     & ifmt_lbucpa, { 0xf0054c00 }
   1731   },
   1732 /* shcpm1 $crn,($rma+),$cdisp10a2 */
   1733   {
   1734     { 0, 0, 0, 0 },
   1735     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
   1736     & ifmt_lhucpa, { 0xf0051c00 }
   1737   },
   1738 /* lhcpm1 $crn,($rma+),$cdisp10a2 */
   1739   {
   1740     { 0, 0, 0, 0 },
   1741     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A2), 0 } },
   1742     & ifmt_lhucpa, { 0xf0055c00 }
   1743   },
   1744 /* swcpm1 $crn,($rma+),$cdisp10a4 */
   1745   {
   1746     { 0, 0, 0, 0 },
   1747     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A4), 0 } },
   1748     & ifmt_swcpa, { 0xf0052c00 }
   1749   },
   1750 /* lwcpm1 $crn,($rma+),$cdisp10a4 */
   1751   {
   1752     { 0, 0, 0, 0 },
   1753     { { MNEM, ' ', OP (CRN), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A4), 0 } },
   1754     & ifmt_swcpa, { 0xf0056c00 }
   1755   },
   1756 /* smcpm1 $crn64,($rma+),$cdisp10a8 */
   1757   {
   1758     { 0, 0, 0, 0 },
   1759     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A8), 0 } },
   1760     & ifmt_smcpa, { 0xf0053c00 }
   1761   },
   1762 /* lmcpm1 $crn64,($rma+),$cdisp10a8 */
   1763   {
   1764     { 0, 0, 0, 0 },
   1765     { { MNEM, ' ', OP (CRN64), ',', '(', OP (RMA), '+', ')', ',', OP (CDISP10A8), 0 } },
   1766     & ifmt_smcpa, { 0xf0057c00 }
   1767   },
   1768 /* bcpeq $cccc,$pcrel17a2 */
   1769   {
   1770     { 0, 0, 0, 0 },
   1771     { { MNEM, ' ', OP (CCCC), ',', OP (PCREL17A2), 0 } },
   1772     & ifmt_bcpeq, { 0xd8040000 }
   1773   },
   1774 /* bcpne $cccc,$pcrel17a2 */
   1775   {
   1776     { 0, 0, 0, 0 },
   1777     { { MNEM, ' ', OP (CCCC), ',', OP (PCREL17A2), 0 } },
   1778     & ifmt_bcpeq, { 0xd8050000 }
   1779   },
   1780 /* bcpat $cccc,$pcrel17a2 */
   1781   {
   1782     { 0, 0, 0, 0 },
   1783     { { MNEM, ' ', OP (CCCC), ',', OP (PCREL17A2), 0 } },
   1784     & ifmt_bcpeq, { 0xd8060000 }
   1785   },
   1786 /* bcpaf $cccc,$pcrel17a2 */
   1787   {
   1788     { 0, 0, 0, 0 },
   1789     { { MNEM, ' ', OP (CCCC), ',', OP (PCREL17A2), 0 } },
   1790     & ifmt_bcpeq, { 0xd8070000 }
   1791   },
   1792 /* synccp */
   1793   {
   1794     { 0, 0, 0, 0 },
   1795     { { MNEM, 0 } },
   1796     & ifmt_ret, { 0x7021 }
   1797   },
   1798 /* jsrv $rm */
   1799   {
   1800     { 0, 0, 0, 0 },
   1801     { { MNEM, ' ', OP (RM), 0 } },
   1802     & ifmt_jmp, { 0x180f }
   1803   },
   1804 /* bsrv $pcrel24a2 */
   1805   {
   1806     { 0, 0, 0, 0 },
   1807     { { MNEM, ' ', OP (PCREL24A2), 0 } },
   1808     & ifmt_bsr24, { 0xd80b0000 }
   1809   },
   1810 /* --syscall-- */
   1811   {
   1812     { 0, 0, 0, 0 },
   1813     { { MNEM, 0 } },
   1814     & ifmt_sim_syscall, { 0x7800 }
   1815   },
   1816 /* --reserved-- */
   1817   {
   1818     { 0, 0, 0, 0 },
   1819     { { MNEM, 0 } },
   1820     & ifmt_mov, { 0x6 }
   1821   },
   1822 /* --reserved-- */
   1823   {
   1824     { 0, 0, 0, 0 },
   1825     { { MNEM, 0 } },
   1826     & ifmt_mov, { 0x100a }
   1827   },
   1828 /* --reserved-- */
   1829   {
   1830     { 0, 0, 0, 0 },
   1831     { { MNEM, 0 } },
   1832     & ifmt_mov, { 0x100b }
   1833   },
   1834 /* --reserved-- */
   1835   {
   1836     { 0, 0, 0, 0 },
   1837     { { MNEM, 0 } },
   1838     & ifmt_mov, { 0x2005 }
   1839   },
   1840 /* --reserved-- */
   1841   {
   1842     { 0, 0, 0, 0 },
   1843     { { MNEM, 0 } },
   1844     & ifmt_mov, { 0x2008 }
   1845   },
   1846 /* --reserved-- */
   1847   {
   1848     { 0, 0, 0, 0 },
   1849     { { MNEM, 0 } },
   1850     & ifmt_mov, { 0x2009 }
   1851   },
   1852 /* --reserved-- */
   1853   {
   1854     { 0, 0, 0, 0 },
   1855     { { MNEM, 0 } },
   1856     & ifmt_mov, { 0x200a }
   1857   },
   1858 /* --reserved-- */
   1859   {
   1860     { 0, 0, 0, 0 },
   1861     { { MNEM, 0 } },
   1862     & ifmt_mov, { 0x200b }
   1863   },
   1864 /* --reserved-- */
   1865   {
   1866     { 0, 0, 0, 0 },
   1867     { { MNEM, 0 } },
   1868     & ifmt_mov, { 0x3004 }
   1869   },
   1870 /* --reserved-- */
   1871   {
   1872     { 0, 0, 0, 0 },
   1873     { { MNEM, 0 } },
   1874     & ifmt_mov, { 0x3005 }
   1875   },
   1876 /* --reserved-- */
   1877   {
   1878     { 0, 0, 0, 0 },
   1879     { { MNEM, 0 } },
   1880     & ifmt_mov, { 0x3006 }
   1881   },
   1882 /* --reserved-- */
   1883   {
   1884     { 0, 0, 0, 0 },
   1885     { { MNEM, 0 } },
   1886     & ifmt_mov, { 0x3007 }
   1887   },
   1888 /* --reserved-- */
   1889   {
   1890     { 0, 0, 0, 0 },
   1891     { { MNEM, 0 } },
   1892     & ifmt_mov, { 0x300c }
   1893   },
   1894 /* --reserved-- */
   1895   {
   1896     { 0, 0, 0, 0 },
   1897     { { MNEM, 0 } },
   1898     & ifmt_mov, { 0x300d }
   1899   },
   1900 /* --reserved-- */
   1901   {
   1902     { 0, 0, 0, 0 },
   1903     { { MNEM, 0 } },
   1904     & ifmt_mov, { 0x300e }
   1905   },
   1906 /* --reserved-- */
   1907   {
   1908     { 0, 0, 0, 0 },
   1909     { { MNEM, 0 } },
   1910     & ifmt_mov, { 0x300f }
   1911   },
   1912 /* --reserved-- */
   1913   {
   1914     { 0, 0, 0, 0 },
   1915     { { MNEM, 0 } },
   1916     & ifmt_mov, { 0x7007 }
   1917   },
   1918 /* --reserved-- */
   1919   {
   1920     { 0, 0, 0, 0 },
   1921     { { MNEM, 0 } },
   1922     & ifmt_mov, { 0x700e }
   1923   },
   1924 /* --reserved-- */
   1925   {
   1926     { 0, 0, 0, 0 },
   1927     { { MNEM, 0 } },
   1928     & ifmt_mov, { 0x700f }
   1929   },
   1930 /* --reserved-- */
   1931   {
   1932     { 0, 0, 0, 0 },
   1933     { { MNEM, 0 } },
   1934     & ifmt_mov, { 0xc007 }
   1935   },
   1936 /* --reserved-- */
   1937   {
   1938     { 0, 0, 0, 0 },
   1939     { { MNEM, 0 } },
   1940     & ifmt_mov, { 0xe00d }
   1941   },
   1942 /* --reserved-- */
   1943   {
   1944     { 0, 0, 0, 0 },
   1945     { { MNEM, 0 } },
   1946     & ifmt_mov, { 0xf008 }
   1947   },
   1948 /* cmov $crnx64,$rm */
   1949   {
   1950     { 0, 0, 0, 0 },
   1951     { { MNEM, ' ', OP (CRNX64), ',', OP (RM), 0 } },
   1952     & ifmt_cmov_crn_rm, { 0xf007f000 }
   1953   },
   1954 /* cmov $rm,$crnx64 */
   1955   {
   1956     { 0, 0, 0, 0 },
   1957     { { MNEM, ' ', OP (RM), ',', OP (CRNX64), 0 } },
   1958     & ifmt_cmov_crn_rm, { 0xf007f001 }
   1959   },
   1960 /* cmovc $ivc2c3ccrn,$rm */
   1961   {
   1962     { 0, 0, 0, 0 },
   1963     { { MNEM, ' ', OP (IVC2C3CCRN), ',', OP (RM), 0 } },
   1964     & ifmt_cmovc_ccrn_rm, { 0xf007f002 }
   1965   },
   1966 /* cmovc $rm,$ivc2c3ccrn */
   1967   {
   1968     { 0, 0, 0, 0 },
   1969     { { MNEM, ' ', OP (RM), ',', OP (IVC2C3CCRN), 0 } },
   1970     & ifmt_cmovc_ccrn_rm, { 0xf007f003 }
   1971   },
   1972 /* cmovh $crnx64,$rm */
   1973   {
   1974     { 0, 0, 0, 0 },
   1975     { { MNEM, ' ', OP (CRNX64), ',', OP (RM), 0 } },
   1976     & ifmt_cmov_crn_rm, { 0xf007f100 }
   1977   },
   1978 /* cmovh $rm,$crnx64 */
   1979   {
   1980     { 0, 0, 0, 0 },
   1981     { { MNEM, ' ', OP (RM), ',', OP (CRNX64), 0 } },
   1982     & ifmt_cmov_crn_rm, { 0xf007f101 }
   1983   },
   1984 /* cmov $ivc2crn,$ivc2rm */
   1985   {
   1986     { 0, 0, 0, 0 },
   1987     { { MNEM, ' ', OP (IVC2CRN), ',', OP (IVC2RM), 0 } },
   1988     & ifmt_cmov_crn_rm_p0, { 0xf00000 }
   1989   },
   1990 /* cmov $ivc2rm,$ivc2crn */
   1991   {
   1992     { 0, 0, 0, 0 },
   1993     { { MNEM, ' ', OP (IVC2RM), ',', OP (IVC2CRN), 0 } },
   1994     & ifmt_cmov_crn_rm_p0, { 0xf00100 }
   1995   },
   1996 /* cmovc $ivc2ccrn,$ivc2rm */
   1997   {
   1998     { 0, 0, 0, 0 },
   1999     { { MNEM, ' ', OP (IVC2CCRN), ',', OP (IVC2RM), 0 } },
   2000     & ifmt_cmovc_ccrn_rm_p0, { 0xf00200 }
   2001   },
   2002 /* cmovc $ivc2rm,$ivc2ccrn */
   2003   {
   2004     { 0, 0, 0, 0 },
   2005     { { MNEM, ' ', OP (IVC2RM), ',', OP (IVC2CCRN), 0 } },
   2006     & ifmt_cmovc_ccrn_rm_p0, { 0xf00300 }
   2007   },
   2008 /* cmovh $ivc2crn,$ivc2rm */
   2009   {
   2010     { 0, 0, 0, 0 },
   2011     { { MNEM, ' ', OP (IVC2CRN), ',', OP (IVC2RM), 0 } },
   2012     & ifmt_cmov_crn_rm_p0, { 0xf10000 }
   2013   },
   2014 /* cmovh $ivc2rm,$ivc2crn */
   2015   {
   2016     { 0, 0, 0, 0 },
   2017     { { MNEM, ' ', OP (IVC2RM), ',', OP (IVC2CRN), 0 } },
   2018     & ifmt_cmov_crn_rm_p0, { 0xf10100 }
   2019   },
   2020 /* cpadd3.b $croc,$crqc,$crpc */
   2021   {
   2022     { 0, 0, 0, 0 },
   2023     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2024     & ifmt_cpadd3_b_C3, { 0xf0070000 }
   2025   },
   2026 /* cpadd3.h $croc,$crqc,$crpc */
   2027   {
   2028     { 0, 0, 0, 0 },
   2029     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2030     & ifmt_cpadd3_b_C3, { 0xf2070000 }
   2031   },
   2032 /* cpadd3.w $croc,$crqc,$crpc */
   2033   {
   2034     { 0, 0, 0, 0 },
   2035     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2036     & ifmt_cpadd3_b_C3, { 0xf4070000 }
   2037   },
   2038 /* cdadd3 $croc,$crqc,$crpc */
   2039   {
   2040     { 0, 0, 0, 0 },
   2041     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2042     & ifmt_cpadd3_b_C3, { 0xf6070000 }
   2043   },
   2044 /* cpsub3.b $croc,$crqc,$crpc */
   2045   {
   2046     { 0, 0, 0, 0 },
   2047     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2048     & ifmt_cpadd3_b_C3, { 0xf8070000 }
   2049   },
   2050 /* cpsub3.h $croc,$crqc,$crpc */
   2051   {
   2052     { 0, 0, 0, 0 },
   2053     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2054     & ifmt_cpadd3_b_C3, { 0xfa070000 }
   2055   },
   2056 /* cpsub3.w $croc,$crqc,$crpc */
   2057   {
   2058     { 0, 0, 0, 0 },
   2059     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2060     & ifmt_cpadd3_b_C3, { 0xfc070000 }
   2061   },
   2062 /* cdsub3 $croc,$crqc,$crpc */
   2063   {
   2064     { 0, 0, 0, 0 },
   2065     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2066     & ifmt_cpadd3_b_C3, { 0xfe070000 }
   2067   },
   2068 /* cpand3 $croc,$crqc,$crpc */
   2069   {
   2070     { 0, 0, 0, 0 },
   2071     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2072     & ifmt_cpadd3_b_C3, { 0xf0070800 }
   2073   },
   2074 /* cpor3 $croc,$crqc,$crpc */
   2075   {
   2076     { 0, 0, 0, 0 },
   2077     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2078     & ifmt_cpadd3_b_C3, { 0xf2070800 }
   2079   },
   2080 /* cpnor3 $croc,$crqc,$crpc */
   2081   {
   2082     { 0, 0, 0, 0 },
   2083     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2084     & ifmt_cpadd3_b_C3, { 0xf4070800 }
   2085   },
   2086 /* cpxor3 $croc,$crqc,$crpc */
   2087   {
   2088     { 0, 0, 0, 0 },
   2089     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2090     & ifmt_cpadd3_b_C3, { 0xf6070800 }
   2091   },
   2092 /* cpsel $croc,$crqc,$crpc */
   2093   {
   2094     { 0, 0, 0, 0 },
   2095     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2096     & ifmt_cpadd3_b_C3, { 0xf8070800 }
   2097   },
   2098 /* cpfsftbi $croc,$crqc,$crpc,$imm3p4 */
   2099   {
   2100     { 0, 0, 0, 0 },
   2101     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), ',', OP (IMM3P4), 0 } },
   2102     & ifmt_cpfsftbi_C3, { 0xf007e800 }
   2103   },
   2104 /* cpfsftbs0 $croc,$crqc,$crpc */
   2105   {
   2106     { 0, 0, 0, 0 },
   2107     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2108     & ifmt_cpadd3_b_C3, { 0xfc070800 }
   2109   },
   2110 /* cpfsftbs1 $croc,$crqc,$crpc */
   2111   {
   2112     { 0, 0, 0, 0 },
   2113     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2114     & ifmt_cpadd3_b_C3, { 0xfe070800 }
   2115   },
   2116 /* cpunpacku.b $croc,$crqc,$crpc */
   2117   {
   2118     { 0, 0, 0, 0 },
   2119     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2120     & ifmt_cpadd3_b_C3, { 0xf0071000 }
   2121   },
   2122 /* cpunpacku.h $croc,$crqc,$crpc */
   2123   {
   2124     { 0, 0, 0, 0 },
   2125     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2126     & ifmt_cpadd3_b_C3, { 0xf2071000 }
   2127   },
   2128 /* cpunpacku.w $croc,$crqc,$crpc */
   2129   {
   2130     { 0, 0, 0, 0 },
   2131     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2132     & ifmt_cpadd3_b_C3, { 0xf4071000 }
   2133   },
   2134 /* cpunpackl.b $croc,$crqc,$crpc */
   2135   {
   2136     { 0, 0, 0, 0 },
   2137     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2138     & ifmt_cpadd3_b_C3, { 0xf8071000 }
   2139   },
   2140 /* cpunpackl.h $croc,$crqc,$crpc */
   2141   {
   2142     { 0, 0, 0, 0 },
   2143     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2144     & ifmt_cpadd3_b_C3, { 0xfa071000 }
   2145   },
   2146 /* cpunpackl.w $croc,$crqc,$crpc */
   2147   {
   2148     { 0, 0, 0, 0 },
   2149     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2150     & ifmt_cpadd3_b_C3, { 0xfc071000 }
   2151   },
   2152 /* cppacku.b $croc,$crqc,$crpc */
   2153   {
   2154     { 0, 0, 0, 0 },
   2155     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2156     & ifmt_cpadd3_b_C3, { 0xf8071800 }
   2157   },
   2158 /* cppack.b $croc,$crqc,$crpc */
   2159   {
   2160     { 0, 0, 0, 0 },
   2161     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2162     & ifmt_cpadd3_b_C3, { 0xfa071800 }
   2163   },
   2164 /* cppack.h $croc,$crqc,$crpc */
   2165   {
   2166     { 0, 0, 0, 0 },
   2167     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2168     & ifmt_cpadd3_b_C3, { 0xfe071800 }
   2169   },
   2170 /* cpsrl3.b $croc,$crqc,$crpc */
   2171   {
   2172     { 0, 0, 0, 0 },
   2173     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2174     & ifmt_cpadd3_b_C3, { 0xf0072000 }
   2175   },
   2176 /* cpssrl3.b $croc,$crqc,$crpc */
   2177   {
   2178     { 0, 0, 0, 0 },
   2179     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2180     & ifmt_cpadd3_b_C3, { 0xf2072000 }
   2181   },
   2182 /* cpsrl3.h $croc,$crqc,$crpc */
   2183   {
   2184     { 0, 0, 0, 0 },
   2185     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2186     & ifmt_cpadd3_b_C3, { 0xf4072000 }
   2187   },
   2188 /* cpssrl3.h $croc,$crqc,$crpc */
   2189   {
   2190     { 0, 0, 0, 0 },
   2191     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2192     & ifmt_cpadd3_b_C3, { 0xf6072000 }
   2193   },
   2194 /* cpsrl3.w $croc,$crqc,$crpc */
   2195   {
   2196     { 0, 0, 0, 0 },
   2197     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2198     & ifmt_cpadd3_b_C3, { 0xf8072000 }
   2199   },
   2200 /* cpssrl3.w $croc,$crqc,$crpc */
   2201   {
   2202     { 0, 0, 0, 0 },
   2203     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2204     & ifmt_cpadd3_b_C3, { 0xfa072000 }
   2205   },
   2206 /* cdsrl3 $croc,$crqc,$crpc */
   2207   {
   2208     { 0, 0, 0, 0 },
   2209     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2210     & ifmt_cpadd3_b_C3, { 0xfc072000 }
   2211   },
   2212 /* cpsra3.b $croc,$crqc,$crpc */
   2213   {
   2214     { 0, 0, 0, 0 },
   2215     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2216     & ifmt_cpadd3_b_C3, { 0xf0072800 }
   2217   },
   2218 /* cpssra3.b $croc,$crqc,$crpc */
   2219   {
   2220     { 0, 0, 0, 0 },
   2221     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2222     & ifmt_cpadd3_b_C3, { 0xf2072800 }
   2223   },
   2224 /* cpsra3.h $croc,$crqc,$crpc */
   2225   {
   2226     { 0, 0, 0, 0 },
   2227     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2228     & ifmt_cpadd3_b_C3, { 0xf4072800 }
   2229   },
   2230 /* cpssra3.h $croc,$crqc,$crpc */
   2231   {
   2232     { 0, 0, 0, 0 },
   2233     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2234     & ifmt_cpadd3_b_C3, { 0xf6072800 }
   2235   },
   2236 /* cpsra3.w $croc,$crqc,$crpc */
   2237   {
   2238     { 0, 0, 0, 0 },
   2239     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2240     & ifmt_cpadd3_b_C3, { 0xf8072800 }
   2241   },
   2242 /* cpssra3.w $croc,$crqc,$crpc */
   2243   {
   2244     { 0, 0, 0, 0 },
   2245     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2246     & ifmt_cpadd3_b_C3, { 0xfa072800 }
   2247   },
   2248 /* cdsra3 $croc,$crqc,$crpc */
   2249   {
   2250     { 0, 0, 0, 0 },
   2251     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2252     & ifmt_cpadd3_b_C3, { 0xfc072800 }
   2253   },
   2254 /* cpsll3.b $croc,$crqc,$crpc */
   2255   {
   2256     { 0, 0, 0, 0 },
   2257     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2258     & ifmt_cpadd3_b_C3, { 0xf0073000 }
   2259   },
   2260 /* cpssll3.b $croc,$crqc,$crpc */
   2261   {
   2262     { 0, 0, 0, 0 },
   2263     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2264     & ifmt_cpadd3_b_C3, { 0xf2073000 }
   2265   },
   2266 /* cpsll3.h $croc,$crqc,$crpc */
   2267   {
   2268     { 0, 0, 0, 0 },
   2269     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2270     & ifmt_cpadd3_b_C3, { 0xf4073000 }
   2271   },
   2272 /* cpssll3.h $croc,$crqc,$crpc */
   2273   {
   2274     { 0, 0, 0, 0 },
   2275     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2276     & ifmt_cpadd3_b_C3, { 0xf6073000 }
   2277   },
   2278 /* cpsll3.w $croc,$crqc,$crpc */
   2279   {
   2280     { 0, 0, 0, 0 },
   2281     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2282     & ifmt_cpadd3_b_C3, { 0xf8073000 }
   2283   },
   2284 /* cpssll3.w $croc,$crqc,$crpc */
   2285   {
   2286     { 0, 0, 0, 0 },
   2287     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2288     & ifmt_cpadd3_b_C3, { 0xfa073000 }
   2289   },
   2290 /* cdsll3 $croc,$crqc,$crpc */
   2291   {
   2292     { 0, 0, 0, 0 },
   2293     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2294     & ifmt_cpadd3_b_C3, { 0xfc073000 }
   2295   },
   2296 /* cpsla3.h $croc,$crqc,$crpc */
   2297   {
   2298     { 0, 0, 0, 0 },
   2299     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2300     & ifmt_cpadd3_b_C3, { 0xf4073800 }
   2301   },
   2302 /* cpsla3.w $croc,$crqc,$crpc */
   2303   {
   2304     { 0, 0, 0, 0 },
   2305     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2306     & ifmt_cpadd3_b_C3, { 0xf8073800 }
   2307   },
   2308 /* cpsadd3.h $croc,$crqc,$crpc */
   2309   {
   2310     { 0, 0, 0, 0 },
   2311     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2312     & ifmt_cpadd3_b_C3, { 0xf4074000 }
   2313   },
   2314 /* cpsadd3.w $croc,$crqc,$crpc */
   2315   {
   2316     { 0, 0, 0, 0 },
   2317     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2318     & ifmt_cpadd3_b_C3, { 0xf6074000 }
   2319   },
   2320 /* cpssub3.h $croc,$crqc,$crpc */
   2321   {
   2322     { 0, 0, 0, 0 },
   2323     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2324     & ifmt_cpadd3_b_C3, { 0xfc074000 }
   2325   },
   2326 /* cpssub3.w $croc,$crqc,$crpc */
   2327   {
   2328     { 0, 0, 0, 0 },
   2329     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2330     & ifmt_cpadd3_b_C3, { 0xfe074000 }
   2331   },
   2332 /* cpextuaddu3.b $croc,$crqc,$crpc */
   2333   {
   2334     { 0, 0, 0, 0 },
   2335     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2336     & ifmt_cpadd3_b_C3, { 0xf0074800 }
   2337   },
   2338 /* cpextuadd3.b $croc,$crqc,$crpc */
   2339   {
   2340     { 0, 0, 0, 0 },
   2341     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2342     & ifmt_cpadd3_b_C3, { 0xf2074800 }
   2343   },
   2344 /* cpextladdu3.b $croc,$crqc,$crpc */
   2345   {
   2346     { 0, 0, 0, 0 },
   2347     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2348     & ifmt_cpadd3_b_C3, { 0xf4074800 }
   2349   },
   2350 /* cpextladd3.b $croc,$crqc,$crpc */
   2351   {
   2352     { 0, 0, 0, 0 },
   2353     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2354     & ifmt_cpadd3_b_C3, { 0xf6074800 }
   2355   },
   2356 /* cpextusubu3.b $croc,$crqc,$crpc */
   2357   {
   2358     { 0, 0, 0, 0 },
   2359     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2360     & ifmt_cpadd3_b_C3, { 0xf8074800 }
   2361   },
   2362 /* cpextusub3.b $croc,$crqc,$crpc */
   2363   {
   2364     { 0, 0, 0, 0 },
   2365     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2366     & ifmt_cpadd3_b_C3, { 0xfa074800 }
   2367   },
   2368 /* cpextlsubu3.b $croc,$crqc,$crpc */
   2369   {
   2370     { 0, 0, 0, 0 },
   2371     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2372     & ifmt_cpadd3_b_C3, { 0xfc074800 }
   2373   },
   2374 /* cpextlsub3.b $croc,$crqc,$crpc */
   2375   {
   2376     { 0, 0, 0, 0 },
   2377     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2378     & ifmt_cpadd3_b_C3, { 0xfe074800 }
   2379   },
   2380 /* cpaveu3.b $croc,$crqc,$crpc */
   2381   {
   2382     { 0, 0, 0, 0 },
   2383     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2384     & ifmt_cpadd3_b_C3, { 0xf0075000 }
   2385   },
   2386 /* cpave3.b $croc,$crqc,$crpc */
   2387   {
   2388     { 0, 0, 0, 0 },
   2389     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2390     & ifmt_cpadd3_b_C3, { 0xf2075000 }
   2391   },
   2392 /* cpave3.h $croc,$crqc,$crpc */
   2393   {
   2394     { 0, 0, 0, 0 },
   2395     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2396     & ifmt_cpadd3_b_C3, { 0xf4075000 }
   2397   },
   2398 /* cpave3.w $croc,$crqc,$crpc */
   2399   {
   2400     { 0, 0, 0, 0 },
   2401     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2402     & ifmt_cpadd3_b_C3, { 0xf6075000 }
   2403   },
   2404 /* cpaddsru3.b $croc,$crqc,$crpc */
   2405   {
   2406     { 0, 0, 0, 0 },
   2407     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2408     & ifmt_cpadd3_b_C3, { 0xf8075000 }
   2409   },
   2410 /* cpaddsr3.b $croc,$crqc,$crpc */
   2411   {
   2412     { 0, 0, 0, 0 },
   2413     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2414     & ifmt_cpadd3_b_C3, { 0xfa075000 }
   2415   },
   2416 /* cpaddsr3.h $croc,$crqc,$crpc */
   2417   {
   2418     { 0, 0, 0, 0 },
   2419     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2420     & ifmt_cpadd3_b_C3, { 0xfc075000 }
   2421   },
   2422 /* cpaddsr3.w $croc,$crqc,$crpc */
   2423   {
   2424     { 0, 0, 0, 0 },
   2425     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2426     & ifmt_cpadd3_b_C3, { 0xfe075000 }
   2427   },
   2428 /* cpabsu3.b $croc,$crqc,$crpc */
   2429   {
   2430     { 0, 0, 0, 0 },
   2431     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2432     & ifmt_cpadd3_b_C3, { 0xf0075800 }
   2433   },
   2434 /* cpabs3.b $croc,$crqc,$crpc */
   2435   {
   2436     { 0, 0, 0, 0 },
   2437     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2438     & ifmt_cpadd3_b_C3, { 0xf2075800 }
   2439   },
   2440 /* cpabs3.h $croc,$crqc,$crpc */
   2441   {
   2442     { 0, 0, 0, 0 },
   2443     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2444     & ifmt_cpadd3_b_C3, { 0xf4075800 }
   2445   },
   2446 /* cpmaxu3.b $croc,$crqc,$crpc */
   2447   {
   2448     { 0, 0, 0, 0 },
   2449     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2450     & ifmt_cpadd3_b_C3, { 0xf0076000 }
   2451   },
   2452 /* cpmax3.b $croc,$crqc,$crpc */
   2453   {
   2454     { 0, 0, 0, 0 },
   2455     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2456     & ifmt_cpadd3_b_C3, { 0xf2076000 }
   2457   },
   2458 /* cpmax3.h $croc,$crqc,$crpc */
   2459   {
   2460     { 0, 0, 0, 0 },
   2461     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2462     & ifmt_cpadd3_b_C3, { 0xf6076000 }
   2463   },
   2464 /* cpmaxu3.w $croc,$crqc,$crpc */
   2465   {
   2466     { 0, 0, 0, 0 },
   2467     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2468     & ifmt_cpadd3_b_C3, { 0xf8076000 }
   2469   },
   2470 /* cpmax3.w $croc,$crqc,$crpc */
   2471   {
   2472     { 0, 0, 0, 0 },
   2473     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2474     & ifmt_cpadd3_b_C3, { 0xfa076000 }
   2475   },
   2476 /* cpminu3.b $croc,$crqc,$crpc */
   2477   {
   2478     { 0, 0, 0, 0 },
   2479     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2480     & ifmt_cpadd3_b_C3, { 0xf0076800 }
   2481   },
   2482 /* cpmin3.b $croc,$crqc,$crpc */
   2483   {
   2484     { 0, 0, 0, 0 },
   2485     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2486     & ifmt_cpadd3_b_C3, { 0xf2076800 }
   2487   },
   2488 /* cpmin3.h $croc,$crqc,$crpc */
   2489   {
   2490     { 0, 0, 0, 0 },
   2491     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2492     & ifmt_cpadd3_b_C3, { 0xf6076800 }
   2493   },
   2494 /* cpminu3.w $croc,$crqc,$crpc */
   2495   {
   2496     { 0, 0, 0, 0 },
   2497     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2498     & ifmt_cpadd3_b_C3, { 0xf8076800 }
   2499   },
   2500 /* cpmin3.w $croc,$crqc,$crpc */
   2501   {
   2502     { 0, 0, 0, 0 },
   2503     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), ',', OP (CRPC), 0 } },
   2504     & ifmt_cpadd3_b_C3, { 0xfa076800 }
   2505   },
   2506 /* cpmovfrcsar0 $croc */
   2507   {
   2508     { 0, 0, 0, 0 },
   2509     { { MNEM, ' ', OP (CROC), 0 } },
   2510     & ifmt_cpmovfrcsar0_C3, { 0xf0078000 }
   2511   },
   2512 /* cpmovfrcsar1 $croc */
   2513   {
   2514     { 0, 0, 0, 0 },
   2515     { { MNEM, ' ', OP (CROC), 0 } },
   2516     & ifmt_cpmovfrcsar0_C3, { 0xf007801e }
   2517   },
   2518 /* cpmovfrcc $croc */
   2519   {
   2520     { 0, 0, 0, 0 },
   2521     { { MNEM, ' ', OP (CROC), 0 } },
   2522     & ifmt_cpmovfrcsar0_C3, { 0xf0078002 }
   2523   },
   2524 /* cpmovtocsar0 $crqc */
   2525   {
   2526     { 0, 0, 0, 0 },
   2527     { { MNEM, ' ', OP (CRQC), 0 } },
   2528     & ifmt_cpmovtocsar0_C3, { 0xf0078020 }
   2529   },
   2530 /* cpmovtocsar1 $crqc */
   2531   {
   2532     { 0, 0, 0, 0 },
   2533     { { MNEM, ' ', OP (CRQC), 0 } },
   2534     & ifmt_cpmovtocsar0_C3, { 0xf007803e }
   2535   },
   2536 /* cpmovtocc $crqc */
   2537   {
   2538     { 0, 0, 0, 0 },
   2539     { { MNEM, ' ', OP (CRQC), 0 } },
   2540     & ifmt_cpmovtocsar0_C3, { 0xf0078022 }
   2541   },
   2542 /* cpmov $croc,$crqc */
   2543   {
   2544     { 0, 0, 0, 0 },
   2545     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2546     & ifmt_cpmov_C3, { 0xf0078800 }
   2547   },
   2548 /* cpabsz.b $croc,$crqc */
   2549   {
   2550     { 0, 0, 0, 0 },
   2551     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2552     & ifmt_cpmov_C3, { 0xf0078802 }
   2553   },
   2554 /* cpabsz.h $croc,$crqc */
   2555   {
   2556     { 0, 0, 0, 0 },
   2557     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2558     & ifmt_cpmov_C3, { 0xf0078804 }
   2559   },
   2560 /* cpabsz.w $croc,$crqc */
   2561   {
   2562     { 0, 0, 0, 0 },
   2563     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2564     & ifmt_cpmov_C3, { 0xf0078806 }
   2565   },
   2566 /* cpldz.h $croc,$crqc */
   2567   {
   2568     { 0, 0, 0, 0 },
   2569     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2570     & ifmt_cpmov_C3, { 0xf0078808 }
   2571   },
   2572 /* cpldz.w $croc,$crqc */
   2573   {
   2574     { 0, 0, 0, 0 },
   2575     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2576     & ifmt_cpmov_C3, { 0xf007880a }
   2577   },
   2578 /* cpnorm.h $croc,$crqc */
   2579   {
   2580     { 0, 0, 0, 0 },
   2581     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2582     & ifmt_cpmov_C3, { 0xf007880c }
   2583   },
   2584 /* cpnorm.w $croc,$crqc */
   2585   {
   2586     { 0, 0, 0, 0 },
   2587     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2588     & ifmt_cpmov_C3, { 0xf007880e }
   2589   },
   2590 /* cphaddu.b $croc,$crqc */
   2591   {
   2592     { 0, 0, 0, 0 },
   2593     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2594     & ifmt_cpmov_C3, { 0xf0078810 }
   2595   },
   2596 /* cphadd.b $croc,$crqc */
   2597   {
   2598     { 0, 0, 0, 0 },
   2599     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2600     & ifmt_cpmov_C3, { 0xf0078812 }
   2601   },
   2602 /* cphadd.h $croc,$crqc */
   2603   {
   2604     { 0, 0, 0, 0 },
   2605     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2606     & ifmt_cpmov_C3, { 0xf0078814 }
   2607   },
   2608 /* cphadd.w $croc,$crqc */
   2609   {
   2610     { 0, 0, 0, 0 },
   2611     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2612     & ifmt_cpmov_C3, { 0xf0078816 }
   2613   },
   2614 /* cpccadd.b $crqc */
   2615   {
   2616     { 0, 0, 0, 0 },
   2617     { { MNEM, ' ', OP (CRQC), 0 } },
   2618     & ifmt_cpmov_C3, { 0xf0078818 }
   2619   },
   2620 /* cpbcast.b $croc,$crqc */
   2621   {
   2622     { 0, 0, 0, 0 },
   2623     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2624     & ifmt_cpmov_C3, { 0xf007881a }
   2625   },
   2626 /* cpbcast.h $croc,$crqc */
   2627   {
   2628     { 0, 0, 0, 0 },
   2629     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2630     & ifmt_cpmov_C3, { 0xf007881c }
   2631   },
   2632 /* cpbcast.w $croc,$crqc */
   2633   {
   2634     { 0, 0, 0, 0 },
   2635     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2636     & ifmt_cpmov_C3, { 0xf007881e }
   2637   },
   2638 /* cpextuu.b $croc,$crqc */
   2639   {
   2640     { 0, 0, 0, 0 },
   2641     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2642     & ifmt_cpmov_C3, { 0xf0078820 }
   2643   },
   2644 /* cpextu.b $croc,$crqc */
   2645   {
   2646     { 0, 0, 0, 0 },
   2647     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2648     & ifmt_cpmov_C3, { 0xf0078822 }
   2649   },
   2650 /* cpextuu.h $croc,$crqc */
   2651   {
   2652     { 0, 0, 0, 0 },
   2653     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2654     & ifmt_cpmov_C3, { 0xf0078824 }
   2655   },
   2656 /* cpextu.h $croc,$crqc */
   2657   {
   2658     { 0, 0, 0, 0 },
   2659     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2660     & ifmt_cpmov_C3, { 0xf0078826 }
   2661   },
   2662 /* cpextlu.b $croc,$crqc */
   2663   {
   2664     { 0, 0, 0, 0 },
   2665     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2666     & ifmt_cpmov_C3, { 0xf0078828 }
   2667   },
   2668 /* cpextl.b $croc,$crqc */
   2669   {
   2670     { 0, 0, 0, 0 },
   2671     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2672     & ifmt_cpmov_C3, { 0xf007882a }
   2673   },
   2674 /* cpextlu.h $croc,$crqc */
   2675   {
   2676     { 0, 0, 0, 0 },
   2677     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2678     & ifmt_cpmov_C3, { 0xf007882c }
   2679   },
   2680 /* cpextl.h $croc,$crqc */
   2681   {
   2682     { 0, 0, 0, 0 },
   2683     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2684     & ifmt_cpmov_C3, { 0xf007882e }
   2685   },
   2686 /* cpcastub.h $croc,$crqc */
   2687   {
   2688     { 0, 0, 0, 0 },
   2689     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2690     & ifmt_cpmov_C3, { 0xf0078830 }
   2691   },
   2692 /* cpcastb.h $croc,$crqc */
   2693   {
   2694     { 0, 0, 0, 0 },
   2695     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2696     & ifmt_cpmov_C3, { 0xf0078832 }
   2697   },
   2698 /* cpcastub.w $croc,$crqc */
   2699   {
   2700     { 0, 0, 0, 0 },
   2701     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2702     & ifmt_cpmov_C3, { 0xf0078838 }
   2703   },
   2704 /* cpcastb.w $croc,$crqc */
   2705   {
   2706     { 0, 0, 0, 0 },
   2707     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2708     & ifmt_cpmov_C3, { 0xf007883a }
   2709   },
   2710 /* cpcastuh.w $croc,$crqc */
   2711   {
   2712     { 0, 0, 0, 0 },
   2713     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2714     & ifmt_cpmov_C3, { 0xf007883c }
   2715   },
   2716 /* cpcasth.w $croc,$crqc */
   2717   {
   2718     { 0, 0, 0, 0 },
   2719     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2720     & ifmt_cpmov_C3, { 0xf007883e }
   2721   },
   2722 /* cdcastuw $croc,$crqc */
   2723   {
   2724     { 0, 0, 0, 0 },
   2725     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2726     & ifmt_cpmov_C3, { 0xf0078834 }
   2727   },
   2728 /* cdcastw $croc,$crqc */
   2729   {
   2730     { 0, 0, 0, 0 },
   2731     { { MNEM, ' ', OP (CROC), ',', OP (CRQC), 0 } },
   2732     & ifmt_cpmov_C3, { 0xf0078836 }
   2733   },
   2734 /* cpcmpeqz.b $crqc,$crpc */
   2735   {
   2736     { 0, 0, 0, 0 },
   2737     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2738     & ifmt_cpcmpeqz_b_C3, { 0xf0079000 }
   2739   },
   2740 /* cpcmpeq.b $crqc,$crpc */
   2741   {
   2742     { 0, 0, 0, 0 },
   2743     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2744     & ifmt_cpcmpeqz_b_C3, { 0xf0179000 }
   2745   },
   2746 /* cpcmpeq.h $crqc,$crpc */
   2747   {
   2748     { 0, 0, 0, 0 },
   2749     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2750     & ifmt_cpcmpeqz_b_C3, { 0xf0379000 }
   2751   },
   2752 /* cpcmpeq.w $crqc,$crpc */
   2753   {
   2754     { 0, 0, 0, 0 },
   2755     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2756     & ifmt_cpcmpeqz_b_C3, { 0xf0579000 }
   2757   },
   2758 /* cpcmpne.b $crqc,$crpc */
   2759   {
   2760     { 0, 0, 0, 0 },
   2761     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2762     & ifmt_cpcmpeqz_b_C3, { 0xf0979000 }
   2763   },
   2764 /* cpcmpne.h $crqc,$crpc */
   2765   {
   2766     { 0, 0, 0, 0 },
   2767     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2768     & ifmt_cpcmpeqz_b_C3, { 0xf0b79000 }
   2769   },
   2770 /* cpcmpne.w $crqc,$crpc */
   2771   {
   2772     { 0, 0, 0, 0 },
   2773     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2774     & ifmt_cpcmpeqz_b_C3, { 0xf0d79000 }
   2775   },
   2776 /* cpcmpgtu.b $crqc,$crpc */
   2777   {
   2778     { 0, 0, 0, 0 },
   2779     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2780     & ifmt_cpcmpeqz_b_C3, { 0xf1079000 }
   2781   },
   2782 /* cpcmpgt.b $crqc,$crpc */
   2783   {
   2784     { 0, 0, 0, 0 },
   2785     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2786     & ifmt_cpcmpeqz_b_C3, { 0xf1179000 }
   2787   },
   2788 /* cpcmpgt.h $crqc,$crpc */
   2789   {
   2790     { 0, 0, 0, 0 },
   2791     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2792     & ifmt_cpcmpeqz_b_C3, { 0xf1379000 }
   2793   },
   2794 /* cpcmpgtu.w $crqc,$crpc */
   2795   {
   2796     { 0, 0, 0, 0 },
   2797     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2798     & ifmt_cpcmpeqz_b_C3, { 0xf1479000 }
   2799   },
   2800 /* cpcmpgt.w $crqc,$crpc */
   2801   {
   2802     { 0, 0, 0, 0 },
   2803     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2804     & ifmt_cpcmpeqz_b_C3, { 0xf1579000 }
   2805   },
   2806 /* cpcmpgeu.b $crqc,$crpc */
   2807   {
   2808     { 0, 0, 0, 0 },
   2809     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2810     & ifmt_cpcmpeqz_b_C3, { 0xf1879000 }
   2811   },
   2812 /* cpcmpge.b $crqc,$crpc */
   2813   {
   2814     { 0, 0, 0, 0 },
   2815     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2816     & ifmt_cpcmpeqz_b_C3, { 0xf1979000 }
   2817   },
   2818 /* cpcmpge.h $crqc,$crpc */
   2819   {
   2820     { 0, 0, 0, 0 },
   2821     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2822     & ifmt_cpcmpeqz_b_C3, { 0xf1b79000 }
   2823   },
   2824 /* cpcmpgeu.w $crqc,$crpc */
   2825   {
   2826     { 0, 0, 0, 0 },
   2827     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2828     & ifmt_cpcmpeqz_b_C3, { 0xf1c79000 }
   2829   },
   2830 /* cpcmpge.w $crqc,$crpc */
   2831   {
   2832     { 0, 0, 0, 0 },
   2833     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2834     & ifmt_cpcmpeqz_b_C3, { 0xf1d79000 }
   2835   },
   2836 /* cpacmpeq.b $crqc,$crpc */
   2837   {
   2838     { 0, 0, 0, 0 },
   2839     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2840     & ifmt_cpcmpeqz_b_C3, { 0xf2179000 }
   2841   },
   2842 /* cpacmpeq.h $crqc,$crpc */
   2843   {
   2844     { 0, 0, 0, 0 },
   2845     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2846     & ifmt_cpcmpeqz_b_C3, { 0xf2379000 }
   2847   },
   2848 /* cpacmpeq.w $crqc,$crpc */
   2849   {
   2850     { 0, 0, 0, 0 },
   2851     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2852     & ifmt_cpcmpeqz_b_C3, { 0xf2579000 }
   2853   },
   2854 /* cpacmpne.b $crqc,$crpc */
   2855   {
   2856     { 0, 0, 0, 0 },
   2857     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2858     & ifmt_cpcmpeqz_b_C3, { 0xf2979000 }
   2859   },
   2860 /* cpacmpne.h $crqc,$crpc */
   2861   {
   2862     { 0, 0, 0, 0 },
   2863     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2864     & ifmt_cpcmpeqz_b_C3, { 0xf2b79000 }
   2865   },
   2866 /* cpacmpne.w $crqc,$crpc */
   2867   {
   2868     { 0, 0, 0, 0 },
   2869     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2870     & ifmt_cpcmpeqz_b_C3, { 0xf2d79000 }
   2871   },
   2872 /* cpacmpgtu.b $crqc,$crpc */
   2873   {
   2874     { 0, 0, 0, 0 },
   2875     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2876     & ifmt_cpcmpeqz_b_C3, { 0xf3079000 }
   2877   },
   2878 /* cpacmpgt.b $crqc,$crpc */
   2879   {
   2880     { 0, 0, 0, 0 },
   2881     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2882     & ifmt_cpcmpeqz_b_C3, { 0xf3179000 }
   2883   },
   2884 /* cpacmpgt.h $crqc,$crpc */
   2885   {
   2886     { 0, 0, 0, 0 },
   2887     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2888     & ifmt_cpcmpeqz_b_C3, { 0xf3379000 }
   2889   },
   2890 /* cpacmpgtu.w $crqc,$crpc */
   2891   {
   2892     { 0, 0, 0, 0 },
   2893     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2894     & ifmt_cpcmpeqz_b_C3, { 0xf3479000 }
   2895   },
   2896 /* cpacmpgt.w $crqc,$crpc */
   2897   {
   2898     { 0, 0, 0, 0 },
   2899     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2900     & ifmt_cpcmpeqz_b_C3, { 0xf3579000 }
   2901   },
   2902 /* cpacmpgeu.b $crqc,$crpc */
   2903   {
   2904     { 0, 0, 0, 0 },
   2905     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2906     & ifmt_cpcmpeqz_b_C3, { 0xf3879000 }
   2907   },
   2908 /* cpacmpge.b $crqc,$crpc */
   2909   {
   2910     { 0, 0, 0, 0 },
   2911     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2912     & ifmt_cpcmpeqz_b_C3, { 0xf3979000 }
   2913   },
   2914 /* cpacmpge.h $crqc,$crpc */
   2915   {
   2916     { 0, 0, 0, 0 },
   2917     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2918     & ifmt_cpcmpeqz_b_C3, { 0xf3b79000 }
   2919   },
   2920 /* cpacmpgeu.w $crqc,$crpc */
   2921   {
   2922     { 0, 0, 0, 0 },
   2923     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2924     & ifmt_cpcmpeqz_b_C3, { 0xf3c79000 }
   2925   },
   2926 /* cpacmpge.w $crqc,$crpc */
   2927   {
   2928     { 0, 0, 0, 0 },
   2929     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2930     & ifmt_cpcmpeqz_b_C3, { 0xf3d79000 }
   2931   },
   2932 /* cpocmpeq.b $crqc,$crpc */
   2933   {
   2934     { 0, 0, 0, 0 },
   2935     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2936     & ifmt_cpcmpeqz_b_C3, { 0xf4179000 }
   2937   },
   2938 /* cpocmpeq.h $crqc,$crpc */
   2939   {
   2940     { 0, 0, 0, 0 },
   2941     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2942     & ifmt_cpcmpeqz_b_C3, { 0xf4379000 }
   2943   },
   2944 /* cpocmpeq.w $crqc,$crpc */
   2945   {
   2946     { 0, 0, 0, 0 },
   2947     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2948     & ifmt_cpcmpeqz_b_C3, { 0xf4579000 }
   2949   },
   2950 /* cpocmpne.b $crqc,$crpc */
   2951   {
   2952     { 0, 0, 0, 0 },
   2953     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2954     & ifmt_cpcmpeqz_b_C3, { 0xf4979000 }
   2955   },
   2956 /* cpocmpne.h $crqc,$crpc */
   2957   {
   2958     { 0, 0, 0, 0 },
   2959     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2960     & ifmt_cpcmpeqz_b_C3, { 0xf4b79000 }
   2961   },
   2962 /* cpocmpne.w $crqc,$crpc */
   2963   {
   2964     { 0, 0, 0, 0 },
   2965     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2966     & ifmt_cpcmpeqz_b_C3, { 0xf4d79000 }
   2967   },
   2968 /* cpocmpgtu.b $crqc,$crpc */
   2969   {
   2970     { 0, 0, 0, 0 },
   2971     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2972     & ifmt_cpcmpeqz_b_C3, { 0xf5079000 }
   2973   },
   2974 /* cpocmpgt.b $crqc,$crpc */
   2975   {
   2976     { 0, 0, 0, 0 },
   2977     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2978     & ifmt_cpcmpeqz_b_C3, { 0xf5179000 }
   2979   },
   2980 /* cpocmpgt.h $crqc,$crpc */
   2981   {
   2982     { 0, 0, 0, 0 },
   2983     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2984     & ifmt_cpcmpeqz_b_C3, { 0xf5379000 }
   2985   },
   2986 /* cpocmpgtu.w $crqc,$crpc */
   2987   {
   2988     { 0, 0, 0, 0 },
   2989     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2990     & ifmt_cpcmpeqz_b_C3, { 0xf5479000 }
   2991   },
   2992 /* cpocmpgt.w $crqc,$crpc */
   2993   {
   2994     { 0, 0, 0, 0 },
   2995     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   2996     & ifmt_cpcmpeqz_b_C3, { 0xf5579000 }
   2997   },
   2998 /* cpocmpgeu.b $crqc,$crpc */
   2999   {
   3000     { 0, 0, 0, 0 },
   3001     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3002     & ifmt_cpcmpeqz_b_C3, { 0xf5879000 }
   3003   },
   3004 /* cpocmpge.b $crqc,$crpc */
   3005   {
   3006     { 0, 0, 0, 0 },
   3007     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3008     & ifmt_cpcmpeqz_b_C3, { 0xf5979000 }
   3009   },
   3010 /* cpocmpge.h $crqc,$crpc */
   3011   {
   3012     { 0, 0, 0, 0 },
   3013     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3014     & ifmt_cpcmpeqz_b_C3, { 0xf5b79000 }
   3015   },
   3016 /* cpocmpgeu.w $crqc,$crpc */
   3017   {
   3018     { 0, 0, 0, 0 },
   3019     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3020     & ifmt_cpcmpeqz_b_C3, { 0xf5c79000 }
   3021   },
   3022 /* cpocmpge.w $crqc,$crpc */
   3023   {
   3024     { 0, 0, 0, 0 },
   3025     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3026     & ifmt_cpcmpeqz_b_C3, { 0xf5d79000 }
   3027   },
   3028 /* cpsrli3.b $crqc,$crpc,$imm3p9 */
   3029   {
   3030     { 0, 0, 0, 0 },
   3031     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM3P9), 0 } },
   3032     & ifmt_cpsrli3_b_C3, { 0xf007a000 }
   3033   },
   3034 /* cpsrli3.h $crqc,$crpc,$imm4p8 */
   3035   {
   3036     { 0, 0, 0, 0 },
   3037     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM4P8), 0 } },
   3038     & ifmt_cpsrli3_h_C3, { 0xf407a000 }
   3039   },
   3040 /* cpsrli3.w $crqc,$crpc,$imm5p7 */
   3041   {
   3042     { 0, 0, 0, 0 },
   3043     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM5P7), 0 } },
   3044     & ifmt_cpsrli3_w_C3, { 0xf807a000 }
   3045   },
   3046 /* cdsrli3 $crqc,$crpc,$imm6p6 */
   3047   {
   3048     { 0, 0, 0, 0 },
   3049     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM6P6), 0 } },
   3050     & ifmt_cdsrli3_C3, { 0xfc07a000 }
   3051   },
   3052 /* cpsrai3.b $crqc,$crpc,$imm3p9 */
   3053   {
   3054     { 0, 0, 0, 0 },
   3055     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM3P9), 0 } },
   3056     & ifmt_cpsrli3_b_C3, { 0xf007a800 }
   3057   },
   3058 /* cpsrai3.h $crqc,$crpc,$imm4p8 */
   3059   {
   3060     { 0, 0, 0, 0 },
   3061     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM4P8), 0 } },
   3062     & ifmt_cpsrli3_h_C3, { 0xf407a800 }
   3063   },
   3064 /* cpsrai3.w $crqc,$crpc,$imm5p7 */
   3065   {
   3066     { 0, 0, 0, 0 },
   3067     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM5P7), 0 } },
   3068     & ifmt_cpsrli3_w_C3, { 0xf807a800 }
   3069   },
   3070 /* cdsrai3 $crqc,$crpc,$imm6p6 */
   3071   {
   3072     { 0, 0, 0, 0 },
   3073     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM6P6), 0 } },
   3074     & ifmt_cdsrli3_C3, { 0xfc07a800 }
   3075   },
   3076 /* cpslli3.b $crqc,$crpc,$imm3p9 */
   3077   {
   3078     { 0, 0, 0, 0 },
   3079     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM3P9), 0 } },
   3080     & ifmt_cpsrli3_b_C3, { 0xf007b000 }
   3081   },
   3082 /* cpslli3.h $crqc,$crpc,$imm4p8 */
   3083   {
   3084     { 0, 0, 0, 0 },
   3085     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM4P8), 0 } },
   3086     & ifmt_cpsrli3_h_C3, { 0xf407b000 }
   3087   },
   3088 /* cpslli3.w $crqc,$crpc,$imm5p7 */
   3089   {
   3090     { 0, 0, 0, 0 },
   3091     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM5P7), 0 } },
   3092     & ifmt_cpsrli3_w_C3, { 0xf807b000 }
   3093   },
   3094 /* cdslli3 $crqc,$crpc,$imm6p6 */
   3095   {
   3096     { 0, 0, 0, 0 },
   3097     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM6P6), 0 } },
   3098     & ifmt_cdsrli3_C3, { 0xfc07b000 }
   3099   },
   3100 /* cpslai3.h $crqc,$crpc,$imm4p8 */
   3101   {
   3102     { 0, 0, 0, 0 },
   3103     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM4P8), 0 } },
   3104     & ifmt_cpsrli3_h_C3, { 0xf407b800 }
   3105   },
   3106 /* cpslai3.w $crqc,$crpc,$imm5p7 */
   3107   {
   3108     { 0, 0, 0, 0 },
   3109     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM5P7), 0 } },
   3110     & ifmt_cpsrli3_w_C3, { 0xf807b800 }
   3111   },
   3112 /* cpclipiu3.w $crqc,$crpc,$imm5p7 */
   3113   {
   3114     { 0, 0, 0, 0 },
   3115     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM5P7), 0 } },
   3116     & ifmt_cpsrli3_w_C3, { 0xf007c000 }
   3117   },
   3118 /* cpclipi3.w $crqc,$crpc,$imm5p7 */
   3119   {
   3120     { 0, 0, 0, 0 },
   3121     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM5P7), 0 } },
   3122     & ifmt_cpsrli3_w_C3, { 0xf407c000 }
   3123   },
   3124 /* cdclipiu3 $crqc,$crpc,$imm6p6 */
   3125   {
   3126     { 0, 0, 0, 0 },
   3127     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM6P6), 0 } },
   3128     & ifmt_cdsrli3_C3, { 0xf807c000 }
   3129   },
   3130 /* cdclipi3 $crqc,$crpc,$imm6p6 */
   3131   {
   3132     { 0, 0, 0, 0 },
   3133     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), ',', OP (IMM6P6), 0 } },
   3134     & ifmt_cdsrli3_C3, { 0xfc07c000 }
   3135   },
   3136 /* cpmovi.b $crqc,$simm8p4 */
   3137   {
   3138     { 0, 0, 0, 0 },
   3139     { { MNEM, ' ', OP (CRQC), ',', OP (SIMM8P4), 0 } },
   3140     & ifmt_cpmovi_b_C3, { 0xf007c800 }
   3141   },
   3142 /* cpmoviu.h $crqc,$imm8p4 */
   3143   {
   3144     { 0, 0, 0, 0 },
   3145     { { MNEM, ' ', OP (CRQC), ',', OP (IMM8P4), 0 } },
   3146     & ifmt_cpmoviu_h_C3, { 0xf007c804 }
   3147   },
   3148 /* cpmovi.h $crqc,$simm8p4 */
   3149   {
   3150     { 0, 0, 0, 0 },
   3151     { { MNEM, ' ', OP (CRQC), ',', OP (SIMM8P4), 0 } },
   3152     & ifmt_cpmovi_b_C3, { 0xf007c806 }
   3153   },
   3154 /* cpmoviu.w $crqc,$imm8p4 */
   3155   {
   3156     { 0, 0, 0, 0 },
   3157     { { MNEM, ' ', OP (CRQC), ',', OP (IMM8P4), 0 } },
   3158     & ifmt_cpmoviu_h_C3, { 0xf007c808 }
   3159   },
   3160 /* cpmovi.w $crqc,$simm8p4 */
   3161   {
   3162     { 0, 0, 0, 0 },
   3163     { { MNEM, ' ', OP (CRQC), ',', OP (SIMM8P4), 0 } },
   3164     & ifmt_cpmovi_b_C3, { 0xf007c80a }
   3165   },
   3166 /* cdmoviu $crqc,$imm8p4 */
   3167   {
   3168     { 0, 0, 0, 0 },
   3169     { { MNEM, ' ', OP (CRQC), ',', OP (IMM8P4), 0 } },
   3170     & ifmt_cpmoviu_h_C3, { 0xf007c80c }
   3171   },
   3172 /* cdmovi $crqc,$simm8p4 */
   3173   {
   3174     { 0, 0, 0, 0 },
   3175     { { MNEM, ' ', OP (CRQC), ',', OP (SIMM8P4), 0 } },
   3176     & ifmt_cpmovi_b_C3, { 0xf007c80e }
   3177   },
   3178 /* cpadda1u.b $crqc,$crpc */
   3179   {
   3180     { 0, 0, 0, 0 },
   3181     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3182     & ifmt_cpcmpeqz_b_C3, { 0xf0070001 }
   3183   },
   3184 /* cpadda1.b $crqc,$crpc */
   3185   {
   3186     { 0, 0, 0, 0 },
   3187     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3188     & ifmt_cpcmpeqz_b_C3, { 0xf0170001 }
   3189   },
   3190 /* cpaddua1.h $crqc,$crpc */
   3191   {
   3192     { 0, 0, 0, 0 },
   3193     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3194     & ifmt_cpcmpeqz_b_C3, { 0xf0270001 }
   3195   },
   3196 /* cpaddla1.h $crqc,$crpc */
   3197   {
   3198     { 0, 0, 0, 0 },
   3199     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3200     & ifmt_cpcmpeqz_b_C3, { 0xf0370001 }
   3201   },
   3202 /* cpaddaca1u.b $crqc,$crpc */
   3203   {
   3204     { 0, 0, 0, 0 },
   3205     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3206     & ifmt_cpcmpeqz_b_C3, { 0xf0470001 }
   3207   },
   3208 /* cpaddaca1.b $crqc,$crpc */
   3209   {
   3210     { 0, 0, 0, 0 },
   3211     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3212     & ifmt_cpcmpeqz_b_C3, { 0xf0570001 }
   3213   },
   3214 /* cpaddacua1.h $crqc,$crpc */
   3215   {
   3216     { 0, 0, 0, 0 },
   3217     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3218     & ifmt_cpcmpeqz_b_C3, { 0xf0670001 }
   3219   },
   3220 /* cpaddacla1.h $crqc,$crpc */
   3221   {
   3222     { 0, 0, 0, 0 },
   3223     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3224     & ifmt_cpcmpeqz_b_C3, { 0xf0770001 }
   3225   },
   3226 /* cpsuba1u.b $crqc,$crpc */
   3227   {
   3228     { 0, 0, 0, 0 },
   3229     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3230     & ifmt_cpcmpeqz_b_C3, { 0xf0870001 }
   3231   },
   3232 /* cpsuba1.b $crqc,$crpc */
   3233   {
   3234     { 0, 0, 0, 0 },
   3235     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3236     & ifmt_cpcmpeqz_b_C3, { 0xf0970001 }
   3237   },
   3238 /* cpsubua1.h $crqc,$crpc */
   3239   {
   3240     { 0, 0, 0, 0 },
   3241     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3242     & ifmt_cpcmpeqz_b_C3, { 0xf0a70001 }
   3243   },
   3244 /* cpsubla1.h $crqc,$crpc */
   3245   {
   3246     { 0, 0, 0, 0 },
   3247     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3248     & ifmt_cpcmpeqz_b_C3, { 0xf0b70001 }
   3249   },
   3250 /* cpsubaca1u.b $crqc,$crpc */
   3251   {
   3252     { 0, 0, 0, 0 },
   3253     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3254     & ifmt_cpcmpeqz_b_C3, { 0xf0c70001 }
   3255   },
   3256 /* cpsubaca1.b $crqc,$crpc */
   3257   {
   3258     { 0, 0, 0, 0 },
   3259     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3260     & ifmt_cpcmpeqz_b_C3, { 0xf0d70001 }
   3261   },
   3262 /* cpsubacua1.h $crqc,$crpc */
   3263   {
   3264     { 0, 0, 0, 0 },
   3265     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3266     & ifmt_cpcmpeqz_b_C3, { 0xf0e70001 }
   3267   },
   3268 /* cpsubacla1.h $crqc,$crpc */
   3269   {
   3270     { 0, 0, 0, 0 },
   3271     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3272     & ifmt_cpcmpeqz_b_C3, { 0xf0f70001 }
   3273   },
   3274 /* cpabsa1u.b $crqc,$crpc */
   3275   {
   3276     { 0, 0, 0, 0 },
   3277     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3278     & ifmt_cpcmpeqz_b_C3, { 0xf1070001 }
   3279   },
   3280 /* cpabsa1.b $crqc,$crpc */
   3281   {
   3282     { 0, 0, 0, 0 },
   3283     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3284     & ifmt_cpcmpeqz_b_C3, { 0xf1170001 }
   3285   },
   3286 /* cpabsua1.h $crqc,$crpc */
   3287   {
   3288     { 0, 0, 0, 0 },
   3289     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3290     & ifmt_cpcmpeqz_b_C3, { 0xf1270001 }
   3291   },
   3292 /* cpabsla1.h $crqc,$crpc */
   3293   {
   3294     { 0, 0, 0, 0 },
   3295     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3296     & ifmt_cpcmpeqz_b_C3, { 0xf1370001 }
   3297   },
   3298 /* cpsada1u.b $crqc,$crpc */
   3299   {
   3300     { 0, 0, 0, 0 },
   3301     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3302     & ifmt_cpcmpeqz_b_C3, { 0xf1470001 }
   3303   },
   3304 /* cpsada1.b $crqc,$crpc */
   3305   {
   3306     { 0, 0, 0, 0 },
   3307     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3308     & ifmt_cpcmpeqz_b_C3, { 0xf1570001 }
   3309   },
   3310 /* cpsadua1.h $crqc,$crpc */
   3311   {
   3312     { 0, 0, 0, 0 },
   3313     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3314     & ifmt_cpcmpeqz_b_C3, { 0xf1670001 }
   3315   },
   3316 /* cpsadla1.h $crqc,$crpc */
   3317   {
   3318     { 0, 0, 0, 0 },
   3319     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3320     & ifmt_cpcmpeqz_b_C3, { 0xf1770001 }
   3321   },
   3322 /* cpseta1.h $crqc,$crpc */
   3323   {
   3324     { 0, 0, 0, 0 },
   3325     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3326     & ifmt_cpcmpeqz_b_C3, { 0xf2070001 }
   3327   },
   3328 /* cpsetua1.w $crqc,$crpc */
   3329   {
   3330     { 0, 0, 0, 0 },
   3331     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3332     & ifmt_cpcmpeqz_b_C3, { 0xf2270001 }
   3333   },
   3334 /* cpsetla1.w $crqc,$crpc */
   3335   {
   3336     { 0, 0, 0, 0 },
   3337     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3338     & ifmt_cpcmpeqz_b_C3, { 0xf2370001 }
   3339   },
   3340 /* cpmova1.b $croc */
   3341   {
   3342     { 0, 0, 0, 0 },
   3343     { { MNEM, ' ', OP (CROC), 0 } },
   3344     & ifmt_cpmovfrcsar0_C3, { 0xf0072001 }
   3345   },
   3346 /* cpmovua1.h $croc */
   3347   {
   3348     { 0, 0, 0, 0 },
   3349     { { MNEM, ' ', OP (CROC), 0 } },
   3350     & ifmt_cpmovfrcsar0_C3, { 0xf0072005 }
   3351   },
   3352 /* cpmovla1.h $croc */
   3353   {
   3354     { 0, 0, 0, 0 },
   3355     { { MNEM, ' ', OP (CROC), 0 } },
   3356     & ifmt_cpmovfrcsar0_C3, { 0xf0072007 }
   3357   },
   3358 /* cpmovuua1.w $croc */
   3359   {
   3360     { 0, 0, 0, 0 },
   3361     { { MNEM, ' ', OP (CROC), 0 } },
   3362     & ifmt_cpmovfrcsar0_C3, { 0xf0072009 }
   3363   },
   3364 /* cpmovula1.w $croc */
   3365   {
   3366     { 0, 0, 0, 0 },
   3367     { { MNEM, ' ', OP (CROC), 0 } },
   3368     & ifmt_cpmovfrcsar0_C3, { 0xf007200b }
   3369   },
   3370 /* cpmovlua1.w $croc */
   3371   {
   3372     { 0, 0, 0, 0 },
   3373     { { MNEM, ' ', OP (CROC), 0 } },
   3374     & ifmt_cpmovfrcsar0_C3, { 0xf007200d }
   3375   },
   3376 /* cpmovlla1.w $croc */
   3377   {
   3378     { 0, 0, 0, 0 },
   3379     { { MNEM, ' ', OP (CROC), 0 } },
   3380     & ifmt_cpmovfrcsar0_C3, { 0xf007200f }
   3381   },
   3382 /* cppacka1u.b $croc */
   3383   {
   3384     { 0, 0, 0, 0 },
   3385     { { MNEM, ' ', OP (CROC), 0 } },
   3386     & ifmt_cpmovfrcsar0_C3, { 0xf0072021 }
   3387   },
   3388 /* cppacka1.b $croc */
   3389   {
   3390     { 0, 0, 0, 0 },
   3391     { { MNEM, ' ', OP (CROC), 0 } },
   3392     & ifmt_cpmovfrcsar0_C3, { 0xf0072023 }
   3393   },
   3394 /* cppackua1.h $croc */
   3395   {
   3396     { 0, 0, 0, 0 },
   3397     { { MNEM, ' ', OP (CROC), 0 } },
   3398     & ifmt_cpmovfrcsar0_C3, { 0xf0072025 }
   3399   },
   3400 /* cppackla1.h $croc */
   3401   {
   3402     { 0, 0, 0, 0 },
   3403     { { MNEM, ' ', OP (CROC), 0 } },
   3404     & ifmt_cpmovfrcsar0_C3, { 0xf0072027 }
   3405   },
   3406 /* cppackua1.w $croc */
   3407   {
   3408     { 0, 0, 0, 0 },
   3409     { { MNEM, ' ', OP (CROC), 0 } },
   3410     & ifmt_cpmovfrcsar0_C3, { 0xf0072029 }
   3411   },
   3412 /* cppackla1.w $croc */
   3413   {
   3414     { 0, 0, 0, 0 },
   3415     { { MNEM, ' ', OP (CROC), 0 } },
   3416     & ifmt_cpmovfrcsar0_C3, { 0xf007202b }
   3417   },
   3418 /* cpmovhua1.w $croc */
   3419   {
   3420     { 0, 0, 0, 0 },
   3421     { { MNEM, ' ', OP (CROC), 0 } },
   3422     & ifmt_cpmovfrcsar0_C3, { 0xf007202d }
   3423   },
   3424 /* cpmovhla1.w $croc */
   3425   {
   3426     { 0, 0, 0, 0 },
   3427     { { MNEM, ' ', OP (CROC), 0 } },
   3428     & ifmt_cpmovfrcsar0_C3, { 0xf007202f }
   3429   },
   3430 /* cpsrla1 $crqc */
   3431   {
   3432     { 0, 0, 0, 0 },
   3433     { { MNEM, ' ', OP (CRQC), 0 } },
   3434     & ifmt_cpmovtocsar0_C3, { 0xf0071001 }
   3435   },
   3436 /* cpsraa1 $crqc */
   3437   {
   3438     { 0, 0, 0, 0 },
   3439     { { MNEM, ' ', OP (CRQC), 0 } },
   3440     & ifmt_cpmovtocsar0_C3, { 0xf0171001 }
   3441   },
   3442 /* cpslla1 $crqc */
   3443   {
   3444     { 0, 0, 0, 0 },
   3445     { { MNEM, ' ', OP (CRQC), 0 } },
   3446     & ifmt_cpmovtocsar0_C3, { 0xf0271001 }
   3447   },
   3448 /* cpsrlia1 $imm5p7 */
   3449   {
   3450     { 0, 0, 0, 0 },
   3451     { { MNEM, ' ', OP (IMM5P7), 0 } },
   3452     & ifmt_cpsrlia1_P1, { 0xf0071801 }
   3453   },
   3454 /* cpsraia1 $imm5p7 */
   3455   {
   3456     { 0, 0, 0, 0 },
   3457     { { MNEM, ' ', OP (IMM5P7), 0 } },
   3458     & ifmt_cpsrlia1_P1, { 0xf4071801 }
   3459   },
   3460 /* cpsllia1 $imm5p7 */
   3461   {
   3462     { 0, 0, 0, 0 },
   3463     { { MNEM, ' ', OP (IMM5P7), 0 } },
   3464     & ifmt_cpsrlia1_P1, { 0xf8071801 }
   3465   },
   3466 /* cpssqa1u.b $crqc,$crpc */
   3467   {
   3468     { 0, 0, 0, 0 },
   3469     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3470     & ifmt_cpcmpeqz_b_C3, { 0xf0070801 }
   3471   },
   3472 /* cpssqa1.b $crqc,$crpc */
   3473   {
   3474     { 0, 0, 0, 0 },
   3475     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3476     & ifmt_cpcmpeqz_b_C3, { 0xf0170801 }
   3477   },
   3478 /* cpssda1u.b $crqc,$crpc */
   3479   {
   3480     { 0, 0, 0, 0 },
   3481     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3482     & ifmt_cpcmpeqz_b_C3, { 0xf0470801 }
   3483   },
   3484 /* cpssda1.b $crqc,$crpc */
   3485   {
   3486     { 0, 0, 0, 0 },
   3487     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3488     & ifmt_cpcmpeqz_b_C3, { 0xf0570801 }
   3489   },
   3490 /* cpmula1u.b $crqc,$crpc */
   3491   {
   3492     { 0, 0, 0, 0 },
   3493     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3494     & ifmt_cpcmpeqz_b_C3, { 0xf0870801 }
   3495   },
   3496 /* cpmula1.b $crqc,$crpc */
   3497   {
   3498     { 0, 0, 0, 0 },
   3499     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3500     & ifmt_cpcmpeqz_b_C3, { 0xf0970801 }
   3501   },
   3502 /* cpmulua1.h $crqc,$crpc */
   3503   {
   3504     { 0, 0, 0, 0 },
   3505     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3506     & ifmt_cpcmpeqz_b_C3, { 0xf0a70801 }
   3507   },
   3508 /* cpmulla1.h $crqc,$crpc */
   3509   {
   3510     { 0, 0, 0, 0 },
   3511     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3512     & ifmt_cpcmpeqz_b_C3, { 0xf0b70801 }
   3513   },
   3514 /* cpmulua1u.w $crqc,$crpc */
   3515   {
   3516     { 0, 0, 0, 0 },
   3517     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3518     & ifmt_cpcmpeqz_b_C3, { 0xf0c70801 }
   3519   },
   3520 /* cpmulla1u.w $crqc,$crpc */
   3521   {
   3522     { 0, 0, 0, 0 },
   3523     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3524     & ifmt_cpcmpeqz_b_C3, { 0xf0d70801 }
   3525   },
   3526 /* cpmulua1.w $crqc,$crpc */
   3527   {
   3528     { 0, 0, 0, 0 },
   3529     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3530     & ifmt_cpcmpeqz_b_C3, { 0xf0e70801 }
   3531   },
   3532 /* cpmulla1.w $crqc,$crpc */
   3533   {
   3534     { 0, 0, 0, 0 },
   3535     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3536     & ifmt_cpcmpeqz_b_C3, { 0xf0f70801 }
   3537   },
   3538 /* cpmada1u.b $crqc,$crpc */
   3539   {
   3540     { 0, 0, 0, 0 },
   3541     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3542     & ifmt_cpcmpeqz_b_C3, { 0xf1070801 }
   3543   },
   3544 /* cpmada1.b $crqc,$crpc */
   3545   {
   3546     { 0, 0, 0, 0 },
   3547     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3548     & ifmt_cpcmpeqz_b_C3, { 0xf1170801 }
   3549   },
   3550 /* cpmadua1.h $crqc,$crpc */
   3551   {
   3552     { 0, 0, 0, 0 },
   3553     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3554     & ifmt_cpcmpeqz_b_C3, { 0xf1270801 }
   3555   },
   3556 /* cpmadla1.h $crqc,$crpc */
   3557   {
   3558     { 0, 0, 0, 0 },
   3559     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3560     & ifmt_cpcmpeqz_b_C3, { 0xf1370801 }
   3561   },
   3562 /* cpmadua1u.w $crqc,$crpc */
   3563   {
   3564     { 0, 0, 0, 0 },
   3565     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3566     & ifmt_cpcmpeqz_b_C3, { 0xf1470801 }
   3567   },
   3568 /* cpmadla1u.w $crqc,$crpc */
   3569   {
   3570     { 0, 0, 0, 0 },
   3571     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3572     & ifmt_cpcmpeqz_b_C3, { 0xf1570801 }
   3573   },
   3574 /* cpmadua1.w $crqc,$crpc */
   3575   {
   3576     { 0, 0, 0, 0 },
   3577     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3578     & ifmt_cpcmpeqz_b_C3, { 0xf1670801 }
   3579   },
   3580 /* cpmadla1.w $crqc,$crpc */
   3581   {
   3582     { 0, 0, 0, 0 },
   3583     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3584     & ifmt_cpcmpeqz_b_C3, { 0xf1770801 }
   3585   },
   3586 /* cpmsbua1.h $crqc,$crpc */
   3587   {
   3588     { 0, 0, 0, 0 },
   3589     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3590     & ifmt_cpcmpeqz_b_C3, { 0xf1a70801 }
   3591   },
   3592 /* cpmsbla1.h $crqc,$crpc */
   3593   {
   3594     { 0, 0, 0, 0 },
   3595     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3596     & ifmt_cpcmpeqz_b_C3, { 0xf1b70801 }
   3597   },
   3598 /* cpmsbua1u.w $crqc,$crpc */
   3599   {
   3600     { 0, 0, 0, 0 },
   3601     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3602     & ifmt_cpcmpeqz_b_C3, { 0xf1c70801 }
   3603   },
   3604 /* cpmsbla1u.w $crqc,$crpc */
   3605   {
   3606     { 0, 0, 0, 0 },
   3607     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3608     & ifmt_cpcmpeqz_b_C3, { 0xf1d70801 }
   3609   },
   3610 /* cpmsbua1.w $crqc,$crpc */
   3611   {
   3612     { 0, 0, 0, 0 },
   3613     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3614     & ifmt_cpcmpeqz_b_C3, { 0xf1e70801 }
   3615   },
   3616 /* cpmsbla1.w $crqc,$crpc */
   3617   {
   3618     { 0, 0, 0, 0 },
   3619     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3620     & ifmt_cpcmpeqz_b_C3, { 0xf1f70801 }
   3621   },
   3622 /* cpsmadua1.h $crqc,$crpc */
   3623   {
   3624     { 0, 0, 0, 0 },
   3625     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3626     & ifmt_cpcmpeqz_b_C3, { 0xf3270801 }
   3627   },
   3628 /* cpsmadla1.h $crqc,$crpc */
   3629   {
   3630     { 0, 0, 0, 0 },
   3631     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3632     & ifmt_cpcmpeqz_b_C3, { 0xf3370801 }
   3633   },
   3634 /* cpsmadua1.w $crqc,$crpc */
   3635   {
   3636     { 0, 0, 0, 0 },
   3637     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3638     & ifmt_cpcmpeqz_b_C3, { 0xf3670801 }
   3639   },
   3640 /* cpsmadla1.w $crqc,$crpc */
   3641   {
   3642     { 0, 0, 0, 0 },
   3643     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3644     & ifmt_cpcmpeqz_b_C3, { 0xf3770801 }
   3645   },
   3646 /* cpsmsbua1.h $crqc,$crpc */
   3647   {
   3648     { 0, 0, 0, 0 },
   3649     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3650     & ifmt_cpcmpeqz_b_C3, { 0xf3a70801 }
   3651   },
   3652 /* cpsmsbla1.h $crqc,$crpc */
   3653   {
   3654     { 0, 0, 0, 0 },
   3655     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3656     & ifmt_cpcmpeqz_b_C3, { 0xf3b70801 }
   3657   },
   3658 /* cpsmsbua1.w $crqc,$crpc */
   3659   {
   3660     { 0, 0, 0, 0 },
   3661     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3662     & ifmt_cpcmpeqz_b_C3, { 0xf3e70801 }
   3663   },
   3664 /* cpsmsbla1.w $crqc,$crpc */
   3665   {
   3666     { 0, 0, 0, 0 },
   3667     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3668     & ifmt_cpcmpeqz_b_C3, { 0xf3f70801 }
   3669   },
   3670 /* cpmulslua1.h $crqc,$crpc */
   3671   {
   3672     { 0, 0, 0, 0 },
   3673     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3674     & ifmt_cpcmpeqz_b_C3, { 0xf4a70801 }
   3675   },
   3676 /* cpmulslla1.h $crqc,$crpc */
   3677   {
   3678     { 0, 0, 0, 0 },
   3679     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3680     & ifmt_cpcmpeqz_b_C3, { 0xf4b70801 }
   3681   },
   3682 /* cpmulslua1.w $crqc,$crpc */
   3683   {
   3684     { 0, 0, 0, 0 },
   3685     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3686     & ifmt_cpcmpeqz_b_C3, { 0xf4e70801 }
   3687   },
   3688 /* cpmulslla1.w $crqc,$crpc */
   3689   {
   3690     { 0, 0, 0, 0 },
   3691     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3692     & ifmt_cpcmpeqz_b_C3, { 0xf4f70801 }
   3693   },
   3694 /* cpsmadslua1.h $crqc,$crpc */
   3695   {
   3696     { 0, 0, 0, 0 },
   3697     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3698     & ifmt_cpcmpeqz_b_C3, { 0xf7270801 }
   3699   },
   3700 /* cpsmadslla1.h $crqc,$crpc */
   3701   {
   3702     { 0, 0, 0, 0 },
   3703     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3704     & ifmt_cpcmpeqz_b_C3, { 0xf7370801 }
   3705   },
   3706 /* cpsmadslua1.w $crqc,$crpc */
   3707   {
   3708     { 0, 0, 0, 0 },
   3709     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3710     & ifmt_cpcmpeqz_b_C3, { 0xf7670801 }
   3711   },
   3712 /* cpsmadslla1.w $crqc,$crpc */
   3713   {
   3714     { 0, 0, 0, 0 },
   3715     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3716     & ifmt_cpcmpeqz_b_C3, { 0xf7770801 }
   3717   },
   3718 /* cpsmsbslua1.h $crqc,$crpc */
   3719   {
   3720     { 0, 0, 0, 0 },
   3721     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3722     & ifmt_cpcmpeqz_b_C3, { 0xf7a70801 }
   3723   },
   3724 /* cpsmsbslla1.h $crqc,$crpc */
   3725   {
   3726     { 0, 0, 0, 0 },
   3727     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3728     & ifmt_cpcmpeqz_b_C3, { 0xf7b70801 }
   3729   },
   3730 /* cpsmsbslua1.w $crqc,$crpc */
   3731   {
   3732     { 0, 0, 0, 0 },
   3733     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3734     & ifmt_cpcmpeqz_b_C3, { 0xf7e70801 }
   3735   },
   3736 /* cpsmsbslla1.w $crqc,$crpc */
   3737   {
   3738     { 0, 0, 0, 0 },
   3739     { { MNEM, ' ', OP (CRQC), ',', OP (CRPC), 0 } },
   3740     & ifmt_cpcmpeqz_b_C3, { 0xf7f70801 }
   3741   },
   3742 /* c0nop */
   3743   {
   3744     { 0, 0, 0, 0 },
   3745     { { MNEM, 0 } },
   3746     & ifmt_c0nop_P0_P0S, { 0x0 }
   3747   },
   3748 /* cpadd3.b $crop,$crqp,$crpp */
   3749   {
   3750     { 0, 0, 0, 0 },
   3751     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3752     & ifmt_cpadd3_b_P0S_P1, { 0x80000 }
   3753   },
   3754 /* cpadd3.h $crop,$crqp,$crpp */
   3755   {
   3756     { 0, 0, 0, 0 },
   3757     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3758     & ifmt_cpadd3_b_P0S_P1, { 0x100000 }
   3759   },
   3760 /* cpadd3.w $crop,$crqp,$crpp */
   3761   {
   3762     { 0, 0, 0, 0 },
   3763     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3764     & ifmt_cpadd3_b_P0S_P1, { 0x180000 }
   3765   },
   3766 /* cpunpacku.b $crop,$crqp,$crpp */
   3767   {
   3768     { 0, 0, 0, 0 },
   3769     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3770     & ifmt_cpadd3_b_P0S_P1, { 0x280000 }
   3771   },
   3772 /* cpunpacku.h $crop,$crqp,$crpp */
   3773   {
   3774     { 0, 0, 0, 0 },
   3775     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3776     & ifmt_cpadd3_b_P0S_P1, { 0x300000 }
   3777   },
   3778 /* cpunpacku.w $crop,$crqp,$crpp */
   3779   {
   3780     { 0, 0, 0, 0 },
   3781     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3782     & ifmt_cpadd3_b_P0S_P1, { 0x380000 }
   3783   },
   3784 /* cpunpackl.b $crop,$crqp,$crpp */
   3785   {
   3786     { 0, 0, 0, 0 },
   3787     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3788     & ifmt_cpadd3_b_P0S_P1, { 0x480000 }
   3789   },
   3790 /* cpunpackl.h $crop,$crqp,$crpp */
   3791   {
   3792     { 0, 0, 0, 0 },
   3793     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3794     & ifmt_cpadd3_b_P0S_P1, { 0x500000 }
   3795   },
   3796 /* cpunpackl.w $crop,$crqp,$crpp */
   3797   {
   3798     { 0, 0, 0, 0 },
   3799     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3800     & ifmt_cpadd3_b_P0S_P1, { 0x580000 }
   3801   },
   3802 /* cpsel $crop,$crqp,$crpp */
   3803   {
   3804     { 0, 0, 0, 0 },
   3805     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3806     & ifmt_cpadd3_b_P0S_P1, { 0x200000 }
   3807   },
   3808 /* cpfsftbs0 $crop,$crqp,$crpp */
   3809   {
   3810     { 0, 0, 0, 0 },
   3811     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3812     & ifmt_cpadd3_b_P0S_P1, { 0x600000 }
   3813   },
   3814 /* cpfsftbs1 $crop,$crqp,$crpp */
   3815   {
   3816     { 0, 0, 0, 0 },
   3817     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   3818     & ifmt_cpadd3_b_P0S_P1, { 0x680000 }
   3819   },
   3820 /* cpmov $crop,$crqp */
   3821   {
   3822     { 0, 0, 0, 0 },
   3823     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3824     & ifmt_cpmov_P0S_P1, { 0x800000 }
   3825   },
   3826 /* cpabsz.b $crop,$crqp */
   3827   {
   3828     { 0, 0, 0, 0 },
   3829     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3830     & ifmt_cpmov_P0S_P1, { 0x800200 }
   3831   },
   3832 /* cpabsz.h $crop,$crqp */
   3833   {
   3834     { 0, 0, 0, 0 },
   3835     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3836     & ifmt_cpmov_P0S_P1, { 0x800400 }
   3837   },
   3838 /* cpabsz.w $crop,$crqp */
   3839   {
   3840     { 0, 0, 0, 0 },
   3841     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3842     & ifmt_cpmov_P0S_P1, { 0x800600 }
   3843   },
   3844 /* cpldz.h $crop,$crqp */
   3845   {
   3846     { 0, 0, 0, 0 },
   3847     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3848     & ifmt_cpmov_P0S_P1, { 0x800800 }
   3849   },
   3850 /* cpldz.w $crop,$crqp */
   3851   {
   3852     { 0, 0, 0, 0 },
   3853     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3854     & ifmt_cpmov_P0S_P1, { 0x800a00 }
   3855   },
   3856 /* cpnorm.h $crop,$crqp */
   3857   {
   3858     { 0, 0, 0, 0 },
   3859     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3860     & ifmt_cpmov_P0S_P1, { 0x800c00 }
   3861   },
   3862 /* cpnorm.w $crop,$crqp */
   3863   {
   3864     { 0, 0, 0, 0 },
   3865     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3866     & ifmt_cpmov_P0S_P1, { 0x800e00 }
   3867   },
   3868 /* cphaddu.b $crop,$crqp */
   3869   {
   3870     { 0, 0, 0, 0 },
   3871     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3872     & ifmt_cpmov_P0S_P1, { 0x801000 }
   3873   },
   3874 /* cphadd.b $crop,$crqp */
   3875   {
   3876     { 0, 0, 0, 0 },
   3877     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3878     & ifmt_cpmov_P0S_P1, { 0x801200 }
   3879   },
   3880 /* cphadd.h $crop,$crqp */
   3881   {
   3882     { 0, 0, 0, 0 },
   3883     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3884     & ifmt_cpmov_P0S_P1, { 0x801400 }
   3885   },
   3886 /* cphadd.w $crop,$crqp */
   3887   {
   3888     { 0, 0, 0, 0 },
   3889     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3890     & ifmt_cpmov_P0S_P1, { 0x801600 }
   3891   },
   3892 /* cpccadd.b $crqp */
   3893   {
   3894     { 0, 0, 0, 0 },
   3895     { { MNEM, ' ', OP (CRQP), 0 } },
   3896     & ifmt_cpccadd_b_P0S_P1, { 0x801800 }
   3897   },
   3898 /* cpbcast.b $crop,$crqp */
   3899   {
   3900     { 0, 0, 0, 0 },
   3901     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3902     & ifmt_cpmov_P0S_P1, { 0x801a00 }
   3903   },
   3904 /* cpbcast.h $crop,$crqp */
   3905   {
   3906     { 0, 0, 0, 0 },
   3907     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3908     & ifmt_cpmov_P0S_P1, { 0x801c00 }
   3909   },
   3910 /* cpbcast.w $crop,$crqp */
   3911   {
   3912     { 0, 0, 0, 0 },
   3913     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3914     & ifmt_cpmov_P0S_P1, { 0x801e00 }
   3915   },
   3916 /* cpextuu.b $crop,$crqp */
   3917   {
   3918     { 0, 0, 0, 0 },
   3919     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3920     & ifmt_cpmov_P0S_P1, { 0x802000 }
   3921   },
   3922 /* cpextu.b $crop,$crqp */
   3923   {
   3924     { 0, 0, 0, 0 },
   3925     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3926     & ifmt_cpmov_P0S_P1, { 0x802200 }
   3927   },
   3928 /* cpextuu.h $crop,$crqp */
   3929   {
   3930     { 0, 0, 0, 0 },
   3931     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3932     & ifmt_cpmov_P0S_P1, { 0x802400 }
   3933   },
   3934 /* cpextu.h $crop,$crqp */
   3935   {
   3936     { 0, 0, 0, 0 },
   3937     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3938     & ifmt_cpmov_P0S_P1, { 0x802600 }
   3939   },
   3940 /* cpextlu.b $crop,$crqp */
   3941   {
   3942     { 0, 0, 0, 0 },
   3943     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3944     & ifmt_cpmov_P0S_P1, { 0x802800 }
   3945   },
   3946 /* cpextl.b $crop,$crqp */
   3947   {
   3948     { 0, 0, 0, 0 },
   3949     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3950     & ifmt_cpmov_P0S_P1, { 0x802a00 }
   3951   },
   3952 /* cpextlu.h $crop,$crqp */
   3953   {
   3954     { 0, 0, 0, 0 },
   3955     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3956     & ifmt_cpmov_P0S_P1, { 0x802c00 }
   3957   },
   3958 /* cpextl.h $crop,$crqp */
   3959   {
   3960     { 0, 0, 0, 0 },
   3961     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3962     & ifmt_cpmov_P0S_P1, { 0x802e00 }
   3963   },
   3964 /* cpcastub.h $crop,$crqp */
   3965   {
   3966     { 0, 0, 0, 0 },
   3967     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3968     & ifmt_cpmov_P0S_P1, { 0x803000 }
   3969   },
   3970 /* cpcastb.h $crop,$crqp */
   3971   {
   3972     { 0, 0, 0, 0 },
   3973     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3974     & ifmt_cpmov_P0S_P1, { 0x803200 }
   3975   },
   3976 /* cpcastub.w $crop,$crqp */
   3977   {
   3978     { 0, 0, 0, 0 },
   3979     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3980     & ifmt_cpmov_P0S_P1, { 0x803800 }
   3981   },
   3982 /* cpcastb.w $crop,$crqp */
   3983   {
   3984     { 0, 0, 0, 0 },
   3985     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3986     & ifmt_cpmov_P0S_P1, { 0x803a00 }
   3987   },
   3988 /* cpcastuh.w $crop,$crqp */
   3989   {
   3990     { 0, 0, 0, 0 },
   3991     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3992     & ifmt_cpmov_P0S_P1, { 0x803c00 }
   3993   },
   3994 /* cpcasth.w $crop,$crqp */
   3995   {
   3996     { 0, 0, 0, 0 },
   3997     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   3998     & ifmt_cpmov_P0S_P1, { 0x803e00 }
   3999   },
   4000 /* cdcastuw $crop,$crqp */
   4001   {
   4002     { 0, 0, 0, 0 },
   4003     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   4004     & ifmt_cpmov_P0S_P1, { 0x803400 }
   4005   },
   4006 /* cdcastw $crop,$crqp */
   4007   {
   4008     { 0, 0, 0, 0 },
   4009     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), 0 } },
   4010     & ifmt_cpmov_P0S_P1, { 0x803600 }
   4011   },
   4012 /* cpmovfrcsar0 $crop */
   4013   {
   4014     { 0, 0, 0, 0 },
   4015     { { MNEM, ' ', OP (CROP), 0 } },
   4016     & ifmt_cpmovfrcsar0_P0S_P1, { 0x880000 }
   4017   },
   4018 /* cpmovfrcsar1 $crop */
   4019   {
   4020     { 0, 0, 0, 0 },
   4021     { { MNEM, ' ', OP (CROP), 0 } },
   4022     & ifmt_cpmovfrcsar0_P0S_P1, { 0x881e00 }
   4023   },
   4024 /* cpmovfrcc $crop */
   4025   {
   4026     { 0, 0, 0, 0 },
   4027     { { MNEM, ' ', OP (CROP), 0 } },
   4028     & ifmt_cpmovfrcsar0_P0S_P1, { 0x880200 }
   4029   },
   4030 /* cpmovtocsar0 $crqp */
   4031   {
   4032     { 0, 0, 0, 0 },
   4033     { { MNEM, ' ', OP (CRQP), 0 } },
   4034     & ifmt_cpccadd_b_P0S_P1, { 0x882000 }
   4035   },
   4036 /* cpmovtocsar1 $crqp */
   4037   {
   4038     { 0, 0, 0, 0 },
   4039     { { MNEM, ' ', OP (CRQP), 0 } },
   4040     & ifmt_cpccadd_b_P0S_P1, { 0x883e00 }
   4041   },
   4042 /* cpmovtocc $crqp */
   4043   {
   4044     { 0, 0, 0, 0 },
   4045     { { MNEM, ' ', OP (CRQP), 0 } },
   4046     & ifmt_cpccadd_b_P0S_P1, { 0x882200 }
   4047   },
   4048 /* cpcmpeqz.b $crqp,$crpp */
   4049   {
   4050     { 0, 0, 0, 0 },
   4051     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4052     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900000 }
   4053   },
   4054 /* cpcmpeq.b $crqp,$crpp */
   4055   {
   4056     { 0, 0, 0, 0 },
   4057     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4058     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900010 }
   4059   },
   4060 /* cpcmpeq.h $crqp,$crpp */
   4061   {
   4062     { 0, 0, 0, 0 },
   4063     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4064     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900030 }
   4065   },
   4066 /* cpcmpeq.w $crqp,$crpp */
   4067   {
   4068     { 0, 0, 0, 0 },
   4069     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4070     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900050 }
   4071   },
   4072 /* cpcmpne.b $crqp,$crpp */
   4073   {
   4074     { 0, 0, 0, 0 },
   4075     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4076     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900090 }
   4077   },
   4078 /* cpcmpne.h $crqp,$crpp */
   4079   {
   4080     { 0, 0, 0, 0 },
   4081     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4082     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9000b0 }
   4083   },
   4084 /* cpcmpne.w $crqp,$crpp */
   4085   {
   4086     { 0, 0, 0, 0 },
   4087     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4088     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9000d0 }
   4089   },
   4090 /* cpcmpgtu.b $crqp,$crpp */
   4091   {
   4092     { 0, 0, 0, 0 },
   4093     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4094     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900100 }
   4095   },
   4096 /* cpcmpgt.b $crqp,$crpp */
   4097   {
   4098     { 0, 0, 0, 0 },
   4099     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4100     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900110 }
   4101   },
   4102 /* cpcmpgt.h $crqp,$crpp */
   4103   {
   4104     { 0, 0, 0, 0 },
   4105     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4106     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900130 }
   4107   },
   4108 /* cpcmpgtu.w $crqp,$crpp */
   4109   {
   4110     { 0, 0, 0, 0 },
   4111     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4112     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900140 }
   4113   },
   4114 /* cpcmpgt.w $crqp,$crpp */
   4115   {
   4116     { 0, 0, 0, 0 },
   4117     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4118     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900150 }
   4119   },
   4120 /* cpcmpgeu.b $crqp,$crpp */
   4121   {
   4122     { 0, 0, 0, 0 },
   4123     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4124     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900180 }
   4125   },
   4126 /* cpcmpge.b $crqp,$crpp */
   4127   {
   4128     { 0, 0, 0, 0 },
   4129     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4130     & ifmt_cpcmpeqz_b_P0S_P1, { 0x900190 }
   4131   },
   4132 /* cpcmpge.h $crqp,$crpp */
   4133   {
   4134     { 0, 0, 0, 0 },
   4135     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4136     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9001b0 }
   4137   },
   4138 /* cpcmpgeu.w $crqp,$crpp */
   4139   {
   4140     { 0, 0, 0, 0 },
   4141     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4142     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9001c0 }
   4143   },
   4144 /* cpcmpge.w $crqp,$crpp */
   4145   {
   4146     { 0, 0, 0, 0 },
   4147     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4148     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9001d0 }
   4149   },
   4150 /* cpadda0u.b $crqp,$crpp */
   4151   {
   4152     { 0, 0, 0, 0 },
   4153     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4154     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00000 }
   4155   },
   4156 /* cpadda0.b $crqp,$crpp */
   4157   {
   4158     { 0, 0, 0, 0 },
   4159     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4160     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00010 }
   4161   },
   4162 /* cpaddua0.h $crqp,$crpp */
   4163   {
   4164     { 0, 0, 0, 0 },
   4165     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4166     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00020 }
   4167   },
   4168 /* cpaddla0.h $crqp,$crpp */
   4169   {
   4170     { 0, 0, 0, 0 },
   4171     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4172     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00030 }
   4173   },
   4174 /* cpaddaca0u.b $crqp,$crpp */
   4175   {
   4176     { 0, 0, 0, 0 },
   4177     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4178     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00040 }
   4179   },
   4180 /* cpaddaca0.b $crqp,$crpp */
   4181   {
   4182     { 0, 0, 0, 0 },
   4183     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4184     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00050 }
   4185   },
   4186 /* cpaddacua0.h $crqp,$crpp */
   4187   {
   4188     { 0, 0, 0, 0 },
   4189     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4190     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00060 }
   4191   },
   4192 /* cpaddacla0.h $crqp,$crpp */
   4193   {
   4194     { 0, 0, 0, 0 },
   4195     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4196     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00070 }
   4197   },
   4198 /* cpsuba0u.b $crqp,$crpp */
   4199   {
   4200     { 0, 0, 0, 0 },
   4201     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4202     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00080 }
   4203   },
   4204 /* cpsuba0.b $crqp,$crpp */
   4205   {
   4206     { 0, 0, 0, 0 },
   4207     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4208     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00090 }
   4209   },
   4210 /* cpsubua0.h $crqp,$crpp */
   4211   {
   4212     { 0, 0, 0, 0 },
   4213     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4214     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000a0 }
   4215   },
   4216 /* cpsubla0.h $crqp,$crpp */
   4217   {
   4218     { 0, 0, 0, 0 },
   4219     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4220     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000b0 }
   4221   },
   4222 /* cpsubaca0u.b $crqp,$crpp */
   4223   {
   4224     { 0, 0, 0, 0 },
   4225     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4226     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000c0 }
   4227   },
   4228 /* cpsubaca0.b $crqp,$crpp */
   4229   {
   4230     { 0, 0, 0, 0 },
   4231     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4232     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000d0 }
   4233   },
   4234 /* cpsubacua0.h $crqp,$crpp */
   4235   {
   4236     { 0, 0, 0, 0 },
   4237     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4238     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000e0 }
   4239   },
   4240 /* cpsubacla0.h $crqp,$crpp */
   4241   {
   4242     { 0, 0, 0, 0 },
   4243     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4244     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000f0 }
   4245   },
   4246 /* cpabsa0u.b $crqp,$crpp */
   4247   {
   4248     { 0, 0, 0, 0 },
   4249     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4250     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00100 }
   4251   },
   4252 /* cpabsa0.b $crqp,$crpp */
   4253   {
   4254     { 0, 0, 0, 0 },
   4255     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4256     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00110 }
   4257   },
   4258 /* cpabsua0.h $crqp,$crpp */
   4259   {
   4260     { 0, 0, 0, 0 },
   4261     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4262     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00120 }
   4263   },
   4264 /* cpabsla0.h $crqp,$crpp */
   4265   {
   4266     { 0, 0, 0, 0 },
   4267     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4268     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00130 }
   4269   },
   4270 /* cpsada0u.b $crqp,$crpp */
   4271   {
   4272     { 0, 0, 0, 0 },
   4273     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4274     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00140 }
   4275   },
   4276 /* cpsada0.b $crqp,$crpp */
   4277   {
   4278     { 0, 0, 0, 0 },
   4279     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4280     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00150 }
   4281   },
   4282 /* cpsadua0.h $crqp,$crpp */
   4283   {
   4284     { 0, 0, 0, 0 },
   4285     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4286     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00160 }
   4287   },
   4288 /* cpsadla0.h $crqp,$crpp */
   4289   {
   4290     { 0, 0, 0, 0 },
   4291     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4292     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00170 }
   4293   },
   4294 /* cpseta0.h $crqp,$crpp */
   4295   {
   4296     { 0, 0, 0, 0 },
   4297     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4298     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc001b0 }
   4299   },
   4300 /* cpsetua0.w $crqp,$crpp */
   4301   {
   4302     { 0, 0, 0, 0 },
   4303     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4304     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc001c0 }
   4305   },
   4306 /* cpsetla0.w $crqp,$crpp */
   4307   {
   4308     { 0, 0, 0, 0 },
   4309     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4310     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc001d0 }
   4311   },
   4312 /* cpmova0.b $crop */
   4313   {
   4314     { 0, 0, 0, 0 },
   4315     { { MNEM, ' ', OP (CROP), 0 } },
   4316     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80200 }
   4317   },
   4318 /* cpmovua0.h $crop */
   4319   {
   4320     { 0, 0, 0, 0 },
   4321     { { MNEM, ' ', OP (CROP), 0 } },
   4322     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80400 }
   4323   },
   4324 /* cpmovla0.h $crop */
   4325   {
   4326     { 0, 0, 0, 0 },
   4327     { { MNEM, ' ', OP (CROP), 0 } },
   4328     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80600 }
   4329   },
   4330 /* cpmovuua0.w $crop */
   4331   {
   4332     { 0, 0, 0, 0 },
   4333     { { MNEM, ' ', OP (CROP), 0 } },
   4334     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80800 }
   4335   },
   4336 /* cpmovula0.w $crop */
   4337   {
   4338     { 0, 0, 0, 0 },
   4339     { { MNEM, ' ', OP (CROP), 0 } },
   4340     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80a00 }
   4341   },
   4342 /* cpmovlua0.w $crop */
   4343   {
   4344     { 0, 0, 0, 0 },
   4345     { { MNEM, ' ', OP (CROP), 0 } },
   4346     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80c00 }
   4347   },
   4348 /* cpmovlla0.w $crop */
   4349   {
   4350     { 0, 0, 0, 0 },
   4351     { { MNEM, ' ', OP (CROP), 0 } },
   4352     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80e00 }
   4353   },
   4354 /* cppacka0u.b $crop */
   4355   {
   4356     { 0, 0, 0, 0 },
   4357     { { MNEM, ' ', OP (CROP), 0 } },
   4358     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81000 }
   4359   },
   4360 /* cppacka0.b $crop */
   4361   {
   4362     { 0, 0, 0, 0 },
   4363     { { MNEM, ' ', OP (CROP), 0 } },
   4364     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81200 }
   4365   },
   4366 /* cppackua0.h $crop */
   4367   {
   4368     { 0, 0, 0, 0 },
   4369     { { MNEM, ' ', OP (CROP), 0 } },
   4370     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81400 }
   4371   },
   4372 /* cppackla0.h $crop */
   4373   {
   4374     { 0, 0, 0, 0 },
   4375     { { MNEM, ' ', OP (CROP), 0 } },
   4376     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81600 }
   4377   },
   4378 /* cppackua0.w $crop */
   4379   {
   4380     { 0, 0, 0, 0 },
   4381     { { MNEM, ' ', OP (CROP), 0 } },
   4382     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81800 }
   4383   },
   4384 /* cppackla0.w $crop */
   4385   {
   4386     { 0, 0, 0, 0 },
   4387     { { MNEM, ' ', OP (CROP), 0 } },
   4388     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81a00 }
   4389   },
   4390 /* cpmovhua0.w $crop */
   4391   {
   4392     { 0, 0, 0, 0 },
   4393     { { MNEM, ' ', OP (CROP), 0 } },
   4394     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81c00 }
   4395   },
   4396 /* cpmovhla0.w $crop */
   4397   {
   4398     { 0, 0, 0, 0 },
   4399     { { MNEM, ' ', OP (CROP), 0 } },
   4400     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81e00 }
   4401   },
   4402 /* cpacsuma0 */
   4403   {
   4404     { 0, 0, 0, 0 },
   4405     { { MNEM, 0 } },
   4406     & ifmt_c0nop_P0_P0S, { 0xc82000 }
   4407   },
   4408 /* cpaccpa0 */
   4409   {
   4410     { 0, 0, 0, 0 },
   4411     { { MNEM, 0 } },
   4412     & ifmt_c0nop_P0_P0S, { 0xc82200 }
   4413   },
   4414 /* cpsrla0 $crqp */
   4415   {
   4416     { 0, 0, 0, 0 },
   4417     { { MNEM, ' ', OP (CRQP), 0 } },
   4418     & ifmt_cpccadd_b_P0S_P1, { 0xc83000 }
   4419   },
   4420 /* cpsraa0 $crqp */
   4421   {
   4422     { 0, 0, 0, 0 },
   4423     { { MNEM, ' ', OP (CRQP), 0 } },
   4424     & ifmt_cpccadd_b_P0S_P1, { 0xc83200 }
   4425   },
   4426 /* cpslla0 $crqp */
   4427   {
   4428     { 0, 0, 0, 0 },
   4429     { { MNEM, ' ', OP (CRQP), 0 } },
   4430     & ifmt_cpccadd_b_P0S_P1, { 0xc83400 }
   4431   },
   4432 /* cpsrlia0 $imm5p23 */
   4433   {
   4434     { 0, 0, 0, 0 },
   4435     { { MNEM, ' ', OP (IMM5P23), 0 } },
   4436     & ifmt_cpsrlia0_P0S, { 0xc83800 }
   4437   },
   4438 /* cpsraia0 $imm5p23 */
   4439   {
   4440     { 0, 0, 0, 0 },
   4441     { { MNEM, ' ', OP (IMM5P23), 0 } },
   4442     & ifmt_cpsrlia0_P0S, { 0xc83a00 }
   4443   },
   4444 /* cpsllia0 $imm5p23 */
   4445   {
   4446     { 0, 0, 0, 0 },
   4447     { { MNEM, ' ', OP (IMM5P23), 0 } },
   4448     & ifmt_cpsrlia0_P0S, { 0xc83c00 }
   4449   },
   4450 /* cpfsftba0s0u.b $crqp,$crpp */
   4451   {
   4452     { 0, 0, 0, 0 },
   4453     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4454     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80000 }
   4455   },
   4456 /* cpfsftba0s0.b $crqp,$crpp */
   4457   {
   4458     { 0, 0, 0, 0 },
   4459     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4460     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80010 }
   4461   },
   4462 /* cpfsftbua0s0.h $crqp,$crpp */
   4463   {
   4464     { 0, 0, 0, 0 },
   4465     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4466     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80020 }
   4467   },
   4468 /* cpfsftbla0s0.h $crqp,$crpp */
   4469   {
   4470     { 0, 0, 0, 0 },
   4471     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4472     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80030 }
   4473   },
   4474 /* cpfaca0s0u.b $crqp,$crpp */
   4475   {
   4476     { 0, 0, 0, 0 },
   4477     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4478     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80040 }
   4479   },
   4480 /* cpfaca0s0.b $crqp,$crpp */
   4481   {
   4482     { 0, 0, 0, 0 },
   4483     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4484     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80050 }
   4485   },
   4486 /* cpfacua0s0.h $crqp,$crpp */
   4487   {
   4488     { 0, 0, 0, 0 },
   4489     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4490     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80060 }
   4491   },
   4492 /* cpfacla0s0.h $crqp,$crpp */
   4493   {
   4494     { 0, 0, 0, 0 },
   4495     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4496     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80070 }
   4497   },
   4498 /* cpfsftba0s1u.b $crqp,$crpp */
   4499   {
   4500     { 0, 0, 0, 0 },
   4501     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4502     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80080 }
   4503   },
   4504 /* cpfsftba0s1.b $crqp,$crpp */
   4505   {
   4506     { 0, 0, 0, 0 },
   4507     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4508     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf80090 }
   4509   },
   4510 /* cpfsftbua0s1.h $crqp,$crpp */
   4511   {
   4512     { 0, 0, 0, 0 },
   4513     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4514     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf800a0 }
   4515   },
   4516 /* cpfsftbla0s1.h $crqp,$crpp */
   4517   {
   4518     { 0, 0, 0, 0 },
   4519     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4520     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf800b0 }
   4521   },
   4522 /* cpfaca0s1u.b $crqp,$crpp */
   4523   {
   4524     { 0, 0, 0, 0 },
   4525     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4526     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf800c0 }
   4527   },
   4528 /* cpfaca0s1.b $crqp,$crpp */
   4529   {
   4530     { 0, 0, 0, 0 },
   4531     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4532     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf800d0 }
   4533   },
   4534 /* cpfacua0s1.h $crqp,$crpp */
   4535   {
   4536     { 0, 0, 0, 0 },
   4537     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4538     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf800e0 }
   4539   },
   4540 /* cpfacla0s1.h $crqp,$crpp */
   4541   {
   4542     { 0, 0, 0, 0 },
   4543     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4544     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf800f0 }
   4545   },
   4546 /* cpfsftbi $crop,$crqp,$crpp,$imm3p5 */
   4547   {
   4548     { 0, 0, 0, 0 },
   4549     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P5), 0 } },
   4550     & ifmt_cpfsftbi_P0_P1, { 0x400000 }
   4551   },
   4552 /* cpacmpeq.b $crqp,$crpp */
   4553   {
   4554     { 0, 0, 0, 0 },
   4555     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4556     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980010 }
   4557   },
   4558 /* cpacmpeq.h $crqp,$crpp */
   4559   {
   4560     { 0, 0, 0, 0 },
   4561     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4562     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980030 }
   4563   },
   4564 /* cpacmpeq.w $crqp,$crpp */
   4565   {
   4566     { 0, 0, 0, 0 },
   4567     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4568     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980050 }
   4569   },
   4570 /* cpacmpne.b $crqp,$crpp */
   4571   {
   4572     { 0, 0, 0, 0 },
   4573     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4574     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980090 }
   4575   },
   4576 /* cpacmpne.h $crqp,$crpp */
   4577   {
   4578     { 0, 0, 0, 0 },
   4579     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4580     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9800b0 }
   4581   },
   4582 /* cpacmpne.w $crqp,$crpp */
   4583   {
   4584     { 0, 0, 0, 0 },
   4585     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4586     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9800d0 }
   4587   },
   4588 /* cpacmpgtu.b $crqp,$crpp */
   4589   {
   4590     { 0, 0, 0, 0 },
   4591     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4592     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980100 }
   4593   },
   4594 /* cpacmpgt.b $crqp,$crpp */
   4595   {
   4596     { 0, 0, 0, 0 },
   4597     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4598     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980110 }
   4599   },
   4600 /* cpacmpgt.h $crqp,$crpp */
   4601   {
   4602     { 0, 0, 0, 0 },
   4603     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4604     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980130 }
   4605   },
   4606 /* cpacmpgtu.w $crqp,$crpp */
   4607   {
   4608     { 0, 0, 0, 0 },
   4609     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4610     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980140 }
   4611   },
   4612 /* cpacmpgt.w $crqp,$crpp */
   4613   {
   4614     { 0, 0, 0, 0 },
   4615     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4616     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980150 }
   4617   },
   4618 /* cpacmpgeu.b $crqp,$crpp */
   4619   {
   4620     { 0, 0, 0, 0 },
   4621     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4622     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980180 }
   4623   },
   4624 /* cpacmpge.b $crqp,$crpp */
   4625   {
   4626     { 0, 0, 0, 0 },
   4627     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4628     & ifmt_cpcmpeqz_b_P0S_P1, { 0x980190 }
   4629   },
   4630 /* cpacmpge.h $crqp,$crpp */
   4631   {
   4632     { 0, 0, 0, 0 },
   4633     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4634     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9801b0 }
   4635   },
   4636 /* cpacmpgeu.w $crqp,$crpp */
   4637   {
   4638     { 0, 0, 0, 0 },
   4639     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4640     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9801c0 }
   4641   },
   4642 /* cpacmpge.w $crqp,$crpp */
   4643   {
   4644     { 0, 0, 0, 0 },
   4645     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4646     & ifmt_cpcmpeqz_b_P0S_P1, { 0x9801d0 }
   4647   },
   4648 /* cpocmpeq.b $crqp,$crpp */
   4649   {
   4650     { 0, 0, 0, 0 },
   4651     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4652     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980010 }
   4653   },
   4654 /* cpocmpeq.h $crqp,$crpp */
   4655   {
   4656     { 0, 0, 0, 0 },
   4657     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4658     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980030 }
   4659   },
   4660 /* cpocmpeq.w $crqp,$crpp */
   4661   {
   4662     { 0, 0, 0, 0 },
   4663     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4664     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980050 }
   4665   },
   4666 /* cpocmpne.b $crqp,$crpp */
   4667   {
   4668     { 0, 0, 0, 0 },
   4669     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4670     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980090 }
   4671   },
   4672 /* cpocmpne.h $crqp,$crpp */
   4673   {
   4674     { 0, 0, 0, 0 },
   4675     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4676     & ifmt_cpcmpeqz_b_P0S_P1, { 0x19800b0 }
   4677   },
   4678 /* cpocmpne.w $crqp,$crpp */
   4679   {
   4680     { 0, 0, 0, 0 },
   4681     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4682     & ifmt_cpcmpeqz_b_P0S_P1, { 0x19800d0 }
   4683   },
   4684 /* cpocmpgtu.b $crqp,$crpp */
   4685   {
   4686     { 0, 0, 0, 0 },
   4687     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4688     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980100 }
   4689   },
   4690 /* cpocmpgt.b $crqp,$crpp */
   4691   {
   4692     { 0, 0, 0, 0 },
   4693     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4694     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980110 }
   4695   },
   4696 /* cpocmpgt.h $crqp,$crpp */
   4697   {
   4698     { 0, 0, 0, 0 },
   4699     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4700     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980130 }
   4701   },
   4702 /* cpocmpgtu.w $crqp,$crpp */
   4703   {
   4704     { 0, 0, 0, 0 },
   4705     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4706     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980140 }
   4707   },
   4708 /* cpocmpgt.w $crqp,$crpp */
   4709   {
   4710     { 0, 0, 0, 0 },
   4711     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4712     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980150 }
   4713   },
   4714 /* cpocmpgeu.b $crqp,$crpp */
   4715   {
   4716     { 0, 0, 0, 0 },
   4717     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4718     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980180 }
   4719   },
   4720 /* cpocmpge.b $crqp,$crpp */
   4721   {
   4722     { 0, 0, 0, 0 },
   4723     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4724     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1980190 }
   4725   },
   4726 /* cpocmpge.h $crqp,$crpp */
   4727   {
   4728     { 0, 0, 0, 0 },
   4729     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4730     & ifmt_cpcmpeqz_b_P0S_P1, { 0x19801b0 }
   4731   },
   4732 /* cpocmpgeu.w $crqp,$crpp */
   4733   {
   4734     { 0, 0, 0, 0 },
   4735     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4736     & ifmt_cpcmpeqz_b_P0S_P1, { 0x19801c0 }
   4737   },
   4738 /* cpocmpge.w $crqp,$crpp */
   4739   {
   4740     { 0, 0, 0, 0 },
   4741     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   4742     & ifmt_cpcmpeqz_b_P0S_P1, { 0x19801d0 }
   4743   },
   4744 /* cdadd3 $crop,$crqp,$crpp */
   4745   {
   4746     { 0, 0, 0, 0 },
   4747     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4748     & ifmt_cpadd3_b_P0S_P1, { 0x3a00000 }
   4749   },
   4750 /* cpsub3.b $crop,$crqp,$crpp */
   4751   {
   4752     { 0, 0, 0, 0 },
   4753     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4754     & ifmt_cpadd3_b_P0S_P1, { 0x4a00000 }
   4755   },
   4756 /* cpsub3.h $crop,$crqp,$crpp */
   4757   {
   4758     { 0, 0, 0, 0 },
   4759     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4760     & ifmt_cpadd3_b_P0S_P1, { 0x5a00000 }
   4761   },
   4762 /* cpsub3.w $crop,$crqp,$crpp */
   4763   {
   4764     { 0, 0, 0, 0 },
   4765     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4766     & ifmt_cpadd3_b_P0S_P1, { 0x6a00000 }
   4767   },
   4768 /* cdsub3 $crop,$crqp,$crpp */
   4769   {
   4770     { 0, 0, 0, 0 },
   4771     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4772     & ifmt_cpadd3_b_P0S_P1, { 0x7a00000 }
   4773   },
   4774 /* cpsadd3.h $crop,$crqp,$crpp */
   4775   {
   4776     { 0, 0, 0, 0 },
   4777     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4778     & ifmt_cpadd3_b_P0S_P1, { 0xaa00000 }
   4779   },
   4780 /* cpsadd3.w $crop,$crqp,$crpp */
   4781   {
   4782     { 0, 0, 0, 0 },
   4783     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4784     & ifmt_cpadd3_b_P0S_P1, { 0xba00000 }
   4785   },
   4786 /* cpssub3.h $crop,$crqp,$crpp */
   4787   {
   4788     { 0, 0, 0, 0 },
   4789     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4790     & ifmt_cpadd3_b_P0S_P1, { 0xea00000 }
   4791   },
   4792 /* cpssub3.w $crop,$crqp,$crpp */
   4793   {
   4794     { 0, 0, 0, 0 },
   4795     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4796     & ifmt_cpadd3_b_P0S_P1, { 0xfa00000 }
   4797   },
   4798 /* cpextuaddu3.b $crop,$crqp,$crpp */
   4799   {
   4800     { 0, 0, 0, 0 },
   4801     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4802     & ifmt_cpadd3_b_P0S_P1, { 0x10a00000 }
   4803   },
   4804 /* cpextuadd3.b $crop,$crqp,$crpp */
   4805   {
   4806     { 0, 0, 0, 0 },
   4807     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4808     & ifmt_cpadd3_b_P0S_P1, { 0x11a00000 }
   4809   },
   4810 /* cpextladdu3.b $crop,$crqp,$crpp */
   4811   {
   4812     { 0, 0, 0, 0 },
   4813     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4814     & ifmt_cpadd3_b_P0S_P1, { 0x12a00000 }
   4815   },
   4816 /* cpextladd3.b $crop,$crqp,$crpp */
   4817   {
   4818     { 0, 0, 0, 0 },
   4819     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4820     & ifmt_cpadd3_b_P0S_P1, { 0x13a00000 }
   4821   },
   4822 /* cpextusubu3.b $crop,$crqp,$crpp */
   4823   {
   4824     { 0, 0, 0, 0 },
   4825     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4826     & ifmt_cpadd3_b_P0S_P1, { 0x14a00000 }
   4827   },
   4828 /* cpextusub3.b $crop,$crqp,$crpp */
   4829   {
   4830     { 0, 0, 0, 0 },
   4831     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4832     & ifmt_cpadd3_b_P0S_P1, { 0x15a00000 }
   4833   },
   4834 /* cpextlsubu3.b $crop,$crqp,$crpp */
   4835   {
   4836     { 0, 0, 0, 0 },
   4837     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4838     & ifmt_cpadd3_b_P0S_P1, { 0x16a00000 }
   4839   },
   4840 /* cpextlsub3.b $crop,$crqp,$crpp */
   4841   {
   4842     { 0, 0, 0, 0 },
   4843     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4844     & ifmt_cpadd3_b_P0S_P1, { 0x17a00000 }
   4845   },
   4846 /* cpaveu3.b $crop,$crqp,$crpp */
   4847   {
   4848     { 0, 0, 0, 0 },
   4849     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4850     & ifmt_cpadd3_b_P0S_P1, { 0x18a00000 }
   4851   },
   4852 /* cpave3.b $crop,$crqp,$crpp */
   4853   {
   4854     { 0, 0, 0, 0 },
   4855     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4856     & ifmt_cpadd3_b_P0S_P1, { 0x19a00000 }
   4857   },
   4858 /* cpave3.h $crop,$crqp,$crpp */
   4859   {
   4860     { 0, 0, 0, 0 },
   4861     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4862     & ifmt_cpadd3_b_P0S_P1, { 0x1aa00000 }
   4863   },
   4864 /* cpave3.w $crop,$crqp,$crpp */
   4865   {
   4866     { 0, 0, 0, 0 },
   4867     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4868     & ifmt_cpadd3_b_P0S_P1, { 0x1ba00000 }
   4869   },
   4870 /* cpaddsru3.b $crop,$crqp,$crpp */
   4871   {
   4872     { 0, 0, 0, 0 },
   4873     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4874     & ifmt_cpadd3_b_P0S_P1, { 0x1ca00000 }
   4875   },
   4876 /* cpaddsr3.b $crop,$crqp,$crpp */
   4877   {
   4878     { 0, 0, 0, 0 },
   4879     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4880     & ifmt_cpadd3_b_P0S_P1, { 0x1da00000 }
   4881   },
   4882 /* cpaddsr3.h $crop,$crqp,$crpp */
   4883   {
   4884     { 0, 0, 0, 0 },
   4885     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4886     & ifmt_cpadd3_b_P0S_P1, { 0x1ea00000 }
   4887   },
   4888 /* cpaddsr3.w $crop,$crqp,$crpp */
   4889   {
   4890     { 0, 0, 0, 0 },
   4891     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4892     & ifmt_cpadd3_b_P0S_P1, { 0x1fa00000 }
   4893   },
   4894 /* cpabsu3.b $crop,$crqp,$crpp */
   4895   {
   4896     { 0, 0, 0, 0 },
   4897     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4898     & ifmt_cpadd3_b_P0S_P1, { 0x20a00000 }
   4899   },
   4900 /* cpabs3.b $crop,$crqp,$crpp */
   4901   {
   4902     { 0, 0, 0, 0 },
   4903     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4904     & ifmt_cpadd3_b_P0S_P1, { 0x21a00000 }
   4905   },
   4906 /* cpabs3.h $crop,$crqp,$crpp */
   4907   {
   4908     { 0, 0, 0, 0 },
   4909     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4910     & ifmt_cpadd3_b_P0S_P1, { 0x22a00000 }
   4911   },
   4912 /* cpand3 $crop,$crqp,$crpp */
   4913   {
   4914     { 0, 0, 0, 0 },
   4915     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4916     & ifmt_cpadd3_b_P0S_P1, { 0x24a00000 }
   4917   },
   4918 /* cpor3 $crop,$crqp,$crpp */
   4919   {
   4920     { 0, 0, 0, 0 },
   4921     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4922     & ifmt_cpadd3_b_P0S_P1, { 0x25a00000 }
   4923   },
   4924 /* cpnor3 $crop,$crqp,$crpp */
   4925   {
   4926     { 0, 0, 0, 0 },
   4927     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4928     & ifmt_cpadd3_b_P0S_P1, { 0x26a00000 }
   4929   },
   4930 /* cpxor3 $crop,$crqp,$crpp */
   4931   {
   4932     { 0, 0, 0, 0 },
   4933     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4934     & ifmt_cpadd3_b_P0S_P1, { 0x27a00000 }
   4935   },
   4936 /* cppacku.b $crop,$crqp,$crpp */
   4937   {
   4938     { 0, 0, 0, 0 },
   4939     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4940     & ifmt_cpadd3_b_P0S_P1, { 0x2ca00000 }
   4941   },
   4942 /* cppack.b $crop,$crqp,$crpp */
   4943   {
   4944     { 0, 0, 0, 0 },
   4945     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4946     & ifmt_cpadd3_b_P0S_P1, { 0x2da00000 }
   4947   },
   4948 /* cppack.h $crop,$crqp,$crpp */
   4949   {
   4950     { 0, 0, 0, 0 },
   4951     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4952     & ifmt_cpadd3_b_P0S_P1, { 0x2fa00000 }
   4953   },
   4954 /* cpmaxu3.b $crop,$crqp,$crpp */
   4955   {
   4956     { 0, 0, 0, 0 },
   4957     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4958     & ifmt_cpadd3_b_P0S_P1, { 0x30a00000 }
   4959   },
   4960 /* cpmax3.b $crop,$crqp,$crpp */
   4961   {
   4962     { 0, 0, 0, 0 },
   4963     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4964     & ifmt_cpadd3_b_P0S_P1, { 0x31a00000 }
   4965   },
   4966 /* cpmax3.h $crop,$crqp,$crpp */
   4967   {
   4968     { 0, 0, 0, 0 },
   4969     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4970     & ifmt_cpadd3_b_P0S_P1, { 0x33a00000 }
   4971   },
   4972 /* cpmaxu3.w $crop,$crqp,$crpp */
   4973   {
   4974     { 0, 0, 0, 0 },
   4975     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4976     & ifmt_cpadd3_b_P0S_P1, { 0x34a00000 }
   4977   },
   4978 /* cpmax3.w $crop,$crqp,$crpp */
   4979   {
   4980     { 0, 0, 0, 0 },
   4981     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4982     & ifmt_cpadd3_b_P0S_P1, { 0x35a00000 }
   4983   },
   4984 /* cpminu3.b $crop,$crqp,$crpp */
   4985   {
   4986     { 0, 0, 0, 0 },
   4987     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4988     & ifmt_cpadd3_b_P0S_P1, { 0x38a00000 }
   4989   },
   4990 /* cpmin3.b $crop,$crqp,$crpp */
   4991   {
   4992     { 0, 0, 0, 0 },
   4993     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   4994     & ifmt_cpadd3_b_P0S_P1, { 0x39a00000 }
   4995   },
   4996 /* cpmin3.h $crop,$crqp,$crpp */
   4997   {
   4998     { 0, 0, 0, 0 },
   4999     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5000     & ifmt_cpadd3_b_P0S_P1, { 0x3ba00000 }
   5001   },
   5002 /* cpminu3.w $crop,$crqp,$crpp */
   5003   {
   5004     { 0, 0, 0, 0 },
   5005     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5006     & ifmt_cpadd3_b_P0S_P1, { 0x3ca00000 }
   5007   },
   5008 /* cpmin3.w $crop,$crqp,$crpp */
   5009   {
   5010     { 0, 0, 0, 0 },
   5011     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5012     & ifmt_cpadd3_b_P0S_P1, { 0x3da00000 }
   5013   },
   5014 /* cpsrl3.b $crop,$crqp,$crpp */
   5015   {
   5016     { 0, 0, 0, 0 },
   5017     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5018     & ifmt_cpadd3_b_P0S_P1, { 0x40a00000 }
   5019   },
   5020 /* cpssrl3.b $crop,$crqp,$crpp */
   5021   {
   5022     { 0, 0, 0, 0 },
   5023     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5024     & ifmt_cpadd3_b_P0S_P1, { 0x41a00000 }
   5025   },
   5026 /* cpsrl3.h $crop,$crqp,$crpp */
   5027   {
   5028     { 0, 0, 0, 0 },
   5029     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5030     & ifmt_cpadd3_b_P0S_P1, { 0x42a00000 }
   5031   },
   5032 /* cpssrl3.h $crop,$crqp,$crpp */
   5033   {
   5034     { 0, 0, 0, 0 },
   5035     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5036     & ifmt_cpadd3_b_P0S_P1, { 0x43a00000 }
   5037   },
   5038 /* cpsrl3.w $crop,$crqp,$crpp */
   5039   {
   5040     { 0, 0, 0, 0 },
   5041     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5042     & ifmt_cpadd3_b_P0S_P1, { 0x44a00000 }
   5043   },
   5044 /* cpssrl3.w $crop,$crqp,$crpp */
   5045   {
   5046     { 0, 0, 0, 0 },
   5047     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5048     & ifmt_cpadd3_b_P0S_P1, { 0x45a00000 }
   5049   },
   5050 /* cdsrl3 $crop,$crqp,$crpp */
   5051   {
   5052     { 0, 0, 0, 0 },
   5053     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5054     & ifmt_cpadd3_b_P0S_P1, { 0x46a00000 }
   5055   },
   5056 /* cpsra3.b $crop,$crqp,$crpp */
   5057   {
   5058     { 0, 0, 0, 0 },
   5059     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5060     & ifmt_cpadd3_b_P0S_P1, { 0x48a00000 }
   5061   },
   5062 /* cpssra3.b $crop,$crqp,$crpp */
   5063   {
   5064     { 0, 0, 0, 0 },
   5065     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5066     & ifmt_cpadd3_b_P0S_P1, { 0x49a00000 }
   5067   },
   5068 /* cpsra3.h $crop,$crqp,$crpp */
   5069   {
   5070     { 0, 0, 0, 0 },
   5071     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5072     & ifmt_cpadd3_b_P0S_P1, { 0x4aa00000 }
   5073   },
   5074 /* cpssra3.h $crop,$crqp,$crpp */
   5075   {
   5076     { 0, 0, 0, 0 },
   5077     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5078     & ifmt_cpadd3_b_P0S_P1, { 0x4ba00000 }
   5079   },
   5080 /* cpsra3.w $crop,$crqp,$crpp */
   5081   {
   5082     { 0, 0, 0, 0 },
   5083     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5084     & ifmt_cpadd3_b_P0S_P1, { 0x4ca00000 }
   5085   },
   5086 /* cpssra3.w $crop,$crqp,$crpp */
   5087   {
   5088     { 0, 0, 0, 0 },
   5089     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5090     & ifmt_cpadd3_b_P0S_P1, { 0x4da00000 }
   5091   },
   5092 /* cdsra3 $crop,$crqp,$crpp */
   5093   {
   5094     { 0, 0, 0, 0 },
   5095     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5096     & ifmt_cpadd3_b_P0S_P1, { 0x4ea00000 }
   5097   },
   5098 /* cpsll3.b $crop,$crqp,$crpp */
   5099   {
   5100     { 0, 0, 0, 0 },
   5101     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5102     & ifmt_cpadd3_b_P0S_P1, { 0x50a00000 }
   5103   },
   5104 /* cpssll3.b $crop,$crqp,$crpp */
   5105   {
   5106     { 0, 0, 0, 0 },
   5107     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5108     & ifmt_cpadd3_b_P0S_P1, { 0x51a00000 }
   5109   },
   5110 /* cpsll3.h $crop,$crqp,$crpp */
   5111   {
   5112     { 0, 0, 0, 0 },
   5113     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5114     & ifmt_cpadd3_b_P0S_P1, { 0x52a00000 }
   5115   },
   5116 /* cpssll3.h $crop,$crqp,$crpp */
   5117   {
   5118     { 0, 0, 0, 0 },
   5119     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5120     & ifmt_cpadd3_b_P0S_P1, { 0x53a00000 }
   5121   },
   5122 /* cpsll3.w $crop,$crqp,$crpp */
   5123   {
   5124     { 0, 0, 0, 0 },
   5125     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5126     & ifmt_cpadd3_b_P0S_P1, { 0x54a00000 }
   5127   },
   5128 /* cpssll3.w $crop,$crqp,$crpp */
   5129   {
   5130     { 0, 0, 0, 0 },
   5131     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5132     & ifmt_cpadd3_b_P0S_P1, { 0x55a00000 }
   5133   },
   5134 /* cdsll3 $crop,$crqp,$crpp */
   5135   {
   5136     { 0, 0, 0, 0 },
   5137     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5138     & ifmt_cpadd3_b_P0S_P1, { 0x56a00000 }
   5139   },
   5140 /* cpsla3.h $crop,$crqp,$crpp */
   5141   {
   5142     { 0, 0, 0, 0 },
   5143     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5144     & ifmt_cpadd3_b_P0S_P1, { 0x5aa00000 }
   5145   },
   5146 /* cpsla3.w $crop,$crqp,$crpp */
   5147   {
   5148     { 0, 0, 0, 0 },
   5149     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (CRPP), 0 } },
   5150     & ifmt_cpadd3_b_P0S_P1, { 0x5ca00000 }
   5151   },
   5152 /* cpsrli3.b $crop,$crqp,$imm3p5 */
   5153   {
   5154     { 0, 0, 0, 0 },
   5155     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM3P5), 0 } },
   5156     & ifmt_cpsrli3_b_P0_P1, { 0xa80000 }
   5157   },
   5158 /* cpsrli3.h $crop,$crqp,$imm4p4 */
   5159   {
   5160     { 0, 0, 0, 0 },
   5161     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM4P4), 0 } },
   5162     & ifmt_cpsrli3_h_P0_P1, { 0xa80200 }
   5163   },
   5164 /* cpsrli3.w $crop,$crqp,$imm5p3 */
   5165   {
   5166     { 0, 0, 0, 0 },
   5167     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM5P3), 0 } },
   5168     & ifmt_cpsrli3_w_P0_P1, { 0xa80400 }
   5169   },
   5170 /* cdsrli3 $crop,$crqp,$imm6p2 */
   5171   {
   5172     { 0, 0, 0, 0 },
   5173     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM6P2), 0 } },
   5174     & ifmt_cdsrli3_P0_P1, { 0xa80600 }
   5175   },
   5176 /* cpsrai3.b $crop,$crqp,$imm3p5 */
   5177   {
   5178     { 0, 0, 0, 0 },
   5179     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM3P5), 0 } },
   5180     & ifmt_cpsrli3_b_P0_P1, { 0xa80800 }
   5181   },
   5182 /* cpsrai3.h $crop,$crqp,$imm4p4 */
   5183   {
   5184     { 0, 0, 0, 0 },
   5185     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM4P4), 0 } },
   5186     & ifmt_cpsrli3_h_P0_P1, { 0xa80a00 }
   5187   },
   5188 /* cpsrai3.w $crop,$crqp,$imm5p3 */
   5189   {
   5190     { 0, 0, 0, 0 },
   5191     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM5P3), 0 } },
   5192     & ifmt_cpsrli3_w_P0_P1, { 0xa80c00 }
   5193   },
   5194 /* cdsrai3 $crop,$crqp,$imm6p2 */
   5195   {
   5196     { 0, 0, 0, 0 },
   5197     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM6P2), 0 } },
   5198     & ifmt_cdsrli3_P0_P1, { 0xa80e00 }
   5199   },
   5200 /* cpslli3.b $crop,$crqp,$imm3p5 */
   5201   {
   5202     { 0, 0, 0, 0 },
   5203     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM3P5), 0 } },
   5204     & ifmt_cpsrli3_b_P0_P1, { 0xa81000 }
   5205   },
   5206 /* cpslli3.h $crop,$crqp,$imm4p4 */
   5207   {
   5208     { 0, 0, 0, 0 },
   5209     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM4P4), 0 } },
   5210     & ifmt_cpsrli3_h_P0_P1, { 0xa81200 }
   5211   },
   5212 /* cpslli3.w $crop,$crqp,$imm5p3 */
   5213   {
   5214     { 0, 0, 0, 0 },
   5215     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM5P3), 0 } },
   5216     & ifmt_cpsrli3_w_P0_P1, { 0xa81400 }
   5217   },
   5218 /* cdslli3 $crop,$crqp,$imm6p2 */
   5219   {
   5220     { 0, 0, 0, 0 },
   5221     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM6P2), 0 } },
   5222     & ifmt_cdsrli3_P0_P1, { 0xa81600 }
   5223   },
   5224 /* cpslai3.h $crop,$crqp,$imm4p4 */
   5225   {
   5226     { 0, 0, 0, 0 },
   5227     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM4P4), 0 } },
   5228     & ifmt_cpsrli3_h_P0_P1, { 0xa81a00 }
   5229   },
   5230 /* cpslai3.w $crop,$crqp,$imm5p3 */
   5231   {
   5232     { 0, 0, 0, 0 },
   5233     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM5P3), 0 } },
   5234     & ifmt_cpsrli3_w_P0_P1, { 0xa81c00 }
   5235   },
   5236 /* cpclipiu3.w $crop,$crqp,$imm5p3 */
   5237   {
   5238     { 0, 0, 0, 0 },
   5239     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM5P3), 0 } },
   5240     & ifmt_cpsrli3_w_P0_P1, { 0xa82000 }
   5241   },
   5242 /* cpclipi3.w $crop,$crqp,$imm5p3 */
   5243   {
   5244     { 0, 0, 0, 0 },
   5245     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM5P3), 0 } },
   5246     & ifmt_cpsrli3_w_P0_P1, { 0xa82200 }
   5247   },
   5248 /* cdclipiu3 $crop,$crqp,$imm6p2 */
   5249   {
   5250     { 0, 0, 0, 0 },
   5251     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM6P2), 0 } },
   5252     & ifmt_cdsrli3_P0_P1, { 0xa82400 }
   5253   },
   5254 /* cdclipi3 $crop,$crqp,$imm6p2 */
   5255   {
   5256     { 0, 0, 0, 0 },
   5257     { { MNEM, ' ', OP (CROP), ',', OP (CRQP), ',', OP (IMM6P2), 0 } },
   5258     & ifmt_cdsrli3_P0_P1, { 0xa82600 }
   5259   },
   5260 /* cpmovi.h $crqp,$simm16p0 */
   5261   {
   5262     { 0, 0, 0, 0 },
   5263     { { MNEM, ' ', OP (CRQP), ',', OP (SIMM16P0), 0 } },
   5264     & ifmt_cpmovi_h_P0_P1, { 0xb01000 }
   5265   },
   5266 /* cpmoviu.w $crqp,$imm16p0 */
   5267   {
   5268     { 0, 0, 0, 0 },
   5269     { { MNEM, ' ', OP (CRQP), ',', OP (IMM16P0), 0 } },
   5270     & ifmt_cpmoviu_w_P0_P1, { 0xb80000 }
   5271   },
   5272 /* cpmovi.w $crqp,$simm16p0 */
   5273   {
   5274     { 0, 0, 0, 0 },
   5275     { { MNEM, ' ', OP (CRQP), ',', OP (SIMM16P0), 0 } },
   5276     & ifmt_cpmovi_h_P0_P1, { 0xb81000 }
   5277   },
   5278 /* cdmoviu $crqp,$imm16p0 */
   5279   {
   5280     { 0, 0, 0, 0 },
   5281     { { MNEM, ' ', OP (CRQP), ',', OP (IMM16P0), 0 } },
   5282     & ifmt_cpmoviu_w_P0_P1, { 0xb82000 }
   5283   },
   5284 /* cdmovi $crqp,$simm16p0 */
   5285   {
   5286     { 0, 0, 0, 0 },
   5287     { { MNEM, ' ', OP (CRQP), ',', OP (SIMM16P0), 0 } },
   5288     & ifmt_cpmovi_h_P0_P1, { 0xb83000 }
   5289   },
   5290 /* c1nop */
   5291   {
   5292     { 0, 0, 0, 0 },
   5293     { { MNEM, 0 } },
   5294     & ifmt_c0nop_P0_P0S, { 0x0 }
   5295   },
   5296 /* cpmovi.b $crqp,$simm8p20 */
   5297   {
   5298     { 0, 0, 0, 0 },
   5299     { { MNEM, ' ', OP (CRQP), ',', OP (SIMM8P20), 0 } },
   5300     & ifmt_cpmovi_b_P0S_P1, { 0xb00000 }
   5301   },
   5302 /* cpadda1u.b $crqp,$crpp */
   5303   {
   5304     { 0, 0, 0, 0 },
   5305     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5306     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00000 }
   5307   },
   5308 /* cpadda1.b $crqp,$crpp */
   5309   {
   5310     { 0, 0, 0, 0 },
   5311     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5312     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00010 }
   5313   },
   5314 /* cpaddua1.h $crqp,$crpp */
   5315   {
   5316     { 0, 0, 0, 0 },
   5317     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5318     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00020 }
   5319   },
   5320 /* cpaddla1.h $crqp,$crpp */
   5321   {
   5322     { 0, 0, 0, 0 },
   5323     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5324     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00030 }
   5325   },
   5326 /* cpaddaca1u.b $crqp,$crpp */
   5327   {
   5328     { 0, 0, 0, 0 },
   5329     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5330     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00040 }
   5331   },
   5332 /* cpaddaca1.b $crqp,$crpp */
   5333   {
   5334     { 0, 0, 0, 0 },
   5335     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5336     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00050 }
   5337   },
   5338 /* cpaddacua1.h $crqp,$crpp */
   5339   {
   5340     { 0, 0, 0, 0 },
   5341     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5342     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00060 }
   5343   },
   5344 /* cpaddacla1.h $crqp,$crpp */
   5345   {
   5346     { 0, 0, 0, 0 },
   5347     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5348     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00070 }
   5349   },
   5350 /* cpsuba1u.b $crqp,$crpp */
   5351   {
   5352     { 0, 0, 0, 0 },
   5353     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5354     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00080 }
   5355   },
   5356 /* cpsuba1.b $crqp,$crpp */
   5357   {
   5358     { 0, 0, 0, 0 },
   5359     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5360     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00090 }
   5361   },
   5362 /* cpsubua1.h $crqp,$crpp */
   5363   {
   5364     { 0, 0, 0, 0 },
   5365     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5366     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000a0 }
   5367   },
   5368 /* cpsubla1.h $crqp,$crpp */
   5369   {
   5370     { 0, 0, 0, 0 },
   5371     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5372     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000b0 }
   5373   },
   5374 /* cpsubaca1u.b $crqp,$crpp */
   5375   {
   5376     { 0, 0, 0, 0 },
   5377     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5378     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000c0 }
   5379   },
   5380 /* cpsubaca1.b $crqp,$crpp */
   5381   {
   5382     { 0, 0, 0, 0 },
   5383     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5384     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000d0 }
   5385   },
   5386 /* cpsubacua1.h $crqp,$crpp */
   5387   {
   5388     { 0, 0, 0, 0 },
   5389     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5390     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000e0 }
   5391   },
   5392 /* cpsubacla1.h $crqp,$crpp */
   5393   {
   5394     { 0, 0, 0, 0 },
   5395     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5396     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc000f0 }
   5397   },
   5398 /* cpabsa1u.b $crqp,$crpp */
   5399   {
   5400     { 0, 0, 0, 0 },
   5401     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5402     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00100 }
   5403   },
   5404 /* cpabsa1.b $crqp,$crpp */
   5405   {
   5406     { 0, 0, 0, 0 },
   5407     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5408     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00110 }
   5409   },
   5410 /* cpabsua1.h $crqp,$crpp */
   5411   {
   5412     { 0, 0, 0, 0 },
   5413     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5414     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00120 }
   5415   },
   5416 /* cpabsla1.h $crqp,$crpp */
   5417   {
   5418     { 0, 0, 0, 0 },
   5419     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5420     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00130 }
   5421   },
   5422 /* cpsada1u.b $crqp,$crpp */
   5423   {
   5424     { 0, 0, 0, 0 },
   5425     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5426     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00140 }
   5427   },
   5428 /* cpsada1.b $crqp,$crpp */
   5429   {
   5430     { 0, 0, 0, 0 },
   5431     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5432     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00150 }
   5433   },
   5434 /* cpsadua1.h $crqp,$crpp */
   5435   {
   5436     { 0, 0, 0, 0 },
   5437     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5438     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00160 }
   5439   },
   5440 /* cpsadla1.h $crqp,$crpp */
   5441   {
   5442     { 0, 0, 0, 0 },
   5443     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5444     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc00170 }
   5445   },
   5446 /* cpseta1.h $crqp,$crpp */
   5447   {
   5448     { 0, 0, 0, 0 },
   5449     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5450     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc001b0 }
   5451   },
   5452 /* cpsetua1.w $crqp,$crpp */
   5453   {
   5454     { 0, 0, 0, 0 },
   5455     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5456     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc001c0 }
   5457   },
   5458 /* cpsetla1.w $crqp,$crpp */
   5459   {
   5460     { 0, 0, 0, 0 },
   5461     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5462     & ifmt_cpcmpeqz_b_P0S_P1, { 0xc001d0 }
   5463   },
   5464 /* cpmova1.b $crop */
   5465   {
   5466     { 0, 0, 0, 0 },
   5467     { { MNEM, ' ', OP (CROP), 0 } },
   5468     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80200 }
   5469   },
   5470 /* cpmovua1.h $crop */
   5471   {
   5472     { 0, 0, 0, 0 },
   5473     { { MNEM, ' ', OP (CROP), 0 } },
   5474     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80400 }
   5475   },
   5476 /* cpmovla1.h $crop */
   5477   {
   5478     { 0, 0, 0, 0 },
   5479     { { MNEM, ' ', OP (CROP), 0 } },
   5480     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80600 }
   5481   },
   5482 /* cpmovuua1.w $crop */
   5483   {
   5484     { 0, 0, 0, 0 },
   5485     { { MNEM, ' ', OP (CROP), 0 } },
   5486     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80800 }
   5487   },
   5488 /* cpmovula1.w $crop */
   5489   {
   5490     { 0, 0, 0, 0 },
   5491     { { MNEM, ' ', OP (CROP), 0 } },
   5492     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80a00 }
   5493   },
   5494 /* cpmovlua1.w $crop */
   5495   {
   5496     { 0, 0, 0, 0 },
   5497     { { MNEM, ' ', OP (CROP), 0 } },
   5498     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80c00 }
   5499   },
   5500 /* cpmovlla1.w $crop */
   5501   {
   5502     { 0, 0, 0, 0 },
   5503     { { MNEM, ' ', OP (CROP), 0 } },
   5504     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc80e00 }
   5505   },
   5506 /* cppacka1u.b $crop */
   5507   {
   5508     { 0, 0, 0, 0 },
   5509     { { MNEM, ' ', OP (CROP), 0 } },
   5510     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81000 }
   5511   },
   5512 /* cppacka1.b $crop */
   5513   {
   5514     { 0, 0, 0, 0 },
   5515     { { MNEM, ' ', OP (CROP), 0 } },
   5516     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81200 }
   5517   },
   5518 /* cppackua1.h $crop */
   5519   {
   5520     { 0, 0, 0, 0 },
   5521     { { MNEM, ' ', OP (CROP), 0 } },
   5522     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81400 }
   5523   },
   5524 /* cppackla1.h $crop */
   5525   {
   5526     { 0, 0, 0, 0 },
   5527     { { MNEM, ' ', OP (CROP), 0 } },
   5528     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81600 }
   5529   },
   5530 /* cppackua1.w $crop */
   5531   {
   5532     { 0, 0, 0, 0 },
   5533     { { MNEM, ' ', OP (CROP), 0 } },
   5534     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81800 }
   5535   },
   5536 /* cppackla1.w $crop */
   5537   {
   5538     { 0, 0, 0, 0 },
   5539     { { MNEM, ' ', OP (CROP), 0 } },
   5540     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81a00 }
   5541   },
   5542 /* cpmovhua1.w $crop */
   5543   {
   5544     { 0, 0, 0, 0 },
   5545     { { MNEM, ' ', OP (CROP), 0 } },
   5546     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81c00 }
   5547   },
   5548 /* cpmovhla1.w $crop */
   5549   {
   5550     { 0, 0, 0, 0 },
   5551     { { MNEM, ' ', OP (CROP), 0 } },
   5552     & ifmt_cpmovfrcsar0_P0S_P1, { 0xc81e00 }
   5553   },
   5554 /* cpacsuma1 */
   5555   {
   5556     { 0, 0, 0, 0 },
   5557     { { MNEM, 0 } },
   5558     & ifmt_c0nop_P0_P0S, { 0xc82000 }
   5559   },
   5560 /* cpaccpa1 */
   5561   {
   5562     { 0, 0, 0, 0 },
   5563     { { MNEM, 0 } },
   5564     & ifmt_c0nop_P0_P0S, { 0xc82200 }
   5565   },
   5566 /* cpacswp */
   5567   {
   5568     { 0, 0, 0, 0 },
   5569     { { MNEM, 0 } },
   5570     & ifmt_c0nop_P0_P0S, { 0xc82400 }
   5571   },
   5572 /* cpsrla1 $crqp */
   5573   {
   5574     { 0, 0, 0, 0 },
   5575     { { MNEM, ' ', OP (CRQP), 0 } },
   5576     & ifmt_cpccadd_b_P0S_P1, { 0xc83000 }
   5577   },
   5578 /* cpsraa1 $crqp */
   5579   {
   5580     { 0, 0, 0, 0 },
   5581     { { MNEM, ' ', OP (CRQP), 0 } },
   5582     & ifmt_cpccadd_b_P0S_P1, { 0xc83200 }
   5583   },
   5584 /* cpslla1 $crqp */
   5585   {
   5586     { 0, 0, 0, 0 },
   5587     { { MNEM, ' ', OP (CRQP), 0 } },
   5588     & ifmt_cpccadd_b_P0S_P1, { 0xc83400 }
   5589   },
   5590 /* cpsrlia1 $imm5p23 */
   5591   {
   5592     { 0, 0, 0, 0 },
   5593     { { MNEM, ' ', OP (IMM5P23), 0 } },
   5594     & ifmt_cpsrlia0_P0S, { 0xc83800 }
   5595   },
   5596 /* cpsraia1 $imm5p23 */
   5597   {
   5598     { 0, 0, 0, 0 },
   5599     { { MNEM, ' ', OP (IMM5P23), 0 } },
   5600     & ifmt_cpsrlia0_P0S, { 0xc83a00 }
   5601   },
   5602 /* cpsllia1 $imm5p23 */
   5603   {
   5604     { 0, 0, 0, 0 },
   5605     { { MNEM, ' ', OP (IMM5P23), 0 } },
   5606     & ifmt_cpsrlia0_P0S, { 0xc83c00 }
   5607   },
   5608 /* cpfmulia1s0u.b $crqp,$crpp,$simm8p0 */
   5609   {
   5610     { 0, 0, 0, 0 },
   5611     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5612     & ifmt_cpfmulia1s0u_b_P1, { 0xf80000 }
   5613   },
   5614 /* cpfmulia1s0.b $crqp,$crpp,$simm8p0 */
   5615   {
   5616     { 0, 0, 0, 0 },
   5617     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5618     & ifmt_cpfmulia1s0u_b_P1, { 0xf80010 }
   5619   },
   5620 /* cpfmuliua1s0.h $crqp,$crpp,$simm8p0 */
   5621   {
   5622     { 0, 0, 0, 0 },
   5623     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5624     & ifmt_cpfmulia1s0u_b_P1, { 0xf80020 }
   5625   },
   5626 /* cpfmulila1s0.h $crqp,$crpp,$simm8p0 */
   5627   {
   5628     { 0, 0, 0, 0 },
   5629     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5630     & ifmt_cpfmulia1s0u_b_P1, { 0xf80030 }
   5631   },
   5632 /* cpfmadia1s0u.b $crqp,$crpp,$simm8p0 */
   5633   {
   5634     { 0, 0, 0, 0 },
   5635     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5636     & ifmt_cpfmulia1s0u_b_P1, { 0xf80040 }
   5637   },
   5638 /* cpfmadia1s0.b $crqp,$crpp,$simm8p0 */
   5639   {
   5640     { 0, 0, 0, 0 },
   5641     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5642     & ifmt_cpfmulia1s0u_b_P1, { 0xf80050 }
   5643   },
   5644 /* cpfmadiua1s0.h $crqp,$crpp,$simm8p0 */
   5645   {
   5646     { 0, 0, 0, 0 },
   5647     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5648     & ifmt_cpfmulia1s0u_b_P1, { 0xf80060 }
   5649   },
   5650 /* cpfmadila1s0.h $crqp,$crpp,$simm8p0 */
   5651   {
   5652     { 0, 0, 0, 0 },
   5653     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5654     & ifmt_cpfmulia1s0u_b_P1, { 0xf80070 }
   5655   },
   5656 /* cpfmulia1s1u.b $crqp,$crpp,$simm8p0 */
   5657   {
   5658     { 0, 0, 0, 0 },
   5659     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5660     & ifmt_cpfmulia1s0u_b_P1, { 0xf80080 }
   5661   },
   5662 /* cpfmulia1s1.b $crqp,$crpp,$simm8p0 */
   5663   {
   5664     { 0, 0, 0, 0 },
   5665     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5666     & ifmt_cpfmulia1s0u_b_P1, { 0xf80090 }
   5667   },
   5668 /* cpfmuliua1s1.h $crqp,$crpp,$simm8p0 */
   5669   {
   5670     { 0, 0, 0, 0 },
   5671     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5672     & ifmt_cpfmulia1s0u_b_P1, { 0xf800a0 }
   5673   },
   5674 /* cpfmulila1s1.h $crqp,$crpp,$simm8p0 */
   5675   {
   5676     { 0, 0, 0, 0 },
   5677     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5678     & ifmt_cpfmulia1s0u_b_P1, { 0xf800b0 }
   5679   },
   5680 /* cpfmadia1s1u.b $crqp,$crpp,$simm8p0 */
   5681   {
   5682     { 0, 0, 0, 0 },
   5683     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5684     & ifmt_cpfmulia1s0u_b_P1, { 0xf800c0 }
   5685   },
   5686 /* cpfmadia1s1.b $crqp,$crpp,$simm8p0 */
   5687   {
   5688     { 0, 0, 0, 0 },
   5689     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5690     & ifmt_cpfmulia1s0u_b_P1, { 0xf800d0 }
   5691   },
   5692 /* cpfmadiua1s1.h $crqp,$crpp,$simm8p0 */
   5693   {
   5694     { 0, 0, 0, 0 },
   5695     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5696     & ifmt_cpfmulia1s0u_b_P1, { 0xf800e0 }
   5697   },
   5698 /* cpfmadila1s1.h $crqp,$crpp,$simm8p0 */
   5699   {
   5700     { 0, 0, 0, 0 },
   5701     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5702     & ifmt_cpfmulia1s0u_b_P1, { 0xf800f0 }
   5703   },
   5704 /* cpamulia1u.b $crqp,$crpp,$simm8p0 */
   5705   {
   5706     { 0, 0, 0, 0 },
   5707     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5708     & ifmt_cpfmulia1s0u_b_P1, { 0xf80100 }
   5709   },
   5710 /* cpamulia1.b $crqp,$crpp,$simm8p0 */
   5711   {
   5712     { 0, 0, 0, 0 },
   5713     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5714     & ifmt_cpfmulia1s0u_b_P1, { 0xf80110 }
   5715   },
   5716 /* cpamuliua1.h $crqp,$crpp,$simm8p0 */
   5717   {
   5718     { 0, 0, 0, 0 },
   5719     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5720     & ifmt_cpfmulia1s0u_b_P1, { 0xf80120 }
   5721   },
   5722 /* cpamulila1.h $crqp,$crpp,$simm8p0 */
   5723   {
   5724     { 0, 0, 0, 0 },
   5725     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5726     & ifmt_cpfmulia1s0u_b_P1, { 0xf80130 }
   5727   },
   5728 /* cpamadia1u.b $crqp,$crpp,$simm8p0 */
   5729   {
   5730     { 0, 0, 0, 0 },
   5731     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5732     & ifmt_cpfmulia1s0u_b_P1, { 0xf80140 }
   5733   },
   5734 /* cpamadia1.b $crqp,$crpp,$simm8p0 */
   5735   {
   5736     { 0, 0, 0, 0 },
   5737     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5738     & ifmt_cpfmulia1s0u_b_P1, { 0xf80150 }
   5739   },
   5740 /* cpamadiua1.h $crqp,$crpp,$simm8p0 */
   5741   {
   5742     { 0, 0, 0, 0 },
   5743     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5744     & ifmt_cpfmulia1s0u_b_P1, { 0xf80160 }
   5745   },
   5746 /* cpamadila1.h $crqp,$crpp,$simm8p0 */
   5747   {
   5748     { 0, 0, 0, 0 },
   5749     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (SIMM8P0), 0 } },
   5750     & ifmt_cpfmulia1s0u_b_P1, { 0xf80170 }
   5751   },
   5752 /* cpfmulia1u.b $crqp,$crpp,$imm3p25,$simm8p0 */
   5753   {
   5754     { 0, 0, 0, 0 },
   5755     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5756     & ifmt_cpfmulia1u_b_P1, { 0xe00000 }
   5757   },
   5758 /* cpfmulia1.b $crqp,$crpp,$imm3p25,$simm8p0 */
   5759   {
   5760     { 0, 0, 0, 0 },
   5761     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5762     & ifmt_cpfmulia1u_b_P1, { 0xe00080 }
   5763   },
   5764 /* cpfmuliua1.h $crqp,$crpp,$imm3p25,$simm8p0 */
   5765   {
   5766     { 0, 0, 0, 0 },
   5767     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5768     & ifmt_cpfmulia1u_b_P1, { 0xe00100 }
   5769   },
   5770 /* cpfmulila1.h $crqp,$crpp,$imm3p25,$simm8p0 */
   5771   {
   5772     { 0, 0, 0, 0 },
   5773     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5774     & ifmt_cpfmulia1u_b_P1, { 0xe00180 }
   5775   },
   5776 /* cpfmadia1u.b $crqp,$crpp,$imm3p25,$simm8p0 */
   5777   {
   5778     { 0, 0, 0, 0 },
   5779     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5780     & ifmt_cpfmulia1u_b_P1, { 0xe80000 }
   5781   },
   5782 /* cpfmadia1.b $crqp,$crpp,$imm3p25,$simm8p0 */
   5783   {
   5784     { 0, 0, 0, 0 },
   5785     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5786     & ifmt_cpfmulia1u_b_P1, { 0xe80080 }
   5787   },
   5788 /* cpfmadiua1.h $crqp,$crpp,$imm3p25,$simm8p0 */
   5789   {
   5790     { 0, 0, 0, 0 },
   5791     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5792     & ifmt_cpfmulia1u_b_P1, { 0xe80100 }
   5793   },
   5794 /* cpfmadila1.h $crqp,$crpp,$imm3p25,$simm8p0 */
   5795   {
   5796     { 0, 0, 0, 0 },
   5797     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), ',', OP (IMM3P25), ',', OP (SIMM8P0), 0 } },
   5798     & ifmt_cpfmulia1u_b_P1, { 0xe80180 }
   5799   },
   5800 /* cpssqa1u.b $crqp,$crpp */
   5801   {
   5802     { 0, 0, 0, 0 },
   5803     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5804     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00000 }
   5805   },
   5806 /* cpssqa1.b $crqp,$crpp */
   5807   {
   5808     { 0, 0, 0, 0 },
   5809     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5810     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00010 }
   5811   },
   5812 /* cpssda1u.b $crqp,$crpp */
   5813   {
   5814     { 0, 0, 0, 0 },
   5815     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5816     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00040 }
   5817   },
   5818 /* cpssda1.b $crqp,$crpp */
   5819   {
   5820     { 0, 0, 0, 0 },
   5821     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5822     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00050 }
   5823   },
   5824 /* cpmula1u.b $crqp,$crpp */
   5825   {
   5826     { 0, 0, 0, 0 },
   5827     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5828     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00080 }
   5829   },
   5830 /* cpmula1.b $crqp,$crpp */
   5831   {
   5832     { 0, 0, 0, 0 },
   5833     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5834     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00090 }
   5835   },
   5836 /* cpmulua1.h $crqp,$crpp */
   5837   {
   5838     { 0, 0, 0, 0 },
   5839     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5840     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf000a0 }
   5841   },
   5842 /* cpmulla1.h $crqp,$crpp */
   5843   {
   5844     { 0, 0, 0, 0 },
   5845     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5846     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf000b0 }
   5847   },
   5848 /* cpmulua1u.w $crqp,$crpp */
   5849   {
   5850     { 0, 0, 0, 0 },
   5851     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5852     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf000c0 }
   5853   },
   5854 /* cpmulla1u.w $crqp,$crpp */
   5855   {
   5856     { 0, 0, 0, 0 },
   5857     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5858     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf000d0 }
   5859   },
   5860 /* cpmulua1.w $crqp,$crpp */
   5861   {
   5862     { 0, 0, 0, 0 },
   5863     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5864     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf000e0 }
   5865   },
   5866 /* cpmulla1.w $crqp,$crpp */
   5867   {
   5868     { 0, 0, 0, 0 },
   5869     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5870     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf000f0 }
   5871   },
   5872 /* cpmada1u.b $crqp,$crpp */
   5873   {
   5874     { 0, 0, 0, 0 },
   5875     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5876     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00100 }
   5877   },
   5878 /* cpmada1.b $crqp,$crpp */
   5879   {
   5880     { 0, 0, 0, 0 },
   5881     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5882     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00110 }
   5883   },
   5884 /* cpmadua1.h $crqp,$crpp */
   5885   {
   5886     { 0, 0, 0, 0 },
   5887     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5888     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00120 }
   5889   },
   5890 /* cpmadla1.h $crqp,$crpp */
   5891   {
   5892     { 0, 0, 0, 0 },
   5893     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5894     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00130 }
   5895   },
   5896 /* cpmadua1u.w $crqp,$crpp */
   5897   {
   5898     { 0, 0, 0, 0 },
   5899     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5900     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00140 }
   5901   },
   5902 /* cpmadla1u.w $crqp,$crpp */
   5903   {
   5904     { 0, 0, 0, 0 },
   5905     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5906     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00150 }
   5907   },
   5908 /* cpmadua1.w $crqp,$crpp */
   5909   {
   5910     { 0, 0, 0, 0 },
   5911     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5912     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00160 }
   5913   },
   5914 /* cpmadla1.w $crqp,$crpp */
   5915   {
   5916     { 0, 0, 0, 0 },
   5917     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5918     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf00170 }
   5919   },
   5920 /* cpmsbua1.h $crqp,$crpp */
   5921   {
   5922     { 0, 0, 0, 0 },
   5923     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5924     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf001a0 }
   5925   },
   5926 /* cpmsbla1.h $crqp,$crpp */
   5927   {
   5928     { 0, 0, 0, 0 },
   5929     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5930     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf001b0 }
   5931   },
   5932 /* cpmsbua1u.w $crqp,$crpp */
   5933   {
   5934     { 0, 0, 0, 0 },
   5935     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5936     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf001c0 }
   5937   },
   5938 /* cpmsbla1u.w $crqp,$crpp */
   5939   {
   5940     { 0, 0, 0, 0 },
   5941     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5942     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf001d0 }
   5943   },
   5944 /* cpmsbua1.w $crqp,$crpp */
   5945   {
   5946     { 0, 0, 0, 0 },
   5947     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5948     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf001e0 }
   5949   },
   5950 /* cpmsbla1.w $crqp,$crpp */
   5951   {
   5952     { 0, 0, 0, 0 },
   5953     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5954     & ifmt_cpcmpeqz_b_P0S_P1, { 0xf001f0 }
   5955   },
   5956 /* cpsmadua1.h $crqp,$crpp */
   5957   {
   5958     { 0, 0, 0, 0 },
   5959     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5960     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f00120 }
   5961   },
   5962 /* cpsmadla1.h $crqp,$crpp */
   5963   {
   5964     { 0, 0, 0, 0 },
   5965     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5966     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f00130 }
   5967   },
   5968 /* cpsmadua1.w $crqp,$crpp */
   5969   {
   5970     { 0, 0, 0, 0 },
   5971     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5972     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f00160 }
   5973   },
   5974 /* cpsmadla1.w $crqp,$crpp */
   5975   {
   5976     { 0, 0, 0, 0 },
   5977     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5978     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f00170 }
   5979   },
   5980 /* cpsmsbua1.h $crqp,$crpp */
   5981   {
   5982     { 0, 0, 0, 0 },
   5983     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5984     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f001a0 }
   5985   },
   5986 /* cpsmsbla1.h $crqp,$crpp */
   5987   {
   5988     { 0, 0, 0, 0 },
   5989     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5990     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f001b0 }
   5991   },
   5992 /* cpsmsbua1.w $crqp,$crpp */
   5993   {
   5994     { 0, 0, 0, 0 },
   5995     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   5996     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f001e0 }
   5997   },
   5998 /* cpsmsbla1.w $crqp,$crpp */
   5999   {
   6000     { 0, 0, 0, 0 },
   6001     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6002     & ifmt_cpcmpeqz_b_P0S_P1, { 0x1f001f0 }
   6003   },
   6004 /* cpmulslua1.h $crqp,$crpp */
   6005   {
   6006     { 0, 0, 0, 0 },
   6007     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6008     & ifmt_cpcmpeqz_b_P0S_P1, { 0x2f000a0 }
   6009   },
   6010 /* cpmulslla1.h $crqp,$crpp */
   6011   {
   6012     { 0, 0, 0, 0 },
   6013     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6014     & ifmt_cpcmpeqz_b_P0S_P1, { 0x2f000b0 }
   6015   },
   6016 /* cpmulslua1.w $crqp,$crpp */
   6017   {
   6018     { 0, 0, 0, 0 },
   6019     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6020     & ifmt_cpcmpeqz_b_P0S_P1, { 0x2f000e0 }
   6021   },
   6022 /* cpmulslla1.w $crqp,$crpp */
   6023   {
   6024     { 0, 0, 0, 0 },
   6025     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6026     & ifmt_cpcmpeqz_b_P0S_P1, { 0x2f000f0 }
   6027   },
   6028 /* cpsmadslua1.h $crqp,$crpp */
   6029   {
   6030     { 0, 0, 0, 0 },
   6031     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6032     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f00120 }
   6033   },
   6034 /* cpsmadslla1.h $crqp,$crpp */
   6035   {
   6036     { 0, 0, 0, 0 },
   6037     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6038     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f00130 }
   6039   },
   6040 /* cpsmadslua1.w $crqp,$crpp */
   6041   {
   6042     { 0, 0, 0, 0 },
   6043     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6044     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f00160 }
   6045   },
   6046 /* cpsmadslla1.w $crqp,$crpp */
   6047   {
   6048     { 0, 0, 0, 0 },
   6049     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6050     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f00170 }
   6051   },
   6052 /* cpsmsbslua1.h $crqp,$crpp */
   6053   {
   6054     { 0, 0, 0, 0 },
   6055     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6056     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f001a0 }
   6057   },
   6058 /* cpsmsbslla1.h $crqp,$crpp */
   6059   {
   6060     { 0, 0, 0, 0 },
   6061     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6062     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f001b0 }
   6063   },
   6064 /* cpsmsbslua1.w $crqp,$crpp */
   6065   {
   6066     { 0, 0, 0, 0 },
   6067     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6068     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f001e0 }
   6069   },
   6070 /* cpsmsbslla1.w $crqp,$crpp */
   6071   {
   6072     { 0, 0, 0, 0 },
   6073     { { MNEM, ' ', OP (CRQP), ',', OP (CRPP), 0 } },
   6074     & ifmt_cpcmpeqz_b_P0S_P1, { 0x3f001f0 }
   6075   },
   6076 };
   6077 
   6078 #undef A
   6079 #undef OPERAND
   6080 #undef MNEM
   6081 #undef OP
   6082 
   6083 /* Formats for ALIAS macro-insns.  */
   6084 
   6085 #define F(f) & mep_cgen_ifld_table[MEP_##f]
   6086 static const CGEN_IFMT ifmt_nop ATTRIBUTE_UNUSED = {
   6087   16, 16, 0xffff, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6088 };
   6089 
   6090 static const CGEN_IFMT ifmt_sb16_0 ATTRIBUTE_UNUSED = {
   6091   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6092 };
   6093 
   6094 static const CGEN_IFMT ifmt_sh16_0 ATTRIBUTE_UNUSED = {
   6095   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6096 };
   6097 
   6098 static const CGEN_IFMT ifmt_sw16_0 ATTRIBUTE_UNUSED = {
   6099   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6100 };
   6101 
   6102 static const CGEN_IFMT ifmt_lb16_0 ATTRIBUTE_UNUSED = {
   6103   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6104 };
   6105 
   6106 static const CGEN_IFMT ifmt_lh16_0 ATTRIBUTE_UNUSED = {
   6107   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6108 };
   6109 
   6110 static const CGEN_IFMT ifmt_lw16_0 ATTRIBUTE_UNUSED = {
   6111   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6112 };
   6113 
   6114 static const CGEN_IFMT ifmt_lbu16_0 ATTRIBUTE_UNUSED = {
   6115   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6116 };
   6117 
   6118 static const CGEN_IFMT ifmt_lhu16_0 ATTRIBUTE_UNUSED = {
   6119   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_RN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6120 };
   6121 
   6122 static const CGEN_IFMT ifmt_swcp16_0 ATTRIBUTE_UNUSED = {
   6123   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6124 };
   6125 
   6126 static const CGEN_IFMT ifmt_lwcp16_0 ATTRIBUTE_UNUSED = {
   6127   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6128 };
   6129 
   6130 static const CGEN_IFMT ifmt_smcp16_0 ATTRIBUTE_UNUSED = {
   6131   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6132 };
   6133 
   6134 static const CGEN_IFMT ifmt_lmcp16_0 ATTRIBUTE_UNUSED = {
   6135   16, 16, 0xf00f, { { F (F_MAJOR) }, { F (F_CRN) }, { F (F_RM) }, { F (F_SUB4) }, { 0 } }
   6136 };
   6137 
   6138 #undef F
   6139 
   6140 /* Each non-simple macro entry points to an array of expansion possibilities.  */
   6141 
   6142 #define A(a) (1 << CGEN_INSN_##a)
   6143 #define OPERAND(op) MEP_OPERAND_##op
   6144 #define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
   6145 #define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
   6146 
   6147 /* The macro instruction table.  */
   6148 
   6149 static const CGEN_IBASE mep_cgen_macro_insn_table[] =
   6150 {
   6151 /* nop */
   6152   {
   6153     -1, "nop", "nop", 16,
   6154     { 0|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\x80" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6155   },
   6156 /* sb $rnc,$zero($rma) */
   6157   {
   6158     -1, "sb16-0", "sb", 16,
   6159     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6160   },
   6161 /* sh $rns,$zero($rma) */
   6162   {
   6163     -1, "sh16-0", "sh", 16,
   6164     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6165   },
   6166 /* sw $rnl,$zero($rma) */
   6167   {
   6168     -1, "sw16-0", "sw", 16,
   6169     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6170   },
   6171 /* lb $rnc,$zero($rma) */
   6172   {
   6173     -1, "lb16-0", "lb", 16,
   6174     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6175   },
   6176 /* lh $rns,$zero($rma) */
   6177   {
   6178     -1, "lh16-0", "lh", 16,
   6179     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6180   },
   6181 /* lw $rnl,$zero($rma) */
   6182   {
   6183     -1, "lw16-0", "lw", 16,
   6184     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6185   },
   6186 /* lbu $rnuc,$zero($rma) */
   6187   {
   6188     -1, "lbu16-0", "lbu", 16,
   6189     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6190   },
   6191 /* lhu $rnus,$zero($rma) */
   6192   {
   6193     -1, "lhu16-0", "lhu", 16,
   6194     { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6195   },
   6196 /* swcp $crn,$zero($rma) */
   6197   {
   6198     -1, "swcp16-0", "swcp", 16,
   6199     { 0|A(NO_DIS)|A(OPTIONAL_CP_INSN)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6200   },
   6201 /* lwcp $crn,$zero($rma) */
   6202   {
   6203     -1, "lwcp16-0", "lwcp", 16,
   6204     { 0|A(NO_DIS)|A(OPTIONAL_CP_INSN)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6205   },
   6206 /* smcp $crn64,$zero($rma) */
   6207   {
   6208     -1, "smcp16-0", "smcp", 16,
   6209     { 0|A(NO_DIS)|A(OPTIONAL_CP64_INSN)|A(OPTIONAL_CP_INSN)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6210   },
   6211 /* lmcp $crn64,$zero($rma) */
   6212   {
   6213     -1, "lmcp16-0", "lmcp", 16,
   6214     { 0|A(NO_DIS)|A(OPTIONAL_CP64_INSN)|A(OPTIONAL_CP_INSN)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { 1, "\xc0" } }, { { CPTYPE_CP_DATA_BUS_INT, 0 } }, { { CRET_VOID, 0 } }, { { 0, 0 } }, { { CONFIG_NONE, 0 } }, { { (1<<SLOTS_CORE), 0 } } } }
   6215   },
   6216 };
   6217 
   6218 /* The macro instruction opcode table.  */
   6219 
   6220 static const CGEN_OPCODE mep_cgen_macro_insn_opcode_table[] =
   6221 {
   6222 /* nop */
   6223   {
   6224     { 0, 0, 0, 0 },
   6225     { { MNEM, 0 } },
   6226     & ifmt_nop, { 0x0 }
   6227   },
   6228 /* sb $rnc,$zero($rma) */
   6229   {
   6230     { 0, 0, 0, 0 },
   6231     { { MNEM, ' ', OP (RNC), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6232     & ifmt_sb16_0, { 0x8 }
   6233   },
   6234 /* sh $rns,$zero($rma) */
   6235   {
   6236     { 0, 0, 0, 0 },
   6237     { { MNEM, ' ', OP (RNS), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6238     & ifmt_sh16_0, { 0x9 }
   6239   },
   6240 /* sw $rnl,$zero($rma) */
   6241   {
   6242     { 0, 0, 0, 0 },
   6243     { { MNEM, ' ', OP (RNL), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6244     & ifmt_sw16_0, { 0xa }
   6245   },
   6246 /* lb $rnc,$zero($rma) */
   6247   {
   6248     { 0, 0, 0, 0 },
   6249     { { MNEM, ' ', OP (RNC), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6250     & ifmt_lb16_0, { 0xc }
   6251   },
   6252 /* lh $rns,$zero($rma) */
   6253   {
   6254     { 0, 0, 0, 0 },
   6255     { { MNEM, ' ', OP (RNS), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6256     & ifmt_lh16_0, { 0xd }
   6257   },
   6258 /* lw $rnl,$zero($rma) */
   6259   {
   6260     { 0, 0, 0, 0 },
   6261     { { MNEM, ' ', OP (RNL), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6262     & ifmt_lw16_0, { 0xe }
   6263   },
   6264 /* lbu $rnuc,$zero($rma) */
   6265   {
   6266     { 0, 0, 0, 0 },
   6267     { { MNEM, ' ', OP (RNUC), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6268     & ifmt_lbu16_0, { 0xb }
   6269   },
   6270 /* lhu $rnus,$zero($rma) */
   6271   {
   6272     { 0, 0, 0, 0 },
   6273     { { MNEM, ' ', OP (RNUS), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6274     & ifmt_lhu16_0, { 0xf }
   6275   },
   6276 /* swcp $crn,$zero($rma) */
   6277   {
   6278     { 0, 0, 0, 0 },
   6279     { { MNEM, ' ', OP (CRN), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6280     & ifmt_swcp16_0, { 0x3008 }
   6281   },
   6282 /* lwcp $crn,$zero($rma) */
   6283   {
   6284     { 0, 0, 0, 0 },
   6285     { { MNEM, ' ', OP (CRN), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6286     & ifmt_lwcp16_0, { 0x3009 }
   6287   },
   6288 /* smcp $crn64,$zero($rma) */
   6289   {
   6290     { 0, 0, 0, 0 },
   6291     { { MNEM, ' ', OP (CRN64), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6292     & ifmt_smcp16_0, { 0x300a }
   6293   },
   6294 /* lmcp $crn64,$zero($rma) */
   6295   {
   6296     { 0, 0, 0, 0 },
   6297     { { MNEM, ' ', OP (CRN64), ',', OP (ZERO), '(', OP (RMA), ')', 0 } },
   6298     & ifmt_lmcp16_0, { 0x300b }
   6299   },
   6300 };
   6301 
   6302 #undef A
   6303 #undef OPERAND
   6304 #undef MNEM
   6305 #undef OP
   6306 
   6307 #ifndef CGEN_ASM_HASH_P
   6308 #define CGEN_ASM_HASH_P(insn) 1
   6309 #endif
   6310 
   6311 #ifndef CGEN_DIS_HASH_P
   6312 #define CGEN_DIS_HASH_P(insn) 1
   6313 #endif
   6314 
   6315 /* Return non-zero if INSN is to be added to the hash table.
   6316    Targets are free to override CGEN_{ASM,DIS}_HASH_P in the .opc file.  */
   6317 
   6318 static int
   6319 asm_hash_insn_p (const CGEN_INSN *insn ATTRIBUTE_UNUSED)
   6320 {
   6321   return CGEN_ASM_HASH_P (insn);
   6322 }
   6323 
   6324 static int
   6325 dis_hash_insn_p (const CGEN_INSN *insn)
   6326 {
   6327   /* If building the hash table and the NO-DIS attribute is present,
   6328      ignore.  */
   6329   if (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_NO_DIS))
   6330     return 0;
   6331   return CGEN_DIS_HASH_P (insn);
   6332 }
   6333 
   6334 #ifndef CGEN_ASM_HASH
   6335 #define CGEN_ASM_HASH_SIZE 127
   6336 #ifdef CGEN_MNEMONIC_OPERANDS
   6337 #define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE)
   6338 #else
   6339 #define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE) /*FIXME*/
   6340 #endif
   6341 #endif
   6342 
   6343 /* It doesn't make much sense to provide a default here,
   6344    but while this is under development we do.
   6345    BUFFER is a pointer to the bytes of the insn, target order.
   6346    VALUE is the first base_insn_bitsize bits as an int in host order.  */
   6347 
   6348 #ifndef CGEN_DIS_HASH
   6349 #define CGEN_DIS_HASH_SIZE 256
   6350 #define CGEN_DIS_HASH(buf, value) (*(unsigned char *) (buf))
   6351 #endif
   6352 
   6353 /* The result is the hash value of the insn.
   6354    Targets are free to override CGEN_{ASM,DIS}_HASH in the .opc file.  */
   6355 
   6356 static unsigned int
   6357 asm_hash_insn (const char *mnem)
   6358 {
   6359   return CGEN_ASM_HASH (mnem);
   6360 }
   6361 
   6362 /* BUF is a pointer to the bytes of the insn, target order.
   6363    VALUE is the first base_insn_bitsize bits as an int in host order.  */
   6364 
   6365 static unsigned int
   6366 dis_hash_insn (const char *buf ATTRIBUTE_UNUSED,
   6367 		     CGEN_INSN_INT value ATTRIBUTE_UNUSED)
   6368 {
   6369   return CGEN_DIS_HASH (buf, value);
   6370 }
   6371 
   6372 /* Set the recorded length of the insn in the CGEN_FIELDS struct.  */
   6373 
   6374 static void
   6375 set_fields_bitsize (CGEN_FIELDS *fields, int size)
   6376 {
   6377   CGEN_FIELDS_BITSIZE (fields) = size;
   6378 }
   6379 
   6380 /* Function to call before using the operand instance table.
   6381    This plugs the opcode entries and macro instructions into the cpu table.  */
   6382 
   6383 void
   6384 mep_cgen_init_opcode_table (CGEN_CPU_DESC cd)
   6385 {
   6386   int i;
   6387   int num_macros = (sizeof (mep_cgen_macro_insn_table) /
   6388 		    sizeof (mep_cgen_macro_insn_table[0]));
   6389   const CGEN_IBASE *ib = & mep_cgen_macro_insn_table[0];
   6390   const CGEN_OPCODE *oc = & mep_cgen_macro_insn_opcode_table[0];
   6391   CGEN_INSN *insns = xmalloc (num_macros * sizeof (CGEN_INSN));
   6392 
   6393   /* This test has been added to avoid a warning generated
   6394      if memset is called with a third argument of value zero.  */
   6395   if (num_macros >= 1)
   6396     memset (insns, 0, num_macros * sizeof (CGEN_INSN));
   6397   for (i = 0; i < num_macros; ++i)
   6398     {
   6399       insns[i].base = &ib[i];
   6400       insns[i].opcode = &oc[i];
   6401       mep_cgen_build_insn_regex (& insns[i]);
   6402     }
   6403   cd->macro_insn_table.init_entries = insns;
   6404   cd->macro_insn_table.entry_size = sizeof (CGEN_IBASE);
   6405   cd->macro_insn_table.num_init_entries = num_macros;
   6406 
   6407   oc = & mep_cgen_insn_opcode_table[0];
   6408   insns = (CGEN_INSN *) cd->insn_table.init_entries;
   6409   for (i = 0; i < MAX_INSNS; ++i)
   6410     {
   6411       insns[i].opcode = &oc[i];
   6412       mep_cgen_build_insn_regex (& insns[i]);
   6413     }
   6414 
   6415   cd->sizeof_fields = sizeof (CGEN_FIELDS);
   6416   cd->set_fields_bitsize = set_fields_bitsize;
   6417 
   6418   cd->asm_hash_p = asm_hash_insn_p;
   6419   cd->asm_hash = asm_hash_insn;
   6420   cd->asm_hash_size = CGEN_ASM_HASH_SIZE;
   6421 
   6422   cd->dis_hash_p = dis_hash_insn_p;
   6423   cd->dis_hash = dis_hash_insn;
   6424   cd->dis_hash_size = CGEN_DIS_HASH_SIZE;
   6425 }
   6426