about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-09-29 15:31:22 +0200
committerptitSeb <sebastien.chev@gmail.com>2022-09-29 15:31:22 +0200
commitc88b936233e3cb6694919b3b7c3d1c4daaa3c0bd (patch)
tree0ae7738cd2b33540a7e1c11ca10392fbda227cd4 /src
parent32c229215aa438bf5a087c2e9a97462fd26208ad (diff)
downloadbox64-c88b936233e3cb6694919b3b7c3d1c4daaa3c0bd.tar.gz
box64-c88b936233e3cb6694919b3b7c3d1c4daaa3c0bd.zip
[DYNAREC] Added 64 2B opcode
Diffstat (limited to 'src')
-rw-r--r--src/dynarec/arm64/dynarec_arm64_64.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_64.c b/src/dynarec/arm64/dynarec_arm64_64.c
index 071c382b..81e746c1 100644
--- a/src/dynarec/arm64/dynarec_arm64_64.c
+++ b/src/dynarec/arm64/dynarec_arm64_64.c
@@ -252,6 +252,16 @@ uintptr_t dynarec64_64(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin
             }
             break;
 
+        case 0x2B:
+            INST_NAME("SUB Gd, Seg:Ed");
+            SETFLAGS(X_ALL, SF_SET_PENDING);
+            grab_segdata(dyn, addr, ninst, x4, seg);
+            nextop = F8;
+            GETGD;
+            GETEDO(x4, 0);
+            emit_sub32(dyn, ninst, rex, gd, ed, x3, x4);
+            break;
+
         case 0x33:
             INST_NAME("XOR Gd, Seg:Ed");
             SETFLAGS(X_ALL, SF_SET_PENDING);