xref: /netbsd-src/external/gpl3/binutils.old/dist/opcodes/or1k-opinst.c (revision e992f068c547fd6e84b3f104dc2340adcc955732)
1ede78133Schristos /* DO NOT EDIT!  -*- buffer-read-only: t -*- vi:set ro:  */
275fd0b74Schristos /* Semantic operand instances for or1k.
375fd0b74Schristos 
475fd0b74Schristos THIS FILE IS MACHINE GENERATED WITH CGEN.
575fd0b74Schristos 
6*e992f068Schristos Copyright (C) 1996-2022 Free Software Foundation, Inc.
775fd0b74Schristos 
875fd0b74Schristos This file is part of the GNU Binutils and/or GDB, the GNU debugger.
975fd0b74Schristos 
1075fd0b74Schristos    This file is free software; you can redistribute it and/or modify
1175fd0b74Schristos    it under the terms of the GNU General Public License as published by
1275fd0b74Schristos    the Free Software Foundation; either version 3, or (at your option)
1375fd0b74Schristos    any later version.
1475fd0b74Schristos 
1575fd0b74Schristos    It is distributed in the hope that it will be useful, but WITHOUT
1675fd0b74Schristos    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
1775fd0b74Schristos    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
1875fd0b74Schristos    License for more details.
1975fd0b74Schristos 
2075fd0b74Schristos    You should have received a copy of the GNU General Public License along
2175fd0b74Schristos    with this program; if not, write to the Free Software Foundation, Inc.,
2275fd0b74Schristos    51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
2375fd0b74Schristos 
2475fd0b74Schristos */
2575fd0b74Schristos 
2675fd0b74Schristos #include "sysdep.h"
2775fd0b74Schristos #include "ansidecl.h"
2875fd0b74Schristos #include "bfd.h"
2975fd0b74Schristos #include "symcat.h"
3075fd0b74Schristos #include "or1k-desc.h"
3175fd0b74Schristos #include "or1k-opc.h"
3275fd0b74Schristos 
3375fd0b74Schristos /* Operand references.  */
3475fd0b74Schristos 
3575fd0b74Schristos #define OP_ENT(op) OR1K_OPERAND_##op
3675fd0b74Schristos #define INPUT CGEN_OPINST_INPUT
3775fd0b74Schristos #define OUTPUT CGEN_OPINST_OUTPUT
3875fd0b74Schristos #define END CGEN_OPINST_END
3975fd0b74Schristos #define COND_REF CGEN_OPINST_COND_REF
4075fd0b74Schristos 
4175fd0b74Schristos static const CGEN_OPINST sfmt_empty_ops[] ATTRIBUTE_UNUSED = {
4275fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
4375fd0b74Schristos };
4475fd0b74Schristos 
4575fd0b74Schristos static const CGEN_OPINST sfmt_l_j_ops[] ATTRIBUTE_UNUSED = {
46*e992f068Schristos   { INPUT, "disp26", HW_H_IADDR, CGEN_MODE_USI, OP_ENT (DISP26), 0, 0 },
47*e992f068Schristos   { INPUT, "sys_cpucfgr_nd", HW_H_SYS_CPUCFGR_ND, CGEN_MODE_USI, 0, 0, 0 },
48*e992f068Schristos   { OUTPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
4975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
5075fd0b74Schristos };
5175fd0b74Schristos 
52012573ebSchristos static const CGEN_OPINST sfmt_l_adrp_ops[] ATTRIBUTE_UNUSED = {
53*e992f068Schristos   { INPUT, "disp21", HW_H_IADDR, CGEN_MODE_USI, OP_ENT (DISP21), 0, 0 },
54*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
55012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
56012573ebSchristos };
57012573ebSchristos 
5875fd0b74Schristos static const CGEN_OPINST sfmt_l_jal_ops[] ATTRIBUTE_UNUSED = {
59*e992f068Schristos   { INPUT, "disp26", HW_H_IADDR, CGEN_MODE_USI, OP_ENT (DISP26), 0, 0 },
60*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
61*e992f068Schristos   { INPUT, "sys_cpucfgr_nd", HW_H_SYS_CPUCFGR_ND, CGEN_MODE_USI, 0, 0, 0 },
62*e992f068Schristos   { OUTPUT, "h_gpr_USI_9", HW_H_GPR, CGEN_MODE_USI, 0, 9, 0 },
63*e992f068Schristos   { OUTPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
6475fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
6575fd0b74Schristos };
6675fd0b74Schristos 
6775fd0b74Schristos static const CGEN_OPINST sfmt_l_jr_ops[] ATTRIBUTE_UNUSED = {
68*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
69*e992f068Schristos   { INPUT, "sys_cpucfgr_nd", HW_H_SYS_CPUCFGR_ND, CGEN_MODE_USI, 0, 0, 0 },
70*e992f068Schristos   { OUTPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
7175fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
7275fd0b74Schristos };
7375fd0b74Schristos 
7475fd0b74Schristos static const CGEN_OPINST sfmt_l_jalr_ops[] ATTRIBUTE_UNUSED = {
75*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
76*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
77*e992f068Schristos   { INPUT, "sys_cpucfgr_nd", HW_H_SYS_CPUCFGR_ND, CGEN_MODE_USI, 0, 0, 0 },
78*e992f068Schristos   { OUTPUT, "h_gpr_USI_9", HW_H_GPR, CGEN_MODE_USI, 0, 9, 0 },
79*e992f068Schristos   { OUTPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
8075fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
8175fd0b74Schristos };
8275fd0b74Schristos 
8375fd0b74Schristos static const CGEN_OPINST sfmt_l_bnf_ops[] ATTRIBUTE_UNUSED = {
84*e992f068Schristos   { INPUT, "disp26", HW_H_IADDR, CGEN_MODE_USI, OP_ENT (DISP26), 0, COND_REF },
85*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
86*e992f068Schristos   { INPUT, "sys_cpucfgr_nd", HW_H_SYS_CPUCFGR_ND, CGEN_MODE_USI, 0, 0, COND_REF },
87*e992f068Schristos   { INPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
88*e992f068Schristos   { OUTPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
8975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
9075fd0b74Schristos };
9175fd0b74Schristos 
9275fd0b74Schristos static const CGEN_OPINST sfmt_l_trap_ops[] ATTRIBUTE_UNUSED = {
93*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, 0 },
9475fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
9575fd0b74Schristos };
9675fd0b74Schristos 
9775fd0b74Schristos static const CGEN_OPINST sfmt_l_msync_ops[] ATTRIBUTE_UNUSED = {
9875fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
9975fd0b74Schristos };
10075fd0b74Schristos 
10175fd0b74Schristos static const CGEN_OPINST sfmt_l_nop_imm_ops[] ATTRIBUTE_UNUSED = {
10275fd0b74Schristos   { INPUT, "uimm16", HW_H_UIMM16, CGEN_MODE_UINT, OP_ENT (UIMM16), 0, 0 },
10375fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
10475fd0b74Schristos };
10575fd0b74Schristos 
10675fd0b74Schristos static const CGEN_OPINST sfmt_l_movhi_ops[] ATTRIBUTE_UNUSED = {
10775fd0b74Schristos   { INPUT, "uimm16", HW_H_UIMM16, CGEN_MODE_UINT, OP_ENT (UIMM16), 0, 0 },
108*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
10975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
11075fd0b74Schristos };
11175fd0b74Schristos 
11275fd0b74Schristos static const CGEN_OPINST sfmt_l_macrc_ops[] ATTRIBUTE_UNUSED = {
113*e992f068Schristos   { INPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
114*e992f068Schristos   { OUTPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
115*e992f068Schristos   { OUTPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
116*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
11775fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
11875fd0b74Schristos };
11975fd0b74Schristos 
12075fd0b74Schristos static const CGEN_OPINST sfmt_l_mfspr_ops[] ATTRIBUTE_UNUSED = {
121*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
12275fd0b74Schristos   { INPUT, "uimm16", HW_H_UIMM16, CGEN_MODE_UINT, OP_ENT (UIMM16), 0, 0 },
123*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
12475fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
12575fd0b74Schristos };
12675fd0b74Schristos 
12775fd0b74Schristos static const CGEN_OPINST sfmt_l_mtspr_ops[] ATTRIBUTE_UNUSED = {
128*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
129*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
13075fd0b74Schristos   { INPUT, "uimm16_split", HW_H_UIMM16, CGEN_MODE_UINT, OP_ENT (UIMM16_SPLIT), 0, 0 },
13175fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
13275fd0b74Schristos };
13375fd0b74Schristos 
13475fd0b74Schristos static const CGEN_OPINST sfmt_l_lwz_ops[] ATTRIBUTE_UNUSED = {
13575fd0b74Schristos   { INPUT, "h_memory_USI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_4", HW_H_MEMORY, CGEN_MODE_USI, 0, 0, 0 },
136*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
13775fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
138*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
13975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
14075fd0b74Schristos };
14175fd0b74Schristos 
14275fd0b74Schristos static const CGEN_OPINST sfmt_l_lws_ops[] ATTRIBUTE_UNUSED = {
14375fd0b74Schristos   { INPUT, "h_memory_SI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_4", HW_H_MEMORY, CGEN_MODE_SI, 0, 0, 0 },
144*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
14575fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
146*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
14775fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
14875fd0b74Schristos };
14975fd0b74Schristos 
15075fd0b74Schristos static const CGEN_OPINST sfmt_l_lwa_ops[] ATTRIBUTE_UNUSED = {
15175fd0b74Schristos   { INPUT, "h_memory_USI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_4", HW_H_MEMORY, CGEN_MODE_USI, 0, 0, 0 },
152*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
15375fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
15475fd0b74Schristos   { OUTPUT, "atomic_address", HW_H_ATOMIC_ADDRESS, CGEN_MODE_SI, 0, 0, 0 },
15575fd0b74Schristos   { OUTPUT, "atomic_reserve", HW_H_ATOMIC_RESERVE, CGEN_MODE_BI, 0, 0, 0 },
156*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
15775fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
15875fd0b74Schristos };
15975fd0b74Schristos 
16075fd0b74Schristos static const CGEN_OPINST sfmt_l_lbz_ops[] ATTRIBUTE_UNUSED = {
16175fd0b74Schristos   { INPUT, "h_memory_UQI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_1", HW_H_MEMORY, CGEN_MODE_UQI, 0, 0, 0 },
162*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
16375fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
164*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
16575fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
16675fd0b74Schristos };
16775fd0b74Schristos 
16875fd0b74Schristos static const CGEN_OPINST sfmt_l_lbs_ops[] ATTRIBUTE_UNUSED = {
16975fd0b74Schristos   { INPUT, "h_memory_QI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_1", HW_H_MEMORY, CGEN_MODE_QI, 0, 0, 0 },
170*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
17175fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
172*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
17375fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
17475fd0b74Schristos };
17575fd0b74Schristos 
17675fd0b74Schristos static const CGEN_OPINST sfmt_l_lhz_ops[] ATTRIBUTE_UNUSED = {
17775fd0b74Schristos   { INPUT, "h_memory_UHI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_2", HW_H_MEMORY, CGEN_MODE_UHI, 0, 0, 0 },
178*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
17975fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
180*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
18175fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
18275fd0b74Schristos };
18375fd0b74Schristos 
18475fd0b74Schristos static const CGEN_OPINST sfmt_l_lhs_ops[] ATTRIBUTE_UNUSED = {
18575fd0b74Schristos   { INPUT, "h_memory_HI_c_call__AI_@cpu@_make_load_store_addr_rA_ext__SI_simm16_2", HW_H_MEMORY, CGEN_MODE_HI, 0, 0, 0 },
186*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
18775fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
188*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
18975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
19075fd0b74Schristos };
19175fd0b74Schristos 
19275fd0b74Schristos static const CGEN_OPINST sfmt_l_sw_ops[] ATTRIBUTE_UNUSED = {
19375fd0b74Schristos   { INPUT, "atomic_address", HW_H_ATOMIC_ADDRESS, CGEN_MODE_SI, 0, 0, 0 },
194*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
195*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
19675fd0b74Schristos   { INPUT, "simm16_split", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16_SPLIT), 0, 0 },
19775fd0b74Schristos   { OUTPUT, "atomic_reserve", HW_H_ATOMIC_RESERVE, CGEN_MODE_BI, 0, 0, COND_REF },
19875fd0b74Schristos   { OUTPUT, "h_memory_USI_addr", HW_H_MEMORY, CGEN_MODE_USI, 0, 0, 0 },
19975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
20075fd0b74Schristos };
20175fd0b74Schristos 
20275fd0b74Schristos static const CGEN_OPINST sfmt_l_sb_ops[] ATTRIBUTE_UNUSED = {
20375fd0b74Schristos   { INPUT, "atomic_address", HW_H_ATOMIC_ADDRESS, CGEN_MODE_SI, 0, 0, 0 },
204*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
205*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
20675fd0b74Schristos   { INPUT, "simm16_split", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16_SPLIT), 0, 0 },
20775fd0b74Schristos   { OUTPUT, "atomic_reserve", HW_H_ATOMIC_RESERVE, CGEN_MODE_BI, 0, 0, COND_REF },
20875fd0b74Schristos   { OUTPUT, "h_memory_UQI_addr", HW_H_MEMORY, CGEN_MODE_UQI, 0, 0, 0 },
20975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
21075fd0b74Schristos };
21175fd0b74Schristos 
21275fd0b74Schristos static const CGEN_OPINST sfmt_l_sh_ops[] ATTRIBUTE_UNUSED = {
21375fd0b74Schristos   { INPUT, "atomic_address", HW_H_ATOMIC_ADDRESS, CGEN_MODE_SI, 0, 0, 0 },
214*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
215*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
21675fd0b74Schristos   { INPUT, "simm16_split", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16_SPLIT), 0, 0 },
21775fd0b74Schristos   { OUTPUT, "atomic_reserve", HW_H_ATOMIC_RESERVE, CGEN_MODE_BI, 0, 0, COND_REF },
21875fd0b74Schristos   { OUTPUT, "h_memory_UHI_addr", HW_H_MEMORY, CGEN_MODE_UHI, 0, 0, 0 },
21975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
22075fd0b74Schristos };
22175fd0b74Schristos 
22275fd0b74Schristos static const CGEN_OPINST sfmt_l_swa_ops[] ATTRIBUTE_UNUSED = {
22375fd0b74Schristos   { INPUT, "atomic_address", HW_H_ATOMIC_ADDRESS, CGEN_MODE_SI, 0, 0, 0 },
22475fd0b74Schristos   { INPUT, "atomic_reserve", HW_H_ATOMIC_RESERVE, CGEN_MODE_BI, 0, 0, 0 },
225*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
226*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, COND_REF },
22775fd0b74Schristos   { INPUT, "simm16_split", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16_SPLIT), 0, 0 },
228*e992f068Schristos   { INPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
22975fd0b74Schristos   { OUTPUT, "atomic_reserve", HW_H_ATOMIC_RESERVE, CGEN_MODE_BI, 0, 0, 0 },
23075fd0b74Schristos   { OUTPUT, "h_memory_USI_addr", HW_H_MEMORY, CGEN_MODE_USI, 0, 0, COND_REF },
231*e992f068Schristos   { OUTPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
23275fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
23375fd0b74Schristos };
23475fd0b74Schristos 
23575fd0b74Schristos static const CGEN_OPINST sfmt_l_sll_ops[] ATTRIBUTE_UNUSED = {
236*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
237*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
238*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
23975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
24075fd0b74Schristos };
24175fd0b74Schristos 
24275fd0b74Schristos static const CGEN_OPINST sfmt_l_slli_ops[] ATTRIBUTE_UNUSED = {
243*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
24475fd0b74Schristos   { INPUT, "uimm6", HW_H_UIMM6, CGEN_MODE_UINT, OP_ENT (UIMM6), 0, 0 },
245*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
24675fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
24775fd0b74Schristos };
24875fd0b74Schristos 
24975fd0b74Schristos static const CGEN_OPINST sfmt_l_and_ops[] ATTRIBUTE_UNUSED = {
250*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
251*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
252*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
25375fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
25475fd0b74Schristos };
25575fd0b74Schristos 
25675fd0b74Schristos static const CGEN_OPINST sfmt_l_add_ops[] ATTRIBUTE_UNUSED = {
257*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
258*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
259*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
260*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
261*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
262*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
263*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
264*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
26575fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
26675fd0b74Schristos };
26775fd0b74Schristos 
26875fd0b74Schristos static const CGEN_OPINST sfmt_l_addc_ops[] ATTRIBUTE_UNUSED = {
269*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
270*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
271*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
272*e992f068Schristos   { INPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
273*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
274*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
275*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
276*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
277*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
27875fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
27975fd0b74Schristos };
28075fd0b74Schristos 
281012573ebSchristos static const CGEN_OPINST sfmt_l_mul_ops[] ATTRIBUTE_UNUSED = {
282*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
283*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
284*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
285*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
286*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
287*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
288*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
289012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
290012573ebSchristos };
291012573ebSchristos 
292012573ebSchristos static const CGEN_OPINST sfmt_l_muld_ops[] ATTRIBUTE_UNUSED = {
293*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
294*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
295*e992f068Schristos   { OUTPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
296*e992f068Schristos   { OUTPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
297012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
298012573ebSchristos };
299012573ebSchristos 
300012573ebSchristos static const CGEN_OPINST sfmt_l_mulu_ops[] ATTRIBUTE_UNUSED = {
301*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
302*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
303*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
304*e992f068Schristos   { INPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
305*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
306*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
307*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
308012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
309012573ebSchristos };
310012573ebSchristos 
31175fd0b74Schristos static const CGEN_OPINST sfmt_l_div_ops[] ATTRIBUTE_UNUSED = {
312*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
313*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, COND_REF },
314*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
315*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, COND_REF },
316*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, COND_REF },
317*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, COND_REF },
318012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
319012573ebSchristos };
320012573ebSchristos 
321012573ebSchristos static const CGEN_OPINST sfmt_l_divu_ops[] ATTRIBUTE_UNUSED = {
322*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
323*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, COND_REF },
324*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
325*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, COND_REF },
326*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, COND_REF },
327*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, COND_REF },
32875fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
32975fd0b74Schristos };
33075fd0b74Schristos 
33175fd0b74Schristos static const CGEN_OPINST sfmt_l_ff1_ops[] ATTRIBUTE_UNUSED = {
332*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
333*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
33475fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
33575fd0b74Schristos };
33675fd0b74Schristos 
33775fd0b74Schristos static const CGEN_OPINST sfmt_l_xori_ops[] ATTRIBUTE_UNUSED = {
338*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
33975fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
340*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
34175fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
34275fd0b74Schristos };
34375fd0b74Schristos 
34475fd0b74Schristos static const CGEN_OPINST sfmt_l_addi_ops[] ATTRIBUTE_UNUSED = {
345*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
346*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
34775fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
348*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
349*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
350*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
351*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
352*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
35375fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
35475fd0b74Schristos };
35575fd0b74Schristos 
35675fd0b74Schristos static const CGEN_OPINST sfmt_l_addic_ops[] ATTRIBUTE_UNUSED = {
357*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
358*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
35975fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
360*e992f068Schristos   { INPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
361*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
362*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
363*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
364*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
365*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
36675fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
36775fd0b74Schristos };
36875fd0b74Schristos 
369012573ebSchristos static const CGEN_OPINST sfmt_l_muli_ops[] ATTRIBUTE_UNUSED = {
370*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
371*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
372012573ebSchristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
373*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
374*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
375*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
376*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
377012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
378012573ebSchristos };
379012573ebSchristos 
38075fd0b74Schristos static const CGEN_OPINST sfmt_l_exths_ops[] ATTRIBUTE_UNUSED = {
381*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
382*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
38375fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
38475fd0b74Schristos };
38575fd0b74Schristos 
38675fd0b74Schristos static const CGEN_OPINST sfmt_l_cmov_ops[] ATTRIBUTE_UNUSED = {
387*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, COND_REF },
388*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, COND_REF },
389*e992f068Schristos   { INPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
390*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, COND_REF },
39175fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
39275fd0b74Schristos };
39375fd0b74Schristos 
39475fd0b74Schristos static const CGEN_OPINST sfmt_l_sfgts_ops[] ATTRIBUTE_UNUSED = {
395*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
396*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
397*e992f068Schristos   { OUTPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
39875fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
39975fd0b74Schristos };
40075fd0b74Schristos 
40175fd0b74Schristos static const CGEN_OPINST sfmt_l_sfgtsi_ops[] ATTRIBUTE_UNUSED = {
402*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
40375fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
404*e992f068Schristos   { OUTPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
40575fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
40675fd0b74Schristos };
40775fd0b74Schristos 
40875fd0b74Schristos static const CGEN_OPINST sfmt_l_mac_ops[] ATTRIBUTE_UNUSED = {
409*e992f068Schristos   { INPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
410*e992f068Schristos   { INPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
411*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
412*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
413*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
414*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
415*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
416*e992f068Schristos   { OUTPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
417*e992f068Schristos   { OUTPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
418*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
41975fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
42075fd0b74Schristos };
42175fd0b74Schristos 
42275fd0b74Schristos static const CGEN_OPINST sfmt_l_maci_ops[] ATTRIBUTE_UNUSED = {
423*e992f068Schristos   { INPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
424*e992f068Schristos   { INPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
425*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
426*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
42775fd0b74Schristos   { INPUT, "simm16", HW_H_SIMM16, CGEN_MODE_INT, OP_ENT (SIMM16), 0, 0 },
428*e992f068Schristos   { INPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
429*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
430*e992f068Schristos   { OUTPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
431*e992f068Schristos   { OUTPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
432*e992f068Schristos   { OUTPUT, "sys_sr_ov", HW_H_SYS_SR_OV, CGEN_MODE_USI, 0, 0, 0 },
433012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
434012573ebSchristos };
435012573ebSchristos 
436012573ebSchristos static const CGEN_OPINST sfmt_l_macu_ops[] ATTRIBUTE_UNUSED = {
437*e992f068Schristos   { INPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
438*e992f068Schristos   { INPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
439*e992f068Schristos   { INPUT, "pc", HW_H_PC, CGEN_MODE_USI, 0, 0, COND_REF },
440*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
441*e992f068Schristos   { INPUT, "rB", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RB), 0, 0 },
442*e992f068Schristos   { INPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
443*e992f068Schristos   { INPUT, "sys_sr_ove", HW_H_SYS_SR_OVE, CGEN_MODE_USI, 0, 0, 0 },
444*e992f068Schristos   { OUTPUT, "mac_machi", HW_H_MAC_MACHI, CGEN_MODE_USI, 0, 0, 0 },
445*e992f068Schristos   { OUTPUT, "mac_maclo", HW_H_MAC_MACLO, CGEN_MODE_USI, 0, 0, 0 },
446*e992f068Schristos   { OUTPUT, "sys_sr_cy", HW_H_SYS_SR_CY, CGEN_MODE_USI, 0, 0, 0 },
44775fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
44875fd0b74Schristos };
44975fd0b74Schristos 
45075fd0b74Schristos static const CGEN_OPINST sfmt_lf_add_s_ops[] ATTRIBUTE_UNUSED = {
45175fd0b74Schristos   { INPUT, "rASF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RASF), 0, 0 },
45275fd0b74Schristos   { INPUT, "rBSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RBSF), 0, 0 },
45375fd0b74Schristos   { OUTPUT, "rDSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RDSF), 0, 0 },
45475fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
45575fd0b74Schristos };
45675fd0b74Schristos 
457012573ebSchristos static const CGEN_OPINST sfmt_lf_add_d32_ops[] ATTRIBUTE_UNUSED = {
458012573ebSchristos   { INPUT, "rAD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RAD32F), 0, 0 },
459012573ebSchristos   { INPUT, "rBD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RBD32F), 0, 0 },
460012573ebSchristos   { OUTPUT, "rDD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RDD32F), 0, 0 },
461012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
462012573ebSchristos };
463012573ebSchristos 
46475fd0b74Schristos static const CGEN_OPINST sfmt_lf_itof_s_ops[] ATTRIBUTE_UNUSED = {
465*e992f068Schristos   { INPUT, "rA", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RA), 0, 0 },
466*e992f068Schristos   { INPUT, "sys_fpcsr_rm", HW_H_SYS_FPCSR_RM, CGEN_MODE_USI, 0, 0, 0 },
46775fd0b74Schristos   { OUTPUT, "rDSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RDSF), 0, 0 },
46875fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
46975fd0b74Schristos };
47075fd0b74Schristos 
471012573ebSchristos static const CGEN_OPINST sfmt_lf_itof_d32_ops[] ATTRIBUTE_UNUSED = {
472012573ebSchristos   { INPUT, "rADI", HW_H_I64R, CGEN_MODE_DI, OP_ENT (RADI), 0, 0 },
473*e992f068Schristos   { INPUT, "sys_fpcsr_rm", HW_H_SYS_FPCSR_RM, CGEN_MODE_USI, 0, 0, 0 },
474012573ebSchristos   { OUTPUT, "rDD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RDD32F), 0, 0 },
475012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
476012573ebSchristos };
477012573ebSchristos 
47875fd0b74Schristos static const CGEN_OPINST sfmt_lf_ftoi_s_ops[] ATTRIBUTE_UNUSED = {
47975fd0b74Schristos   { INPUT, "rASF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RASF), 0, 0 },
480*e992f068Schristos   { INPUT, "sys_fpcsr_rm", HW_H_SYS_FPCSR_RM, CGEN_MODE_USI, 0, 0, 0 },
481*e992f068Schristos   { OUTPUT, "rD", HW_H_GPR, CGEN_MODE_USI, OP_ENT (RD), 0, 0 },
48275fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
48375fd0b74Schristos };
48475fd0b74Schristos 
485012573ebSchristos static const CGEN_OPINST sfmt_lf_ftoi_d32_ops[] ATTRIBUTE_UNUSED = {
486012573ebSchristos   { INPUT, "rAD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RAD32F), 0, 0 },
487*e992f068Schristos   { INPUT, "sys_fpcsr_rm", HW_H_SYS_FPCSR_RM, CGEN_MODE_USI, 0, 0, 0 },
488012573ebSchristos   { OUTPUT, "rDDI", HW_H_I64R, CGEN_MODE_DI, OP_ENT (RDDI), 0, 0 },
489012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
490012573ebSchristos };
491012573ebSchristos 
492012573ebSchristos static const CGEN_OPINST sfmt_lf_sfeq_s_ops[] ATTRIBUTE_UNUSED = {
49375fd0b74Schristos   { INPUT, "rASF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RASF), 0, 0 },
49475fd0b74Schristos   { INPUT, "rBSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RBSF), 0, 0 },
495*e992f068Schristos   { OUTPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
49675fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
49775fd0b74Schristos };
49875fd0b74Schristos 
499012573ebSchristos static const CGEN_OPINST sfmt_lf_sfeq_d32_ops[] ATTRIBUTE_UNUSED = {
500012573ebSchristos   { INPUT, "rAD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RAD32F), 0, 0 },
501012573ebSchristos   { INPUT, "rBD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RBD32F), 0, 0 },
502*e992f068Schristos   { OUTPUT, "sys_sr_f", HW_H_SYS_SR_F, CGEN_MODE_USI, 0, 0, 0 },
503012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
504012573ebSchristos };
505012573ebSchristos 
50675fd0b74Schristos static const CGEN_OPINST sfmt_lf_madd_s_ops[] ATTRIBUTE_UNUSED = {
50775fd0b74Schristos   { INPUT, "rASF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RASF), 0, 0 },
50875fd0b74Schristos   { INPUT, "rBSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RBSF), 0, 0 },
50975fd0b74Schristos   { INPUT, "rDSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RDSF), 0, 0 },
51075fd0b74Schristos   { OUTPUT, "rDSF", HW_H_FSR, CGEN_MODE_SF, OP_ENT (RDSF), 0, 0 },
51175fd0b74Schristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
51275fd0b74Schristos };
51375fd0b74Schristos 
514012573ebSchristos static const CGEN_OPINST sfmt_lf_madd_d32_ops[] ATTRIBUTE_UNUSED = {
515012573ebSchristos   { INPUT, "rAD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RAD32F), 0, 0 },
516012573ebSchristos   { INPUT, "rBD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RBD32F), 0, 0 },
517012573ebSchristos   { INPUT, "rDD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RDD32F), 0, 0 },
518012573ebSchristos   { OUTPUT, "rDD32F", HW_H_FD32R, CGEN_MODE_DF, OP_ENT (RDD32F), 0, 0 },
519012573ebSchristos   { END, (const char *)0, (enum cgen_hw_type)0, (enum cgen_mode)0, (enum cgen_operand_type)0, 0, 0 }
520012573ebSchristos };
521012573ebSchristos 
52275fd0b74Schristos #undef OP_ENT
52375fd0b74Schristos #undef INPUT
52475fd0b74Schristos #undef OUTPUT
52575fd0b74Schristos #undef END
52675fd0b74Schristos #undef COND_REF
52775fd0b74Schristos 
52875fd0b74Schristos /* Operand instance lookup table.  */
52975fd0b74Schristos 
53075fd0b74Schristos static const CGEN_OPINST *or1k_cgen_opinst_table[MAX_INSNS] = {
53175fd0b74Schristos   0,
53275fd0b74Schristos   & sfmt_l_j_ops[0],
533012573ebSchristos   & sfmt_l_adrp_ops[0],
53475fd0b74Schristos   & sfmt_l_jal_ops[0],
53575fd0b74Schristos   & sfmt_l_jr_ops[0],
53675fd0b74Schristos   & sfmt_l_jalr_ops[0],
53775fd0b74Schristos   & sfmt_l_bnf_ops[0],
53875fd0b74Schristos   & sfmt_l_bnf_ops[0],
53975fd0b74Schristos   & sfmt_l_trap_ops[0],
54075fd0b74Schristos   & sfmt_l_trap_ops[0],
54175fd0b74Schristos   & sfmt_l_msync_ops[0],
54275fd0b74Schristos   & sfmt_l_msync_ops[0],
54375fd0b74Schristos   & sfmt_l_msync_ops[0],
54475fd0b74Schristos   & sfmt_l_msync_ops[0],
54575fd0b74Schristos   & sfmt_l_nop_imm_ops[0],
54675fd0b74Schristos   & sfmt_l_msync_ops[0],
54775fd0b74Schristos   & sfmt_l_movhi_ops[0],
54875fd0b74Schristos   & sfmt_l_macrc_ops[0],
54975fd0b74Schristos   & sfmt_l_mfspr_ops[0],
55075fd0b74Schristos   & sfmt_l_mtspr_ops[0],
55175fd0b74Schristos   & sfmt_l_lwz_ops[0],
55275fd0b74Schristos   & sfmt_l_lws_ops[0],
55375fd0b74Schristos   & sfmt_l_lwa_ops[0],
55475fd0b74Schristos   & sfmt_l_lbz_ops[0],
55575fd0b74Schristos   & sfmt_l_lbs_ops[0],
55675fd0b74Schristos   & sfmt_l_lhz_ops[0],
55775fd0b74Schristos   & sfmt_l_lhs_ops[0],
55875fd0b74Schristos   & sfmt_l_sw_ops[0],
55975fd0b74Schristos   & sfmt_l_sb_ops[0],
56075fd0b74Schristos   & sfmt_l_sh_ops[0],
56175fd0b74Schristos   & sfmt_l_swa_ops[0],
56275fd0b74Schristos   & sfmt_l_sll_ops[0],
56375fd0b74Schristos   & sfmt_l_slli_ops[0],
56475fd0b74Schristos   & sfmt_l_sll_ops[0],
56575fd0b74Schristos   & sfmt_l_slli_ops[0],
56675fd0b74Schristos   & sfmt_l_sll_ops[0],
56775fd0b74Schristos   & sfmt_l_slli_ops[0],
56875fd0b74Schristos   & sfmt_l_sll_ops[0],
56975fd0b74Schristos   & sfmt_l_slli_ops[0],
57075fd0b74Schristos   & sfmt_l_and_ops[0],
57175fd0b74Schristos   & sfmt_l_and_ops[0],
57275fd0b74Schristos   & sfmt_l_and_ops[0],
57375fd0b74Schristos   & sfmt_l_add_ops[0],
57475fd0b74Schristos   & sfmt_l_add_ops[0],
57575fd0b74Schristos   & sfmt_l_addc_ops[0],
576012573ebSchristos   & sfmt_l_mul_ops[0],
577012573ebSchristos   & sfmt_l_muld_ops[0],
578012573ebSchristos   & sfmt_l_mulu_ops[0],
579012573ebSchristos   & sfmt_l_muld_ops[0],
58075fd0b74Schristos   & sfmt_l_div_ops[0],
581012573ebSchristos   & sfmt_l_divu_ops[0],
58275fd0b74Schristos   & sfmt_l_ff1_ops[0],
58375fd0b74Schristos   & sfmt_l_ff1_ops[0],
58475fd0b74Schristos   & sfmt_l_mfspr_ops[0],
58575fd0b74Schristos   & sfmt_l_mfspr_ops[0],
58675fd0b74Schristos   & sfmt_l_xori_ops[0],
58775fd0b74Schristos   & sfmt_l_addi_ops[0],
58875fd0b74Schristos   & sfmt_l_addic_ops[0],
589012573ebSchristos   & sfmt_l_muli_ops[0],
59075fd0b74Schristos   & sfmt_l_exths_ops[0],
59175fd0b74Schristos   & sfmt_l_exths_ops[0],
59275fd0b74Schristos   & sfmt_l_exths_ops[0],
59375fd0b74Schristos   & sfmt_l_exths_ops[0],
59475fd0b74Schristos   & sfmt_l_exths_ops[0],
59575fd0b74Schristos   & sfmt_l_exths_ops[0],
59675fd0b74Schristos   & sfmt_l_cmov_ops[0],
59775fd0b74Schristos   & sfmt_l_sfgts_ops[0],
59875fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
59975fd0b74Schristos   & sfmt_l_sfgts_ops[0],
60075fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
60175fd0b74Schristos   & sfmt_l_sfgts_ops[0],
60275fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
60375fd0b74Schristos   & sfmt_l_sfgts_ops[0],
60475fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
60575fd0b74Schristos   & sfmt_l_sfgts_ops[0],
60675fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
60775fd0b74Schristos   & sfmt_l_sfgts_ops[0],
60875fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
60975fd0b74Schristos   & sfmt_l_sfgts_ops[0],
61075fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
61175fd0b74Schristos   & sfmt_l_sfgts_ops[0],
61275fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
61375fd0b74Schristos   & sfmt_l_sfgts_ops[0],
61475fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
61575fd0b74Schristos   & sfmt_l_sfgts_ops[0],
61675fd0b74Schristos   & sfmt_l_sfgtsi_ops[0],
61775fd0b74Schristos   & sfmt_l_mac_ops[0],
61875fd0b74Schristos   & sfmt_l_maci_ops[0],
619012573ebSchristos   & sfmt_l_macu_ops[0],
620012573ebSchristos   & sfmt_l_mac_ops[0],
621012573ebSchristos   & sfmt_l_macu_ops[0],
62275fd0b74Schristos   & sfmt_l_msync_ops[0],
62375fd0b74Schristos   & sfmt_l_msync_ops[0],
62475fd0b74Schristos   & sfmt_l_msync_ops[0],
62575fd0b74Schristos   & sfmt_l_msync_ops[0],
62675fd0b74Schristos   & sfmt_l_msync_ops[0],
62775fd0b74Schristos   & sfmt_l_msync_ops[0],
62875fd0b74Schristos   & sfmt_l_msync_ops[0],
62975fd0b74Schristos   & sfmt_l_msync_ops[0],
63075fd0b74Schristos   & sfmt_lf_add_s_ops[0],
631012573ebSchristos   & sfmt_lf_add_d32_ops[0],
63275fd0b74Schristos   & sfmt_lf_add_s_ops[0],
633012573ebSchristos   & sfmt_lf_add_d32_ops[0],
63475fd0b74Schristos   & sfmt_lf_add_s_ops[0],
635012573ebSchristos   & sfmt_lf_add_d32_ops[0],
63675fd0b74Schristos   & sfmt_lf_add_s_ops[0],
637012573ebSchristos   & sfmt_lf_add_d32_ops[0],
63875fd0b74Schristos   & sfmt_lf_add_s_ops[0],
639012573ebSchristos   & sfmt_lf_add_d32_ops[0],
64075fd0b74Schristos   & sfmt_lf_itof_s_ops[0],
641012573ebSchristos   & sfmt_lf_itof_d32_ops[0],
64275fd0b74Schristos   & sfmt_lf_ftoi_s_ops[0],
643012573ebSchristos   & sfmt_lf_ftoi_d32_ops[0],
644012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
645012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
646012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
647012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
648012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
649012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
650012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
651012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
652012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
653012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
654012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
655012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
656012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
657012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
658012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
659012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
660012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
661012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
662012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
663012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
664012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
665012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
666012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
667012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
668012573ebSchristos   & sfmt_lf_sfeq_s_ops[0],
669012573ebSchristos   & sfmt_lf_sfeq_d32_ops[0],
67075fd0b74Schristos   & sfmt_lf_madd_s_ops[0],
671012573ebSchristos   & sfmt_lf_madd_d32_ops[0],
672012573ebSchristos   & sfmt_l_msync_ops[0],
67375fd0b74Schristos   & sfmt_l_msync_ops[0],
67475fd0b74Schristos };
67575fd0b74Schristos 
67675fd0b74Schristos /* Function to call before using the operand instance table.  */
67775fd0b74Schristos 
67875fd0b74Schristos void
or1k_cgen_init_opinst_table(CGEN_CPU_DESC cd)67975fd0b74Schristos or1k_cgen_init_opinst_table (CGEN_CPU_DESC cd)
68075fd0b74Schristos {
68175fd0b74Schristos   int i;
68275fd0b74Schristos   const CGEN_OPINST **oi = & or1k_cgen_opinst_table[0];
68375fd0b74Schristos   CGEN_INSN *insns = (CGEN_INSN *) cd->insn_table.init_entries;
68475fd0b74Schristos   for (i = 0; i < MAX_INSNS; ++i)
68575fd0b74Schristos     insns[i].opinst = oi[i];
68675fd0b74Schristos }
687