All atomic exchanges with _Api_level should be acq_rel#4288
All atomic exchanges with _Api_level should be acq_rel#4288StephanTLavavej merged 1 commit intomicrosoft:mainfrom
Conversation
0a52f4f to
5bde50e
Compare
|
@CaseyCarter Fixed! |
3888812 to
ce0f6e1
Compare
As _Api_level is not always accessed with sequential ordering, and _Level is thread-local, acq_rel is good enough for all compare_exchange successes. However, this means we need to explicitly mention acquire for the failure case.
|
Hmm... I wonder what happened to your environment. Is there anything enforcing to force-push a single commit? |
|
Thanks, this is a good change, and is consistent with the very similar code in tzdb.cpp: Lines 57 to 58 in 87580ca I'd still like to understand why you keep force-pushing and ignoring our requests to avoid doing so, but that shouldn't block merging this change. At least GitHub started providing a "Compare" button, although it's still harder to see what's changed over time than with the ordinary commits that everyone else uses. |
|
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
|
Thanks for improving the consistency of these atomic operations by avoiding full sequential consistency! 😹 ☢️ 🎉 |
As _Api_level is not always accessed with sequential ordering, and _Level is thread-local, acq_rel is good enough for all compare_exchange successes. However, this means we need to explicitly mention acquire for the failure case.