diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-06-24 15:00:07 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-06-24 15:00:07 +0200 |
| commit | 0352f2e6f0be908a891ed550efedbd724e50ceba (patch) | |
| tree | 0d020ca539761a93dbdcd25a1485123e3f202187 /src | |
| parent | 9ea02922eea037e1f16f490141d63bc1b77ce9f4 (diff) | |
| download | box64-0352f2e6f0be908a891ed550efedbd724e50ceba.tar.gz box64-0352f2e6f0be908a891ed550efedbd724e50ceba.zip | |
[ARM64_DYNAREC] Fix potential issue on FF /5 opcode
Diffstat (limited to 'src')
| -rwxr-xr-x | src/dynarec/arm64/dynarec_arm64_00.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_00.c b/src/dynarec/arm64/dynarec_arm64_00.c index 317d8afd..db688eb3 100755 --- a/src/dynarec/arm64/dynarec_arm64_00.c +++ b/src/dynarec/arm64/dynarec_arm64_00.c @@ -2773,10 +2773,10 @@ uintptr_t dynarec64_00(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin READFLAGS(X_PEND); BARRIER(BARRIER_FLOAT); SMREAD() - addr = geted(dyn, addr, ninst, nextop, &wback, x2, &fixedaddress, &unscaled, (0xfff<<(2+rex.w))-(rex.w?8:4), (1<<(2+rex.w))-1, rex, NULL, 0, 0); - LDxw(x1, wback, fixedaddress); + addr = geted(dyn, addr, ninst, nextop, &wback, x2, &fixedaddress, &unscaled, 0, 0, rex, NULL, 0, 0); + LDxw(x1, wback, 0); ed = x1; - LDH(x3, wback, fixedaddress+rex.w?8:4); + LDH(x3, wback, rex.w?8:4); STW(x3, xEmu, offsetof(x64emu_t, segs[_CS])); STW(xZR, xEmu, offsetof(x64emu_t, segs_serial[_CS])); jump_to_epilog(dyn, 0, ed, ninst); |