3 /*###################################################################################################
5 **#################################################################################################*/
11 void addqmod_n_rn(void); /* DSP only */
12 void addqt_n_rn(void);
21 void imacn_rn_rn(void);
22 void imult_rn_rn(void);
23 void imultn_rn_rn(void);
25 void jump_cc_rn(void);
26 void load_rn_rn(void);
27 void load_r14n_rn(void);
28 void load_r15n_rn(void);
29 void load_r14rn_rn(void);
30 void load_r15rn_rn(void);
31 void loadb_rn_rn(void);
32 void loadw_rn_rn(void);
33 void loadp_rn_rn(void); /* GPU only */
34 void mirror_rn(void); /* DSP only */
35 void mmult_rn_rn(void);
36 void move_rn_rn(void);
37 void move_pc_rn(void);
38 void movefa_rn_rn(void);
39 void movei_n_rn(void);
40 void moveq_n_rn(void);
41 void moveta_rn_rn(void);
42 void mtoi_rn_rn(void);
43 void mult_rn_rn(void);
46 void normi_rn_rn(void);
49 void pack_rn(void); /* GPU only */
53 void sat8_rn(void); /* GPU only */
54 void sat16_rn(void); /* GPU only */
55 void sat16s_rn(void); /* DSP only */
56 void sat24_rn(void); /* GPU only */
57 void sat32s_rn(void); /* DSP only */
60 void sharq_n_rn(void);
63 void store_rn_rn(void);
64 void store_rn_r14n(void);
65 void store_rn_r15n(void);
66 void store_rn_r14rn(void);
67 void store_rn_r15rn(void);
68 void storeb_rn_rn(void);
69 void storew_rn_rn(void);
70 void storep_rn_rn(void); /* GPU only */
72 void subc_rn_rn(void);
74 void subqmod_n_rn(void); /* DSP only */
75 void subqt_n_rn(void);
78 void (* gpu3_opcode[64])(void) =
80 /* 00-03 */ add_rn_rn, addc_rn_rn, addq_n_rn, addqt_n_rn,
81 /* 04-07 */ sub_rn_rn, subc_rn_rn, subq_n_rn, subqt_n_rn,
82 /* 08-11 */ neg_rn, and_rn_rn, or_rn_rn, xor_rn_rn,
83 /* 12-15 */ not_rn, btst_n_rn, bset_n_rn, bclr_n_rn,
84 /* 16-19 */ mult_rn_rn, imult_rn_rn, imultn_rn_rn, resmac_rn,
85 /* 20-23 */ imacn_rn_rn, div_rn_rn, abs_rn, sh_rn_rn,
86 /* 24-27 */ shlq_n_rn, shrq_n_rn, sha_rn_rn, sharq_n_rn,
87 /* 28-31 */ ror_rn_rn, rorq_n_rn, cmp_rn_rn, cmpq_n_rn,
88 /* 32-35 */ sat8_rn, sat16_rn, move_rn_rn, moveq_n_rn,
89 /* 36-39 */ moveta_rn_rn, movefa_rn_rn, movei_n_rn, loadb_rn_rn,
90 /* 40-43 */ loadw_rn_rn, load_rn_rn, loadp_rn_rn, load_r14n_rn,
91 /* 44-47 */ load_r15n_rn, storeb_rn_rn, storew_rn_rn, store_rn_rn,
92 /* 48-51 */ storep_rn_rn, store_rn_r14n, store_rn_r15n, move_pc_rn,
93 /* 52-55 */ jump_cc_rn, jr_cc_n, mmult_rn_rn, mtoi_rn_rn,
94 /* 56-59 */ normi_rn_rn, nop, load_r14rn_rn, load_r15rn_rn,
95 /* 60-63 */ store_rn_r14rn, store_rn_r15rn, sat24_rn, pack_rn
98 void (* dsp3_opcode[64])(void) =
100 /* 00-03 */ add_rn_rn, addc_rn_rn, addq_n_rn, addqt_n_rn,
101 /* 04-07 */ sub_rn_rn, subc_rn_rn, subq_n_rn, subqt_n_rn,
102 /* 08-11 */ neg_rn, and_rn_rn, or_rn_rn, xor_rn_rn,
103 /* 12-15 */ not_rn, btst_n_rn, bset_n_rn, bclr_n_rn,
104 /* 16-19 */ mult_rn_rn, imult_rn_rn, imultn_rn_rn, resmac_rn,
105 /* 20-23 */ imacn_rn_rn, div_rn_rn, abs_rn, sh_rn_rn,
106 /* 24-27 */ shlq_n_rn, shrq_n_rn, sha_rn_rn, sharq_n_rn,
107 /* 28-31 */ ror_rn_rn, rorq_n_rn, cmp_rn_rn, cmpq_n_rn,
108 /* 32-35 */ subqmod_n_rn, sat16s_rn, move_rn_rn, moveq_n_rn,
109 /* 36-39 */ moveta_rn_rn, movefa_rn_rn, movei_n_rn, loadb_rn_rn,
110 /* 40-43 */ loadw_rn_rn, load_rn_rn, sat32s_rn, load_r14n_rn,
111 /* 44-47 */ load_r15n_rn, storeb_rn_rn, storew_rn_rn, store_rn_rn,
112 /* 48-51 */ mirror_rn, store_rn_r14n, store_rn_r15n, move_pc_rn,
113 /* 52-55 */ jump_cc_rn, jr_cc_n, mmult_rn_rn, mtoi_rn_rn,
114 /* 56-59 */ normi_rn_rn, nop, load_r14rn_rn, load_r15rn_rn,
115 /* 60-63 */ store_rn_r14rn, store_rn_r15rn, illegal, addqmod_n_rn