Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Simon Marchi <simon.marchi@efficios.com>
To: binutils@sourceware.org, gdb-patches@sourceware.org
Subject: Re: [PATCH 11/18] sim/m68hc11: remove unused current_insn_size variable
Date: Mon, 19 Oct 2026 15:36:26 -0400	[thread overview]
Message-ID: <50618a5e-0c68-4380-b2b3-32f3ed487b67@efficios.com> (raw)
In-Reply-To: <20261019193231.1708375-12-simon.marchi@efficios.com>

Adding gdb-patches@.

On 10/19/26 3:28 PM, Simon Marchi wrote:
> Building the m68hc11 simulator with a recent clang fails with:
> 
>     /home/smarchi/src/binutils-gdb/sim/m68hc11/gencode.c:1143:12: error: variable 'current_insn_size' set but not used [-Werror,-Wunused-but-set-global]
> 
> The only read of current_insn_size is an instruction size consistency
> check, which has been disabled with "#if 0" since commit 81e09ed8322b
> ("Improve HC11 simulator to support HC12", 2001-05-20).  Remove the
> variable, the code computing it, and the disabled check.
> 
> Change-Id: Ibd7ee5ac16d5511d40a9ddcc175a94dcbc387b2b
> ---
>  sim/m68hc11/gencode.c | 41 -----------------------------------------
>  1 file changed, 41 deletions(-)
> 
> diff --git a/sim/m68hc11/gencode.c b/sim/m68hc11/gencode.c
> index 248005a9dd84..822c90ef9a5e 100644
> --- a/sim/m68hc11/gencode.c
> +++ b/sim/m68hc11/gencode.c
> @@ -1140,7 +1140,6 @@ static struct m6811_opcode_def m6812_page2_opcodes[] = {
>  
>  
>  static int indent_level = 2;
> -static int current_insn_size = 0;
>  
>  /* Fatal error message and exit.  This method is called when an inconsistency
>     is detected in the generation table.	 */
> @@ -1344,7 +1343,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	    fatal_error (opcode, "Wrong use of '*', 'addr' already used");
>  	  
>  	  addr_set = 1;
> -	  current_insn_size += 1;
>  	  print (fp, col, "addr = (uint16_t) cpu_fetch8 (cpu);");
>  	  print (fp, col, "%s%s = memory_read%s (cpu, addr);",
>  		 vars[cur_var], operand_size, operand_size);
> @@ -1357,25 +1355,21 @@ gen_fetch_operands (FILE *fp, int col,
>  	  addr_set = 1;
>  	  if (strncmp (operands, "(x)", 3) == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_x (cpu) + (uint16_t) cpu_fetch8 (cpu);");
>  	      operands += 3;
>  	    }
>  	  else if (strncmp (operands, "(y)", 3) == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_y (cpu) + (uint16_t) cpu_fetch8 (cpu);");
>  	      operands += 3;
>  	    }
>  	  else if (strncmp (operands, "()", 2) == 0)
>  	    {
> -	      current_insn_size += 2;
>  	      print (fp, col, "addr = cpu_fetch16 (cpu);");
>  	      operands += 2;
>  	    }
>  	  else if (strncmp (operands, "[]", 2) == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_indexed_operand_addr (cpu, 0);");
>  	      operands += 2;
>  	    }
> @@ -1395,7 +1389,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	  if (strncmp (operands, "x)", 2) == 0)
>  	    {
>  	      addr_set = 1;
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_x (cpu) + (uint16_t) cpu_fetch8 (cpu);");
>  	      print (fp, col, "%s%s = memory_read%s (cpu, addr);",
>  		     vars[cur_var], operand_size, operand_size);
> @@ -1404,7 +1397,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	  else if (strncmp (operands, "y)", 2) == 0)
>  	    {
>  	      addr_set = 1;
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_y (cpu) + (uint16_t) cpu_fetch8 (cpu);");
>  	      print (fp, col, "%s%s = memory_read%s (cpu, addr);",
>  		     vars[cur_var], operand_size, operand_size);
> @@ -1413,7 +1405,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	  else if (strncmp (operands, ")", 1) == 0)
>  	    {
>  	      addr_set = 1;
> -	      current_insn_size += 2;
>  	      print (fp, col, "addr = cpu_fetch16 (cpu);");
>  	      print (fp, col, "%s%s = memory_read%s (cpu, addr);",
>  		     vars[cur_var], operand_size, operand_size);
> @@ -1421,7 +1412,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	    }
>  	  else if (strncmp (operands, "@)", 2) == 0)
>  	    {
> -	      current_insn_size += 2;
>  	      print (fp, col, "addr = cpu_fetch16 (cpu);");
>  	      print (fp, col, "%s%s = memory_read%s (cpu, addr);",
>  		     vars[cur_var], operand_size, operand_size);
> @@ -1451,7 +1441,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	  if (strncmp (operands, "]", 1) == 0)
>  	    {
>  	      addr_set = 1;
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_indexed_operand_addr (cpu,0);");
>  	      print (fp, col, "%s%s = memory_read%s (cpu, addr);",
>  		     vars[cur_var], operand_size, operand_size);
> @@ -1461,7 +1450,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	 removed because it may be that there is a typo in strncmp test below.  */
>  	  else if (strncmp (operands, "]", 1) == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "%s%s = cpu_get_indexed_operand%s (cpu,0);",
>  		     vars[cur_var], operand_size, operand_size);
>  	      operands += 1;
> @@ -1482,7 +1470,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	  
>  	  if (strncmp (operands, "}", 1) == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "%s%s = cpu_get_indexed_operand%s (cpu, 1);",
>  		     vars[cur_var], operand_size, operand_size);
>  	      operands += 1;
> @@ -1525,7 +1512,6 @@ gen_fetch_operands (FILE *fp, int col,
>  	    fatal_error (opcode, "Wrong use of 'r'");
>  
>  	  addr_set = 1;
> -	  current_insn_size += 1;
>  	  print (fp, col, "addr = cpu_fetch_relbranch (cpu);");
>  	  break;
>  
> @@ -1534,19 +1520,10 @@ gen_fetch_operands (FILE *fp, int col,
>  	    fatal_error (opcode, "Wrong use of 'R'");
>  
>  	  addr_set = 1;
> -	  current_insn_size += 2;
>  	  print (fp, col, "addr = cpu_fetch_relbranch16 (cpu);");
>  	  break;
>  
>  	case '#':
> -	  if (strcmp (operand_size, "8") == 0)
> -	    {
> -	      current_insn_size += 1;
> -	    }
> -	  else
> -	    {
> -	      current_insn_size += 2;
> -	    }
>  	  print (fp, col, "%s%s = cpu_fetch%s (cpu);", vars[cur_var],
>  		 operand_size, operand_size);
>  	  break;
> @@ -1655,7 +1632,6 @@ gen_save_result (FILE *fp, int col,
>      case '*':
>        if (addr_set == 0)
>  	{
> -	  current_insn_size += 1;
>  	  print (fp, col, "addr = (uint16_t) cpu_fetch8 (cpu);");
>  	}
>        result_size = operand_size;
> @@ -1668,7 +1644,6 @@ gen_save_result (FILE *fp, int col,
>  	{
>  	  if (addr_set == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_x (cpu) + cpu_fetch8 (cpu);");
>  	    }
>  	  print (fp, col, "memory_write%s (cpu, addr, dst%s);",
> @@ -1680,7 +1655,6 @@ gen_save_result (FILE *fp, int col,
>  	{
>  	  if (addr_set == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_y (cpu) + cpu_fetch8 (cpu);");
>  	    }
>  	  print (fp, col, "memory_write%s (cpu, addr, dst%s);",
> @@ -1692,7 +1666,6 @@ gen_save_result (FILE *fp, int col,
>  	{
>  	  if (addr_set == 0)
>  	    {
> -	      current_insn_size += 2;
>  	      print (fp, col, "addr = cpu_fetch16 (cpu);");
>  	    }
>  	  print (fp, col, "memory_write%s (cpu, addr, dst%s);",
> @@ -1719,7 +1692,6 @@ gen_save_result (FILE *fp, int col,
>  	{
>  	  if (addr_set == 0)
>  	    {
> -	      current_insn_size += 1;
>  	      print (fp, col, "addr = cpu_get_indexed_operand_addr (cpu,0);");
>  	    }
>  	  print (fp, col, "memory_write%s (cpu, addr, dst%s);",
> @@ -1736,7 +1708,6 @@ gen_save_result (FILE *fp, int col,
>      case '{':
>        if (strncmp (operands, "}", 1) == 0)
>  	{
> -	  current_insn_size += 1;
>  	  print (fp, col, "addr = cpu_get_indexed_operand_addr (cpu, 1);");
>  	  print (fp, col, "memory_write%s (cpu, addr, dst%s);",
>  		 operand_size, operand_size);
> @@ -1880,11 +1851,7 @@ gen_interpreter_for_table (FILE *fp, int col,
>  			   const char *cycles_table_name)
>  {
>    int i;
> -  int init_size;
>  
> -  init_size = table == m6811_page1_opcodes
> -    || table == m6812_page1_opcodes? 1 : 2;
> -  
>    /* Get the opcode and dispatch directly.  */
>    print (fp, col, "op = cpu_fetch8 (cpu);");
>    print (fp, col, "cpu_add_cycles (cpu, %s[op]);", cycles_table_name);
> @@ -1899,15 +1866,7 @@ gen_interpreter_for_table (FILE *fp, int col,
>        if (i > 0 && table[i].insn_code == table[i - 1].insn_code)
>  	continue;
>  
> -      current_insn_size = init_size;
>        gen_interp (fp, col, &table[i]);
> -#if 0
> -      if (current_insn_size != table[i].insn_size)
> -	{
> -	  fatal_error (&table[i], "Insn size %ld inconsistent with %ld",
> -		       current_insn_size, table[i].insn_size);
> -	}
> -#endif
>      }
>  
>    print (fp, col, "default:\n");
> -- 
> 2.56.0
> 


      parent reply	other threads:[~2026-10-19 19:39 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20261019193231.1708375-1-simon.marchi@efficios.com>
     [not found] ` <20261019193231.1708375-10-simon.marchi@efficios.com>
2026-10-19 19:35   ` [PATCH 09/18] sim/bpf: remove unused bpf_program_section variable Simon Marchi
2026-10-20 10:59     ` Jose E. Marchesi
2026-10-21 13:30       ` Simon Marchi
     [not found] ` <20261019193231.1708375-11-simon.marchi@efficios.com>
2026-10-19 19:36   ` [PATCH 10/18] sim/erc32: fix -Wunused-but-set-global errors Simon Marchi
     [not found] ` <20261019193231.1708375-12-simon.marchi@efficios.com>
2026-10-19 19:36   ` Simon Marchi [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50618a5e-0c68-4380-b2b3-32f3ed487b67@efficios.com \
    --to=simon.marchi@efficios.com \
    --cc=binutils@sourceware.org \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox