about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-04-02 15:17:24 +0200
committerptitSeb <sebastien.chev@gmail.com>2021-04-02 15:17:24 +0200
commit2929d7256b90e92ef25fd298608d663b1616bebe (patch)
treef07cdd2a7d1cbb7280b5c15651b09836105f4e31 /src
parent8d769dd3c2599f89fc3fe8d761057ff9f1e6bc21 (diff)
downloadbox64-2929d7256b90e92ef25fd298608d663b1616bebe.tar.gz
box64-2929d7256b90e92ef25fd298608d663b1616bebe.zip
[DYNAREC] Added 0F 38 00 opcode
Diffstat (limited to 'src')
-rwxr-xr-xsrc/dynarec/dynarec_arm64_0f.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/dynarec/dynarec_arm64_0f.c b/src/dynarec/dynarec_arm64_0f.c
index 44ce3c15..630d391b 100755
--- a/src/dynarec/dynarec_arm64_0f.c
+++ b/src/dynarec/dynarec_arm64_0f.c
@@ -293,6 +293,16 @@ uintptr_t dynarec64_0F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin
             //SSE3

             nextop=F8;

             switch(nextop) {

+                case 0x00:

+                    INST_NAME("PSHUFB Gm, Em");

+                    nextop = F8;

+                    GETGM(q0);

+                    GETEM(q1, 0);

+                    d0 = fpu_get_scratch(dyn);

+                    MOVI_8(d0, 0b10001111);

+                    VAND(d0, d0, q1);  // mask the index

+                    VTBL1_8(q0, q0, d0);

+                    break;

 

                 case 0x04:

                     INST_NAME("PMADDUBSW Gm,Em");