@ -974,8 +974,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " flushid " , " " , 0xbc030000 , 0xffffffff , 0 , 0 , L1 , 0 , 0 } ,
{ " wb " , " o(b) " , 0xbc040000 , 0xfc1f0000 , RD_2 | SM , 0 , L1 , 0 , 0 } ,
{ " cache " , " k,+j(b) " , 0x7c000025 , 0xfc00007f , RD_3 , 0 , I37 , 0 , 0 } ,
{ " cache " , " k,o(b) " , 0xbc000000 , 0xfc000000 , RD_3 , 0 , I3_32 | T3 , 0 , I37 } ,
{ " cache " , " k,A(b) " , 0 , ( int ) M_CACHE_AB , INSN_MACRO , 0 , I3_32 | T3 , 0 , 0 } ,
{ " cache " , " k,o(b) " , 0xbc000000 , 0xfc000000 , RD_3 , 0 , I3_32 | T3 | AL , 0 , I37 } ,
{ " cache " , " k,A(b) " , 0 , ( int ) M_CACHE_AB , INSN_MACRO , 0 , I3_32 | T3 | AL , 0 , 0 } ,
{ " ceil.l.d " , " D,S " , 0x4620000a , 0xffff003f , WR_1 | RD_2 | FP_D , 0 , I3_33 , 0 , 0 } ,
{ " ceil.l.s " , " D,S " , 0x4600000a , 0xffff003f , WR_1 | RD_2 | FP_S | FP_D , 0 , I3_33 , 0 , 0 } ,
{ " ceil.w.d " , " D,S " , 0x4620000e , 0xffff003f , WR_1 | RD_2 | FP_S | FP_D , 0 , I2 , 0 , SF } ,
@ -991,8 +991,10 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " cins32 " , " t,r,+p,+s " , 0x70000033 , 0xfc00003f , WR_1 | RD_2 , 0 , IOCT , 0 , 0 } ,
{ " cins " , " t,r,+P,+S " , 0x70000033 , 0xfc00003f , WR_1 | RD_2 , 0 , IOCT , 0 , 0 } , /* cins32 */
{ " cins " , " t,r,+p,+S " , 0x70000032 , 0xfc00003f , WR_1 | RD_2 , 0 , IOCT , 0 , 0 } ,
{ " clo " , " d,s " , 0x00000017 , 0xfc1f07ff , WR_1 | RD_2 , 0 , AL , 0 , 0 } ,
{ " clo " , " d,s " , 0x00000051 , 0xfc1f07ff , WR_1 | RD_2 , 0 , I37 , 0 , 0 } ,
{ " clo " , " U,s " , 0x70000021 , 0xfc0007ff , WR_1 | RD_2 , 0 , I32 | N55 , 0 , I37 } ,
{ " clz " , " d,s " , 0x00000016 , 0xfc1f07ff , WR_1 | RD_2 , 0 , AL , 0 , 0 } ,
{ " clz " , " d,s " , 0x00000050 , 0xfc1f07ff , WR_1 | RD_2 , 0 , I37 , 0 , 0 } ,
{ " clz " , " U,s " , 0x70000020 , 0xfc0007ff , WR_1 | RD_2 , 0 , I32 | N55 , 0 , I37 } ,
/* ctc0 is at the bottom of the table. */
@ -1138,7 +1140,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " dremu " , " z,s,t " , 0x0000001f , 0xfc00ffff , RD_2 | RD_3 | WR_HILO , 0 , I3 , 0 , M32 | I69 } ,
{ " dremu " , " d,v,t " , 0 , ( int ) M_DREMU_3 , INSN_MACRO , 0 , I3 , 0 , M32 | I69 } ,
{ " dremu " , " d,v,I " , 0 , ( int ) M_DREMU_3I , INSN_MACRO , 0 , I3 , 0 , M32 | I69 } ,
{ " dret " , " " , 0x7000003e , 0xffffffff , 0 , 0 , N5 , 0 , 0 } ,
{ " dret " , " " , 0x7000003e , 0xffffffff , 0 , 0 , N5 | AL , 0 , 0 } ,
{ " drol " , " d,v,t " , 0 , ( int ) M_DROL , INSN_MACRO , 0 , I3 , 0 , 0 } ,
{ " drol " , " d,v,I " , 0 , ( int ) M_DROL_I , INSN_MACRO , 0 , I3 , 0 , 0 } ,
{ " dror " , " d,v,t " , 0 , ( int ) M_DROR , INSN_MACRO , 0 , I3 , 0 , 0 } ,
@ -1196,7 +1198,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " evpe " , " t " , 0x41600021 , 0xffe0ffff , WR_1 | TRAP , 0 , 0 , MT32 , 0 } ,
{ " evp " , " " , 0x41600004 , 0xffffffff , TRAP , 0 , I37 , 0 , 0 } ,
{ " evp " , " t " , 0x41600004 , 0xffe0ffff , WR_1 | TRAP , 0 , I37 , 0 , 0 } ,
{ " ext " , " t,r,+A,+C " , 0x7c000000 , 0xfc00003f , WR_1 | RD_2 , 0 , I33 , 0 , 0 } ,
{ " ext " , " t,r,+A,+C " , 0x7c000000 , 0xfc00003f , WR_1 | RD_2 , 0 , I33 | AL , 0 , 0 } ,
{ " exts32 " , " t,r,+p,+s " , 0x7000003b , 0xfc00003f , WR_1 | RD_2 , 0 , IOCT , 0 , 0 } ,
{ " exts " , " t,r,+P,+S " , 0x7000003b , 0xfc00003f , WR_1 | RD_2 , 0 , IOCT , 0 , 0 } , /* exts32 */
{ " exts " , " t,r,+p,+S " , 0x7000003a , 0xfc00003f , WR_1 | RD_2 , 0 , IOCT , 0 , 0 } ,
@ -1207,7 +1209,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " hibernate " , " " , 0x42000023 , 0xffffffff , 0 , 0 , V1 , 0 , 0 } ,
{ " hypcall " , " " , 0x42000028 , 0xffffffff , TRAP , 0 , 0 , IVIRT , 0 } ,
{ " hypcall " , " +J " , 0x42000028 , 0xffe007ff , TRAP , 0 , 0 , IVIRT , 0 } ,
{ " ins " , " t,r,+A,+B " , 0x7c000004 , 0xfc00003f , WR_1 | RD_2 , 0 , I33 , 0 , 0 } ,
{ " ins " , " t,r,+A,+B " , 0x7c000004 , 0xfc00003f , WR_1 | RD_2 , 0 , I33 | AL , 0 , 0 } ,
{ " iret " , " " , 0x42000038 , 0xffffffff , NODS , 0 , 0 , MC , 0 } ,
{ " jr " , " s " , 0x00000009 , 0xfc1fffff , RD_1 | UBD , INSN2_ALIAS , I37 , 0 , 0 } , /* jalr $0 */
{ " jr " , " s " , 0x00000008 , 0xfc1fffff , RD_1 | UBD , 0 , I1 , 0 , I37 } ,
@ -1370,7 +1372,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " madd.ps " , " D,R,S,T " , 0x4c000026 , 0xfc00003f , WR_1 | RD_2 | RD_3 | RD_4 | FP_D , 0 , I5_33 , 0 , I37 } ,
{ " madd.ps " , " D,S,T " , 0x45600018 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , IL2E , 0 , 0 } ,
{ " madd.ps " , " D,S,T " , 0x72c00018 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , IL2F , 0 , 0 } ,
{ " madd " , " s,t " , 0x0000001c , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , L1 , 0 , 0 } ,
{ " madd " , " s,t " , 0x0000001c , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , L1 | AL , 0 , 0 } ,
{ " madd " , " s,t " , 0x70000000 , 0xfc00ffff , RD_1 | RD_2 | MOD_HILO , 0 , I32 | N55 , 0 , I37 } ,
{ " madd " , " s,t " , 0x70000000 , 0xfc00ffff , RD_1 | RD_2 | WR_HILO | IS_M , 0 , G1 , 0 , 0 } ,
{ " madd " , " 7,s,t " , 0x70000000 , 0xfc00e7ff , RD_2 | RD_3 | MOD_a , 0 , 0 , D32 , 0 } ,
@ -1379,7 +1381,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " madd1 " , " d,s,t " , 0x70000020 , 0xfc0007ff , WR_1 | RD_2 | RD_3 | WR_HILO | IS_M , 0 , EE , 0 , 0 } ,
{ " madda.s " , " S,T " , 0x4600001e , 0xffe007ff , RD_1 | RD_2 | FP_S , 0 , EE , 0 , 0 } ,
{ " maddp " , " s,t " , 0x70000441 , 0xfc00ffff , RD_1 | RD_2 | MOD_HILO , 0 , 0 , SMT , 0 } ,
{ " maddu " , " s,t " , 0x0000001d , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , L1 , 0 , 0 } ,
{ " maddu " , " s,t " , 0x0000001d , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , L1 | AL , 0 , 0 } ,
{ " maddu " , " s,t " , 0x70000001 , 0xfc00ffff , RD_1 | RD_2 | MOD_HILO , 0 , I32 | N55 , 0 , I37 } ,
{ " maddu " , " s,t " , 0x70000001 , 0xfc00ffff , RD_1 | RD_2 | WR_HILO | IS_M , 0 , G1 , 0 , 0 } ,
{ " maddu " , " 7,s,t " , 0x70000001 , 0xfc00e7ff , RD_2 | RD_3 | MOD_a , 0 , 0 , D32 , 0 } ,
@ -1387,6 +1389,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " maddu1 " , " s,t " , 0x70000021 , 0xfc00ffff , RD_1 | RD_2 | WR_HILO | IS_M , 0 , EE , 0 , 0 } ,
{ " maddu1 " , " d,s,t " , 0x70000021 , 0xfc0007ff , WR_1 | RD_2 | RD_3 | WR_HILO | IS_M , 0 , EE , 0 , 0 } ,
{ " madd16 " , " s,t " , 0x00000028 , 0xfc00ffff , RD_1 | RD_2 | MOD_HILO , 0 , N411 , 0 , 0 } ,
{ " max " , " d,v,t " , 0x0000002c , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , AL , 0 , 0 } ,
{ " max.ob " , " X,Y,Q " , 0x78000007 , 0xfc20003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , SB1 , MX , 0 } ,
{ " max.ob " , " D,S,Q " , 0x48000007 , 0xfc20003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , N54 , 0 , 0 } ,
{ " max.qh " , " X,Y,Q " , 0x78200007 , 0xfc20003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , 0 , MX , 0 } ,
@ -1433,7 +1436,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
/* mfc2 is at the bottom of the table. */
/* mfhc2 is at the bottom of the table. */
/* mfc3 is at the bottom of the table. */
{ " mfdr " , " t,G " , 0x7000003d , 0xffe007ff , WR_1 | RD_C0 | LC , 0 , N5 , 0 , 0 } ,
{ " mfdr " , " t,G " , 0x7000003d , 0xffe007ff , WR_1 | RD_C0 | LC , 0 , N5 | AL , 0 , 0 } ,
{ " mfhi " , " d " , 0x00000010 , 0xffff07ff , WR_1 | RD_HI , 0 , I1 , 0 , I37 } ,
{ " mfhi " , " d,9 " , 0x00000010 , 0xff9f07ff , WR_1 | RD_HI , 0 , 0 , D32 , 0 } ,
{ " mfhi1 " , " d " , 0x70000010 , 0xffff07ff , WR_1 | RD_HI , 0 , EE , 0 , 0 } ,
@ -1443,6 +1446,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " mflhxu " , " d " , 0x00000052 , 0xffff07ff , WR_1 | MOD_HILO , 0 , 0 , SMT , 0 } ,
{ " mfcr " , " t,s " , 0x70000018 , 0xfc00ffff , WR_1 | RD_2 , 0 , XLR , 0 , 0 } ,
{ " mfsa " , " d " , 0x00000028 , 0xffff07ff , WR_1 , 0 , EE , 0 , 0 } ,
{ " min " , " d,v,t " , 0x0000002d , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , AL , 0 , 0 } ,
{ " min.ob " , " X,Y,Q " , 0x78000006 , 0xfc20003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , SB1 , MX , 0 } ,
{ " min.ob " , " D,S,Q " , 0x48000006 , 0xfc20003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , N54 , 0 , 0 } ,
{ " min.qh " , " X,Y,Q " , 0x78200006 , 0xfc20003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , 0 , MX , 0 } ,
@ -1458,7 +1462,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " movf.l " , " X,Y,N " , 0x46a00011 , 0xffe3003f , WR_1 | RD_2 | RD_CC | FP_D , 0 , SB1 , MX , 0 } ,
{ " movf.s " , " D,S,N " , 0x46000011 , 0xffe3003f , WR_1 | RD_2 | RD_CC | FP_S , 0 , I4_32 , 0 , I37 } ,
{ " movf.ps " , " D,S,N " , 0x46c00011 , 0xffe3003f , WR_1 | RD_2 | RD_CC | FP_D , 0 , I5_33 , 0 , I37 } ,
{ " movn " , " d,v,t " , 0x0000000b , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , I4_32 | IL2E | IL2F | EE , 0 , I37 } ,
{ " movn " , " d,v,t " , 0x0000000b , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , I4_32 | IL2E | IL2F | EE | AL , 0 , I37 } ,
{ " movnz " , " d,v,t " , 0x0000000b , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , IL2E | IL2F , LEXT , 0 } ,
{ " ffc " , " d,v " , 0x0000000b , 0xfc1f07ff , WR_1 | RD_2 , 0 , L1 , 0 , 0 } ,
{ " movn.d " , " D,S,t " , 0x46200013 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , I4_32 , 0 , I37 } ,
@ -1472,7 +1476,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " movt.l " , " X,Y,N " , 0x46a10011 , 0xffe3003f , WR_1 | RD_2 | RD_CC | FP_D , 0 , SB1 , MX , 0 } ,
{ " movt.s " , " D,S,N " , 0x46010011 , 0xffe3003f , WR_1 | RD_2 | RD_CC | FP_S , 0 , I4_32 , 0 , I37 } ,
{ " movt.ps " , " D,S,N " , 0x46c10011 , 0xffe3003f , WR_1 | RD_2 | RD_CC | FP_D , 0 , I5_33 , 0 , I37 } ,
{ " movz " , " d,v,t " , 0x0000000a , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , I4_32 | IL2E | IL2F | EE , 0 , I37 } ,
{ " movz " , " d,v,t " , 0x0000000a , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , I4_32 | IL2E | IL2F | EE | AL , 0 , I37 } ,
{ " ffs " , " d,v " , 0x0000000a , 0xfc1f07ff , WR_1 | RD_2 , 0 , L1 , 0 , 0 } ,
{ " movz.d " , " D,S,t " , 0x46200012 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , I4_32 , 0 , I37 } ,
{ " movz.l " , " D,S,t " , 0x46a00012 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , SB1 , MX , 0 } ,
@ -1500,10 +1504,12 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " msub.ps " , " D,R,S,T " , 0x4c00002e , 0xfc00003f , WR_1 | RD_2 | RD_3 | RD_4 | FP_D , 0 , I5_33 , 0 , I37 } ,
{ " msub.ps " , " D,S,T " , 0x45600019 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , IL2E , 0 , 0 } ,
{ " msub.ps " , " D,S,T " , 0x72c00019 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , IL2F , 0 , 0 } ,
{ " msub " , " s,t " , 0x0000002e , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , AL , 0 , 0 } ,
{ " msub " , " s,t " , 0x0000001e , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , L1 , 0 , 0 } ,
{ " msub " , " s,t " , 0x70000004 , 0xfc00ffff , RD_1 | RD_2 | MOD_HILO , 0 , I32 | N55 , 0 , I37 } ,
{ " msub " , " 7,s,t " , 0x70000004 , 0xfc00e7ff , RD_2 | RD_3 | MOD_a , 0 , 0 , D32 , 0 } ,
{ " msuba.s " , " S,T " , 0x4600001f , 0xffe007ff , RD_1 | RD_2 | FP_S , 0 , EE , 0 , 0 } ,
{ " msubu " , " s,t " , 0x0000002f , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , AL , 0 , 0 } ,
{ " msubu " , " s,t " , 0x0000001f , 0xfc00ffff , RD_1 | RD_2 | WR_HILO , 0 , L1 , 0 , 0 } ,
{ " msubu " , " s,t " , 0x70000005 , 0xfc00ffff , RD_1 | RD_2 | MOD_HILO , 0 , I32 | N55 , 0 , I37 } ,
{ " msubu " , " 7,s,t " , 0x70000005 , 0xfc00e7ff , RD_2 | RD_3 | MOD_a , 0 , 0 , D32 , 0 } ,
@ -1531,7 +1537,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
/* mtc2 is at the bottom of the table. */
/* mthc2 is at the bottom of the table. */
/* mtc3 is at the bottom of the table. */
{ " mtdr " , " t,G " , 0x7080003d , 0xffe007ff , RD_1 | WR_C0 | CM , 0 , N5 , 0 , 0 } ,
{ " mtdr " , " t,G " , 0x7080003d , 0xffe007ff , RD_1 | WR_C0 | CM , 0 , N5 | AL , 0 , 0 } ,
{ " mthi " , " s " , 0x00000011 , 0xfc1fffff , RD_1 | WR_HI , 0 , I1 , 0 , I37 } ,
{ " mthi " , " s,7 " , 0x00000011 , 0xfc1fe7ff , RD_1 | WR_HI , 0 , 0 , D32 , 0 } ,
{ " mthi1 " , " s " , 0x70000011 , 0xfc1fffff , RD_1 | WR_HI , 0 , EE , 0 , 0 } ,
@ -1869,8 +1875,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " sdr " , " t,o(b) " , 0xb4000000 , 0xfc000000 , RD_1 | RD_3 | SM , 0 , I3 , 0 , I69 } ,
{ " sdr " , " t,A(b) " , 0 , ( int ) M_SDR_AB , INSN_MACRO , 0 , I3 , 0 , I69 } ,
{ " sdxc1 " , " S,t(b) " , 0x4c000009 , 0xfc0007ff , RD_1 | RD_2 | RD_3 | SM | FP_D , 0 , I4_33 , 0 , I37 } ,
{ " seb " , " d,w " , 0x7c000420 , 0xffe007ff , WR_1 | RD_2 , 0 , I33 , 0 , 0 } ,
{ " seh " , " d,w " , 0x7c000620 , 0xffe007ff , WR_1 | RD_2 , 0 , I33 , 0 , 0 } ,
{ " seb " , " d,w " , 0x7c000420 , 0xffe007ff , WR_1 | RD_2 , 0 , I33 | AL , 0 , 0 } ,
{ " seh " , " d,w " , 0x7c000620 , 0xffe007ff , WR_1 | RD_2 , 0 , I33 | AL , 0 , 0 } ,
{ " selsl " , " d,v,t " , 0x00000005 , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , L1 , 0 , 0 } ,
{ " selsr " , " d,v,t " , 0x00000001 , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , L1 , 0 , 0 } ,
{ " seq " , " d,v,t " , 0x7000002a , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , IOCT , 0 , 0 } ,
@ -2093,7 +2099,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " wait " , " J " , 0x42000020 , 0xfe00003f , NODS , 0 , I32 | N55 , 0 , 0 } ,
{ " waiti " , " " , 0x42000020 , 0xffffffff , NODS , 0 , L1 , 0 , 0 } ,
{ " wrpgpr " , " d,w " , 0x41c00000 , 0xffe007ff , RD_2 , 0 , I33 , 0 , 0 } ,
{ " wsbh " , " d,w " , 0x7c0000a0 , 0xffe007ff , WR_1 | RD_2 , 0 , I33 , 0 , 0 } ,
{ " wsbh " , " d,w " , 0x7c0000a0 , 0xffe007ff , WR_1 | RD_2 , 0 , I33 | AL , 0 , 0 } ,
{ " wsbw " , " d,w " , 0x7c0000e0 , 0xffe007ff , WR_1 | RD_2 , 0 , AL , 0 , 0 } ,
{ " xor " , " d,v,t " , 0x00000026 , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , I1 , 0 , 0 } ,
{ " xor " , " t,r,I " , 0 , ( int ) M_XOR_I , INSN_MACRO , 0 , I1 , 0 , 0 } ,
{ " xor " , " D,S,T " , 0x47800002 , 0xffe0003f , WR_1 | RD_2 | RD_3 | FP_D , 0 , IL2E , 0 , 0 } ,
@ -2129,6 +2136,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " addu_s.ob " , " d,s,t " , 0x7c000114 , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , 0 , D64 , 0 } ,
{ " addu_s.qb " , " d,s,t " , 0x7c000110 , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , 0 , D32 , 0 } ,
{ " addwc " , " d,s,t " , 0x7c000450 , 0xfc0007ff , WR_1 | RD_2 | RD_3 , 0 , 0 , D32 , 0 } ,
{ " bitrev " , " d,w " , 0x7c000520 , 0xffe007ff , WR_1 | RD_2 , 0 , AL , 0 , 0 } ,
{ " bitrev " , " d,t " , 0x7c0006d2 , 0xffe007ff , WR_1 | RD_2 , 0 , 0 , D32 , 0 } ,
{ " bposge32 " , " p " , 0x041c0000 , 0xffff0000 , CBD , 0 , 0 , D32 , 0 } ,
{ " bposge32c " , " p " , 0x04180000 , 0xffff0000 , NODS , FS , 0 , D34 , 0 } ,
@ -3379,11 +3387,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
{ " mfhc2 " , " t,G " , 0x48600000 , 0xffe007ff , WR_1 | RD_C2 | LC , 0 , I33 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mfhc2 " , " t,G,H " , 0x48600000 , 0xffe007f8 , WR_1 | RD_C2 | LC , 0 , I33 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mfhc2 " , " t,i " , 0x48600000 , 0xffe00000 , WR_1 | RD_C2 | LC , 0 , I33 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mfic " , " t,G " , 0x70000024 , 0xffe007ff , WR_1 | RD_C0 | LC , 0 , AL , 0 , 0 } ,
{ " mtc2 " , " t,G " , 0x48800000 , 0xffe007ff , RD_1 | WR_C2 | WR_CC | CM , 0 , I1 , 0 , N54 | IOCT | IOCTP | IOCT2 | EE } ,
{ " mtc2 " , " t,G,H " , 0x48800000 , 0xffe007f8 , RD_1 | WR_C2 | WR_CC | CM , 0 , I32 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mthc2 " , " t,G " , 0x48e00000 , 0xffe007ff , RD_1 | WR_C2 | WR_CC | CM , 0 , I33 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mthc2 " , " t,G,H " , 0x48e00000 , 0xffe007f8 , RD_1 | WR_C2 | WR_CC | CM , 0 , I33 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mthc2 " , " t,i " , 0x48e00000 , 0xffe00000 , RD_1 | WR_C2 | WR_CC | CM , 0 , I33 , 0 , IOCT | IOCTP | IOCT2 } ,
{ " mtic " , " t,G " , 0x70000026 , 0xffe007ff , RD_1 | WR_C0 | WR_CC | CM , 0 , AL , 0 , 0 } ,
{ " qmfc2 " , " t,+6 " , 0x48200000 , 0xffe007ff , WR_1 | RD_C2 , 0 , EE , 0 , 0 } ,
{ " qmfc2.i " , " t,+6 " , 0x48200001 , 0xffe007ff , WR_1 | RD_C2 , 0 , EE , 0 , 0 } ,
{ " qmfc2.ni " , " t,+6 " , 0x48200000 , 0xffe007ff , WR_1 | RD_C2 , 0 , EE , 0 , 0 } ,