Migrate to modern TBB version

This commit is contained in:
Siarhei Fedartsou 2022-08-21 15:04:47 +02:00
parent b27a43de2c
commit 02cb20e890

View File

@ -16,7 +16,7 @@
#include <vector>
#if defined(_MSC_VER)
// for `InterlockedCompareExchange`
// for `InterlockedCompareExchange64`
#include <windows.h>
#endif
@ -95,7 +95,7 @@ inline WordT set_upper_value(WordT word, WordT mask, std::uint8_t offset, T valu
inline bool compare_and_swap(uint64_t *ptr, uint64_t old_value, uint64_t new_value)
{
#if defined(_MSC_VER)
return InterlockedCompareExchange(ptr, new_value, old_value) != old_value;
return InterlockedCompareExchange64(ptr, new_value, old_value) == old_value;
#elif defined(__GNUC__)
return __sync_bool_compare_and_swap(ptr, old_value, new_value);
#else