[1/3] x86/disasm: "annotate immediates" flag should not be global

Message ID a660ef39-7af1-4897-94a9-8501ad89c075@suse.com
State New
Headers
Series x86/disasm: adjustments to insn annotations |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_binutils_build--master-arm success Build passed
linaro-tcwg-bot/tcwg_binutils_build--master-aarch64 success Build passed
linaro-tcwg-bot/tcwg_binutils_check--master-aarch64 success Test passed
linaro-tcwg-bot/tcwg_binutils_check--master-arm success Test passed

Commit Message

Jan Beulich May 15, 2026, 1:07 p.m. UTC
  With disassembly functions having been made thread-safe, no new global
state variables should be introduced.
  

Patch

--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -41,8 +41,6 @@ 
 
 typedef struct instr_info instr_info;
 
-static bool annotate_immediates = false;
-
 static bool dofloat (instr_info *, int);
 static int putop (instr_info *, const char *, int);
 static void oappend_with_style (instr_info *, const char *,
@@ -277,6 +275,8 @@  struct instr_info
   char separator_char;
   char scale_char;
 
+  bool annotate_immediates;
+
   enum x86_64_isa isa64;
 };
 
@@ -9833,9 +9833,8 @@  print_insn (bfd_vma pc, disassemble_info
 	}
       else if (startswith (p, "suffix"))
 	priv.orig_sizeflag |= SUFFIX_ALWAYS;
-
       else if (startswith (p, "annotate"))
-	annotate_immediates = true;
+	ins.annotate_immediates = true;
 
       p = strchr (p, ',');
       if (p != NULL)
@@ -11680,7 +11679,7 @@  oappend_immediate (instr_info *ins, bfd_
   print_operand_value (ins, imm, dis_style_immediate);
 
   /* Determine if we can display some more information about this immediate.  */
-  if (! annotate_immediates
+  if (! ins->annotate_immediates
       /* Don't bother with zero, even if there is symbol associated with it.  */
       || imm == 0
       /* For the next tests we need a BFD.  If we do not have one then do not proceed.  */