From c51d5c6eba3f0362c8cac3e0b17fe75bc3e83170 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Thu, 21 Jul 2011 16:50:42 -0400 Subject: [PATCH] Fix ARM uatomic: missing return in uatomic and/or Signed-off-by: Mathieu Desnoyers --- urcu/uatomic/generic.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/urcu/uatomic/generic.h b/urcu/uatomic/generic.h index 82b7c8c..bf7cc6a 100644 --- a/urcu/uatomic/generic.h +++ b/urcu/uatomic/generic.h @@ -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) \ -- 2.34.1