Index: src/platform/x86/OFAtomic.h ================================================================== --- src/platform/x86/OFAtomic.h +++ src/platform/x86/OFAtomic.h @@ -480,13 +480,19 @@ } static OF_INLINE void OFMemoryBarrier(void) { +#ifdef OF_X86_64 + __asm__ __volatile__ ( + "lock orq $0, (%%rsp)" ::: "memory", "cc" + ); +#else __asm__ __volatile__ ( - "mfence" ::: "memory" + "lock orl $0, (%%esp)" ::: "memory", "cc" ); +#endif } static OF_INLINE void OFAcquireMemoryBarrier(void) {