476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
|
: "cc"
);
return r;
}
static OF_INLINE void
of_memory_barrier(void)
{
__asm__ __volatile__ (
"mfence" ::: "memory"
);
}
static OF_INLINE void
of_memory_barrier_acquire(void)
{
__asm__ __volatile__ ("" ::: "memory");
}
static OF_INLINE void
of_memory_barrier_release(void)
{
__asm__ __volatile__ ("" ::: "memory");
}
OF_ASSUME_NONNULL_END
|
|
|
|
|
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
|
: "cc"
);
return r;
}
static OF_INLINE void
OFMemoryBarrier(void)
{
__asm__ __volatile__ (
"mfence" ::: "memory"
);
}
static OF_INLINE void
OFAcquireMemoryBarrier(void)
{
__asm__ __volatile__ ("" ::: "memory");
}
static OF_INLINE void
OFReleaseMemoryBarrier(void)
{
__asm__ __volatile__ ("" ::: "memory");
}
OF_ASSUME_NONNULL_END
|