atomic: Use __atomic_signal_fence() for SDL_CompilerBarrier()

This is the (slightly) more standard way to accomplish it.
This commit is contained in:
Cameron Gutman
2026-04-26 21:42:23 -05:00
parent 3308183dfa
commit d5acd7f123

View File

@@ -156,6 +156,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_UnlockSpinlock(SDL_SpinLock *lock);
*/
#define SDL_CompilerBarrier() DoCompilerSpecificReadWriteBarrier()
#elif SDL_HAS_BUILTIN(__atomic_signal_fence) || (defined(__GNUC__) && (__GNUC__ >= 5))
#define SDL_CompilerBarrier() __atomic_signal_fence(__ATOMIC_SEQ_CST)
#elif defined(_MSC_VER) && (_MSC_VER > 1200) && !defined(__clang__)
void _ReadWriteBarrier(void);
#pragma intrinsic(_ReadWriteBarrier)