diff options
author | Hendiadyoin1 <leon2002.la@gmail.com> | 2021-07-08 17:49:10 +0200 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-07-22 23:33:21 +0200 |
commit | eb6af294215ec223009569622a1354c416929aae (patch) | |
tree | 855500ce951cbbda9c718804772090441822acec /Userland/DevTools/UserspaceEmulator | |
parent | efa42c4d456f08745a8995c56d5dc954e7705712 (diff) | |
download | serenity-eb6af294215ec223009569622a1354c416929aae.zip |
LibX86: Add missing MovD and MovQ instructions
These are placeholders for now
Diffstat (limited to 'Userland/DevTools/UserspaceEmulator')
-rw-r--r-- | Userland/DevTools/UserspaceEmulator/SoftCPU.cpp | 9 | ||||
-rw-r--r-- | Userland/DevTools/UserspaceEmulator/SoftCPU.h | 6 |
2 files changed, 12 insertions, 3 deletions
diff --git a/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp b/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp index 784311d8cd..6063d812ef 100644 --- a/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp +++ b/Userland/DevTools/UserspaceEmulator/SoftCPU.cpp @@ -3528,9 +3528,13 @@ DEFINE_GENERIC_INSN_HANDLERS(AND, op_and, true, false, false) DEFINE_GENERIC_INSN_HANDLERS(CMP, op_sub, false, false, false) DEFINE_GENERIC_INSN_HANDLERS_PARTIAL(TEST, op_and, false, false, false) -void SoftCPU::MOVQ_mm1_mm2m64(const X86::Instruction&) { TODO_INSN(); } +void SoftCPU::MOVQ_mm1_mm2m64(const X86::Instruction&) { TODO_INSN(); }; +void SoftCPU::MOVQ_mm1m64_mm2(const X86::Instruction&) { TODO_INSN(); }; +void SoftCPU::MOVD_mm1_rm32(const X86::Instruction&) { TODO_INSN(); }; +void SoftCPU::MOVQ_mm1_rm64(const X86::Instruction&) { TODO_INSN(); }; // long mode +void SoftCPU::MOVD_rm32_mm2(const X86::Instruction&) { TODO_INSN(); }; +void SoftCPU::MOVQ_rm64_mm2(const X86::Instruction&) { TODO_INSN(); }; // long mode void SoftCPU::EMMS(const X86::Instruction&) { TODO_INSN(); } -void SoftCPU::MOVQ_mm1_m64_mm2(const X86::Instruction&) { TODO_INSN(); } void SoftCPU::wrap_0xC0(const X86::Instruction&) { TODO_INSN(); } void SoftCPU::wrap_0xC1_16(const X86::Instruction&) { TODO_INSN(); } void SoftCPU::wrap_0xC1_32(const X86::Instruction&) { TODO_INSN(); } @@ -3540,4 +3544,5 @@ void SoftCPU::wrap_0xD1_32(const X86::Instruction&) { TODO_INSN(); } void SoftCPU::wrap_0xD2(const X86::Instruction&) { TODO_INSN(); } void SoftCPU::wrap_0xD3_16(const X86::Instruction&) { TODO_INSN(); } void SoftCPU::wrap_0xD3_32(const X86::Instruction&) { TODO_INSN(); } + } diff --git a/Userland/DevTools/UserspaceEmulator/SoftCPU.h b/Userland/DevTools/UserspaceEmulator/SoftCPU.h index 3d5f287e7f..601d7f82c0 100644 --- a/Userland/DevTools/UserspaceEmulator/SoftCPU.h +++ b/Userland/DevTools/UserspaceEmulator/SoftCPU.h @@ -1094,8 +1094,12 @@ private: virtual void XOR_reg32_RM32(const X86::Instruction&) override; virtual void XOR_reg8_RM8(const X86::Instruction&) override; virtual void MOVQ_mm1_mm2m64(const X86::Instruction&) override; + virtual void MOVQ_mm1m64_mm2(const X86::Instruction&) override; + virtual void MOVD_mm1_rm32(const X86::Instruction&) override; + virtual void MOVQ_mm1_rm64(const X86::Instruction&) override; // long mode + virtual void MOVD_rm32_mm2(const X86::Instruction&) override; + virtual void MOVQ_rm64_mm2(const X86::Instruction&) override; // long mode virtual void EMMS(const X86::Instruction&) override; - virtual void MOVQ_mm1_m64_mm2(const X86::Instruction&) override; virtual void wrap_0xC0(const X86::Instruction&) override; virtual void wrap_0xC1_16(const X86::Instruction&) override; virtual void wrap_0xC1_32(const X86::Instruction&) override; |