Path: blob/main/databases/db5/files/patch-src_dbinc_atomic.h
16461 views
--- src/dbinc/atomic.h.orig 2013-09-09 15:35:08 UTC1+++ src/dbinc/atomic.h2@@ -70,7 +70,7 @@ typedef struct {3* These have no memory barriers; the caller must include them when necessary.4*/5#define atomic_read(p) ((p)->value)6-#define atomic_init(p, val) ((p)->value = (val))7+#define db_atomic_init(p, val) ((p)->value = (val))89#ifdef HAVE_ATOMIC_SUPPORT1011@@ -144,7 +144,7 @@ typedef LONG volatile *interlocked_val;12#define atomic_inc(env, p) __atomic_inc(p)13#define atomic_dec(env, p) __atomic_dec(p)14#define atomic_compare_exchange(env, p, o, n) \15- __atomic_compare_exchange((p), (o), (n))16+ __atomic_compare_exchange_db((p), (o), (n))17static inline int __atomic_inc(db_atomic_t *p)18{19int temp;20@@ -176,7 +176,7 @@ static inline int __atomic_dec(db_atomic21* http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html22* which configure could be changed to use.23*/24-static inline int __atomic_compare_exchange(25+static inline int __atomic_compare_exchange_db(26db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval)27{28atomic_value_t was;29@@ -206,7 +206,7 @@ static inline int __atomic_compare_excha30#define atomic_dec(env, p) (--(p)->value)31#define atomic_compare_exchange(env, p, oldval, newval) \32(DB_ASSERT(env, atomic_read(p) == (oldval)), \33- atomic_init(p, (newval)), 1)34+ db_atomic_init(p, (newval)), 1)35#else36#define atomic_inc(env, p) __atomic_inc(env, p)37#define atomic_dec(env, p) __atomic_dec(env, p)383940