diff --git a/port/atomic_pointer.h b/port/atomic_pointer.h index d79a02230..e29bd5fc2 100644 --- a/port/atomic_pointer.h +++ b/port/atomic_pointer.h @@ -19,15 +19,12 @@ #define PORT_ATOMIC_POINTER_H_ #include -#ifdef LEVELDB_ATOMIC_PRESENT +#if defined(LEVELDB_ATOMIC_PRESENT) || defined(OS_MACOSX) #include #endif #ifdef OS_WIN #include #endif -#ifdef OS_MACOSX -#include -#endif #if defined(_M_X64) || defined(__x86_64__) #define ARCH_CPU_X86_FAMILY 1 @@ -80,7 +77,7 @@ class AtomicPointer { // Mac OS #elif defined(OS_MACOSX) inline void MemoryBarrier() { - OSMemoryBarrier(); + std::atomic_thread_fence(std::memory_order_seq_cst); } #define LEVELDB_HAVE_MEMORY_BARRIER