fptr.c (SIGN_EXTEND): Cast -1 to unsigned.
authorJohn David Anglin <danglin@gcc.gnu.org>
Sun, 13 Sep 2015 15:05:57 +0000 (15:05 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Sun, 13 Sep 2015 15:05:57 +0000 (15:05 +0000)
* config/pa/fptr.c (SIGN_EXTEND): Cast -1 to unsigned.

From-SVN: r227717

libgcc/ChangeLog
libgcc/config/pa/fptr.c

index bca8328b831610b50c083564493dd2bd1e5ce889..10fd462fd29a4ae934de897ff82ca2395d0eeac1 100644 (file)
@@ -1,3 +1,7 @@
+2015-09-13  John David Anglin  <danglin@gcc.gnu.org>
+
+       * config/pa/fptr.c (SIGN_EXTEND): Cast -1 to unsigned.
+
 2015-09-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>
 
        * config/gthr-rtems.h (__GTHREADS_CXX0X): New.
index 303672754cd0f79f69693e609fd5e5f278bd7b99..e81dcabfee763d27f1f24e4b5f525ad789951cee 100644 (file)
@@ -45,7 +45,7 @@ static int fixup_branch_offset[NOFFSETS] = { 32, -4 };
 #define GET_FIELD(X, FROM, TO) \
   ((X) >> (31 - (TO)) & ((1 << ((TO) - (FROM) + 1)) - 1))
 #define SIGN_EXTEND(VAL,BITS) \
-  ((int) ((VAL) >> ((BITS) - 1) ? (-1 << (BITS)) | (VAL) : (VAL)))
+  ((int) ((VAL) >> ((BITS) - 1) ? ((unsigned)(-1) << (BITS)) | (VAL) : (VAL)))
 
 struct link_map;
 typedef int (*fptr_t) (void);