mirror of
https://github.com/SerenityOS/serenity
synced 2024-10-08 17:09:41 +00:00
UserspaceEmulator: Implement RET_imm16
This is just like RET, but it also pops N bytes off the stack.
This commit is contained in:
parent
eb86264d3b
commit
bfacb9583a
|
@ -1009,7 +1009,14 @@ void SoftCPU::RET(const X86::Instruction& insn)
|
|||
|
||||
void SoftCPU::RETF(const X86::Instruction&) { TODO(); }
|
||||
void SoftCPU::RETF_imm16(const X86::Instruction&) { TODO(); }
|
||||
void SoftCPU::RET_imm16(const X86::Instruction&) { TODO(); }
|
||||
|
||||
void SoftCPU::RET_imm16(const X86::Instruction& insn)
|
||||
{
|
||||
ASSERT(!insn.has_operand_size_override_prefix());
|
||||
set_eip(pop32());
|
||||
set_esp(esp() + insn.imm16());
|
||||
}
|
||||
|
||||
void SoftCPU::ROL_RM16_1(const X86::Instruction&) { TODO(); }
|
||||
void SoftCPU::ROL_RM16_CL(const X86::Instruction&) { TODO(); }
|
||||
void SoftCPU::ROL_RM16_imm8(const X86::Instruction&) { TODO(); }
|
||||
|
|
Loading…
Reference in a new issue