x86: Step over RET instructions

This commit is contained in:
AJR 2018-12-13 13:17:19 -05:00
parent 16c5ebbbeb
commit af3f7647f4

View File

@ -270,8 +270,8 @@ const i386_disassembler::I386_OPCODE i386_disassembler::i386_opcode_table1[256]
{"lock", 0, 0, 0, 0 }, {"lock", 0, 0, 0, 0 },
{"???", 0, 0, 0, 0 }, {"???", 0, 0, 0, 0 },
{"repne", PREFIX, 0, 0, 0 }, {"repne", PREFIX, 0, 0, 0 },
{"rep", PREFIX, 0, 0, 0 }, {"rep", PREFIX, 0, 0, 0, STEP_OVER},
{"hlt", 0, 0, 0, 0 }, {"hlt", 0, 0, 0, 0, STEP_OVER},
{"cmc", 0, 0, 0, 0 }, {"cmc", 0, 0, 0, 0 },
{"groupF6", GROUP, 0, 0, 0 }, {"groupF6", GROUP, 0, 0, 0 },
{"groupF7", GROUP, 0, 0, 0 }, {"groupF7", GROUP, 0, 0, 0 },
@ -2842,6 +2842,7 @@ void i386_disassembler::decode_opcode(std::ostream &stream, const I386_OPCODE *o
if ((op2 == 0x90) && !pre0f) if ((op2 == 0x90) && !pre0f)
pre0f = op1; pre0f = op1;
decode_opcode(stream, &i386_opcode_table1[op2], op2, base_pc, pc, opcodes); decode_opcode(stream, &i386_opcode_table1[op2], op2, base_pc, pc, opcodes);
dasm_flags |= op->dasm_flags;
return; return;
case GROUP: case GROUP: