1 /* Decode header for sh4a_nofpu.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright (C) 2000-2009 Red Hat, Inc.
7 This file is part of the Red Hat simulators.
12 #ifndef SH4A_NOFPU_DECODE_H
13 #define SH4A_NOFPU_DECODE_H
15 namespace sh4a_nofpu {
16 // forward declaration of struct in -defs.h
20 namespace sh4a_nofpu {
25 typedef UINT sh4a_nofpu_insn_word;
27 /* Enum declaration for instructions in cpu family sh4a_nofpu. */
28 typedef enum sh4a_nofpu_insn_type {
29 SH4A_NOFPU_INSN_X_INVALID, SH4A_NOFPU_INSN_ADD_COMPACT, SH4A_NOFPU_INSN_ADDI_COMPACT, SH4A_NOFPU_INSN_ADDC_COMPACT
30 , SH4A_NOFPU_INSN_ADDV_COMPACT, SH4A_NOFPU_INSN_AND_COMPACT, SH4A_NOFPU_INSN_ANDI_COMPACT, SH4A_NOFPU_INSN_ANDB_COMPACT
31 , SH4A_NOFPU_INSN_BF_COMPACT, SH4A_NOFPU_INSN_BFS_COMPACT, SH4A_NOFPU_INSN_BRA_COMPACT, SH4A_NOFPU_INSN_BRAF_COMPACT
32 , SH4A_NOFPU_INSN_BSR_COMPACT, SH4A_NOFPU_INSN_BSRF_COMPACT, SH4A_NOFPU_INSN_BT_COMPACT, SH4A_NOFPU_INSN_BTS_COMPACT
33 , SH4A_NOFPU_INSN_CLRMAC_COMPACT, SH4A_NOFPU_INSN_CLRS_COMPACT, SH4A_NOFPU_INSN_CLRT_COMPACT, SH4A_NOFPU_INSN_CMPEQ_COMPACT
34 , SH4A_NOFPU_INSN_CMPEQI_COMPACT, SH4A_NOFPU_INSN_CMPGE_COMPACT, SH4A_NOFPU_INSN_CMPGT_COMPACT, SH4A_NOFPU_INSN_CMPHI_COMPACT
35 , SH4A_NOFPU_INSN_CMPHS_COMPACT, SH4A_NOFPU_INSN_CMPPL_COMPACT, SH4A_NOFPU_INSN_CMPPZ_COMPACT, SH4A_NOFPU_INSN_CMPSTR_COMPACT
36 , SH4A_NOFPU_INSN_DIV0S_COMPACT, SH4A_NOFPU_INSN_DIV0U_COMPACT, SH4A_NOFPU_INSN_DIV1_COMPACT, SH4A_NOFPU_INSN_DMULSL_COMPACT
37 , SH4A_NOFPU_INSN_DMULUL_COMPACT, SH4A_NOFPU_INSN_DT_COMPACT, SH4A_NOFPU_INSN_EXTSB_COMPACT, SH4A_NOFPU_INSN_EXTSW_COMPACT
38 , SH4A_NOFPU_INSN_EXTUB_COMPACT, SH4A_NOFPU_INSN_EXTUW_COMPACT, SH4A_NOFPU_INSN_FRCHG_COMPACT, SH4A_NOFPU_INSN_FSCHG_COMPACT
39 , SH4A_NOFPU_INSN_JMP_COMPACT, SH4A_NOFPU_INSN_JSR_COMPACT, SH4A_NOFPU_INSN_LDC_GBR_COMPACT, SH4A_NOFPU_INSN_LDC_VBR_COMPACT
40 , SH4A_NOFPU_INSN_LDC_SR_COMPACT, SH4A_NOFPU_INSN_LDCL_GBR_COMPACT, SH4A_NOFPU_INSN_LDCL_VBR_COMPACT, SH4A_NOFPU_INSN_LDS_MACH_COMPACT
41 , SH4A_NOFPU_INSN_LDSL_MACH_COMPACT, SH4A_NOFPU_INSN_LDS_MACL_COMPACT, SH4A_NOFPU_INSN_LDSL_MACL_COMPACT, SH4A_NOFPU_INSN_LDS_PR_COMPACT
42 , SH4A_NOFPU_INSN_LDSL_PR_COMPACT, SH4A_NOFPU_INSN_MACL_COMPACT, SH4A_NOFPU_INSN_MACW_COMPACT, SH4A_NOFPU_INSN_MOV_COMPACT
43 , SH4A_NOFPU_INSN_MOVI_COMPACT, SH4A_NOFPU_INSN_MOVB1_COMPACT, SH4A_NOFPU_INSN_MOVB2_COMPACT, SH4A_NOFPU_INSN_MOVB3_COMPACT
44 , SH4A_NOFPU_INSN_MOVB4_COMPACT, SH4A_NOFPU_INSN_MOVB5_COMPACT, SH4A_NOFPU_INSN_MOVB6_COMPACT, SH4A_NOFPU_INSN_MOVB7_COMPACT
45 , SH4A_NOFPU_INSN_MOVB8_COMPACT, SH4A_NOFPU_INSN_MOVB9_COMPACT, SH4A_NOFPU_INSN_MOVB10_COMPACT, SH4A_NOFPU_INSN_MOVL1_COMPACT
46 , SH4A_NOFPU_INSN_MOVL2_COMPACT, SH4A_NOFPU_INSN_MOVL3_COMPACT, SH4A_NOFPU_INSN_MOVL4_COMPACT, SH4A_NOFPU_INSN_MOVL5_COMPACT
47 , SH4A_NOFPU_INSN_MOVL6_COMPACT, SH4A_NOFPU_INSN_MOVL7_COMPACT, SH4A_NOFPU_INSN_MOVL8_COMPACT, SH4A_NOFPU_INSN_MOVL9_COMPACT
48 , SH4A_NOFPU_INSN_MOVL10_COMPACT, SH4A_NOFPU_INSN_MOVL11_COMPACT, SH4A_NOFPU_INSN_MOVW1_COMPACT, SH4A_NOFPU_INSN_MOVW2_COMPACT
49 , SH4A_NOFPU_INSN_MOVW3_COMPACT, SH4A_NOFPU_INSN_MOVW4_COMPACT, SH4A_NOFPU_INSN_MOVW5_COMPACT, SH4A_NOFPU_INSN_MOVW6_COMPACT
50 , SH4A_NOFPU_INSN_MOVW7_COMPACT, SH4A_NOFPU_INSN_MOVW8_COMPACT, SH4A_NOFPU_INSN_MOVW9_COMPACT, SH4A_NOFPU_INSN_MOVW10_COMPACT
51 , SH4A_NOFPU_INSN_MOVW11_COMPACT, SH4A_NOFPU_INSN_MOVA_COMPACT, SH4A_NOFPU_INSN_MOVCAL_COMPACT, SH4A_NOFPU_INSN_MOVCOL_COMPACT
52 , SH4A_NOFPU_INSN_MOVT_COMPACT, SH4A_NOFPU_INSN_MOVUAL_COMPACT, SH4A_NOFPU_INSN_MOVUAL2_COMPACT, SH4A_NOFPU_INSN_MULL_COMPACT
53 , SH4A_NOFPU_INSN_MULSW_COMPACT, SH4A_NOFPU_INSN_MULUW_COMPACT, SH4A_NOFPU_INSN_NEG_COMPACT, SH4A_NOFPU_INSN_NEGC_COMPACT
54 , SH4A_NOFPU_INSN_NOP_COMPACT, SH4A_NOFPU_INSN_NOT_COMPACT, SH4A_NOFPU_INSN_OCBI_COMPACT, SH4A_NOFPU_INSN_OCBP_COMPACT
55 , SH4A_NOFPU_INSN_OCBWB_COMPACT, SH4A_NOFPU_INSN_OR_COMPACT, SH4A_NOFPU_INSN_ORI_COMPACT, SH4A_NOFPU_INSN_ORB_COMPACT
56 , SH4A_NOFPU_INSN_PREF_COMPACT, SH4A_NOFPU_INSN_ROTCL_COMPACT, SH4A_NOFPU_INSN_ROTCR_COMPACT, SH4A_NOFPU_INSN_ROTL_COMPACT
57 , SH4A_NOFPU_INSN_ROTR_COMPACT, SH4A_NOFPU_INSN_RTS_COMPACT, SH4A_NOFPU_INSN_SETS_COMPACT, SH4A_NOFPU_INSN_SETT_COMPACT
58 , SH4A_NOFPU_INSN_SHAD_COMPACT, SH4A_NOFPU_INSN_SHAL_COMPACT, SH4A_NOFPU_INSN_SHAR_COMPACT, SH4A_NOFPU_INSN_SHLD_COMPACT
59 , SH4A_NOFPU_INSN_SHLL_COMPACT, SH4A_NOFPU_INSN_SHLL2_COMPACT, SH4A_NOFPU_INSN_SHLL8_COMPACT, SH4A_NOFPU_INSN_SHLL16_COMPACT
60 , SH4A_NOFPU_INSN_SHLR_COMPACT, SH4A_NOFPU_INSN_SHLR2_COMPACT, SH4A_NOFPU_INSN_SHLR8_COMPACT, SH4A_NOFPU_INSN_SHLR16_COMPACT
61 , SH4A_NOFPU_INSN_STC_GBR_COMPACT, SH4A_NOFPU_INSN_STC_VBR_COMPACT, SH4A_NOFPU_INSN_STCL_GBR_COMPACT, SH4A_NOFPU_INSN_STCL_VBR_COMPACT
62 , SH4A_NOFPU_INSN_STS_MACH_COMPACT, SH4A_NOFPU_INSN_STSL_MACH_COMPACT, SH4A_NOFPU_INSN_STS_MACL_COMPACT, SH4A_NOFPU_INSN_STSL_MACL_COMPACT
63 , SH4A_NOFPU_INSN_STS_PR_COMPACT, SH4A_NOFPU_INSN_STSL_PR_COMPACT, SH4A_NOFPU_INSN_SUB_COMPACT, SH4A_NOFPU_INSN_SUBC_COMPACT
64 , SH4A_NOFPU_INSN_SUBV_COMPACT, SH4A_NOFPU_INSN_SWAPB_COMPACT, SH4A_NOFPU_INSN_SWAPW_COMPACT, SH4A_NOFPU_INSN_TASB_COMPACT
65 , SH4A_NOFPU_INSN_TRAPA_COMPACT, SH4A_NOFPU_INSN_TST_COMPACT, SH4A_NOFPU_INSN_TSTI_COMPACT, SH4A_NOFPU_INSN_TSTB_COMPACT
66 , SH4A_NOFPU_INSN_XOR_COMPACT, SH4A_NOFPU_INSN_XORI_COMPACT, SH4A_NOFPU_INSN_XORB_COMPACT, SH4A_NOFPU_INSN_XTRCT_COMPACT
67 } SH4A_NOFPU_INSN_TYPE;
71 struct sh4a_nofpu_cpu;
72 struct sh4a_nofpu_scache;
73 typedef void (sh4a_nofpu_sem_fn) (sh4a_nofpu_cpu* cpu, sh4a_nofpu_scache* sem, int tick, sh4a_nofpu::write_stacks &buf);
76 // Instruction descriptor.
78 struct sh4a_nofpu_idesc {
80 // scache engine executor for this insn
81 sh4a_nofpu_sem_fn* execute;
83 const char* insn_name;
84 enum sh4a_nofpu_insn_type sem_index;
87 // idesc table: indexed by sem_index
88 static sh4a_nofpu_idesc idesc_table[];
90 static sh4a_nofpu_insn_type lookup_virtual (virtual_insn_type vit);
93 // Instruction argument buffer.
95 union sh4a_nofpu_sem_fields {
96 struct { /* no operands */
107 unsigned char out_r0;
108 } sfmt_movw9_compact;
112 } sfmt_movw4_compact;
115 unsigned char out_r0;
116 } sfmt_movl9_compact;
120 } sfmt_movl4_compact;
124 unsigned char out_rn;
125 } sfmt_movw10_compact;
129 unsigned char out_rn;
130 } sfmt_movl10_compact;
134 unsigned char out_r0;
139 unsigned char out_r0;
140 unsigned char out_rn;
141 } sfmt_movual2_compact;
146 unsigned char out_r0;
147 } sfmt_movw11_compact;
153 } sfmt_movw5_compact;
158 unsigned char out_r0;
159 } sfmt_movb10_compact;
165 } sfmt_movb5_compact;
170 unsigned char out_rn;
177 unsigned char out_rn;
178 } sfmt_movl11_compact;
185 } sfmt_movl5_compact;
191 unsigned char out_rn;
192 } sfmt_movb8_compact;
199 } sfmt_movb3_compact;
203 unsigned char in_rm64;
204 unsigned char in_rn64;
205 unsigned char out_rn64;
212 unsigned char out_rm;
213 unsigned char out_rn;
215 // This one is for chain/cti-chain virtual insns.
217 // Number of insns in pbb.
219 // This is used by chain insns and by untaken conditional branches.
220 sh4a_nofpu_scache* next;
221 sh4a_nofpu_scache* branch_target;
223 // This one is for `before' virtual insns.
225 // The cache entry of the real insn.
226 sh4a_nofpu_scache* insn;
230 // Simulator instruction cache.
232 struct sh4a_nofpu_scache {
236 sh4a_nofpu_sem_fn* fn;
239 // PC of this instruction.
243 sh4a_nofpu_idesc* idesc;
246 sh4a_nofpu_sem_fields fields;
250 // Only used if profiling or parallel execution support enabled during
252 unsigned long long written;
255 // decode given instruction
256 void decode (sh4a_nofpu_cpu* current_cpu, PCADDR pc, sh4a_nofpu_insn_word base_insn, sh4a_nofpu_insn_word entire_insn);
259 } // end sh4a_nofpu namespace
261 // Decls of each semantic fn.
263 using sh4a_nofpu::sh4a_nofpu_sem_fn;
264 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_x_invalid;
265 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_add_compact;
266 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_addi_compact;
267 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_addc_compact;
268 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_addv_compact;
269 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_and_compact;
270 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_andi_compact;
271 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_andb_compact;
272 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bf_compact;
273 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bfs_compact;
274 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bra_compact;
275 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_braf_compact;
276 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bsr_compact;
277 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bsrf_compact;
278 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bt_compact;
279 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_bts_compact;
280 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_clrmac_compact;
281 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_clrs_compact;
282 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_clrt_compact;
283 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmpeq_compact;
284 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmpeqi_compact;
285 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmpge_compact;
286 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmpgt_compact;
287 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmphi_compact;
288 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmphs_compact;
289 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmppl_compact;
290 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmppz_compact;
291 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_cmpstr_compact;
292 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_div0s_compact;
293 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_div0u_compact;
294 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_div1_compact;
295 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_dmulsl_compact;
296 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_dmulul_compact;
297 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_dt_compact;
298 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_extsb_compact;
299 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_extsw_compact;
300 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_extub_compact;
301 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_extuw_compact;
302 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_frchg_compact;
303 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_fschg_compact;
304 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_jmp_compact;
305 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_jsr_compact;
306 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldc_gbr_compact;
307 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldc_vbr_compact;
308 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldc_sr_compact;
309 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldcl_gbr_compact;
310 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldcl_vbr_compact;
311 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_lds_mach_compact;
312 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldsl_mach_compact;
313 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_lds_macl_compact;
314 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldsl_macl_compact;
315 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_lds_pr_compact;
316 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ldsl_pr_compact;
317 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_macl_compact;
318 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_macw_compact;
319 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_mov_compact;
320 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movi_compact;
321 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb1_compact;
322 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb2_compact;
323 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb3_compact;
324 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb4_compact;
325 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb5_compact;
326 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb6_compact;
327 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb7_compact;
328 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb8_compact;
329 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb9_compact;
330 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movb10_compact;
331 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl1_compact;
332 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl2_compact;
333 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl3_compact;
334 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl4_compact;
335 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl5_compact;
336 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl6_compact;
337 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl7_compact;
338 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl8_compact;
339 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl9_compact;
340 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl10_compact;
341 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movl11_compact;
342 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw1_compact;
343 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw2_compact;
344 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw3_compact;
345 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw4_compact;
346 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw5_compact;
347 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw6_compact;
348 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw7_compact;
349 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw8_compact;
350 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw9_compact;
351 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw10_compact;
352 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movw11_compact;
353 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_mova_compact;
354 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movcal_compact;
355 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movcol_compact;
356 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movt_compact;
357 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movual_compact;
358 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_movual2_compact;
359 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_mull_compact;
360 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_mulsw_compact;
361 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_muluw_compact;
362 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_neg_compact;
363 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_negc_compact;
364 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_nop_compact;
365 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_not_compact;
366 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ocbi_compact;
367 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ocbp_compact;
368 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ocbwb_compact;
369 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_or_compact;
370 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_ori_compact;
371 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_orb_compact;
372 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_pref_compact;
373 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_rotcl_compact;
374 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_rotcr_compact;
375 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_rotl_compact;
376 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_rotr_compact;
377 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_rts_compact;
378 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_sets_compact;
379 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_sett_compact;
380 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shad_compact;
381 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shal_compact;
382 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shar_compact;
383 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shld_compact;
384 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shll_compact;
385 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shll2_compact;
386 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shll8_compact;
387 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shll16_compact;
388 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shlr_compact;
389 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shlr2_compact;
390 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shlr8_compact;
391 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_shlr16_compact;
392 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stc_gbr_compact;
393 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stc_vbr_compact;
394 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stcl_gbr_compact;
395 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stcl_vbr_compact;
396 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_sts_mach_compact;
397 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stsl_mach_compact;
398 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_sts_macl_compact;
399 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stsl_macl_compact;
400 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_sts_pr_compact;
401 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_stsl_pr_compact;
402 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_sub_compact;
403 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_subc_compact;
404 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_subv_compact;
405 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_swapb_compact;
406 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_swapw_compact;
407 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_tasb_compact;
408 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_trapa_compact;
409 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_tst_compact;
410 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_tsti_compact;
411 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_tstb_compact;
412 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_xor_compact;
413 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_xori_compact;
414 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_xorb_compact;
415 extern sh4a_nofpu_sem_fn sh4a_nofpu_sem_xtrct_compact;
417 #endif /* SH4A_NOFPU_DECODE_H */