static inline void lock_reset(xbt_mallocator_t m)
{
- m->lock = 0;
+ atomic_flag_clear(&m->lock);
}
static inline void lock_acquire(xbt_mallocator_t m)
{
if (initialization_done > 1) {
- while (__atomic_test_and_set(&m->lock, __ATOMIC_ACQUIRE))
+ while (atomic_flag_test_and_set(&m->lock))
/* nop */;
}
}
static inline void lock_release(xbt_mallocator_t m)
{
if (initialization_done > 1)
- __atomic_clear(&m->lock, __ATOMIC_RELEASE);
+ atomic_flag_clear(&m->lock);
}
/**
* mallocator is empty
* @param free_f function to free an object of your datatype, called in @a xbt_mallocator_release() when the stack is
* full, and when the mallocator is freed.
- * @param reset_f function to reinitialise an object of your datatype, called when you extract an object from the
+ * @param reset_f function to reinitialize an object of your datatype, called when you extract an object from the
* mallocator (can be NULL)
*
* Create and initialize a new mallocator for a given datatype.