summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibX86/Interpreter.h
diff options
context:
space:
mode:
authorHendiadyoin1 <leon2002.la@gmail.com>2021-04-29 22:13:09 +0200
committerLinus Groh <mail@linusgroh.de>2021-05-01 08:56:52 +0200
commitf6aad705413712fe93a72ad649e5de0f0f93685c (patch)
tree0031c48144513cf7d489dc47879f25fb6a969fb7 /Userland/Libraries/LibX86/Interpreter.h
parent38fe67abb4a10e5b53115635fe2fa11124efeab8 (diff)
downloadserenity-f6aad705413712fe93a72ad649e5de0f0f93685c.zip
LibX86+UserspaceEmulator: Add MMX insns prototypes
Diffstat (limited to 'Userland/Libraries/LibX86/Interpreter.h')
-rw-r--r--Userland/Libraries/LibX86/Interpreter.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/Userland/Libraries/LibX86/Interpreter.h b/Userland/Libraries/LibX86/Interpreter.h
index 546b7c379f..78a990b478 100644
--- a/Userland/Libraries/LibX86/Interpreter.h
+++ b/Userland/Libraries/LibX86/Interpreter.h
@@ -396,9 +396,27 @@ public:
virtual void OUT_imm8_AL(const Instruction&) = 0;
virtual void OUT_imm8_AX(const Instruction&) = 0;
virtual void OUT_imm8_EAX(const Instruction&) = 0;
+ virtual void PACKSSDW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PACKSSWB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PACKUSWB_mm1_mm2m64(const Instruction&) = 0;
virtual void PADDB_mm1_mm2m64(const Instruction&) = 0;
virtual void PADDW_mm1_mm2m64(const Instruction&) = 0;
virtual void PADDD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PADDSB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PADDSW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PADDUSB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PADDUSW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PAND_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PANDN_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PCMPEQB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PCMPEQW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PCMPEQD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PCMPGTB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PCMPGTW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PCMPGTD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PMADDWD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PMULHW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PMULLW_mm1_mm2m64(const Instruction&) = 0;
virtual void POPA(const Instruction&) = 0;
virtual void POPAD(const Instruction&) = 0;
virtual void POPF(const Instruction&) = 0;
@@ -412,6 +430,36 @@ public:
virtual void POP_SS(const Instruction&) = 0;
virtual void POP_reg16(const Instruction&) = 0;
virtual void POP_reg32(const Instruction&) = 0;
+ virtual void POR_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSLLW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSLLW_mm1_imm8(const Instruction&) = 0;
+ virtual void PSLLD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSLLD_mm1_imm8(const Instruction&) = 0;
+ virtual void PSLLQ_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSLLQ_mm1_imm8(const Instruction&) = 0;
+ virtual void PSRAW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSRAW_mm1_imm8(const Instruction&) = 0;
+ virtual void PSRAD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSRAD_mm1_imm8(const Instruction&) = 0;
+ virtual void PSRLW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSRLW_mm1_imm8(const Instruction&) = 0;
+ virtual void PSRLD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSRLD_mm1_imm8(const Instruction&) = 0;
+ virtual void PSRLQ_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSRLQ_mm1_imm8(const Instruction&) = 0;
+ virtual void PSUBB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSUBW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSUBD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSUBSB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSUBSW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSUBUSB_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PSUBUSW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PUNPCKHBW_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PUNPCKHWD_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PUNPCKHDQ_mm1_mm2m64(const Instruction&) = 0;
+ virtual void PUNPCKLBW_mm1_mm2m32(const Instruction&) = 0;
+ virtual void PUNPCKLWD_mm1_mm2m32(const Instruction&) = 0;
+ virtual void PUNPCKLDQ_mm1_mm2m32(const Instruction&) = 0;
virtual void PUSHA(const Instruction&) = 0;
virtual void PUSHAD(const Instruction&) = 0;
virtual void PUSHF(const Instruction&) = 0;
@@ -430,6 +478,7 @@ public:
virtual void PUSH_imm8(const Instruction&) = 0;
virtual void PUSH_reg16(const Instruction&) = 0;
virtual void PUSH_reg32(const Instruction&) = 0;
+ virtual void PXOR_mm1_mm2m64(const Instruction&) = 0;
virtual void RCL_RM16_1(const Instruction&) = 0;
virtual void RCL_RM16_CL(const Instruction&) = 0;
virtual void RCL_RM16_imm8(const Instruction&) = 0;