]>
Commit | Line | Data |
---|---|---|
89a955e8 AM |
1 | /* |
2 | * Header file for nanoMIPS disassembler component of QEMU | |
3 | * | |
8bae1509 | 4 | * Copyright (C) 2018 Wave Computing, Inc. |
89a955e8 | 5 | * Copyright (C) 2018 Matthew Fortune <[email protected]> |
8bae1509 | 6 | * Copyright (C) 2018 Aleksandar Markovic <[email protected]> |
89a955e8 AM |
7 | * |
8 | * This program is free software: you can redistribute it and/or modify | |
9 | * it under the terms of the GNU General Public License as published by | |
8bae1509 | 10 | * the Free Software Foundation, either version 2 of the License, or |
89a955e8 AM |
11 | * (at your option) any later version. |
12 | * | |
13 | * This program is distributed in the hope that it will be useful, | |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | * GNU General Public License for more details. | |
17 | * | |
18 | * You should have received a copy of the GNU General Public License | |
19 | * along with this program. If not, see <https://www.gnu.org/licenses/>. | |
8bae1509 | 20 | * |
89a955e8 AM |
21 | */ |
22 | ||
23 | #ifndef NANOMIPS_DISASSEMBLER_H | |
24 | #define NANOMIPS_DISASSEMBLER_H | |
25 | ||
26 | #include <string> | |
27 | ||
8c33ea59 SW |
28 | typedef int64_t int64; |
29 | typedef uint64_t uint64; | |
30 | typedef uint32_t uint32; | |
31 | typedef uint16_t uint16; | |
89a955e8 AM |
32 | |
33 | namespace img | |
34 | { | |
8c33ea59 | 35 | typedef uint64_t address; |
89a955e8 AM |
36 | } |
37 | ||
38 | ||
39 | class NMD | |
40 | { | |
41 | public: | |
42 | ||
43 | enum TABLE_ENTRY_TYPE { | |
44 | instruction, | |
45 | call_instruction, | |
46 | branch_instruction, | |
47 | return_instruction, | |
48 | reserved_block, | |
49 | pool, | |
50 | }; | |
51 | ||
52 | enum TABLE_ATTRIBUTE_TYPE { | |
53 | MIPS64_ = 0x00000001, | |
54 | XNP_ = 0x00000002, | |
55 | XMMS_ = 0x00000004, | |
56 | EVA_ = 0x00000008, | |
57 | DSP_ = 0x00000010, | |
58 | MT_ = 0x00000020, | |
59 | EJTAG_ = 0x00000040, | |
60 | TLBINV_ = 0x00000080, | |
61 | CP0_ = 0x00000100, | |
62 | CP1_ = 0x00000200, | |
63 | CP2_ = 0x00000400, | |
64 | UDI_ = 0x00000800, | |
65 | MCU_ = 0x00001000, | |
66 | VZ_ = 0x00002000, | |
67 | TLB_ = 0x00004000, | |
68 | MVH_ = 0x00008000, | |
69 | ALL_ATTRIBUTES = 0xffffffffull, | |
70 | }; | |
71 | ||
72 | ||
73 | NMD(img::address pc, TABLE_ATTRIBUTE_TYPE requested_instruction_categories) | |
74 | : m_pc(pc) | |
75 | , m_requested_instruction_categories(requested_instruction_categories) | |
76 | { | |
77 | } | |
78 | ||
79 | int Disassemble(const uint16 *data, std::string & dis, | |
80 | TABLE_ENTRY_TYPE & type); | |
81 | ||
82 | private: | |
83 | ||
84 | img::address m_pc; | |
85 | TABLE_ATTRIBUTE_TYPE m_requested_instruction_categories; | |
86 | ||
87 | typedef std::string(NMD:: *disassembly_function)(uint64 instruction); | |
88 | typedef bool(NMD:: *conditional_function)(uint64 instruction); | |
89 | ||
90 | struct Pool { | |
91 | TABLE_ENTRY_TYPE type; | |
92 | struct Pool *next_table; | |
93 | int next_table_size; | |
94 | int instructions_size; | |
95 | uint64 mask; | |
96 | uint64 value; | |
97 | disassembly_function disassembly; | |
98 | conditional_function condition; | |
99 | uint64 attributes; | |
100 | }; | |
101 | ||
102 | uint64 extract_op_code_value(const uint16 *data, int size); | |
103 | int Disassemble(const uint16 *data, std::string & dis, | |
104 | TABLE_ENTRY_TYPE & type, const Pool *table, int table_size); | |
105 | ||
106 | uint64 renumber_registers(uint64 index, uint64 *register_list, | |
107 | size_t register_list_size); | |
eabf76a0 AM |
108 | |
109 | uint64 decode_gpr_gpr4(uint64 d); | |
110 | uint64 decode_gpr_gpr4_zero(uint64 d); | |
988d6c89 | 111 | uint64 decode_gpr_gpr3(uint64 d); |
8191856b | 112 | uint64 decode_gpr_gpr3_src_store(uint64 d); |
4671783a | 113 | uint64 decode_gpr_gpr2_reg1(uint64 d); |
ce0f2617 | 114 | uint64 decode_gpr_gpr2_reg2(uint64 d); |
eabf76a0 | 115 | uint64 decode_gpr_gpr1(uint64 d); |
89a955e8 AM |
116 | |
117 | uint64 copy(uint64 d); | |
118 | int64 copy(int64 d); | |
119 | int64 neg_copy(uint64 d); | |
120 | int64 neg_copy(int64 d); | |
121 | uint64 encode_rs3_and_check_rs3_ge_rt3(uint64 d); | |
122 | uint64 encode_rs3_and_check_rs3_lt_rt3(uint64 d); | |
123 | uint64 encode_s_from_address(uint64 d); | |
124 | uint64 encode_u_from_address(uint64 d); | |
125 | uint64 encode_s_from_s_hi(uint64 d); | |
126 | uint64 encode_count3_from_count(uint64 d); | |
127 | uint64 encode_shift3_from_shift(uint64 d); | |
128 | int64 encode_eu_from_s_li16(uint64 d); | |
129 | uint64 encode_msbd_from_size(uint64 d); | |
130 | uint64 encode_eu_from_u_andi16(uint64 d); | |
131 | ||
132 | uint64 encode_msbd_from_pos_and_size(uint64 d); | |
133 | ||
134 | uint64 encode_rt1_from_rt(uint64 d); | |
135 | uint64 encode_lsb_from_pos_and_size(uint64 d); | |
136 | ||
137 | std::string save_restore_list(uint64 rt, uint64 count, uint64 gp); | |
138 | ||
139 | std::string GPR(uint64 reg); | |
140 | std::string FPR(uint64 reg); | |
141 | std::string AC(uint64 reg); | |
142 | std::string IMMEDIATE(uint64 value); | |
143 | std::string IMMEDIATE(int64 value); | |
144 | std::string CPR(uint64 reg); | |
145 | std::string ADDRESS(uint64 value, int instruction_size); | |
146 | ||
d3605cc0 AM |
147 | int64 extract_s__se3_4_2_1_0(uint64 instruction); |
148 | int64 extract_s__se7_0_6_5_4_3_2_1_s1(uint64 instruction); | |
149 | int64 extract_s__se8_15_7_6_5_4_3_s3(uint64 instruction); | |
150 | int64 extract_s__se8_15_7_6_5_4_3_2_s2(uint64 instruction); | |
151 | int64 extract_s__se8_15_7_6_5_4_3_2_1_0(uint64 instruction); | |
152 | int64 extract_s__se9_20_19_18_17_16_15_14_13_12_11(uint64 instruction); | |
153 | int64 extract_s__se10_0_9_8_7_6_5_4_3_2_1_s1(uint64 instruction); | |
154 | int64 extract_s__se11_0_10_9_8_7_6_5_4_3_2_1_0_s1(uint64 instruction); | |
155 | int64 extract_s__se14_0_13_to_1_s1(uint64 instruction); | |
156 | int64 extract_s__se21_0_20_to_1_s1(uint64 instruction); | |
157 | int64 extract_s__se25_0_24_to_1_s1(uint64 instruction); | |
158 | int64 extract_s__se31_15_to_0_31_to_16(uint64 instruction); | |
159 | int64 extract_s__se31_0_11_to_2_20_to_12_s12(uint64 instruction); | |
160 | int64 extract_shift__se5_21_20_19_18_17_16(uint64 instruction); | |
89a955e8 | 161 | |
0f74e61d | 162 | uint64 extract_ac_15_14(uint64 instruction); |
89a955e8 AM |
163 | uint64 extract_bit_16_15_14_13_12_11(uint64 instruction); |
164 | uint64 extract_bit_23_22_21(uint64 instruction); | |
165 | uint64 extract_c0s_20_19_18_17_16(uint64 instruction); | |
166 | uint64 extract_code_17_to_0(uint64 instruction); | |
167 | uint64 extract_code_18_to_0(uint64 instruction); | |
168 | uint64 extract_code_1_0(uint64 instruction); | |
169 | uint64 extract_code_2_1_0(uint64 instruction); | |
170 | uint64 extract_code_25_24_23_22_21_20_19_18_17_16(uint64 instruction); | |
171 | uint64 extract_cofun_25_24_23(uint64 instruction); | |
172 | uint64 extract_count3_14_13_12(uint64 instruction); | |
173 | uint64 extract_count_3_2_1_0(uint64 instruction); | |
174 | uint64 extract_count_19_18_17_16(uint64 instruction); | |
175 | uint64 extract_cs_20_19_18_17_16(uint64 instruction); | |
176 | uint64 extract_cs_25_24_23_22_21(uint64 instruction); | |
177 | uint64 extract_ct_25_24_23_22_21(uint64 instruction); | |
178 | uint64 extract_eu_3_2_1_0(uint64 instruction); | |
179 | uint64 extract_eu_6_5_4_3_2_1_0(uint64 instruction); | |
d0c60abd | 180 | uint64 extract_fd_15_14_13_12_11(uint64 instruction); |
52a96d22 | 181 | uint64 extract_fs_20_19_18_17_16(uint64 instruction); |
89a955e8 | 182 | uint64 extract_ft_15_14_13_12_11(uint64 instruction); |
17ce2f00 | 183 | uint64 extract_ft_25_24_23_22_21(uint64 instruction); |
89a955e8 AM |
184 | uint64 extract_gp_2(uint64 instruction); |
185 | uint64 extract_hint_25_24_23_22_21(uint64 instruction); | |
186 | uint64 extract_hs_20_19_18_17_16(uint64 instruction); | |
187 | uint64 extract_lsb_4_3_2_1_0(uint64 instruction); | |
188 | uint64 extract_mask_20_19_18_17_16_15_14(uint64 instruction); | |
189 | uint64 extract_msbt_10_9_8_7_6(uint64 instruction); | |
190 | uint64 extract_op_25_24_23_22_21(uint64 instruction); | |
191 | uint64 extract_op_25_to_3(uint64 instruction); | |
192 | uint64 extract_rdl_25_24(uint64 instruction); | |
193 | uint64 extract_rd2_3_8(uint64 instruction); | |
194 | uint64 extract_rd3_3_2_1(uint64 instruction); | |
b4c5d21c | 195 | uint64 extract_rd_15_14_13_12_11(uint64 instruction); |
89a955e8 AM |
196 | uint64 extract_rs3_6_5_4(uint64 instruction); |
197 | uint64 extract_rs4_4_2_1_0(uint64 instruction); | |
198 | uint64 extract_rs_4_3_2_1_0(uint64 instruction); | |
199 | uint64 extract_rs_20_19_18_17_16(uint64 instruction); | |
200 | uint64 extract_rsz4_4_2_1_0(uint64 instruction); | |
201 | uint64 extract_rtl_11(uint64 instruction); | |
202 | uint64 extract_rt3_9_8_7(uint64 instruction); | |
203 | uint64 extract_rt4_9_7_6_5(uint64 instruction); | |
204 | uint64 extract_rt_25_24_23_22_21(uint64 instruction); | |
205 | uint64 extract_rt_41_40_39_38_37(uint64 instruction); | |
206 | uint64 extract_rt_9_8_7_6_5(uint64 instruction); | |
207 | uint64 extract_rtz3_9_8_7(uint64 instruction); | |
208 | uint64 extract_rtz4_27_26_25_23_22_21(uint64 instruction); | |
209 | uint64 extract_rtz4_9_7_6_5(uint64 instruction); | |
210 | uint64 extract_ru_7_6_5_4_3(uint64 instruction); | |
211 | uint64 extract_sa_15_14_13_12_11(uint64 instruction); | |
212 | uint64 extract_sa_15_14_13_12(uint64 instruction); | |
213 | uint64 extract_sa_15_14_13(uint64 instruction); | |
214 | uint64 extract_sel_13_12_11(uint64 instruction); | |
215 | uint64 extract_sel_15_14_13_12_11(uint64 instruction); | |
216 | uint64 extract_shift3_2_1_0(uint64 instruction); | |
217 | uint64 extract_shift_4_3_2_1_0(uint64 instruction); | |
218 | uint64 extract_shift_5_4_3_2_1_0(uint64 instruction); | |
219 | uint64 extract_shift_20_19_18_17_16(uint64 instruction); | |
220 | uint64 extract_shift_10_9_8_7_6(uint64 instruction); | |
221 | uint64 extract_shiftx_11_10_9_8_7_6(uint64 instruction); | |
11b9732a | 222 | uint64 extract_shiftx_10_9_8_7__s1(uint64 instruction); |
89a955e8 AM |
223 | uint64 extract_size_20_19_18_17_16(uint64 instruction); |
224 | uint64 extract_stripe_6(uint64 instruction); | |
225 | uint64 extract_stype_20_19_18_17_16(uint64 instruction); | |
226 | uint64 extract_u2_10_9(uint64 instruction); | |
227 | uint64 extract_u_11_10_9_8_7_6_5_4_3_2_1_0(uint64 instruction); | |
228 | uint64 extract_u_15_to_0(uint64 instruction); | |
229 | uint64 extract_u_17_to_0(uint64 instruction); | |
230 | uint64 extract_u_1_0(uint64 instruction); | |
11b9732a AM |
231 | uint64 extract_u_3_2_1_0__s1(uint64 instruction); |
232 | uint64 extract_u_2_1_0__s2(uint64 instruction); | |
233 | uint64 extract_u_3_2_1_0__s2(uint64 instruction); | |
234 | uint64 extract_u_4_3_2_1_0__s2(uint64 instruction); | |
235 | uint64 extract_u_5_4_3_2_1_0__s2(uint64 instruction); | |
236 | uint64 extract_u_6_5_4_3_2_1_0__s2(uint64 instruction); | |
237 | uint64 extract_u_31_to_0__s32(uint64 instruction); | |
89a955e8 AM |
238 | uint64 extract_u_10(uint64 instruction); |
239 | uint64 extract_u_17_16_15_14_13_12_11(uint64 instruction); | |
240 | uint64 extract_u_20_19_18_17_16_15_14_13(uint64 instruction); | |
11b9732a AM |
241 | uint64 extract_u_17_to_1__s1(uint64 instruction); |
242 | uint64 extract_u_2_1__s1(uint64 instruction); | |
243 | uint64 extract_u_17_to_2__s2(uint64 instruction); | |
244 | uint64 extract_u_20_to_2__s2(uint64 instruction); | |
245 | uint64 extract_u_20_to_3__s3(uint64 instruction); | |
246 | uint64 extract_u_3_8__s2(uint64 instruction); | |
247 | uint64 extract_u_11_10_9_8_7_6_5_4_3__s3(uint64 instruction); | |
248 | uint64 extract_u_7_6_5_4__s4(uint64 instruction); | |
89a955e8 AM |
249 | |
250 | bool ADDIU_32__cond(uint64 instruction); | |
251 | bool ADDIU_RS5__cond(uint64 instruction); | |
252 | bool BALRSC_cond(uint64 instruction); | |
253 | bool BEQC_16__cond(uint64 instruction); | |
254 | bool BNEC_16__cond(uint64 instruction); | |
255 | bool MOVE_cond(uint64 instruction); | |
256 | bool P16_BR1_cond(uint64 instruction); | |
257 | bool PREF_S9__cond(uint64 instruction); | |
258 | bool PREFE_cond(uint64 instruction); | |
259 | bool SLTU_cond(uint64 instruction); | |
260 | ||
261 | std::string ABS_D(uint64 instruction); | |
262 | std::string ABS_S(uint64 instruction); | |
263 | std::string ABSQ_S_PH(uint64 instruction); | |
264 | std::string ABSQ_S_QB(uint64 instruction); | |
265 | std::string ABSQ_S_W(uint64 instruction); | |
266 | std::string ACLR(uint64 instruction); | |
267 | std::string ADD(uint64 instruction); | |
268 | std::string ADD_D(uint64 instruction); | |
269 | std::string ADD_S(uint64 instruction); | |
270 | std::string ADDIU_32_(uint64 instruction); | |
271 | std::string ADDIU_48_(uint64 instruction); | |
272 | std::string ADDIU_GP48_(uint64 instruction); | |
273 | std::string ADDIU_GP_B_(uint64 instruction); | |
274 | std::string ADDIU_GP_W_(uint64 instruction); | |
275 | std::string ADDIU_NEG_(uint64 instruction); | |
276 | std::string ADDIU_R1_SP_(uint64 instruction); | |
277 | std::string ADDIU_R2_(uint64 instruction); | |
278 | std::string ADDIU_RS5_(uint64 instruction); | |
279 | std::string ADDIUPC_32_(uint64 instruction); | |
280 | std::string ADDIUPC_48_(uint64 instruction); | |
281 | std::string ADDQ_PH(uint64 instruction); | |
282 | std::string ADDQ_S_PH(uint64 instruction); | |
283 | std::string ADDQ_S_W(uint64 instruction); | |
284 | std::string ADDQH_PH(uint64 instruction); | |
285 | std::string ADDQH_R_PH(uint64 instruction); | |
286 | std::string ADDQH_R_W(uint64 instruction); | |
287 | std::string ADDQH_W(uint64 instruction); | |
288 | std::string ADDSC(uint64 instruction); | |
289 | std::string ADDU_16_(uint64 instruction); | |
290 | std::string ADDU_32_(uint64 instruction); | |
291 | std::string ADDU_4X4_(uint64 instruction); | |
292 | std::string ADDU_PH(uint64 instruction); | |
293 | std::string ADDU_QB(uint64 instruction); | |
294 | std::string ADDU_S_PH(uint64 instruction); | |
295 | std::string ADDU_S_QB(uint64 instruction); | |
296 | std::string ADDUH_QB(uint64 instruction); | |
297 | std::string ADDUH_R_QB(uint64 instruction); | |
298 | std::string ADDWC(uint64 instruction); | |
299 | std::string ALUIPC(uint64 instruction); | |
300 | std::string AND_16_(uint64 instruction); | |
301 | std::string AND_32_(uint64 instruction); | |
302 | std::string ANDI_16_(uint64 instruction); | |
303 | std::string ANDI_32_(uint64 instruction); | |
304 | std::string APPEND(uint64 instruction); | |
305 | std::string ASET(uint64 instruction); | |
306 | std::string BALC_16_(uint64 instruction); | |
307 | std::string BALC_32_(uint64 instruction); | |
308 | std::string BALRSC(uint64 instruction); | |
309 | std::string BBEQZC(uint64 instruction); | |
310 | std::string BBNEZC(uint64 instruction); | |
311 | std::string BC_16_(uint64 instruction); | |
312 | std::string BC_32_(uint64 instruction); | |
313 | std::string BC1EQZC(uint64 instruction); | |
314 | std::string BC1NEZC(uint64 instruction); | |
315 | std::string BC2EQZC(uint64 instruction); | |
316 | std::string BC2NEZC(uint64 instruction); | |
317 | std::string BEQC_16_(uint64 instruction); | |
318 | std::string BEQC_32_(uint64 instruction); | |
319 | std::string BEQIC(uint64 instruction); | |
320 | std::string BEQZC_16_(uint64 instruction); | |
321 | std::string BGEC(uint64 instruction); | |
322 | std::string BGEIC(uint64 instruction); | |
323 | std::string BGEIUC(uint64 instruction); | |
324 | std::string BGEUC(uint64 instruction); | |
325 | std::string BLTC(uint64 instruction); | |
326 | std::string BLTIC(uint64 instruction); | |
327 | std::string BLTIUC(uint64 instruction); | |
328 | std::string BLTUC(uint64 instruction); | |
329 | std::string BNEC_16_(uint64 instruction); | |
330 | std::string BNEC_32_(uint64 instruction); | |
331 | std::string BNEIC(uint64 instruction); | |
332 | std::string BNEZC_16_(uint64 instruction); | |
333 | std::string BPOSGE32C(uint64 instruction); | |
334 | std::string BREAK_16_(uint64 instruction); | |
335 | std::string BREAK_32_(uint64 instruction); | |
336 | std::string BRSC(uint64 instruction); | |
337 | std::string CACHE(uint64 instruction); | |
338 | std::string CACHEE(uint64 instruction); | |
339 | std::string CEIL_L_D(uint64 instruction); | |
340 | std::string CEIL_L_S(uint64 instruction); | |
341 | std::string CEIL_W_D(uint64 instruction); | |
342 | std::string CEIL_W_S(uint64 instruction); | |
343 | std::string CFC1(uint64 instruction); | |
344 | std::string CFC2(uint64 instruction); | |
345 | std::string CLASS_D(uint64 instruction); | |
346 | std::string CLASS_S(uint64 instruction); | |
347 | std::string CLO(uint64 instruction); | |
348 | std::string CLZ(uint64 instruction); | |
349 | std::string CMP_AF_D(uint64 instruction); | |
350 | std::string CMP_AF_S(uint64 instruction); | |
351 | std::string CMP_EQ_D(uint64 instruction); | |
352 | std::string CMP_EQ_PH(uint64 instruction); | |
353 | std::string CMP_EQ_S(uint64 instruction); | |
354 | std::string CMP_LE_D(uint64 instruction); | |
355 | std::string CMP_LE_PH(uint64 instruction); | |
356 | std::string CMP_LE_S(uint64 instruction); | |
357 | std::string CMP_LT_D(uint64 instruction); | |
358 | std::string CMP_LT_PH(uint64 instruction); | |
359 | std::string CMP_LT_S(uint64 instruction); | |
360 | std::string CMP_NE_D(uint64 instruction); | |
361 | std::string CMP_NE_S(uint64 instruction); | |
362 | std::string CMP_OR_D(uint64 instruction); | |
363 | std::string CMP_OR_S(uint64 instruction); | |
364 | std::string CMP_SAF_D(uint64 instruction); | |
365 | std::string CMP_SAF_S(uint64 instruction); | |
366 | std::string CMP_SEQ_D(uint64 instruction); | |
367 | std::string CMP_SEQ_S(uint64 instruction); | |
368 | std::string CMP_SLE_D(uint64 instruction); | |
369 | std::string CMP_SLE_S(uint64 instruction); | |
370 | std::string CMP_SLT_D(uint64 instruction); | |
371 | std::string CMP_SLT_S(uint64 instruction); | |
372 | std::string CMP_SNE_D(uint64 instruction); | |
373 | std::string CMP_SNE_S(uint64 instruction); | |
374 | std::string CMP_SOR_D(uint64 instruction); | |
375 | std::string CMP_SOR_S(uint64 instruction); | |
376 | std::string CMP_SUEQ_D(uint64 instruction); | |
377 | std::string CMP_SUEQ_S(uint64 instruction); | |
378 | std::string CMP_SULE_D(uint64 instruction); | |
379 | std::string CMP_SULE_S(uint64 instruction); | |
380 | std::string CMP_SULT_D(uint64 instruction); | |
381 | std::string CMP_SULT_S(uint64 instruction); | |
382 | std::string CMP_SUN_D(uint64 instruction); | |
383 | std::string CMP_SUN_S(uint64 instruction); | |
384 | std::string CMP_SUNE_D(uint64 instruction); | |
385 | std::string CMP_SUNE_S(uint64 instruction); | |
386 | std::string CMP_UEQ_D(uint64 instruction); | |
387 | std::string CMP_UEQ_S(uint64 instruction); | |
388 | std::string CMP_ULE_D(uint64 instruction); | |
389 | std::string CMP_ULE_S(uint64 instruction); | |
390 | std::string CMP_ULT_D(uint64 instruction); | |
391 | std::string CMP_ULT_S(uint64 instruction); | |
392 | std::string CMP_UN_D(uint64 instruction); | |
393 | std::string CMP_UN_S(uint64 instruction); | |
394 | std::string CMP_UNE_D(uint64 instruction); | |
395 | std::string CMP_UNE_S(uint64 instruction); | |
396 | std::string CMPGDU_EQ_QB(uint64 instruction); | |
397 | std::string CMPGDU_LE_QB(uint64 instruction); | |
398 | std::string CMPGDU_LT_QB(uint64 instruction); | |
399 | std::string CMPGU_EQ_QB(uint64 instruction); | |
400 | std::string CMPGU_LE_QB(uint64 instruction); | |
401 | std::string CMPGU_LT_QB(uint64 instruction); | |
402 | std::string CMPU_EQ_QB(uint64 instruction); | |
403 | std::string CMPU_LE_QB(uint64 instruction); | |
404 | std::string CMPU_LT_QB(uint64 instruction); | |
405 | std::string COP2_1(uint64 instruction); | |
406 | std::string CTC1(uint64 instruction); | |
407 | std::string CTC2(uint64 instruction); | |
408 | std::string CVT_D_L(uint64 instruction); | |
409 | std::string CVT_D_S(uint64 instruction); | |
410 | std::string CVT_D_W(uint64 instruction); | |
411 | std::string CVT_L_D(uint64 instruction); | |
412 | std::string CVT_L_S(uint64 instruction); | |
413 | std::string CVT_S_D(uint64 instruction); | |
414 | std::string CVT_S_L(uint64 instruction); | |
415 | std::string CVT_S_PL(uint64 instruction); | |
416 | std::string CVT_S_PU(uint64 instruction); | |
417 | std::string CVT_S_W(uint64 instruction); | |
418 | std::string CVT_W_D(uint64 instruction); | |
419 | std::string CVT_W_S(uint64 instruction); | |
420 | std::string DADDIU_48_(uint64 instruction); | |
421 | std::string DADDIU_NEG_(uint64 instruction); | |
422 | std::string DADDIU_U12_(uint64 instruction); | |
423 | std::string DADD(uint64 instruction); | |
424 | std::string DADDU(uint64 instruction); | |
425 | std::string DCLO(uint64 instruction); | |
426 | std::string DCLZ(uint64 instruction); | |
427 | std::string DDIV(uint64 instruction); | |
428 | std::string DDIVU(uint64 instruction); | |
429 | std::string DERET(uint64 instruction); | |
430 | std::string DEXTM(uint64 instruction); | |
431 | std::string DEXT(uint64 instruction); | |
432 | std::string DEXTU(uint64 instruction); | |
433 | std::string DINSM(uint64 instruction); | |
434 | std::string DINS(uint64 instruction); | |
435 | std::string DINSU(uint64 instruction); | |
436 | std::string DI(uint64 instruction); | |
437 | std::string DIV(uint64 instruction); | |
438 | std::string DIV_D(uint64 instruction); | |
439 | std::string DIV_S(uint64 instruction); | |
440 | std::string DIVU(uint64 instruction); | |
441 | std::string DLSA(uint64 instruction); | |
442 | std::string DLUI_48_(uint64 instruction); | |
443 | std::string DMFC0(uint64 instruction); | |
444 | std::string DMFC1(uint64 instruction); | |
445 | std::string DMFC2(uint64 instruction); | |
446 | std::string DMFGC0(uint64 instruction); | |
447 | std::string DMOD(uint64 instruction); | |
448 | std::string DMODU(uint64 instruction); | |
449 | std::string DMTC0(uint64 instruction); | |
450 | std::string DMTC1(uint64 instruction); | |
451 | std::string DMTC2(uint64 instruction); | |
452 | std::string DMTGC0(uint64 instruction); | |
453 | std::string DMT(uint64 instruction); | |
454 | std::string DMUH(uint64 instruction); | |
455 | std::string DMUHU(uint64 instruction); | |
456 | std::string DMUL(uint64 instruction); | |
457 | std::string DMULU(uint64 instruction); | |
458 | std::string DPAQ_S_W_PH(uint64 instruction); | |
459 | std::string DPAQ_SA_L_W(uint64 instruction); | |
460 | std::string DPAQX_S_W_PH(uint64 instruction); | |
461 | std::string DPAQX_SA_W_PH(uint64 instruction); | |
462 | std::string DPAU_H_QBL(uint64 instruction); | |
463 | std::string DPAU_H_QBR(uint64 instruction); | |
464 | std::string DPA_W_PH(uint64 instruction); | |
465 | std::string DPAX_W_PH(uint64 instruction); | |
466 | std::string DPS_W_PH(uint64 instruction); | |
467 | std::string DPSQ_SA_L_W(uint64 instruction); | |
468 | std::string DPSQ_S_W_PH(uint64 instruction); | |
469 | std::string DPSQX_SA_W_PH(uint64 instruction); | |
470 | std::string DPSQX_S_W_PH(uint64 instruction); | |
471 | std::string DPSU_H_QBL(uint64 instruction); | |
472 | std::string DPSU_H_QBR(uint64 instruction); | |
473 | std::string DPSX_W_PH(uint64 instruction); | |
474 | std::string DROTR(uint64 instruction); | |
475 | std::string DROTR32(uint64 instruction); | |
476 | std::string DROTRV(uint64 instruction); | |
477 | std::string DROTX(uint64 instruction); | |
478 | std::string DSLL(uint64 instruction); | |
479 | std::string DSLL32(uint64 instruction); | |
480 | std::string DSLLV(uint64 instruction); | |
481 | std::string DSRA(uint64 instruction); | |
482 | std::string DSRA32(uint64 instruction); | |
483 | std::string DSRAV(uint64 instruction); | |
484 | std::string DSRL32(uint64 instruction); | |
485 | std::string DSRL(uint64 instruction); | |
486 | std::string DSRLV(uint64 instruction); | |
487 | std::string DSUB(uint64 instruction); | |
488 | std::string DSUBU(uint64 instruction); | |
489 | std::string DVP(uint64 instruction); | |
490 | std::string DVPE(uint64 instruction); | |
491 | std::string EHB(uint64 instruction); | |
492 | std::string EI(uint64 instruction); | |
493 | std::string EMT(uint64 instruction); | |
494 | std::string ERET(uint64 instruction); | |
495 | std::string ERETNC(uint64 instruction); | |
496 | std::string EVP(uint64 instruction); | |
497 | std::string EVPE(uint64 instruction); | |
498 | std::string EXT(uint64 instruction); | |
499 | std::string EXTD(uint64 instruction); | |
500 | std::string EXTD32(uint64 instruction); | |
501 | std::string EXTP(uint64 instruction); | |
502 | std::string EXTPDP(uint64 instruction); | |
503 | std::string EXTPDPV(uint64 instruction); | |
504 | std::string EXTPV(uint64 instruction); | |
505 | std::string EXTR_RS_W(uint64 instruction); | |
506 | std::string EXTR_R_W(uint64 instruction); | |
507 | std::string EXTR_S_H(uint64 instruction); | |
508 | std::string EXTR_W(uint64 instruction); | |
509 | std::string EXTRV_R_W(uint64 instruction); | |
510 | std::string EXTRV_RS_W(uint64 instruction); | |
511 | std::string EXTRV_S_H(uint64 instruction); | |
512 | std::string EXTRV_W(uint64 instruction); | |
513 | std::string EXTW(uint64 instruction); | |
514 | std::string FLOOR_L_D(uint64 instruction); | |
515 | std::string FLOOR_L_S(uint64 instruction); | |
516 | std::string FLOOR_W_D(uint64 instruction); | |
517 | std::string FLOOR_W_S(uint64 instruction); | |
518 | std::string FORK(uint64 instruction); | |
519 | std::string HYPCALL(uint64 instruction); | |
520 | std::string HYPCALL_16_(uint64 instruction); | |
521 | std::string INS(uint64 instruction); | |
522 | std::string INSV(uint64 instruction); | |
523 | std::string IRET(uint64 instruction); | |
524 | std::string JALRC_16_(uint64 instruction); | |
525 | std::string JALRC_32_(uint64 instruction); | |
526 | std::string JALRC_HB(uint64 instruction); | |
527 | std::string JRC(uint64 instruction); | |
528 | std::string LB_16_(uint64 instruction); | |
529 | std::string LB_GP_(uint64 instruction); | |
530 | std::string LB_S9_(uint64 instruction); | |
531 | std::string LB_U12_(uint64 instruction); | |
532 | std::string LBE(uint64 instruction); | |
533 | std::string LBU_16_(uint64 instruction); | |
534 | std::string LBU_GP_(uint64 instruction); | |
535 | std::string LBU_S9_(uint64 instruction); | |
536 | std::string LBU_U12_(uint64 instruction); | |
537 | std::string LBUE(uint64 instruction); | |
538 | std::string LBUX(uint64 instruction); | |
539 | std::string LBX(uint64 instruction); | |
540 | std::string LD_GP_(uint64 instruction); | |
541 | std::string LD_S9_(uint64 instruction); | |
542 | std::string LD_U12_(uint64 instruction); | |
543 | std::string LDC1_GP_(uint64 instruction); | |
544 | std::string LDC1_S9_(uint64 instruction); | |
545 | std::string LDC1_U12_(uint64 instruction); | |
546 | std::string LDC1X(uint64 instruction); | |
547 | std::string LDC1XS(uint64 instruction); | |
548 | std::string LDC2(uint64 instruction); | |
549 | std::string LDM(uint64 instruction); | |
550 | std::string LDPC_48_(uint64 instruction); | |
551 | std::string LDX(uint64 instruction); | |
552 | std::string LDXS(uint64 instruction); | |
553 | std::string LH_16_(uint64 instruction); | |
554 | std::string LH_GP_(uint64 instruction); | |
555 | std::string LH_S9_(uint64 instruction); | |
556 | std::string LH_U12_(uint64 instruction); | |
557 | std::string LHE(uint64 instruction); | |
558 | std::string LHU_16_(uint64 instruction); | |
559 | std::string LHU_GP_(uint64 instruction); | |
560 | std::string LHU_S9_(uint64 instruction); | |
561 | std::string LHU_U12_(uint64 instruction); | |
562 | std::string LHUE(uint64 instruction); | |
563 | std::string LHUX(uint64 instruction); | |
564 | std::string LHUXS(uint64 instruction); | |
565 | std::string LHX(uint64 instruction); | |
566 | std::string LHXS(uint64 instruction); | |
567 | std::string LI_16_(uint64 instruction); | |
568 | std::string LI_48_(uint64 instruction); | |
569 | std::string LL(uint64 instruction); | |
570 | std::string LLD(uint64 instruction); | |
571 | std::string LLDP(uint64 instruction); | |
572 | std::string LLE(uint64 instruction); | |
573 | std::string LLWP(uint64 instruction); | |
574 | std::string LLWPE(uint64 instruction); | |
575 | std::string LSA(uint64 instruction); | |
576 | std::string LUI(uint64 instruction); | |
577 | std::string LW_16_(uint64 instruction); | |
578 | std::string LW_4X4_(uint64 instruction); | |
579 | std::string LWC1_GP_(uint64 instruction); | |
580 | std::string LWC1_S9_(uint64 instruction); | |
581 | std::string LWC1_U12_(uint64 instruction); | |
582 | std::string LWC1X(uint64 instruction); | |
583 | std::string LWC1XS(uint64 instruction); | |
584 | std::string LWC2(uint64 instruction); | |
585 | std::string LWE(uint64 instruction); | |
586 | std::string LW_GP_(uint64 instruction); | |
587 | std::string LW_GP16_(uint64 instruction); | |
588 | std::string LWM(uint64 instruction); | |
589 | std::string LWPC_48_(uint64 instruction); | |
590 | std::string LW_S9_(uint64 instruction); | |
591 | std::string LW_SP_(uint64 instruction); | |
592 | std::string LW_U12_(uint64 instruction); | |
593 | std::string LWU_GP_(uint64 instruction); | |
594 | std::string LWU_S9_(uint64 instruction); | |
595 | std::string LWU_U12_(uint64 instruction); | |
596 | std::string LWUX(uint64 instruction); | |
597 | std::string LWUXS(uint64 instruction); | |
598 | std::string LWX(uint64 instruction); | |
599 | std::string LWXS_16_(uint64 instruction); | |
600 | std::string LWXS_32_(uint64 instruction); | |
601 | std::string MADD_DSP_(uint64 instruction); | |
602 | std::string MADDF_D(uint64 instruction); | |
603 | std::string MADDF_S(uint64 instruction); | |
604 | std::string MADDU_DSP_(uint64 instruction); | |
605 | std::string MAQ_S_W_PHL(uint64 instruction); | |
606 | std::string MAQ_S_W_PHR(uint64 instruction); | |
607 | std::string MAQ_SA_W_PHL(uint64 instruction); | |
608 | std::string MAQ_SA_W_PHR(uint64 instruction); | |
609 | std::string MAX_D(uint64 instruction); | |
610 | std::string MAX_S(uint64 instruction); | |
611 | std::string MAXA_D(uint64 instruction); | |
612 | std::string MAXA_S(uint64 instruction); | |
613 | std::string MFC0(uint64 instruction); | |
614 | std::string MFC1(uint64 instruction); | |
615 | std::string MFC2(uint64 instruction); | |
616 | std::string MFGC0(uint64 instruction); | |
617 | std::string MFHC0(uint64 instruction); | |
618 | std::string MFHC1(uint64 instruction); | |
619 | std::string MFHC2(uint64 instruction); | |
620 | std::string MFHGC0(uint64 instruction); | |
621 | std::string MFHI_DSP_(uint64 instruction); | |
622 | std::string MFHTR(uint64 instruction); | |
623 | std::string MFLO_DSP_(uint64 instruction); | |
624 | std::string MFTR(uint64 instruction); | |
625 | std::string MIN_D(uint64 instruction); | |
626 | std::string MIN_S(uint64 instruction); | |
627 | std::string MINA_D(uint64 instruction); | |
628 | std::string MINA_S(uint64 instruction); | |
629 | std::string MOD(uint64 instruction); | |
630 | std::string MODSUB(uint64 instruction); | |
631 | std::string MODU(uint64 instruction); | |
632 | std::string MOV_D(uint64 instruction); | |
633 | std::string MOV_S(uint64 instruction); | |
634 | std::string MOVE_BALC(uint64 instruction); | |
635 | std::string MOVEP(uint64 instruction); | |
636 | std::string MOVEP_REV_(uint64 instruction); | |
637 | std::string MOVE(uint64 instruction); | |
638 | std::string MOVN(uint64 instruction); | |
639 | std::string MOVZ(uint64 instruction); | |
640 | std::string MSUB_DSP_(uint64 instruction); | |
641 | std::string MSUBF_D(uint64 instruction); | |
642 | std::string MSUBF_S(uint64 instruction); | |
643 | std::string MSUBU_DSP_(uint64 instruction); | |
644 | std::string MTC0(uint64 instruction); | |
645 | std::string MTC1(uint64 instruction); | |
646 | std::string MTC2(uint64 instruction); | |
647 | std::string MTGC0(uint64 instruction); | |
648 | std::string MTHC0(uint64 instruction); | |
649 | std::string MTHC1(uint64 instruction); | |
650 | std::string MTHC2(uint64 instruction); | |
651 | std::string MTHGC0(uint64 instruction); | |
652 | std::string MTHI_DSP_(uint64 instruction); | |
653 | std::string MTHLIP(uint64 instruction); | |
654 | std::string MTHTR(uint64 instruction); | |
655 | std::string MTLO_DSP_(uint64 instruction); | |
656 | std::string MTTR(uint64 instruction); | |
657 | std::string MUH(uint64 instruction); | |
658 | std::string MUHU(uint64 instruction); | |
659 | std::string MUL_32_(uint64 instruction); | |
660 | std::string MUL_4X4_(uint64 instruction); | |
661 | std::string MUL_D(uint64 instruction); | |
662 | std::string MUL_PH(uint64 instruction); | |
663 | std::string MUL_S(uint64 instruction); | |
664 | std::string MUL_S_PH(uint64 instruction); | |
665 | std::string MULEQ_S_W_PHL(uint64 instruction); | |
666 | std::string MULEQ_S_W_PHR(uint64 instruction); | |
667 | std::string MULEU_S_PH_QBL(uint64 instruction); | |
668 | std::string MULEU_S_PH_QBR(uint64 instruction); | |
669 | std::string MULQ_RS_PH(uint64 instruction); | |
670 | std::string MULQ_RS_W(uint64 instruction); | |
671 | std::string MULQ_S_PH(uint64 instruction); | |
672 | std::string MULQ_S_W(uint64 instruction); | |
673 | std::string MULSA_W_PH(uint64 instruction); | |
674 | std::string MULSAQ_S_W_PH(uint64 instruction); | |
675 | std::string MULT_DSP_(uint64 instruction); | |
676 | std::string MULTU_DSP_(uint64 instruction); | |
677 | std::string MULU(uint64 instruction); | |
678 | std::string NEG_D(uint64 instruction); | |
679 | std::string NEG_S(uint64 instruction); | |
680 | std::string NOP_16_(uint64 instruction); | |
681 | std::string NOP_32_(uint64 instruction); | |
682 | std::string NOR(uint64 instruction); | |
683 | std::string NOT_16_(uint64 instruction); | |
684 | std::string OR_16_(uint64 instruction); | |
685 | std::string OR_32_(uint64 instruction); | |
686 | std::string ORI(uint64 instruction); | |
687 | std::string PACKRL_PH(uint64 instruction); | |
688 | std::string PAUSE(uint64 instruction); | |
689 | std::string PICK_PH(uint64 instruction); | |
690 | std::string PICK_QB(uint64 instruction); | |
691 | std::string PRECEQ_W_PHL(uint64 instruction); | |
692 | std::string PRECEQ_W_PHR(uint64 instruction); | |
693 | std::string PRECEQU_PH_QBL(uint64 instruction); | |
694 | std::string PRECEQU_PH_QBLA(uint64 instruction); | |
695 | std::string PRECEQU_PH_QBR(uint64 instruction); | |
696 | std::string PRECEQU_PH_QBRA(uint64 instruction); | |
697 | std::string PRECEU_PH_QBL(uint64 instruction); | |
698 | std::string PRECEU_PH_QBLA(uint64 instruction); | |
699 | std::string PRECEU_PH_QBR(uint64 instruction); | |
700 | std::string PRECEU_PH_QBRA(uint64 instruction); | |
701 | std::string PRECR_QB_PH(uint64 instruction); | |
702 | std::string PRECR_SRA_PH_W(uint64 instruction); | |
703 | std::string PRECR_SRA_R_PH_W(uint64 instruction); | |
704 | std::string PRECRQ_PH_W(uint64 instruction); | |
705 | std::string PRECRQ_QB_PH(uint64 instruction); | |
706 | std::string PRECRQ_RS_PH_W(uint64 instruction); | |
707 | std::string PRECRQU_S_QB_PH(uint64 instruction); | |
708 | std::string PREF_S9_(uint64 instruction); | |
709 | std::string PREF_U12_(uint64 instruction); | |
710 | std::string PREFE(uint64 instruction); | |
711 | std::string PREPEND(uint64 instruction); | |
712 | std::string RADDU_W_QB(uint64 instruction); | |
713 | std::string RDDSP(uint64 instruction); | |
714 | std::string RDHWR(uint64 instruction); | |
715 | std::string RDPGPR(uint64 instruction); | |
716 | std::string RECIP_D(uint64 instruction); | |
717 | std::string RECIP_S(uint64 instruction); | |
718 | std::string REPL_PH(uint64 instruction); | |
719 | std::string REPL_QB(uint64 instruction); | |
720 | std::string REPLV_PH(uint64 instruction); | |
721 | std::string REPLV_QB(uint64 instruction); | |
722 | std::string RESTORE_32_(uint64 instruction); | |
723 | std::string RESTORE_JRC_16_(uint64 instruction); | |
724 | std::string RESTORE_JRC_32_(uint64 instruction); | |
725 | std::string RESTOREF(uint64 instruction); | |
726 | std::string RINT_D(uint64 instruction); | |
727 | std::string RINT_S(uint64 instruction); | |
728 | std::string ROTR(uint64 instruction); | |
729 | std::string ROTRV(uint64 instruction); | |
730 | std::string ROTX(uint64 instruction); | |
731 | std::string ROUND_L_D(uint64 instruction); | |
732 | std::string ROUND_L_S(uint64 instruction); | |
733 | std::string ROUND_W_D(uint64 instruction); | |
734 | std::string ROUND_W_S(uint64 instruction); | |
735 | std::string RSQRT_D(uint64 instruction); | |
736 | std::string RSQRT_S(uint64 instruction); | |
737 | std::string SAVE_16_(uint64 instruction); | |
738 | std::string SAVE_32_(uint64 instruction); | |
739 | std::string SAVEF(uint64 instruction); | |
740 | std::string SB_16_(uint64 instruction); | |
741 | std::string SB_GP_(uint64 instruction); | |
742 | std::string SB_S9_(uint64 instruction); | |
743 | std::string SB_U12_(uint64 instruction); | |
744 | std::string SBE(uint64 instruction); | |
745 | std::string SBX(uint64 instruction); | |
746 | std::string SC(uint64 instruction); | |
747 | std::string SCD(uint64 instruction); | |
748 | std::string SCDP(uint64 instruction); | |
749 | std::string SCE(uint64 instruction); | |
750 | std::string SCWP(uint64 instruction); | |
751 | std::string SCWPE(uint64 instruction); | |
752 | std::string SD_GP_(uint64 instruction); | |
753 | std::string SD_S9_(uint64 instruction); | |
754 | std::string SD_U12_(uint64 instruction); | |
755 | std::string SDBBP_16_(uint64 instruction); | |
756 | std::string SDBBP_32_(uint64 instruction); | |
757 | std::string SDC1_GP_(uint64 instruction); | |
758 | std::string SDC1_S9_(uint64 instruction); | |
759 | std::string SDC1_U12_(uint64 instruction); | |
760 | std::string SDC1X(uint64 instruction); | |
761 | std::string SDC1XS(uint64 instruction); | |
762 | std::string SDC2(uint64 instruction); | |
763 | std::string SDM(uint64 instruction); | |
764 | std::string SDPC_48_(uint64 instruction); | |
765 | std::string SDX(uint64 instruction); | |
766 | std::string SDXS(uint64 instruction); | |
767 | std::string SEB(uint64 instruction); | |
768 | std::string SEH(uint64 instruction); | |
769 | std::string SEL_D(uint64 instruction); | |
770 | std::string SEL_S(uint64 instruction); | |
771 | std::string SELEQZ_D(uint64 instruction); | |
772 | std::string SELEQZ_S(uint64 instruction); | |
773 | std::string SELNEZ_D(uint64 instruction); | |
774 | std::string SELNEZ_S(uint64 instruction); | |
775 | std::string SEQI(uint64 instruction); | |
776 | std::string SH_16_(uint64 instruction); | |
777 | std::string SH_GP_(uint64 instruction); | |
778 | std::string SH_S9_(uint64 instruction); | |
779 | std::string SH_U12_(uint64 instruction); | |
780 | std::string SHE(uint64 instruction); | |
781 | std::string SHILO(uint64 instruction); | |
782 | std::string SHILOV(uint64 instruction); | |
783 | std::string SHLL_PH(uint64 instruction); | |
784 | std::string SHLL_QB(uint64 instruction); | |
785 | std::string SHLL_S_PH(uint64 instruction); | |
786 | std::string SHLL_S_W(uint64 instruction); | |
787 | std::string SHLLV_PH(uint64 instruction); | |
788 | std::string SHLLV_QB(uint64 instruction); | |
789 | std::string SHLLV_S_PH(uint64 instruction); | |
790 | std::string SHLLV_S_W(uint64 instruction); | |
791 | std::string SHRA_PH(uint64 instruction); | |
792 | std::string SHRA_QB(uint64 instruction); | |
793 | std::string SHRA_R_PH(uint64 instruction); | |
794 | std::string SHRA_R_QB(uint64 instruction); | |
795 | std::string SHRA_R_W(uint64 instruction); | |
796 | std::string SHRAV_PH(uint64 instruction); | |
797 | std::string SHRAV_QB(uint64 instruction); | |
798 | std::string SHRAV_R_PH(uint64 instruction); | |
799 | std::string SHRAV_R_QB(uint64 instruction); | |
800 | std::string SHRAV_R_W(uint64 instruction); | |
801 | std::string SHRL_PH(uint64 instruction); | |
802 | std::string SHRL_QB(uint64 instruction); | |
803 | std::string SHRLV_PH(uint64 instruction); | |
804 | std::string SHRLV_QB(uint64 instruction); | |
805 | std::string SHX(uint64 instruction); | |
806 | std::string SHXS(uint64 instruction); | |
807 | std::string SIGRIE(uint64 instruction); | |
808 | std::string SLL_16_(uint64 instruction); | |
809 | std::string SLL_32_(uint64 instruction); | |
810 | std::string SLLV(uint64 instruction); | |
811 | std::string SLT(uint64 instruction); | |
812 | std::string SLTI(uint64 instruction); | |
813 | std::string SLTIU(uint64 instruction); | |
814 | std::string SLTU(uint64 instruction); | |
815 | std::string SOV(uint64 instruction); | |
816 | std::string SPECIAL2(uint64 instruction); | |
817 | std::string SQRT_D(uint64 instruction); | |
818 | std::string SQRT_S(uint64 instruction); | |
819 | std::string SRA(uint64 instruction); | |
820 | std::string SRAV(uint64 instruction); | |
821 | std::string SRL_16_(uint64 instruction); | |
822 | std::string SRL_32_(uint64 instruction); | |
823 | std::string SRLV(uint64 instruction); | |
824 | std::string SUB(uint64 instruction); | |
825 | std::string SUB_D(uint64 instruction); | |
826 | std::string SUB_S(uint64 instruction); | |
827 | std::string SUBQ_PH(uint64 instruction); | |
828 | std::string SUBQ_S_PH(uint64 instruction); | |
829 | std::string SUBQ_S_W(uint64 instruction); | |
830 | std::string SUBQH_PH(uint64 instruction); | |
831 | std::string SUBQH_R_PH(uint64 instruction); | |
832 | std::string SUBQH_R_W(uint64 instruction); | |
833 | std::string SUBQH_W(uint64 instruction); | |
834 | std::string SUBU_16_(uint64 instruction); | |
835 | std::string SUBU_32_(uint64 instruction); | |
836 | std::string SUBU_PH(uint64 instruction); | |
837 | std::string SUBU_QB(uint64 instruction); | |
838 | std::string SUBU_S_PH(uint64 instruction); | |
839 | std::string SUBU_S_QB(uint64 instruction); | |
840 | std::string SUBUH_QB(uint64 instruction); | |
841 | std::string SUBUH_R_QB(uint64 instruction); | |
842 | std::string SW_16_(uint64 instruction); | |
843 | std::string SW_4X4_(uint64 instruction); | |
844 | std::string SW_GP16_(uint64 instruction); | |
845 | std::string SW_GP_(uint64 instruction); | |
846 | std::string SW_S9_(uint64 instruction); | |
847 | std::string SW_SP_(uint64 instruction); | |
848 | std::string SW_U12_(uint64 instruction); | |
849 | std::string SWC1_GP_(uint64 instruction); | |
850 | std::string SWC1_S9_(uint64 instruction); | |
851 | std::string SWC1_U12_(uint64 instruction); | |
852 | std::string SWC1X(uint64 instruction); | |
853 | std::string SWC1XS(uint64 instruction); | |
854 | std::string SWC2(uint64 instruction); | |
855 | std::string SWE(uint64 instruction); | |
856 | std::string SWM(uint64 instruction); | |
857 | std::string SWPC_48_(uint64 instruction); | |
858 | std::string SWX(uint64 instruction); | |
859 | std::string SWXS(uint64 instruction); | |
860 | std::string SYNC(uint64 instruction); | |
861 | std::string SYNCI(uint64 instruction); | |
862 | std::string SYNCIE(uint64 instruction); | |
863 | std::string SYSCALL_16_(uint64 instruction); | |
864 | std::string SYSCALL_32_(uint64 instruction); | |
865 | std::string TEQ(uint64 instruction); | |
866 | std::string TLBGINV(uint64 instruction); | |
867 | std::string TLBGINVF(uint64 instruction); | |
868 | std::string TLBGP(uint64 instruction); | |
869 | std::string TLBGR(uint64 instruction); | |
870 | std::string TLBGWI(uint64 instruction); | |
871 | std::string TLBGWR(uint64 instruction); | |
872 | std::string TLBINV(uint64 instruction); | |
873 | std::string TLBINVF(uint64 instruction); | |
874 | std::string TLBP(uint64 instruction); | |
875 | std::string TLBR(uint64 instruction); | |
876 | std::string TLBWI(uint64 instruction); | |
877 | std::string TLBWR(uint64 instruction); | |
878 | std::string TNE(uint64 instruction); | |
879 | std::string TRUNC_L_D(uint64 instruction); | |
880 | std::string TRUNC_L_S(uint64 instruction); | |
881 | std::string TRUNC_W_D(uint64 instruction); | |
882 | std::string TRUNC_W_S(uint64 instruction); | |
883 | std::string UALDM(uint64 instruction); | |
884 | std::string UALH(uint64 instruction); | |
885 | std::string UALWM(uint64 instruction); | |
886 | std::string UASDM(uint64 instruction); | |
887 | std::string UASH(uint64 instruction); | |
888 | std::string UASWM(uint64 instruction); | |
889 | std::string UDI(uint64 instruction); | |
890 | std::string WAIT(uint64 instruction); | |
891 | std::string WRDSP(uint64 instruction); | |
892 | std::string WRPGPR(uint64 instruction); | |
893 | std::string XOR_16_(uint64 instruction); | |
894 | std::string XOR_32_(uint64 instruction); | |
895 | std::string XORI(uint64 instruction); | |
896 | std::string YIELD(uint64 instruction); | |
897 | ||
898 | static Pool P_SYSCALL[2]; | |
899 | static Pool P_RI[4]; | |
900 | static Pool P_ADDIU[2]; | |
901 | static Pool P_TRAP[2]; | |
902 | static Pool P_CMOVE[2]; | |
903 | static Pool P_D_MT_VPE[2]; | |
904 | static Pool P_E_MT_VPE[2]; | |
905 | static Pool _P_MT_VPE[2]; | |
906 | static Pool P_MT_VPE[8]; | |
907 | static Pool P_DVP[2]; | |
908 | static Pool P_SLTU[2]; | |
909 | static Pool _POOL32A0[128]; | |
910 | static Pool ADDQ__S__PH[2]; | |
911 | static Pool MUL__S__PH[2]; | |
912 | static Pool ADDQH__R__PH[2]; | |
913 | static Pool ADDQH__R__W[2]; | |
914 | static Pool ADDU__S__QB[2]; | |
915 | static Pool ADDU__S__PH[2]; | |
916 | static Pool ADDUH__R__QB[2]; | |
917 | static Pool SHRAV__R__PH[2]; | |
918 | static Pool SHRAV__R__QB[2]; | |
919 | static Pool SUBQ__S__PH[2]; | |
920 | static Pool SUBQH__R__PH[2]; | |
921 | static Pool SUBQH__R__W[2]; | |
922 | static Pool SUBU__S__QB[2]; | |
923 | static Pool SUBU__S__PH[2]; | |
924 | static Pool SHRA__R__PH[2]; | |
925 | static Pool SUBUH__R__QB[2]; | |
926 | static Pool SHLLV__S__PH[2]; | |
927 | static Pool SHLL__S__PH[4]; | |
928 | static Pool PRECR_SRA__R__PH_W[2]; | |
929 | static Pool _POOL32A5[128]; | |
930 | static Pool PP_LSX[16]; | |
931 | static Pool PP_LSXS[16]; | |
932 | static Pool P_LSX[2]; | |
933 | static Pool POOL32Axf_1_0[4]; | |
934 | static Pool POOL32Axf_1_1[4]; | |
935 | static Pool POOL32Axf_1_3[4]; | |
936 | static Pool POOL32Axf_1_4[2]; | |
937 | static Pool MAQ_S_A__W_PHR[2]; | |
938 | static Pool MAQ_S_A__W_PHL[2]; | |
939 | static Pool POOL32Axf_1_5[2]; | |
940 | static Pool POOL32Axf_1_7[4]; | |
941 | static Pool POOL32Axf_1[8]; | |
942 | static Pool POOL32Axf_2_DSP__0_7[8]; | |
943 | static Pool POOL32Axf_2_DSP__8_15[8]; | |
944 | static Pool POOL32Axf_2_DSP__16_23[8]; | |
945 | static Pool POOL32Axf_2_DSP__24_31[8]; | |
946 | static Pool POOL32Axf_2[4]; | |
947 | static Pool POOL32Axf_4[128]; | |
948 | static Pool POOL32Axf_5_group0[32]; | |
949 | static Pool POOL32Axf_5_group1[32]; | |
950 | static Pool ERETx[2]; | |
951 | static Pool POOL32Axf_5_group3[32]; | |
952 | static Pool POOL32Axf_5[4]; | |
953 | static Pool SHRA__R__QB[2]; | |
954 | static Pool POOL32Axf_7[8]; | |
955 | static Pool POOL32Axf[8]; | |
956 | static Pool _POOL32A7[8]; | |
957 | static Pool P32A[8]; | |
958 | static Pool P_GP_D[2]; | |
959 | static Pool P_GP_W[4]; | |
960 | static Pool POOL48I[32]; | |
961 | static Pool PP_SR[4]; | |
962 | static Pool P_SR_F[8]; | |
963 | static Pool P_SR[2]; | |
964 | static Pool P_SLL[5]; | |
965 | static Pool P_SHIFT[16]; | |
966 | static Pool P_ROTX[4]; | |
967 | static Pool P_INS[4]; | |
968 | static Pool P_EXT[4]; | |
969 | static Pool P_U12[16]; | |
970 | static Pool RINT_fmt[2]; | |
971 | static Pool ADD_fmt0[2]; | |
972 | static Pool SELEQZ_fmt[2]; | |
973 | static Pool CLASS_fmt[2]; | |
974 | static Pool SUB_fmt0[2]; | |
975 | static Pool SELNEZ_fmt[2]; | |
976 | static Pool MUL_fmt0[2]; | |
977 | static Pool SEL_fmt[2]; | |
978 | static Pool DIV_fmt0[2]; | |
979 | static Pool ADD_fmt1[2]; | |
980 | static Pool SUB_fmt1[2]; | |
981 | static Pool MUL_fmt1[2]; | |
982 | static Pool MADDF_fmt[2]; | |
983 | static Pool DIV_fmt1[2]; | |
984 | static Pool MSUBF_fmt[2]; | |
985 | static Pool POOL32F_0[64]; | |
986 | static Pool MIN_fmt[2]; | |
987 | static Pool MAX_fmt[2]; | |
988 | static Pool MINA_fmt[2]; | |
989 | static Pool MAXA_fmt[2]; | |
990 | static Pool CVT_L_fmt[2]; | |
991 | static Pool RSQRT_fmt[2]; | |
992 | static Pool FLOOR_L_fmt[2]; | |
993 | static Pool CVT_W_fmt[2]; | |
994 | static Pool SQRT_fmt[2]; | |
995 | static Pool FLOOR_W_fmt[2]; | |
996 | static Pool RECIP_fmt[2]; | |
997 | static Pool CEIL_L_fmt[2]; | |
998 | static Pool CEIL_W_fmt[2]; | |
999 | static Pool TRUNC_L_fmt[2]; | |
1000 | static Pool TRUNC_W_fmt[2]; | |
1001 | static Pool ROUND_L_fmt[2]; | |
1002 | static Pool ROUND_W_fmt[2]; | |
1003 | static Pool POOL32Fxf_0[64]; | |
1004 | static Pool MOV_fmt[4]; | |
1005 | static Pool ABS_fmt[4]; | |
1006 | static Pool NEG_fmt[4]; | |
1007 | static Pool CVT_D_fmt[4]; | |
1008 | static Pool CVT_S_fmt[4]; | |
1009 | static Pool POOL32Fxf_1[32]; | |
1010 | static Pool POOL32Fxf[4]; | |
1011 | static Pool POOL32F_3[8]; | |
1012 | static Pool CMP_condn_S[32]; | |
1013 | static Pool CMP_condn_D[32]; | |
1014 | static Pool POOL32F_5[8]; | |
1015 | static Pool POOL32F[8]; | |
1016 | static Pool POOL32S_0[64]; | |
1017 | static Pool POOL32Sxf_4[128]; | |
1018 | static Pool POOL32Sxf[8]; | |
1019 | static Pool POOL32S_4[8]; | |
1020 | static Pool POOL32S[8]; | |
1021 | static Pool P_LUI[2]; | |
1022 | static Pool P_GP_LH[2]; | |
1023 | static Pool P_GP_SH[2]; | |
1024 | static Pool P_GP_CP1[4]; | |
1025 | static Pool P_GP_M64[4]; | |
1026 | static Pool P_GP_BH[8]; | |
1027 | static Pool P_LS_U12[16]; | |
1028 | static Pool P_PREF_S9_[2]; | |
1029 | static Pool P_LS_S0[16]; | |
1030 | static Pool ASET_ACLR[2]; | |
1031 | static Pool P_LL[4]; | |
1032 | static Pool P_SC[4]; | |
1033 | static Pool P_LLD[8]; | |
1034 | static Pool P_SCD[8]; | |
1035 | static Pool P_LS_S1[16]; | |
1036 | static Pool P_PREFE[2]; | |
1037 | static Pool P_LLE[4]; | |
1038 | static Pool P_SCE[4]; | |
1039 | static Pool P_LS_E0[16]; | |
1040 | static Pool P_LS_WM[2]; | |
1041 | static Pool P_LS_UAWM[2]; | |
1042 | static Pool P_LS_DM[2]; | |
1043 | static Pool P_LS_UADM[2]; | |
1044 | static Pool P_LS_S9[8]; | |
1045 | static Pool P_BAL[2]; | |
1046 | static Pool P_BALRSC[2]; | |
1047 | static Pool P_J[16]; | |
1048 | static Pool P_BR3A[32]; | |
1049 | static Pool P_BR1[4]; | |
1050 | static Pool P_BR2[4]; | |
1051 | static Pool P_BRI[8]; | |
1052 | static Pool P32[32]; | |
1053 | static Pool P16_SYSCALL[2]; | |
1054 | static Pool P16_RI[4]; | |
1055 | static Pool P16_MV[2]; | |
1056 | static Pool P16_SHIFT[2]; | |
1057 | static Pool POOL16C_00[4]; | |
1058 | static Pool POOL16C_0[2]; | |
1059 | static Pool P16C[2]; | |
1060 | static Pool P16_A1[2]; | |
1061 | static Pool P_ADDIU_RS5_[2]; | |
1062 | static Pool P16_A2[2]; | |
1063 | static Pool P16_ADDU[2]; | |
1064 | static Pool P16_JRC[2]; | |
1065 | static Pool P16_BR1[2]; | |
1066 | static Pool P16_BR[2]; | |
1067 | static Pool P16_SR[2]; | |
1068 | static Pool P16_4X4[4]; | |
1069 | static Pool P16_LB[4]; | |
1070 | static Pool P16_LH[4]; | |
1071 | static Pool P16[32]; | |
1072 | static Pool MAJOR[2]; | |
1073 | ||
1074 | }; | |
1075 | ||
1076 | #endif |