2018-01-26 08:43:22 +00:00
|
|
|
#ifndef _KERNEL_HAL_ATOMIC_H_
|
|
|
|
#define _KERNEL_HAL_ATOMIC_H_
|
|
|
|
|
2018-01-25 09:53:35 +00:00
|
|
|
#include "type.h"
|
2017-02-23 02:36:00 +00:00
|
|
|
|
2018-01-26 08:43:22 +00:00
|
|
|
/**
|
|
|
|
* Atomic operations
|
|
|
|
*/
|
|
|
|
|
2017-02-23 02:36:00 +00:00
|
|
|
extern int32_t KABI hal_interlocked_exchange_32(int32_t *target, int32_t val);
|
|
|
|
|
|
|
|
extern int32_t KABI hal_interlocked_increment_32(int32_t *target, int32_t increment);
|
|
|
|
|
|
|
|
extern int32_t KABI hal_interlocked_compare_exchange_32(int32_t *target, int32_t compare, int32_t val);
|
|
|
|
|
|
|
|
#endif
|