OSDN Git Service

Regenerate cgen files, update copyright year.
[pf3gnuchains/pf3gnuchains3x.git] / sid / component / cgen-cpu / sh / sh4-nofpu-decode.h
1 /* Decode header for sh4_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 SH4_NOFPU_DECODE_H
13 #define SH4_NOFPU_DECODE_H
14
15 namespace sh4_nofpu {
16 // forward declaration of struct in -defs.h
17 struct write_stacks;
18 }
19
20 namespace sh4_nofpu {
21
22 using namespace cgen;
23 using namespace sh;
24
25 typedef UINT sh4_nofpu_insn_word;
26
27 /* Enum declaration for instructions in cpu family sh4_nofpu.  */
28 typedef enum sh4_nofpu_insn_type {
29   SH4_NOFPU_INSN_X_INVALID, SH4_NOFPU_INSN_ADD_COMPACT, SH4_NOFPU_INSN_ADDI_COMPACT, SH4_NOFPU_INSN_ADDC_COMPACT
30  , SH4_NOFPU_INSN_ADDV_COMPACT, SH4_NOFPU_INSN_AND_COMPACT, SH4_NOFPU_INSN_ANDI_COMPACT, SH4_NOFPU_INSN_ANDB_COMPACT
31  , SH4_NOFPU_INSN_BF_COMPACT, SH4_NOFPU_INSN_BFS_COMPACT, SH4_NOFPU_INSN_BRA_COMPACT, SH4_NOFPU_INSN_BRAF_COMPACT
32  , SH4_NOFPU_INSN_BSR_COMPACT, SH4_NOFPU_INSN_BSRF_COMPACT, SH4_NOFPU_INSN_BT_COMPACT, SH4_NOFPU_INSN_BTS_COMPACT
33  , SH4_NOFPU_INSN_CLRMAC_COMPACT, SH4_NOFPU_INSN_CLRS_COMPACT, SH4_NOFPU_INSN_CLRT_COMPACT, SH4_NOFPU_INSN_CMPEQ_COMPACT
34  , SH4_NOFPU_INSN_CMPEQI_COMPACT, SH4_NOFPU_INSN_CMPGE_COMPACT, SH4_NOFPU_INSN_CMPGT_COMPACT, SH4_NOFPU_INSN_CMPHI_COMPACT
35  , SH4_NOFPU_INSN_CMPHS_COMPACT, SH4_NOFPU_INSN_CMPPL_COMPACT, SH4_NOFPU_INSN_CMPPZ_COMPACT, SH4_NOFPU_INSN_CMPSTR_COMPACT
36  , SH4_NOFPU_INSN_DIV0S_COMPACT, SH4_NOFPU_INSN_DIV0U_COMPACT, SH4_NOFPU_INSN_DIV1_COMPACT, SH4_NOFPU_INSN_DIVU_COMPACT
37  , SH4_NOFPU_INSN_MULR_COMPACT, SH4_NOFPU_INSN_DMULSL_COMPACT, SH4_NOFPU_INSN_DMULUL_COMPACT, SH4_NOFPU_INSN_DT_COMPACT
38  , SH4_NOFPU_INSN_EXTSB_COMPACT, SH4_NOFPU_INSN_EXTSW_COMPACT, SH4_NOFPU_INSN_EXTUB_COMPACT, SH4_NOFPU_INSN_EXTUW_COMPACT
39  , SH4_NOFPU_INSN_FRCHG_COMPACT, SH4_NOFPU_INSN_FSCHG_COMPACT, SH4_NOFPU_INSN_JMP_COMPACT, SH4_NOFPU_INSN_JSR_COMPACT
40  , SH4_NOFPU_INSN_LDC_GBR_COMPACT, SH4_NOFPU_INSN_LDC_VBR_COMPACT, SH4_NOFPU_INSN_LDC_SR_COMPACT, SH4_NOFPU_INSN_LDCL_GBR_COMPACT
41  , SH4_NOFPU_INSN_LDCL_VBR_COMPACT, SH4_NOFPU_INSN_LDS_MACH_COMPACT, SH4_NOFPU_INSN_LDSL_MACH_COMPACT, SH4_NOFPU_INSN_LDS_MACL_COMPACT
42  , SH4_NOFPU_INSN_LDSL_MACL_COMPACT, SH4_NOFPU_INSN_LDS_PR_COMPACT, SH4_NOFPU_INSN_LDSL_PR_COMPACT, SH4_NOFPU_INSN_MACL_COMPACT
43  , SH4_NOFPU_INSN_MACW_COMPACT, SH4_NOFPU_INSN_MOV_COMPACT, SH4_NOFPU_INSN_MOVI_COMPACT, SH4_NOFPU_INSN_MOVI20_COMPACT
44  , SH4_NOFPU_INSN_MOVB1_COMPACT, SH4_NOFPU_INSN_MOVB2_COMPACT, SH4_NOFPU_INSN_MOVB3_COMPACT, SH4_NOFPU_INSN_MOVB4_COMPACT
45  , SH4_NOFPU_INSN_MOVB5_COMPACT, SH4_NOFPU_INSN_MOVB6_COMPACT, SH4_NOFPU_INSN_MOVB7_COMPACT, SH4_NOFPU_INSN_MOVB8_COMPACT
46  , SH4_NOFPU_INSN_MOVB9_COMPACT, SH4_NOFPU_INSN_MOVB10_COMPACT, SH4_NOFPU_INSN_MOVL1_COMPACT, SH4_NOFPU_INSN_MOVL2_COMPACT
47  , SH4_NOFPU_INSN_MOVL3_COMPACT, SH4_NOFPU_INSN_MOVL4_COMPACT, SH4_NOFPU_INSN_MOVL5_COMPACT, SH4_NOFPU_INSN_MOVL6_COMPACT
48  , SH4_NOFPU_INSN_MOVL7_COMPACT, SH4_NOFPU_INSN_MOVL8_COMPACT, SH4_NOFPU_INSN_MOVL9_COMPACT, SH4_NOFPU_INSN_MOVL10_COMPACT
49  , SH4_NOFPU_INSN_MOVL11_COMPACT, SH4_NOFPU_INSN_MOVL12_COMPACT, SH4_NOFPU_INSN_MOVL13_COMPACT, SH4_NOFPU_INSN_MOVW1_COMPACT
50  , SH4_NOFPU_INSN_MOVW2_COMPACT, SH4_NOFPU_INSN_MOVW3_COMPACT, SH4_NOFPU_INSN_MOVW4_COMPACT, SH4_NOFPU_INSN_MOVW5_COMPACT
51  , SH4_NOFPU_INSN_MOVW6_COMPACT, SH4_NOFPU_INSN_MOVW7_COMPACT, SH4_NOFPU_INSN_MOVW8_COMPACT, SH4_NOFPU_INSN_MOVW9_COMPACT
52  , SH4_NOFPU_INSN_MOVW10_COMPACT, SH4_NOFPU_INSN_MOVW11_COMPACT, SH4_NOFPU_INSN_MOVA_COMPACT, SH4_NOFPU_INSN_MOVCAL_COMPACT
53  , SH4_NOFPU_INSN_MOVT_COMPACT, SH4_NOFPU_INSN_MULL_COMPACT, SH4_NOFPU_INSN_MULSW_COMPACT, SH4_NOFPU_INSN_MULUW_COMPACT
54  , SH4_NOFPU_INSN_NEG_COMPACT, SH4_NOFPU_INSN_NEGC_COMPACT, SH4_NOFPU_INSN_NOP_COMPACT, SH4_NOFPU_INSN_NOT_COMPACT
55  , SH4_NOFPU_INSN_OCBI_COMPACT, SH4_NOFPU_INSN_OCBP_COMPACT, SH4_NOFPU_INSN_OCBWB_COMPACT, SH4_NOFPU_INSN_OR_COMPACT
56  , SH4_NOFPU_INSN_ORI_COMPACT, SH4_NOFPU_INSN_ORB_COMPACT, SH4_NOFPU_INSN_PREF_COMPACT, SH4_NOFPU_INSN_ROTCL_COMPACT
57  , SH4_NOFPU_INSN_ROTCR_COMPACT, SH4_NOFPU_INSN_ROTL_COMPACT, SH4_NOFPU_INSN_ROTR_COMPACT, SH4_NOFPU_INSN_RTS_COMPACT
58  , SH4_NOFPU_INSN_SETS_COMPACT, SH4_NOFPU_INSN_SETT_COMPACT, SH4_NOFPU_INSN_SHAD_COMPACT, SH4_NOFPU_INSN_SHAL_COMPACT
59  , SH4_NOFPU_INSN_SHAR_COMPACT, SH4_NOFPU_INSN_SHLD_COMPACT, SH4_NOFPU_INSN_SHLL_COMPACT, SH4_NOFPU_INSN_SHLL2_COMPACT
60  , SH4_NOFPU_INSN_SHLL8_COMPACT, SH4_NOFPU_INSN_SHLL16_COMPACT, SH4_NOFPU_INSN_SHLR_COMPACT, SH4_NOFPU_INSN_SHLR2_COMPACT
61  , SH4_NOFPU_INSN_SHLR8_COMPACT, SH4_NOFPU_INSN_SHLR16_COMPACT, SH4_NOFPU_INSN_STC_GBR_COMPACT, SH4_NOFPU_INSN_STC_VBR_COMPACT
62  , SH4_NOFPU_INSN_STCL_GBR_COMPACT, SH4_NOFPU_INSN_STCL_VBR_COMPACT, SH4_NOFPU_INSN_STS_MACH_COMPACT, SH4_NOFPU_INSN_STSL_MACH_COMPACT
63  , SH4_NOFPU_INSN_STS_MACL_COMPACT, SH4_NOFPU_INSN_STSL_MACL_COMPACT, SH4_NOFPU_INSN_STS_PR_COMPACT, SH4_NOFPU_INSN_STSL_PR_COMPACT
64  , SH4_NOFPU_INSN_SUB_COMPACT, SH4_NOFPU_INSN_SUBC_COMPACT, SH4_NOFPU_INSN_SUBV_COMPACT, SH4_NOFPU_INSN_SWAPB_COMPACT
65  , SH4_NOFPU_INSN_SWAPW_COMPACT, SH4_NOFPU_INSN_TASB_COMPACT, SH4_NOFPU_INSN_TRAPA_COMPACT, SH4_NOFPU_INSN_TST_COMPACT
66  , SH4_NOFPU_INSN_TSTI_COMPACT, SH4_NOFPU_INSN_TSTB_COMPACT, SH4_NOFPU_INSN_XOR_COMPACT, SH4_NOFPU_INSN_XORI_COMPACT
67  , SH4_NOFPU_INSN_XORB_COMPACT, SH4_NOFPU_INSN_XTRCT_COMPACT
68 } SH4_NOFPU_INSN_TYPE;
69
70
71 // Forward decls.
72 struct sh4_nofpu_cpu;
73 struct sh4_nofpu_scache;
74 typedef void (sh4_nofpu_sem_fn) (sh4_nofpu_cpu* cpu, sh4_nofpu_scache* sem, int tick, sh4_nofpu::write_stacks &buf);
75
76
77 // Instruction descriptor.
78
79 struct sh4_nofpu_idesc {
80
81   // scache engine executor for this insn
82   sh4_nofpu_sem_fn* execute;
83
84   const char* insn_name;
85   enum sh4_nofpu_insn_type sem_index;
86   sh_insn_attr attrs;
87
88   // idesc table: indexed by sem_index
89   static sh4_nofpu_idesc idesc_table[];
90
91   static sh4_nofpu_insn_type lookup_virtual (virtual_insn_type vit);
92 };
93
94 // Instruction argument buffer.
95
96 union sh4_nofpu_sem_fields {
97   struct { /* no operands */
98     int empty;
99   } fmt_empty;
100   struct { /*  */
101     IADDR i_disp12;
102   } sfmt_bra_compact;
103   struct { /*  */
104     IADDR i_disp8;
105   } sfmt_bf_compact;
106   struct { /*  */
107     SI f_imm8x2;
108     unsigned char out_r0;
109   } sfmt_movw9_compact;
110   struct { /*  */
111     SI f_imm8x2;
112     unsigned char in_r0;
113   } sfmt_movw4_compact;
114   struct { /*  */
115     SI f_imm8x4;
116     unsigned char out_r0;
117   } sfmt_movl9_compact;
118   struct { /*  */
119     SI f_imm8x4;
120     unsigned char in_r0;
121   } sfmt_movl4_compact;
122   struct { /*  */
123     SI f_imm8x2;
124     UINT f_rn;
125     unsigned char out_rn;
126   } sfmt_movw10_compact;
127   struct { /*  */
128     SI f_imm8x4;
129     UINT f_rn;
130     unsigned char out_rn;
131   } sfmt_movl10_compact;
132   struct { /*  */
133     INT f_imm20;
134     UINT f_rn;
135     unsigned char out_rn;
136   } sfmt_movi20_compact;
137   struct { /*  */
138     UINT f_imm8;
139     unsigned char in_r0;
140     unsigned char out_r0;
141   } sfmt_andi_compact;
142   struct { /*  */
143     SI f_imm4x2;
144     UINT f_rm;
145     unsigned char in_rm;
146     unsigned char out_r0;
147   } sfmt_movw11_compact;
148   struct { /*  */
149     SI f_imm4x2;
150     UINT f_rm;
151     unsigned char in_r0;
152     unsigned char in_rm;
153   } sfmt_movw5_compact;
154   struct { /*  */
155     UINT f_imm4;
156     UINT f_rm;
157     unsigned char in_rm;
158     unsigned char out_r0;
159   } sfmt_movb10_compact;
160   struct { /*  */
161     UINT f_imm4;
162     UINT f_rm;
163     unsigned char in_r0;
164     unsigned char in_rm;
165   } sfmt_movb5_compact;
166   struct { /*  */
167     UINT f_rn;
168     unsigned char in_r0;
169     unsigned char in_rn;
170     unsigned char out_rn;
171   } sfmt_divu_compact;
172   struct { /*  */
173     UINT f_imm8;
174     UINT f_rn;
175     unsigned char in_rn;
176     unsigned char out_rn;
177   } sfmt_addi_compact;
178   struct { /*  */
179     SI f_imm12x4;
180     UINT f_rm;
181     UINT f_rn;
182     unsigned char in_rm;
183     unsigned char in_rn;
184   } sfmt_movl13_compact;
185   struct { /*  */
186     SI f_imm12x4;
187     UINT f_rm;
188     UINT f_rn;
189     unsigned char in_rm;
190     unsigned char out_rn;
191   } sfmt_movl12_compact;
192   struct { /*  */
193     SI f_imm4x4;
194     UINT f_rm;
195     UINT f_rn;
196     unsigned char in_rm;
197     unsigned char out_rn;
198   } sfmt_movl11_compact;
199   struct { /*  */
200     SI f_imm4x4;
201     UINT f_rm;
202     UINT f_rn;
203     unsigned char in_rm;
204     unsigned char in_rn;
205   } sfmt_movl5_compact;
206   struct { /*  */
207     UINT f_rm;
208     UINT f_rn;
209     unsigned char in_r0;
210     unsigned char in_rm;
211     unsigned char out_rn;
212   } sfmt_movb8_compact;
213   struct { /*  */
214     UINT f_rm;
215     UINT f_rn;
216     unsigned char in_r0;
217     unsigned char in_rm;
218     unsigned char in_rn;
219   } sfmt_movb3_compact;
220   struct { /*  */
221     UINT f_rm;
222     UINT f_rn;
223     unsigned char in_rm64;
224     unsigned char in_rn64;
225     unsigned char out_rn64;
226   } sfmt_and_compact;
227   struct { /*  */
228     UINT f_rm;
229     UINT f_rn;
230     unsigned char in_rm;
231     unsigned char in_rn;
232     unsigned char out_rm;
233     unsigned char out_rn;
234   } sfmt_macl_compact;
235   // This one is for chain/cti-chain virtual insns.
236   struct {
237     // Number of insns in pbb.
238     unsigned insn_count;
239     // This is used by chain insns and by untaken conditional branches.
240     sh4_nofpu_scache* next;
241     sh4_nofpu_scache* branch_target;
242   } chain;
243   // This one is for `before' virtual insns.
244   struct {
245     // The cache entry of the real insn.
246     sh4_nofpu_scache* insn;
247   } before;
248 };
249
250 // Simulator instruction cache.
251
252 struct sh4_nofpu_scache {
253   // executor
254   union {
255     cgoto_label cgoto;
256     sh4_nofpu_sem_fn* fn;
257   } execute;
258
259   // PC of this instruction.
260   PCADDR addr;
261
262   // instruction class
263   sh4_nofpu_idesc* idesc;
264
265   // argument buffer
266   sh4_nofpu_sem_fields fields;
267
268
269   // writeback flags
270   // Only used if profiling or parallel execution support enabled during
271   // file generation.
272   unsigned long long written;
273
274
275   // decode given instruction
276   void decode (sh4_nofpu_cpu* current_cpu, PCADDR pc, sh4_nofpu_insn_word base_insn, sh4_nofpu_insn_word entire_insn);
277 };
278
279 } // end sh4_nofpu namespace
280
281 // Decls of each semantic fn.
282
283 using sh4_nofpu::sh4_nofpu_sem_fn;
284 extern sh4_nofpu_sem_fn sh4_nofpu_sem_x_invalid;
285 extern sh4_nofpu_sem_fn sh4_nofpu_sem_add_compact;
286 extern sh4_nofpu_sem_fn sh4_nofpu_sem_addi_compact;
287 extern sh4_nofpu_sem_fn sh4_nofpu_sem_addc_compact;
288 extern sh4_nofpu_sem_fn sh4_nofpu_sem_addv_compact;
289 extern sh4_nofpu_sem_fn sh4_nofpu_sem_and_compact;
290 extern sh4_nofpu_sem_fn sh4_nofpu_sem_andi_compact;
291 extern sh4_nofpu_sem_fn sh4_nofpu_sem_andb_compact;
292 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bf_compact;
293 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bfs_compact;
294 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bra_compact;
295 extern sh4_nofpu_sem_fn sh4_nofpu_sem_braf_compact;
296 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bsr_compact;
297 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bsrf_compact;
298 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bt_compact;
299 extern sh4_nofpu_sem_fn sh4_nofpu_sem_bts_compact;
300 extern sh4_nofpu_sem_fn sh4_nofpu_sem_clrmac_compact;
301 extern sh4_nofpu_sem_fn sh4_nofpu_sem_clrs_compact;
302 extern sh4_nofpu_sem_fn sh4_nofpu_sem_clrt_compact;
303 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmpeq_compact;
304 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmpeqi_compact;
305 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmpge_compact;
306 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmpgt_compact;
307 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmphi_compact;
308 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmphs_compact;
309 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmppl_compact;
310 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmppz_compact;
311 extern sh4_nofpu_sem_fn sh4_nofpu_sem_cmpstr_compact;
312 extern sh4_nofpu_sem_fn sh4_nofpu_sem_div0s_compact;
313 extern sh4_nofpu_sem_fn sh4_nofpu_sem_div0u_compact;
314 extern sh4_nofpu_sem_fn sh4_nofpu_sem_div1_compact;
315 extern sh4_nofpu_sem_fn sh4_nofpu_sem_divu_compact;
316 extern sh4_nofpu_sem_fn sh4_nofpu_sem_mulr_compact;
317 extern sh4_nofpu_sem_fn sh4_nofpu_sem_dmulsl_compact;
318 extern sh4_nofpu_sem_fn sh4_nofpu_sem_dmulul_compact;
319 extern sh4_nofpu_sem_fn sh4_nofpu_sem_dt_compact;
320 extern sh4_nofpu_sem_fn sh4_nofpu_sem_extsb_compact;
321 extern sh4_nofpu_sem_fn sh4_nofpu_sem_extsw_compact;
322 extern sh4_nofpu_sem_fn sh4_nofpu_sem_extub_compact;
323 extern sh4_nofpu_sem_fn sh4_nofpu_sem_extuw_compact;
324 extern sh4_nofpu_sem_fn sh4_nofpu_sem_frchg_compact;
325 extern sh4_nofpu_sem_fn sh4_nofpu_sem_fschg_compact;
326 extern sh4_nofpu_sem_fn sh4_nofpu_sem_jmp_compact;
327 extern sh4_nofpu_sem_fn sh4_nofpu_sem_jsr_compact;
328 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldc_gbr_compact;
329 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldc_vbr_compact;
330 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldc_sr_compact;
331 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldcl_gbr_compact;
332 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldcl_vbr_compact;
333 extern sh4_nofpu_sem_fn sh4_nofpu_sem_lds_mach_compact;
334 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldsl_mach_compact;
335 extern sh4_nofpu_sem_fn sh4_nofpu_sem_lds_macl_compact;
336 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldsl_macl_compact;
337 extern sh4_nofpu_sem_fn sh4_nofpu_sem_lds_pr_compact;
338 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ldsl_pr_compact;
339 extern sh4_nofpu_sem_fn sh4_nofpu_sem_macl_compact;
340 extern sh4_nofpu_sem_fn sh4_nofpu_sem_macw_compact;
341 extern sh4_nofpu_sem_fn sh4_nofpu_sem_mov_compact;
342 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movi_compact;
343 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movi20_compact;
344 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb1_compact;
345 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb2_compact;
346 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb3_compact;
347 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb4_compact;
348 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb5_compact;
349 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb6_compact;
350 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb7_compact;
351 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb8_compact;
352 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb9_compact;
353 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movb10_compact;
354 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl1_compact;
355 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl2_compact;
356 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl3_compact;
357 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl4_compact;
358 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl5_compact;
359 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl6_compact;
360 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl7_compact;
361 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl8_compact;
362 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl9_compact;
363 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl10_compact;
364 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl11_compact;
365 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl12_compact;
366 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movl13_compact;
367 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw1_compact;
368 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw2_compact;
369 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw3_compact;
370 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw4_compact;
371 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw5_compact;
372 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw6_compact;
373 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw7_compact;
374 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw8_compact;
375 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw9_compact;
376 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw10_compact;
377 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movw11_compact;
378 extern sh4_nofpu_sem_fn sh4_nofpu_sem_mova_compact;
379 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movcal_compact;
380 extern sh4_nofpu_sem_fn sh4_nofpu_sem_movt_compact;
381 extern sh4_nofpu_sem_fn sh4_nofpu_sem_mull_compact;
382 extern sh4_nofpu_sem_fn sh4_nofpu_sem_mulsw_compact;
383 extern sh4_nofpu_sem_fn sh4_nofpu_sem_muluw_compact;
384 extern sh4_nofpu_sem_fn sh4_nofpu_sem_neg_compact;
385 extern sh4_nofpu_sem_fn sh4_nofpu_sem_negc_compact;
386 extern sh4_nofpu_sem_fn sh4_nofpu_sem_nop_compact;
387 extern sh4_nofpu_sem_fn sh4_nofpu_sem_not_compact;
388 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ocbi_compact;
389 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ocbp_compact;
390 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ocbwb_compact;
391 extern sh4_nofpu_sem_fn sh4_nofpu_sem_or_compact;
392 extern sh4_nofpu_sem_fn sh4_nofpu_sem_ori_compact;
393 extern sh4_nofpu_sem_fn sh4_nofpu_sem_orb_compact;
394 extern sh4_nofpu_sem_fn sh4_nofpu_sem_pref_compact;
395 extern sh4_nofpu_sem_fn sh4_nofpu_sem_rotcl_compact;
396 extern sh4_nofpu_sem_fn sh4_nofpu_sem_rotcr_compact;
397 extern sh4_nofpu_sem_fn sh4_nofpu_sem_rotl_compact;
398 extern sh4_nofpu_sem_fn sh4_nofpu_sem_rotr_compact;
399 extern sh4_nofpu_sem_fn sh4_nofpu_sem_rts_compact;
400 extern sh4_nofpu_sem_fn sh4_nofpu_sem_sets_compact;
401 extern sh4_nofpu_sem_fn sh4_nofpu_sem_sett_compact;
402 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shad_compact;
403 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shal_compact;
404 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shar_compact;
405 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shld_compact;
406 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shll_compact;
407 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shll2_compact;
408 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shll8_compact;
409 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shll16_compact;
410 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shlr_compact;
411 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shlr2_compact;
412 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shlr8_compact;
413 extern sh4_nofpu_sem_fn sh4_nofpu_sem_shlr16_compact;
414 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stc_gbr_compact;
415 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stc_vbr_compact;
416 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stcl_gbr_compact;
417 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stcl_vbr_compact;
418 extern sh4_nofpu_sem_fn sh4_nofpu_sem_sts_mach_compact;
419 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stsl_mach_compact;
420 extern sh4_nofpu_sem_fn sh4_nofpu_sem_sts_macl_compact;
421 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stsl_macl_compact;
422 extern sh4_nofpu_sem_fn sh4_nofpu_sem_sts_pr_compact;
423 extern sh4_nofpu_sem_fn sh4_nofpu_sem_stsl_pr_compact;
424 extern sh4_nofpu_sem_fn sh4_nofpu_sem_sub_compact;
425 extern sh4_nofpu_sem_fn sh4_nofpu_sem_subc_compact;
426 extern sh4_nofpu_sem_fn sh4_nofpu_sem_subv_compact;
427 extern sh4_nofpu_sem_fn sh4_nofpu_sem_swapb_compact;
428 extern sh4_nofpu_sem_fn sh4_nofpu_sem_swapw_compact;
429 extern sh4_nofpu_sem_fn sh4_nofpu_sem_tasb_compact;
430 extern sh4_nofpu_sem_fn sh4_nofpu_sem_trapa_compact;
431 extern sh4_nofpu_sem_fn sh4_nofpu_sem_tst_compact;
432 extern sh4_nofpu_sem_fn sh4_nofpu_sem_tsti_compact;
433 extern sh4_nofpu_sem_fn sh4_nofpu_sem_tstb_compact;
434 extern sh4_nofpu_sem_fn sh4_nofpu_sem_xor_compact;
435 extern sh4_nofpu_sem_fn sh4_nofpu_sem_xori_compact;
436 extern sh4_nofpu_sem_fn sh4_nofpu_sem_xorb_compact;
437 extern sh4_nofpu_sem_fn sh4_nofpu_sem_xtrct_compact;
438
439 #endif /* SH4_NOFPU_DECODE_H */