make some variables unsigned
authorTrevor Saunders <tbsaunde+binutils@tbsaunde.org>
Sun, 27 Mar 2016 11:07:27 +0000 (07:07 -0400)
committerTrevor Saunders <tbsaunde+binutils@tbsaunde.org>
Thu, 31 Mar 2016 04:57:11 +0000 (00:57 -0400)
these places define char arrays containing values greater than 0x80 which
doesn't fit in an 8 bit signed char, but does fit in an unsigned one.

gas/ChangeLog:

2016-03-31  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>

* config/tc-aarch64.c (aarch64_handle_align): Make the type of some
variables unsigned char[].
* config/tc-alpha.c (alpha_handle_align): Likewise.
* config/tc-arm.c (arm_handle_align): Likewise.
* config/tc-z80.c: Likewise.

gas/ChangeLog
gas/config/tc-aarch64.c
gas/config/tc-alpha.c
gas/config/tc-arm.c
gas/config/tc-z80.c

index 1b48ea4bd021bd090997ea934122ac0fd609b18d..a84d8d0b2fd022fd399815437012ae1910d9d979 100644 (file)
@@ -1,3 +1,11 @@
+2016-03-31  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
+
+       * config/tc-aarch64.c (aarch64_handle_align): Make the type of some
+       variables unsigned char[].
+       * config/tc-alpha.c (alpha_handle_align): Likewise.
+       * config/tc-arm.c (arm_handle_align): Likewise.
+       * config/tc-z80.c: Likewise.
+
 2016-03-30  Nick Clifton  <nickc@redhat.com>
 
        PR target/19880
index 8a6ebc8787c0dcd006ae7e91518baf353343d0ff..0e00259f44e8c788f6fd3c960917f4b98ec4b8a7 100644 (file)
@@ -6322,7 +6322,7 @@ aarch64_handle_align (fragS * fragP)
 {
   /* NOP = d503201f */
   /* AArch64 instructions are always little-endian.  */
-  static char const aarch64_noop[4] = { 0x1f, 0x20, 0x03, 0xd5 };
+  static unsigned char const aarch64_noop[4] = { 0x1f, 0x20, 0x03, 0xd5 };
 
   int bytes, fix, noop_size;
   char *p;
index 19d4bd269748bd459f48619ea1efd9fea2c19f12..5fa140387fdbab74a231fdef1255a045e20a129d 100644 (file)
@@ -5366,8 +5366,8 @@ alpha_elf_section_flags (flagword flags, bfd_vma attr, int type ATTRIBUTE_UNUSED
 void
 alpha_handle_align (fragS *fragp)
 {
-  static char const unop[4] = { 0x00, 0x00, 0xfe, 0x2f };
-  static char const nopunop[8] =
+  static unsigned char const unop[4] = { 0x00, 0x00, 0xfe, 0x2f };
+  static unsigned char const nopunop[8] =
   {
     0x1f, 0x04, 0xff, 0x47,
     0x00, 0x00, 0xfe, 0x2f
index 9c2eef5901a01b54011336dfae7c520a11af1c4c..2c42a134d7001a6e04c8991b794cc3e871070587 100644 (file)
@@ -21518,7 +21518,7 @@ md_section_align (segT   segment ATTRIBUTE_UNUSED,
 void
 arm_handle_align (fragS * fragP)
 {
-  static char const arm_noop[2][2][4] =
+  static unsigned char const arm_noop[2][2][4] =
     {
       {  /* ARMv1 */
        {0x00, 0x00, 0xa0, 0xe1},  /* LE */
@@ -21529,7 +21529,7 @@ arm_handle_align (fragS * fragP)
        {0xe3, 0x20, 0xf0, 0x00},  /* BE */
       },
     };
-  static char const thumb_noop[2][2][2] =
+  static unsigned char const thumb_noop[2][2][2] =
     {
       {  /* Thumb-1 */
        {0xc0, 0x46},  /* LE */
@@ -21540,7 +21540,7 @@ arm_handle_align (fragS * fragP)
        {0xbf, 0x00}   /* BE */
       }
     };
-  static char const wide_thumb_noop[2][4] =
+  static unsigned char const wide_thumb_noop[2][4] =
     {  /* Wide Thumb-2 */
       {0xaf, 0xf3, 0x00, 0x80},  /* LE */
       {0xf3, 0xaf, 0x80, 0x00},  /* BE */
@@ -21548,8 +21548,8 @@ arm_handle_align (fragS * fragP)
 
   unsigned bytes, fix, noop_size;
   char * p;
-  const char * noop;
-  const char *narrow_noop = NULL;
+  const unsigned char * noop;
+  const unsigned char *narrow_noop = NULL;
 #ifdef OBJ_ELF
   enum mstate state;
 #endif
index 094b8e6e12575de117c8785c07b77ce0e26c6a50..2f5281487200aeb0cdb984935eef70c74f863405 100644 (file)
@@ -409,8 +409,8 @@ typedef const char * (asfunc)(char, char, const char*);
 typedef struct _table_t
 {
   const char* name;
-  char prefix;
-  char opcode;
+  unsigned char prefix;
+  unsigned char opcode;
   asfunc * fp;
 } table_t;