about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-07 15:08:55 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-03-07 15:08:55 +0100
commit032c9ff8b55555df337466cad4c735e9e00771fa (patch)
tree0e3e83701f656c32c94b28700e31c706e1ef8881 /src
parentf3f26ba74e1c273bd4d7893813eaa5234f71a026 (diff)
downloadbox64-032c9ff8b55555df337466cad4c735e9e00771fa.tar.gz
box64-032c9ff8b55555df337466cad4c735e9e00771fa.zip
Added a few SSE2 opcodes
Diffstat (limited to 'src')
-rw-r--r--src/emu/x64run660f.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/emu/x64run660f.c b/src/emu/x64run660f.c
index 8af22159..dc355d9c 100644
--- a/src/emu/x64run660f.c
+++ b/src/emu/x64run660f.c
@@ -43,6 +43,25 @@ int Run660F(x64emu_t *emu, rex_t rex)
         GETED(0);

         break;

 

+    case 0x62:  /* PUNPCKLDQ Gx,Ex */

+        nextop = F8;

+        GETEX(0);

+        GETGX;

+        GX->ud[3] = EX->ud[1];

+        GX->ud[2] = GX->ud[1];

+        GX->ud[1] = EX->ud[0];

+        break;

+

+    case 0x6E:                      /* MOVD Gx, Ed */

+        nextop = F8;

+        GETED(0);

+        GETGX;

+        if(rex.w)

+            GX->q[0] = ED->q[0];

+        else

+            GX->q[0] = ED->dword[0];

+        GX->q[1] = 0;

+        break;

     case 0x6F:                      /* MOVDQA Gx,Ex */

         nextop = F8;

         GETEX(0);