OSDN Git Service

Regenerate cgen files, update copyright year.
[pf3gnuchains/pf3gnuchains3x.git] / sid / component / cgen-cpu / sh / sh2a-nofpu-decode.h
1 /* Decode header for sh2a_nofpu.
2
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
4
5 Copyright (C) 2000-2010 Red Hat, Inc.
6
7 This file is part of the Red Hat simulators.
8
9
10 */
11
12 #ifndef SH2A_NOFPU_DECODE_H
13 #define SH2A_NOFPU_DECODE_H
14
15 namespace sh2a_nofpu {
16 // forward declaration of struct in -defs.h
17 struct write_stacks;
18 }
19
20 namespace sh2a_nofpu {
21
22 using namespace cgen;
23 using namespace sh;
24
25 typedef UINT sh2a_nofpu_insn_word;
26
27 /* Enum declaration for instructions in cpu family sh2a_nofpu.  */
28 typedef enum sh2a_nofpu_insn_type {
29   SH2A_NOFPU_INSN_X_INVALID, SH2A_NOFPU_INSN_ADD_COMPACT, SH2A_NOFPU_INSN_ADDI_COMPACT, SH2A_NOFPU_INSN_ADDC_COMPACT
30  , SH2A_NOFPU_INSN_ADDV_COMPACT, SH2A_NOFPU_INSN_AND_COMPACT, SH2A_NOFPU_INSN_ANDI_COMPACT, SH2A_NOFPU_INSN_ANDB_COMPACT
31  , SH2A_NOFPU_INSN_BF_COMPACT, SH2A_NOFPU_INSN_BFS_COMPACT, SH2A_NOFPU_INSN_BRA_COMPACT, SH2A_NOFPU_INSN_BRAF_COMPACT
32  , SH2A_NOFPU_INSN_BSR_COMPACT, SH2A_NOFPU_INSN_BSRF_COMPACT, SH2A_NOFPU_INSN_BT_COMPACT, SH2A_NOFPU_INSN_BTS_COMPACT
33  , SH2A_NOFPU_INSN_CLRMAC_COMPACT, SH2A_NOFPU_INSN_CLRT_COMPACT, SH2A_NOFPU_INSN_CMPEQ_COMPACT, SH2A_NOFPU_INSN_CMPEQI_COMPACT
34  , SH2A_NOFPU_INSN_CMPGE_COMPACT, SH2A_NOFPU_INSN_CMPGT_COMPACT, SH2A_NOFPU_INSN_CMPHI_COMPACT, SH2A_NOFPU_INSN_CMPHS_COMPACT
35  , SH2A_NOFPU_INSN_CMPPL_COMPACT, SH2A_NOFPU_INSN_CMPPZ_COMPACT, SH2A_NOFPU_INSN_CMPSTR_COMPACT, SH2A_NOFPU_INSN_DIV0S_COMPACT
36  , SH2A_NOFPU_INSN_DIV0U_COMPACT, SH2A_NOFPU_INSN_DIV1_COMPACT, SH2A_NOFPU_INSN_DIVU_COMPACT, SH2A_NOFPU_INSN_MULR_COMPACT
37  , SH2A_NOFPU_INSN_DMULSL_COMPACT, SH2A_NOFPU_INSN_DMULUL_COMPACT, SH2A_NOFPU_INSN_DT_COMPACT, SH2A_NOFPU_INSN_EXTSB_COMPACT
38  , SH2A_NOFPU_INSN_EXTSW_COMPACT, SH2A_NOFPU_INSN_EXTUB_COMPACT, SH2A_NOFPU_INSN_EXTUW_COMPACT, SH2A_NOFPU_INSN_FRCHG_COMPACT
39  , SH2A_NOFPU_INSN_FSCHG_COMPACT, SH2A_NOFPU_INSN_JMP_COMPACT, SH2A_NOFPU_INSN_JSR_COMPACT, SH2A_NOFPU_INSN_LDC_GBR_COMPACT
40  , SH2A_NOFPU_INSN_LDC_VBR_COMPACT, SH2A_NOFPU_INSN_LDC_SR_COMPACT, SH2A_NOFPU_INSN_LDCL_GBR_COMPACT, SH2A_NOFPU_INSN_LDCL_VBR_COMPACT
41  , SH2A_NOFPU_INSN_LDS_MACH_COMPACT, SH2A_NOFPU_INSN_LDSL_MACH_COMPACT, SH2A_NOFPU_INSN_LDS_MACL_COMPACT, SH2A_NOFPU_INSN_LDSL_MACL_COMPACT
42  , SH2A_NOFPU_INSN_LDS_PR_COMPACT, SH2A_NOFPU_INSN_LDSL_PR_COMPACT, SH2A_NOFPU_INSN_MACL_COMPACT, SH2A_NOFPU_INSN_MACW_COMPACT
43  , SH2A_NOFPU_INSN_MOV_COMPACT, SH2A_NOFPU_INSN_MOVI_COMPACT, SH2A_NOFPU_INSN_MOVI20_COMPACT, SH2A_NOFPU_INSN_MOVB1_COMPACT
44  , SH2A_NOFPU_INSN_MOVB2_COMPACT, SH2A_NOFPU_INSN_MOVB3_COMPACT, SH2A_NOFPU_INSN_MOVB4_COMPACT, SH2A_NOFPU_INSN_MOVB5_COMPACT
45  , SH2A_NOFPU_INSN_MOVB6_COMPACT, SH2A_NOFPU_INSN_MOVB7_COMPACT, SH2A_NOFPU_INSN_MOVB8_COMPACT, SH2A_NOFPU_INSN_MOVB9_COMPACT
46  , SH2A_NOFPU_INSN_MOVB10_COMPACT, SH2A_NOFPU_INSN_MOVL1_COMPACT, SH2A_NOFPU_INSN_MOVL2_COMPACT, SH2A_NOFPU_INSN_MOVL3_COMPACT
47  , SH2A_NOFPU_INSN_MOVL4_COMPACT, SH2A_NOFPU_INSN_MOVL5_COMPACT, SH2A_NOFPU_INSN_MOVL6_COMPACT, SH2A_NOFPU_INSN_MOVL7_COMPACT
48  , SH2A_NOFPU_INSN_MOVL8_COMPACT, SH2A_NOFPU_INSN_MOVL9_COMPACT, SH2A_NOFPU_INSN_MOVL10_COMPACT, SH2A_NOFPU_INSN_MOVL11_COMPACT
49  , SH2A_NOFPU_INSN_MOVL12_COMPACT, SH2A_NOFPU_INSN_MOVL13_COMPACT, SH2A_NOFPU_INSN_MOVW1_COMPACT, SH2A_NOFPU_INSN_MOVW2_COMPACT
50  , SH2A_NOFPU_INSN_MOVW3_COMPACT, SH2A_NOFPU_INSN_MOVW4_COMPACT, SH2A_NOFPU_INSN_MOVW5_COMPACT, SH2A_NOFPU_INSN_MOVW6_COMPACT
51  , SH2A_NOFPU_INSN_MOVW7_COMPACT, SH2A_NOFPU_INSN_MOVW8_COMPACT, SH2A_NOFPU_INSN_MOVW9_COMPACT, SH2A_NOFPU_INSN_MOVW10_COMPACT
52  , SH2A_NOFPU_INSN_MOVW11_COMPACT, SH2A_NOFPU_INSN_MOVA_COMPACT, SH2A_NOFPU_INSN_MOVT_COMPACT, SH2A_NOFPU_INSN_MULL_COMPACT
53  , SH2A_NOFPU_INSN_MULSW_COMPACT, SH2A_NOFPU_INSN_MULUW_COMPACT, SH2A_NOFPU_INSN_NEG_COMPACT, SH2A_NOFPU_INSN_NEGC_COMPACT
54  , SH2A_NOFPU_INSN_NOP_COMPACT, SH2A_NOFPU_INSN_NOT_COMPACT, SH2A_NOFPU_INSN_OR_COMPACT, SH2A_NOFPU_INSN_ORI_COMPACT
55  , SH2A_NOFPU_INSN_ORB_COMPACT, SH2A_NOFPU_INSN_ROTCL_COMPACT, SH2A_NOFPU_INSN_ROTCR_COMPACT, SH2A_NOFPU_INSN_ROTL_COMPACT
56  , SH2A_NOFPU_INSN_ROTR_COMPACT, SH2A_NOFPU_INSN_RTS_COMPACT, SH2A_NOFPU_INSN_SETT_COMPACT, SH2A_NOFPU_INSN_SHAD_COMPACT
57  , SH2A_NOFPU_INSN_SHAL_COMPACT, SH2A_NOFPU_INSN_SHAR_COMPACT, SH2A_NOFPU_INSN_SHLL_COMPACT, SH2A_NOFPU_INSN_SHLL2_COMPACT
58  , SH2A_NOFPU_INSN_SHLL8_COMPACT, SH2A_NOFPU_INSN_SHLL16_COMPACT, SH2A_NOFPU_INSN_SHLR_COMPACT, SH2A_NOFPU_INSN_SHLR2_COMPACT
59  , SH2A_NOFPU_INSN_SHLR8_COMPACT, SH2A_NOFPU_INSN_SHLR16_COMPACT, SH2A_NOFPU_INSN_STC_GBR_COMPACT, SH2A_NOFPU_INSN_STC_VBR_COMPACT
60  , SH2A_NOFPU_INSN_STCL_GBR_COMPACT, SH2A_NOFPU_INSN_STCL_VBR_COMPACT, SH2A_NOFPU_INSN_STS_MACH_COMPACT, SH2A_NOFPU_INSN_STSL_MACH_COMPACT
61  , SH2A_NOFPU_INSN_STS_MACL_COMPACT, SH2A_NOFPU_INSN_STSL_MACL_COMPACT, SH2A_NOFPU_INSN_STS_PR_COMPACT, SH2A_NOFPU_INSN_STSL_PR_COMPACT
62  , SH2A_NOFPU_INSN_SUB_COMPACT, SH2A_NOFPU_INSN_SUBC_COMPACT, SH2A_NOFPU_INSN_SUBV_COMPACT, SH2A_NOFPU_INSN_SWAPB_COMPACT
63  , SH2A_NOFPU_INSN_SWAPW_COMPACT, SH2A_NOFPU_INSN_TASB_COMPACT, SH2A_NOFPU_INSN_TRAPA_COMPACT, SH2A_NOFPU_INSN_TST_COMPACT
64  , SH2A_NOFPU_INSN_TSTI_COMPACT, SH2A_NOFPU_INSN_TSTB_COMPACT, SH2A_NOFPU_INSN_XOR_COMPACT, SH2A_NOFPU_INSN_XORI_COMPACT
65  , SH2A_NOFPU_INSN_XORB_COMPACT, SH2A_NOFPU_INSN_XTRCT_COMPACT
66 } SH2A_NOFPU_INSN_TYPE;
67
68
69 // Forward decls.
70 struct sh2a_nofpu_cpu;
71 struct sh2a_nofpu_scache;
72 typedef void (sh2a_nofpu_sem_fn) (sh2a_nofpu_cpu* cpu, sh2a_nofpu_scache* sem, int tick, sh2a_nofpu::write_stacks &buf);
73
74
75 // Instruction descriptor.
76
77 struct sh2a_nofpu_idesc {
78
79   // scache engine executor for this insn
80   sh2a_nofpu_sem_fn* execute;
81
82   const char* insn_name;
83   enum sh2a_nofpu_insn_type sem_index;
84   sh_insn_attr attrs;
85
86   // idesc table: indexed by sem_index
87   static sh2a_nofpu_idesc idesc_table[];
88
89   static sh2a_nofpu_insn_type lookup_virtual (virtual_insn_type vit);
90 };
91
92 // Instruction argument buffer.
93
94 union sh2a_nofpu_sem_fields {
95   struct { /* no operands */
96     int empty;
97   } fmt_empty;
98   struct { /*  */
99     IADDR i_disp12;
100   } sfmt_bra_compact;
101   struct { /*  */
102     IADDR i_disp8;
103   } sfmt_bf_compact;
104   struct { /*  */
105     SI f_imm8x2;
106     unsigned char out_r0;
107   } sfmt_movw9_compact;
108   struct { /*  */
109     SI f_imm8x2;
110     unsigned char in_r0;
111   } sfmt_movw4_compact;
112   struct { /*  */
113     SI f_imm8x4;
114     unsigned char out_r0;
115   } sfmt_movl9_compact;
116   struct { /*  */
117     SI f_imm8x4;
118     unsigned char in_r0;
119   } sfmt_movl4_compact;
120   struct { /*  */
121     SI f_imm8x2;
122     UINT f_rn;
123     unsigned char out_rn;
124   } sfmt_movw10_compact;
125   struct { /*  */
126     SI f_imm8x4;
127     UINT f_rn;
128     unsigned char out_rn;
129   } sfmt_movl10_compact;
130   struct { /*  */
131     INT f_imm20;
132     UINT f_rn;
133     unsigned char out_rn;
134   } sfmt_movi20_compact;
135   struct { /*  */
136     UINT f_imm8;
137     unsigned char in_r0;
138     unsigned char out_r0;
139   } sfmt_andi_compact;
140   struct { /*  */
141     SI f_imm4x2;
142     UINT f_rm;
143     unsigned char in_rm;
144     unsigned char out_r0;
145   } sfmt_movw11_compact;
146   struct { /*  */
147     SI f_imm4x2;
148     UINT f_rm;
149     unsigned char in_r0;
150     unsigned char in_rm;
151   } sfmt_movw5_compact;
152   struct { /*  */
153     UINT f_imm4;
154     UINT f_rm;
155     unsigned char in_rm;
156     unsigned char out_r0;
157   } sfmt_movb10_compact;
158   struct { /*  */
159     UINT f_imm4;
160     UINT f_rm;
161     unsigned char in_r0;
162     unsigned char in_rm;
163   } sfmt_movb5_compact;
164   struct { /*  */
165     UINT f_rn;
166     unsigned char in_r0;
167     unsigned char in_rn;
168     unsigned char out_rn;
169   } sfmt_divu_compact;
170   struct { /*  */
171     UINT f_imm8;
172     UINT f_rn;
173     unsigned char in_rn;
174     unsigned char out_rn;
175   } sfmt_addi_compact;
176   struct { /*  */
177     SI f_imm12x4;
178     UINT f_rm;
179     UINT f_rn;
180     unsigned char in_rm;
181     unsigned char in_rn;
182   } sfmt_movl13_compact;
183   struct { /*  */
184     SI f_imm12x4;
185     UINT f_rm;
186     UINT f_rn;
187     unsigned char in_rm;
188     unsigned char out_rn;
189   } sfmt_movl12_compact;
190   struct { /*  */
191     SI f_imm4x4;
192     UINT f_rm;
193     UINT f_rn;
194     unsigned char in_rm;
195     unsigned char out_rn;
196   } sfmt_movl11_compact;
197   struct { /*  */
198     SI f_imm4x4;
199     UINT f_rm;
200     UINT f_rn;
201     unsigned char in_rm;
202     unsigned char in_rn;
203   } sfmt_movl5_compact;
204   struct { /*  */
205     UINT f_rm;
206     UINT f_rn;
207     unsigned char in_r0;
208     unsigned char in_rm;
209     unsigned char out_rn;
210   } sfmt_movb8_compact;
211   struct { /*  */
212     UINT f_rm;
213     UINT f_rn;
214     unsigned char in_r0;
215     unsigned char in_rm;
216     unsigned char in_rn;
217   } sfmt_movb3_compact;
218   struct { /*  */
219     UINT f_rm;
220     UINT f_rn;
221     unsigned char in_rm64;
222     unsigned char in_rn64;
223     unsigned char out_rn64;
224   } sfmt_and_compact;
225   struct { /*  */
226     UINT f_rm;
227     UINT f_rn;
228     unsigned char in_rm;
229     unsigned char in_rn;
230     unsigned char out_rm;
231     unsigned char out_rn;
232   } sfmt_macl_compact;
233   // This one is for chain/cti-chain virtual insns.
234   struct {
235     // Number of insns in pbb.
236     unsigned insn_count;
237     // This is used by chain insns and by untaken conditional branches.
238     sh2a_nofpu_scache* next;
239     sh2a_nofpu_scache* branch_target;
240   } chain;
241   // This one is for `before' virtual insns.
242   struct {
243     // The cache entry of the real insn.
244     sh2a_nofpu_scache* insn;
245   } before;
246 };
247
248 // Simulator instruction cache.
249
250 struct sh2a_nofpu_scache {
251   // executor
252   union {
253     cgoto_label cgoto;
254     sh2a_nofpu_sem_fn* fn;
255   } execute;
256
257   // PC of this instruction.
258   PCADDR addr;
259
260   // instruction class
261   sh2a_nofpu_idesc* idesc;
262
263   // argument buffer
264   sh2a_nofpu_sem_fields fields;
265
266
267   // writeback flags
268   // Only used if profiling or parallel execution support enabled during
269   // file generation.
270   unsigned long long written;
271
272
273   // decode given instruction
274   void decode (sh2a_nofpu_cpu* current_cpu, PCADDR pc, sh2a_nofpu_insn_word base_insn, sh2a_nofpu_insn_word entire_insn);
275 };
276
277 } // end sh2a_nofpu namespace
278
279 // Decls of each semantic fn.
280
281 using sh2a_nofpu::sh2a_nofpu_sem_fn;
282 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_x_invalid;
283 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_add_compact;
284 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_addi_compact;
285 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_addc_compact;
286 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_addv_compact;
287 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_and_compact;
288 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_andi_compact;
289 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_andb_compact;
290 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bf_compact;
291 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bfs_compact;
292 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bra_compact;
293 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_braf_compact;
294 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bsr_compact;
295 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bsrf_compact;
296 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bt_compact;
297 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_bts_compact;
298 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_clrmac_compact;
299 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_clrt_compact;
300 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmpeq_compact;
301 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmpeqi_compact;
302 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmpge_compact;
303 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmpgt_compact;
304 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmphi_compact;
305 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmphs_compact;
306 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmppl_compact;
307 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmppz_compact;
308 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_cmpstr_compact;
309 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_div0s_compact;
310 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_div0u_compact;
311 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_div1_compact;
312 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_divu_compact;
313 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_mulr_compact;
314 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_dmulsl_compact;
315 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_dmulul_compact;
316 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_dt_compact;
317 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_extsb_compact;
318 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_extsw_compact;
319 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_extub_compact;
320 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_extuw_compact;
321 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_frchg_compact;
322 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_fschg_compact;
323 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_jmp_compact;
324 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_jsr_compact;
325 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldc_gbr_compact;
326 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldc_vbr_compact;
327 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldc_sr_compact;
328 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldcl_gbr_compact;
329 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldcl_vbr_compact;
330 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_lds_mach_compact;
331 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldsl_mach_compact;
332 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_lds_macl_compact;
333 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldsl_macl_compact;
334 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_lds_pr_compact;
335 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ldsl_pr_compact;
336 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_macl_compact;
337 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_macw_compact;
338 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_mov_compact;
339 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movi_compact;
340 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movi20_compact;
341 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb1_compact;
342 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb2_compact;
343 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb3_compact;
344 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb4_compact;
345 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb5_compact;
346 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb6_compact;
347 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb7_compact;
348 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb8_compact;
349 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb9_compact;
350 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movb10_compact;
351 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl1_compact;
352 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl2_compact;
353 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl3_compact;
354 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl4_compact;
355 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl5_compact;
356 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl6_compact;
357 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl7_compact;
358 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl8_compact;
359 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl9_compact;
360 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl10_compact;
361 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl11_compact;
362 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl12_compact;
363 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movl13_compact;
364 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw1_compact;
365 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw2_compact;
366 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw3_compact;
367 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw4_compact;
368 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw5_compact;
369 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw6_compact;
370 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw7_compact;
371 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw8_compact;
372 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw9_compact;
373 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw10_compact;
374 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movw11_compact;
375 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_mova_compact;
376 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_movt_compact;
377 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_mull_compact;
378 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_mulsw_compact;
379 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_muluw_compact;
380 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_neg_compact;
381 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_negc_compact;
382 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_nop_compact;
383 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_not_compact;
384 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_or_compact;
385 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_ori_compact;
386 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_orb_compact;
387 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_rotcl_compact;
388 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_rotcr_compact;
389 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_rotl_compact;
390 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_rotr_compact;
391 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_rts_compact;
392 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_sett_compact;
393 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shad_compact;
394 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shal_compact;
395 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shar_compact;
396 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shll_compact;
397 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shll2_compact;
398 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shll8_compact;
399 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shll16_compact;
400 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shlr_compact;
401 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shlr2_compact;
402 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shlr8_compact;
403 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_shlr16_compact;
404 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stc_gbr_compact;
405 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stc_vbr_compact;
406 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stcl_gbr_compact;
407 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stcl_vbr_compact;
408 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_sts_mach_compact;
409 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stsl_mach_compact;
410 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_sts_macl_compact;
411 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stsl_macl_compact;
412 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_sts_pr_compact;
413 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_stsl_pr_compact;
414 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_sub_compact;
415 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_subc_compact;
416 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_subv_compact;
417 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_swapb_compact;
418 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_swapw_compact;
419 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_tasb_compact;
420 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_trapa_compact;
421 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_tst_compact;
422 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_tsti_compact;
423 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_tstb_compact;
424 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_xor_compact;
425 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_xori_compact;
426 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_xorb_compact;
427 extern sh2a_nofpu_sem_fn sh2a_nofpu_sem_xtrct_compact;
428
429 #endif /* SH2A_NOFPU_DECODE_H */