libidav/atomic.h

branch
dav-2
changeset 916
ddb41a915e63
parent 914
42c6b071b231
equal deleted inserted replaced
915:8f9dbd755fdb 916:ddb41a915e63
31 31
32 #ifdef __cplusplus 32 #ifdef __cplusplus
33 extern "C" { 33 extern "C" {
34 #endif 34 #endif
35 35
36 #if defined(__gnu_linux__) || defined(OSX) || defined(BSD) 36 #if defined(__gnu_linux__) || defined(__APPLE__) || defined(__GNUC__) || defined(__clang__)
37 37
38 #define dav_atomic_inc32(intptr) __sync_fetch_and_add(intptr, 1) 38 #define dav_atomic_inc32(intptr) __sync_fetch_and_add(intptr, 1)
39 #define dav_atomic_dec32(intptr) (__sync_fetch_and_sub(intptr, 1) - 1) 39 #define dav_atomic_dec32(intptr) (__sync_fetch_and_sub(intptr, 1) - 1)
40 40
41 #else 41 #else

mercurial