00001 #pragma once
00002 #ifndef _SEXP_ATOMIC_H
00003 #define _SEXP_ATOMIC_H
00004
00005 #include <stdint.h>
00006 #include <stdbool.h>
00007
00008 uint16_t SEXP_atomic_dec_u16 (volatile uint16_t *ptr);
00009 uint16_t SEXP_atomic_inc_u16 (volatile uint16_t *ptr);
00010 bool SEXP_atomic_cas_u16 (volatile uint16_t *ptr, uint16_t old, uint16_t new);
00011
00012 uint32_t SEXP_atomic_dec_u32 (volatile uint32_t *ptr);
00013 uint32_t SEXP_atomic_inc_u32 (volatile uint32_t *ptr);
00014 bool SEXP_atomic_cas_u32 (volatile uint32_t *ptr, uint32_t old, uint32_t new);
00015
00016 #endif