Add 'U' suffix to silence GCC 6 warning
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 24 Jul 2015 16:10:18 +0000 (09:10 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 24 Jul 2015 16:10:18 +0000 (09:10 -0700)
GCC 6 warns:

error: result of β€˜63 << 26’ requires 33 bits to represent, but β€˜int’ only has 32 bits [-Werror=shift-overflow=]

on 0x3f << 26.  This patch adds 'U' suffix to make integer constant
unsigned.

* alpha.c (OP_Jxx): Add 'U' suffix to make it unsigned.
(OP_BSR): Likewise.
(Jxx_FUNC_JMP): Likewise.
(Jxx_FUNC_JSR): Likewise.
(Jxx_FUNC_RET): Likewise.
(Jxx_FUNC_JSR_COROUTINE): Likewise.
(alpha_find_call): Replace 0x3f with 0x3fU.

gprof/ChangeLog
gprof/alpha.c

index 7a2087b8f71290f9b1d0cb56e6f5200a09328af7..d93046b17d7ad307800c8356c2d1541c9c8fb759 100644 (file)
@@ -1,3 +1,13 @@
+2015-07-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * alpha.c (OP_Jxx): Add 'U' suffix to make it unsigned.
+       (OP_BSR): Likewise.
+       (Jxx_FUNC_JMP): Likewise.
+       (Jxx_FUNC_JSR): Likewise.
+       (Jxx_FUNC_RET): Likewise.
+       (Jxx_FUNC_JSR_COROUTINE): Likewise.
+       (alpha_find_call): Replace 0x3f with 0x3fU.
+
 2015-04-29  Nick Clifton  <nickc@redhat.com>
 
        * po/da.po: Update Danish translation.
index 1a3ebf9704b82f634f7cefe1d48dd18484757e8f..d84cdf0a916e01549ea560bc287f664714672c71 100644 (file)
 /*
  * Opcodes of the call instructions:
  */
-#define OP_Jxx 0x1a
-#define        OP_BSR  0x34
+#define OP_Jxx 0x1aU
+#define        OP_BSR  0x34U
 
-#define Jxx_FUNC_JMP           0
-#define Jxx_FUNC_JSR           1
-#define Jxx_FUNC_RET           2
-#define Jxx_FUNC_JSR_COROUTINE 3
+#define Jxx_FUNC_JMP           0U
+#define Jxx_FUNC_JSR           1U
+#define Jxx_FUNC_RET           2U
+#define Jxx_FUNC_JSR_COROUTINE 3U
 
 /* *INDENT-OFF* */
 /* Here to document only.  We can't use this when cross compiling as
@@ -111,7 +111,7 @@ alpha_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc)
     {
       insn = bfd_get_32 (core_bfd, ((unsigned char *) core_text_space
                                    + pc - core_text_sect->vma));
-      switch (insn & (0x3f << 26))
+      switch (insn & (0x3fU << 26))
        {
        case OP_Jxx << 26:
          /*