📄 dsmlib.c
字号:
{"mfhi", RTYPE(0,0,0,16), RMASK(0x1f,0x1f,0,0x7ff), rd}, {"mthi", RTYPE(0,0,0,17), RMASK(0,0x1f,0x1f,0x7ff), rs}, {"mflo", RTYPE(0,0,0,18), RMASK(0x1f,0x1f,0,0x7ff), rd}, {"mtlo", RTYPE(0,0,0,19), RMASK(0,0x1f,0x1f,0x7ff), rs}, {"dsllv", RTYPE(0,0,0,20), RMASK(0,0,0,0x7ff), rd_rt_rs}, {"reserved", RTYPE(0,0,0,21), RMASK(0,0,0,0x3f), null}, {"dsrlv", RTYPE(0,0,0,22), RMASK(0,0,0,0x7ff), rd_rt_rs}, {"dsrav", RTYPE(0,0,0,23), RMASK(0,0,0,0x7ff), rd_rt_rs}, {"mult", RTYPE(0,0,0,24), RMASK(0,0,0x1f,0x7ff), rs_rt}, {"multu", RTYPE(0,0,0,25), RMASK(0,0,0x1f,0x7ff), rs_rt}, {"div", RTYPE(0,0,0,26), RMASK(0,0,0x1f,0x7ff), rs_rt}, {"divu", RTYPE(0,0,0,27), RMASK(0,0,0x1f,0x7ff), rs_rt}, {"madd", RTYPE(0,0,0,28), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_CW4011}, {"dmult", RTYPE(0,0,0,28), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_MIPS3}, {"reserved",RTYPE(0,0,0,28), RMASK(0,0,0,0x3f), null}, {"maddu", RTYPE(0,0,0,29), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_CW4011}, {"dmultu", RTYPE(0,0,0,29), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_MIPS3}, {"reserved",RTYPE(0,0,0,29), RMASK(0,0,0,0x3f), null}, {"msub", RTYPE(0,0,0,30), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_CW4011}, {"ddiv", RTYPE(0,0,0,30), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_MIPS3}, {"reserved",RTYPE(0,0,0,30), RMASK(0,0,0,0x3f), null}, {"msubu", RTYPE(0,0,0,31), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_CW4011}, {"ddivu", RTYPE(0,0,0,31), RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_MIPS3}, {"reserved",RTYPE(0,0,0,31), RMASK(0,0,0,0x3f), null}, {"add", RTYPE(0,0,0,32), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"move", RTYPE(0,0,0,33), RMASK(0,0x1f,0,0x7ff), rd_rs}, {"move", RTYPE(0,0,0,33), RMASK(0x1f,0,0,0x7ff), rd_rt}, {"addu", RTYPE(0,0,0,33), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"neg", RTYPE(0,0,0,34), RMASK(0x1f,0,0,0x7ff), rd_rt}, {"sub", RTYPE(0,0,0,34), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"negu", RTYPE(0,0,0,35), RMASK(0x1f,0,0,0x7ff), rd_rt}, {"subu", RTYPE(0,0,0,35), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"and", RTYPE(0,0,0,36), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"move", RTYPE(0,0,0,37), RMASK(0,0x1f,0,0x7ff), rd_rs}, {"move", RTYPE(0,0,0,37), RMASK(0x1f,0,0,0x7ff), rd_rt}, {"or", RTYPE(0,0,0,37), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"xor", RTYPE(0,0,0,38), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"not", RTYPE(0,0,0,39), RMASK(0,0x1f,0,0x7ff), rd_rs}, {"nor", RTYPE(0,0,0,39), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"min", RTYPE(0,0,0,40), RMASK(0,0,0,0x7ff), rd_rs_rt, CPU_CW4011}, {"max", RTYPE(0,0,0,41), RMASK(0,0,0,0x7ff), rd_rs_rt, CPU_CW4011}, {"reserved",RTYPE(0,0,0,40), RMASK(0,0,0,0x3f), null}, {"reserved",RTYPE(0,0,0,41), RMASK(0,0,0,0x3f), null}, {"slt", RTYPE(0,0,0,42), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"sltu", RTYPE(0,0,0,43), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"dadd", RTYPE(0,0,0,44), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"dmove", RTYPE(0,0,0,45), RMASK(0,0x1f,0,0x7ff), rd_rs}, {"daddu", RTYPE(0,0,0,45), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"dneg", RTYPE(0,0,0,46), RMASK(0x1f,0,0,0x7ff), rd_rt}, {"dsub", RTYPE(0,0,0,46), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"dnegu", RTYPE(0,0,0,47), RMASK(0x1f,0,0,0x7ff), rd_rt}, {"dsubu", RTYPE(0,0,0,47), RMASK(0,0,0,0x7ff), rd_rs_rt}, {"tge", RTYPE(0,0,0,48), RMASK(0,0,0,0x3f), rs_rt}, {"tgeu", RTYPE(0,0,0,49), RMASK(0,0,0,0x3f), rs_rt}, {"tlt", RTYPE(0,0,0,50), RMASK(0,0,0,0x3f), rs_rt}, {"tltu", RTYPE(0,0,0,51), RMASK(0,0,0,0x3f), rs_rt}, {"teq", RTYPE(0,0,0,52), RMASK(0,0,0,0x3f), rs_rt}, {"reserved", RTYPE(0,0,0,53), RMASK(0,0,0,0x3f), null}, {"tne", RTYPE(0,0,0,54), RMASK(0,0,0,0x3f), rs_rt}, {"reserved", RTYPE(0,0,0,55), RMASK(0,0,0,0x3f), null}, {"dsll", RTYPE(0,0,0,56), RMASK(0x1f,0,0,0x3f), rd_rt_s}, {"reserved", RTYPE(0,0,0,57), RMASK(0,0,0,0x3f), null}, {"dsrl", RTYPE(0,0,0,58), RMASK(0x1f,0,0,0x3f), rd_rt_s}, {"dsra", RTYPE(0,0,0,59), RMASK(0x1f,0,0,0x3f), rd_rt_s}, {"dsll32", RTYPE(0,0,0,60), RMASK(0x1f,0,0,0x3f), rd_rt_s}, {"reserved", RTYPE(0,0,0,61), RMASK(0,0,0,0x3f), null}, {"dsrl32", RTYPE(0,0,0,62), RMASK(0x1f,0,0,0x3f), rd_rt_s}, {"dsra32", RTYPE(0,0,0,63), RMASK(0x1f,0,0,0x3f), rd_rt_s}, {"movt", RTYPE(0,1,0,1), RMASK(0,0x3,0,0x7ff), rd_rs_d, CPU_MIPS4}, /* bcond branches */ {"bltz", ITYPE(1,0,0,0), IMASK(0,0x1f,0), rs_b}, {"bgez", ITYPE(1,0,1,0), IMASK(0,0x1f,0), rs_b}, {"bltzl", ITYPE(1,0,2,0), IMASK(0,0x1f,0), rs_b}, {"bgezl", ITYPE(1,0,3,0), IMASK(0,0x1f,0), rs_b}, {"reserved", ITYPE(1,0,4,0), IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,5,0), IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,6,0), IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,7,0), IMASK(0,0x1f,0), null}, {"tgei", ITYPE(1,0,8,0), IMASK(0,0x1f,0), rs_i}, {"tgeiu", ITYPE(1,0,9,0), IMASK(0,0x1f,0), rs_i}, {"tlti", ITYPE(1,0,10,0),IMASK(0,0x1f,0), rs_i}, {"tltiu", ITYPE(1,0,11,0),IMASK(0,0x1f,0), rs_i}, {"teqi", ITYPE(1,0,12,0),IMASK(0,0x1f,0), rs_i}, {"reserved", ITYPE(1,0,13,0),IMASK(0,0x1f,0), null}, {"tnei", ITYPE(1,0,14,0),IMASK(0,0x1f,0), rs_i}, {"reserved", ITYPE(1,0,15,0),IMASK(0,0x1f,0), null}, {"bltzal", ITYPE(1,0,16,0),IMASK(0,0x1f,0), rs_b}, {"bal", ITYPE(1,0,17,0),IMASK(0x1f,0x1f,0), b}, {"bgezal", ITYPE(1,0,17,0),IMASK(0,0x1f,0), rs_b}, {"bltzall", ITYPE(1,0,18,0),IMASK(0,0x1f,0), rs_b}, {"bgezall", ITYPE(1,0,19,0),IMASK(0,0x1f,0), rs_b}, {"reserved", ITYPE(1,0,20,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,21,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,22,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,23,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,24,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,25,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,26,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,27,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,28,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,29,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,30,0),IMASK(0,0x1f,0), null}, {"reserved", ITYPE(1,0,31,0),IMASK(0,0x1f,0), null}, /* jumps */ {"j", JTYPE(2,0), JTYPE(0x3f,0), j}, {"jal", JTYPE(3,0), JTYPE(0x3f,0), j}, /* branches */ {"b", ITYPE(4,0,0,0), IMASK(0x1f,0x1f,0), b}, {"beqz", ITYPE(4,0,0,0), IMASK(0,0x1f,0), rs_b}, {"beq", ITYPE(4,0,0,0), IMASK(0,0,0), rs_rt_b}, {"bnez", ITYPE(5,0,0,0), IMASK(0,0x1f,0), rs_b}, {"bne", ITYPE(5,0,0,0), IMASK(0,0,0), rs_rt_b}, {"blez", ITYPE(6,0,0,0), IMASK(0,0x1f,0), rs_b}, {"bgtz", ITYPE(7,0,0,0), IMASK(0,0x1f,0), rs_b}, /* computational (immediate) */ {"addi", ITYPE(8,0,0,0), IMASK(0,0,0), rt_rs_i}, {"li", ITYPE(9,0,0,0), IMASK(0x1f,0,0), rt_i}, {"addiu", ITYPE(9,0,0,0), IMASK(0,0,0), rt_rs_i}, {"slti", ITYPE(10,0,0,0), IMASK(0,0,0), rt_rs_i}, {"sltiu", ITYPE(11,0,0,0), IMASK(0,0,0), rt_rs_i}, {"andi", ITYPE(12,0,0,0), IMASK(0,0,0), rt_rs_u}, {"liu", ITYPE(13,0,0,0), IMASK(0x1f,0,0), rt_u}, {"ori", ITYPE(13,0,0,0), IMASK(0,0,0), rt_rs_u}, {"xori", ITYPE(14,0,0,0), IMASK(0,0,0), rt_rs_u}, {"lui", ITYPE(15,0,0,0), IMASK(0,0,0), rt_u}, /* coprocessor func */ {"mfc0", ITYPE(16,0,0,0), IMASK(0x1f,0,0x7ff), rt_0}, {"mfc0", ITYPE(16,0,0,0), IMASK(0x1f,0,0x7f8), rt_0_sel}, {"dmfc0", ITYPE(16,1,0,0), IMASK(0x1f,0,0x7ff), rt_0}, {"dmfc0", ITYPE(16,1,0,0), IMASK(0x1f,0,0x7f8), rt_0_sel}, {"mtc0", ITYPE(16,4,0,0), IMASK(0x1f,0,0x7ff), rt_0}, {"mtc0", ITYPE(16,4,0,0), IMASK(0x1f,0,0x7f8), rt_0_sel}, {"dmtc0", ITYPE(16,5,0,0), IMASK(0x1f,0,0x7ff), rt_0}, {"dmtc0", ITYPE(16,5,0,0), IMASK(0x1f,0,0x7f8), rt_0_sel}, {"bc0f", ITYPE(16,8,0,0), IMASK(0x1f,0x1f,0), b}, {"bc0t", ITYPE(16,8,1,0), IMASK(0x1f,0x1f,0), b}, {"bc0fl", ITYPE(16,8,2,0), IMASK(0x1f,0x1f,0), b}, {"bc0tl", ITYPE(16,8,3,0), IMASK(0x1f,0x1f,0), b}, {"reserved", ITYPE(16,0,0,0), IMASK(0x10,0x0,0), null}, {"c0", ITYPE(16,0x10,0,0), IMASK(0x10,0,0), g}, {"mfc1", ITYPE(17,0,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"mfc1", ITYPE(17,0,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"dmfc1", ITYPE(17,1,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"dmfc1", ITYPE(17,1,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"cfc1", ITYPE(17,2,0,0), IMASK(0x1f,0,0x7ff), rt_1}, {"mtc1", ITYPE(17,4,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"mtc1", ITYPE(17,4,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"dmtc1", ITYPE(17,5,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"dmtc1", ITYPE(17,5,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"ctc1", ITYPE(17,6,0,0), IMASK(0x1f,0,0x7ff), rt_1}, {"bc1f", ITYPE(17,8,0,0), IMASK(0x1f,0x03,0), d_b, CPU_MIPS4}, {"bc1f", ITYPE(17,8,0,0), IMASK(0x1f,0x1f,0), b}, {"bc1t", ITYPE(17,8,1,0), IMASK(0x1f,0x03,0), d_b, CPU_MIPS4}, {"bc1t", ITYPE(17,8,1,0), IMASK(0x1f,0x1f,0), b}, {"bc1fl", ITYPE(17,8,2,0), IMASK(0x1f,0x03,0), d_b, CPU_MIPS4}, {"bc1fl", ITYPE(17,8,2,0), IMASK(0x1f,0x1f,0), b}, {"bc1tl", ITYPE(17,8,3,0), IMASK(0x1f,0x03,0), d_b, CPU_MIPS4}, {"bc1tl", ITYPE(17,8,3,0), IMASK(0x1f,0x1f,0), b}, {"reserved", ITYPE(17,0,0,0), IMASK(0x10,0x0,0), null}, {"c1", ITYPE(17,0x10,0,0), IMASK(0x10,0,0), g}, {"mfc2", ITYPE(18,0,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"mfc2", ITYPE(18,0,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"dmfc2", ITYPE(18,1,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"dmfc2", ITYPE(18,1,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"cfc2", ITYPE(18,2,0,0), IMASK(0x1f,0,0x7ff), rt_1}, {"mtc2", ITYPE(18,4,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"mtc2", ITYPE(18,4,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"dmtc2", ITYPE(18,5,0,0), IMASK(0x1f,0,0x7ff), rt_fs}, {"dmtc2", ITYPE(18,5,0,0), IMASK(0x1f,0,0x7f8), rt_fs_sel}, {"ctc2", ITYPE(18,6,0,0), IMASK(0x1f,0,0x7ff), rt_1}, {"bc2f", ITYPE(18,8,0,0), IMASK(0x1f,0x1f,0), b}, {"bc2t", ITYPE(18,8,1,0), IMASK(0x1f,0x1f,0), b}, {"bc2fl", ITYPE(18,8,2,0), IMASK(0x1f,0x1f,0), b}, {"bc2tl", ITYPE(18,8,3,0), IMASK(0x1f,0x1f,0), b}, {"reserved",ITYPE(18,0,0,0), IMASK(0x10,0x0,0), null}, {"c2", ITYPE(18,0x10,0,0), IMASK(0x10,0,0), g}, {"ldxc1", ITYPE(19,0,0,1), IMASK(0,0,0xf83f), fd_n, CPU_MIPS4 }, {"lwxc1", ITYPE(19,0,0,0), IMASK(0,0,0xf83f), fd_n, CPU_MIPS4 }, {"sdxc1", ITYPE(19,0,0,9), IMASK(0,0,0x7ff), fs_n, CPU_MIPS4 }, {"swxc1", ITYPE(19,0,0,8), IMASK(0,0,0x7ff), fs_n, CPU_MIPS4 }, {"prefx", ITYPE(19,0,0,15), IMASK(0,0,0x7ff), H_n, CPU_MIPS4 }, {"madd.s", ITYPE(19,0,0,32), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4 }, {"madd.d", ITYPE(19,0,0,33), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4 }, {"msub.s", ITYPE(19,0,0,40), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4}, {"msub.d", ITYPE(19,0,0,41), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4}, {"nmadd.s", ITYPE(19,0,0,48), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4}, {"nmadd.d", ITYPE(19,0,0,49), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4}, {"nmsub.s", ITYPE(19,0,0,56), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4}, {"nmsub.d", ITYPE(19,0,0,57), IMASK(0,0,0x3f), fd_fr_fs_ft, CPU_MIPS4}, {"reserved",ITYPE(19,0,0,0), IMASK(0,0,0), null}, {"beqzl", ITYPE(20,0,0,0),IMASK(0,0x1f,0), rs_b}, {"beql", ITYPE(20,0,0,0),IMASK(0,0,0), rs_rt_b}, {"bnezl", ITYPE(21,0,0,0),IMASK(0,0x1f,0), rs_b}, {"bnel", ITYPE(21,0,0,0),IMASK(0,0,0), rs_rt_b}, {"blezl", ITYPE(22,0,0,0),IMASK(0,0x1f,0), rs_b}, {"bgtzl", ITYPE(23,0,0,0),IMASK(0,0x1f,0), rs_b}, {"daddi", ITYPE(24,0,0,0),IMASK(0,0,0), rt_rs_i}, {"daddiu", ITYPE(25,0,0,0),IMASK(0,0,0), rt_rs_i}, {"ldl", ITYPE(26,0,0,0),IMASK(0,0,0), rt_m}, {"ldr", ITYPE(27,0,0,0),IMASK(0,0,0), rt_m}, {"madd", MTYPE(28,0,0,0,0),RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_R4650}, {"madd", MTYPE(28,0,0,0,0),RMASK(0,0,0,0x7ff), rd_rs_rt, CPU_R4650}, {"madd", MTYPE(28,0,0,0,1),RMASK(0,0,0x1f,0x7ff), rs_rt, CPU_R4650}, {"maddu", MTYPE(28,0,0,0,1),RMASK(0,0,0,0x7ff), rd_rs_rt, CPU_R4650}, {"addciu", ITYPE(28,0,0,0),IMASK(0,0,0), rt_rs_i, CPU_CW4011}, {"reserved", ITYPE(29,0,0,0),IMASK(0,0,0), null}, {"reserved", ITYPE(30,0,0,0),IMASK(0,0,0), null}, {"reserved", ITYPE(31,0,0,0),IMASK(0,0,0), null}, /* loads */ {"lb", ITYPE(32,0,0,0), IMASK(0,0,0), rt_m}, {"lh", ITYPE(33,0,0,0), IMASK(0,0,0), rt_m}, {"lwl", ITYPE(34,0,0,0), IMASK(0,0,0), rt_m}, {"lw", ITYPE(35,0,0,0), IMASK(0,0,0), rt_m}, {"lbu", ITYPE(36,0,0,0), IMASK(0,0,0), rt_m}, {"lhu", ITYPE(37,0,0,0), IMASK(0,0,0), rt_m}, {"lwr", ITYPE(38,0,0,0), IMASK(0,0,0), rt_m}, {"lwu", ITYPE(39,0,0,0), IMASK(0,0,0), rt_m}, /* stores */ {"sb", ITYPE(40,0,0,0), IMASK(0,0,0), rt_m}, {"sh", ITYPE(41,0,0,0), IMASK(0,0,0), rt_m}, {"swl", ITYPE(42,0,0,0), IMASK(0,0,0), rt_m}, {"sw", ITYPE(43,0,0,0), IMASK(0,0,0), rt_m}, {"sdl", ITYPE(44,0,0,0), IMASK(0,0,0), rt_m}, {"sdr", ITYPE(45,0,0,0), IMASK(0,0,0), rt_m}, {"swr", ITYPE(46,0,0,0), IMASK(0,0,0), rt_m}, /* cache */ {"flushi", ITYPE(47,0,1,0), IMASK(0x1f,0x1f,0xffff), null, CPU_CW4011}, {"flushd", ITYPE(47,0,2,0), IMASK(0x1f,0x1f,0xffff), null, CPU_CW4011}, {"flushid", ITYPE(47,0,3,0), IMASK(0x1f,0x1f,0xffff), null, CPU_CW4011}, {"wb", ITYPE(47,0,4,0), IMASK(0,0x1f,0), m, CPU_CW4011}, {"cache", ITYPE(47,0,0,0), IMASK(0,0,0), C_m}, /* coprocessor load */ {"ll", ITYPE(48,0,0,0), IMASK(0,0,0), rt_m}, {"lwc1", ITYPE(49,0,0,0), IMASK(0,0,0), ft_m}, {"lwc2", ITYPE(50,0,0,0), IMASK(0,0,0), rt_m}, {"pref", ITYPE(51,0,0,0), IMASK(0,0,0), C_m, CPU_MIPS4}, {"lld", ITYPE(52,0,0,0), IMASK(0,0,0), rt_m}, {"ldc1", ITYPE(53,0,0,0), IMASK(0,0,0), ft_m}, {"ldc2", ITYPE(54,0,0,0), IMASK(0,0,0), rt_m}, {"ld", ITYPE(55,0,0,0), IMASK(0,0,0), rt_m}, /* coproc store */ {"sc", ITYPE(56,0,0,0), IMASK(0,0,0), rt_m}, {"swc1", ITYPE(57,0,0,0), IMASK(0,0,0), ft_m}, {"swc2", ITYPE(58,0,0,0), IMASK(0,0,0), rt_m}, {"reserved",ITYPE(59,0,0,0), IMASK(0,0,0), null}, {"scd", ITYPE(60,0,0,0), IMASK(0,0,0), rt_m}, {"sdc1", ITYPE(61,0,0,0), IMASK(0,0,0), ft_m}, {"sdc2", ITYPE(62,0,0,0), IMASK(0,0,0), rt_m}, {"sd", ITYPE(63,0,0,0), IMASK(0,0,0), rt_m}, {NULL, 0, 0, NULL} };/* mips16 itab table * Some of the array elements are not used by instruction decoding * function dsmPrint. They are handled directly in the function. */LOCAL INST itab16[] = { /* General Purpose RTYPE (Special) */ {"addiusp", ITYPE16_1(0x0,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"addiupc", ITYPE16_1(0x1,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"b", ITYPE16_1(0x2,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), b}, {"beqz", ITYPE16_1(0x4,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_b}, {"bnez", ITYPE16_1(0x5,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_b}, {"addiu8", ITYPE16_1(0x9,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"slti", ITYPE16_1(0xa,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"sltiu", ITYPE16_1(0xb,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"li", ITYPE16_1(0xd,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"cmpi", ITYPE16_1(0xe,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"lb", ITYPE16_1(0x10,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"lh", ITYPE16_1(0x11,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"lwsp", ITYPE16_1(0x12,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"lw", ITYPE16_1(0x13,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"lbu", ITYPE16_1(0x14,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"lhu", ITYPE16_1(0x15,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"lwpc", ITYPE16_1(0x16,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"sb", ITYPE16_1(0x18,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"sh", ITYPE16_1(0x19,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"swsp", ITYPE16_1(0x1a,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), rx_i8}, {"sw", ITYPE16_1(0x1b,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ry_m}, {"extend", ITYPE16_1(0x1e,0,0,0,0), RMASK16(0x0,0x0,0x0,0x0), ix}, /* RR type */ {"jalr", ITYPE16_1(0x1d,0,2,0,0x0), RMASK16(0x0,0x7,0,0x1f), ra_rx}, {"jr", ITYPE16_1(0x1d,0,0,0,0x0), RMASK16(0x0,0x0,0,0x1f), rr}, {"slt", ITYPE16_1(0x1d,0,0,0,0x2), RMASK16(0x0,0x0,0,0x1f), rx_ry}, {"sltu", ITYPE16_1(0x1d,0,0,0,0x3), RMASK16(0x0,0x0,0,0x1f), rx_ry}, {"sllv", ITYPE16_1(0x1d,0,0,0,0x4), RMASK16(0x0,0x0,0,0x1f), ry_rx}, {"break",ITYPE16_1(0x1d,0,0,0,0x5), RMASK16(0x0,0x0,0,0x1f), rx_ry},
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -