Overview
Comment: | of_memory_barrier(): Only use mfence on x86_64
This is only available on x86 with SSE2, while it's always available on |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
9feaa90358c58d02cc31bb50d7b51e09 |
User & Date: | js on 2016-07-30 21:46:24 |
Other Links: | manifest | tags |
Context
2016-07-30
| ||
23:29 | atomic.h: Use the OSAtomic variant without barrier check-in: 0c3e3da576 user: js tags: trunk | |
21:46 | of_memory_barrier(): Only use mfence on x86_64 check-in: 9feaa90358 user: js tags: trunk | |
21:22 | of_spinlock_(un)lock: Add memory barrier check-in: 8e7c6ddf8c user: js tags: trunk | |
Changes
Modified src/atomic.h from [c6a5af4a20] to [23c4a049f4].
︙ | ︙ | |||
968 969 970 971 972 973 974 | } static OF_INLINE void of_memory_barrier(void) { #if !defined(OF_HAVE_THREADS) /* nop */ | | | 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 | } static OF_INLINE void of_memory_barrier(void) { #if !defined(OF_HAVE_THREADS) /* nop */ #elif defined(OF_X86_64_ASM) __asm__ __volatile__ ( "mfence" ::: "memory" ); #elif defined(OF_POWERPC_ASM) __asm__ __volatile__ ( "sync" ::: "memory" ); |
︙ | ︙ |