Sweden-Number/dlls/ntdll
Martin Storsjö 482b6a6dea ntdll: Zero-initialize the syscall_frame used for starting threads on ARM/ARM64.
This fixes an inconsistency since
fed7e7a78b (ntdll: Simulate a syscall
return when starting a thread); in that commit, on i386 and
x86_64, the syscall_frame used for starting the thread was
zeroed with a memset, while it wasn't on arm and arm64.

This had a noticable effect on float maths, where the
uninitialized frame->restore_flags field could have the
CONTEXT_FLOATING_POINT bit set. (call_init_thunk only ORs in
CONTEXT_INTEGER into the restore_flags field, on all architectures).
If that bit was set, it would restore uninitialized data into the
fpscr register, possibly setting the FPU in a nondefault rounding
mode.

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-04 19:14:59 +01:00
..
tests ntdll/tests: Fix erroneous ok parameters. 2022-03-02 20:17:25 +01:00
unix ntdll: Zero-initialize the syscall_frame used for starting threads on ARM/ARM64. 2022-03-04 19:14:59 +01:00
Makefile.in
actctx.c
atom.c
crypt.c
debugbuffer.c
env.c
error.c
error.h
exception.c
handletable.c
heap.c
large_int.c ntdll: Check __WINE_PE_BUILD instead of compiler macros. 2022-03-01 10:35:00 +01:00
loader.c ntdll: Implement ApiSetQueryApiSetPresence/Ex(). 2022-02-22 18:20:23 +01:00
locale.c
make_errors
math.c
misc.c ntdll: Implement ApiSetQueryApiSetPresence/Ex(). 2022-02-22 18:20:23 +01:00
ntdll.spec ntdll: Implement ApiSetQueryApiSetPresence/Ex(). 2022-02-22 18:20:23 +01:00
ntdll_misc.h
path.c
printf.c
printf.h
process.c
reg.c
relay.c
resource.c
rtl.c
rtlbitmap.c
rtlstr.c
sec.c ntdll: Fix the spelling of a comment. 2022-02-23 20:19:29 +01:00
signal_arm.c
signal_arm64.c
signal_i386.c
signal_x86_64.c
string.c
sync.c
thread.c
threadpool.c
time.c
unixlib.h
version.c
version.rc
wcstring.c