about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-22 21:02:45 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-03-22 21:02:45 +0100
commitcc97914ed84345b87b73de9e1ebde83894ef8e8b (patch)
tree05ab6b2ec7bc5d1914d78d4711970b6750681110 /src
parent829be9e5069a0b0eb2ec8d0df67bb20643b114fa (diff)
downloadbox64-cc97914ed84345b87b73de9e1ebde83894ef8e8b.tar.gz
box64-cc97914ed84345b87b73de9e1ebde83894ef8e8b.zip
[DYNAREC] Added 66 0F 54/55/56/57 opcodes
Diffstat (limited to 'src')
-rwxr-xr-xsrc/dynarec/dynarec_arm64_660f.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/dynarec/dynarec_arm64_660f.c b/src/dynarec/dynarec_arm64_660f.c
index 3d73f8fa..e708694e 100755
--- a/src/dynarec/dynarec_arm64_660f.c
+++ b/src/dynarec/dynarec_arm64_660f.c
@@ -142,6 +142,35 @@ uintptr_t dynarec64_660F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int n
             FCOMI(x1, x2);

             break;

 

+        case 0x54:

+            INST_NAME("ANDPD Gx, Ex");

+            nextop = F8;

+            GETEX(q0, 0);

+            GETGX(v0);

+            VANDQ(v0, v0, q0);

+            break;

+        case 0x55:

+            INST_NAME("ANDNPD Gx, Ex");

+            nextop = F8;

+            GETEX(q0, 0);

+            GETGX(v0);

+            VBICQ(v0, q0, v0);

+            break;

+        case 0x56:

+            INST_NAME("ORPD Gx, Ex");

+            nextop = F8;

+            GETEX(q0, 0);

+            GETGX(v0);

+            VORRQ(v0, v0, q0);

+            break;

+        case 0x57:

+            INST_NAME("XORPD Gx, Ex");

+            nextop = F8;

+            GETEX(q0, 0);

+            GETGX(v0);

+            VEORQ(v0, v0, q0);

+            break;

+

         case 0x5A:

             INST_NAME("CVTPD2PS Gx, Ex");

             nextop = F8;