[PATCH 1/1] bfd, binutils, gas: Mark unused variables

Tsukasa OI research_trasio@irq.a4lg.com
Thu Sep 15 03:09:27 GMT 2022


Clang generates a warning on unused (technically, written but not read
thereafter) variables.  By the default configuration (with "-Werror"), it
causes a build failure (unless "--disable-werror" is specified).

This commit, instead of just removing those variables, adds
ATTRIBUTE_UNUSED attribute to them, which means they are *possibly* unused
(can be used but no warnings occur when unused).

bfd/ChangeLog:

	* elf32-lm32.c (lm32_elf_size_dynamic_sections): Mark unused
	rgot_count variable.
	* elf32-nds32.c (elf32_nds32_unify_relax_group): Mark unused
	count variable.
	* mmo.c (mmo_scan): Mark unused lineno variable.

binutils/ChangeLog:

	* windmc.c (write_rc): Mark unused i variable.

gas/ChangeLog:

	* config/tc-riscv.c (riscv_ip): Mark unused argnum variable.

ld/ChangeLog:

	* pe-dll.c (generate_reloc): Mark unused bi and page_count
	variables.
---
 bfd/elf32-lm32.c      |  5 +----
 bfd/elf32-nds32.c     |  4 +---
 bfd/mmo.c             |  7 +------
 binutils/windmc.c     |  5 ++---
 gas/config/tc-riscv.c |  4 +---
 ld/pe-dll.c           | 11 ++++-------
 6 files changed, 10 insertions(+), 26 deletions(-)

diff --git a/bfd/elf32-lm32.c b/bfd/elf32-lm32.c
index 4830ab21dfa..b57188b0f35 100644
--- a/bfd/elf32-lm32.c
+++ b/bfd/elf32-lm32.c
@@ -2067,7 +2067,7 @@ lm32_elf_size_dynamic_sections (bfd *output_bfd,
       struct weak_symbol_list *list_start = NULL, *list_end = NULL;
       int rgot_weak_count = 0;
       int r32_count = 0;
-      int rgot_count = 0;
+      int rgot_count ATTRIBUTE_UNUSED = 0;
       /* Look for deleted sections.  */
       for (ibfd = info->input_bfds; ibfd != NULL; ibfd = ibfd->link.next)
 	{
@@ -2115,9 +2115,6 @@ lm32_elf_size_dynamic_sections (bfd *output_bfd,
 				    case R_LM32_32:
 				      r32_count++;
 				      break;
-				    case R_LM32_16_GOT:
-				      rgot_count++;
-				      break;
 				    }
 				}
 			    }
diff --git a/bfd/elf32-nds32.c b/bfd/elf32-nds32.c
index 82c20592d6d..cb20c034781 100644
--- a/bfd/elf32-nds32.c
+++ b/bfd/elf32-nds32.c
@@ -13460,7 +13460,7 @@ elf32_nds32_unify_relax_group (bfd *abfd, asection *asec)
   Elf_Internal_Rela *relocs = NULL;
   enum elf_nds32_reloc_type rtype;
   struct section_id_list_t *node = NULL;
-  int count = 0;
+  int count ATTRIBUTE_UNUSED = 0;
 
   do
     {
@@ -13499,8 +13499,6 @@ elf32_nds32_unify_relax_group (bfd *abfd, asection *asec)
 
 	  /* Change it.  */
 	  rel->r_addend += relax_group_ptr->bias;
-	  /* Debugging count.  */
-	  count++;
 	}
     }
   while (false);
diff --git a/bfd/mmo.c b/bfd/mmo.c
index fd92a346bc7..57647139d40 100644
--- a/bfd/mmo.c
+++ b/bfd/mmo.c
@@ -1602,7 +1602,7 @@ static bool
 mmo_scan (bfd *abfd)
 {
   unsigned int i;
-  unsigned int lineno = 1;
+  unsigned int lineno ATTRIBUTE_UNUSED = 1;
   bool error = false;
   bfd_vma vma = 0;
   asection *sec = NULL;
@@ -1671,7 +1671,6 @@ mmo_scan (bfd *abfd)
 		  goto error_return;
 		}
 	      vma += 4;
-	      lineno++;
 	      break;
 
 	    case LOP_LOC:
@@ -1905,12 +1904,9 @@ mmo_scan (bfd *abfd)
 		  goto error_return;
 		}
 
-	      lineno = 0;
 	      break;
 
 	    case LOP_LINE:
-	      /* Set line number.  */
-	      lineno = y * 256 + z;
 	      /* FIXME: Create a sequence of mmo-specific line number
 		 entries for each section, then translate into canonical
 		 format.  */
@@ -2087,7 +2083,6 @@ mmo_scan (bfd *abfd)
 	    }
 	  vma += 4;
 	  vma &= ~3;
-	  lineno++;
 	}
     }
 
diff --git a/binutils/windmc.c b/binutils/windmc.c
index b47da91f1bb..f8a04c9b619 100644
--- a/binutils/windmc.c
+++ b/binutils/windmc.c
@@ -765,7 +765,8 @@ static void
 write_rc (FILE *fp)
 {
   mc_node_lang *n;
-  int i, l;
+  int l;
+  int i ATTRIBUTE_UNUSED;
 
   fprintf (fp,
 	   "/* Do not edit this file manually.\n"
@@ -773,12 +774,10 @@ write_rc (FILE *fp)
   if (! mc_nodes_lang_count)
     return;
   n = NULL;
-  i = 0;
   for (l = 0; l < mc_nodes_lang_count; l++)
     {
       if (n && n->lang == mc_nodes_lang[l]->lang)
 	continue;
-      ++i;
       n = mc_nodes_lang[l];
       fprintf (fp, "\n// Country: %s\n// Language: %s\n#pragma code_page(%u)\n",
 	       n->lang->lang_info.country, n->lang->lang_info.name,
diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c
index df2e201fb74..d8bf6c07f51 100644
--- a/gas/config/tc-riscv.c
+++ b/gas/config/tc-riscv.c
@@ -2303,7 +2303,7 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
   char save_c = 0;
   struct riscv_opcode *insn;
   unsigned int regno;
-  int argnum;
+  int argnum ATTRIBUTE_UNUSED;
   const struct percent_op_match *p;
   struct riscv_ip_error error;
   error.msg = "unrecognized opcode";
@@ -2341,7 +2341,6 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
       error.msg = _("illegal operands");
       error.missing_ext = NULL;
       create_insn (ip, insn);
-      argnum = 1;
 
       imm_expr->X_op = O_absent;
       *imm_reloc = BFD_RELOC_UNUSED;
@@ -2859,7 +2858,6 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
 	      break; /* end RVV */
 
 	    case ',':
-	      ++argnum;
 	      if (*asarg++ == *oparg)
 		continue;
 	      asarg--;
diff --git a/ld/pe-dll.c b/ld/pe-dll.c
index 92c33f528c8..77d8d387772 100644
--- a/ld/pe-dll.c
+++ b/ld/pe-dll.c
@@ -1510,8 +1510,9 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
   int total_relocs = 0;
   int i;
   bfd_vma sec_page = (bfd_vma) -1;
-  bfd_vma page_ptr, page_count;
-  int bi;
+  bfd_vma page_ptr;
+  bfd_vma page_count ATTRIBUTE_UNUSED;
+  int bi ATTRIBUTE_UNUSED;
   bfd *b;
   struct bfd_section *s;
 
@@ -1525,8 +1526,7 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
   reloc_data = xmalloc (total_relocs * sizeof (reloc_data_type));
 
   total_relocs = 0;
-  bi = 0;
-  for (bi = 0, b = info->input_bfds; b; bi++, b = b->link.next)
+  for (b = info->input_bfds; b; b = b->link.next)
     {
       arelent **relocs;
       int relsize, nrelocs;
@@ -1721,7 +1721,6 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
   sec_page = (bfd_vma) -1;
   reloc_sz = 0;
   page_ptr = (bfd_vma) -1;
-  page_count = 0;
 
   for (i = 0; i < total_relocs; i++)
     {
@@ -1740,7 +1739,6 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
 	  page_ptr = reloc_sz;
 	  reloc_sz += 8;
 	  sec_page = this_page;
-	  page_count = 0;
 	}
 
       bfd_put_16 (abfd, (rva & 0xfff) + (reloc_data[i].type << 12),
@@ -1753,7 +1751,6 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
 	  reloc_sz += 2;
 	}
 
-      page_count++;
     }
 
   while (reloc_sz & 3)
-- 
2.34.1



More information about the Binutils mailing list