ntdll: Remove stack gap in syscalls on arm.
commit77e90954357301cbb3242940556fa8b37677ae1a
authorMartin Storsjö <martin@martin.st>
Tue, 9 Nov 2021 14:05:51 +0000 (9 16:05 +0200)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 9 Nov 2021 21:02:56 +0000 (9 22:02 +0100)
treea4d056b07b2756fc9b273b2d96970f13dd7c55d0
parentb2934dd98fb46fcbcb57f4bb6508d962ba3331e3
ntdll: Remove stack gap in syscalls on arm.

Store the original stack pointer (on entry to the syscall dispatcher)
in syscall_frame; the stack pointer itself is incremented by
"pop {r0-r3}" right before calling the syscall itself.

This fixes unwinding from functions set up by syscalls, like
KiUserExceptionDispatcher.

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
dlls/ntdll/unix/signal_arm.c
tools/winebuild/import.c