Commit 7d501203 authored by xfxyjwf's avatar xfxyjwf

Merge pull request #30 from edmonds/branches/fix_generic_atomicops_memory_models

generic atomicops: promote Acquire_Store() and Release_Load() to use SEQ_CST fence
parents dce98a8d cc0a0473
...@@ -83,7 +83,7 @@ inline void MemoryBarrier() { ...@@ -83,7 +83,7 @@ inline void MemoryBarrier() {
} }
inline void Acquire_Store(volatile Atomic32* ptr, Atomic32 value) { inline void Acquire_Store(volatile Atomic32* ptr, Atomic32 value) {
__atomic_store_n(ptr, value, __ATOMIC_ACQUIRE); __atomic_store_n(ptr, value, __ATOMIC_SEQ_CST);
} }
inline void Release_Store(volatile Atomic32* ptr, Atomic32 value) { inline void Release_Store(volatile Atomic32* ptr, Atomic32 value) {
...@@ -99,7 +99,7 @@ inline Atomic32 Acquire_Load(volatile const Atomic32* ptr) { ...@@ -99,7 +99,7 @@ inline Atomic32 Acquire_Load(volatile const Atomic32* ptr) {
} }
inline Atomic32 Release_Load(volatile const Atomic32* ptr) { inline Atomic32 Release_Load(volatile const Atomic32* ptr) {
return __atomic_load_n(ptr, __ATOMIC_RELEASE); return __atomic_load_n(ptr, __ATOMIC_SEQ_CST);
} }
#ifdef __LP64__ #ifdef __LP64__
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment