Merge branch 'master' into urcu/ht
[urcu.git] / urcu / uatomic / generic.h
index 337fe4098bf8337649f9a6bb52af4f9359453091..bf7cc6aa05172b5072368ae381d60fc1aa31a6d3 100644 (file)
@@ -98,20 +98,23 @@ void _uatomic_and(void *addr, unsigned long val,
 #ifdef UATOMIC_HAS_ATOMIC_BYTE
        case 1:
                __sync_and_and_fetch_1(addr, val);
+               return;
 #endif
 #ifdef UATOMIC_HAS_ATOMIC_SHORT
        case 2:
                __sync_and_and_fetch_2(addr, val);
+               return;
 #endif
        case 4:
                __sync_and_and_fetch_4(addr, val);
+               return;
 #if (CAA_BITS_PER_LONG == 64)
        case 8:
                __sync_and_and_fetch_8(addr, val);
+               return;
 #endif
        }
        _uatomic_link_error();
-       return 0;
 }
 
 #define uatomic_and(addr, v)                   \
@@ -131,20 +134,24 @@ void _uatomic_or(void *addr, unsigned long val,
 #ifdef UATOMIC_HAS_ATOMIC_BYTE
        case 1:
                __sync_or_and_fetch_1(addr, val);
+               return;
 #endif
 #ifdef UATOMIC_HAS_ATOMIC_SHORT
        case 2:
                __sync_or_and_fetch_2(addr, val);
+               return;
 #endif
        case 4:
                __sync_or_and_fetch_4(addr, val);
+               return;
 #if (CAA_BITS_PER_LONG == 64)
        case 8:
                __sync_or_and_fetch_8(addr, val);
+               return;
 #endif
        }
        _uatomic_link_error();
-       return 0;
+       return;
 }
 
 #define uatomic_or(addr, v)                    \
@@ -269,6 +276,8 @@ void _uatomic_and(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old & val, 1);
                } while (oldt != old);
+
+               return;
        }
 #endif
 #ifdef UATOMIC_HAS_ATOMIC_SHORT
@@ -292,6 +301,8 @@ void _uatomic_and(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old & val, 4);
                } while (oldt != old);
+
+               return;
        }
 #if (CAA_BITS_PER_LONG == 64)
        case 8:
@@ -303,15 +314,16 @@ void _uatomic_and(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old & val, 8);
                } while (oldt != old);
+
+               return;
        }
 #endif
        }
        _uatomic_link_error();
-       return 0;
 }
 
 #define uatomic_and(addr, v)           \
-       (uatomic_and((addr),            \
+       (_uatomic_and((addr),           \
                    (unsigned long)(v), \
                    sizeof(*(addr))))
 #endif /* #ifndef uatomic_and */
@@ -333,6 +345,8 @@ void _uatomic_or(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old | val, 1);
                } while (oldt != old);
+
+               return;
        }
 #endif
 #ifdef UATOMIC_HAS_ATOMIC_SHORT
@@ -345,6 +359,8 @@ void _uatomic_or(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old | val, 2);
                } while (oldt != old);
+
+               return;
        }
 #endif
        case 4:
@@ -356,6 +372,8 @@ void _uatomic_or(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old | val, 4);
                } while (oldt != old);
+
+               return;
        }
 #if (CAA_BITS_PER_LONG == 64)
        case 8:
@@ -367,17 +385,18 @@ void _uatomic_or(void *addr, unsigned long val, int len)
                        old = oldt;
                        oldt = _uatomic_cmpxchg(addr, old, old | val, 8);
                } while (oldt != old);
+
+               return;
        }
 #endif
        }
        _uatomic_link_error();
-       return 0;
 }
 
 #define uatomic_or(addr, v)            \
-       (uatomic_or((addr),             \
-                   (unsigned long)(v), \
-                   sizeof(*(addr))))
+       (_uatomic_or((addr),            \
+                    (unsigned long)(v),\
+                    sizeof(*(addr))))
 #endif /* #ifndef uatomic_or */
 
 #ifndef uatomic_add_return
This page took 0.023891 seconds and 4 git commands to generate.