X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/078f80bd03c9bd643fa7ac5ad56a363e7acd88b0..7377fcd26c41f42160b385faf84135857928bda0:/src/xbt/mallocator.c diff --git a/src/xbt/mallocator.c b/src/xbt/mallocator.c index e3a0319599..ec32f179c5 100644 --- a/src/xbt/mallocator.c +++ b/src/xbt/mallocator.c @@ -46,8 +46,7 @@ static inline void lock_reset(xbt_mallocator_t m) static inline void lock_acquire(xbt_mallocator_t m) { if (initialization_done > 1) { - int *lock = &m->lock; - while (__sync_lock_test_and_set(lock, 1)) + while (__atomic_test_and_set(&m->lock, __ATOMIC_ACQUIRE)) /* nop */; } } @@ -55,7 +54,7 @@ static inline void lock_acquire(xbt_mallocator_t m) static inline void lock_release(xbt_mallocator_t m) { if (initialization_done > 1) - __sync_lock_release(&m->lock); + __atomic_clear(&m->lock, __ATOMIC_RELEASE); } /**