/* CPU data for frv.

THIS FILE IS MACHINE GENERATED WITH CGEN.

Copyright 1996-2010 Free Software Foundation, Inc.

This file is part of the GNU Binutils and/or GDB, the GNU debugger.

   This file is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3, or (at your option)
   any later version.

   It is distributed in the hope that it will be useful, but WITHOUT
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
   License for more details.

   You should have received a copy of the GNU General Public License along
   with this program; if not, write to the Free Software Foundation, Inc.,
   51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.

*/

#include "sysdep.h"
#include <stdio.h>
#include <stdarg.h>
#include "ansidecl.h"
#include "bfd.h"
#include "symcat.h"
#include "frv-desc.h"
#include "frv-opc.h"
#include "opintl.h"
#include "libiberty.h"
#include "xregex.h"

/* Attributes.  */

static const CGEN_ATTR_ENTRY bool_attr[] =
{
  { "#f", 0 },
  { "#t", 1 },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY MACH_attr[] ATTRIBUTE_UNUSED =
{
  { "base", MACH_BASE },
  { "frv", MACH_FRV },
  { "fr550", MACH_FR550 },
  { "fr500", MACH_FR500 },
  { "fr450", MACH_FR450 },
  { "fr400", MACH_FR400 },
  { "tomcat", MACH_TOMCAT },
  { "simple", MACH_SIMPLE },
  { "max", MACH_MAX },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY ISA_attr[] ATTRIBUTE_UNUSED =
{
  { "frv", ISA_FRV },
  { "max", ISA_MAX },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY UNIT_attr[] ATTRIBUTE_UNUSED =
{
  { "NIL", UNIT_NIL },
  { "I0", UNIT_I0 },
  { "I1", UNIT_I1 },
  { "I01", UNIT_I01 },
  { "I2", UNIT_I2 },
  { "I3", UNIT_I3 },
  { "IALL", UNIT_IALL },
  { "FM0", UNIT_FM0 },
  { "FM1", UNIT_FM1 },
  { "FM01", UNIT_FM01 },
  { "FM2", UNIT_FM2 },
  { "FM3", UNIT_FM3 },
  { "FMALL", UNIT_FMALL },
  { "FMLOW", UNIT_FMLOW },
  { "B0", UNIT_B0 },
  { "B1", UNIT_B1 },
  { "B01", UNIT_B01 },
  { "C", UNIT_C },
  { "MULT_DIV", UNIT_MULT_DIV },
  { "IACC", UNIT_IACC },
  { "LOAD", UNIT_LOAD },
  { "STORE", UNIT_STORE },
  { "SCAN", UNIT_SCAN },
  { "DCPL", UNIT_DCPL },
  { "MDUALACC", UNIT_MDUALACC },
  { "MDCUTSSI", UNIT_MDCUTSSI },
  { "MCLRACC_1", UNIT_MCLRACC_1 },
  { "NUM_UNITS", UNIT_NUM_UNITS },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY FR400_MAJOR_attr[] ATTRIBUTE_UNUSED =
{
  { "NONE", FR400_MAJOR_NONE },
  { "I_1", FR400_MAJOR_I_1 },
  { "I_2", FR400_MAJOR_I_2 },
  { "I_3", FR400_MAJOR_I_3 },
  { "I_4", FR400_MAJOR_I_4 },
  { "I_5", FR400_MAJOR_I_5 },
  { "B_1", FR400_MAJOR_B_1 },
  { "B_2", FR400_MAJOR_B_2 },
  { "B_3", FR400_MAJOR_B_3 },
  { "B_4", FR400_MAJOR_B_4 },
  { "B_5", FR400_MAJOR_B_5 },
  { "B_6", FR400_MAJOR_B_6 },
  { "C_1", FR400_MAJOR_C_1 },
  { "C_2", FR400_MAJOR_C_2 },
  { "M_1", FR400_MAJOR_M_1 },
  { "M_2", FR400_MAJOR_M_2 },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY FR450_MAJOR_attr[] ATTRIBUTE_UNUSED =
{
  { "NONE", FR450_MAJOR_NONE },
  { "I_1", FR450_MAJOR_I_1 },
  { "I_2", FR450_MAJOR_I_2 },
  { "I_3", FR450_MAJOR_I_3 },
  { "I_4", FR450_MAJOR_I_4 },
  { "I_5", FR450_MAJOR_I_5 },
  { "B_1", FR450_MAJOR_B_1 },
  { "B_2", FR450_MAJOR_B_2 },
  { "B_3", FR450_MAJOR_B_3 },
  { "B_4", FR450_MAJOR_B_4 },
  { "B_5", FR450_MAJOR_B_5 },
  { "B_6", FR450_MAJOR_B_6 },
  { "C_1", FR450_MAJOR_C_1 },
  { "C_2", FR450_MAJOR_C_2 },
  { "M_1", FR450_MAJOR_M_1 },
  { "M_2", FR450_MAJOR_M_2 },
  { "M_3", FR450_MAJOR_M_3 },
  { "M_4", FR450_MAJOR_M_4 },
  { "M_5", FR450_MAJOR_M_5 },
  { "M_6", FR450_MAJOR_M_6 },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY FR500_MAJOR_attr[] ATTRIBUTE_UNUSED =
{
  { "NONE", FR500_MAJOR_NONE },
  { "I_1", FR500_MAJOR_I_1 },
  { "I_2", FR500_MAJOR_I_2 },
  { "I_3", FR500_MAJOR_I_3 },
  { "I_4", FR500_MAJOR_I_4 },
  { "I_5", FR500_MAJOR_I_5 },
  { "I_6", FR500_MAJOR_I_6 },
  { "B_1", FR500_MAJOR_B_1 },
  { "B_2", FR500_MAJOR_B_2 },
  { "B_3", FR500_MAJOR_B_3 },
  { "B_4", FR500_MAJOR_B_4 },
  { "B_5", FR500_MAJOR_B_5 },
  { "B_6", FR500_MAJOR_B_6 },
  { "C_1", FR500_MAJOR_C_1 },
  { "C_2", FR500_MAJOR_C_2 },
  { "F_1", FR500_MAJOR_F_1 },
  { "F_2", FR500_MAJOR_F_2 },
  { "F_3", FR500_MAJOR_F_3 },
  { "F_4", FR500_MAJOR_F_4 },
  { "F_5", FR500_MAJOR_F_5 },
  { "F_6", FR500_MAJOR_F_6 },
  { "F_7", FR500_MAJOR_F_7 },
  { "F_8", FR500_MAJOR_F_8 },
  { "M_1", FR500_MAJOR_M_1 },
  { "M_2", FR500_MAJOR_M_2 },
  { "M_3", FR500_MAJOR_M_3 },
  { "M_4", FR500_MAJOR_M_4 },
  { "M_5", FR500_MAJOR_M_5 },
  { "M_6", FR500_MAJOR_M_6 },
  { "M_7", FR500_MAJOR_M_7 },
  { "M_8", FR500_MAJOR_M_8 },
  { 0, 0 }
};

static const CGEN_ATTR_ENTRY FR550_MAJOR_attr[] ATTRIBUTE_UNUSED =
{
  { "NONE", FR550_MAJOR_NONE },
  { "I_1", FR550_MAJOR_I_1 },
  { "I_2", FR550_MAJOR_I_2 },
  { "I_3", FR550_MAJOR_I_3 },
  { "I_4", FR550_MAJOR_I_4 },
  { "I_5", FR550_MAJOR_I_5 },
  { "I_6", FR550_MAJOR_I_6 },
  { "I_7", FR550_MAJOR_I_7 },
  { "I_8", FR550_MAJOR_I_8 },
  { "B_1", FR550_MAJOR_B_1 },
  { "B_2", FR550_MAJOR_B_2 },
  { "B_3", FR550_MAJOR_B_3 },
  { "B_4", FR550_MAJOR_B_4 },
  { "B_5", FR550_MAJOR_B_5 },
  { "B_6", FR550_MAJOR_B_6 },
  { "C_1", FR550_MAJOR_C_1 },
  { "C_2", FR550_MAJOR_C_2 },
  { "F_1", FR550_MAJOR_F_1 },
  { "F_2", FR550_MAJOR_F_2 },
  { "F_3", FR550_MAJOR_F_3 },
  { "F_4", FR550_MAJOR_F_4 },
  { "M_1", FR550_MAJOR_M_1 },
  { "M_2", FR550_MAJOR_M_2 },
  { "M_3", FR550_MAJOR_M_3 },
  { "M_4", FR550_MAJOR_M_4 },
  { "M_5", FR550_MAJOR_M_5 },
  { 0, 0 }
};

const CGEN_ATTR_TABLE frv_cgen_ifield_attr_table[] =
{
  { "MACH", & MACH_attr[0], & MACH_attr[0] },
  { "VIRTUAL", &bool_attr[0], &bool_attr[0] },
  { "PCREL-ADDR", &bool_attr[0], &bool_attr[0] },
  { "ABS-ADDR", &bool_attr[0], &bool_attr[0] },
  { "RESERVED", &bool_attr[0], &bool_attr[0] },
  { "SIGN-OPT", &bool_attr[0], &bool_attr[0] },
  { "SIGNED", &bool_attr[0], &bool_attr[0] },
  { 0, 0, 0 }
};

const CGEN_ATTR_TABLE frv_cgen_hardware_attr_table[] =
{
  { "MACH", & MACH_attr[0], & MACH_attr[0] },
  { "VIRTUAL", &bool_attr[0], &bool_attr[0] },
  { "CACHE-ADDR", &bool_attr[0], &bool_attr[0] },
  { "PC", &bool_attr[0], &bool_attr[0] },
  { "PROFILE", &bool_attr[0], &bool_attr[0] },
  { 0, 0, 0 }
};

const CGEN_ATTR_TABLE frv_cgen_operand_attr_table[] =
{
  { "MACH", & MACH_attr[0], & MACH_attr[0] },
  { "VIRTUAL", &bool_attr[0], &bool_attr[0] },
  { "PCREL-ADDR", &bool_attr[0], &bool_attr[0] },
  { "ABS-ADDR", &bool_attr[0], &bool_attr[0] },
  { "SIGN-OPT", &bool_attr[0], &bool_attr[0] },
  { "SIGNED", &bool_attr[0], &bool_attr[0] },
  { "NEGATIVE", &bool_attr[0], &bool_attr[0] },
  { "RELAX", &bool_attr[0], &bool_attr[0] },
  { "SEM-ONLY", &bool_attr[0], &bool_attr[0] },
  { "HASH-PREFIX", &bool_attr[0], &bool_attr[0] },
  { 0, 0, 0 }
};

const CGEN_ATTR_TABLE frv_cgen_insn_attr_table[] =
{
  { "MACH", & MACH_attr[0], & MACH_attr[0] },
  { "UNIT", & UNIT_attr[0], & UNIT_attr[0] },
  { "FR400-MAJOR", & FR400_MAJOR_attr[0], & FR400_MAJOR_attr[0] },
  { "FR450-MAJOR", & FR450_MAJOR_attr[0], & FR450_MAJOR_attr[0] },
  { "FR500-MAJOR", & FR500_MAJOR_attr[0], & FR500_MAJOR_attr[0] },
  { "FR550-MAJOR", & FR550_MAJOR_attr[0], & FR550_MAJOR_attr[0] },
  { "ALIAS", &bool_attr[0], &bool_attr[0] },
  { "VIRTUAL", &bool_attr[0], &bool_attr[0] },
  { "UNCOND-CTI", &bool_attr[0], &bool_attr[0] },
  { "COND-CTI", &bool_attr[0], &bool_attr[0] },
  { "SKIP-CTI", &bool_attr[0], &bool_attr[0] },
  { "DELAY-SLOT", &bool_attr[0], &bool_attr[0] },
  { "RELAXABLE", &bool_attr[0], &bool_attr[0] },
  { "RELAXED", &bool_attr[0], &bool_attr[0] },
  { "NO-DIS", &bool_attr[0], &bool_attr[0] },
  { "PBB", &bool_attr[0], &bool_attr[0] },
  { "PRIVILEGED", &bool_attr[0], &bool_attr[0] },
  { "NON-EXCEPTING", &bool_attr[0], &bool_attr[0] },
  { "CONDITIONAL", &bool_attr[0], &bool_attr[0] },
  { "FR-ACCESS", &bool_attr[0], &bool_attr[0] },
  { "PRESERVE-OVF", &bool_attr[0], &bool_attr[0] },
  { "AUDIO", &bool_attr[0], &bool_attr[0] },
  { 0, 0, 0 }
};

/* Instruction set variants.  */

static const CGEN_ISA frv_cgen_isa_table[] = {
  { "frv", 32, 32, 32, 32 },
  { 0, 0, 0, 0, 0 }
};

/* Machine variants.  */

static const CGEN_MACH frv_cgen_mach_table[] = {
  { "frv", "frv", MACH_FRV, 0 },
  { "fr550", "fr550", MACH_FR550, 0 },
  { "fr500", "fr500", MACH_FR500, 0 },
  { "tomcat", "tomcat", MACH_TOMCAT, 0 },
  { "fr400", "fr400", MACH_FR400, 0 },
  { "fr450", "fr450", MACH_FR450, 0 },
  { "simple", "simple", MACH_SIMPLE, 0 },
  { 0, 0, 0, 0 }
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_gr_names_entries[] =
{
  { "sp", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "fp", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "gr0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "gr1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "gr2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "gr3", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "gr4", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "gr5", 5, {0, {{{0, 0}}}}, 0, 0 },
  { "gr6", 6, {0, {{{0, 0}}}}, 0, 0 },
  { "gr7", 7, {0, {{{0, 0}}}}, 0, 0 },
  { "gr8", 8, {0, {{{0, 0}}}}, 0, 0 },
  { "gr9", 9, {0, {{{0, 0}}}}, 0, 0 },
  { "gr10", 10, {0, {{{0, 0}}}}, 0, 0 },
  { "gr11", 11, {0, {{{0, 0}}}}, 0, 0 },
  { "gr12", 12, {0, {{{0, 0}}}}, 0, 0 },
  { "gr13", 13, {0, {{{0, 0}}}}, 0, 0 },
  { "gr14", 14, {0, {{{0, 0}}}}, 0, 0 },
  { "gr15", 15, {0, {{{0, 0}}}}, 0, 0 },
  { "gr16", 16, {0, {{{0, 0}}}}, 0, 0 },
  { "gr17", 17, {0, {{{0, 0}}}}, 0, 0 },
  { "gr18", 18, {0, {{{0, 0}}}}, 0, 0 },
  { "gr19", 19, {0, {{{0, 0}}}}, 0, 0 },
  { "gr20", 20, {0, {{{0, 0}}}}, 0, 0 },
  { "gr21", 21, {0, {{{0, 0}}}}, 0, 0 },
  { "gr22", 22, {0, {{{0, 0}}}}, 0, 0 },
  { "gr23", 23, {0, {{{0, 0}}}}, 0, 0 },
  { "gr24", 24, {0, {{{0, 0}}}}, 0, 0 },
  { "gr25", 25, {0, {{{0, 0}}}}, 0, 0 },
  { "gr26", 26, {0, {{{0, 0}}}}, 0, 0 },
  { "gr27", 27, {0, {{{0, 0}}}}, 0, 0 },
  { "gr28", 28, {0, {{{0, 0}}}}, 0, 0 },
  { "gr29", 29, {0, {{{0, 0}}}}, 0, 0 },
  { "gr30", 30, {0, {{{0, 0}}}}, 0, 0 },
  { "gr31", 31, {0, {{{0, 0}}}}, 0, 0 },
  { "gr32", 32, {0, {{{0, 0}}}}, 0, 0 },
  { "gr33", 33, {0, {{{0, 0}}}}, 0, 0 },
  { "gr34", 34, {0, {{{0, 0}}}}, 0, 0 },
  { "gr35", 35, {0, {{{0, 0}}}}, 0, 0 },
  { "gr36", 36, {0, {{{0, 0}}}}, 0, 0 },
  { "gr37", 37, {0, {{{0, 0}}}}, 0, 0 },
  { "gr38", 38, {0, {{{0, 0}}}}, 0, 0 },
  { "gr39", 39, {0, {{{0, 0}}}}, 0, 0 },
  { "gr40", 40, {0, {{{0, 0}}}}, 0, 0 },
  { "gr41", 41, {0, {{{0, 0}}}}, 0, 0 },
  { "gr42", 42, {0, {{{0, 0}}}}, 0, 0 },
  { "gr43", 43, {0, {{{0, 0}}}}, 0, 0 },
  { "gr44", 44, {0, {{{0, 0}}}}, 0, 0 },
  { "gr45", 45, {0, {{{0, 0}}}}, 0, 0 },
  { "gr46", 46, {0, {{{0, 0}}}}, 0, 0 },
  { "gr47", 47, {0, {{{0, 0}}}}, 0, 0 },
  { "gr48", 48, {0, {{{0, 0}}}}, 0, 0 },
  { "gr49", 49, {0, {{{0, 0}}}}, 0, 0 },
  { "gr50", 50, {0, {{{0, 0}}}}, 0, 0 },
  { "gr51", 51, {0, {{{0, 0}}}}, 0, 0 },
  { "gr52", 52, {0, {{{0, 0}}}}, 0, 0 },
  { "gr53", 53, {0, {{{0, 0}}}}, 0, 0 },
  { "gr54", 54, {0, {{{0, 0}}}}, 0, 0 },
  { "gr55", 55, {0, {{{0, 0}}}}, 0, 0 },
  { "gr56", 56, {0, {{{0, 0}}}}, 0, 0 },
  { "gr57", 57, {0, {{{0, 0}}}}, 0, 0 },
  { "gr58", 58, {0, {{{0, 0}}}}, 0, 0 },
  { "gr59", 59, {0, {{{0, 0}}}}, 0, 0 },
  { "gr60", 60, {0, {{{0, 0}}}}, 0, 0 },
  { "gr61", 61, {0, {{{0, 0}}}}, 0, 0 },
  { "gr62", 62, {0, {{{0, 0}}}}, 0, 0 },
  { "gr63", 63, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_gr_names =
{
  & frv_cgen_opval_gr_names_entries[0],
  66,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_fr_names_entries[] =
{
  { "fr0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "fr1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "fr2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "fr3", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "fr4", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "fr5", 5, {0, {{{0, 0}}}}, 0, 0 },
  { "fr6", 6, {0, {{{0, 0}}}}, 0, 0 },
  { "fr7", 7, {0, {{{0, 0}}}}, 0, 0 },
  { "fr8", 8, {0, {{{0, 0}}}}, 0, 0 },
  { "fr9", 9, {0, {{{0, 0}}}}, 0, 0 },
  { "fr10", 10, {0, {{{0, 0}}}}, 0, 0 },
  { "fr11", 11, {0, {{{0, 0}}}}, 0, 0 },
  { "fr12", 12, {0, {{{0, 0}}}}, 0, 0 },
  { "fr13", 13, {0, {{{0, 0}}}}, 0, 0 },
  { "fr14", 14, {0, {{{0, 0}}}}, 0, 0 },
  { "fr15", 15, {0, {{{0, 0}}}}, 0, 0 },
  { "fr16", 16, {0, {{{0, 0}}}}, 0, 0 },
  { "fr17", 17, {0, {{{0, 0}}}}, 0, 0 },
  { "fr18", 18, {0, {{{0, 0}}}}, 0, 0 },
  { "fr19", 19, {0, {{{0, 0}}}}, 0, 0 },
  { "fr20", 20, {0, {{{0, 0}}}}, 0, 0 },
  { "fr21", 21, {0, {{{0, 0}}}}, 0, 0 },
  { "fr22", 22, {0, {{{0, 0}}}}, 0, 0 },
  { "fr23", 23, {0, {{{0, 0}}}}, 0, 0 },
  { "fr24", 24, {0, {{{0, 0}}}}, 0, 0 },
  { "fr25", 25, {0, {{{0, 0}}}}, 0, 0 },
  { "fr26", 26, {0, {{{0, 0}}}}, 0, 0 },
  { "fr27", 27, {0, {{{0, 0}}}}, 0, 0 },
  { "fr28", 28, {0, {{{0, 0}}}}, 0, 0 },
  { "fr29", 29, {0, {{{0, 0}}}}, 0, 0 },
  { "fr30", 30, {0, {{{0, 0}}}}, 0, 0 },
  { "fr31", 31, {0, {{{0, 0}}}}, 0, 0 },
  { "fr32", 32, {0, {{{0, 0}}}}, 0, 0 },
  { "fr33", 33, {0, {{{0, 0}}}}, 0, 0 },
  { "fr34", 34, {0, {{{0, 0}}}}, 0, 0 },
  { "fr35", 35, {0, {{{0, 0}}}}, 0, 0 },
  { "fr36", 36, {0, {{{0, 0}}}}, 0, 0 },
  { "fr37", 37, {0, {{{0, 0}}}}, 0, 0 },
  { "fr38", 38, {0, {{{0, 0}}}}, 0, 0 },
  { "fr39", 39, {0, {{{0, 0}}}}, 0, 0 },
  { "fr40", 40, {0, {{{0, 0}}}}, 0, 0 },
  { "fr41", 41, {0, {{{0, 0}}}}, 0, 0 },
  { "fr42", 42, {0, {{{0, 0}}}}, 0, 0 },
  { "fr43", 43, {0, {{{0, 0}}}}, 0, 0 },
  { "fr44", 44, {0, {{{0, 0}}}}, 0, 0 },
  { "fr45", 45, {0, {{{0, 0}}}}, 0, 0 },
  { "fr46", 46, {0, {{{0, 0}}}}, 0, 0 },
  { "fr47", 47, {0, {{{0, 0}}}}, 0, 0 },
  { "fr48", 48, {0, {{{0, 0}}}}, 0, 0 },
  { "fr49", 49, {0, {{{0, 0}}}}, 0, 0 },
  { "fr50", 50, {0, {{{0, 0}}}}, 0, 0 },
  { "fr51", 51, {0, {{{0, 0}}}}, 0, 0 },
  { "fr52", 52, {0, {{{0, 0}}}}, 0, 0 },
  { "fr53", 53, {0, {{{0, 0}}}}, 0, 0 },
  { "fr54", 54, {0, {{{0, 0}}}}, 0, 0 },
  { "fr55", 55, {0, {{{0, 0}}}}, 0, 0 },
  { "fr56", 56, {0, {{{0, 0}}}}, 0, 0 },
  { "fr57", 57, {0, {{{0, 0}}}}, 0, 0 },
  { "fr58", 58, {0, {{{0, 0}}}}, 0, 0 },
  { "fr59", 59, {0, {{{0, 0}}}}, 0, 0 },
  { "fr60", 60, {0, {{{0, 0}}}}, 0, 0 },
  { "fr61", 61, {0, {{{0, 0}}}}, 0, 0 },
  { "fr62", 62, {0, {{{0, 0}}}}, 0, 0 },
  { "fr63", 63, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_fr_names =
{
  & frv_cgen_opval_fr_names_entries[0],
  64,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_cpr_names_entries[] =
{
  { "cpr0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr3", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr4", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr5", 5, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr6", 6, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr7", 7, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr8", 8, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr9", 9, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr10", 10, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr11", 11, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr12", 12, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr13", 13, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr14", 14, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr15", 15, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr16", 16, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr17", 17, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr18", 18, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr19", 19, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr20", 20, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr21", 21, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr22", 22, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr23", 23, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr24", 24, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr25", 25, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr26", 26, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr27", 27, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr28", 28, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr29", 29, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr30", 30, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr31", 31, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr32", 32, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr33", 33, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr34", 34, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr35", 35, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr36", 36, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr37", 37, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr38", 38, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr39", 39, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr40", 40, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr41", 41, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr42", 42, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr43", 43, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr44", 44, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr45", 45, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr46", 46, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr47", 47, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr48", 48, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr49", 49, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr50", 50, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr51", 51, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr52", 52, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr53", 53, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr54", 54, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr55", 55, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr56", 56, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr57", 57, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr58", 58, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr59", 59, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr60", 60, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr61", 61, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr62", 62, {0, {{{0, 0}}}}, 0, 0 },
  { "cpr63", 63, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_cpr_names =
{
  & frv_cgen_opval_cpr_names_entries[0],
  64,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_spr_names_entries[] =
{
  { "psr", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "pcsr", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "bpcsr", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "tbr", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "bpsr", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr0", 16, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr1", 17, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr2", 18, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr3", 19, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr4", 20, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr5", 21, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr6", 22, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr7", 23, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr8", 24, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr9", 25, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr10", 26, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr11", 27, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr12", 28, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr13", 29, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr14", 30, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr15", 31, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr16", 32, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr17", 33, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr18", 34, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr19", 35, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr20", 36, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr21", 37, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr22", 38, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr23", 39, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr24", 40, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr25", 41, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr26", 42, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr27", 43, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr28", 44, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr29", 45, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr30", 46, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr31", 47, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr32", 48, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr33", 49, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr34", 50, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr35", 51, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr36", 52, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr37", 53, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr38", 54, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr39", 55, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr40", 56, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr41", 57, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr42", 58, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr43", 59, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr44", 60, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr45", 61, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr46", 62, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr47", 63, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr48", 64, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr49", 65, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr50", 66, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr51", 67, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr52", 68, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr53", 69, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr54", 70, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr55", 71, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr56", 72, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr57", 73, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr58", 74, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr59", 75, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr60", 76, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr61", 77, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr62", 78, {0, {{{0, 0}}}}, 0, 0 },
  { "hsr63", 79, {0, {{{0, 0}}}}, 0, 0 },
  { "ccr", 256, {0, {{{0, 0}}}}, 0, 0 },
  { "cccr", 263, {0, {{{0, 0}}}}, 0, 0 },
  { "lr", 272, {0, {{{0, 0}}}}, 0, 0 },
  { "lcr", 273, {0, {{{0, 0}}}}, 0, 0 },
  { "iacc0h", 280, {0, {{{0, 0}}}}, 0, 0 },
  { "iacc0l", 281, {0, {{{0, 0}}}}, 0, 0 },
  { "isr", 288, {0, {{{0, 0}}}}, 0, 0 },
  { "neear0", 352, {0, {{{0, 0}}}}, 0, 0 },
  { "neear1", 353, {0, {{{0, 0}}}}, 0, 0 },
  { "neear2", 354, {0, {{{0, 0}}}}, 0, 0 },
  { "neear3", 355, {0, {{{0, 0}}}}, 0, 0 },
  { "neear4", 356, {0, {{{0, 0}}}}, 0, 0 },
  { "neear5", 357, {0, {{{0, 0}}}}, 0, 0 },
  { "neear6", 358, {0, {{{0, 0}}}}, 0, 0 },
  { "neear7", 359, {0, {{{0, 0}}}}, 0, 0 },
  { "neear8", 360, {0, {{{0, 0}}}}, 0, 0 },
  { "neear9", 361, {0, {{{0, 0}}}}, 0, 0 },
  { "neear10", 362, {0, {{{0, 0}}}}, 0, 0 },
  { "neear11", 363, {0, {{{0, 0}}}}, 0, 0 },
  { "neear12", 364, {0, {{{0, 0}}}}, 0, 0 },
  { "neear13", 365, {0, {{{0, 0}}}}, 0, 0 },
  { "neear14", 366, {0, {{{0, 0}}}}, 0, 0 },
  { "neear15", 367, {0, {{{0, 0}}}}, 0, 0 },
  { "neear16", 368, {0, {{{0, 0}}}}, 0, 0 },
  { "neear17", 369, {0, {{{0, 0}}}}, 0, 0 },
  { "neear18", 370, {0, {{{0, 0}}}}, 0, 0 },
  { "neear19", 371, {0, {{{0, 0}}}}, 0, 0 },
  { "neear20", 372, {0, {{{0, 0}}}}, 0, 0 },
  { "neear21", 373, {0, {{{0, 0}}}}, 0, 0 },
  { "neear22", 374, {0, {{{0, 0}}}}, 0, 0 },
  { "neear23", 375, {0, {{{0, 0}}}}, 0, 0 },
  { "neear24", 376, {0, {{{0, 0}}}}, 0, 0 },
  { "neear25", 377, {0, {{{0, 0}}}}, 0, 0 },
  { "neear26", 378, {0, {{{0, 0}}}}, 0, 0 },
  { "neear27", 379, {0, {{{0, 0}}}}, 0, 0 },
  { "neear28", 380, {0, {{{0, 0}}}}, 0, 0 },
  { "neear29", 381, {0, {{{0, 0}}}}, 0, 0 },
  { "neear30", 382, {0, {{{0, 0}}}}, 0, 0 },
  { "neear31", 383, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr0", 384, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr1", 385, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr2", 386, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr3", 387, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr4", 388, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr5", 389, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr6", 390, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr7", 391, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr8", 392, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr9", 393, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr10", 394, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr11", 395, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr12", 396, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr13", 397, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr14", 398, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr15", 399, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr16", 400, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr17", 401, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr18", 402, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr19", 403, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr20", 404, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr21", 405, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr22", 406, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr23", 407, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr24", 408, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr25", 409, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr26", 410, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr27", 411, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr28", 412, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr29", 413, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr30", 414, {0, {{{0, 0}}}}, 0, 0 },
  { "nesr31", 415, {0, {{{0, 0}}}}, 0, 0 },
  { "necr", 416, {0, {{{0, 0}}}}, 0, 0 },
  { "gner0", 432, {0, {{{0, 0}}}}, 0, 0 },
  { "gner1", 433, {0, {{{0, 0}}}}, 0, 0 },
  { "fner0", 434, {0, {{{0, 0}}}}, 0, 0 },
  { "fner1", 435, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr0", 512, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr1", 513, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr2", 514, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr3", 515, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr4", 516, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr5", 517, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr6", 518, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr7", 519, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr8", 520, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr9", 521, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr10", 522, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr11", 523, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr12", 524, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr13", 525, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr14", 526, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr15", 527, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr16", 528, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr17", 529, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr18", 530, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr19", 531, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr20", 532, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr21", 533, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr22", 534, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr23", 535, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr24", 536, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr25", 537, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr26", 538, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr27", 539, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr28", 540, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr29", 541, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr30", 542, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr31", 543, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr32", 544, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr33", 545, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr34", 546, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr35", 547, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr36", 548, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr37", 549, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr38", 550, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr39", 551, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr40", 552, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr41", 553, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr42", 554, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr43", 555, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr44", 556, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr45", 557, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr46", 558, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr47", 559, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr48", 560, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr49", 561, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr50", 562, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr51", 563, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr52", 564, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr53", 565, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr54", 566, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr55", 567, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr56", 568, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr57", 569, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr58", 570, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr59", 571, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr60", 572, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr61", 573, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr62", 574, {0, {{{0, 0}}}}, 0, 0 },
  { "epcr63", 575, {0, {{{0, 0}}}}, 0, 0 },
  { "esr0", 576, {0, {{{0, 0}}}}, 0, 0 },
  { "esr1", 577, {0, {{{0, 0}}}}, 0, 0 },
  { "esr2", 578, {0, {{{0, 0}}}}, 0, 0 },
  { "esr3", 579, {0, {{{0, 0}}}}, 0, 0 },
  { "esr4", 580, {0, {{{0, 0}}}}, 0, 0 },
  { "esr5", 581, {0, {{{0, 0}}}}, 0, 0 },
  { "esr6", 582, {0, {{{0, 0}}}}, 0, 0 },
  { "esr7", 583, {0, {{{0, 0}}}}, 0, 0 },
  { "esr8", 584, {0, {{{0, 0}}}}, 0, 0 },
  { "esr9", 585, {0, {{{0, 0}}}}, 0, 0 },
  { "esr10", 586, {0, {{{0, 0}}}}, 0, 0 },
  { "esr11", 587, {0, {{{0, 0}}}}, 0, 0 },
  { "esr12", 588, {0, {{{0, 0}}}}, 0, 0 },
  { "esr13", 589, {0, {{{0, 0}}}}, 0, 0 },
  { "esr14", 590, {0, {{{0, 0}}}}, 0, 0 },
  { "esr15", 591, {0, {{{0, 0}}}}, 0, 0 },
  { "esr16", 592, {0, {{{0, 0}}}}, 0, 0 },
  { "esr17", 593, {0, {{{0, 0}}}}, 0, 0 },
  { "esr18", 594, {0, {{{0, 0}}}}, 0, 0 },
  { "esr19", 595, {0, {{{0, 0}}}}, 0, 0 },
  { "esr20", 596, {0, {{{0, 0}}}}, 0, 0 },
  { "esr21", 597, {0, {{{0, 0}}}}, 0, 0 },
  { "esr22", 598, {0, {{{0, 0}}}}, 0, 0 },
  { "esr23", 599, {0, {{{0, 0}}}}, 0, 0 },
  { "esr24", 600, {0, {{{0, 0}}}}, 0, 0 },
  { "esr25", 601, {0, {{{0, 0}}}}, 0, 0 },
  { "esr26", 602, {0, {{{0, 0}}}}, 0, 0 },
  { "esr27", 603, {0, {{{0, 0}}}}, 0, 0 },
  { "esr28", 604, {0, {{{0, 0}}}}, 0, 0 },
  { "esr29", 605, {0, {{{0, 0}}}}, 0, 0 },
  { "esr30", 606, {0, {{{0, 0}}}}, 0, 0 },
  { "esr31", 607, {0, {{{0, 0}}}}, 0, 0 },
  { "esr32", 608, {0, {{{0, 0}}}}, 0, 0 },
  { "esr33", 609, {0, {{{0, 0}}}}, 0, 0 },
  { "esr34", 610, {0, {{{0, 0}}}}, 0, 0 },
  { "esr35", 611, {0, {{{0, 0}}}}, 0, 0 },
  { "esr36", 612, {0, {{{0, 0}}}}, 0, 0 },
  { "esr37", 613, {0, {{{0, 0}}}}, 0, 0 },
  { "esr38", 614, {0, {{{0, 0}}}}, 0, 0 },
  { "esr39", 615, {0, {{{0, 0}}}}, 0, 0 },
  { "esr40", 616, {0, {{{0, 0}}}}, 0, 0 },
  { "esr41", 617, {0, {{{0, 0}}}}, 0, 0 },
  { "esr42", 618, {0, {{{0, 0}}}}, 0, 0 },
  { "esr43", 619, {0, {{{0, 0}}}}, 0, 0 },
  { "esr44", 620, {0, {{{0, 0}}}}, 0, 0 },
  { "esr45", 621, {0, {{{0, 0}}}}, 0, 0 },
  { "esr46", 622, {0, {{{0, 0}}}}, 0, 0 },
  { "esr47", 623, {0, {{{0, 0}}}}, 0, 0 },
  { "esr48", 624, {0, {{{0, 0}}}}, 0, 0 },
  { "esr49", 625, {0, {{{0, 0}}}}, 0, 0 },
  { "esr50", 626, {0, {{{0, 0}}}}, 0, 0 },
  { "esr51", 627, {0, {{{0, 0}}}}, 0, 0 },
  { "esr52", 628, {0, {{{0, 0}}}}, 0, 0 },
  { "esr53", 629, {0, {{{0, 0}}}}, 0, 0 },
  { "esr54", 630, {0, {{{0, 0}}}}, 0, 0 },
  { "esr55", 631, {0, {{{0, 0}}}}, 0, 0 },
  { "esr56", 632, {0, {{{0, 0}}}}, 0, 0 },
  { "esr57", 633, {0, {{{0, 0}}}}, 0, 0 },
  { "esr58", 634, {0, {{{0, 0}}}}, 0, 0 },
  { "esr59", 635, {0, {{{0, 0}}}}, 0, 0 },
  { "esr60", 636, {0, {{{0, 0}}}}, 0, 0 },
  { "esr61", 637, {0, {{{0, 0}}}}, 0, 0 },
  { "esr62", 638, {0, {{{0, 0}}}}, 0, 0 },
  { "esr63", 639, {0, {{{0, 0}}}}, 0, 0 },
  { "eir0", 640, {0, {{{0, 0}}}}, 0, 0 },
  { "eir1", 641, {0, {{{0, 0}}}}, 0, 0 },
  { "eir2", 642, {0, {{{0, 0}}}}, 0, 0 },
  { "eir3", 643, {0, {{{0, 0}}}}, 0, 0 },
  { "eir4", 644, {0, {{{0, 0}}}}, 0, 0 },
  { "eir5", 645, {0, {{{0, 0}}}}, 0, 0 },
  { "eir6", 646, {0, {{{0, 0}}}}, 0, 0 },
  { "eir7", 647, {0, {{{0, 0}}}}, 0, 0 },
  { "eir8", 648, {0, {{{0, 0}}}}, 0, 0 },
  { "eir9", 649, {0, {{{0, 0}}}}, 0, 0 },
  { "eir10", 650, {0, {{{0, 0}}}}, 0, 0 },
  { "eir11", 651, {0, {{{0, 0}}}}, 0, 0 },
  { "eir12", 652, {0, {{{0, 0}}}}, 0, 0 },
  { "eir13", 653, {0, {{{0, 0}}}}, 0, 0 },
  { "eir14", 654, {0, {{{0, 0}}}}, 0, 0 },
  { "eir15", 655, {0, {{{0, 0}}}}, 0, 0 },
  { "eir16", 656, {0, {{{0, 0}}}}, 0, 0 },
  { "eir17", 657, {0, {{{0, 0}}}}, 0, 0 },
  { "eir18", 658, {0, {{{0, 0}}}}, 0, 0 },
  { "eir19", 659, {0, {{{0, 0}}}}, 0, 0 },
  { "eir20", 660, {0, {{{0, 0}}}}, 0, 0 },
  { "eir21", 661, {0, {{{0, 0}}}}, 0, 0 },
  { "eir22", 662, {0, {{{0, 0}}}}, 0, 0 },
  { "eir23", 663, {0, {{{0, 0}}}}, 0, 0 },
  { "eir24", 664, {0, {{{0, 0}}}}, 0, 0 },
  { "eir25", 665, {0, {{{0, 0}}}}, 0, 0 },
  { "eir26", 666, {0, {{{0, 0}}}}, 0, 0 },
  { "eir27", 667, {0, {{{0, 0}}}}, 0, 0 },
  { "eir28", 668, {0, {{{0, 0}}}}, 0, 0 },
  { "eir29", 669, {0, {{{0, 0}}}}, 0, 0 },
  { "eir30", 670, {0, {{{0, 0}}}}, 0, 0 },
  { "eir31", 671, {0, {{{0, 0}}}}, 0, 0 },
  { "esfr0", 672, {0, {{{0, 0}}}}, 0, 0 },
  { "esfr1", 673, {0, {{{0, 0}}}}, 0, 0 },
  { "sr0", 768, {0, {{{0, 0}}}}, 0, 0 },
  { "sr1", 769, {0, {{{0, 0}}}}, 0, 0 },
  { "sr2", 770, {0, {{{0, 0}}}}, 0, 0 },
  { "sr3", 771, {0, {{{0, 0}}}}, 0, 0 },
  { "scr0", 832, {0, {{{0, 0}}}}, 0, 0 },
  { "scr1", 833, {0, {{{0, 0}}}}, 0, 0 },
  { "scr2", 834, {0, {{{0, 0}}}}, 0, 0 },
  { "scr3", 835, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr0", 1024, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr1", 1025, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr2", 1026, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr3", 1027, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr4", 1028, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr5", 1029, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr6", 1030, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr7", 1031, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr8", 1032, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr9", 1033, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr10", 1034, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr11", 1035, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr12", 1036, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr13", 1037, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr14", 1038, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr15", 1039, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr16", 1040, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr17", 1041, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr18", 1042, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr19", 1043, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr20", 1044, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr21", 1045, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr22", 1046, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr23", 1047, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr24", 1048, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr25", 1049, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr26", 1050, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr27", 1051, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr28", 1052, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr29", 1053, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr30", 1054, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr31", 1055, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr32", 1056, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr33", 1057, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr34", 1058, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr35", 1059, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr36", 1060, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr37", 1061, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr38", 1062, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr39", 1063, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr40", 1064, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr41", 1065, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr42", 1066, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr43", 1067, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr44", 1068, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr45", 1069, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr46", 1070, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr47", 1071, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr48", 1072, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr49", 1073, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr50", 1074, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr51", 1075, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr52", 1076, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr53", 1077, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr54", 1078, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr55", 1079, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr56", 1080, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr57", 1081, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr58", 1082, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr59", 1083, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr60", 1084, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr61", 1085, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr62", 1086, {0, {{{0, 0}}}}, 0, 0 },
  { "fsr63", 1087, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop0", 1088, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop1", 1090, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop2", 1092, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop3", 1094, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop4", 1096, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop5", 1098, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop6", 1100, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop7", 1102, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop8", 1104, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop9", 1106, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop10", 1108, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop11", 1110, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop12", 1112, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop13", 1114, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop14", 1116, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop15", 1118, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop16", 1120, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop17", 1122, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop18", 1124, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop19", 1126, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop20", 1128, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop21", 1130, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop22", 1132, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop23", 1134, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop24", 1136, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop25", 1138, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop26", 1140, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop27", 1142, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop28", 1144, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop29", 1146, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop30", 1148, {0, {{{0, 0}}}}, 0, 0 },
  { "fqop31", 1150, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst0", 1089, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst1", 1091, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst2", 1093, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst3", 1095, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst4", 1097, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst5", 1099, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst6", 1101, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst7", 1103, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst8", 1105, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst9", 1107, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst10", 1109, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst11", 1111, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst12", 1113, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst13", 1115, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst14", 1117, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst15", 1119, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst16", 1121, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst17", 1123, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst18", 1125, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst19", 1127, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst20", 1129, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst21", 1131, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst22", 1133, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst23", 1135, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst24", 1137, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst25", 1139, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst26", 1141, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst27", 1143, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst28", 1145, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst29", 1147, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst30", 1149, {0, {{{0, 0}}}}, 0, 0 },
  { "fqst31", 1151, {0, {{{0, 0}}}}, 0, 0 },
  { "mcilr0", 1272, {0, {{{0, 0}}}}, 0, 0 },
  { "mcilr1", 1273, {0, {{{0, 0}}}}, 0, 0 },
  { "msr0", 1280, {0, {{{0, 0}}}}, 0, 0 },
  { "msr1", 1281, {0, {{{0, 0}}}}, 0, 0 },
  { "msr2", 1282, {0, {{{0, 0}}}}, 0, 0 },
  { "msr3", 1283, {0, {{{0, 0}}}}, 0, 0 },
  { "msr4", 1284, {0, {{{0, 0}}}}, 0, 0 },
  { "msr5", 1285, {0, {{{0, 0}}}}, 0, 0 },
  { "msr6", 1286, {0, {{{0, 0}}}}, 0, 0 },
  { "msr7", 1287, {0, {{{0, 0}}}}, 0, 0 },
  { "msr8", 1288, {0, {{{0, 0}}}}, 0, 0 },
  { "msr9", 1289, {0, {{{0, 0}}}}, 0, 0 },
  { "msr10", 1290, {0, {{{0, 0}}}}, 0, 0 },
  { "msr11", 1291, {0, {{{0, 0}}}}, 0, 0 },
  { "msr12", 1292, {0, {{{0, 0}}}}, 0, 0 },
  { "msr13", 1293, {0, {{{0, 0}}}}, 0, 0 },
  { "msr14", 1294, {0, {{{0, 0}}}}, 0, 0 },
  { "msr15", 1295, {0, {{{0, 0}}}}, 0, 0 },
  { "msr16", 1296, {0, {{{0, 0}}}}, 0, 0 },
  { "msr17", 1297, {0, {{{0, 0}}}}, 0, 0 },
  { "msr18", 1298, {0, {{{0, 0}}}}, 0, 0 },
  { "msr19", 1299, {0, {{{0, 0}}}}, 0, 0 },
  { "msr20", 1300, {0, {{{0, 0}}}}, 0, 0 },
  { "msr21", 1301, {0, {{{0, 0}}}}, 0, 0 },
  { "msr22", 1302, {0, {{{0, 0}}}}, 0, 0 },
  { "msr23", 1303, {0, {{{0, 0}}}}, 0, 0 },
  { "msr24", 1304, {0, {{{0, 0}}}}, 0, 0 },
  { "msr25", 1305, {0, {{{0, 0}}}}, 0, 0 },
  { "msr26", 1306, {0, {{{0, 0}}}}, 0, 0 },
  { "msr27", 1307, {0, {{{0, 0}}}}, 0, 0 },
  { "msr28", 1308, {0, {{{0, 0}}}}, 0, 0 },
  { "msr29", 1309, {0, {{{0, 0}}}}, 0, 0 },
  { "msr30", 1310, {0, {{{0, 0}}}}, 0, 0 },
  { "msr31", 1311, {0, {{{0, 0}}}}, 0, 0 },
  { "msr32", 1312, {0, {{{0, 0}}}}, 0, 0 },
  { "msr33", 1313, {0, {{{0, 0}}}}, 0, 0 },
  { "msr34", 1314, {0, {{{0, 0}}}}, 0, 0 },
  { "msr35", 1315, {0, {{{0, 0}}}}, 0, 0 },
  { "msr36", 1316, {0, {{{0, 0}}}}, 0, 0 },
  { "msr37", 1317, {0, {{{0, 0}}}}, 0, 0 },
  { "msr38", 1318, {0, {{{0, 0}}}}, 0, 0 },
  { "msr39", 1319, {0, {{{0, 0}}}}, 0, 0 },
  { "msr40", 1320, {0, {{{0, 0}}}}, 0, 0 },
  { "msr41", 1321, {0, {{{0, 0}}}}, 0, 0 },
  { "msr42", 1322, {0, {{{0, 0}}}}, 0, 0 },
  { "msr43", 1323, {0, {{{0, 0}}}}, 0, 0 },
  { "msr44", 1324, {0, {{{0, 0}}}}, 0, 0 },
  { "msr45", 1325, {0, {{{0, 0}}}}, 0, 0 },
  { "msr46", 1326, {0, {{{0, 0}}}}, 0, 0 },
  { "msr47", 1327, {0, {{{0, 0}}}}, 0, 0 },
  { "msr48", 1328, {0, {{{0, 0}}}}, 0, 0 },
  { "msr49", 1329, {0, {{{0, 0}}}}, 0, 0 },
  { "msr50", 1330, {0, {{{0, 0}}}}, 0, 0 },
  { "msr51", 1331, {0, {{{0, 0}}}}, 0, 0 },
  { "msr52", 1332, {0, {{{0, 0}}}}, 0, 0 },
  { "msr53", 1333, {0, {{{0, 0}}}}, 0, 0 },
  { "msr54", 1334, {0, {{{0, 0}}}}, 0, 0 },
  { "msr55", 1335, {0, {{{0, 0}}}}, 0, 0 },
  { "msr56", 1336, {0, {{{0, 0}}}}, 0, 0 },
  { "msr57", 1337, {0, {{{0, 0}}}}, 0, 0 },
  { "msr58", 1338, {0, {{{0, 0}}}}, 0, 0 },
  { "msr59", 1339, {0, {{{0, 0}}}}, 0, 0 },
  { "msr60", 1340, {0, {{{0, 0}}}}, 0, 0 },
  { "msr61", 1341, {0, {{{0, 0}}}}, 0, 0 },
  { "msr62", 1342, {0, {{{0, 0}}}}, 0, 0 },
  { "msr63", 1343, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop0", 1344, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop1", 1346, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop2", 1348, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop3", 1350, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop4", 1352, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop5", 1354, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop6", 1356, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop7", 1358, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop8", 1360, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop9", 1362, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop10", 1364, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop11", 1366, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop12", 1368, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop13", 1370, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop14", 1372, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop15", 1374, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop16", 1376, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop17", 1378, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop18", 1380, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop19", 1382, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop20", 1384, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop21", 1386, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop22", 1388, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop23", 1390, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop24", 1392, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop25", 1394, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop26", 1396, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop27", 1398, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop28", 1400, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop29", 1402, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop30", 1404, {0, {{{0, 0}}}}, 0, 0 },
  { "mqop31", 1406, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst0", 1345, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst1", 1347, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst2", 1349, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst3", 1351, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst4", 1353, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst5", 1355, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst6", 1357, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst7", 1359, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst8", 1361, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst9", 1363, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst10", 1365, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst11", 1367, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst12", 1369, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst13", 1371, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst14", 1373, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst15", 1375, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst16", 1377, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst17", 1379, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst18", 1381, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst19", 1383, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst20", 1385, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst21", 1387, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst22", 1389, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst23", 1391, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst24", 1393, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst25", 1395, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst26", 1397, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst27", 1399, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst28", 1401, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst29", 1403, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst30", 1405, {0, {{{0, 0}}}}, 0, 0 },
  { "mqst31", 1407, {0, {{{0, 0}}}}, 0, 0 },
  { "ear0", 1536, {0, {{{0, 0}}}}, 0, 0 },
  { "ear1", 1537, {0, {{{0, 0}}}}, 0, 0 },
  { "ear2", 1538, {0, {{{0, 0}}}}, 0, 0 },
  { "ear3", 1539, {0, {{{0, 0}}}}, 0, 0 },
  { "ear4", 1540, {0, {{{0, 0}}}}, 0, 0 },
  { "ear5", 1541, {0, {{{0, 0}}}}, 0, 0 },
  { "ear6", 1542, {0, {{{0, 0}}}}, 0, 0 },
  { "ear7", 1543, {0, {{{0, 0}}}}, 0, 0 },
  { "ear8", 1544, {0, {{{0, 0}}}}, 0, 0 },
  { "ear9", 1545, {0, {{{0, 0}}}}, 0, 0 },
  { "ear10", 1546, {0, {{{0, 0}}}}, 0, 0 },
  { "ear11", 1547, {0, {{{0, 0}}}}, 0, 0 },
  { "ear12", 1548, {0, {{{0, 0}}}}, 0, 0 },
  { "ear13", 1549, {0, {{{0, 0}}}}, 0, 0 },
  { "ear14", 1550, {0, {{{0, 0}}}}, 0, 0 },
  { "ear15", 1551, {0, {{{0, 0}}}}, 0, 0 },
  { "ear16", 1552, {0, {{{0, 0}}}}, 0, 0 },
  { "ear17", 1553, {0, {{{0, 0}}}}, 0, 0 },
  { "ear18", 1554, {0, {{{0, 0}}}}, 0, 0 },
  { "ear19", 1555, {0, {{{0, 0}}}}, 0, 0 },
  { "ear20", 1556, {0, {{{0, 0}}}}, 0, 0 },
  { "ear21", 1557, {0, {{{0, 0}}}}, 0, 0 },
  { "ear22", 1558, {0, {{{0, 0}}}}, 0, 0 },
  { "ear23", 1559, {0, {{{0, 0}}}}, 0, 0 },
  { "ear24", 1560, {0, {{{0, 0}}}}, 0, 0 },
  { "ear25", 1561, {0, {{{0, 0}}}}, 0, 0 },
  { "ear26", 1562, {0, {{{0, 0}}}}, 0, 0 },
  { "ear27", 1563, {0, {{{0, 0}}}}, 0, 0 },
  { "ear28", 1564, {0, {{{0, 0}}}}, 0, 0 },
  { "ear29", 1565, {0, {{{0, 0}}}}, 0, 0 },
  { "ear30", 1566, {0, {{{0, 0}}}}, 0, 0 },
  { "ear31", 1567, {0, {{{0, 0}}}}, 0, 0 },
  { "ear32", 1568, {0, {{{0, 0}}}}, 0, 0 },
  { "ear33", 1569, {0, {{{0, 0}}}}, 0, 0 },
  { "ear34", 1570, {0, {{{0, 0}}}}, 0, 0 },
  { "ear35", 1571, {0, {{{0, 0}}}}, 0, 0 },
  { "ear36", 1572, {0, {{{0, 0}}}}, 0, 0 },
  { "ear37", 1573, {0, {{{0, 0}}}}, 0, 0 },
  { "ear38", 1574, {0, {{{0, 0}}}}, 0, 0 },
  { "ear39", 1575, {0, {{{0, 0}}}}, 0, 0 },
  { "ear40", 1576, {0, {{{0, 0}}}}, 0, 0 },
  { "ear41", 1577, {0, {{{0, 0}}}}, 0, 0 },
  { "ear42", 1578, {0, {{{0, 0}}}}, 0, 0 },
  { "ear43", 1579, {0, {{{0, 0}}}}, 0, 0 },
  { "ear44", 1580, {0, {{{0, 0}}}}, 0, 0 },
  { "ear45", 1581, {0, {{{0, 0}}}}, 0, 0 },
  { "ear46", 1582, {0, {{{0, 0}}}}, 0, 0 },
  { "ear47", 1583, {0, {{{0, 0}}}}, 0, 0 },
  { "ear48", 1584, {0, {{{0, 0}}}}, 0, 0 },
  { "ear49", 1585, {0, {{{0, 0}}}}, 0, 0 },
  { "ear50", 1586, {0, {{{0, 0}}}}, 0, 0 },
  { "ear51", 1587, {0, {{{0, 0}}}}, 0, 0 },
  { "ear52", 1588, {0, {{{0, 0}}}}, 0, 0 },
  { "ear53", 1589, {0, {{{0, 0}}}}, 0, 0 },
  { "ear54", 1590, {0, {{{0, 0}}}}, 0, 0 },
  { "ear55", 1591, {0, {{{0, 0}}}}, 0, 0 },
  { "ear56", 1592, {0, {{{0, 0}}}}, 0, 0 },
  { "ear57", 1593, {0, {{{0, 0}}}}, 0, 0 },
  { "ear58", 1594, {0, {{{0, 0}}}}, 0, 0 },
  { "ear59", 1595, {0, {{{0, 0}}}}, 0, 0 },
  { "ear60", 1596, {0, {{{0, 0}}}}, 0, 0 },
  { "ear61", 1597, {0, {{{0, 0}}}}, 0, 0 },
  { "ear62", 1598, {0, {{{0, 0}}}}, 0, 0 },
  { "ear63", 1599, {0, {{{0, 0}}}}, 0, 0 },
  { "edr0", 1600, {0, {{{0, 0}}}}, 0, 0 },
  { "edr1", 1601, {0, {{{0, 0}}}}, 0, 0 },
  { "edr2", 1602, {0, {{{0, 0}}}}, 0, 0 },
  { "edr3", 1603, {0, {{{0, 0}}}}, 0, 0 },
  { "edr4", 1604, {0, {{{0, 0}}}}, 0, 0 },
  { "edr5", 1605, {0, {{{0, 0}}}}, 0, 0 },
  { "edr6", 1606, {0, {{{0, 0}}}}, 0, 0 },
  { "edr7", 1607, {0, {{{0, 0}}}}, 0, 0 },
  { "edr8", 1608, {0, {{{0, 0}}}}, 0, 0 },
  { "edr9", 1609, {0, {{{0, 0}}}}, 0, 0 },
  { "edr10", 1610, {0, {{{0, 0}}}}, 0, 0 },
  { "edr11", 1611, {0, {{{0, 0}}}}, 0, 0 },
  { "edr12", 1612, {0, {{{0, 0}}}}, 0, 0 },
  { "edr13", 1613, {0, {{{0, 0}}}}, 0, 0 },
  { "edr14", 1614, {0, {{{0, 0}}}}, 0, 0 },
  { "edr15", 1615, {0, {{{0, 0}}}}, 0, 0 },
  { "edr16", 1616, {0, {{{0, 0}}}}, 0, 0 },
  { "edr17", 1617, {0, {{{0, 0}}}}, 0, 0 },
  { "edr18", 1618, {0, {{{0, 0}}}}, 0, 0 },
  { "edr19", 1619, {0, {{{0, 0}}}}, 0, 0 },
  { "edr20", 1620, {0, {{{0, 0}}}}, 0, 0 },
  { "edr21", 1621, {0, {{{0, 0}}}}, 0, 0 },
  { "edr22", 1622, {0, {{{0, 0}}}}, 0, 0 },
  { "edr23", 1623, {0, {{{0, 0}}}}, 0, 0 },
  { "edr24", 1624, {0, {{{0, 0}}}}, 0, 0 },
  { "edr25", 1625, {0, {{{0, 0}}}}, 0, 0 },
  { "edr26", 1626, {0, {{{0, 0}}}}, 0, 0 },
  { "edr27", 1627, {0, {{{0, 0}}}}, 0, 0 },
  { "edr28", 1628, {0, {{{0, 0}}}}, 0, 0 },
  { "edr29", 1629, {0, {{{0, 0}}}}, 0, 0 },
  { "edr30", 1630, {0, {{{0, 0}}}}, 0, 0 },
  { "edr31", 1631, {0, {{{0, 0}}}}, 0, 0 },
  { "edr32", 1632, {0, {{{0, 0}}}}, 0, 0 },
  { "edr33", 1636, {0, {{{0, 0}}}}, 0, 0 },
  { "edr34", 1634, {0, {{{0, 0}}}}, 0, 0 },
  { "edr35", 1635, {0, {{{0, 0}}}}, 0, 0 },
  { "edr36", 1636, {0, {{{0, 0}}}}, 0, 0 },
  { "edr37", 1637, {0, {{{0, 0}}}}, 0, 0 },
  { "edr38", 1638, {0, {{{0, 0}}}}, 0, 0 },
  { "edr39", 1639, {0, {{{0, 0}}}}, 0, 0 },
  { "edr40", 1640, {0, {{{0, 0}}}}, 0, 0 },
  { "edr41", 1641, {0, {{{0, 0}}}}, 0, 0 },
  { "edr42", 1642, {0, {{{0, 0}}}}, 0, 0 },
  { "edr43", 1643, {0, {{{0, 0}}}}, 0, 0 },
  { "edr44", 1644, {0, {{{0, 0}}}}, 0, 0 },
  { "edr45", 1645, {0, {{{0, 0}}}}, 0, 0 },
  { "edr46", 1646, {0, {{{0, 0}}}}, 0, 0 },
  { "edr47", 1647, {0, {{{0, 0}}}}, 0, 0 },
  { "edr48", 1648, {0, {{{0, 0}}}}, 0, 0 },
  { "edr49", 1649, {0, {{{0, 0}}}}, 0, 0 },
  { "edr50", 1650, {0, {{{0, 0}}}}, 0, 0 },
  { "edr51", 1651, {0, {{{0, 0}}}}, 0, 0 },
  { "edr52", 1652, {0, {{{0, 0}}}}, 0, 0 },
  { "edr53", 1653, {0, {{{0, 0}}}}, 0, 0 },
  { "edr54", 1654, {0, {{{0, 0}}}}, 0, 0 },
  { "edr55", 1655, {0, {{{0, 0}}}}, 0, 0 },
  { "edr56", 1656, {0, {{{0, 0}}}}, 0, 0 },
  { "edr57", 1657, {0, {{{0, 0}}}}, 0, 0 },
  { "edr58", 1658, {0, {{{0, 0}}}}, 0, 0 },
  { "edr59", 1659, {0, {{{0, 0}}}}, 0, 0 },
  { "edr60", 1660, {0, {{{0, 0}}}}, 0, 0 },
  { "edr61", 1661, {0, {{{0, 0}}}}, 0, 0 },
  { "edr62", 1662, {0, {{{0, 0}}}}, 0, 0 },
  { "edr63", 1663, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr0", 1664, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr1", 1665, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr2", 1666, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr3", 1667, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr4", 1668, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr5", 1669, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr6", 1670, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr7", 1671, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr8", 1672, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr9", 1673, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr10", 1674, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr11", 1675, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr12", 1676, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr13", 1677, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr14", 1678, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr15", 1679, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr16", 1680, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr17", 1681, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr18", 1682, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr19", 1683, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr20", 1684, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr21", 1685, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr22", 1686, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr23", 1687, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr24", 1688, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr25", 1689, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr26", 1690, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr27", 1691, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr28", 1692, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr29", 1693, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr30", 1694, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr31", 1695, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr32", 1696, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr33", 1697, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr34", 1698, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr35", 1699, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr36", 1700, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr37", 1701, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr38", 1702, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr39", 1703, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr40", 1704, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr41", 1705, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr42", 1706, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr43", 1707, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr44", 1708, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr45", 1709, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr46", 1710, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr47", 1711, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr48", 1712, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr49", 1713, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr50", 1714, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr51", 1715, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr52", 1716, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr53", 1717, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr54", 1718, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr55", 1719, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr56", 1720, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr57", 1721, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr58", 1722, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr59", 1723, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr60", 1724, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr61", 1725, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr62", 1726, {0, {{{0, 0}}}}, 0, 0 },
  { "iamlr63", 1727, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr0", 1728, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr1", 1729, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr2", 1730, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr3", 1731, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr4", 1732, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr5", 1733, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr6", 1734, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr7", 1735, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr8", 1736, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr9", 1737, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr10", 1738, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr11", 1739, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr12", 1740, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr13", 1741, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr14", 1742, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr15", 1743, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr16", 1744, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr17", 1745, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr18", 1746, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr19", 1747, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr20", 1748, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr21", 1749, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr22", 1750, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr23", 1751, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr24", 1752, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr25", 1753, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr26", 1754, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr27", 1755, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr28", 1756, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr29", 1757, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr30", 1758, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr31", 1759, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr32", 1760, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr33", 1761, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr34", 1762, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr35", 1763, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr36", 1764, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr37", 1765, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr38", 1766, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr39", 1767, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr40", 1768, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr41", 1769, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr42", 1770, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr43", 1771, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr44", 1772, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr45", 1773, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr46", 1774, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr47", 1775, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr48", 1776, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr49", 1777, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr50", 1778, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr51", 1779, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr52", 1780, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr53", 1781, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr54", 1782, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr55", 1783, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr56", 1784, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr57", 1785, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr58", 1786, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr59", 1787, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr60", 1788, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr61", 1789, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr62", 1790, {0, {{{0, 0}}}}, 0, 0 },
  { "iampr63", 1791, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr0", 1792, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr1", 1793, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr2", 1794, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr3", 1795, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr4", 1796, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr5", 1797, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr6", 1798, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr7", 1799, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr8", 1800, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr9", 1801, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr10", 1802, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr11", 1803, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr12", 1804, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr13", 1805, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr14", 1806, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr15", 1807, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr16", 1808, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr17", 1809, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr18", 1810, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr19", 1811, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr20", 1812, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr21", 1813, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr22", 1814, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr23", 1815, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr24", 1816, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr25", 1817, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr26", 1818, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr27", 1819, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr28", 1820, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr29", 1821, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr30", 1822, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr31", 1823, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr32", 1824, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr33", 1825, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr34", 1826, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr35", 1827, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr36", 1828, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr37", 1829, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr38", 1830, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr39", 1831, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr40", 1832, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr41", 1833, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr42", 1834, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr43", 1835, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr44", 1836, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr45", 1837, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr46", 1838, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr47", 1839, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr48", 1840, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr49", 1841, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr50", 1842, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr51", 1843, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr52", 1844, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr53", 1845, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr54", 1846, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr55", 1847, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr56", 1848, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr57", 1849, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr58", 1850, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr59", 1851, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr60", 1852, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr61", 1853, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr62", 1854, {0, {{{0, 0}}}}, 0, 0 },
  { "damlr63", 1855, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr0", 1856, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr1", 1857, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr2", 1858, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr3", 1859, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr4", 1860, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr5", 1861, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr6", 1862, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr7", 1863, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr8", 1864, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr9", 1865, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr10", 1866, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr11", 1867, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr12", 1868, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr13", 1869, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr14", 1870, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr15", 1871, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr16", 1872, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr17", 1873, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr18", 1874, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr19", 1875, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr20", 1876, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr21", 1877, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr22", 1878, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr23", 1879, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr24", 1880, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr25", 1881, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr26", 1882, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr27", 1883, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr28", 1884, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr29", 1885, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr30", 1886, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr31", 1887, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr32", 1888, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr33", 1889, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr34", 1890, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr35", 1891, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr36", 1892, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr37", 1893, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr38", 1894, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr39", 1895, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr40", 1896, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr41", 1897, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr42", 1898, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr43", 1899, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr44", 1900, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr45", 1901, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr46", 1902, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr47", 1903, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr48", 1904, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr49", 1905, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr50", 1906, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr51", 1907, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr52", 1908, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr53", 1909, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr54", 1910, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr55", 1911, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr56", 1912, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr57", 1913, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr58", 1914, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr59", 1915, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr60", 1916, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr61", 1917, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr62", 1918, {0, {{{0, 0}}}}, 0, 0 },
  { "dampr63", 1919, {0, {{{0, 0}}}}, 0, 0 },
  { "amcr", 1920, {0, {{{0, 0}}}}, 0, 0 },
  { "stbar", 1921, {0, {{{0, 0}}}}, 0, 0 },
  { "mmcr", 1922, {0, {{{0, 0}}}}, 0, 0 },
  { "iamvr1", 1925, {0, {{{0, 0}}}}, 0, 0 },
  { "damvr1", 1927, {0, {{{0, 0}}}}, 0, 0 },
  { "cxnr", 1936, {0, {{{0, 0}}}}, 0, 0 },
  { "ttbr", 1937, {0, {{{0, 0}}}}, 0, 0 },
  { "tplr", 1938, {0, {{{0, 0}}}}, 0, 0 },
  { "tppr", 1939, {0, {{{0, 0}}}}, 0, 0 },
  { "tpxr", 1940, {0, {{{0, 0}}}}, 0, 0 },
  { "timerh", 1952, {0, {{{0, 0}}}}, 0, 0 },
  { "timerl", 1953, {0, {{{0, 0}}}}, 0, 0 },
  { "timerd", 1954, {0, {{{0, 0}}}}, 0, 0 },
  { "dcr", 2048, {0, {{{0, 0}}}}, 0, 0 },
  { "brr", 2049, {0, {{{0, 0}}}}, 0, 0 },
  { "nmar", 2050, {0, {{{0, 0}}}}, 0, 0 },
  { "btbr", 2051, {0, {{{0, 0}}}}, 0, 0 },
  { "ibar0", 2052, {0, {{{0, 0}}}}, 0, 0 },
  { "ibar1", 2053, {0, {{{0, 0}}}}, 0, 0 },
  { "ibar2", 2054, {0, {{{0, 0}}}}, 0, 0 },
  { "ibar3", 2055, {0, {{{0, 0}}}}, 0, 0 },
  { "dbar0", 2056, {0, {{{0, 0}}}}, 0, 0 },
  { "dbar1", 2057, {0, {{{0, 0}}}}, 0, 0 },
  { "dbar2", 2058, {0, {{{0, 0}}}}, 0, 0 },
  { "dbar3", 2059, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr00", 2060, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr01", 2061, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr02", 2062, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr03", 2063, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr10", 2064, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr11", 2065, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr12", 2066, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr13", 2067, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr20", 2068, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr21", 2069, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr22", 2070, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr23", 2071, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr30", 2072, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr31", 2073, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr32", 2074, {0, {{{0, 0}}}}, 0, 0 },
  { "dbdr33", 2075, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr00", 2076, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr01", 2077, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr02", 2078, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr03", 2079, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr10", 2080, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr11", 2081, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr12", 2082, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr13", 2083, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr20", 2084, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr21", 2085, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr22", 2086, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr23", 2087, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr30", 2088, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr31", 2089, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr32", 2090, {0, {{{0, 0}}}}, 0, 0 },
  { "dbmr33", 2091, {0, {{{0, 0}}}}, 0, 0 },
  { "cpcfr", 2304, {0, {{{0, 0}}}}, 0, 0 },
  { "cpcr", 2305, {0, {{{0, 0}}}}, 0, 0 },
  { "cpsr", 2306, {0, {{{0, 0}}}}, 0, 0 },
  { "cptr", 2307, {0, {{{0, 0}}}}, 0, 0 },
  { "cphsr0", 2308, {0, {{{0, 0}}}}, 0, 0 },
  { "cphsr1", 2309, {0, {{{0, 0}}}}, 0, 0 },
  { "cpesr0", 2320, {0, {{{0, 0}}}}, 0, 0 },
  { "cpesr1", 2321, {0, {{{0, 0}}}}, 0, 0 },
  { "cpemr0", 2322, {0, {{{0, 0}}}}, 0, 0 },
  { "cpemr1", 2323, {0, {{{0, 0}}}}, 0, 0 },
  { "iperr0", 2324, {0, {{{0, 0}}}}, 0, 0 },
  { "iperr1", 2325, {0, {{{0, 0}}}}, 0, 0 },
  { "ipjsr", 2326, {0, {{{0, 0}}}}, 0, 0 },
  { "ipjrr", 2327, {0, {{{0, 0}}}}, 0, 0 },
  { "ipcsr0", 2336, {0, {{{0, 0}}}}, 0, 0 },
  { "ipcsr1", 2337, {0, {{{0, 0}}}}, 0, 0 },
  { "ipcwer0", 2338, {0, {{{0, 0}}}}, 0, 0 },
  { "ipcwer1", 2339, {0, {{{0, 0}}}}, 0, 0 },
  { "ipcwr", 2340, {0, {{{0, 0}}}}, 0, 0 },
  { "mbhsr", 2352, {0, {{{0, 0}}}}, 0, 0 },
  { "mbssr", 2353, {0, {{{0, 0}}}}, 0, 0 },
  { "mbrsr", 2354, {0, {{{0, 0}}}}, 0, 0 },
  { "mbsdr", 2355, {0, {{{0, 0}}}}, 0, 0 },
  { "mbrdr", 2356, {0, {{{0, 0}}}}, 0, 0 },
  { "mbsmr", 2357, {0, {{{0, 0}}}}, 0, 0 },
  { "mbstr0", 2359, {0, {{{0, 0}}}}, 0, 0 },
  { "mbstr1", 2360, {0, {{{0, 0}}}}, 0, 0 },
  { "slpr", 2368, {0, {{{0, 0}}}}, 0, 0 },
  { "sldr", 2369, {0, {{{0, 0}}}}, 0, 0 },
  { "slhsr", 2370, {0, {{{0, 0}}}}, 0, 0 },
  { "sltr", 2371, {0, {{{0, 0}}}}, 0, 0 },
  { "slwr", 2372, {0, {{{0, 0}}}}, 0, 0 },
  { "ihsr8", 3848, {0, {{{0, 0}}}}, 0, 0 },
  { "ihsr9", 3849, {0, {{{0, 0}}}}, 0, 0 },
  { "ihsr10", 3850, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_spr_names =
{
  & frv_cgen_opval_spr_names_entries[0],
  1049,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_accg_names_entries[] =
{
  { "accg0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "accg1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "accg2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "accg3", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "accg4", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "accg5", 5, {0, {{{0, 0}}}}, 0, 0 },
  { "accg6", 6, {0, {{{0, 0}}}}, 0, 0 },
  { "accg7", 7, {0, {{{0, 0}}}}, 0, 0 },
  { "accg8", 8, {0, {{{0, 0}}}}, 0, 0 },
  { "accg9", 9, {0, {{{0, 0}}}}, 0, 0 },
  { "accg10", 10, {0, {{{0, 0}}}}, 0, 0 },
  { "accg11", 11, {0, {{{0, 0}}}}, 0, 0 },
  { "accg12", 12, {0, {{{0, 0}}}}, 0, 0 },
  { "accg13", 13, {0, {{{0, 0}}}}, 0, 0 },
  { "accg14", 14, {0, {{{0, 0}}}}, 0, 0 },
  { "accg15", 15, {0, {{{0, 0}}}}, 0, 0 },
  { "accg16", 16, {0, {{{0, 0}}}}, 0, 0 },
  { "accg17", 17, {0, {{{0, 0}}}}, 0, 0 },
  { "accg18", 18, {0, {{{0, 0}}}}, 0, 0 },
  { "accg19", 19, {0, {{{0, 0}}}}, 0, 0 },
  { "accg20", 20, {0, {{{0, 0}}}}, 0, 0 },
  { "accg21", 21, {0, {{{0, 0}}}}, 0, 0 },
  { "accg22", 22, {0, {{{0, 0}}}}, 0, 0 },
  { "accg23", 23, {0, {{{0, 0}}}}, 0, 0 },
  { "accg24", 24, {0, {{{0, 0}}}}, 0, 0 },
  { "accg25", 25, {0, {{{0, 0}}}}, 0, 0 },
  { "accg26", 26, {0, {{{0, 0}}}}, 0, 0 },
  { "accg27", 27, {0, {{{0, 0}}}}, 0, 0 },
  { "accg28", 28, {0, {{{0, 0}}}}, 0, 0 },
  { "accg29", 29, {0, {{{0, 0}}}}, 0, 0 },
  { "accg30", 30, {0, {{{0, 0}}}}, 0, 0 },
  { "accg31", 31, {0, {{{0, 0}}}}, 0, 0 },
  { "accg32", 32, {0, {{{0, 0}}}}, 0, 0 },
  { "accg33", 33, {0, {{{0, 0}}}}, 0, 0 },
  { "accg34", 34, {0, {{{0, 0}}}}, 0, 0 },
  { "accg35", 35, {0, {{{0, 0}}}}, 0, 0 },
  { "accg36", 36, {0, {{{0, 0}}}}, 0, 0 },
  { "accg37", 37, {0, {{{0, 0}}}}, 0, 0 },
  { "accg38", 38, {0, {{{0, 0}}}}, 0, 0 },
  { "accg39", 39, {0, {{{0, 0}}}}, 0, 0 },
  { "accg40", 40, {0, {{{0, 0}}}}, 0, 0 },
  { "accg41", 41, {0, {{{0, 0}}}}, 0, 0 },
  { "accg42", 42, {0, {{{0, 0}}}}, 0, 0 },
  { "accg43", 43, {0, {{{0, 0}}}}, 0, 0 },
  { "accg44", 44, {0, {{{0, 0}}}}, 0, 0 },
  { "accg45", 45, {0, {{{0, 0}}}}, 0, 0 },
  { "accg46", 46, {0, {{{0, 0}}}}, 0, 0 },
  { "accg47", 47, {0, {{{0, 0}}}}, 0, 0 },
  { "accg48", 48, {0, {{{0, 0}}}}, 0, 0 },
  { "accg49", 49, {0, {{{0, 0}}}}, 0, 0 },
  { "accg50", 50, {0, {{{0, 0}}}}, 0, 0 },
  { "accg51", 51, {0, {{{0, 0}}}}, 0, 0 },
  { "accg52", 52, {0, {{{0, 0}}}}, 0, 0 },
  { "accg53", 53, {0, {{{0, 0}}}}, 0, 0 },
  { "accg54", 54, {0, {{{0, 0}}}}, 0, 0 },
  { "accg55", 55, {0, {{{0, 0}}}}, 0, 0 },
  { "accg56", 56, {0, {{{0, 0}}}}, 0, 0 },
  { "accg57", 57, {0, {{{0, 0}}}}, 0, 0 },
  { "accg58", 58, {0, {{{0, 0}}}}, 0, 0 },
  { "accg59", 59, {0, {{{0, 0}}}}, 0, 0 },
  { "accg60", 60, {0, {{{0, 0}}}}, 0, 0 },
  { "accg61", 61, {0, {{{0, 0}}}}, 0, 0 },
  { "accg62", 62, {0, {{{0, 0}}}}, 0, 0 },
  { "accg63", 63, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_accg_names =
{
  & frv_cgen_opval_accg_names_entries[0],
  64,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_acc_names_entries[] =
{
  { "acc0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "acc1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "acc2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "acc3", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "acc4", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "acc5", 5, {0, {{{0, 0}}}}, 0, 0 },
  { "acc6", 6, {0, {{{0, 0}}}}, 0, 0 },
  { "acc7", 7, {0, {{{0, 0}}}}, 0, 0 },
  { "acc8", 8, {0, {{{0, 0}}}}, 0, 0 },
  { "acc9", 9, {0, {{{0, 0}}}}, 0, 0 },
  { "acc10", 10, {0, {{{0, 0}}}}, 0, 0 },
  { "acc11", 11, {0, {{{0, 0}}}}, 0, 0 },
  { "acc12", 12, {0, {{{0, 0}}}}, 0, 0 },
  { "acc13", 13, {0, {{{0, 0}}}}, 0, 0 },
  { "acc14", 14, {0, {{{0, 0}}}}, 0, 0 },
  { "acc15", 15, {0, {{{0, 0}}}}, 0, 0 },
  { "acc16", 16, {0, {{{0, 0}}}}, 0, 0 },
  { "acc17", 17, {0, {{{0, 0}}}}, 0, 0 },
  { "acc18", 18, {0, {{{0, 0}}}}, 0, 0 },
  { "acc19", 19, {0, {{{0, 0}}}}, 0, 0 },
  { "acc20", 20, {0, {{{0, 0}}}}, 0, 0 },
  { "acc21", 21, {0, {{{0, 0}}}}, 0, 0 },
  { "acc22", 22, {0, {{{0, 0}}}}, 0, 0 },
  { "acc23", 23, {0, {{{0, 0}}}}, 0, 0 },
  { "acc24", 24, {0, {{{0, 0}}}}, 0, 0 },
  { "acc25", 25, {0, {{{0, 0}}}}, 0, 0 },
  { "acc26", 26, {0, {{{0, 0}}}}, 0, 0 },
  { "acc27", 27, {0, {{{0, 0}}}}, 0, 0 },
  { "acc28", 28, {0, {{{0, 0}}}}, 0, 0 },
  { "acc29", 29, {0, {{{0, 0}}}}, 0, 0 },
  { "acc30", 30, {0, {{{0, 0}}}}, 0, 0 },
  { "acc31", 31, {0, {{{0, 0}}}}, 0, 0 },
  { "acc32", 32, {0, {{{0, 0}}}}, 0, 0 },
  { "acc33", 33, {0, {{{0, 0}}}}, 0, 0 },
  { "acc34", 34, {0, {{{0, 0}}}}, 0, 0 },
  { "acc35", 35, {0, {{{0, 0}}}}, 0, 0 },
  { "acc36", 36, {0, {{{0, 0}}}}, 0, 0 },
  { "acc37", 37, {0, {{{0, 0}}}}, 0, 0 },
  { "acc38", 38, {0, {{{0, 0}}}}, 0, 0 },
  { "acc39", 39, {0, {{{0, 0}}}}, 0, 0 },
  { "acc40", 40, {0, {{{0, 0}}}}, 0, 0 },
  { "acc41", 41, {0, {{{0, 0}}}}, 0, 0 },
  { "acc42", 42, {0, {{{0, 0}}}}, 0, 0 },
  { "acc43", 43, {0, {{{0, 0}}}}, 0, 0 },
  { "acc44", 44, {0, {{{0, 0}}}}, 0, 0 },
  { "acc45", 45, {0, {{{0, 0}}}}, 0, 0 },
  { "acc46", 46, {0, {{{0, 0}}}}, 0, 0 },
  { "acc47", 47, {0, {{{0, 0}}}}, 0, 0 },
  { "acc48", 48, {0, {{{0, 0}}}}, 0, 0 },
  { "acc49", 49, {0, {{{0, 0}}}}, 0, 0 },
  { "acc50", 50, {0, {{{0, 0}}}}, 0, 0 },
  { "acc51", 51, {0, {{{0, 0}}}}, 0, 0 },
  { "acc52", 52, {0, {{{0, 0}}}}, 0, 0 },
  { "acc53", 53, {0, {{{0, 0}}}}, 0, 0 },
  { "acc54", 54, {0, {{{0, 0}}}}, 0, 0 },
  { "acc55", 55, {0, {{{0, 0}}}}, 0, 0 },
  { "acc56", 56, {0, {{{0, 0}}}}, 0, 0 },
  { "acc57", 57, {0, {{{0, 0}}}}, 0, 0 },
  { "acc58", 58, {0, {{{0, 0}}}}, 0, 0 },
  { "acc59", 59, {0, {{{0, 0}}}}, 0, 0 },
  { "acc60", 60, {0, {{{0, 0}}}}, 0, 0 },
  { "acc61", 61, {0, {{{0, 0}}}}, 0, 0 },
  { "acc62", 62, {0, {{{0, 0}}}}, 0, 0 },
  { "acc63", 63, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_acc_names =
{
  & frv_cgen_opval_acc_names_entries[0],
  64,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_iacc0_names_entries[] =
{
  { "iacc0", 0, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_iacc0_names =
{
  & frv_cgen_opval_iacc0_names_entries[0],
  1,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_iccr_names_entries[] =
{
  { "icc0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "icc1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "icc2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "icc3", 3, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_iccr_names =
{
  & frv_cgen_opval_iccr_names_entries[0],
  4,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_fccr_names_entries[] =
{
  { "fcc0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "fcc1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "fcc2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "fcc3", 3, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_fccr_names =
{
  & frv_cgen_opval_fccr_names_entries[0],
  4,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_cccr_names_entries[] =
{
  { "cc0", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "cc1", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "cc2", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "cc3", 3, {0, {{{0, 0}}}}, 0, 0 },
  { "cc4", 4, {0, {{{0, 0}}}}, 0, 0 },
  { "cc5", 5, {0, {{{0, 0}}}}, 0, 0 },
  { "cc6", 6, {0, {{{0, 0}}}}, 0, 0 },
  { "cc7", 7, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_cccr_names =
{
  & frv_cgen_opval_cccr_names_entries[0],
  8,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_h_pack_entries[] =
{
  { "", 1, {0, {{{0, 0}}}}, 0, 0 },
  { ".p", 0, {0, {{{0, 0}}}}, 0, 0 },
  { ".P", 0, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_h_pack =
{
  & frv_cgen_opval_h_pack_entries[0],
  3,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_h_hint_taken_entries[] =
{
  { "", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "", 3, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_h_hint_taken =
{
  & frv_cgen_opval_h_hint_taken_entries[0],
  4,
  0, 0, 0, 0, ""
};

static CGEN_KEYWORD_ENTRY frv_cgen_opval_h_hint_not_taken_entries[] =
{
  { "", 0, {0, {{{0, 0}}}}, 0, 0 },
  { "", 1, {0, {{{0, 0}}}}, 0, 0 },
  { "", 2, {0, {{{0, 0}}}}, 0, 0 },
  { "", 3, {0, {{{0, 0}}}}, 0, 0 }
};

CGEN_KEYWORD frv_cgen_opval_h_hint_not_taken =
{
  & frv_cgen_opval_h_hint_not_taken_entries[0],
  4,
  0, 0, 0, 0, ""
};


/* The hardware table.  */

#define A(a) (1 << CGEN_HW_##a)

const CGEN_HW_ENTRY frv_cgen_hw_table[] =
{
  { "h-memory", HW_H_MEMORY, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-sint", HW_H_SINT, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-uint", HW_H_UINT, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-addr", HW_H_ADDR, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-iaddr", HW_H_IADDR, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-reloc-ann", HW_H_RELOC_ANN, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-pc", HW_H_PC, CGEN_ASM_NONE, 0, { 0|A(PROFILE)|A(PC), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_imple", HW_H_PSR_IMPLE, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_ver", HW_H_PSR_VER, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_ice", HW_H_PSR_ICE, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_nem", HW_H_PSR_NEM, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_cm", HW_H_PSR_CM, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_be", HW_H_PSR_BE, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_esr", HW_H_PSR_ESR, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_ef", HW_H_PSR_EF, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_em", HW_H_PSR_EM, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_pil", HW_H_PSR_PIL, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_ps", HW_H_PSR_PS, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_et", HW_H_PSR_ET, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-psr_s", HW_H_PSR_S, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-tbr_tba", HW_H_TBR_TBA, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-tbr_tt", HW_H_TBR_TT, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-bpsr_bs", HW_H_BPSR_BS, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-bpsr_bet", HW_H_BPSR_BET, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-gr", HW_H_GR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_gr_names, { 0|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-gr_double", HW_H_GR_DOUBLE, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_gr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-gr_hi", HW_H_GR_HI, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_gr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-gr_lo", HW_H_GR_LO, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_gr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr", HW_H_FR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_double", HW_H_FR_DOUBLE, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_int", HW_H_FR_INT, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_hi", HW_H_FR_HI, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_lo", HW_H_FR_LO, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_0", HW_H_FR_0, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_1", HW_H_FR_1, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_2", HW_H_FR_2, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fr_3", HW_H_FR_3, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-cpr", HW_H_CPR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_cpr_names, { 0|A(PROFILE), { { { (1<<MACH_FRV), 0 } } } } },
  { "h-cpr_double", HW_H_CPR_DOUBLE, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_cpr_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_FRV), 0 } } } } },
  { "h-spr", HW_H_SPR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_spr_names, { 0|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-accg", HW_H_ACCG, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_accg_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-acc40S", HW_H_ACC40S, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_acc_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-acc40U", HW_H_ACC40U, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_acc_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-iacc0", HW_H_IACC0, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_iacc0_names, { 0|A(VIRTUAL)|A(PROFILE), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } } } } },
  { "h-iccr", HW_H_ICCR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_iccr_names, { 0|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-fccr", HW_H_FCCR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_fccr_names, { 0|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-cccr", HW_H_CCCR, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_cccr_names, { 0|A(PROFILE), { { { (1<<MACH_BASE), 0 } } } } },
  { "h-pack", HW_H_PACK, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_h_pack, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-hint-taken", HW_H_HINT_TAKEN, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_h_hint_taken, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { "h-hint-not-taken", HW_H_HINT_NOT_TAKEN, CGEN_ASM_KEYWORD, (PTR) & frv_cgen_opval_h_hint_not_taken, { 0, { { { (1<<MACH_BASE), 0 } } } } },
  { 0, 0, CGEN_ASM_NONE, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } }
};

#undef A


/* The instruction field table.  */

#define A(a) (1 << CGEN_IFLD_##a)

const CGEN_IFLD frv_cgen_ifld_table[] =
{
  { FRV_F_NIL, "f-nil", 0, 0, 0, 0, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ANYOF, "f-anyof", 0, 0, 0, 0, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_PACK, "f-pack", 0, 32, 31, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_OP, "f-op", 0, 32, 24, 7, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_OPE1, "f-ope1", 0, 32, 11, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_OPE2, "f-ope2", 0, 32, 9, 4, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_OPE3, "f-ope3", 0, 32, 15, 3, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_OPE4, "f-ope4", 0, 32, 7, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_GRI, "f-GRi", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_GRJ, "f-GRj", 0, 32, 5, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_GRK, "f-GRk", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FRI, "f-FRi", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FRJ, "f-FRj", 0, 32, 5, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FRK, "f-FRk", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CPRI, "f-CPRi", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CPRJ, "f-CPRj", 0, 32, 5, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CPRK, "f-CPRk", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACCGI, "f-ACCGi", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACCGK, "f-ACCGk", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACC40SI, "f-ACC40Si", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACC40UI, "f-ACC40Ui", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACC40SK, "f-ACC40Sk", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACC40UK, "f-ACC40Uk", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CRI, "f-CRi", 0, 32, 14, 3, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CRJ, "f-CRj", 0, 32, 2, 3, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CRK, "f-CRk", 0, 32, 27, 3, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CCI, "f-CCi", 0, 32, 11, 3, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CRJ_INT, "f-CRj_int", 0, 32, 26, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CRJ_FLOAT, "f-CRj_float", 0, 32, 26, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ICCI_1, "f-ICCi_1", 0, 32, 11, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ICCI_2, "f-ICCi_2", 0, 32, 26, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ICCI_3, "f-ICCi_3", 0, 32, 1, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCI_1, "f-FCCi_1", 0, 32, 11, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCI_2, "f-FCCi_2", 0, 32, 26, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCI_3, "f-FCCi_3", 0, 32, 1, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCK, "f-FCCk", 0, 32, 26, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_EIR, "f-eir", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S10, "f-s10", 0, 32, 9, 10, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S12, "f-s12", 0, 32, 11, 12, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_D12, "f-d12", 0, 32, 11, 12, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_U16, "f-u16", 0, 32, 15, 16, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S16, "f-s16", 0, 32, 15, 16, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S6, "f-s6", 0, 32, 5, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S6_1, "f-s6_1", 0, 32, 11, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_U6, "f-u6", 0, 32, 5, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S5, "f-s5", 0, 32, 4, 5, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_U12_H, "f-u12-h", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_U12_L, "f-u12-l", 0, 32, 5, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_U12, "f-u12", 0, 0, 0, 0,{ 0|A(VIRTUAL), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_INT_CC, "f-int-cc", 0, 32, 30, 4, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FLT_CC, "f-flt-cc", 0, 32, 30, 4, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_COND, "f-cond", 0, 32, 8, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CCOND, "f-ccond", 0, 32, 12, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_HINT, "f-hint", 0, 32, 17, 2, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LI, "f-LI", 0, 32, 25, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LOCK, "f-lock", 0, 32, 25, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_DEBUG, "f-debug", 0, 32, 25, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_A, "f-A", 0, 32, 17, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_AE, "f-ae", 0, 32, 25, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_SPR_H, "f-spr-h", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_SPR_L, "f-spr-l", 0, 32, 17, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_SPR, "f-spr", 0, 0, 0, 0,{ 0|A(VIRTUAL), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LABEL16, "f-label16", 0, 32, 15, 16, { 0|A(PCREL_ADDR), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LABELH6, "f-labelH6", 0, 32, 30, 6, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LABELL18, "f-labelL18", 0, 32, 17, 18, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LABEL24, "f-label24", 0, 0, 0, 0,{ 0|A(PCREL_ADDR)|A(VIRTUAL), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LRAE, "f-LRAE", 0, 32, 5, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LRAD, "f-LRAD", 0, 32, 4, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LRAS, "f-LRAS", 0, 32, 3, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_TLBPROPX, "f-TLBPRopx", 0, 32, 28, 3, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_TLBPRL, "f-TLBPRL", 0, 32, 25, 1, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ICCI_1_NULL, "f-ICCi_1-null", 0, 32, 11, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ICCI_2_NULL, "f-ICCi_2-null", 0, 32, 26, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ICCI_3_NULL, "f-ICCi_3-null", 0, 32, 1, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCI_1_NULL, "f-FCCi_1-null", 0, 32, 11, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCI_2_NULL, "f-FCCi_2-null", 0, 32, 26, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FCCI_3_NULL, "f-FCCi_3-null", 0, 32, 1, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_RS_NULL, "f-rs-null", 0, 32, 17, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_GRI_NULL, "f-GRi-null", 0, 32, 17, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_GRJ_NULL, "f-GRj-null", 0, 32, 5, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_GRK_NULL, "f-GRk-null", 0, 32, 30, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FRI_NULL, "f-FRi-null", 0, 32, 17, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_FRJ_NULL, "f-FRj-null", 0, 32, 5, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_ACCJ_NULL, "f-ACCj-null", 0, 32, 5, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_RD_NULL, "f-rd-null", 0, 32, 30, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_COND_NULL, "f-cond-null", 0, 32, 30, 4, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_CCOND_NULL, "f-ccond-null", 0, 32, 12, 1, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_S12_NULL, "f-s12-null", 0, 32, 11, 12, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LABEL16_NULL, "f-label16-null", 0, 32, 15, 16, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_1, "f-misc-null-1", 0, 32, 30, 5, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_2, "f-misc-null-2", 0, 32, 11, 6, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_3, "f-misc-null-3", 0, 32, 11, 4, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_4, "f-misc-null-4", 0, 32, 17, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_5, "f-misc-null-5", 0, 32, 17, 16, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_6, "f-misc-null-6", 0, 32, 30, 3, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_7, "f-misc-null-7", 0, 32, 17, 3, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_8, "f-misc-null-8", 0, 32, 5, 3, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_9, "f-misc-null-9", 0, 32, 5, 4, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_10, "f-misc-null-10", 0, 32, 16, 5, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_MISC_NULL_11, "f-misc-null-11", 0, 32, 5, 1, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LRA_NULL, "f-LRA-null", 0, 32, 2, 3, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_TLBPR_NULL, "f-TLBPR-null", 0, 32, 30, 2, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LI_OFF, "f-LI-off", 0, 32, 25, 1, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_LI_ON, "f-LI-on", 0, 32, 25, 1, { 0|A(RESERVED), { { { (1<<MACH_BASE), 0 } } } }  },
  { FRV_F_RELOC_ANN, "f-reloc-ann", 0, 32, 0, 0, { 0, { { { (1<<MACH_BASE), 0 } } } }  },
  { 0, 0, 0, 0, 0, 0, { 0, { { { (1<<MACH_BASE), 0 } } } } }
};

#undef A



/* multi ifield declarations */

const CGEN_MAYBE_MULTI_IFLD FRV_F_U12_MULTI_IFIELD [];
const CGEN_MAYBE_MULTI_IFLD FRV_F_SPR_MULTI_IFIELD [];
const CGEN_MAYBE_MULTI_IFLD FRV_F_LABEL24_MULTI_IFIELD [];


/* multi ifield definitions */

const CGEN_MAYBE_MULTI_IFLD FRV_F_U12_MULTI_IFIELD [] =
{
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_U12_H] } },
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_U12_L] } },
    { 0, { (const PTR) 0 } }
};
const CGEN_MAYBE_MULTI_IFLD FRV_F_SPR_MULTI_IFIELD [] =
{
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_SPR_H] } },
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_SPR_L] } },
    { 0, { (const PTR) 0 } }
};
const CGEN_MAYBE_MULTI_IFLD FRV_F_LABEL24_MULTI_IFIELD [] =
{
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LABELH6] } },
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LABELL18] } },
    { 0, { (const PTR) 0 } }
};

/* The operand table.  */

#define A(a) (1 << CGEN_OPERAND_##a)
#define OPERAND(op) FRV_OPERAND_##op

const CGEN_OPERAND frv_cgen_operand_table[] =
{
/* pc: program counter */
  { "pc", FRV_OPERAND_PC, HW_H_PC, 0, 0,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_NIL] } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* pack: packing bit */
  { "pack", FRV_OPERAND_PACK, HW_H_PACK, 31, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_PACK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* GRi: source register 1 */
  { "GRi", FRV_OPERAND_GRI, HW_H_GR, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_GRI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* GRj: source register 2 */
  { "GRj", FRV_OPERAND_GRJ, HW_H_GR, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_GRJ] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* GRk: destination register */
  { "GRk", FRV_OPERAND_GRK, HW_H_GR, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_GRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* GRkhi: destination register */
  { "GRkhi", FRV_OPERAND_GRKHI, HW_H_GR_HI, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_GRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* GRklo: destination register */
  { "GRklo", FRV_OPERAND_GRKLO, HW_H_GR_LO, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_GRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* GRdoublek: destination register */
  { "GRdoublek", FRV_OPERAND_GRDOUBLEK, HW_H_GR_DOUBLE, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_GRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ACC40Si: signed accumulator */
  { "ACC40Si", FRV_OPERAND_ACC40SI, HW_H_ACC40S, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ACC40SI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ACC40Ui: unsigned accumulator */
  { "ACC40Ui", FRV_OPERAND_ACC40UI, HW_H_ACC40U, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ACC40UI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ACC40Sk: target accumulator */
  { "ACC40Sk", FRV_OPERAND_ACC40SK, HW_H_ACC40S, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ACC40SK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ACC40Uk: target accumulator */
  { "ACC40Uk", FRV_OPERAND_ACC40UK, HW_H_ACC40U, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ACC40UK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ACCGi: source register */
  { "ACCGi", FRV_OPERAND_ACCGI, HW_H_ACCG, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ACCGI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ACCGk: target register */
  { "ACCGk", FRV_OPERAND_ACCGK, HW_H_ACCG, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ACCGK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CPRi: source register */
  { "CPRi", FRV_OPERAND_CPRI, HW_H_CPR, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CPRI] } }, 
    { 0, { { { (1<<MACH_FRV), 0 } } } }  },
/* CPRj: source register */
  { "CPRj", FRV_OPERAND_CPRJ, HW_H_CPR, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CPRJ] } }, 
    { 0, { { { (1<<MACH_FRV), 0 } } } }  },
/* CPRk: destination register */
  { "CPRk", FRV_OPERAND_CPRK, HW_H_CPR, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CPRK] } }, 
    { 0, { { { (1<<MACH_FRV), 0 } } } }  },
/* CPRdoublek: destination register */
  { "CPRdoublek", FRV_OPERAND_CPRDOUBLEK, HW_H_CPR_DOUBLE, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CPRK] } }, 
    { 0, { { { (1<<MACH_FRV), 0 } } } }  },
/* FRinti: source register 1 */
  { "FRinti", FRV_OPERAND_FRINTI, HW_H_FR_INT, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRintj: source register 2 */
  { "FRintj", FRV_OPERAND_FRINTJ, HW_H_FR_INT, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRJ] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRintk: target register */
  { "FRintk", FRV_OPERAND_FRINTK, HW_H_FR_INT, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRi: source register 1 */
  { "FRi", FRV_OPERAND_FRI, HW_H_FR, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRj: source register 2 */
  { "FRj", FRV_OPERAND_FRJ, HW_H_FR, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRJ] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRk: destination register */
  { "FRk", FRV_OPERAND_FRK, HW_H_FR, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRkhi: destination register */
  { "FRkhi", FRV_OPERAND_FRKHI, HW_H_FR_HI, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRklo: destination register */
  { "FRklo", FRV_OPERAND_FRKLO, HW_H_FR_LO, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRdoublei: source register 1 */
  { "FRdoublei", FRV_OPERAND_FRDOUBLEI, HW_H_FR_DOUBLE, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRdoublej: source register 2 */
  { "FRdoublej", FRV_OPERAND_FRDOUBLEJ, HW_H_FR_DOUBLE, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRJ] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRdoublek: target register */
  { "FRdoublek", FRV_OPERAND_FRDOUBLEK, HW_H_FR_DOUBLE, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CRi: source register 1 */
  { "CRi", FRV_OPERAND_CRI, HW_H_CCCR, 14, 3,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CRI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CRj: source register 2 */
  { "CRj", FRV_OPERAND_CRJ, HW_H_CCCR, 2, 3,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CRJ] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CRj_int: destination register */
  { "CRj_int", FRV_OPERAND_CRJ_INT, HW_H_CCCR, 26, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CRJ_INT] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CRj_float: destination register */
  { "CRj_float", FRV_OPERAND_CRJ_FLOAT, HW_H_CCCR, 26, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CRJ_FLOAT] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CRk: destination register */
  { "CRk", FRV_OPERAND_CRK, HW_H_CCCR, 27, 3,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* CCi: condition   register */
  { "CCi", FRV_OPERAND_CCI, HW_H_CCCR, 11, 3,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CCI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ICCi_1: condition   register */
  { "ICCi_1", FRV_OPERAND_ICCI_1, HW_H_ICCR, 11, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ICCI_1] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ICCi_2: condition   register */
  { "ICCi_2", FRV_OPERAND_ICCI_2, HW_H_ICCR, 26, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ICCI_2] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* ICCi_3: condition   register */
  { "ICCi_3", FRV_OPERAND_ICCI_3, HW_H_ICCR, 1, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_ICCI_3] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FCCi_1: condition   register */
  { "FCCi_1", FRV_OPERAND_FCCI_1, HW_H_FCCR, 11, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FCCI_1] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FCCi_2: condition   register */
  { "FCCi_2", FRV_OPERAND_FCCI_2, HW_H_FCCR, 26, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FCCI_2] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FCCi_3: condition   register */
  { "FCCi_3", FRV_OPERAND_FCCI_3, HW_H_FCCR, 1, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FCCI_3] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FCCk: condition   register */
  { "FCCk", FRV_OPERAND_FCCK, HW_H_FCCR, 26, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FCCK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* eir: exception insn reg */
  { "eir", FRV_OPERAND_EIR, HW_H_UINT, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_EIR] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* s10: 10 bit signed immediate */
  { "s10", FRV_OPERAND_S10, HW_H_SINT, 9, 10,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_S10] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* u16: 16 bit unsigned immediate */
  { "u16", FRV_OPERAND_U16, HW_H_UINT, 15, 16,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_U16] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* s16: 16 bit signed   immediate */
  { "s16", FRV_OPERAND_S16, HW_H_SINT, 15, 16,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_S16] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* s6: 6  bit signed   immediate */
  { "s6", FRV_OPERAND_S6, HW_H_SINT, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_S6] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* s6_1: 6  bit signed   immediate */
  { "s6_1", FRV_OPERAND_S6_1, HW_H_SINT, 11, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_S6_1] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* u6: 6  bit unsigned immediate */
  { "u6", FRV_OPERAND_U6, HW_H_UINT, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_U6] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* s5: 5  bit signed   immediate */
  { "s5", FRV_OPERAND_S5, HW_H_SINT, 4, 5,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_S5] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* cond: conditional arithmetic */
  { "cond", FRV_OPERAND_COND, HW_H_UINT, 8, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_COND] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* ccond: lr branch condition */
  { "ccond", FRV_OPERAND_CCOND, HW_H_UINT, 12, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_CCOND] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* hint: 2 bit branch predictor */
  { "hint", FRV_OPERAND_HINT, HW_H_UINT, 17, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_HINT] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* hint_taken: 2 bit branch predictor */
  { "hint_taken", FRV_OPERAND_HINT_TAKEN, HW_H_HINT_TAKEN, 17, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_HINT] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* hint_not_taken: 2 bit branch predictor */
  { "hint_not_taken", FRV_OPERAND_HINT_NOT_TAKEN, HW_H_HINT_NOT_TAKEN, 17, 2,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_HINT] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* LI: link indicator */
  { "LI", FRV_OPERAND_LI, HW_H_UINT, 25, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* lock: cache lock indicator */
  { "lock", FRV_OPERAND_LOCK, HW_H_UINT, 25, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LOCK] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* debug: debug mode indicator */
  { "debug", FRV_OPERAND_DEBUG, HW_H_UINT, 25, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_DEBUG] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* ae: all entries indicator */
  { "ae", FRV_OPERAND_AE, HW_H_UINT, 25, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_AE] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* label16: 18 bit pc relative address */
  { "label16", FRV_OPERAND_LABEL16, HW_H_IADDR, 15, 16,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LABEL16] } }, 
    { 0|A(PCREL_ADDR), { { { (1<<MACH_BASE), 0 } } } }  },
/* LRAE: Load Real Address E flag */
  { "LRAE", FRV_OPERAND_LRAE, HW_H_UINT, 5, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LRAE] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* LRAD: Load Real Address D flag */
  { "LRAD", FRV_OPERAND_LRAD, HW_H_UINT, 4, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LRAD] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* LRAS: Load Real Address S flag */
  { "LRAS", FRV_OPERAND_LRAS, HW_H_UINT, 3, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_LRAS] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* TLBPRopx: TLB Probe operation number */
  { "TLBPRopx", FRV_OPERAND_TLBPROPX, HW_H_UINT, 28, 3,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_TLBPROPX] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* TLBPRL: TLB Probe L flag */
  { "TLBPRL", FRV_OPERAND_TLBPRL, HW_H_UINT, 25, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_TLBPRL] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* A0: A==0 operand of mclracc */
  { "A0", FRV_OPERAND_A0, HW_H_UINT, 17, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_A] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* A1: A==1 operand of mclracc */
  { "A1", FRV_OPERAND_A1, HW_H_UINT, 17, 1,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_A] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRintieven: (even) source register 1 */
  { "FRintieven", FRV_OPERAND_FRINTIEVEN, HW_H_FR_INT, 17, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRI] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRintjeven: (even) source register 2 */
  { "FRintjeven", FRV_OPERAND_FRINTJEVEN, HW_H_FR_INT, 5, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRJ] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* FRintkeven: (even) target register */
  { "FRintkeven", FRV_OPERAND_FRINTKEVEN, HW_H_FR_INT, 30, 6,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_FRK] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* d12: 12 bit signed immediate */
  { "d12", FRV_OPERAND_D12, HW_H_SINT, 11, 12,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_D12] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* s12: 12 bit signed immediate */
  { "s12", FRV_OPERAND_S12, HW_H_SINT, 11, 12,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_D12] } }, 
    { 0|A(HASH_PREFIX), { { { (1<<MACH_BASE), 0 } } } }  },
/* u12: 12 bit signed immediate */
  { "u12", FRV_OPERAND_U12, HW_H_SINT, 5, 12,
    { 2, { (const PTR) &FRV_F_U12_MULTI_IFIELD[0] } }, 
    { 0|A(HASH_PREFIX)|A(VIRTUAL), { { { (1<<MACH_BASE), 0 } } } }  },
/* spr: special purpose register */
  { "spr", FRV_OPERAND_SPR, HW_H_SPR, 17, 12,
    { 2, { (const PTR) &FRV_F_SPR_MULTI_IFIELD[0] } }, 
    { 0|A(VIRTUAL), { { { (1<<MACH_BASE), 0 } } } }  },
/* ulo16: 16 bit unsigned immediate, for #lo() */
  { "ulo16", FRV_OPERAND_ULO16, HW_H_UINT, 15, 16,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_U16] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* slo16: 16 bit unsigned immediate, for #lo() */
  { "slo16", FRV_OPERAND_SLO16, HW_H_SINT, 15, 16,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_S16] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* uhi16: 16 bit unsigned immediate, for #hi() */
  { "uhi16", FRV_OPERAND_UHI16, HW_H_UINT, 15, 16,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_U16] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* label24: 26 bit pc relative address */
  { "label24", FRV_OPERAND_LABEL24, HW_H_IADDR, 17, 24,
    { 2, { (const PTR) &FRV_F_LABEL24_MULTI_IFIELD[0] } }, 
    { 0|A(PCREL_ADDR)|A(VIRTUAL), { { { (1<<MACH_BASE), 0 } } } }  },
/* psr_esr: PSR.ESR bit */
  { "psr_esr", FRV_OPERAND_PSR_ESR, HW_H_PSR_ESR, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* psr_s: PSR.S   bit */
  { "psr_s", FRV_OPERAND_PSR_S, HW_H_PSR_S, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* psr_ps: PSR.PS  bit */
  { "psr_ps", FRV_OPERAND_PSR_PS, HW_H_PSR_PS, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* psr_et: PSR.ET  bit */
  { "psr_et", FRV_OPERAND_PSR_ET, HW_H_PSR_ET, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* bpsr_bs: BPSR.BS  bit */
  { "bpsr_bs", FRV_OPERAND_BPSR_BS, HW_H_BPSR_BS, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* bpsr_bet: BPSR.BET bit */
  { "bpsr_bet", FRV_OPERAND_BPSR_BET, HW_H_BPSR_BET, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* tbr_tba: TBR.TBA */
  { "tbr_tba", FRV_OPERAND_TBR_TBA, HW_H_TBR_TBA, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* tbr_tt: TBR.TT */
  { "tbr_tt", FRV_OPERAND_TBR_TT, HW_H_TBR_TT, 0, 0,
    { 0, { (const PTR) 0 } }, 
    { 0|A(SEM_ONLY), { { { (1<<MACH_BASE), 0 } } } }  },
/* ldann: ld annotation */
  { "ldann", FRV_OPERAND_LDANN, HW_H_RELOC_ANN, 0, 0,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_RELOC_ANN] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* lddann: ldd annotation */
  { "lddann", FRV_OPERAND_LDDANN, HW_H_RELOC_ANN, 0, 0,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_RELOC_ANN] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* callann: call annotation */
  { "callann", FRV_OPERAND_CALLANN, HW_H_RELOC_ANN, 0, 0,
    { 0, { (const PTR) &frv_cgen_ifld_table[FRV_F_RELOC_ANN] } }, 
    { 0, { { { (1<<MACH_BASE), 0 } } } }  },
/* sentinel */
  { 0, 0, 0, 0, 0,
    { 0, { (const PTR) 0 } },
    { 0, { { { (1<<MACH_BASE), 0 } } } } }
};

#undef A


/* The instruction table.  */

#define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
#define A(a) (1 << CGEN_INSN_##a)

static const CGEN_IBASE frv_cgen_insn_table[MAX_INSNS] =
{
  /* Special null first entry.
     A `num' value of zero is thus invalid.
     Also, the special `invalid' insn resides here.  */
  { 0, 0, 0, 0, { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_NIL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } } },
/* add$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_ADD, "add", "add", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sub$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SUB, "sub", "sub", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* and$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_AND, "and", "and", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* or$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_OR, "or", "or", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* xor$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_XOR, "xor", "xor", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* not$pack $GRj,$GRk */
  {
    FRV_INSN_NOT, "not", "not", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sdiv$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SDIV, "sdiv", "sdiv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* nsdiv$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_NSDIV, "nsdiv", "nsdiv", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* udiv$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_UDIV, "udiv", "udiv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* nudiv$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_NUDIV, "nudiv", "nudiv", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* smul$pack $GRi,$GRj,$GRdoublek */
  {
    FRV_INSN_SMUL, "smul", "smul", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* umul$pack $GRi,$GRj,$GRdoublek */
  {
    FRV_INSN_UMUL, "umul", "umul", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* smu$pack $GRi,$GRj */
  {
    FRV_INSN_SMU, "smu", "smu", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_IACC, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* smass$pack $GRi,$GRj */
  {
    FRV_INSN_SMASS, "smass", "smass", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_IACC, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* smsss$pack $GRi,$GRj */
  {
    FRV_INSN_SMSSS, "smsss", "smsss", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_IACC, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* sll$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SLL, "sll", "sll", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* srl$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SRL, "srl", "srl", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sra$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SRA, "sra", "sra", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* slass$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SLASS, "slass", "slass", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* scutss$pack $GRj,$GRk */
  {
    FRV_INSN_SCUTSS, "scutss", "scutss", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* scan$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SCAN, "scan", "scan", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_SCAN, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cadd$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CADD, "cadd", "cadd", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csub$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSUB, "csub", "csub", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cand$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CAND, "cand", "cand", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cor$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_COR, "cor", "cor", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cxor$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CXOR, "cxor", "cxor", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cnot$pack $GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CNOT, "cnot", "cnot", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csmul$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
  {
    FRV_INSN_CSMUL, "csmul", "csmul", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* csdiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSDIV, "csdiv", "csdiv", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* cudiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CUDIV, "cudiv", "cudiv", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* csll$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSLL, "csll", "csll", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csrl$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSRL, "csrl", "csrl", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csra$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSRA, "csra", "csra", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cscan$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSCAN, "cscan", "cscan", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_SCAN, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_ADDCC, "addcc", "addcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_SUBCC, "subcc", "subcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* andcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_ANDCC, "andcc", "andcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* orcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_ORCC, "orcc", "orcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* xorcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_XORCC, "xorcc", "xorcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sllcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_SLLCC, "sllcc", "sllcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* srlcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_SRLCC, "srlcc", "srlcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sracc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_SRACC, "sracc", "sracc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* smulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
  {
    FRV_INSN_SMULCC, "smulcc", "smulcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* umulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
  {
    FRV_INSN_UMULCC, "umulcc", "umulcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* caddcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CADDCC, "caddcc", "caddcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csubcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSUBCC, "csubcc", "csubcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csmulcc$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
  {
    FRV_INSN_CSMULCC, "csmulcc", "csmulcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* candcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CANDCC, "candcc", "candcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* corcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CORCC, "corcc", "corcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cxorcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CXORCC, "cxorcc", "cxorcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csllcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSLLCC, "csllcc", "csllcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csrlcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSRLCC, "csrlcc", "csrlcc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* csracc$pack $GRi,$GRj,$GRk,$CCi,$cond */
  {
    FRV_INSN_CSRACC, "csracc", "csracc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addx$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_ADDX, "addx", "addx", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subx$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_SUBX, "subx", "subx", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_ADDXCC, "addxcc", "addxcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
  {
    FRV_INSN_SUBXCC, "subxcc", "subxcc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addss$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_ADDSS, "addss", "addss", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* subss$pack $GRi,$GRj,$GRk */
  {
    FRV_INSN_SUBSS, "subss", "subss", 32,
    { 0|A(AUDIO), { { { (1<<MACH_FR400)|(1<<MACH_FR450), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* addi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_ADDI, "addi", "addi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_SUBI, "subi", "subi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* andi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_ANDI, "andi", "andi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* ori$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_ORI, "ori", "ori", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* xori$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_XORI, "xori", "xori", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sdivi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_SDIVI, "sdivi", "sdivi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* nsdivi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_NSDIVI, "nsdivi", "nsdivi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* udivi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_UDIVI, "udivi", "udivi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* nudivi$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_NUDIVI, "nudivi", "nudivi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* smuli$pack $GRi,$s12,$GRdoublek */
  {
    FRV_INSN_SMULI, "smuli", "smuli", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* umuli$pack $GRi,$s12,$GRdoublek */
  {
    FRV_INSN_UMULI, "umuli", "umuli", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* slli$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_SLLI, "slli", "slli", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* srli$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_SRLI, "srli", "srli", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* srai$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_SRAI, "srai", "srai", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* scani$pack $GRi,$s12,$GRk */
  {
    FRV_INSN_SCANI, "scani", "scani", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_SCAN, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_ADDICC, "addicc", "addicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_SUBICC, "subicc", "subicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* andicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_ANDICC, "andicc", "andicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* oricc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_ORICC, "oricc", "oricc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* xoricc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_XORICC, "xoricc", "xoricc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* smulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
  {
    FRV_INSN_SMULICC, "smulicc", "smulicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* umulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
  {
    FRV_INSN_UMULICC, "umulicc", "umulicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MULT_DIV, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_2, 0 } } } }
  },
/* sllicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_SLLICC, "sllicc", "sllicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* srlicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_SRLICC, "srlicc", "srlicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sraicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_SRAICC, "sraicc", "sraicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addxi$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_ADDXI, "addxi", "addxi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subxi$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_SUBXI, "subxi", "subxi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* addxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_ADDXICC, "addxicc", "addxicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* subxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
  {
    FRV_INSN_SUBXICC, "subxicc", "subxicc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cmpb$pack $GRi,$GRj,$ICCi_1 */
  {
    FRV_INSN_CMPB, "cmpb", "cmpb", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* cmpba$pack $GRi,$GRj,$ICCi_1 */
  {
    FRV_INSN_CMPBA, "cmpba", "cmpba", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* setlo$pack $ulo16,$GRklo */
  {
    FRV_INSN_SETLO, "setlo", "setlo", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* sethi$pack $uhi16,$GRkhi */
  {
    FRV_INSN_SETHI, "sethi", "sethi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* setlos$pack $slo16,$GRk */
  {
    FRV_INSN_SETLOS, "setlos", "setlos", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_I_1, 0 } } } }
  },
/* ldsb$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDSB, "ldsb", "ldsb", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldub$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDUB, "ldub", "ldub", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldsh$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDSH, "ldsh", "ldsh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lduh$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDUH, "lduh", "lduh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ld$pack $ldann($GRi,$GRj),$GRk */
  {
    FRV_INSN_LD, "ld", "ld", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldbf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDBF, "ldbf", "ldbf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldhf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDHF, "ldhf", "ldhf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDF, "ldf", "ldf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldc$pack @($GRi,$GRj),$CPRk */
  {
    FRV_INSN_LDC, "ldc", "ldc", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldsb$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDSB, "nldsb", "nldsb", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldub$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDUB, "nldub", "nldub", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldsh$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDSH, "nldsh", "nldsh", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlduh$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDUH, "nlduh", "nlduh", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nld$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLD, "nld", "nld", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldbf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDBF, "nldbf", "nldbf", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldhf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDHF, "nldhf", "nldhf", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDF, "nldf", "nldf", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldd$pack $lddann($GRi,$GRj),$GRdoublek */
  {
    FRV_INSN_LDD, "ldd", "ldd", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddf$pack @($GRi,$GRj),$FRdoublek */
  {
    FRV_INSN_LDDF, "lddf", "lddf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddc$pack @($GRi,$GRj),$CPRdoublek */
  {
    FRV_INSN_LDDC, "lddc", "lddc", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldd$pack @($GRi,$GRj),$GRdoublek */
  {
    FRV_INSN_NLDD, "nldd", "nldd", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlddf$pack @($GRi,$GRj),$FRdoublek */
  {
    FRV_INSN_NLDDF, "nlddf", "nlddf", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldq$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDQ, "ldq", "ldq", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldqf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDQF, "ldqf", "ldqf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldqc$pack @($GRi,$GRj),$CPRk */
  {
    FRV_INSN_LDQC, "ldqc", "ldqc", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldq$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDQ, "nldq", "nldq", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldqf$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDQF, "nldqf", "nldqf", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldsbu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDSBU, "ldsbu", "ldsbu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldubu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDUBU, "ldubu", "ldubu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldshu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDSHU, "ldshu", "ldshu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lduhu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDUHU, "lduhu", "lduhu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDU, "ldu", "ldu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldsbu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDSBU, "nldsbu", "nldsbu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldubu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDUBU, "nldubu", "nldubu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldshu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDSHU, "nldshu", "nldshu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlduhu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDUHU, "nlduhu", "nlduhu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDU, "nldu", "nldu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldbfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDBFU, "ldbfu", "ldbfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldhfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDHFU, "ldhfu", "ldhfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDFU, "ldfu", "ldfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldcu$pack @($GRi,$GRj),$CPRk */
  {
    FRV_INSN_LDCU, "ldcu", "ldcu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldbfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDBFU, "nldbfu", "nldbfu", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldhfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDHFU, "nldhfu", "nldhfu", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDFU, "nldfu", "nldfu", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddu$pack @($GRi,$GRj),$GRdoublek */
  {
    FRV_INSN_LDDU, "lddu", "lddu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlddu$pack @($GRi,$GRj),$GRdoublek */
  {
    FRV_INSN_NLDDU, "nlddu", "nlddu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddfu$pack @($GRi,$GRj),$FRdoublek */
  {
    FRV_INSN_LDDFU, "lddfu", "lddfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddcu$pack @($GRi,$GRj),$CPRdoublek */
  {
    FRV_INSN_LDDCU, "lddcu", "lddcu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlddfu$pack @($GRi,$GRj),$FRdoublek */
  {
    FRV_INSN_NLDDFU, "nlddfu", "nlddfu", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldqu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_LDQU, "ldqu", "ldqu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldqu$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_NLDQU, "nldqu", "nldqu", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldqfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_LDQFU, "ldqfu", "ldqfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldqcu$pack @($GRi,$GRj),$CPRk */
  {
    FRV_INSN_LDQCU, "ldqcu", "ldqcu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldqfu$pack @($GRi,$GRj),$FRintk */
  {
    FRV_INSN_NLDQFU, "nldqfu", "nldqfu", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldsbi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_LDSBI, "ldsbi", "ldsbi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldshi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_LDSHI, "ldshi", "ldshi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_LDI, "ldi", "ldi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldubi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_LDUBI, "ldubi", "ldubi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lduhi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_LDUHI, "lduhi", "lduhi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldbfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_LDBFI, "ldbfi", "ldbfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldhfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_LDHFI, "ldhfi", "ldhfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_LDFI, "ldfi", "ldfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldsbi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_NLDSBI, "nldsbi", "nldsbi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldubi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_NLDUBI, "nldubi", "nldubi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldshi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_NLDSHI, "nldshi", "nldshi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlduhi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_NLDUHI, "nlduhi", "nlduhi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_NLDI, "nldi", "nldi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldbfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_NLDBFI, "nldbfi", "nldbfi", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldhfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_NLDHFI, "nldhfi", "nldhfi", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nldfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_NLDFI, "nldfi", "nldfi", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddi$pack @($GRi,$d12),$GRdoublek */
  {
    FRV_INSN_LDDI, "lddi", "lddi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* lddfi$pack @($GRi,$d12),$FRdoublek */
  {
    FRV_INSN_LDDFI, "lddfi", "lddfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlddi$pack @($GRi,$d12),$GRdoublek */
  {
    FRV_INSN_NLDDI, "nlddi", "nlddi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* nlddfi$pack @($GRi,$d12),$FRdoublek */
  {
    FRV_INSN_NLDDFI, "nlddfi", "nlddfi", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* ldqi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_LDQI, "ldqi", "ldqi", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* ldqfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_LDQFI, "ldqfi", "ldqfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nldqfi$pack @($GRi,$d12),$FRintk */
  {
    FRV_INSN_NLDQFI, "nldqfi", "nldqfi", 32,
    { 0|A(FR_ACCESS)|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stb$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STB, "stb", "stb", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sth$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STH, "sth", "sth", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* st$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_ST, "st", "st", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stbf$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STBF, "stbf", "stbf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sthf$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STHF, "sthf", "sthf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stf$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STF, "stf", "stf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stc$pack $CPRk,@($GRi,$GRj) */
  {
    FRV_INSN_STC, "stc", "stc", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* std$pack $GRdoublek,@($GRi,$GRj) */
  {
    FRV_INSN_STD, "std", "std", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdf$pack $FRdoublek,@($GRi,$GRj) */
  {
    FRV_INSN_STDF, "stdf", "stdf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdc$pack $CPRdoublek,@($GRi,$GRj) */
  {
    FRV_INSN_STDC, "stdc", "stdc", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stq$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STQ, "stq", "stq", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stqf$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STQF, "stqf", "stqf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stqc$pack $CPRk,@($GRi,$GRj) */
  {
    FRV_INSN_STQC, "stqc", "stqc", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stbu$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STBU, "stbu", "stbu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sthu$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STHU, "sthu", "sthu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stu$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STU, "stu", "stu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stbfu$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STBFU, "stbfu", "stbfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sthfu$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STHFU, "sthfu", "sthfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stfu$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STFU, "stfu", "stfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stcu$pack $CPRk,@($GRi,$GRj) */
  {
    FRV_INSN_STCU, "stcu", "stcu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdu$pack $GRdoublek,@($GRi,$GRj) */
  {
    FRV_INSN_STDU, "stdu", "stdu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdfu$pack $FRdoublek,@($GRi,$GRj) */
  {
    FRV_INSN_STDFU, "stdfu", "stdfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdcu$pack $CPRdoublek,@($GRi,$GRj) */
  {
    FRV_INSN_STDCU, "stdcu", "stdcu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stqu$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_STQU, "stqu", "stqu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stqfu$pack $FRintk,@($GRi,$GRj) */
  {
    FRV_INSN_STQFU, "stqfu", "stqfu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stqcu$pack $CPRk,@($GRi,$GRj) */
  {
    FRV_INSN_STQCU, "stqcu", "stqcu", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cldsb$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDSB, "cldsb", "cldsb", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldub$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDUB, "cldub", "cldub", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldsh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDSH, "cldsh", "cldsh", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* clduh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDUH, "clduh", "clduh", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cld$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLD, "cld", "cld", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldbf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
  {
    FRV_INSN_CLDBF, "cldbf", "cldbf", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldhf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
  {
    FRV_INSN_CLDHF, "cldhf", "cldhf", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
  {
    FRV_INSN_CLDF, "cldf", "cldf", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldd$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
  {
    FRV_INSN_CLDD, "cldd", "cldd", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* clddf$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
  {
    FRV_INSN_CLDDF, "clddf", "clddf", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldq$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDQ, "cldq", "cldq", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cldsbu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDSBU, "cldsbu", "cldsbu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldubu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDUBU, "cldubu", "cldubu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldshu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDSHU, "cldshu", "cldshu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* clduhu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDUHU, "clduhu", "clduhu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDU, "cldu", "cldu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldbfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
  {
    FRV_INSN_CLDBFU, "cldbfu", "cldbfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldhfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
  {
    FRV_INSN_CLDHFU, "cldhfu", "cldhfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
  {
    FRV_INSN_CLDFU, "cldfu", "cldfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* clddu$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
  {
    FRV_INSN_CLDDU, "clddu", "clddu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* clddfu$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
  {
    FRV_INSN_CLDDFU, "clddfu", "clddfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_I_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_I_3, 0 } } } }
  },
/* cldqu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CLDQU, "cldqu", "cldqu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_FRV), 0 } }, { { UNIT_LOAD, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cstb$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTB, "cstb", "cstb", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* csth$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTH, "csth", "csth", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cst$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CST, "cst", "cst", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstbf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTBF, "cstbf", "cstbf", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* csthf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTHF, "csthf", "csthf", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTF, "cstf", "cstf", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstd$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTD, "cstd", "cstd", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstdf$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTDF, "cstdf", "cstdf", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstq$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTQ, "cstq", "cstq", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cstbu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTBU, "cstbu", "cstbu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* csthu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTHU, "csthu", "csthu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTU, "cstu", "cstu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstbfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTBFU, "cstbfu", "cstbfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* csthfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTHFU, "csthfu", "csthfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTFU, "cstfu", "cstfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstdu$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTDU, "cstdu", "cstdu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* cstdfu$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CSTDFU, "cstdfu", "cstdfu", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stbi$pack $GRk,@($GRi,$d12) */
  {
    FRV_INSN_STBI, "stbi", "stbi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sthi$pack $GRk,@($GRi,$d12) */
  {
    FRV_INSN_STHI, "sthi", "sthi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sti$pack $GRk,@($GRi,$d12) */
  {
    FRV_INSN_STI, "sti", "sti", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stbfi$pack $FRintk,@($GRi,$d12) */
  {
    FRV_INSN_STBFI, "stbfi", "stbfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* sthfi$pack $FRintk,@($GRi,$d12) */
  {
    FRV_INSN_STHFI, "sthfi", "sthfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stfi$pack $FRintk,@($GRi,$d12) */
  {
    FRV_INSN_STFI, "stfi", "stfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdi$pack $GRdoublek,@($GRi,$d12) */
  {
    FRV_INSN_STDI, "stdi", "stdi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stdfi$pack $FRdoublek,@($GRi,$d12) */
  {
    FRV_INSN_STDFI, "stdfi", "stdfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_I_3, 0 } }, { { FR450_MAJOR_I_3, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_I_4, 0 } } } }
  },
/* stqi$pack $GRk,@($GRi,$d12) */
  {
    FRV_INSN_STQI, "stqi", "stqi", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* stqfi$pack $FRintk,@($GRi,$d12) */
  {
    FRV_INSN_STQFI, "stqfi", "stqfi", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_STORE, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* swap$pack @($GRi,$GRj),$GRk */
  {
    FRV_INSN_SWAP, "swap", "swap", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* swapi$pack @($GRi,$d12),$GRk */
  {
    FRV_INSN_SWAPI, "swapi", "swapi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* cswap$pack @($GRi,$GRj),$GRk,$CCi,$cond */
  {
    FRV_INSN_CSWAP, "cswap", "cswap", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* movgf$pack $GRj,$FRintk */
  {
    FRV_INSN_MOVGF, "movgf", "movgf", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* movfg$pack $FRintk,$GRj */
  {
    FRV_INSN_MOVFG, "movfg", "movfg", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* movgfd$pack $GRj,$FRintk */
  {
    FRV_INSN_MOVGFD, "movgfd", "movgfd", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* movfgd$pack $FRintk,$GRj */
  {
    FRV_INSN_MOVFGD, "movfgd", "movfgd", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* movgfq$pack $GRj,$FRintk */
  {
    FRV_INSN_MOVGFQ, "movgfq", "movgfq", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* movfgq$pack $FRintk,$GRj */
  {
    FRV_INSN_MOVFGQ, "movfgq", "movfgq", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cmovgf$pack $GRj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMOVGF, "cmovgf", "cmovgf", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* cmovfg$pack $FRintk,$GRj,$CCi,$cond */
  {
    FRV_INSN_CMOVFG, "cmovfg", "cmovfg", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* cmovgfd$pack $GRj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMOVGFD, "cmovgfd", "cmovgfd", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* cmovfgd$pack $FRintk,$GRj,$CCi,$cond */
  {
    FRV_INSN_CMOVFGD, "cmovfgd", "cmovfgd", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_4, 0 } }, { { FR450_MAJOR_I_4, 0 } }, { { FR500_MAJOR_I_4, 0 } }, { { FR550_MAJOR_I_5, 0 } } } }
  },
/* movgs$pack $GRj,$spr */
  {
    FRV_INSN_MOVGS, "movgs", "movgs", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* movsg$pack $spr,$GRj */
  {
    FRV_INSN_MOVSG, "movsg", "movsg", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* bra$pack $hint_taken$label16 */
  {
    FRV_INSN_BRA, "bra", "bra", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bno$pack$hint_not_taken */
  {
    FRV_INSN_BNO, "bno", "bno", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* beq$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BEQ, "beq", "beq", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bne$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BNE, "bne", "bne", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* ble$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BLE, "ble", "ble", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bgt$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BGT, "bgt", "bgt", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* blt$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BLT, "blt", "blt", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bge$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BGE, "bge", "bge", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bls$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BLS, "bls", "bls", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bhi$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BHI, "bhi", "bhi", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bc$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BC, "bc", "bc", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bnc$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BNC, "bnc", "bnc", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bn$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BN, "bn", "bn", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bp$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BP, "bp", "bp", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bv$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BV, "bv", "bv", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bnv$pack $ICCi_2,$hint,$label16 */
  {
    FRV_INSN_BNV, "bnv", "bnv", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbra$pack $hint_taken$label16 */
  {
    FRV_INSN_FBRA, "fbra", "fbra", 32,
    { 0|A(FR_ACCESS)|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbno$pack$hint_not_taken */
  {
    FRV_INSN_FBNO, "fbno", "fbno", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbne$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBNE, "fbne", "fbne", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbeq$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBEQ, "fbeq", "fbeq", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fblg$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBLG, "fblg", "fblg", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbue$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBUE, "fbue", "fbue", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbul$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBUL, "fbul", "fbul", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbge$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBGE, "fbge", "fbge", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fblt$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBLT, "fblt", "fblt", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbuge$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBUGE, "fbuge", "fbuge", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbug$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBUG, "fbug", "fbug", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fble$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBLE, "fble", "fble", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbgt$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBGT, "fbgt", "fbgt", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbule$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBULE, "fbule", "fbule", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbu$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBU, "fbu", "fbu", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* fbo$pack $FCCi_2,$hint,$label16 */
  {
    FRV_INSN_FBO, "fbo", "fbo", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_1, 0 } }, { { FR450_MAJOR_B_1, 0 } }, { { FR500_MAJOR_B_1, 0 } }, { { FR550_MAJOR_B_1, 0 } } } }
  },
/* bctrlr$pack $ccond,$hint */
  {
    FRV_INSN_BCTRLR, "bctrlr", "bctrlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bralr$pack$hint_taken */
  {
    FRV_INSN_BRALR, "bralr", "bralr", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bnolr$pack$hint_not_taken */
  {
    FRV_INSN_BNOLR, "bnolr", "bnolr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* beqlr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BEQLR, "beqlr", "beqlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bnelr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BNELR, "bnelr", "bnelr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* blelr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BLELR, "blelr", "blelr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bgtlr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BGTLR, "bgtlr", "bgtlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bltlr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BLTLR, "bltlr", "bltlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bgelr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BGELR, "bgelr", "bgelr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* blslr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BLSLR, "blslr", "blslr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bhilr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BHILR, "bhilr", "bhilr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bclr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BCLR, "bclr", "bclr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bnclr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BNCLR, "bnclr", "bnclr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bnlr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BNLR, "bnlr", "bnlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bplr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BPLR, "bplr", "bplr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bvlr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BVLR, "bvlr", "bvlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bnvlr$pack $ICCi_2,$hint */
  {
    FRV_INSN_BNVLR, "bnvlr", "bnvlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbralr$pack$hint_taken */
  {
    FRV_INSN_FBRALR, "fbralr", "fbralr", 32,
    { 0|A(FR_ACCESS)|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbnolr$pack$hint_not_taken */
  {
    FRV_INSN_FBNOLR, "fbnolr", "fbnolr", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbeqlr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBEQLR, "fbeqlr", "fbeqlr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbnelr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBNELR, "fbnelr", "fbnelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fblglr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBLGLR, "fblglr", "fblglr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbuelr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBUELR, "fbuelr", "fbuelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbullr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBULLR, "fbullr", "fbullr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbgelr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBGELR, "fbgelr", "fbgelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbltlr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBLTLR, "fbltlr", "fbltlr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbugelr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBUGELR, "fbugelr", "fbugelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbuglr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBUGLR, "fbuglr", "fbuglr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fblelr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBLELR, "fblelr", "fblelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbgtlr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBGTLR, "fbgtlr", "fbgtlr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbulelr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBULELR, "fbulelr", "fbulelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbulr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBULR, "fbulr", "fbulr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* fbolr$pack $FCCi_2,$hint */
  {
    FRV_INSN_FBOLR, "fbolr", "fbolr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_B_3, 0 } } } }
  },
/* bcralr$pack $ccond$hint_taken */
  {
    FRV_INSN_BCRALR, "bcralr", "bcralr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcnolr$pack$hint_not_taken */
  {
    FRV_INSN_BCNOLR, "bcnolr", "bcnolr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bceqlr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCEQLR, "bceqlr", "bceqlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcnelr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCNELR, "bcnelr", "bcnelr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bclelr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCLELR, "bclelr", "bclelr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcgtlr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCGTLR, "bcgtlr", "bcgtlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcltlr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCLTLR, "bcltlr", "bcltlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcgelr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCGELR, "bcgelr", "bcgelr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bclslr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCLSLR, "bclslr", "bclslr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bchilr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCHILR, "bchilr", "bchilr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcclr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCCLR, "bcclr", "bcclr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcnclr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCNCLR, "bcnclr", "bcnclr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcnlr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCNLR, "bcnlr", "bcnlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcplr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCPLR, "bcplr", "bcplr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcvlr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCVLR, "bcvlr", "bcvlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* bcnvlr$pack $ICCi_2,$ccond,$hint */
  {
    FRV_INSN_BCNVLR, "bcnvlr", "bcnvlr", 32,
    { 0|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbralr$pack $ccond$hint_taken */
  {
    FRV_INSN_FCBRALR, "fcbralr", "fcbralr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbnolr$pack$hint_not_taken */
  {
    FRV_INSN_FCBNOLR, "fcbnolr", "fcbnolr", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbeqlr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBEQLR, "fcbeqlr", "fcbeqlr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbnelr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBNELR, "fcbnelr", "fcbnelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcblglr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBLGLR, "fcblglr", "fcblglr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbuelr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBUELR, "fcbuelr", "fcbuelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbullr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBULLR, "fcbullr", "fcbullr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbgelr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBGELR, "fcbgelr", "fcbgelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbltlr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBLTLR, "fcbltlr", "fcbltlr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbugelr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBUGELR, "fcbugelr", "fcbugelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbuglr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBUGLR, "fcbuglr", "fcbuglr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcblelr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBLELR, "fcblelr", "fcblelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbgtlr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBGTLR, "fcbgtlr", "fcbgtlr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbulelr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBULELR, "fcbulelr", "fcbulelr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbulr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBULR, "fcbulr", "fcbulr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* fcbolr$pack $FCCi_2,$ccond,$hint */
  {
    FRV_INSN_FCBOLR, "fcbolr", "fcbolr", 32,
    { 0|A(FR_ACCESS)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_2, 0 } }, { { FR450_MAJOR_B_2, 0 } }, { { FR500_MAJOR_B_2, 0 } }, { { FR550_MAJOR_B_2, 0 } } } }
  },
/* jmpl$pack @($GRi,$GRj) */
  {
    FRV_INSN_JMPL, "jmpl", "jmpl", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_5, 0 } }, { { FR450_MAJOR_I_5, 0 } }, { { FR500_MAJOR_I_5, 0 } }, { { FR550_MAJOR_I_6, 0 } } } }
  },
/* calll$pack $callann($GRi,$GRj) */
  {
    FRV_INSN_CALLL, "calll", "calll", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_5, 0 } }, { { FR450_MAJOR_I_5, 0 } }, { { FR500_MAJOR_I_5, 0 } }, { { FR550_MAJOR_I_6, 0 } } } }
  },
/* jmpil$pack @($GRi,$s12) */
  {
    FRV_INSN_JMPIL, "jmpil", "jmpil", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_5, 0 } }, { { FR450_MAJOR_I_5, 0 } }, { { FR500_MAJOR_I_5, 0 } }, { { FR550_MAJOR_I_6, 0 } } } }
  },
/* callil$pack @($GRi,$s12) */
  {
    FRV_INSN_CALLIL, "callil", "callil", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_5, 0 } }, { { FR450_MAJOR_I_5, 0 } }, { { FR500_MAJOR_I_5, 0 } }, { { FR550_MAJOR_I_6, 0 } } } }
  },
/* call$pack $label24 */
  {
    FRV_INSN_CALL, "call", "call", 32,
    { 0|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B0, 0 } }, { { FR400_MAJOR_B_4, 0 } }, { { FR450_MAJOR_B_4, 0 } }, { { FR500_MAJOR_B_4, 0 } }, { { FR550_MAJOR_B_4, 0 } } } }
  },
/* rett$pack $debug */
  {
    FRV_INSN_RETT, "rett", "rett", 32,
    { 0|A(PRIVILEGED)|A(UNCOND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* rei$pack $eir */
  {
    FRV_INSN_REI, "rei", "rei", 32,
    { 0|A(PRIVILEGED), { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* tra$pack $GRi,$GRj */
  {
    FRV_INSN_TRA, "tra", "tra", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tno$pack */
  {
    FRV_INSN_TNO, "tno", "tno", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* teq$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TEQ, "teq", "teq", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tne$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TNE, "tne", "tne", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tle$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TLE, "tle", "tle", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tgt$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TGT, "tgt", "tgt", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tlt$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TLT, "tlt", "tlt", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tge$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TGE, "tge", "tge", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tls$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TLS, "tls", "tls", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* thi$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_THI, "thi", "thi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tc$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TC, "tc", "tc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tnc$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TNC, "tnc", "tnc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tn$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TN, "tn", "tn", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tp$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TP, "tp", "tp", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tv$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TV, "tv", "tv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tnv$pack $ICCi_2,$GRi,$GRj */
  {
    FRV_INSN_TNV, "tnv", "tnv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftra$pack $GRi,$GRj */
  {
    FRV_INSN_FTRA, "ftra", "ftra", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftno$pack */
  {
    FRV_INSN_FTNO, "ftno", "ftno", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftne$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTNE, "ftne", "ftne", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* fteq$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTEQ, "fteq", "fteq", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftlg$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTLG, "ftlg", "ftlg", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftue$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTUE, "ftue", "ftue", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftul$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTUL, "ftul", "ftul", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftge$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTGE, "ftge", "ftge", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftlt$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTLT, "ftlt", "ftlt", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftuge$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTUGE, "ftuge", "ftuge", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftug$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTUG, "ftug", "ftug", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftle$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTLE, "ftle", "ftle", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftgt$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTGT, "ftgt", "ftgt", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftule$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTULE, "ftule", "ftule", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftu$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTU, "ftu", "ftu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* fto$pack $FCCi_2,$GRi,$GRj */
  {
    FRV_INSN_FTO, "fto", "fto", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tira$pack $GRi,$s12 */
  {
    FRV_INSN_TIRA, "tira", "tira", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tino$pack */
  {
    FRV_INSN_TINO, "tino", "tino", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tieq$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIEQ, "tieq", "tieq", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tine$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TINE, "tine", "tine", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tile$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TILE, "tile", "tile", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tigt$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIGT, "tigt", "tigt", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tilt$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TILT, "tilt", "tilt", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tige$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIGE, "tige", "tige", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tils$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TILS, "tils", "tils", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tihi$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIHI, "tihi", "tihi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tic$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIC, "tic", "tic", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tinc$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TINC, "tinc", "tinc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tin$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIN, "tin", "tin", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tip$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIP, "tip", "tip", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tiv$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TIV, "tiv", "tiv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* tinv$pack $ICCi_2,$GRi,$s12 */
  {
    FRV_INSN_TINV, "tinv", "tinv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftira$pack $GRi,$s12 */
  {
    FRV_INSN_FTIRA, "ftira", "ftira", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftino$pack */
  {
    FRV_INSN_FTINO, "ftino", "ftino", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftine$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTINE, "ftine", "ftine", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftieq$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIEQ, "ftieq", "ftieq", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftilg$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTILG, "ftilg", "ftilg", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftiue$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIUE, "ftiue", "ftiue", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftiul$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIUL, "ftiul", "ftiul", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftige$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIGE, "ftige", "ftige", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftilt$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTILT, "ftilt", "ftilt", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftiuge$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIUGE, "ftiuge", "ftiuge", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftiug$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIUG, "ftiug", "ftiug", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftile$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTILE, "ftile", "ftile", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftigt$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIGT, "ftigt", "ftigt", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftiule$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIULE, "ftiule", "ftiule", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftiu$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIU, "ftiu", "ftiu", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* ftio$pack $FCCi_2,$GRi,$s12 */
  {
    FRV_INSN_FTIO, "ftio", "ftio", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* break$pack */
  {
    FRV_INSN_BREAK, "break", "break", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* mtrap$pack */
  {
    FRV_INSN_MTRAP, "mtrap", "mtrap", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_1, 0 } }, { { FR450_MAJOR_C_1, 0 } }, { { FR500_MAJOR_C_1, 0 } }, { { FR550_MAJOR_C_1, 0 } } } }
  },
/* andcr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_ANDCR, "andcr", "andcr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* orcr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_ORCR, "orcr", "orcr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* xorcr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_XORCR, "xorcr", "xorcr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* nandcr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_NANDCR, "nandcr", "nandcr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* norcr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_NORCR, "norcr", "norcr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* andncr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_ANDNCR, "andncr", "andncr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* orncr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_ORNCR, "orncr", "orncr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* nandncr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_NANDNCR, "nandncr", "nandncr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* norncr$pack $CRi,$CRj,$CRk */
  {
    FRV_INSN_NORNCR, "norncr", "norncr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* notcr$pack $CRj,$CRk */
  {
    FRV_INSN_NOTCR, "notcr", "notcr", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_6, 0 } }, { { FR450_MAJOR_B_6, 0 } }, { { FR500_MAJOR_B_6, 0 } }, { { FR550_MAJOR_B_6, 0 } } } }
  },
/* ckra$pack $CRj_int */
  {
    FRV_INSN_CKRA, "ckra", "ckra", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckno$pack $CRj_int */
  {
    FRV_INSN_CKNO, "ckno", "ckno", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckeq$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKEQ, "ckeq", "ckeq", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckne$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKNE, "ckne", "ckne", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckle$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKLE, "ckle", "ckle", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckgt$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKGT, "ckgt", "ckgt", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cklt$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKLT, "cklt", "cklt", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckge$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKGE, "ckge", "ckge", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckls$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKLS, "ckls", "ckls", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckhi$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKHI, "ckhi", "ckhi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckc$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKC, "ckc", "ckc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cknc$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKNC, "cknc", "cknc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckn$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKN, "ckn", "ckn", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckp$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKP, "ckp", "ckp", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ckv$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKV, "ckv", "ckv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cknv$pack $ICCi_3,$CRj_int */
  {
    FRV_INSN_CKNV, "cknv", "cknv", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckra$pack $CRj_float */
  {
    FRV_INSN_FCKRA, "fckra", "fckra", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckno$pack $CRj_float */
  {
    FRV_INSN_FCKNO, "fckno", "fckno", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckne$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKNE, "fckne", "fckne", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckeq$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKEQ, "fckeq", "fckeq", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fcklg$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKLG, "fcklg", "fcklg", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckue$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKUE, "fckue", "fckue", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckul$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKUL, "fckul", "fckul", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckge$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKGE, "fckge", "fckge", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fcklt$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKLT, "fcklt", "fcklt", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckuge$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKUGE, "fckuge", "fckuge", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckug$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKUG, "fckug", "fckug", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckle$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKLE, "fckle", "fckle", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckgt$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKGT, "fckgt", "fckgt", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fckule$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKULE, "fckule", "fckule", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fcku$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKU, "fcku", "fcku", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* fcko$pack $FCCi_3,$CRj_float */
  {
    FRV_INSN_FCKO, "fcko", "fcko", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckra$pack $CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKRA, "cckra", "cckra", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckno$pack $CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKNO, "cckno", "cckno", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckeq$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKEQ, "cckeq", "cckeq", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckne$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKNE, "cckne", "cckne", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckle$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKLE, "cckle", "cckle", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckgt$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKGT, "cckgt", "cckgt", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ccklt$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKLT, "ccklt", "ccklt", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckge$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKGE, "cckge", "cckge", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckls$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKLS, "cckls", "cckls", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckhi$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKHI, "cckhi", "cckhi", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckc$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKC, "cckc", "cckc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ccknc$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKNC, "ccknc", "ccknc", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckn$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKN, "cckn", "cckn", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckp$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKP, "cckp", "cckp", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cckv$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKV, "cckv", "cckv", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* ccknv$pack $ICCi_3,$CRj_int,$CCi,$cond */
  {
    FRV_INSN_CCKNV, "ccknv", "ccknv", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckra$pack $CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKRA, "cfckra", "cfckra", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckno$pack $CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKNO, "cfckno", "cfckno", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckne$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKNE, "cfckne", "cfckne", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckeq$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKEQ, "cfckeq", "cfckeq", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfcklg$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKLG, "cfcklg", "cfcklg", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckue$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKUE, "cfckue", "cfckue", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckul$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKUL, "cfckul", "cfckul", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckge$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKGE, "cfckge", "cfckge", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfcklt$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKLT, "cfcklt", "cfcklt", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckuge$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKUGE, "cfckuge", "cfckuge", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckug$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKUG, "cfckug", "cfckug", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckle$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKLE, "cfckle", "cfckle", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckgt$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKGT, "cfckgt", "cfckgt", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfckule$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKULE, "cfckule", "cfckule", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfcku$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKU, "cfcku", "cfcku", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cfcko$pack $FCCi_3,$CRj_float,$CCi,$cond */
  {
    FRV_INSN_CFCKO, "cfcko", "cfcko", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_5, 0 } }, { { FR450_MAJOR_B_5, 0 } }, { { FR500_MAJOR_B_5, 0 } }, { { FR550_MAJOR_B_5, 0 } } } }
  },
/* cjmpl$pack @($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CJMPL, "cjmpl", "cjmpl", 32,
    { 0|A(CONDITIONAL)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_5, 0 } }, { { FR450_MAJOR_I_5, 0 } }, { { FR500_MAJOR_I_5, 0 } }, { { FR550_MAJOR_I_6, 0 } } } }
  },
/* ccalll$pack @($GRi,$GRj),$CCi,$cond */
  {
    FRV_INSN_CCALLL, "ccalll", "ccalll", 32,
    { 0|A(CONDITIONAL)|A(COND_CTI), { { { (1<<MACH_BASE), 0 } }, { { UNIT_I0, 0 } }, { { FR400_MAJOR_I_5, 0 } }, { { FR450_MAJOR_I_5, 0 } }, { { FR500_MAJOR_I_5, 0 } }, { { FR550_MAJOR_I_6, 0 } } } }
  },
/* ici$pack @($GRi,$GRj) */
  {
    FRV_INSN_ICI, "ici", "ici", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* dci$pack @($GRi,$GRj) */
  {
    FRV_INSN_DCI, "dci", "dci", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* icei$pack @($GRi,$GRj),$ae */
  {
    FRV_INSN_ICEI, "icei", "icei", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* dcei$pack @($GRi,$GRj),$ae */
  {
    FRV_INSN_DCEI, "dcei", "dcei", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* dcf$pack @($GRi,$GRj) */
  {
    FRV_INSN_DCF, "dcf", "dcf", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* dcef$pack @($GRi,$GRj),$ae */
  {
    FRV_INSN_DCEF, "dcef", "dcef", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* witlb$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_WITLB, "witlb", "witlb", 32,
    { 0|A(PRIVILEGED), { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* wdtlb$pack $GRk,@($GRi,$GRj) */
  {
    FRV_INSN_WDTLB, "wdtlb", "wdtlb", 32,
    { 0|A(PRIVILEGED), { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* itlbi$pack @($GRi,$GRj) */
  {
    FRV_INSN_ITLBI, "itlbi", "itlbi", 32,
    { 0|A(PRIVILEGED), { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* dtlbi$pack @($GRi,$GRj) */
  {
    FRV_INSN_DTLBI, "dtlbi", "dtlbi", 32,
    { 0|A(PRIVILEGED), { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* icpl$pack $GRi,$GRj,$lock */
  {
    FRV_INSN_ICPL, "icpl", "icpl", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* dcpl$pack $GRi,$GRj,$lock */
  {
    FRV_INSN_DCPL, "dcpl", "dcpl", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_DCPL, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_I_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_I_8, 0 } } } }
  },
/* icul$pack $GRi */
  {
    FRV_INSN_ICUL, "icul", "icul", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* dcul$pack $GRi */
  {
    FRV_INSN_DCUL, "dcul", "dcul", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* bar$pack */
  {
    FRV_INSN_BAR, "bar", "bar", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* membar$pack */
  {
    FRV_INSN_MEMBAR, "membar", "membar", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_C_2, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_C_2, 0 } } } }
  },
/* lrai$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
  {
    FRV_INSN_LRAI, "lrai", "lrai", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* lrad$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
  {
    FRV_INSN_LRAD, "lrad", "lrad", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* tlbpr$pack $GRi,$GRj,$TLBPRopx,$TLBPRL */
  {
    FRV_INSN_TLBPR, "tlbpr", "tlbpr", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_C_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cop1$pack $s6_1,$CPRi,$CPRj,$CPRk */
  {
    FRV_INSN_COP1, "cop1", "cop1", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cop2$pack $s6_1,$CPRi,$CPRj,$CPRk */
  {
    FRV_INSN_COP2, "cop2", "cop2", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_C, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_C_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* clrgr$pack $GRk */
  {
    FRV_INSN_CLRGR, "clrgr", "clrgr", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* clrfr$pack $FRk */
  {
    FRV_INSN_CLRFR, "clrfr", "clrfr", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* clrga$pack */
  {
    FRV_INSN_CLRGA, "clrga", "clrga", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* clrfa$pack */
  {
    FRV_INSN_CLRFA, "clrfa", "clrfa", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* commitgr$pack $GRk */
  {
    FRV_INSN_COMMITGR, "commitgr", "commitgr", 32,
    { 0, { { { (1<<MACH_FRV)|(1<<MACH_FR500)|(1<<MACH_FR550), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* commitfr$pack $FRk */
  {
    FRV_INSN_COMMITFR, "commitfr", "commitfr", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV)|(1<<MACH_FR500)|(1<<MACH_FR550), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* commitga$pack */
  {
    FRV_INSN_COMMITGA, "commitga", "commitga", 32,
    { 0, { { { (1<<MACH_FRV)|(1<<MACH_FR500)|(1<<MACH_FR550), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* commitfa$pack */
  {
    FRV_INSN_COMMITFA, "commitfa", "commitfa", 32,
    { 0|A(FR_ACCESS), { { { (1<<MACH_FRV)|(1<<MACH_FR500)|(1<<MACH_FR550), 0 } }, { { UNIT_I01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_I_6, 0 } }, { { FR550_MAJOR_I_7, 0 } } } }
  },
/* fitos$pack $FRintj,$FRk */
  {
    FRV_INSN_FITOS, "fitos", "fitos", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fstoi$pack $FRj,$FRintk */
  {
    FRV_INSN_FSTOI, "fstoi", "fstoi", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fitod$pack $FRintj,$FRdoublek */
  {
    FRV_INSN_FITOD, "fitod", "fitod", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdtoi$pack $FRdoublej,$FRintk */
  {
    FRV_INSN_FDTOI, "fdtoi", "fdtoi", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fditos$pack $FRintj,$FRk */
  {
    FRV_INSN_FDITOS, "fditos", "fditos", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdstoi$pack $FRj,$FRintk */
  {
    FRV_INSN_FDSTOI, "fdstoi", "fdstoi", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfditos$pack $FRintj,$FRk */
  {
    FRV_INSN_NFDITOS, "nfditos", "nfditos", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfdstoi$pack $FRj,$FRintk */
  {
    FRV_INSN_NFDSTOI, "nfdstoi", "nfdstoi", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfitos$pack $FRintj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFITOS, "cfitos", "cfitos", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* cfstoi$pack $FRj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CFSTOI, "cfstoi", "cfstoi", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* nfitos$pack $FRintj,$FRk */
  {
    FRV_INSN_NFITOS, "nfitos", "nfitos", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* nfstoi$pack $FRj,$FRintk */
  {
    FRV_INSN_NFSTOI, "nfstoi", "nfstoi", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fmovs$pack $FRj,$FRk */
  {
    FRV_INSN_FMOVS, "fmovs", "fmovs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fmovd$pack $FRdoublej,$FRdoublek */
  {
    FRV_INSN_FMOVD, "fmovd", "fmovd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdmovs$pack $FRj,$FRk */
  {
    FRV_INSN_FDMOVS, "fdmovs", "fdmovs", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfmovs$pack $FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFMOVS, "cfmovs", "cfmovs", 32,
    { 0|A(FR_ACCESS)|A(CONDITIONAL), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fnegs$pack $FRj,$FRk */
  {
    FRV_INSN_FNEGS, "fnegs", "fnegs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fnegd$pack $FRdoublej,$FRdoublek */
  {
    FRV_INSN_FNEGD, "fnegd", "fnegd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdnegs$pack $FRj,$FRk */
  {
    FRV_INSN_FDNEGS, "fdnegs", "fdnegs", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfnegs$pack $FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFNEGS, "cfnegs", "cfnegs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fabss$pack $FRj,$FRk */
  {
    FRV_INSN_FABSS, "fabss", "fabss", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fabsd$pack $FRdoublej,$FRdoublek */
  {
    FRV_INSN_FABSD, "fabsd", "fabsd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdabss$pack $FRj,$FRk */
  {
    FRV_INSN_FDABSS, "fdabss", "fdabss", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfabss$pack $FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFABSS, "cfabss", "cfabss", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_1, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fsqrts$pack $FRj,$FRk */
  {
    FRV_INSN_FSQRTS, "fsqrts", "fsqrts", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* fdsqrts$pack $FRj,$FRk */
  {
    FRV_INSN_FDSQRTS, "fdsqrts", "fdsqrts", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfdsqrts$pack $FRj,$FRk */
  {
    FRV_INSN_NFDSQRTS, "nfdsqrts", "nfdsqrts", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fsqrtd$pack $FRdoublej,$FRdoublek */
  {
    FRV_INSN_FSQRTD, "fsqrtd", "fsqrtd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfsqrts$pack $FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFSQRTS, "cfsqrts", "cfsqrts", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* nfsqrts$pack $FRj,$FRk */
  {
    FRV_INSN_NFSQRTS, "nfsqrts", "nfsqrts", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* fadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FADDS, "fadds", "fadds", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fsubs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FSUBS, "fsubs", "fsubs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fmuls$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMULS, "fmuls", "fmuls", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_3, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* fdivs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDIVS, "fdivs", "fdivs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* faddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
  {
    FRV_INSN_FADDD, "faddd", "faddd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
  {
    FRV_INSN_FSUBD, "fsubd", "fsubd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fmuld$pack $FRdoublei,$FRdoublej,$FRdoublek */
  {
    FRV_INSN_FMULD, "fmuld", "fmuld", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdivd$pack $FRdoublei,$FRdoublej,$FRdoublek */
  {
    FRV_INSN_FDIVD, "fdivd", "fdivd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFADDS, "cfadds", "cfadds", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* cfsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFSUBS, "cfsubs", "cfsubs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* cfmuls$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFMULS, "cfmuls", "cfmuls", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_3, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* cfdivs$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFDIVS, "cfdivs", "cfdivs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* nfadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFADDS, "nfadds", "nfadds", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* nfsubs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFSUBS, "nfsubs", "nfsubs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* nfmuls$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFMULS, "nfmuls", "nfmuls", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_3, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* nfdivs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDIVS, "nfdivs", "nfdivs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_4, 0 } }, { { FR550_MAJOR_F_3, 0 } } } }
  },
/* fcmps$pack $FRi,$FRj,$FCCi_2 */
  {
    FRV_INSN_FCMPS, "fcmps", "fcmps", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fcmpd$pack $FRdoublei,$FRdoublej,$FCCi_2 */
  {
    FRV_INSN_FCMPD, "fcmpd", "fcmpd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfcmps$pack $FRi,$FRj,$FCCi_2,$CCi,$cond */
  {
    FRV_INSN_CFCMPS, "cfcmps", "cfcmps", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_2, 0 } }, { { FR550_MAJOR_F_2, 0 } } } }
  },
/* fdcmps$pack $FRi,$FRj,$FCCi_2 */
  {
    FRV_INSN_FDCMPS, "fdcmps", "fdcmps", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fmadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMADDS, "fmadds", "fmadds", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fmsubs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMSUBS, "fmsubs", "fmsubs", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fmaddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
  {
    FRV_INSN_FMADDD, "fmaddd", "fmaddd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fmsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
  {
    FRV_INSN_FMSUBD, "fmsubd", "fmsubd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdmadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDMADDS, "fdmadds", "fdmadds", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfdmadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDMADDS, "nfdmadds", "nfdmadds", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfmadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFMADDS, "cfmadds", "cfmadds", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfmsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFMSUBS, "cfmsubs", "cfmsubs", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfmadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFMADDS, "nfmadds", "nfmadds", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfmsubs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFMSUBS, "nfmsubs", "nfmsubs", 32,
    { 0|A(NON_EXCEPTING), { { { (1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fmas$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMAS, "fmas", "fmas", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fmss$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMSS, "fmss", "fmss", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fdmas$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDMAS, "fdmas", "fdmas", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdmss$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDMSS, "fdmss", "fdmss", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfdmas$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDMAS, "nfdmas", "nfdmas", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfdmss$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDMSS, "nfdmss", "nfdmss", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cfmas$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFMAS, "cfmas", "cfmas", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* cfmss$pack $FRi,$FRj,$FRk,$CCi,$cond */
  {
    FRV_INSN_CFMSS, "cfmss", "cfmss", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fmad$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMAD, "fmad", "fmad", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fmsd$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FMSD, "fmsd", "fmsd", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfmas$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFMAS, "nfmas", "nfmas", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfmss$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFMSS, "nfmss", "nfmss", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_5, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fdadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDADDS, "fdadds", "fdadds", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fdsubs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDSUBS, "fdsubs", "fdsubs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fdmuls$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDMULS, "fdmuls", "fdmuls", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_7, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fddivs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDDIVS, "fddivs", "fddivs", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_7, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fdsads$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDSADS, "fdsads", "fdsads", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* fdmulcs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_FDMULCS, "fdmulcs", "fdmulcs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_7, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfdmulcs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDMULCS, "nfdmulcs", "nfdmulcs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_7, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfdadds$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDADDS, "nfdadds", "nfdadds", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfdsubs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDSUBS, "nfdsubs", "nfdsubs", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfdmuls$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDMULS, "nfdmuls", "nfdmuls", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_7, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfddivs$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDDIVS, "nfddivs", "nfddivs", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_7, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* nfdsads$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_NFDSADS, "nfdsads", "nfdsads", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_F_4, 0 } } } }
  },
/* nfdcmps$pack $FRi,$FRj,$FCCi_2 */
  {
    FRV_INSN_NFDCMPS, "nfdcmps", "nfdcmps", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_6, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mhsetlos$pack $u12,$FRklo */
  {
    FRV_INSN_MHSETLOS, "mhsetlos", "mhsetlos", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_5, 0 } } } }
  },
/* mhsethis$pack $u12,$FRkhi */
  {
    FRV_INSN_MHSETHIS, "mhsethis", "mhsethis", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_5, 0 } } } }
  },
/* mhdsets$pack $u12,$FRintk */
  {
    FRV_INSN_MHDSETS, "mhdsets", "mhdsets", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_5, 0 } } } }
  },
/* mhsetloh$pack $s5,$FRklo */
  {
    FRV_INSN_MHSETLOH, "mhsetloh", "mhsetloh", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_5, 0 } } } }
  },
/* mhsethih$pack $s5,$FRkhi */
  {
    FRV_INSN_MHSETHIH, "mhsethih", "mhsethih", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_5, 0 } } } }
  },
/* mhdseth$pack $s5,$FRintk */
  {
    FRV_INSN_MHDSETH, "mhdseth", "mhdseth", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_5, 0 } } } }
  },
/* mand$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MAND, "mand", "mand", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mor$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MOR, "mor", "mor", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mxor$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MXOR, "mxor", "mxor", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmand$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMAND, "cmand", "cmand", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMOR, "cmor", "cmor", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmxor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMXOR, "cmxor", "cmxor", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mnot$pack $FRintj,$FRintk */
  {
    FRV_INSN_MNOT, "mnot", "mnot", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmnot$pack $FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMNOT, "cmnot", "cmnot", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mrotli$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MROTLI, "mrotli", "mrotli", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mrotri$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MROTRI, "mrotri", "mrotri", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mwcut$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MWCUT, "mwcut", "mwcut", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mwcuti$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MWCUTI, "mwcuti", "mwcuti", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcut$pack $ACC40Si,$FRintj,$FRintk */
  {
    FRV_INSN_MCUT, "mcut", "mcut", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcuti$pack $ACC40Si,$s6,$FRintk */
  {
    FRV_INSN_MCUTI, "mcuti", "mcuti", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_5, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcutss$pack $ACC40Si,$FRintj,$FRintk */
  {
    FRV_INSN_MCUTSS, "mcutss", "mcutss", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcutssi$pack $ACC40Si,$s6,$FRintk */
  {
    FRV_INSN_MCUTSSI, "mcutssi", "mcutssi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_5, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mdcutssi$pack $ACC40Si,$s6,$FRintkeven */
  {
    FRV_INSN_MDCUTSSI, "mdcutssi", "mdcutssi", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_MDCUTSSI, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_6, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* maveh$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MAVEH, "maveh", "maveh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* msllhi$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MSLLHI, "msllhi", "msllhi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* msrlhi$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MSRLHI, "msrlhi", "msrlhi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* msrahi$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MSRAHI, "msrahi", "msrahi", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mdrotli$pack $FRintieven,$s6,$FRintkeven */
  {
    FRV_INSN_MDROTLI, "mdrotli", "mdrotli", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMLOW, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcplhi$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MCPLHI, "mcplhi", "mcplhi", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMLOW, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcpli$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MCPLI, "mcpli", "mcpli", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMLOW, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* msaths$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MSATHS, "msaths", "msaths", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mqsaths$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQSATHS, "mqsaths", "mqsaths", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* msathu$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MSATHU, "msathu", "msathu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mcmpsh$pack $FRinti,$FRintj,$FCCk */
  {
    FRV_INSN_MCMPSH, "mcmpsh", "mcmpsh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mcmpuh$pack $FRinti,$FRintj,$FCCk */
  {
    FRV_INSN_MCMPUH, "mcmpuh", "mcmpuh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mabshs$pack $FRintj,$FRintk */
  {
    FRV_INSN_MABSHS, "mabshs", "mabshs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* maddhss$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MADDHSS, "maddhss", "maddhss", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* maddhus$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MADDHUS, "maddhus", "maddhus", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* msubhss$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MSUBHSS, "msubhss", "msubhss", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* msubhus$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MSUBHUS, "msubhus", "msubhus", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmaddhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMADDHSS, "cmaddhss", "cmaddhss", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmaddhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMADDHUS, "cmaddhus", "cmaddhus", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmsubhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMSUBHSS, "cmsubhss", "cmsubhss", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmsubhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMSUBHUS, "cmsubhus", "cmsubhus", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQADDHSS, "mqaddhss", "mqaddhss", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQADDHUS, "mqaddhus", "mqaddhus", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQSUBHSS, "mqsubhss", "mqsubhss", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQSUBHUS, "mqsubhus", "mqsubhus", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
  {
    FRV_INSN_CMQADDHSS, "cmqaddhss", "cmqaddhss", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
  {
    FRV_INSN_CMQADDHUS, "cmqaddhus", "cmqaddhus", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
  {
    FRV_INSN_CMQSUBHSS, "cmqsubhss", "cmqsubhss", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* cmqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
  {
    FRV_INSN_CMQSUBHUS, "cmqsubhus", "cmqsubhus", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_2, 0 } } } }
  },
/* mqlclrhs$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQLCLRHS, "mqlclrhs", "mqlclrhs", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_FM0, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mqlmths$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MQLMTHS, "mqlmths", "mqlmths", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_FM0, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mqsllhi$pack $FRintieven,$u6,$FRintkeven */
  {
    FRV_INSN_MQSLLHI, "mqsllhi", "mqsllhi", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_FM0, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mqsrahi$pack $FRintieven,$u6,$FRintkeven */
  {
    FRV_INSN_MQSRAHI, "mqsrahi", "mqsrahi", 32,
    { 0, { { { (1<<MACH_FR450), 0 } }, { { UNIT_FM0, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* maddaccs$pack $ACC40Si,$ACC40Sk */
  {
    FRV_INSN_MADDACCS, "maddaccs", "maddaccs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* msubaccs$pack $ACC40Si,$ACC40Sk */
  {
    FRV_INSN_MSUBACCS, "msubaccs", "msubaccs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mdaddaccs$pack $ACC40Si,$ACC40Sk */
  {
    FRV_INSN_MDADDACCS, "mdaddaccs", "mdaddaccs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_MDUALACC, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mdsubaccs$pack $ACC40Si,$ACC40Sk */
  {
    FRV_INSN_MDSUBACCS, "mdsubaccs", "mdsubaccs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_MDUALACC, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* masaccs$pack $ACC40Si,$ACC40Sk */
  {
    FRV_INSN_MASACCS, "masaccs", "masaccs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mdasaccs$pack $ACC40Si,$ACC40Sk */
  {
    FRV_INSN_MDASACCS, "mdasaccs", "mdasaccs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_MDUALACC, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmulhs$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MMULHS, "mmulhs", "mmulhs", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmulhu$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MMULHU, "mmulhu", "mmulhu", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmulxhs$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MMULXHS, "mmulxhs", "mmulxhs", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmulxhu$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MMULXHU, "mmulxhu", "mmulxhu", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmmulhs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMMULHS, "cmmulhs", "cmmulhs", 32,
    { 0|A(CONDITIONAL)|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmmulhu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMMULHU, "cmmulhu", "cmmulhu", 32,
    { 0|A(CONDITIONAL)|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQMULHS, "mqmulhs", "mqmulhs", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQMULHU, "mqmulhu", "mqmulhu", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmulxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQMULXHS, "mqmulxhs", "mqmulxhs", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmulxhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQMULXHU, "mqmulxhu", "mqmulxhu", 32,
    { 0|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMQMULHS, "cmqmulhs", "cmqmulhs", 32,
    { 0|A(CONDITIONAL)|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMQMULHU, "cmqmulhu", "cmqmulhu", 32,
    { 0|A(CONDITIONAL)|A(PRESERVE_OVF), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmachs$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MMACHS, "mmachs", "mmachs", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmachu$pack $FRinti,$FRintj,$ACC40Uk */
  {
    FRV_INSN_MMACHU, "mmachu", "mmachu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmrdhs$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MMRDHS, "mmrdhs", "mmrdhs", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mmrdhu$pack $FRinti,$FRintj,$ACC40Uk */
  {
    FRV_INSN_MMRDHU, "mmrdhu", "mmrdhu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmmachs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMMACHS, "cmmachs", "cmmachs", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmmachu$pack $FRinti,$FRintj,$ACC40Uk,$CCi,$cond */
  {
    FRV_INSN_CMMACHU, "cmmachu", "cmmachu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQMACHS, "mqmachs", "mqmachs", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk */
  {
    FRV_INSN_MQMACHU, "mqmachu", "mqmachu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMQMACHS, "cmqmachs", "cmqmachs", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk,$CCi,$cond */
  {
    FRV_INSN_CMQMACHU, "cmqmachu", "cmqmachu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqxmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQXMACHS, "mqxmachs", "mqxmachs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqxmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQXMACXHS, "mqxmacxhs", "mqxmacxhs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQMACXHS, "mqmacxhs", "mqmacxhs", 32,
    { 0, { { { (1<<MACH_FR400)|(1<<MACH_FR450)|(1<<MACH_FR550), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_NONE, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mcpxrs$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MCPXRS, "mcpxrs", "mcpxrs", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mcpxru$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MCPXRU, "mcpxru", "mcpxru", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mcpxis$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MCPXIS, "mcpxis", "mcpxis", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mcpxiu$pack $FRinti,$FRintj,$ACC40Sk */
  {
    FRV_INSN_MCPXIU, "mcpxiu", "mcpxiu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmcpxrs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMCPXRS, "cmcpxrs", "cmcpxrs", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmcpxru$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMCPXRU, "cmcpxru", "cmcpxru", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmcpxis$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMCPXIS, "cmcpxis", "cmcpxis", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* cmcpxiu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
  {
    FRV_INSN_CMCPXIU, "cmcpxiu", "cmcpxiu", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqcpxrs$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQCPXRS, "mqcpxrs", "mqcpxrs", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqcpxru$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQCPXRU, "mqcpxru", "mqcpxru", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqcpxis$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQCPXIS, "mqcpxis", "mqcpxis", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mqcpxiu$pack $FRintieven,$FRintjeven,$ACC40Sk */
  {
    FRV_INSN_MQCPXIU, "mqcpxiu", "mqcpxiu", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_4, 0 } }, { { FR550_MAJOR_M_4, 0 } } } }
  },
/* mexpdhw$pack $FRinti,$u6,$FRintk */
  {
    FRV_INSN_MEXPDHW, "mexpdhw", "mexpdhw", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* cmexpdhw$pack $FRinti,$u6,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMEXPDHW, "cmexpdhw", "cmexpdhw", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mexpdhd$pack $FRinti,$u6,$FRintkeven */
  {
    FRV_INSN_MEXPDHD, "mexpdhd", "mexpdhd", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* cmexpdhd$pack $FRinti,$u6,$FRintkeven,$CCi,$cond */
  {
    FRV_INSN_CMEXPDHD, "cmexpdhd", "cmexpdhd", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mpackh$pack $FRinti,$FRintj,$FRintk */
  {
    FRV_INSN_MPACKH, "mpackh", "mpackh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mdpackh$pack $FRintieven,$FRintjeven,$FRintkeven */
  {
    FRV_INSN_MDPACKH, "mdpackh", "mdpackh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_5, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* munpackh$pack $FRinti,$FRintkeven */
  {
    FRV_INSN_MUNPACKH, "munpackh", "munpackh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mdunpackh$pack $FRintieven,$FRintk */
  {
    FRV_INSN_MDUNPACKH, "mdunpackh", "mdunpackh", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_M_7, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mbtoh$pack $FRintj,$FRintkeven */
  {
    FRV_INSN_MBTOH, "mbtoh", "mbtoh", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* cmbtoh$pack $FRintj,$FRintkeven,$CCi,$cond */
  {
    FRV_INSN_CMBTOH, "cmbtoh", "cmbtoh", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mhtob$pack $FRintjeven,$FRintk */
  {
    FRV_INSN_MHTOB, "mhtob", "mhtob", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* cmhtob$pack $FRintjeven,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMHTOB, "cmhtob", "cmhtob", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_2, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mbtohe$pack $FRintj,$FRintk */
  {
    FRV_INSN_MBTOHE, "mbtohe", "mbtohe", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_M_7, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* cmbtohe$pack $FRintj,$FRintk,$CCi,$cond */
  {
    FRV_INSN_CMBTOHE, "cmbtohe", "cmbtohe", 32,
    { 0|A(CONDITIONAL), { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_M_7, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mnop$pack */
  {
    FRV_INSN_MNOP, "mnop", "mnop", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_1, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_M_1, 0 } } } }
  },
/* mclracc$pack $ACC40Sk,$A0 */
  {
    FRV_INSN_MCLRACC_0, "mclracc-0", "mclracc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_3, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mclracc$pack $ACC40Sk,$A1 */
  {
    FRV_INSN_MCLRACC_1, "mclracc-1", "mclracc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_MCLRACC_1, 0 } }, { { FR400_MAJOR_M_2, 0 } }, { { FR450_MAJOR_M_4, 0 } }, { { FR500_MAJOR_M_6, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mrdacc$pack $ACC40Si,$FRintk */
  {
    FRV_INSN_MRDACC, "mrdacc", "mrdacc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_5, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mrdaccg$pack $ACCGi,$FRintk */
  {
    FRV_INSN_MRDACCG, "mrdaccg", "mrdaccg", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_5, 0 } }, { { FR500_MAJOR_M_2, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mwtacc$pack $FRinti,$ACC40Sk */
  {
    FRV_INSN_MWTACC, "mwtacc", "mwtacc", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_3, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mwtaccg$pack $FRinti,$ACCGk */
  {
    FRV_INSN_MWTACCG, "mwtaccg", "mwtaccg", 32,
    { 0, { { { (1<<MACH_BASE), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_M_1, 0 } }, { { FR450_MAJOR_M_3, 0 } }, { { FR500_MAJOR_M_3, 0 } }, { { FR550_MAJOR_M_3, 0 } } } }
  },
/* mcop1$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_MCOP1, "mcop1", "mcop1", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* mcop2$pack $FRi,$FRj,$FRk */
  {
    FRV_INSN_MCOP2, "mcop2", "mcop2", 32,
    { 0, { { { (1<<MACH_FRV), 0 } }, { { UNIT_FM01, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_M_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
  },
/* fnop$pack */
  {
    FRV_INSN_FNOP, "fnop", "fnop", 32,
    { 0, { { { (1<<MACH_SIMPLE)|(1<<MACH_TOMCAT)|(1<<MACH_FR500)|(1<<MACH_FR550)|(1<<MACH_FRV), 0 } }, { { UNIT_FMALL, 0 } }, { { FR400_MAJOR_NONE, 0 } }, { { FR450_MAJOR_NONE, 0 } }, { { FR500_MAJOR_F_8, 0 } }, { { FR550_MAJOR_F_1, 0 } } } }
  },
};

#undef OP
#undef A

/* Initialize anything needed to be done once, before any cpu_open call.  */

static void
init_tables (void)
{
}

static const CGEN_MACH * lookup_mach_via_bfd_name (const CGEN_MACH *, const char *);
static void build_hw_table      (CGEN_CPU_TABLE *);
static void build_ifield_table  (CGEN_CPU_TABLE *);
static void build_operand_table (CGEN_CPU_TABLE *);
static void build_insn_table    (CGEN_CPU_TABLE *);
static void frv_cgen_rebuild_tables (CGEN_CPU_TABLE *);

/* Subroutine of frv_cgen_cpu_open to look up a mach via its bfd name.  */

static const CGEN_MACH *
lookup_mach_via_bfd_name (const CGEN_MACH *table, const char *name)
{
  while (table->name)
    {
      if (strcmp (name, table->bfd_name) == 0)
	return table;
      ++table;
    }
  abort ();
}

/* Subroutine of frv_cgen_cpu_open to build the hardware table.  */

static void
build_hw_table (CGEN_CPU_TABLE *cd)
{
  int i;
  int machs = cd->machs;
  const CGEN_HW_ENTRY *init = & frv_cgen_hw_table[0];
  /* MAX_HW is only an upper bound on the number of selected entries.
     However each entry is indexed by it's enum so there can be holes in
     the table.  */
  const CGEN_HW_ENTRY **selected =
    (const CGEN_HW_ENTRY **) xmalloc (MAX_HW * sizeof (CGEN_HW_ENTRY *));

  cd->hw_table.init_entries = init;
  cd->hw_table.entry_size = sizeof (CGEN_HW_ENTRY);
  memset (selected, 0, MAX_HW * sizeof (CGEN_HW_ENTRY *));
  /* ??? For now we just use machs to determine which ones we want.  */
  for (i = 0; init[i].name != NULL; ++i)
    if (CGEN_HW_ATTR_VALUE (&init[i], CGEN_HW_MACH)
	& machs)
      selected[init[i].type] = &init[i];
  cd->hw_table.entries = selected;
  cd->hw_table.num_entries = MAX_HW;
}

/* Subroutine of frv_cgen_cpu_open to build the hardware table.  */

static void
build_ifield_table (CGEN_CPU_TABLE *cd)
{
  cd->ifld_table = & frv_cgen_ifld_table[0];
}

/* Subroutine of frv_cgen_cpu_open to build the hardware table.  */

static void
build_operand_table (CGEN_CPU_TABLE *cd)
{
  int i;
  int machs = cd->machs;
  const CGEN_OPERAND *init = & frv_cgen_operand_table[0];
  /* MAX_OPERANDS is only an upper bound on the number of selected entries.
     However each entry is indexed by it's enum so there can be holes in
     the table.  */
  const CGEN_OPERAND **selected = xmalloc (MAX_OPERANDS * sizeof (* selected));

  cd->operand_table.init_entries = init;
  cd->operand_table.entry_size = sizeof (CGEN_OPERAND);
  memset (selected, 0, MAX_OPERANDS * sizeof (CGEN_OPERAND *));
  /* ??? For now we just use mach to determine which ones we want.  */
  for (i = 0; init[i].name != NULL; ++i)
    if (CGEN_OPERAND_ATTR_VALUE (&init[i], CGEN_OPERAND_MACH)
	& machs)
      selected[init[i].type] = &init[i];
  cd->operand_table.entries = selected;
  cd->operand_table.num_entries = MAX_OPERANDS;
}

/* Subroutine of frv_cgen_cpu_open to build the hardware table.
   ??? This could leave out insns not supported by the specified mach/isa,
   but that would cause errors like "foo only supported by bar" to become
   "unknown insn", so for now we include all insns and require the app to
   do the checking later.
   ??? On the other hand, parsing of such insns may require their hardware or
   operand elements to be in the table [which they mightn't be].  */

static void
build_insn_table (CGEN_CPU_TABLE *cd)
{
  int i;
  const CGEN_IBASE *ib = & frv_cgen_insn_table[0];
  CGEN_INSN *insns = xmalloc (MAX_INSNS * sizeof (CGEN_INSN));

  memset (insns, 0, MAX_INSNS * sizeof (CGEN_INSN));
  for (i = 0; i < MAX_INSNS; ++i)
    insns[i].base = &ib[i];
  cd->insn_table.init_entries = insns;
  cd->insn_table.entry_size = sizeof (CGEN_IBASE);
  cd->insn_table.num_init_entries = MAX_INSNS;
}

/* Subroutine of frv_cgen_cpu_open to rebuild the tables.  */

static void
frv_cgen_rebuild_tables (CGEN_CPU_TABLE *cd)
{
  int i;
  CGEN_BITSET *isas = cd->isas;
  unsigned int machs = cd->machs;

  cd->int_insn_p = CGEN_INT_INSN_P;

  /* Data derived from the isa spec.  */
#define UNSET (CGEN_SIZE_UNKNOWN + 1)
  cd->default_insn_bitsize = UNSET;
  cd->base_insn_bitsize = UNSET;
  cd->min_insn_bitsize = 65535; /* Some ridiculously big number.  */
  cd->max_insn_bitsize = 0;
  for (i = 0; i < MAX_ISAS; ++i)
    if (cgen_bitset_contains (isas, i))
      {
	const CGEN_ISA *isa = & frv_cgen_isa_table[i];

	/* Default insn sizes of all selected isas must be
	   equal or we set the result to 0, meaning "unknown".  */
	if (cd->default_insn_bitsize == UNSET)
	  cd->default_insn_bitsize = isa->default_insn_bitsize;
	else if (isa->default_insn_bitsize == cd->default_insn_bitsize)
	  ; /* This is ok.  */
	else
	  cd->default_insn_bitsize = CGEN_SIZE_UNKNOWN;

	/* Base insn sizes of all selected isas must be equal
	   or we set the result to 0, meaning "unknown".  */
	if (cd->base_insn_bitsize == UNSET)
	  cd->base_insn_bitsize = isa->base_insn_bitsize;
	else if (isa->base_insn_bitsize == cd->base_insn_bitsize)
	  ; /* This is ok.  */
	else
	  cd->base_insn_bitsize = CGEN_SIZE_UNKNOWN;

	/* Set min,max insn sizes.  */
	if (isa->min_insn_bitsize < cd->min_insn_bitsize)
	  cd->min_insn_bitsize = isa->min_insn_bitsize;
	if (isa->max_insn_bitsize > cd->max_insn_bitsize)
	  cd->max_insn_bitsize = isa->max_insn_bitsize;
      }

  /* Data derived from the mach spec.  */
  for (i = 0; i < MAX_MACHS; ++i)
    if (((1 << i) & machs) != 0)
      {
	const CGEN_MACH *mach = & frv_cgen_mach_table[i];

	if (mach->insn_chunk_bitsize != 0)
	{
	  if (cd->insn_chunk_bitsize != 0 && cd->insn_chunk_bitsize != mach->insn_chunk_bitsize)
	    {
	      fprintf (stderr, "frv_cgen_rebuild_tables: conflicting insn-chunk-bitsize values: `%d' vs. `%d'\n",
		       cd->insn_chunk_bitsize, mach->insn_chunk_bitsize);
	      abort ();
	    }

 	  cd->insn_chunk_bitsize = mach->insn_chunk_bitsize;
	}
      }

  /* Determine which hw elements are used by MACH.  */
  build_hw_table (cd);

  /* Build the ifield table.  */
  build_ifield_table (cd);

  /* Determine which operands are used by MACH/ISA.  */
  build_operand_table (cd);

  /* Build the instruction table.  */
  build_insn_table (cd);
}

/* Initialize a cpu table and return a descriptor.
   It's much like opening a file, and must be the first function called.
   The arguments are a set of (type/value) pairs, terminated with
   CGEN_CPU_OPEN_END.

   Currently supported values:
   CGEN_CPU_OPEN_ISAS:    bitmap of values in enum isa_attr
   CGEN_CPU_OPEN_MACHS:   bitmap of values in enum mach_attr
   CGEN_CPU_OPEN_BFDMACH: specify 1 mach using bfd name
   CGEN_CPU_OPEN_ENDIAN:  specify endian choice
   CGEN_CPU_OPEN_END:     terminates arguments

   ??? Simultaneous multiple isas might not make sense, but it's not (yet)
   precluded.  */

CGEN_CPU_DESC
frv_cgen_cpu_open (enum cgen_cpu_open_arg arg_type, ...)
{
  CGEN_CPU_TABLE *cd = (CGEN_CPU_TABLE *) xmalloc (sizeof (CGEN_CPU_TABLE));
  static int init_p;
  CGEN_BITSET *isas = 0;  /* 0 = "unspecified" */
  unsigned int machs = 0; /* 0 = "unspecified" */
  enum cgen_endian endian = CGEN_ENDIAN_UNKNOWN;
  va_list ap;

  if (! init_p)
    {
      init_tables ();
      init_p = 1;
    }

  memset (cd, 0, sizeof (*cd));

  va_start (ap, arg_type);
  while (arg_type != CGEN_CPU_OPEN_END)
    {
      switch (arg_type)
	{
	case CGEN_CPU_OPEN_ISAS :
	  isas = va_arg (ap, CGEN_BITSET *);
	  break;
	case CGEN_CPU_OPEN_MACHS :
	  machs = va_arg (ap, unsigned int);
	  break;
	case CGEN_CPU_OPEN_BFDMACH :
	  {
	    const char *name = va_arg (ap, const char *);
	    const CGEN_MACH *mach =
	      lookup_mach_via_bfd_name (frv_cgen_mach_table, name);

	    machs |= 1 << mach->num;
	    break;
	  }
	case CGEN_CPU_OPEN_ENDIAN :
	  endian = va_arg (ap, enum cgen_endian);
	  break;
	default :
	  fprintf (stderr, "frv_cgen_cpu_open: unsupported argument `%d'\n",
		   arg_type);
	  abort (); /* ??? return NULL? */
	}
      arg_type = va_arg (ap, enum cgen_cpu_open_arg);
    }
  va_end (ap);

  /* Mach unspecified means "all".  */
  if (machs == 0)
    machs = (1 << MAX_MACHS) - 1;
  /* Base mach is always selected.  */
  machs |= 1;
  if (endian == CGEN_ENDIAN_UNKNOWN)
    {
      /* ??? If target has only one, could have a default.  */
      fprintf (stderr, "frv_cgen_cpu_open: no endianness specified\n");
      abort ();
    }

  cd->isas = cgen_bitset_copy (isas);
  cd->machs = machs;
  cd->endian = endian;
  /* FIXME: for the sparc case we can determine insn-endianness statically.
     The worry here is where both data and insn endian can be independently
     chosen, in which case this function will need another argument.
     Actually, will want to allow for more arguments in the future anyway.  */
  cd->insn_endian = endian;

  /* Table (re)builder.  */
  cd->rebuild_tables = frv_cgen_rebuild_tables;
  frv_cgen_rebuild_tables (cd);

  /* Default to not allowing signed overflow.  */
  cd->signed_overflow_ok_p = 0;
  
  return (CGEN_CPU_DESC) cd;
}

/* Cover fn to frv_cgen_cpu_open to handle the simple case of 1 isa, 1 mach.
   MACH_NAME is the bfd name of the mach.  */

CGEN_CPU_DESC
frv_cgen_cpu_open_1 (const char *mach_name, enum cgen_endian endian)
{
  return frv_cgen_cpu_open (CGEN_CPU_OPEN_BFDMACH, mach_name,
			       CGEN_CPU_OPEN_ENDIAN, endian,
			       CGEN_CPU_OPEN_END);
}

/* Close a cpu table.
   ??? This can live in a machine independent file, but there's currently
   no place to put this file (there's no libcgen).  libopcodes is the wrong
   place as some simulator ports use this but they don't use libopcodes.  */

void
frv_cgen_cpu_close (CGEN_CPU_DESC cd)
{
  unsigned int i;
  const CGEN_INSN *insns;

  if (cd->macro_insn_table.init_entries)
    {
      insns = cd->macro_insn_table.init_entries;
      for (i = 0; i < cd->macro_insn_table.num_init_entries; ++i, ++insns)
	if (CGEN_INSN_RX ((insns)))
	  regfree (CGEN_INSN_RX (insns));
    }

  if (cd->insn_table.init_entries)
    {
      insns = cd->insn_table.init_entries;
      for (i = 0; i < cd->insn_table.num_init_entries; ++i, ++insns)
	if (CGEN_INSN_RX (insns))
	  regfree (CGEN_INSN_RX (insns));
    }  

  if (cd->macro_insn_table.init_entries)
    free ((CGEN_INSN *) cd->macro_insn_table.init_entries);

  if (cd->insn_table.init_entries)
    free ((CGEN_INSN *) cd->insn_table.init_entries);

  if (cd->hw_table.entries)
    free ((CGEN_HW_ENTRY *) cd->hw_table.entries);

  if (cd->operand_table.entries)
    free ((CGEN_HW_ENTRY *) cd->operand_table.entries);

  free (cd);
}

