Martin Storsjo : ntdll: Fix arm64 regression from "Clear the syscall frame on return".

Alexandre Julliard julliard at winehq.org
Fri Sep 4 15:47:32 CDT 2020


Module: wine
Branch: master
Commit: d99a454a6bead9aaa5c55705d4807b416d2855a3
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=d99a454a6bead9aaa5c55705d4807b416d2855a3

Author: Martin Storsjo <martin at martin.st>
Date:   Fri Sep  4 14:28:50 2020 +0300

ntdll: Fix arm64 regression from "Clear the syscall frame on return".

The restoring of registers in call_user_exception_dispatcher
was broken in 75e616d52b452d37cc93f492d47eba641f9741c1.

Signed-off-by: Martin Storsjo <martin at martin.st>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ntdll/unix/signal_arm64.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dlls/ntdll/unix/signal_arm64.c b/dlls/ntdll/unix/signal_arm64.c
index cfe1c75b59..ec361216d0 100644
--- a/dlls/ntdll/unix/signal_arm64.c
+++ b/dlls/ntdll/unix/signal_arm64.c
@@ -700,7 +700,7 @@ __ASM_GLOBAL_FUNC( call_user_exception_dispatcher,
                    "mov x0, x19\n\t"
                    "mov x1, x20\n\t"
                    "mov x2, x21\n\t"
-                   "ldp x19, x20, [x5, #64]\n\t"   /* frame->x19,x20 */
+                   "ldp x19, x20, [x5, #80]\n\t"   /* frame->x19,x20 */
                    "ldp x21, x22, [x5, #96]\n\t"   /* frame->x21,x22 */
                    "ldp x23, x24, [x5, #112]\n\t"  /* frame->x23,x24 */
                    "ldp x25, x26, [x5, #128]\n\t"  /* frame->x25,x26 */




More information about the wine-cvs mailing list