about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWill Newton <will.newton@linaro.org>2014-07-04 16:10:15 +0100
committerWill Newton <will.newton@linaro.org>2014-07-17 11:36:31 +0100
commit57977c4bf379c7f0b3dcf8b9a97a76214bfdf677 (patch)
tree189c50e49ec7ee60687d60fed3cb2b82e1044472
parent32bead5b6d6edc4421a8ca628ce7dc14d435202a (diff)
downloadglibc-57977c4bf379c7f0b3dcf8b9a97a76214bfdf677.tar.gz
glibc-57977c4bf379c7f0b3dcf8b9a97a76214bfdf677.tar.xz
glibc-57977c4bf379c7f0b3dcf8b9a97a76214bfdf677.zip
ARM: Fix compiler warnings from atomic.h
__arch_compare_and_exchange_bool_*_int return a boolean so in the
dummy implementations for 8, 16 and 64 bits return zero rather than
oldval. Zero is used rather than TRUE or FALSE to avoid needing to
including any headers for these dummy functions.

ChangeLog:

2014-07-17  Will Newton  <will.newton@linaro.org>

	* sysdeps/arm/bits/atomic.h
	(__arch_compare_and_exchange_bool_8_int): Evaluate to zero.
	(__arch_compare_and_exchange_bool_16_int): Likewise.
	(__arch_compare_and_exchange_bool_64_int): Likewise.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/arm/bits/atomic.h6
2 files changed, 8 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 9c9b2c3a3b..3c0b5aeb5c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2014-07-17  Will Newton  <will.newton@linaro.org>
 
+	* sysdeps/arm/bits/atomic.h
+	(__arch_compare_and_exchange_bool_8_int): Evaluate to zero.
+	(__arch_compare_and_exchange_bool_16_int): Likewise.
+	(__arch_compare_and_exchange_bool_64_int): Likewise.
+
 	* iconv/loop.c: Move definition of LOOPFCT and gconv_btowc
 	into an #else block.
 
diff --git a/sysdeps/arm/bits/atomic.h b/sysdeps/arm/bits/atomic.h
index c2d5be5703..88cbe67926 100644
--- a/sysdeps/arm/bits/atomic.h
+++ b/sysdeps/arm/bits/atomic.h
@@ -96,10 +96,10 @@ void __arm_link_error (void);
    For all "bool" routines, we return FALSE if exchange succesful.  */
 
 # define __arch_compare_and_exchange_bool_8_int(mem, newval, oldval, model) \
-  ({__arm_link_error (); oldval; })
+  ({__arm_link_error (); 0; })
 
 # define __arch_compare_and_exchange_bool_16_int(mem, newval, oldval, model) \
-  ({__arm_link_error (); oldval; })
+  ({__arm_link_error (); 0; })
 
 # define __arch_compare_and_exchange_bool_32_int(mem, newval, oldval, model) \
   ({                                                                    \
@@ -109,7 +109,7 @@ void __arm_link_error (void);
   })
 
 # define __arch_compare_and_exchange_bool_64_int(mem, newval, oldval, model) \
-  ({__arm_link_error (); oldval; })
+  ({__arm_link_error (); 0; })
 
 # define __arch_compare_and_exchange_val_8_int(mem, newval, oldval, model) \
   ({__arm_link_error (); oldval; })