125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
OFAtomicPointerCompareAndSwap(void *volatile _Nullable *_Nonnull p,
void *_Nullable o, void *_Nullable n)
{
return __sync_bool_compare_and_swap(p, o, n);
}
static OF_INLINE void
of_memory_barrier(void)
{
__sync_synchronize();
}
static OF_INLINE void
of_memory_barrier_acquire(void)
{
__sync_synchronize();
}
static OF_INLINE void
of_memory_barrier_release(void)
{
__sync_synchronize();
}
|
|
|
|
|
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
OFAtomicPointerCompareAndSwap(void *volatile _Nullable *_Nonnull p,
void *_Nullable o, void *_Nullable n)
{
return __sync_bool_compare_and_swap(p, o, n);
}
static OF_INLINE void
OFMemoryBarrier(void)
{
__sync_synchronize();
}
static OF_INLINE void
OFAcquireMemoryBarrier(void)
{
__sync_synchronize();
}
static OF_INLINE void
OFReleaseMemoryBarrier(void)
{
__sync_synchronize();
}
|