about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-07-09 17:01:00 +0200
committerptitSeb <sebastien.chev@gmail.com>2021-07-09 17:01:00 +0200
commit2bf49e8a117daffda32e6643d79c206d53228e80 (patch)
tree4dd7c1a804028b72aea825ab63645331a334b0c2
parent0cfb48f3c78d9571295ce6fe347543de2c8411f5 (diff)
downloadbox64-2bf49e8a117daffda32e6643d79c206d53228e80.tar.gz
box64-2bf49e8a117daffda32e6643d79c206d53228e80.zip
[DYNAREC] Fixed 66 REX.W opcodes
-rwxr-xr-xsrc/dynarec/dynarec_arm64_66.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dynarec/dynarec_arm64_66.c b/src/dynarec/dynarec_arm64_66.c
index 811a13c0..15fcfaa0 100755
--- a/src/dynarec/dynarec_arm64_66.c
+++ b/src/dynarec/dynarec_arm64_66.c
@@ -55,7 +55,7 @@ uintptr_t dynarec64_66(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin
     }

 

     if(rex.w && opcode!=0x0f)   // rex.w cancels "66", but not for 66 0f type of prefix

-        return dynarec64_00(dyn, addr-2, ip, ninst, rex, rep, ok, need_epilog);

+        return dynarec64_00(dyn, addr-1, ip, ninst, rex, rep, ok, need_epilog); // addr-1, to "put back" opcode

 

     switch(opcode) {

         case 0x01: