about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2012-08-01 20:56:03 -0400
committerMike Frysinger <vapier@gentoo.org>2012-08-03 12:08:51 -0400
commit0c41943a4d6dc2ce7fbf1ee90d9000852f177a89 (patch)
tree0c029a31ee49afc1bf40f852a3ffc3b4d8336976
parentbca393295a36ed9aba92df3209af48d6ffe571e3 (diff)
downloadglibc-0c41943a4d6dc2ce7fbf1ee90d9000852f177a89.tar.gz
glibc-0c41943a4d6dc2ce7fbf1ee90d9000852f177a89.tar.xz
glibc-0c41943a4d6dc2ce7fbf1ee90d9000852f177a89.zip
ia64: fix byteswap conversion warning
Same fix as went in for other architectures.

URL: http://sourceware.org/bugzilla/show_bug.cgi?id=12194
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-rw-r--r--ports/ChangeLog.ia647
-rw-r--r--ports/sysdeps/ia64/bits/byteswap-16.h2
-rw-r--r--ports/sysdeps/ia64/bits/byteswap.h2
3 files changed, 9 insertions, 2 deletions
diff --git a/ports/ChangeLog.ia64 b/ports/ChangeLog.ia64
index efb2fa9a73..933ac23c2d 100644
--- a/ports/ChangeLog.ia64
+++ b/ports/ChangeLog.ia64
@@ -1,3 +1,10 @@
+2012-08-03  Mike Frysinger  <vapier@gentoo.org>
+
+	[BZ #12194]
+	* sysdeps/ia64/bits/byteswap-16.h (__bswap_16): Avoid -Wconversion
+	warning.
+	* sysdeps/ia64/bits/byteswap.h (__bswap_constant_16): Likewise.
+
 2012-08-03  Joseph Myers  <joseph@codesourcery.com>
 
 	* sysdeps/unix/sysv/linux/ia64/configure.in (arch_minimum_kernel):
diff --git a/ports/sysdeps/ia64/bits/byteswap-16.h b/ports/sysdeps/ia64/bits/byteswap-16.h
index 0a85909276..4a53ffaf6d 100644
--- a/ports/sysdeps/ia64/bits/byteswap-16.h
+++ b/ports/sysdeps/ia64/bits/byteswap-16.h
@@ -23,7 +23,7 @@
 #if defined __GNUC__ && __GNUC__ >= 2
 # define __bswap_16(x) \
      (__extension__							      \
-      ({ register unsigned short int __v, __x = (x);			      \
+      ({ register unsigned short int __v, __x = (unsigned short int) (x);     \
 	 if (__builtin_constant_p (x))					      \
 	   __v = __bswap_constant_16 (__x);				      \
 	 else								      \
diff --git a/ports/sysdeps/ia64/bits/byteswap.h b/ports/sysdeps/ia64/bits/byteswap.h
index 68612487d3..d363c3e1cf 100644
--- a/ports/sysdeps/ia64/bits/byteswap.h
+++ b/ports/sysdeps/ia64/bits/byteswap.h
@@ -25,7 +25,7 @@
 
 /* Swap bytes in 16 bit value.  */
 #define __bswap_constant_16(x) \
-     ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8))
+     ((unsigned short int)((((x) >> 8) & 0xff) | (((x) & 0xff) << 8)))
 
 /* Get __bswap_16.  */
 #include <bits/byteswap-16.h>