From: Ondřej Surý Date: Thu, 20 Jun 2019 16:51:36 +0000 (+0200) Subject: Stop requiring same memory ordering in win32 atomic_compare_exchange functions X-Git-Tag: v9.14.11^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a3777800498a2be92413bb8ad4b968431229c7ab;p=thirdparty%2Fbind9.git Stop requiring same memory ordering in win32 atomic_compare_exchange functions --- diff --git a/lib/isc/win32/include/isc/stdatomic.h b/lib/isc/win32/include/isc/stdatomic.h index 1d4ae203ce2..38c699f70cc 100644 --- a/lib/isc/win32/include/isc/stdatomic.h +++ b/lib/isc/win32/include/isc/stdatomic.h @@ -314,7 +314,10 @@ atomic_compare_exchange_strong_explicit8(atomic_int_fast8_t *obj, { bool __r; int8_t __v; - REQUIRE(succ == fail); + + UNUSED(succ); + UNUSED(fail); + __v = InterlockedCompareExchange8((atomic_int_fast8_t *)obj, desired, *expected); __r = (*(expected) == __v); if (!__r) { @@ -331,7 +334,10 @@ atomic_compare_exchange_strong_explicit32(atomic_int_fast32_t *obj, memory_order fail) { bool __r; int32_t __v; - REQUIRE(succ == fail); + + UNUSED(succ); + UNUSED(fail); + switch (succ) { case memory_order_relaxed: __v = InterlockedCompareExchangeNoFence((atomic_int_fast32_t *)obj, desired, *expected); @@ -361,7 +367,10 @@ atomic_compare_exchange_strong_explicit64(atomic_int_fast64_t *obj, memory_order fail) { bool __r; int64_t __v; - REQUIRE(succ == fail); + + UNUSED(succ); + UNUSED(fail); + #ifdef _WIN64 switch (succ) { case memory_order_relaxed: