Prepare gas for 64-bit obstacks
authorAlan Modra <amodra@gmail.com>
Sat, 26 Jul 2014 11:30:50 +0000 (21:00 +0930)
committerAlan Modra <amodra@gmail.com>
Sat, 26 Jul 2014 11:30:50 +0000 (21:00 +0930)
Use size_t in a few places involved with obstacks, and don't include
obstack.h in files that don't use obstacks.

gas/
* config/bfin-parse.y: Don't include obstack.h.
* config/obj-aout.c: Likewise.
* config/obj-coff.c: Likewise.
* config/obj-som.c: Likewise.
* config/tc-bfin.c: Likewise.
* config/tc-i960.c: Likewise.
* config/tc-rl78.c: Likewise.
* config/tc-rx.c: Likewise.
* config/tc-tic4x.c: Likewise.
* expr.c: Likewise.
* listing.c: Likewise.
* config/obj-elf.c (elf_file_symbol): Make name_length a size_t.
* config/tc-aarch64.c (symbol_locate): Likewise.
* config/tc-arm.c (symbol_locate): Likewise.
* config/tc-mmix.c (mmix_handle_mmixal): Make len_0 a size_t.
* config/tc-score.c (s3_build_score_ops_hsh): Make len a size_t.
(s3_build_dependency_insn_hsh): Likewise.
* config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
(s7_build_dependency_insn_hsh): Likewise.
* frags.c (frag_grow): Make parameter a size_t, and use size_t locals.
(frag_new): Make parameter a size_t.
(frag_var_init): Make max_chars and var parameters size_t.
(frag_var, frag_variant): Likewise.
(frag_room): Return a size_t.
(frag_align_pattern): Make n_fill parameter a size_t.
* frags.h: Update function prototypes.
* symbols.c (save_symbol_name): Make name_length a size_t.

21 files changed:
gas/ChangeLog
gas/config/bfin-parse.y
gas/config/obj-aout.c
gas/config/obj-coff.c
gas/config/obj-elf.c
gas/config/obj-som.c
gas/config/tc-aarch64.c
gas/config/tc-arm.c
gas/config/tc-bfin.c
gas/config/tc-i960.c
gas/config/tc-mmix.c
gas/config/tc-rl78.c
gas/config/tc-rx.c
gas/config/tc-score.c
gas/config/tc-score7.c
gas/config/tc-tic4x.c
gas/expr.c
gas/frags.c
gas/frags.h
gas/listing.c
gas/symbols.c

index 28b1fa5..1861e37 100644 (file)
@@ -1,3 +1,33 @@
+2014-07-26  Alan Modra  <amodra@gmail.com>
+
+       * config/bfin-parse.y: Don't include obstack.h.
+       * config/obj-aout.c: Likewise.
+       * config/obj-coff.c: Likewise.
+       * config/obj-som.c: Likewise.
+       * config/tc-bfin.c: Likewise.
+       * config/tc-i960.c: Likewise.
+       * config/tc-rl78.c: Likewise.
+       * config/tc-rx.c: Likewise.
+       * config/tc-tic4x.c: Likewise.
+       * expr.c: Likewise.
+       * listing.c: Likewise.
+       * config/obj-elf.c (elf_file_symbol): Make name_length a size_t.
+       * config/tc-aarch64.c (symbol_locate): Likewise.
+       * config/tc-arm.c (symbol_locate): Likewise.
+       * config/tc-mmix.c (mmix_handle_mmixal): Make len_0 a size_t.
+       * config/tc-score.c (s3_build_score_ops_hsh): Make len a size_t.
+       (s3_build_dependency_insn_hsh): Likewise.
+       * config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
+       (s7_build_dependency_insn_hsh): Likewise.
+       * frags.c (frag_grow): Make parameter a size_t, and use size_t locals.
+       (frag_new): Make parameter a size_t.
+       (frag_var_init): Make max_chars and var parameters size_t.
+       (frag_var, frag_variant): Likewise.
+       (frag_room): Return a size_t.
+       (frag_align_pattern): Make n_fill parameter a size_t.
+       * frags.h: Update function prototypes.
+       * symbols.c (save_symbol_name): Make name_length a size_t.
+
 2014-07-22  Sergey Guriev  <sergey.s.guriev@intel.com>
            Alexander Ivchenko  <alexander.ivchenko@intel.com>
            Maxim Kuznetsov  <maxim.kuznetsov@intel.com>
index fe742ad..435beea 100644 (file)
@@ -20,7 +20,6 @@
 %{
 
 #include "as.h"
-#include <obstack.h>
 
 #include "bfin-aux.h"  /* Opcode generating auxiliaries.  */
 #include "libbfd.h"
index 28369c0..93ea904 100644 (file)
@@ -23,7 +23,6 @@
 #include "as.h"
 #undef NO_RELOC
 #include "aout/aout64.h"
-#include "obstack.h"
 
 void
 obj_aout_frob_symbol (symbolS *sym, int *punt ATTRIBUTE_UNUSED)
index 79c8f88..4e7b9b7 100644 (file)
@@ -22,7 +22,6 @@
 
 #include "as.h"
 #include "safe-ctype.h"
-#include "obstack.h"
 #include "subsegs.h"
 #include "struc-symbol.h"
 
index e59f27b..e2ef99e 100644 (file)
@@ -266,7 +266,7 @@ elf_file_symbol (const char *s, int appfile)
       || (symbol_rootP->bsym->flags & BSF_FILE) == 0)
     {
       symbolS *sym;
-      unsigned int name_length;
+      size_t name_length;
 
       sym = symbol_new (s, absolute_section, 0, NULL);
       symbol_set_frag (sym, &zero_address_frag);
index 47acab8..55a9b6a 100644 (file)
@@ -24,7 +24,6 @@
 #include "as.h"
 #include "subsegs.h"
 #include "aout/stab_gnu.h"
-#include "obstack.h"
 
 static int version_seen = 0;
 static int copyright_seen = 0;
index c7ace79..0a65b9d 100644 (file)
@@ -1681,7 +1681,7 @@ symbol_locate (symbolS * symbolP,
               valueT valu,     /* Symbol value.  */
               fragS * frag)    /* Associated fragment.  */
 {
-  unsigned int name_length;
+  size_t name_length;
   char *preserved_copy_of_name;
 
   name_length = strlen (name) + 1;     /* +1 for \0.  */
index 7fb8b23..7dc0e7e 100644 (file)
@@ -3379,7 +3379,7 @@ symbol_locate (symbolS *    symbolP,
               valueT       valu,       /* Symbol value.  */
               fragS *      frag)       /* Associated fragment.  */
 {
-  unsigned int name_length;
+  size_t name_length;
   char * preserved_copy_of_name;
 
   name_length = strlen (name) + 1;   /* +1 for \0.  */
index 8366cbf..447a477 100644 (file)
@@ -948,7 +948,7 @@ int ninsns;
 int count_insns;
 
 static void *
-allocate (int n)
+allocate (size_t n)
 {
   return obstack_alloc (&mempool, n);
 }
index 7595e1d..91469eb 100644 (file)
@@ -64,7 +64,6 @@
 #include "as.h"
 
 #include "safe-ctype.h"
-#include "obstack.h"
 
 #include "opcode/i960.h"
 
index 7740ee2..82f48ae 100644 (file)
@@ -3007,7 +3007,7 @@ mmix_handle_mmixal (void)
         it the same alignment and address as the associated instruction.  */
 
       /* Make room for the label including the ending nul.  */
-      int len_0 = s - label + 1;
+      size_t len_0 = s - label + 1;
 
       /* Save this label on the MMIX symbol obstack.  Saving it on an
         obstack is needless for "IS"-pseudos, but it's harmless and we
index 0cd7e5b..f2382b7 100644 (file)
@@ -20,7 +20,6 @@
 
 #include "as.h"
 #include "struc-symbol.h"
-#include "obstack.h"
 #include "safe-ctype.h"
 #include "dwarf2dbg.h"
 #include "libbfd.h"
index c4842f9..0d7e1d5 100644 (file)
@@ -20,7 +20,6 @@
 
 #include "as.h"
 #include "struc-symbol.h"
-#include "obstack.h"
 #include "safe-ctype.h"
 #include "dwarf2dbg.h"
 #include "libbfd.h"
index e8c8b6d..72597a0 100644 (file)
@@ -6315,7 +6315,7 @@ s3_build_score_ops_hsh (void)
   for (i = 0; i < sizeof (s3_score_insns) / sizeof (struct s3_asm_opcode); i++)
     {
       const struct s3_asm_opcode *insn = s3_score_insns + i;
-      unsigned len = strlen (insn->template_name);
+      size_t len = strlen (insn->template_name);
       struct s3_asm_opcode *new_opcode;
       char *template_name;
       new_opcode = (struct s3_asm_opcode *)
@@ -6344,7 +6344,7 @@ s3_build_dependency_insn_hsh (void)
   for (i = 0; i < sizeof (s3_insn_to_dependency_table) / sizeof (s3_insn_to_dependency_table[0]); i++)
     {
       const struct s3_insn_to_dependency *tmp = s3_insn_to_dependency_table + i;
-      unsigned len = strlen (tmp->insn_name);
+      size_t len = strlen (tmp->insn_name);
       struct s3_insn_to_dependency *new_i2n;
 
       new_i2n = (struct s3_insn_to_dependency *)
index 7bf0ad6..ae15a04 100644 (file)
@@ -5090,7 +5090,7 @@ s7_build_score_ops_hsh (void)
   for (i = 0; i < sizeof (s7_score_insns) / sizeof (struct s7_asm_opcode); i++)
     {
       const struct s7_asm_opcode *insn = s7_score_insns + i;
-      unsigned len = strlen (insn->template_name);
+      size_t len = strlen (insn->template_name);
       struct s7_asm_opcode *new_opcode;
       char *template_name;
       new_opcode = (struct s7_asm_opcode *)
@@ -5119,7 +5119,7 @@ s7_build_dependency_insn_hsh (void)
   for (i = 0; i < ARRAY_SIZE (s7_insn_to_dependency_table); i++)
     {
       const struct s7_insn_to_dependency *tmp = s7_insn_to_dependency_table + i;
-      unsigned len = strlen (tmp->insn_name);
+      size_t len = strlen (tmp->insn_name);
       struct s7_insn_to_dependency *new_i2d;
 
       new_i2d = (struct s7_insn_to_dependency *)
index 7559ad5..904a68c 100644 (file)
@@ -43,7 +43,6 @@
 #include "safe-ctype.h"
 #include "opcode/tic4x.h"
 #include "subsegs.h"
-#include "obstack.h"
 
 /* OK, we accept a syntax similar to the other well known C30
    assembly tools.  With TIC4X_ALT_SYNTAX defined we are more
index b39c70d..eb7255f 100644 (file)
@@ -27,7 +27,6 @@
 
 #include "as.h"
 #include "safe-ctype.h"
-#include "obstack.h"
 
 #ifdef HAVE_LIMITS_H
 #include <limits.h>
index e14099d..defa853 100644 (file)
@@ -94,12 +94,12 @@ frag_alloc (struct obstack *ob)
    do not return. Do not set up any fields of *now_frag.  */
 
 void
-frag_grow (unsigned int nchars)
+frag_grow (size_t nchars)
 {
   if (obstack_room (&frchain_now->frch_obstack) < nchars)
     {
-      long oldc;
-      long newc;
+      size_t oldc;
+      size_t newc;
 
       /* Try to allocate a bit more than needed right now.  But don't do
          this if we would waste too much memory.  Especially necessary
@@ -111,8 +111,8 @@ frag_grow (unsigned int nchars)
       newc += SIZEOF_STRUCT_FRAG;
 
       /* Check for possible overflow.  */
-      if (newc < 0)
-        as_fatal (_("can't extend frag %u chars"), nchars);
+      if (newc < nchars)
+        as_fatal (_("can't extend frag %lu chars"), (unsigned long) nchars);
 
       /* Force to allocate at least NEWC bytes, but not less than the
          default.  */
@@ -152,7 +152,7 @@ frag_grow (unsigned int nchars)
    of frchain_now.  */
 
 void
-frag_new (int old_frags_var_max_size
+frag_new (size_t old_frags_var_max_size
          /* Number of chars (already allocated on obstack frags) in
             variable_length part of frag.  */)
 {
@@ -204,7 +204,7 @@ frag_new (int old_frags_var_max_size
    frag_now_growth past the new chars.  */
 
 char *
-frag_more (int nchars)
+frag_more (size_t nchars)
 {
   register char *retval;
 
@@ -219,8 +219,8 @@ frag_more (int nchars)
    new frag.  */
 
 static void
-frag_var_init (relax_stateT type, int max_chars, int var,
-               relax_substateT subtype, symbolS *symbol, offsetT offset,
+frag_var_init (relax_stateT type, size_t max_chars, size_t var,
+              relax_substateT subtype, symbolS *symbol, offsetT offset,
                char *opcode)
 {
   frag_now->fr_var = var;
@@ -250,8 +250,9 @@ frag_var_init (relax_stateT type, int max_chars, int var,
    to write into.  */
 
 char *
-frag_var (relax_stateT type, int max_chars, int var, relax_substateT subtype,
-         symbolS *symbol, offsetT offset, char *opcode)
+frag_var (relax_stateT type, size_t max_chars, size_t var,
+         relax_substateT subtype, symbolS *symbol, offsetT offset,
+         char *opcode)
 {
   register char *retval;
 
@@ -267,7 +268,7 @@ frag_var (relax_stateT type, int max_chars, int var, relax_substateT subtype,
        No call to frag_grow is done.  */
 
 char *
-frag_variant (relax_stateT type, int max_chars, int var,
+frag_variant (relax_stateT type, size_t max_chars, size_t var,
              relax_substateT subtype, symbolS *symbol, offsetT offset,
              char *opcode)
 {
@@ -291,7 +292,7 @@ frag_wane (register fragS *fragP)
 \f
 /* Return the number of bytes by which the current frag can be grown.  */
 
-int
+size_t
 frag_room (void)
 {
   return obstack_room (&frchain_now->frch_obstack);
@@ -336,7 +337,7 @@ frag_align (int alignment, int fill_character, int max)
 
 void
 frag_align_pattern (int alignment, const char *fill_pattern,
-                   int n_fill, int max)
+                   size_t n_fill, int max)
 {
   char *p;
 
index 2f9e1b5..bdc3c9d 100644 (file)
@@ -127,27 +127,27 @@ extern void frag_append_1_char (int);
 
 void frag_init (void);
 fragS *frag_alloc (struct obstack *);
-void frag_grow (unsigned int nchars);
-char *frag_more (int nchars);
+void frag_grow (size_t nchars);
+char *frag_more (size_t nchars);
 void frag_align (int alignment, int fill_character, int max);
 void frag_align_pattern (int alignment, const char *fill_pattern,
-                        int n_fill, int max);
+                        size_t n_fill, int max);
 void frag_align_code (int alignment, int max);
-void frag_new (int old_frags_var_max_size);
+void frag_new (size_t old_frags_var_max_size);
 void frag_wane (fragS * fragP);
-int frag_room (void);
+size_t frag_room (void);
 
 char *frag_variant (relax_stateT type,
-                   int max_chars,
-                   int var,
+                   size_t max_chars,
+                   size_t var,
                    relax_substateT subtype,
                    symbolS * symbol,
                    offsetT offset,
                    char *opcode);
 
 char *frag_var (relax_stateT type,
-               int max_chars,
-               int var,
+               size_t max_chars,
+               size_t var,
                relax_substateT subtype,
                symbolS * symbol,
                offsetT offset,
index 0192dd0..57425fe 100644 (file)
@@ -89,7 +89,6 @@
 
 #include "as.h"
 #include "filenames.h"
-#include "obstack.h"
 #include "safe-ctype.h"
 #include "input-file.h"
 #include "subsegs.h"
index 9da0468..6af8604 100644 (file)
@@ -104,7 +104,7 @@ symbol_new (const char *name, segT segment, valueT valu, fragS *frag)
 static char *
 save_symbol_name (const char *name)
 {
-  unsigned int name_length;
+  size_t name_length;
   char *ret;
 
   name_length = strlen (name) + 1;     /* +1 for \0.  */