Remove definition of builtin function 55/42055/1
authorYury Usishchev <y.usishchev@samsung.com>
Mon, 22 Jun 2015 13:30:49 +0000 (16:30 +0300)
committerYury Usishchev <y.usishchev@samsung.com>
Mon, 22 Jun 2015 13:34:53 +0000 (16:34 +0300)
Clang build failed with error:
[   39s] ../dist/../dbinc/atomic.h:179:19: error: definition of builtin
function '__atomic_compare_exchange'
[   39s] static inline int __atomic_compare_exchange(

Patch imported from FreeBSD
(http://lists.freebsd.org/pipermail/freebsd-current/2012-May/033615.html)

Change-Id: Ia5d5f6a753b5cbb53d7cc2d8154dc99b6a03994b
Signed-off-by: Yury Usishchev <y.usishchev@samsung.com>
dbinc/atomic.h

index 0034dcc..50b8b74 100644 (file)
@@ -144,7 +144,7 @@ typedef LONG volatile *interlocked_val;
 #define        atomic_inc(env, p)      __atomic_inc(p)
 #define        atomic_dec(env, p)      __atomic_dec(p)
 #define        atomic_compare_exchange(env, p, o, n)   \
-       __atomic_compare_exchange((p), (o), (n))
+       __atomic_compare_exchange_db((p), (o), (n))
 static inline int __atomic_inc(db_atomic_t *p)
 {
        int     temp;
@@ -176,7 +176,7 @@ static inline int __atomic_dec(db_atomic_t *p)
  * http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html
  * which configure could be changed to use.
  */
-static inline int __atomic_compare_exchange(
+static inline int __atomic_compare_exchange_db(
        db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval)
 {
        atomic_value_t was;