sparc: remove a sentinal
authorTrevor Saunders <tbsaunde+binutils@tbsaunde.org>
Mon, 27 Jun 2016 11:38:14 +0000 (07:38 -0400)
committerTrevor Saunders <tbsaunde+binutils@tbsaunde.org>
Tue, 19 Jul 2016 11:50:02 +0000 (07:50 -0400)
gas/ChangeLog:

2016-07-19  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>

* config/tc-sparc.c (pop_table): Remove sentinel.
(NUM_PERC_ENTRIES): Use ARRAY_SIZE on pop_table.
(md_begin): Adjust.

gas/ChangeLog
gas/config/tc-sparc.c

index 31da783d10a4b4a2a31932d498d0f892b3d36356..cf25c6f4fa8b1eee231a54deb7ca793635ed6711 100644 (file)
@@ -1,3 +1,9 @@
+2016-07-19  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
+
+       * config/tc-sparc.c (pop_table): Remove sentinel.
+       (NUM_PERC_ENTRIES): Use ARRAY_SIZE on pop_table.
+       (md_begin): Adjust.
+
 2016-07-19  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
 
        * config/tc-z8k.c (newfix): Make type of type argument
index 163a2168f27042cd54d53f8dfe9821c6fc150686..45b2be645d1904b6008ceef4186344755043abd9 100644 (file)
@@ -926,8 +926,7 @@ struct pop_entry pop_table[] =
   { "tie_ldx",         BFD_RELOC_SPARC_TLS_IE_LDX,     F_POP_POSTFIX },
   { "tie_ld",          BFD_RELOC_SPARC_TLS_IE_LD,      F_POP_POSTFIX },
   { "tie_add",         BFD_RELOC_SPARC_TLS_IE_ADD,     F_POP_POSTFIX },
-  { "gdop",            BFD_RELOC_SPARC_GOTDATA_OP,     F_POP_POSTFIX },
-  { NULL, 0, 0 },
+  { "gdop",            BFD_RELOC_SPARC_GOTDATA_OP,     F_POP_POSTFIX }
 };
 \f
 /* Table of %-names that can appear in a sparc assembly program.  This
@@ -962,7 +961,7 @@ struct perc_entry
   (((sizeof (priv_reg_table) / sizeof (priv_reg_table[0])) - 1)         \
    + ((sizeof (hpriv_reg_table) / sizeof (hpriv_reg_table[0])) - 1)     \
    + ((sizeof (v9a_asr_table) / sizeof (v9a_asr_table[0])) - 1)         \
-   + ((sizeof (pop_table) / sizeof (pop_table[0])) - 1) \
+   + ARRAY_SIZE (pop_table)                                            \
    + 1)
 
 struct perc_entry perc_table[NUM_PERC_ENTRIES];
@@ -1117,19 +1116,15 @@ md_begin (void)
       }
 
     /* Add %-pseudo-ops.  */
-    {
-      struct pop_entry *pop;
-
-      for (pop = pop_table; pop->name; pop++)
-        {
-          struct perc_entry *p = &perc_table[entry++];
-          p->type = (pop->flags & F_POP_POSTFIX
-                     ? perc_entry_post_pop : perc_entry_imm_pop);
-          p->name = pop->name;
-          p->len = strlen (pop->name);
-          p->pop = pop;
-        }
-    }
+    for (i = 0; i < ARRAY_SIZE (pop_table); i++)
+      {
+       struct perc_entry *p = &perc_table[entry++];
+       p->type = (pop_table[i].flags & F_POP_POSTFIX
+                  ? perc_entry_post_pop : perc_entry_imm_pop);
+       p->name = pop_table[i].name;
+       p->len = strlen (pop_table[i].name);
+       p->pop = &pop_table[i];
+      }
 
     /* Last entry is the centinel.  */
     perc_table[entry].type = perc_entry_none;