1 Feb
2025
1 Feb
'25
2:42 p.m.
64-bit volatile accesses are not atomic on i386. Both i686-w64-mingw32-gcc and x86 MSVC splits 64-bit loads into a pair of load/store ops. Fix this by using a FILD/FISTP pair, which is also used to implement C11 atomics by i686-w64-mingw32-gcc. Fixes: f82b1c1fcf770a5d6fa02c3f286282be79a201b8 -- v5: include: Prevent misuse of __WINE_ATOMIC_* helper macros for non-atomic large accesses. server: Fix incorrect usage of __WINE_ATOMIC_STORE_RELEASE in SHARED_WRITE_BEGIN/SHARED_WRITE_END. include: Fix ReadNoFence64 on i386. https://gitlab.winehq.org/wine/wine/-/merge_requests/7237