blob: 1f05464fdc63931738cd37178d1b0bb30caa923c [file] [log] [blame]
Elliott Hughesabd62612013-11-08 11:45:48 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_ASM_INST_H
20#define _UAPI_ASM_INST_H
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070021#include <asm/bitfield.h>
Elliott Hughesabd62612013-11-08 11:45:48 -080022enum major_op {
Elliott Hughesabd62612013-11-08 11:45:48 -080023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080024 spec_op,
25 bcond_op,
26 j_op,
27 jal_op,
Elliott Hughesabd62612013-11-08 11:45:48 -080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080029 beq_op,
30 bne_op,
31 blez_op,
32 bgtz_op,
Elliott Hughesabd62612013-11-08 11:45:48 -080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080034 addi_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080035 cbcond0_op = addi_op,
Tao Baod7db5942015-01-28 10:07:51 -080036 addiu_op,
37 slti_op,
Elliott Hughesabd62612013-11-08 11:45:48 -080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080039 sltiu_op,
Tao Baod7db5942015-01-28 10:07:51 -080040 andi_op,
41 ori_op,
42 xori_op,
Tao Baod7db5942015-01-28 10:07:51 -080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080044 lui_op,
Tao Baod7db5942015-01-28 10:07:51 -080045 cop0_op,
46 cop1_op,
47 cop2_op,
Tao Baod7db5942015-01-28 10:07:51 -080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080049 cop1x_op,
Tao Baod7db5942015-01-28 10:07:51 -080050 beql_op,
51 bnel_op,
52 blezl_op,
Tao Baod7db5942015-01-28 10:07:51 -080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080054 bgtzl_op,
Tao Baod7db5942015-01-28 10:07:51 -080055 daddi_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080056 cbcond1_op = daddi_op,
Tao Baod7db5942015-01-28 10:07:51 -080057 daddiu_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080059 ldl_op,
60 ldr_op,
Tao Baod7db5942015-01-28 10:07:51 -080061 spec2_op,
62 jalx_op,
Tao Baod7db5942015-01-28 10:07:51 -080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080064 mdmx_op,
65 msa_op = mdmx_op,
66 spec3_op,
Tao Baod7db5942015-01-28 10:07:51 -080067 lb_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080069 lh_op,
70 lwl_op,
71 lw_op,
Tao Baod7db5942015-01-28 10:07:51 -080072 lbu_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080074 lhu_op,
75 lwr_op,
76 lwu_op,
Tao Baod7db5942015-01-28 10:07:51 -080077 sb_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080079 sh_op,
80 swl_op,
81 sw_op,
Tao Baod7db5942015-01-28 10:07:51 -080082 sdl_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080084 sdr_op,
85 swr_op,
86 cache_op,
Tao Baod7db5942015-01-28 10:07:51 -080087 ll_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080089 lwc1_op,
90 lwc2_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080091 bc6_op = lwc2_op,
Tao Baod7db5942015-01-28 10:07:51 -080092 pref_op,
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 lld_op,
95 ldc1_op,
96 ldc2_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -080097 beqzcjic_op = ldc2_op,
Tao Baod7db5942015-01-28 10:07:51 -080098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -080099 ld_op,
Tao Baod7db5942015-01-28 10:07:51 -0800100 sc_op,
101 swc1_op,
102 swc2_op,
Tao Baod7db5942015-01-28 10:07:51 -0800103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800104 balc6_op = swc2_op,
105 major_3b_op,
Tao Baod7db5942015-01-28 10:07:51 -0800106 scd_op,
107 sdc1_op,
Elliott Hughesabd62612013-11-08 11:45:48 -0800108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800109 sdc2_op,
110 bnezcjialc_op = sdc2_op,
111 sd_op
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700112};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesabd62612013-11-08 11:45:48 -0800114enum spec_op {
Tao Baod7db5942015-01-28 10:07:51 -0800115 sll_op,
116 movc_op,
Tao Baod7db5942015-01-28 10:07:51 -0800117 srl_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800119 sra_op,
120 sllv_op,
121 pmon_op,
Tao Baod7db5942015-01-28 10:07:51 -0800122 srlv_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800124 srav_op,
125 jr_op,
126 jalr_op,
Tao Baod7db5942015-01-28 10:07:51 -0800127 movz_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800129 movn_op,
130 syscall_op,
131 break_op,
Tao Baod7db5942015-01-28 10:07:51 -0800132 spim_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800134 sync_op,
135 mfhi_op,
136 mthi_op,
Tao Baod7db5942015-01-28 10:07:51 -0800137 mflo_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800139 mtlo_op,
140 dsllv_op,
141 spec2_unused_op,
Tao Baod7db5942015-01-28 10:07:51 -0800142 dsrlv_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800144 dsrav_op,
145 mult_op,
146 multu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800147 div_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800149 divu_op,
150 dmult_op,
151 dmultu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800152 ddiv_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800154 ddivu_op,
155 add_op,
156 addu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800157 sub_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800159 subu_op,
160 and_op,
161 or_op,
Tao Baod7db5942015-01-28 10:07:51 -0800162 xor_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800164 nor_op,
165 spec3_unused_op,
166 spec4_unused_op,
Tao Baod7db5942015-01-28 10:07:51 -0800167 slt_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800169 sltu_op,
170 dadd_op,
171 daddu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800172 dsub_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800174 dsubu_op,
175 tge_op,
176 tgeu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800177 tlt_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800179 tltu_op,
180 teq_op,
181 spec5_unused_op,
Tao Baod7db5942015-01-28 10:07:51 -0800182 tne_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800184 spec6_unused_op,
185 dsll_op,
186 spec7_unused_op,
Tao Baod7db5942015-01-28 10:07:51 -0800187 dsrl_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800189 dsra_op,
190 dsll32_op,
191 spec8_unused_op,
Tao Baod7db5942015-01-28 10:07:51 -0800192 dsrl32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800194 dsra32_op
Elliott Hughesabd62612013-11-08 11:45:48 -0800195};
196enum spec2_op {
Tao Baod7db5942015-01-28 10:07:51 -0800197 madd_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800199 maddu_op,
200 mul_op,
201 spec2_3_unused_op,
Tao Baod7db5942015-01-28 10:07:51 -0800202 msub_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800204 msubu_op,
205 clz_op = 0x20,
206 clo_op,
Tao Baod7db5942015-01-28 10:07:51 -0800207 dclz_op = 0x24,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800209 dclo_op,
210 sdbpp_op = 0x3f
Elliott Hughesabd62612013-11-08 11:45:48 -0800211};
212enum spec3_op {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800214 ext_op,
215 dextm_op,
216 dextu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800217 dext_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800219 ins_op,
220 dinsm_op,
221 dinsu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800222 dins_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800224 yield_op = 0x09,
225 lx_op = 0x0a,
226 lwle_op = 0x19,
Tao Baod7db5942015-01-28 10:07:51 -0800227 lwre_op = 0x1a,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800229 cachee_op = 0x1b,
230 sbe_op = 0x1c,
231 she_op = 0x1d,
Tao Baod7db5942015-01-28 10:07:51 -0800232 sce_op = 0x1e,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800234 swe_op = 0x1f,
235 bshfl_op = 0x20,
236 swle_op = 0x21,
Tao Baod7db5942015-01-28 10:07:51 -0800237 swre_op = 0x22,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800239 prefe_op = 0x23,
240 dbshfl_op = 0x24,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800241 cache6_op = 0x25,
242 sc6_op = 0x26,
Tao Baod7db5942015-01-28 10:07:51 -0800243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800244 scd6_op = 0x27,
245 lbue_op = 0x28,
Tao Baod7db5942015-01-28 10:07:51 -0800246 lhue_op = 0x29,
247 lbe_op = 0x2c,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800249 lhe_op = 0x2d,
250 lle_op = 0x2e,
Tao Baod7db5942015-01-28 10:07:51 -0800251 lwe_op = 0x2f,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800252 pref6_op = 0x35,
253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254 ll6_op = 0x36,
255 lld6_op = 0x37,
Tao Baod7db5942015-01-28 10:07:51 -0800256 rdhwr_op = 0x3b
Elliott Hughesabd62612013-11-08 11:45:48 -0800257};
Elliott Hughesabd62612013-11-08 11:45:48 -0800258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800259enum rt_op {
Tao Baod7db5942015-01-28 10:07:51 -0800260 bltz_op,
261 bgez_op,
262 bltzl_op,
Elliott Hughesabd62612013-11-08 11:45:48 -0800263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800264 bgezl_op,
Tao Baod7db5942015-01-28 10:07:51 -0800265 spimi_op,
266 unused_rt_op_0x05,
267 unused_rt_op_0x06,
Tao Baod7db5942015-01-28 10:07:51 -0800268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800269 unused_rt_op_0x07,
Tao Baod7db5942015-01-28 10:07:51 -0800270 tgei_op,
271 tgeiu_op,
272 tlti_op,
Tao Baod7db5942015-01-28 10:07:51 -0800273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800274 tltiu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800275 teqi_op,
276 unused_0x0d_rt_op,
277 tnei_op,
Tao Baod7db5942015-01-28 10:07:51 -0800278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800279 unused_0x0f_rt_op,
Tao Baod7db5942015-01-28 10:07:51 -0800280 bltzal_op,
281 bgezal_op,
282 bltzall_op,
Tao Baod7db5942015-01-28 10:07:51 -0800283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800284 bgezall_op,
Tao Baod7db5942015-01-28 10:07:51 -0800285 rt_op_0x14,
286 rt_op_0x15,
287 rt_op_0x16,
Tao Baod7db5942015-01-28 10:07:51 -0800288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800289 rt_op_0x17,
Tao Baod7db5942015-01-28 10:07:51 -0800290 rt_op_0x18,
291 rt_op_0x19,
292 rt_op_0x1a,
Tao Baod7db5942015-01-28 10:07:51 -0800293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800294 rt_op_0x1b,
Tao Baod7db5942015-01-28 10:07:51 -0800295 bposge32_op,
296 rt_op_0x1d,
297 rt_op_0x1e,
Tao Baod7db5942015-01-28 10:07:51 -0800298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800299 rt_op_0x1f
Elliott Hughesabd62612013-11-08 11:45:48 -0800300};
301enum cop_op {
Tao Baod7db5942015-01-28 10:07:51 -0800302 mfc_op = 0x00,
Elliott Hughesabd62612013-11-08 11:45:48 -0800303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800304 dmfc_op = 0x01,
Tao Baod7db5942015-01-28 10:07:51 -0800305 cfc_op = 0x02,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800306 mfhc0_op = 0x02,
Tao Baod7db5942015-01-28 10:07:51 -0800307 mfhc_op = 0x03,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800309 mtc_op = 0x04,
310 dmtc_op = 0x05,
Tao Baod7db5942015-01-28 10:07:51 -0800311 ctc_op = 0x06,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800312 mthc0_op = 0x06,
313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800314 mthc_op = 0x07,
315 bc_op = 0x08,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800316 bc1eqz_op = 0x09,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700317 mfmc0_op = 0x0b,
Tao Baod7db5942015-01-28 10:07:51 -0800318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700319 bc1nez_op = 0x0d,
320 wrpgpr_op = 0x0e,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800321 cop_op = 0x10,
Tao Baod7db5942015-01-28 10:07:51 -0800322 copm_op = 0x18
Christopher Ferris106b3a82016-08-24 12:15:38 -0700323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesabd62612013-11-08 11:45:48 -0800324};
325enum bcop_op {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800326 bcf_op,
Tao Baod7db5942015-01-28 10:07:51 -0800327 bct_op,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700328/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800329 bcfl_op,
330 bctl_op
Christopher Ferris05d08e92016-02-04 13:16:38 -0800331};
Elliott Hughesabd62612013-11-08 11:45:48 -0800332enum cop0_coi_func {
Christopher Ferris106b3a82016-08-24 12:15:38 -0700333/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800334 tlbr_op = 0x01,
335 tlbwi_op = 0x02,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800336 tlbwr_op = 0x06,
Tao Baod7db5942015-01-28 10:07:51 -0800337 tlbp_op = 0x08,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700338/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800339 rfe_op = 0x10,
340 eret_op = 0x18,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800341 wait_op = 0x20,
Elliott Hughesabd62612013-11-08 11:45:48 -0800342};
Christopher Ferris106b3a82016-08-24 12:15:38 -0700343/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700344enum cop0_com_func {
Tao Baod7db5942015-01-28 10:07:51 -0800345 tlbr1_op = 0x01,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800346 tlbw_op = 0x02,
Tao Baod7db5942015-01-28 10:07:51 -0800347 tlbp1_op = 0x08,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700348/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800349 dctr_op = 0x09,
350 dctw_op = 0x0a
Christopher Ferris05d08e92016-02-04 13:16:38 -0800351};
Christopher Ferris38062f92014-07-09 15:33:25 -0700352enum cop1_fmt {
Christopher Ferris106b3a82016-08-24 12:15:38 -0700353/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800354 s_fmt,
355 d_fmt,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800356 e_fmt,
Tao Baod7db5942015-01-28 10:07:51 -0800357 q_fmt,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700358/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800359 w_fmt,
360 l_fmt
Christopher Ferris05d08e92016-02-04 13:16:38 -0800361};
Christopher Ferris38062f92014-07-09 15:33:25 -0700362enum cop1_sdw_func {
Christopher Ferris106b3a82016-08-24 12:15:38 -0700363/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800364 fadd_op = 0x00,
365 fsub_op = 0x01,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800366 fmul_op = 0x02,
Tao Baod7db5942015-01-28 10:07:51 -0800367 fdiv_op = 0x03,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700368/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800369 fsqrt_op = 0x04,
370 fabs_op = 0x05,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800371 fmov_op = 0x06,
Tao Baod7db5942015-01-28 10:07:51 -0800372 fneg_op = 0x07,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700373/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800374 froundl_op = 0x08,
375 ftruncl_op = 0x09,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800376 fceill_op = 0x0a,
Tao Baod7db5942015-01-28 10:07:51 -0800377 ffloorl_op = 0x0b,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700378/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800379 fround_op = 0x0c,
380 ftrunc_op = 0x0d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800381 fceil_op = 0x0e,
Tao Baod7db5942015-01-28 10:07:51 -0800382 ffloor_op = 0x0f,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700383/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384 fsel_op = 0x10,
Tao Baod7db5942015-01-28 10:07:51 -0800385 fmovc_op = 0x11,
386 fmovz_op = 0x12,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800387 fmovn_op = 0x13,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700388/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800389 fseleqz_op = 0x14,
Tao Baod7db5942015-01-28 10:07:51 -0800390 frecip_op = 0x15,
391 frsqrt_op = 0x16,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800392 fselnez_op = 0x17,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700393/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800394 fmaddf_op = 0x18,
395 fmsubf_op = 0x19,
396 frint_op = 0x1a,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800397 fclass_op = 0x1b,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700398/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris05d08e92016-02-04 13:16:38 -0800399 fmin_op = 0x1c,
400 fmina_op = 0x1d,
401 fmax_op = 0x1e,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800402 fmaxa_op = 0x1f,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700403/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800404 fcvts_op = 0x20,
405 fcvtd_op = 0x21,
Tao Baod7db5942015-01-28 10:07:51 -0800406 fcvte_op = 0x22,
407 fcvtw_op = 0x24,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700408/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800409 fcvtl_op = 0x25,
410 fcmp_op = 0x30
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700411};
Elliott Hughesabd62612013-11-08 11:45:48 -0800412enum cop1x_func {
Christopher Ferris106b3a82016-08-24 12:15:38 -0700413/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800414 lwxc1_op = 0x00,
415 ldxc1_op = 0x01,
Tao Baod7db5942015-01-28 10:07:51 -0800416 swxc1_op = 0x08,
417 sdxc1_op = 0x09,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700418/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800419 pfetch_op = 0x0f,
420 madd_s_op = 0x20,
Tao Baod7db5942015-01-28 10:07:51 -0800421 madd_d_op = 0x21,
422 madd_e_op = 0x22,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700423/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800424 msub_s_op = 0x28,
425 msub_d_op = 0x29,
Tao Baod7db5942015-01-28 10:07:51 -0800426 msub_e_op = 0x2a,
427 nmadd_s_op = 0x30,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700428/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800429 nmadd_d_op = 0x31,
430 nmadd_e_op = 0x32,
Tao Baod7db5942015-01-28 10:07:51 -0800431 nmsub_s_op = 0x38,
432 nmsub_d_op = 0x39,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700433/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800434 nmsub_e_op = 0x3a
Elliott Hughesabd62612013-11-08 11:45:48 -0800435};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700436enum mad_func {
Tao Baod7db5942015-01-28 10:07:51 -0800437 madd_fp_op = 0x08,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700438/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800439 msub_fp_op = 0x0a,
440 nmadd_fp_op = 0x0c,
Tao Baod7db5942015-01-28 10:07:51 -0800441 nmsub_fp_op = 0x0e
Christopher Ferris106b3a82016-08-24 12:15:38 -0700442};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800443/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700444enum ptw_func {
445 lwdir_op = 0x00,
446 lwpte_op = 0x01,
447 lddir_op = 0x02,
448/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
449 ldpte_op = 0x03,
Elliott Hughesabd62612013-11-08 11:45:48 -0800450};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700451enum lx_func {
Tao Baod7db5942015-01-28 10:07:51 -0800452 lwx_op = 0x00,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800453/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700454 lhx_op = 0x04,
Tao Baod7db5942015-01-28 10:07:51 -0800455 lbux_op = 0x06,
456 ldx_op = 0x08,
457 lwux_op = 0x10,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800458/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700459 lhux_op = 0x14,
Tao Baod7db5942015-01-28 10:07:51 -0800460 lbx_op = 0x16,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700461};
462enum bshfl_func {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800463/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700464 wsbh_op = 0x2,
Tao Baod7db5942015-01-28 10:07:51 -0800465 dshd_op = 0x5,
466 seb_op = 0x10,
467 seh_op = 0x18,
468/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700469};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800470enum msa_mi10_func {
471 msa_ld_op = 8,
472 msa_st_op = 9,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800473/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700474};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800475enum msa_2b_fmt {
476 msa_fmt_b = 0,
477 msa_fmt_h = 1,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800478/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700479 msa_fmt_w = 2,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800480 msa_fmt_d = 3,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700481};
Christopher Ferris38062f92014-07-09 15:33:25 -0700482enum mm_major_op {
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700483/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700484 mm_pool32a_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800485 mm_pool16a_op,
Tao Baod7db5942015-01-28 10:07:51 -0800486 mm_lbu16_op,
487 mm_move16_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700488/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700489 mm_addi32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800490 mm_lbu32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800491 mm_sb32_op,
492 mm_lb32_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700493/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700494 mm_pool32b_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800495 mm_pool16b_op,
Tao Baod7db5942015-01-28 10:07:51 -0800496 mm_lhu16_op,
497 mm_andi16_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700498/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700499 mm_addiu32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800500 mm_lhu32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800501 mm_sh32_op,
502 mm_lh32_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700503/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700504 mm_pool32i_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800505 mm_pool16c_op,
Tao Baod7db5942015-01-28 10:07:51 -0800506 mm_lwsp16_op,
507 mm_pool16d_op,
Tao Baod7db5942015-01-28 10:07:51 -0800508/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700509 mm_ori32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800510 mm_pool32f_op,
Tao Baod7db5942015-01-28 10:07:51 -0800511 mm_reserved1_op,
512 mm_reserved2_op,
Tao Baod7db5942015-01-28 10:07:51 -0800513/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700514 mm_pool32c_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800515 mm_lwgp16_op,
Tao Baod7db5942015-01-28 10:07:51 -0800516 mm_lw16_op,
517 mm_pool16e_op,
Tao Baod7db5942015-01-28 10:07:51 -0800518/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700519 mm_xori32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800520 mm_jals32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800521 mm_addiupc_op,
522 mm_reserved3_op,
Tao Baod7db5942015-01-28 10:07:51 -0800523/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700524 mm_reserved4_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800525 mm_pool16f_op,
Tao Baod7db5942015-01-28 10:07:51 -0800526 mm_sb16_op,
527 mm_beqz16_op,
Tao Baod7db5942015-01-28 10:07:51 -0800528/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700529 mm_slti32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800530 mm_beq32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800531 mm_swc132_op,
532 mm_lwc132_op,
Tao Baod7db5942015-01-28 10:07:51 -0800533/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700534 mm_reserved5_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800535 mm_reserved6_op,
Tao Baod7db5942015-01-28 10:07:51 -0800536 mm_sh16_op,
537 mm_bnez16_op,
Tao Baod7db5942015-01-28 10:07:51 -0800538/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700539 mm_sltiu32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800540 mm_bne32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800541 mm_sdc132_op,
542 mm_ldc132_op,
Tao Baod7db5942015-01-28 10:07:51 -0800543/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700544 mm_reserved7_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800545 mm_reserved8_op,
Tao Baod7db5942015-01-28 10:07:51 -0800546 mm_swsp16_op,
547 mm_b16_op,
Tao Baod7db5942015-01-28 10:07:51 -0800548/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700549 mm_andi32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800550 mm_j32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800551 mm_sd32_op,
552 mm_ld32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800553/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700554 mm_reserved11_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800555 mm_reserved12_op,
Tao Baod7db5942015-01-28 10:07:51 -0800556 mm_sw16_op,
557 mm_li16_op,
Tao Baod7db5942015-01-28 10:07:51 -0800558/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700559 mm_jalx32_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800560 mm_jal32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800561 mm_sw32_op,
562 mm_lw32_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700563/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700564};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800565enum mm_32i_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800566 mm_bltz_op,
567 mm_bltzal_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700568/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700569 mm_bgez_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800570 mm_bgezal_op,
Tao Baod7db5942015-01-28 10:07:51 -0800571 mm_blez_op,
572 mm_bnezc_op,
Tao Baod7db5942015-01-28 10:07:51 -0800573/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700574 mm_bgtz_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800575 mm_beqzc_op,
Tao Baod7db5942015-01-28 10:07:51 -0800576 mm_tlti_op,
577 mm_tgei_op,
Tao Baod7db5942015-01-28 10:07:51 -0800578/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700579 mm_tltiu_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800580 mm_tgeiu_op,
Tao Baod7db5942015-01-28 10:07:51 -0800581 mm_tnei_op,
582 mm_lui_op,
Tao Baod7db5942015-01-28 10:07:51 -0800583/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700584 mm_teqi_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800585 mm_reserved13_op,
Tao Baod7db5942015-01-28 10:07:51 -0800586 mm_synci_op,
587 mm_bltzals_op,
Tao Baod7db5942015-01-28 10:07:51 -0800588/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700589 mm_reserved14_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800590 mm_bgezals_op,
Tao Baod7db5942015-01-28 10:07:51 -0800591 mm_bc2f_op,
592 mm_bc2t_op,
Tao Baod7db5942015-01-28 10:07:51 -0800593/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700594 mm_reserved15_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800595 mm_reserved16_op,
Tao Baod7db5942015-01-28 10:07:51 -0800596 mm_reserved17_op,
597 mm_reserved18_op,
Tao Baod7db5942015-01-28 10:07:51 -0800598/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700599 mm_bposge64_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800600 mm_bposge32_op,
Tao Baod7db5942015-01-28 10:07:51 -0800601 mm_bc1f_op,
602 mm_bc1t_op,
Tao Baod7db5942015-01-28 10:07:51 -0800603/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700604 mm_reserved19_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800605 mm_reserved20_op,
Tao Baod7db5942015-01-28 10:07:51 -0800606 mm_bc1any2f_op,
607 mm_bc1any2t_op,
Tao Baod7db5942015-01-28 10:07:51 -0800608/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700609 mm_bc1any4f_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800610 mm_bc1any4t_op,
Christopher Ferris38062f92014-07-09 15:33:25 -0700611};
Elliott Hughesabd62612013-11-08 11:45:48 -0800612enum mm_32a_minor_op {
Elliott Hughesabd62612013-11-08 11:45:48 -0800613/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700614 mm_sll32_op = 0x000,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800615 mm_ins_op = 0x00c,
Tao Baod7db5942015-01-28 10:07:51 -0800616 mm_sllv32_op = 0x010,
617 mm_ext_op = 0x02c,
Elliott Hughesabd62612013-11-08 11:45:48 -0800618/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700619 mm_pool32axf_op = 0x03c,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800620 mm_srl32_op = 0x040,
Tao Baod7db5942015-01-28 10:07:51 -0800621 mm_sra_op = 0x080,
622 mm_srlv32_op = 0x090,
Elliott Hughesabd62612013-11-08 11:45:48 -0800623/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700624 mm_rotr_op = 0x0c0,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800625 mm_lwxs_op = 0x118,
Tao Baod7db5942015-01-28 10:07:51 -0800626 mm_addu32_op = 0x150,
627 mm_subu32_op = 0x1d0,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700628/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700629 mm_wsbh_op = 0x1ec,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800630 mm_mul_op = 0x210,
Tao Baod7db5942015-01-28 10:07:51 -0800631 mm_and_op = 0x250,
632 mm_or32_op = 0x290,
Elliott Hughesabd62612013-11-08 11:45:48 -0800633/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700634 mm_xor32_op = 0x310,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800635 mm_slt_op = 0x350,
Tao Baod7db5942015-01-28 10:07:51 -0800636 mm_sltu_op = 0x390,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700637};
Elliott Hughesabd62612013-11-08 11:45:48 -0800638/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700639enum mm_32b_func {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800640 mm_lwc2_func = 0x0,
Tao Baod7db5942015-01-28 10:07:51 -0800641 mm_lwp_func = 0x1,
642 mm_ldc2_func = 0x2,
Elliott Hughesabd62612013-11-08 11:45:48 -0800643/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700644 mm_ldp_func = 0x4,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800645 mm_lwm32_func = 0x5,
Tao Baod7db5942015-01-28 10:07:51 -0800646 mm_cache_func = 0x6,
647 mm_ldm_func = 0x7,
Elliott Hughesabd62612013-11-08 11:45:48 -0800648/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700649 mm_swc2_func = 0x8,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800650 mm_swp_func = 0x9,
Tao Baod7db5942015-01-28 10:07:51 -0800651 mm_sdc2_func = 0xa,
652 mm_sdp_func = 0xc,
Tao Baod7db5942015-01-28 10:07:51 -0800653/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700654 mm_swm32_func = 0xd,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800655 mm_sdm_func = 0xf,
Elliott Hughesabd62612013-11-08 11:45:48 -0800656};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700657enum mm_32c_func {
Elliott Hughesabd62612013-11-08 11:45:48 -0800658/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700659 mm_pref_func = 0x2,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800660 mm_ll_func = 0x3,
Tao Baod7db5942015-01-28 10:07:51 -0800661 mm_swr_func = 0x9,
662 mm_sc_func = 0xb,
Tao Baod7db5942015-01-28 10:07:51 -0800663/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700664 mm_lwu_func = 0xe,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800665};
Elliott Hughesabd62612013-11-08 11:45:48 -0800666enum mm_32axf_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800667 mm_mfc0_op = 0x003,
Elliott Hughesabd62612013-11-08 11:45:48 -0800668/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700669 mm_mtc0_op = 0x00b,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800670 mm_tlbp_op = 0x00d,
Tao Baod7db5942015-01-28 10:07:51 -0800671 mm_mfhi32_op = 0x035,
672 mm_jalr_op = 0x03c,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700673/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700674 mm_tlbr_op = 0x04d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800675 mm_mflo32_op = 0x075,
Tao Baod7db5942015-01-28 10:07:51 -0800676 mm_jalrhb_op = 0x07c,
677 mm_tlbwi_op = 0x08d,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700678/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700679 mm_tlbwr_op = 0x0cd,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800680 mm_jalrs_op = 0x13c,
Tao Baod7db5942015-01-28 10:07:51 -0800681 mm_jalrshb_op = 0x17c,
682 mm_sync_op = 0x1ad,
Elliott Hughesabd62612013-11-08 11:45:48 -0800683/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700684 mm_syscall_op = 0x22d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800685 mm_wait_op = 0x24d,
Tao Baod7db5942015-01-28 10:07:51 -0800686 mm_eret_op = 0x3cd,
687 mm_divu_op = 0x5dc,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700688/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700689};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800690enum mm_32f_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800691 mm_32f_00_op = 0x00,
692 mm_32f_01_op = 0x01,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700693/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700694 mm_32f_02_op = 0x02,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800695 mm_32f_10_op = 0x08,
Tao Baod7db5942015-01-28 10:07:51 -0800696 mm_32f_11_op = 0x09,
697 mm_32f_12_op = 0x0a,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700698/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700699 mm_32f_20_op = 0x10,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800700 mm_32f_30_op = 0x18,
Tao Baod7db5942015-01-28 10:07:51 -0800701 mm_32f_40_op = 0x20,
702 mm_32f_41_op = 0x21,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700703/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700704 mm_32f_42_op = 0x22,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800705 mm_32f_50_op = 0x28,
Tao Baod7db5942015-01-28 10:07:51 -0800706 mm_32f_51_op = 0x29,
707 mm_32f_52_op = 0x2a,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700708/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700709 mm_32f_60_op = 0x30,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800710 mm_32f_70_op = 0x38,
Tao Baod7db5942015-01-28 10:07:51 -0800711 mm_32f_73_op = 0x3b,
712 mm_32f_74_op = 0x3c,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700713/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700714};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800715enum mm_32f_10_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800716 mm_lwxc1_op = 0x1,
717 mm_swxc1_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700718/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700719 mm_ldxc1_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800720 mm_sdxc1_op,
Tao Baod7db5942015-01-28 10:07:51 -0800721 mm_luxc1_op,
722 mm_suxc1_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700723/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700724};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800725enum mm_32f_func {
Tao Baod7db5942015-01-28 10:07:51 -0800726 mm_lwxc1_func = 0x048,
727 mm_swxc1_func = 0x088,
Tao Baod7db5942015-01-28 10:07:51 -0800728/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700729 mm_ldxc1_func = 0x0c8,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800730 mm_sdxc1_func = 0x108,
Elliott Hughesabd62612013-11-08 11:45:48 -0800731};
732enum mm_32f_40_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800733/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700734 mm_fmovf_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800735 mm_fmovt_op,
Elliott Hughesabd62612013-11-08 11:45:48 -0800736};
737enum mm_32f_60_minor_op {
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700738/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700739 mm_fadd_op,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800740 mm_fsub_op,
Tao Baod7db5942015-01-28 10:07:51 -0800741 mm_fmul_op,
742 mm_fdiv_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700743/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700744};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800745enum mm_32f_70_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800746 mm_fmovn_op,
747 mm_fmovz_op,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700748/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700749};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800750enum mm_32f_73_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800751 mm_fmov0_op = 0x01,
752 mm_fcvtl_op = 0x04,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700753/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700754 mm_movf0_op = 0x05,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800755 mm_frsqrt_op = 0x08,
Tao Baod7db5942015-01-28 10:07:51 -0800756 mm_ffloorl_op = 0x0c,
757 mm_fabs0_op = 0x0d,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700758/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700759 mm_fcvtw_op = 0x24,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800760 mm_movt0_op = 0x25,
Tao Baod7db5942015-01-28 10:07:51 -0800761 mm_fsqrt_op = 0x28,
762 mm_ffloorw_op = 0x2c,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700763/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700764 mm_fneg0_op = 0x2d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800765 mm_cfc1_op = 0x40,
Tao Baod7db5942015-01-28 10:07:51 -0800766 mm_frecip_op = 0x48,
767 mm_fceill_op = 0x4c,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700768/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700769 mm_fcvtd0_op = 0x4d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800770 mm_ctc1_op = 0x60,
Tao Baod7db5942015-01-28 10:07:51 -0800771 mm_fceilw_op = 0x6c,
772 mm_fcvts0_op = 0x6d,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700773/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700774 mm_mfc1_op = 0x80,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800775 mm_fmov1_op = 0x81,
Tao Baod7db5942015-01-28 10:07:51 -0800776 mm_movf1_op = 0x85,
777 mm_ftruncl_op = 0x8c,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700778/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700779 mm_fabs1_op = 0x8d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800780 mm_mtc1_op = 0xa0,
Tao Baod7db5942015-01-28 10:07:51 -0800781 mm_movt1_op = 0xa5,
782 mm_ftruncw_op = 0xac,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700783/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700784 mm_fneg1_op = 0xad,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800785 mm_mfhc1_op = 0xc0,
Tao Baod7db5942015-01-28 10:07:51 -0800786 mm_froundl_op = 0xcc,
787 mm_fcvtd1_op = 0xcd,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700788/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700789 mm_mthc1_op = 0xe0,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800790 mm_froundw_op = 0xec,
Tao Baod7db5942015-01-28 10:07:51 -0800791 mm_fcvts1_op = 0xed,
Elliott Hughesabd62612013-11-08 11:45:48 -0800792};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700793/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700794enum mm_16c_minor_op {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800795 mm_lwm16_op = 0x04,
Tao Baod7db5942015-01-28 10:07:51 -0800796 mm_swm16_op = 0x05,
797 mm_jr16_op = 0x0c,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700798/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700799 mm_jrc_op = 0x0d,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800800 mm_jalr16_op = 0x0e,
Tao Baod7db5942015-01-28 10:07:51 -0800801 mm_jalrs16_op = 0x0f,
802 mm_jraddiusp_op = 0x18,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700803/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700804};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800805enum mm_16d_minor_op {
Tao Baod7db5942015-01-28 10:07:51 -0800806 mm_addius5_func,
807 mm_addiusp_func,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700808/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700809};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800810enum MIPS16e_ops {
Tao Baod7db5942015-01-28 10:07:51 -0800811 MIPS16e_jal_op = 003,
812 MIPS16e_ld_op = 007,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700813/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700814 MIPS16e_i8_op = 014,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800815 MIPS16e_sd_op = 017,
Tao Baod7db5942015-01-28 10:07:51 -0800816 MIPS16e_lb_op = 020,
817 MIPS16e_lh_op = 021,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700818/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700819 MIPS16e_lwsp_op = 022,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800820 MIPS16e_lw_op = 023,
Tao Baod7db5942015-01-28 10:07:51 -0800821 MIPS16e_lbu_op = 024,
822 MIPS16e_lhu_op = 025,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700823/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700824 MIPS16e_lwpc_op = 026,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800825 MIPS16e_lwu_op = 027,
Tao Baod7db5942015-01-28 10:07:51 -0800826 MIPS16e_sb_op = 030,
827 MIPS16e_sh_op = 031,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700828/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700829 MIPS16e_swsp_op = 032,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800830 MIPS16e_sw_op = 033,
Tao Baod7db5942015-01-28 10:07:51 -0800831 MIPS16e_rr_op = 035,
832 MIPS16e_extend_op = 036,
Tao Baod7db5942015-01-28 10:07:51 -0800833/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700834 MIPS16e_i64_op = 037,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800835};
Elliott Hughesabd62612013-11-08 11:45:48 -0800836enum MIPS16e_i64_func {
Tao Baod7db5942015-01-28 10:07:51 -0800837 MIPS16e_ldsp_func,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700838/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700839 MIPS16e_sdsp_func,
Christopher Ferris05d08e92016-02-04 13:16:38 -0800840 MIPS16e_sdrasp_func,
Tao Baod7db5942015-01-28 10:07:51 -0800841 MIPS16e_dadjsp_func,
842 MIPS16e_ldpc_func,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700843/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700844};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800845enum MIPS16e_rr_func {
Tao Baod7db5942015-01-28 10:07:51 -0800846 MIPS16e_jr_func,
Elliott Hughesabd62612013-11-08 11:45:48 -0800847};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700848/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700849enum MIPS6e_i8_func {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800850 MIPS16e_swrasp_func = 02,
Tao Baod7db5942015-01-28 10:07:51 -0800851};
Elliott Hughesabd62612013-11-08 11:45:48 -0800852#define MM_NOP16 0x0c00
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700853/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700854struct j_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800855 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int target : 26,;
Tao Baod7db5942015-01-28 10:07:51 -0800856 ))
Elliott Hughesabd62612013-11-08 11:45:48 -0800857};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700858/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700859struct i_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800860 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(signed int simmediate : 16,;
Tao Baod7db5942015-01-28 10:07:51 -0800861 ))))
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700862};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700863/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700864struct u_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800865 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int uimmediate : 16,;
Tao Baod7db5942015-01-28 10:07:51 -0800866 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800867};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700868/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700869struct c_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800870 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int c_op : 3, __BITFIELD_FIELD(unsigned int cache : 2, __BITFIELD_FIELD(unsigned int simmediate : 16,;
Tao Baod7db5942015-01-28 10:07:51 -0800871 )))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800872};
Christopher Ferris106b3a82016-08-24 12:15:38 -0700873/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesabd62612013-11-08 11:45:48 -0800874struct r_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800875 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int rd : 5, __BITFIELD_FIELD(unsigned int re : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800876 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800877};
Christopher Ferris106b3a82016-08-24 12:15:38 -0700878/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesabd62612013-11-08 11:45:48 -0800879struct p_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800880 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int rd : 5, __BITFIELD_FIELD(unsigned int re : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800881 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800882};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700883/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700884struct f_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800885 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int : 1, __BITFIELD_FIELD(unsigned int fmt : 4, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int rd : 5, __BITFIELD_FIELD(unsigned int re : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800886 )))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800887};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700888/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700889struct ma_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800890 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int fr : 5, __BITFIELD_FIELD(unsigned int ft : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int func : 4, __BITFIELD_FIELD(unsigned int fmt : 2,;
Tao Baod7db5942015-01-28 10:07:51 -0800891 )))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800892};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700893/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700894struct b_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800895 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int code : 20, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800896 )))
Elliott Hughesabd62612013-11-08 11:45:48 -0800897};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700898/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700899struct ps_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800900 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int ft : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800901 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800902};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700903/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700904struct v_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800905 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int sel : 4, __BITFIELD_FIELD(unsigned int fmt : 1, __BITFIELD_FIELD(unsigned int vt : 5, __BITFIELD_FIELD(unsigned int vs : 5, __BITFIELD_FIELD(unsigned int vd : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800906 )))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800907};
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700908/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700909struct msa_mi10_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800910 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(signed int s10 : 10, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int wd : 5, __BITFIELD_FIELD(unsigned int func : 4, __BITFIELD_FIELD(unsigned int df : 2,;
911 ))))))
912};
Christopher Ferris05d08e92016-02-04 13:16:38 -0800913/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700914struct spec3_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800915 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(signed int simmediate : 9, __BITFIELD_FIELD(unsigned int func : 7,;
Tao Baod7db5942015-01-28 10:07:51 -0800916 )))))
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700917};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700918/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700919struct fb_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800920 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int bc : 5, __BITFIELD_FIELD(unsigned int cc : 3, __BITFIELD_FIELD(unsigned int flag : 2, __BITFIELD_FIELD(signed int simmediate : 16,;
Tao Baod7db5942015-01-28 10:07:51 -0800921 )))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800922};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700923/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700924struct fp0_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800925 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int fmt : 5, __BITFIELD_FIELD(unsigned int ft : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800926 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800927};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700928/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700929struct mm_fp0_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800930 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int ft : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int fmt : 3, __BITFIELD_FIELD(unsigned int op : 2, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800931 )))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800932};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700933/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700934struct fp1_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800935 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int op : 5, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800936 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800937};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700938/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700939struct mm_fp1_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800940 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fmt : 2, __BITFIELD_FIELD(unsigned int op : 8, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800941 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800942};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700943/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700944struct mm_fp2_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800945 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int cc : 3, __BITFIELD_FIELD(unsigned int zero : 2, __BITFIELD_FIELD(unsigned int fmt : 2, __BITFIELD_FIELD(unsigned int op : 3, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800946 ))))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800947};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700948/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700949struct mm_fp3_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800950 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fmt : 3, __BITFIELD_FIELD(unsigned int op : 7, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800951 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800952};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700953/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700954struct mm_fp4_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800955 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int cc : 3, __BITFIELD_FIELD(unsigned int fmt : 3, __BITFIELD_FIELD(unsigned int cond : 4, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800956 )))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800957};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700958/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700959struct mm_fp5_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800960 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int index : 5, __BITFIELD_FIELD(unsigned int base : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int op : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800961 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800962};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700963/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700964struct fp6_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800965 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int fr : 5, __BITFIELD_FIELD(unsigned int ft : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800966 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800967};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700968/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700969struct mm_fp6_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800970 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int ft : 5, __BITFIELD_FIELD(unsigned int fs : 5, __BITFIELD_FIELD(unsigned int fd : 5, __BITFIELD_FIELD(unsigned int fr : 5, __BITFIELD_FIELD(unsigned int func : 6,;
Tao Baod7db5942015-01-28 10:07:51 -0800971 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800972};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700973/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700974struct mm_i_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800975 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(unsigned int rs : 5, __BITFIELD_FIELD(signed int simmediate : 16,;
Tao Baod7db5942015-01-28 10:07:51 -0800976 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800977};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700978/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700979struct mm_m_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800980 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rd : 5, __BITFIELD_FIELD(unsigned int base : 5, __BITFIELD_FIELD(unsigned int func : 4, __BITFIELD_FIELD(signed int simmediate : 12,;
Tao Baod7db5942015-01-28 10:07:51 -0800981 )))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800982};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700983/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700984struct mm_x_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800985 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int index : 5, __BITFIELD_FIELD(unsigned int base : 5, __BITFIELD_FIELD(unsigned int rd : 5, __BITFIELD_FIELD(unsigned int func : 11,;
Tao Baod7db5942015-01-28 10:07:51 -0800986 )))))
Elliott Hughesabd62612013-11-08 11:45:48 -0800987};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700988/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700989struct mm_a_format {
990 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 3, __BITFIELD_FIELD(signed int simmediate : 23,;
991 )))
992};
993/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
994struct mm_b0_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -0800995 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(signed int simmediate : 10, __BITFIELD_FIELD(unsigned int : 16,;
Tao Baod7db5942015-01-28 10:07:51 -0800996 )))
Elliott Hughesabd62612013-11-08 11:45:48 -0800997};
Elliott Hughes8ed7a232014-05-15 12:01:11 -0700998/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -0700999struct mm_b1_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001000 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rs : 3, __BITFIELD_FIELD(signed int simmediate : 7, __BITFIELD_FIELD(unsigned int : 16,;
Tao Baod7db5942015-01-28 10:07:51 -08001001 ))))
Christopher Ferrisba8d4f42014-09-03 19:56:49 -07001002};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001003/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001004struct mm16_m_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001005 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int func : 4, __BITFIELD_FIELD(unsigned int rlist : 2, __BITFIELD_FIELD(unsigned int imm : 4, __BITFIELD_FIELD(unsigned int : 16,;
Tao Baod7db5942015-01-28 10:07:51 -08001006 )))))
Christopher Ferrisba8d4f42014-09-03 19:56:49 -07001007};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001008/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001009struct mm16_rb_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001010 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 3, __BITFIELD_FIELD(unsigned int base : 3, __BITFIELD_FIELD(signed int simmediate : 4, __BITFIELD_FIELD(unsigned int : 16,;
Tao Baod7db5942015-01-28 10:07:51 -08001011 )))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001012};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001013/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001014struct mm16_r3_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001015 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 3, __BITFIELD_FIELD(signed int simmediate : 7, __BITFIELD_FIELD(unsigned int : 16,;
Tao Baod7db5942015-01-28 10:07:51 -08001016 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001017};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001018/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001019struct mm16_r5_format {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001020 __BITFIELD_FIELD(unsigned int opcode : 6, __BITFIELD_FIELD(unsigned int rt : 5, __BITFIELD_FIELD(signed int simmediate : 5, __BITFIELD_FIELD(unsigned int : 16,;
Tao Baod7db5942015-01-28 10:07:51 -08001021 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001022};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001024struct m16e_rr {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001025 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int rx : 3, __BITFIELD_FIELD(unsigned int nd : 1, __BITFIELD_FIELD(unsigned int l : 1, __BITFIELD_FIELD(unsigned int ra : 1, __BITFIELD_FIELD(unsigned int func : 5,;
Tao Baod7db5942015-01-28 10:07:51 -08001026 ))))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001027};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001029struct m16e_jal {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001030 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int x : 1, __BITFIELD_FIELD(unsigned int imm20_16 : 5, __BITFIELD_FIELD(signed int imm25_21 : 5,;
Tao Baod7db5942015-01-28 10:07:51 -08001031 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001032};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001034struct m16e_i64 {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001035 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int func : 3, __BITFIELD_FIELD(unsigned int imm : 8,;
Tao Baod7db5942015-01-28 10:07:51 -08001036 )))
Elliott Hughesabd62612013-11-08 11:45:48 -08001037};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001039struct m16e_ri64 {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001040 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int func : 3, __BITFIELD_FIELD(unsigned int ry : 3, __BITFIELD_FIELD(unsigned int imm : 5,;
Tao Baod7db5942015-01-28 10:07:51 -08001041 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001042};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001044struct m16e_ri {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001045 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int rx : 3, __BITFIELD_FIELD(unsigned int imm : 8,;
Tao Baod7db5942015-01-28 10:07:51 -08001046 )))
Elliott Hughesabd62612013-11-08 11:45:48 -08001047};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001049struct m16e_rri {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001050 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int rx : 3, __BITFIELD_FIELD(unsigned int ry : 3, __BITFIELD_FIELD(unsigned int imm : 5,;
Tao Baod7db5942015-01-28 10:07:51 -08001051 ))))
Elliott Hughesabd62612013-11-08 11:45:48 -08001052};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001054struct m16e_i8 {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001055 __BITFIELD_FIELD(unsigned int opcode : 5, __BITFIELD_FIELD(unsigned int func : 3, __BITFIELD_FIELD(unsigned int imm : 8,;
Tao Baod7db5942015-01-28 10:07:51 -08001056 )))
Elliott Hughesabd62612013-11-08 11:45:48 -08001057};
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001059union mips_instruction {
Christopher Ferris05d08e92016-02-04 13:16:38 -08001060 unsigned int word;
Tao Baod7db5942015-01-28 10:07:51 -08001061 unsigned short halfword[2];
1062 unsigned char byte[4];
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001064 struct j_format j_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001065 struct i_format i_format;
Tao Baod7db5942015-01-28 10:07:51 -08001066 struct u_format u_format;
1067 struct c_format c_format;
Elliott Hughes8ed7a232014-05-15 12:01:11 -07001068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001069 struct r_format r_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001070 struct p_format p_format;
Tao Baod7db5942015-01-28 10:07:51 -08001071 struct f_format f_format;
1072 struct ma_format ma_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001074 struct msa_mi10_format msa_mi10_format;
Tao Baod7db5942015-01-28 10:07:51 -08001075 struct b_format b_format;
1076 struct ps_format ps_format;
Tao Baod7db5942015-01-28 10:07:51 -08001077 struct v_format v_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001079 struct spec3_format spec3_format;
Tao Baod7db5942015-01-28 10:07:51 -08001080 struct fb_format fb_format;
1081 struct fp0_format fp0_format;
Tao Baod7db5942015-01-28 10:07:51 -08001082 struct mm_fp0_format mm_fp0_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001084 struct fp1_format fp1_format;
Tao Baod7db5942015-01-28 10:07:51 -08001085 struct mm_fp1_format mm_fp1_format;
1086 struct mm_fp2_format mm_fp2_format;
Tao Baod7db5942015-01-28 10:07:51 -08001087 struct mm_fp3_format mm_fp3_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001089 struct mm_fp4_format mm_fp4_format;
Tao Baod7db5942015-01-28 10:07:51 -08001090 struct mm_fp5_format mm_fp5_format;
1091 struct fp6_format fp6_format;
Tao Baod7db5942015-01-28 10:07:51 -08001092 struct mm_fp6_format mm_fp6_format;
Christopher Ferris05d08e92016-02-04 13:16:38 -08001093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris106b3a82016-08-24 12:15:38 -07001094 struct mm_i_format mm_i_format;
Tao Baod7db5942015-01-28 10:07:51 -08001095 struct mm_m_format mm_m_format;
1096 struct mm_x_format mm_x_format;
Christopher Ferris106b3a82016-08-24 12:15:38 -07001097 struct mm_a_format mm_a_format;
1098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -08001099 struct mm_b0_format mm_b0_format;
1100 struct mm_b1_format mm_b1_format;
1101 struct mm16_m_format mm16_m_format;
1102 struct mm16_rb_format mm16_rb_format;
Christopher Ferris106b3a82016-08-24 12:15:38 -07001103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -08001104 struct mm16_r3_format mm16_r3_format;
1105 struct mm16_r5_format mm16_r5_format;
Elliott Hughesabd62612013-11-08 11:45:48 -08001106};
1107union mips16e_instruction {
Christopher Ferris106b3a82016-08-24 12:15:38 -07001108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -08001109 unsigned int full : 16;
1110 struct m16e_rr rr;
1111 struct m16e_jal jal;
1112 struct m16e_i64 i64;
Christopher Ferris106b3a82016-08-24 12:15:38 -07001113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -08001114 struct m16e_ri64 ri64;
1115 struct m16e_ri ri;
1116 struct m16e_rri rri;
1117 struct m16e_i8 i8;
Christopher Ferris106b3a82016-08-24 12:15:38 -07001118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesabd62612013-11-08 11:45:48 -08001119};
1120#endif