|
@@ -315,6 +315,8 @@ enum {
|
|
LONG_INSN_POPCNT,
|
|
LONG_INSN_POPCNT,
|
|
LONG_INSN_RISBHG,
|
|
LONG_INSN_RISBHG,
|
|
LONG_INSN_RISBLG,
|
|
LONG_INSN_RISBLG,
|
|
|
|
+ LONG_INSN_RINEXT,
|
|
|
|
+ LONG_INSN_RIEMIT,
|
|
};
|
|
};
|
|
|
|
|
|
static char *long_insn_name[] = {
|
|
static char *long_insn_name[] = {
|
|
@@ -330,6 +332,8 @@ static char *long_insn_name[] = {
|
|
[LONG_INSN_POPCNT] = "popcnt",
|
|
[LONG_INSN_POPCNT] = "popcnt",
|
|
[LONG_INSN_RISBHG] = "risbhg",
|
|
[LONG_INSN_RISBHG] = "risbhg",
|
|
[LONG_INSN_RISBLG] = "risblk",
|
|
[LONG_INSN_RISBLG] = "risblk",
|
|
|
|
+ [LONG_INSN_RINEXT] = "rinext",
|
|
|
|
+ [LONG_INSN_RIEMIT] = "riemit",
|
|
};
|
|
};
|
|
|
|
|
|
static struct insn opcode[] = {
|
|
static struct insn opcode[] = {
|
|
@@ -582,6 +586,17 @@ static struct insn opcode_a7[] = {
|
|
{ "", 0, INSTR_INVALID }
|
|
{ "", 0, INSTR_INVALID }
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+static struct insn opcode_aa[] = {
|
|
|
|
+#ifdef CONFIG_64BIT
|
|
|
|
+ { { 0, LONG_INSN_RINEXT }, 0x00, INSTR_RI_RI },
|
|
|
|
+ { "rion", 0x01, INSTR_RI_RI },
|
|
|
|
+ { "tric", 0x02, INSTR_RI_RI },
|
|
|
|
+ { "rioff", 0x03, INSTR_RI_RI },
|
|
|
|
+ { { 0, LONG_INSN_RIEMIT }, 0x04, INSTR_RI_RI },
|
|
|
|
+#endif
|
|
|
|
+ { "", 0, INSTR_INVALID }
|
|
|
|
+};
|
|
|
|
+
|
|
static struct insn opcode_b2[] = {
|
|
static struct insn opcode_b2[] = {
|
|
#ifdef CONFIG_64BIT
|
|
#ifdef CONFIG_64BIT
|
|
{ "sske", 0x2b, INSTR_RRF_M0RR },
|
|
{ "sske", 0x2b, INSTR_RRF_M0RR },
|
|
@@ -1210,6 +1225,9 @@ static struct insn opcode_eb[] = {
|
|
{ "cliy", 0x55, INSTR_SIY_URD },
|
|
{ "cliy", 0x55, INSTR_SIY_URD },
|
|
{ "oiy", 0x56, INSTR_SIY_URD },
|
|
{ "oiy", 0x56, INSTR_SIY_URD },
|
|
{ "xiy", 0x57, INSTR_SIY_URD },
|
|
{ "xiy", 0x57, INSTR_SIY_URD },
|
|
|
|
+ { "lric", 0x60, INSTR_RSY_RDRM },
|
|
|
|
+ { "stric", 0x61, INSTR_RSY_RDRM },
|
|
|
|
+ { "mric", 0x62, INSTR_RSY_RDRM },
|
|
{ "icmh", 0x80, INSTR_RSE_RURD },
|
|
{ "icmh", 0x80, INSTR_RSE_RURD },
|
|
{ "icmh", 0x80, INSTR_RSY_RURD },
|
|
{ "icmh", 0x80, INSTR_RSY_RURD },
|
|
{ "icmy", 0x81, INSTR_RSY_RURD },
|
|
{ "icmy", 0x81, INSTR_RSY_RURD },
|
|
@@ -1408,6 +1426,9 @@ static struct insn *find_insn(unsigned char *code)
|
|
case 0xa7:
|
|
case 0xa7:
|
|
table = opcode_a7;
|
|
table = opcode_a7;
|
|
break;
|
|
break;
|
|
|
|
+ case 0xaa:
|
|
|
|
+ table = opcode_aa;
|
|
|
|
+ break;
|
|
case 0xb2:
|
|
case 0xb2:
|
|
table = opcode_b2;
|
|
table = opcode_b2;
|
|
break;
|
|
break;
|