30,9 → 30,8 |
#define __ppc32_ATOMIC_H__ |
|
#include <arch/types.h> |
#include <typedefs.h> |
|
typedef struct { volatile __u32 count; } atomic_t; |
|
static inline void atomic_inc(atomic_t *val) |
{ |
__u32 tmp; |
63,38 → 62,28 |
: "cc"); |
} |
|
static inline __u32 atomic_postinc(atomic_t *val) |
static inline long atomic_postinc(atomic_t *val) |
{ |
atomic_inc(val); |
return val->count - 1; |
} |
|
static inline __u32 atomic_postdec(atomic_t *val) |
static inline long atomic_postdec(atomic_t *val) |
{ |
atomic_dec(val); |
return val->count + 1; |
} |
|
static inline __u32 atomic_preinc(atomic_t *val) |
static inline long atomic_preinc(atomic_t *val) |
{ |
atomic_inc(val); |
return val->count; |
} |
|
static inline __u32 atomic_predec(atomic_t *val) |
static inline long atomic_predec(atomic_t *val) |
{ |
atomic_dec(val); |
return val->count; |
} |
|
static inline void atomic_set(atomic_t *val, __u32 i) |
{ |
val->count = i; |
} |
|
static inline __u32 atomic_get(atomic_t *val) |
{ |
return val->count; |
} |
|
#endif |