diff options
author | Chris Robinson <[email protected]> | 2014-05-14 02:47:07 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2014-05-14 02:47:07 -0700 |
commit | 1d2504d12e996a4c1e8fe9785901db9a9e3b4d7c (patch) | |
tree | 51895ba97192cee1fccab44a838e4fa43d81a984 /common/atomic.c | |
parent | 4454ae25c753388c529b937ae2ce0f47f06d16c4 (diff) |
Make RefCount a non-integer type
It should only be accessed through the appropriate functions to ensure proper
atomicity.
Diffstat (limited to 'common/atomic.c')
-rw-r--r-- | common/atomic.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/common/atomic.c b/common/atomic.c index 02bbf066..95b8f835 100644 --- a/common/atomic.c +++ b/common/atomic.c @@ -4,8 +4,10 @@ #include "atomic.h" -extern inline RefCount IncrementRef(volatile RefCount *ptr); -extern inline RefCount DecrementRef(volatile RefCount *ptr); +extern inline void InitRef(volatile RefCount *ptr, uint value); +extern inline uint ReadRef(volatile RefCount *ptr); +extern inline uint IncrementRef(volatile RefCount *ptr); +extern inline uint DecrementRef(volatile RefCount *ptr); extern inline int ExchangeInt(volatile int *ptr, int newval); extern inline void *ExchangePtr(XchgPtr *ptr, void *newval); extern inline int CompExchangeInt(volatile int *ptr, int oldval, int newval); |