-
Martin Storsjö authored
This fixes an inconsistency since fed7e7a7 (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>
482b6a6d
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
cdrom.c | ||
debug.c | ||
env.c | ||
file.c | ||
loader.c | ||
loadorder.c | ||
process.c | ||
registry.c | ||
security.c | ||
serial.c | ||
server.c | ||
signal_arm.c | ||
signal_arm64.c | ||
signal_i386.c | ||
signal_x86_64.c | ||
socket.c | ||
sync.c | ||
system.c | ||
tape.c | ||
thread.c | ||
unix_private.h | ||
virtual.c |