about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-28 21:54:55 +0200
committerptitSeb <sebastien.chev@gmail.com>2021-03-28 21:54:55 +0200
commit5c3a4deed8395b6c9a008421d5f70b834a50e8f6 (patch)
tree241f2196b867ecb0226d82d111945f2c8ee97c29 /src
parent70b9bed51068603ccbef2788950f0ee26cb22bb9 (diff)
downloadbox64-5c3a4deed8395b6c9a008421d5f70b834a50e8f6.tar.gz
box64-5c3a4deed8395b6c9a008421d5f70b834a50e8f6.zip
[DYNAREC] Added 0F 5D/5E/5F opcodes
Diffstat (limited to 'src')
-rwxr-xr-xsrc/dynarec/dynarec_arm64_0f.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/dynarec/dynarec_arm64_0f.c b/src/dynarec/dynarec_arm64_0f.c
index ac79c047..dd6a0110 100755
--- a/src/dynarec/dynarec_arm64_0f.c
+++ b/src/dynarec/dynarec_arm64_0f.c
@@ -366,6 +366,27 @@ uintptr_t dynarec64_0F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin
             GETGX(v0);

             VFSUBQS(v0, v0, q0);

             break;

+        case 0x5D:

+            INST_NAME("MINPS Gx, Ex");

+            nextop = F8;

+            GETGX(v0);

+            GETEX(v1, 0);

+            VFMINQD(v0, v0, v1);

+            break;

+        case 0x5E:

+            INST_NAME("DIVPS Gx, Ex");

+            nextop = F8;

+            GETEX(q0, 0);

+            GETGX(v0);

+            VFDIVQS(v0, v0, q0);

+            break;

+        case 0x5F:

+            INST_NAME("MAXPS Gx, Ex");

+            nextop = F8;

+            GETGX(v0);

+            GETEX(v1, 0);

+            VFMAXQD(v0, v0, v1);

+            break;

 

         #define GO(GETFLAGS, NO, YES, F)   \

             READFLAGS(F);   \