Hans-Kristian Arntzen : vkd3d: Add MSVC path for atomic_add_fetch.
Module: vkd3d Branch: master Commit: f180e95e2fabb1a4f99202dc4041b4d37d578035 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=f180e95e2fabb1a4f99202dc... Author: Hans-Kristian Arntzen <post(a)arntzen-software.no> Date: Tue Oct 1 16:07:45 2019 +0200 vkd3d: Add MSVC path for atomic_add_fetch. Signed-off-by: Hans-Kristian Arntzen <post(a)arntzen-software.no> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- include/private/vkd3d_common.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/private/vkd3d_common.h b/include/private/vkd3d_common.h index d8fb361..ac217e9 100644 --- a/include/private/vkd3d_common.h +++ b/include/private/vkd3d_common.h @@ -164,6 +164,9 @@ static inline LONG InterlockedDecrement(LONG volatile *x) #if HAVE_SYNC_ADD_AND_FETCH # define atomic_add_fetch(ptr, val) __sync_add_and_fetch(ptr, val) +#elif defined(_MSC_VER) +/* InterlockedAdd returns value after increment, like add_and_fetch. */ +# define atomic_add_fetch(ptr, val) InterlockedAdd(ptr, val) #else # error "atomic_add_fetch() not implemented for this platform" #endif /* HAVE_SYNC_ADD_AND_FETCH */
participants (1)
-
Alexandre Julliard