summaryrefslogtreecommitdiff
path: root/Userland
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2022-12-06 17:40:36 +0100
committerAndreas Kling <kling@serenityos.org>2022-12-07 13:18:48 +0100
commit4828f0b636da19ac33031932bbe22d5d26ea98eb (patch)
tree11f3e88d8889e0ca038d5b00a6a3108743ea9ec4 /Userland
parent661a940ddda57a89509e00ae8b107d1c28e1dc8c (diff)
downloadserenity-4828f0b636da19ac33031932bbe22d5d26ea98eb.zip
UserspaceEmulator: Implement MOV_RM16_seg
Diffstat (limited to 'Userland')
-rw-r--r--Userland/DevTools/UserspaceEmulator/SoftCPU.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp b/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp
index 0ee6bb338e..0dac808670 100644
--- a/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp
+++ b/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp
@@ -2083,7 +2083,10 @@ void SoftCPU::MOV_RM16_reg16(const X86::Instruction& insn)
insn.modrm().write16(*this, insn, const_gpr16(insn.reg16()));
}
-void SoftCPU::MOV_RM16_seg(const X86::Instruction&) { TODO_INSN(); }
+void SoftCPU::MOV_RM16_seg(X86::Instruction const& insn)
+{
+ insn.modrm().write16(*this, insn, shadow_wrap_as_initialized(m_segment[to_underlying(insn.segment_register())]));
+}
void SoftCPU::MOV_RM32_imm32(const X86::Instruction& insn)
{