[binutils-gdb] gdb: change gdbarch_register_reggroup_p to return bool

Simon Marchi simark@sourceware.org
Mon Mar 9 17:29:06 GMT 2026


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4a857b35933e1fe514877ab6b0a1fcf1ffa32546

commit 4a857b35933e1fe514877ab6b0a1fcf1ffa32546
Author: Simon Marchi <simon.marchi@efficios.com>
Date:   Fri Feb 27 15:05:12 2026 -0500

    gdb: change gdbarch_register_reggroup_p to return bool
    
    Change-Id: I1052345c4e537c5dfba37e175f21c8d0c5db2fc3
    Approved-By: Tom Tromey <tom@tromey.com>

Diff:
---
 gdb/aarch64-tdep.c        |  4 ++--
 gdb/alpha-tdep.c          | 10 +++++-----
 gdb/amd64-linux-tdep.c    |  2 +-
 gdb/amdgpu-tdep.c         |  2 +-
 gdb/arm-tdep.c            |  2 +-
 gdb/csky-tdep.c           | 22 +++++++++++-----------
 gdb/gdbarch-gen.c         |  2 +-
 gdb/gdbarch-gen.h         |  4 ++--
 gdb/gdbarch_components.py |  2 +-
 gdb/i386-linux-tdep.c     |  4 ++--
 gdb/i386-tdep.c           | 10 +++++-----
 gdb/i386-tdep.h           |  4 ++--
 gdb/ia64-tdep.c           |  6 +++---
 gdb/lm32-tdep.c           |  2 +-
 gdb/loongarch-tdep.c      | 14 +++++++-------
 gdb/m32c-tdep.c           | 16 ++++++++--------
 gdb/m68hc11-tdep.c        |  2 +-
 gdb/mep-tdep.c            |  6 +++---
 gdb/mips-tdep.c           | 19 ++++++++-----------
 gdb/msp430-tdep.c         |  4 ++--
 gdb/nds32-tdep.c          |  4 ++--
 gdb/reggroups.c           | 22 +++++++++-------------
 gdb/reggroups.h           |  4 ++--
 gdb/riscv-tdep.c          | 30 +++++++++++++++---------------
 gdb/rl78-tdep.c           |  8 ++++----
 gdb/rs6000-tdep.c         |  4 ++--
 gdb/s390-tdep.c           |  6 +++---
 gdb/sh-tdep.c             | 14 +++++++-------
 gdb/target-descriptions.c |  2 +-
 gdb/xtensa-tdep.c         | 10 +++++-----
 30 files changed, 117 insertions(+), 124 deletions(-)

diff --git a/gdb/aarch64-tdep.c b/gdb/aarch64-tdep.c
index dad4598617f..35a70396034 100644
--- a/gdb/aarch64-tdep.c
+++ b/gdb/aarch64-tdep.c
@@ -3133,7 +3133,7 @@ aarch64_pseudo_register_type (struct gdbarch *gdbarch, int regnum)
 
 /* Implement the "pseudo_register_reggroup_p" tdesc_arch_data method.  */
 
-static int
+static bool
 aarch64_pseudo_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				    const struct reggroup *group)
 {
@@ -3160,7 +3160,7 @@ aarch64_pseudo_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
     return group == all_reggroup || group == vector_reggroup;
   /* RA_STATE is used for unwinding only.  Do not assign it to any groups.  */
   if (tdep->has_pauth () && regnum == tdep->ra_sign_state_regnum)
-    return 0;
+    return false;
 
   return group == all_reggroup;
 }
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
index 82dd87a70c1..cb4b9d69c71 100644
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -114,28 +114,28 @@ alpha_cannot_store_register (struct gdbarch *gdbarch, int regno)
 
 /* Is REGNUM a member of REGGROUP?  */
 
-static int
+static bool
 alpha_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			   const struct reggroup *group)
 {
   /* Filter out any registers eliminated, but whose regnum is
      reserved for backward compatibility, e.g. the vfp.  */
   if (*gdbarch_register_name (gdbarch, regnum) == '\0')
-    return 0;
+    return false;
 
   if (group == all_reggroup)
-    return 1;
+    return true;
 
   /* Zero should not be saved or restored.  Technically it is a general
      register (just as $f31 would be a float if we represented it), but
      there's no point displaying it during "info regs", so leave it out
      of all groups except for "all".  */
   if (regnum == ALPHA_ZERO_REGNUM)
-    return 0;
+    return false;
 
   /* All other registers are saved and restored.  */
   if (group == save_reggroup || group == restore_reggroup)
-    return 1;
+    return true;
 
   /* All other groups are non-overlapping.  */
 
diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
index 77c6976e071..63992817dc3 100644
--- a/gdb/amd64-linux-tdep.c
+++ b/gdb/amd64-linux-tdep.c
@@ -292,7 +292,7 @@ static int amd64_linux_sc_reg_offset[] =
   -1				/* %gs */
 };
 
-static int
+static bool
 amd64_linux_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				 const struct reggroup *group)
 {
diff --git a/gdb/amdgpu-tdep.c b/gdb/amdgpu-tdep.c
index 2f5c613cb59..b0d6023a410 100644
--- a/gdb/amdgpu-tdep.c
+++ b/gdb/amdgpu-tdep.c
@@ -817,7 +817,7 @@ amdgpu_register_type (struct gdbarch *gdbarch, int regnum)
   return tdep->register_types[regnum];
 }
 
-static int
+static bool
 amdgpu_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			    const reggroup *group)
 {
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 727848fcf57..cabba3d061a 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -9955,7 +9955,7 @@ arm_elf_osabi_sniffer (bfd *abfd)
   return osabi;
 }
 
-static int
+static bool
 arm_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			 const struct reggroup *group)
 {
diff --git a/gdb/csky-tdep.c b/gdb/csky-tdep.c
index a6f03add248..33b99bb35e6 100644
--- a/gdb/csky-tdep.c
+++ b/gdb/csky-tdep.c
@@ -2363,17 +2363,17 @@ csky_add_reggroups (struct gdbarch *gdbarch)
 
 /* Return the groups that a CSKY register can be categorised into.  */
 
-static int
+static bool
 csky_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *reggroup)
 {
   int raw_p;
 
   if (gdbarch_register_name (gdbarch, regnum)[0] == '\0')
-    return 0;
+    return false;
 
   if (reggroup == all_reggroup)
-    return 1;
+    return true;
 
   raw_p = regnum < gdbarch_num_regs (gdbarch);
   if (reggroup == save_reggroup || reggroup == restore_reggroup)
@@ -2385,41 +2385,41 @@ csky_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
        || (regnum == CSKY_CR0_REGNUM)
        || (regnum == CSKY_EPSR_REGNUM))
       && (reggroup == general_reggroup))
-    return 1;
+    return true;
 
   if (((regnum == CSKY_PC_REGNUM)
        || ((regnum >= CSKY_CR0_REGNUM)
 	   && (regnum <= CSKY_CR0_REGNUM + 30)))
       && (reggroup == cr_reggroup))
-    return 2;
+    return true;
 
   if ((((regnum >= CSKY_VR0_REGNUM) && (regnum <= CSKY_VR0_REGNUM + 15))
        || ((regnum >= CSKY_FCR_REGNUM)
 	   && (regnum <= CSKY_FCR_REGNUM + 2)))
       && (reggroup == vr_reggroup))
-    return 3;
+    return true;
 
   if (((regnum >= CSKY_MMU_REGNUM) && (regnum <= CSKY_MMU_REGNUM + 8))
       && (reggroup == mmu_reggroup))
-    return 4;
+    return true;
 
   if (((regnum >= CSKY_PROFCR_REGNUM)
        && (regnum <= CSKY_PROFCR_REGNUM + 48))
       && (reggroup == prof_reggroup))
-    return 5;
+    return true;
 
   if ((((regnum >= CSKY_FR0_REGNUM) && (regnum <= CSKY_FR0_REGNUM + 15))
        || ((regnum >= CSKY_FCR_REGNUM) && (regnum <= CSKY_FCR_REGNUM + 2)))
       && (reggroup == fr_reggroup))
-    return 6;
+    return true;
 
   if (tdesc_has_registers (gdbarch_target_desc (gdbarch)))
     {
       if (tdesc_register_in_reggroup_p (gdbarch, regnum, reggroup) > 0)
-	return 7;
+	return true;
     }
 
-  return 0;
+  return false;
 }
 
 /* Implement the dwarf2_reg_to_regnum gdbarch method.  */
diff --git a/gdb/gdbarch-gen.c b/gdb/gdbarch-gen.c
index d25bcca5481..db894c73e8e 100644
--- a/gdb/gdbarch-gen.c
+++ b/gdb/gdbarch-gen.c
@@ -3584,7 +3584,7 @@ set_gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch,
   gdbarch->address_class_name_to_type_flags = address_class_name_to_type_flags;
 }
 
-int
+bool
 gdbarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup)
 {
   gdb_assert (gdbarch != NULL);
diff --git a/gdb/gdbarch-gen.h b/gdb/gdbarch-gen.h
index 7fd40c9dc90..87367628cba 100644
--- a/gdb/gdbarch-gen.h
+++ b/gdb/gdbarch-gen.h
@@ -927,8 +927,8 @@ extern void set_gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarc
 
 /* Is a register in a group */
 
-typedef int (gdbarch_register_reggroup_p_ftype) (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup);
-extern int gdbarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup);
+typedef bool (gdbarch_register_reggroup_p_ftype) (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup);
+extern bool gdbarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup);
 extern void set_gdbarch_register_reggroup_p (struct gdbarch *gdbarch, gdbarch_register_reggroup_p_ftype *register_reggroup_p);
 
 /* Fetch the pointer to the ith function argument. */
diff --git a/gdb/gdbarch_components.py b/gdb/gdbarch_components.py
index 50be82c578d..ad874958d90 100644
--- a/gdb/gdbarch_components.py
+++ b/gdb/gdbarch_components.py
@@ -1585,7 +1585,7 @@ Method(
     comment="""
 Is a register in a group
 """,
-    type="int",
+    type="bool",
     name="register_reggroup_p",
     params=[("int", "regnum"), ("const struct reggroup *", "reggroup")],
     predefault="default_register_reggroup_p",
diff --git a/gdb/i386-linux-tdep.c b/gdb/i386-linux-tdep.c
index b122e5fac83..4a4daabbeaa 100644
--- a/gdb/i386-linux-tdep.c
+++ b/gdb/i386-linux-tdep.c
@@ -53,9 +53,9 @@
 #include "arch/i386.h"
 #include "target-descriptions.h"
 
-/* Return non-zero, when the register is in the corresponding register
+/* Return true when the register is in the corresponding register
    group.  Put the LINUX_ORIG_EAX register in the system group.  */
-static int
+static bool
 i386_linux_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				const struct reggroup *group)
 {
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 4ef9837570b..b74b8bd3994 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -4261,7 +4261,7 @@ i386_add_reggroups (struct gdbarch *gdbarch)
   reggroup_add (gdbarch, i386_mmx_reggroup);
 }
 
-int
+bool
 i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *group)
 {
@@ -4274,13 +4274,13 @@ i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
   /* Don't include pseudo registers, except for MMX, in any register
      groups.  */
   if (i386_byte_regnum_p (gdbarch, regnum))
-    return 0;
+    return false;
 
   if (i386_word_regnum_p (gdbarch, regnum))
-    return 0;
+    return false;
 
   if (i386_dword_regnum_p (gdbarch, regnum))
-    return 0;
+    return false;
 
   mmx_regnum_p = i386_mmx_regnum_p (gdbarch, regnum);
   if (group == i386_mmx_reggroup)
@@ -4327,7 +4327,7 @@ i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 	  || ymmh_regnum_p
 	  || ymmh_avx512_regnum_p
 	  || zmmh_regnum_p))
-    return 0;
+    return false;
 
   if (group == general_reggroup)
     return (!fp_regnum_p
diff --git a/gdb/i386-tdep.h b/gdb/i386-tdep.h
index ee33b8b530d..21f9ed42a17 100644
--- a/gdb/i386-tdep.h
+++ b/gdb/i386-tdep.h
@@ -420,8 +420,8 @@ extern CORE_ADDR i386_thiscall_push_dummy_call (struct gdbarch *gdbarch,
 extern int i386_sigtramp_p (const frame_info_ptr &this_frame);
 
 /* Return non-zero if REGNUM is a member of the specified group.  */
-extern int i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
-				     const struct reggroup *group);
+extern bool i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
+				      const struct reggroup *group);
 
 /* Supply register REGNUM from the general-purpose register set REGSET
    to register cache REGCACHE.  If REGNUM is -1, do this for all
diff --git a/gdb/ia64-tdep.c b/gdb/ia64-tdep.c
index 7421fbb37d3..a07c3ea30ba 100644
--- a/gdb/ia64-tdep.c
+++ b/gdb/ia64-tdep.c
@@ -323,7 +323,7 @@ ia64_ext_type (struct gdbarch *gdbarch)
   return tdep->ia64_ext_type;
 }
 
-static int
+static bool
 ia64_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *group)
 {
@@ -331,7 +331,7 @@ ia64_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
   int float_p;
   int raw_p;
   if (group == all_reggroup)
-    return 1;
+    return true;
   vector_p = register_type (gdbarch, regnum)->is_vector ();
   float_p = register_type (gdbarch, regnum)->code () == TYPE_CODE_FLT;
   raw_p = regnum < NUM_IA64_RAW_REGS;
@@ -343,7 +343,7 @@ ia64_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
     return (!vector_p && !float_p);
   if (group == save_reggroup || group == restore_reggroup)
     return raw_p;
-  return 0;
+  return false;
 }
 
 static const char *
diff --git a/gdb/lm32-tdep.c b/gdb/lm32-tdep.c
index 2f7c21d6a21..410d2ca71dc 100644
--- a/gdb/lm32-tdep.c
+++ b/gdb/lm32-tdep.c
@@ -65,7 +65,7 @@ struct lm32_frame_cache
 
 /* Return whether a given register is in a given group.  */
 
-static int
+static bool
 lm32_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *group)
 {
diff --git a/gdb/loongarch-tdep.c b/gdb/loongarch-tdep.c
index 6b706195e9e..225b1abb703 100644
--- a/gdb/loongarch-tdep.c
+++ b/gdb/loongarch-tdep.c
@@ -1970,35 +1970,35 @@ loongarch_find_default_target_description (const struct gdbarch_info info)
   return loongarch_lookup_target_description (features);
 }
 
-static int
+static bool
 loongarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			       const struct reggroup *group)
 {
   if (gdbarch_register_name (gdbarch, regnum) == NULL
       || *gdbarch_register_name (gdbarch, regnum) == '\0')
-    return 0;
+    return false;
 
-  int raw_p = regnum < gdbarch_num_regs (gdbarch);
+  bool raw_p = regnum < gdbarch_num_regs (gdbarch);
 
   if (group == save_reggroup || group == restore_reggroup)
     return raw_p;
 
   if (group == all_reggroup)
-    return 1;
+    return true;
 
   if (0 <= regnum && regnum <= LOONGARCH_BADV_REGNUM)
     return group == general_reggroup;
 
   /* Only ORIG_A0, PC, BADV in general_reggroup */
   if (group == general_reggroup)
-    return 0;
+    return false;
 
   if (LOONGARCH_FIRST_FP_REGNUM <= regnum && regnum <= LOONGARCH_FCSR_REGNUM)
     return group == float_reggroup;
 
   /* Only $fx / $fccx / $fcsr in float_reggroup */
   if (group == float_reggroup)
-    return 0;
+    return false;
 
   if (LOONGARCH_FIRST_LSX_REGNUM <= regnum
      && regnum < LOONGARCH_FIRST_LASX_REGNUM + LOONGARCH_LINUX_NUM_LASXREGSET)
@@ -2006,7 +2006,7 @@ loongarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 
   /* Only $vrx / $xrx in vector_reggroup */
   if (group == vector_reggroup)
-    return 0;
+    return false;
 
   int ret = tdesc_register_in_reggroup_p (gdbarch, regnum, group);
   if (ret != -1)
diff --git a/gdb/m32c-tdep.c b/gdb/m32c-tdep.c
index 308e2e15ac0..ee4665fe1ce 100644
--- a/gdb/m32c-tdep.c
+++ b/gdb/m32c-tdep.c
@@ -252,7 +252,7 @@ m32c_debug_info_reg_to_regnum (struct gdbarch *gdbarch, int reg_nr)
 }
 
 
-static int
+static bool
 m32c_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *group)
 {
@@ -261,22 +261,22 @@ m32c_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 
   /* The anonymous raw registers aren't in any groups.  */
   if (! reg->name)
-    return 0;
+    return false;
 
   if (group == all_reggroup)
-    return 1;
+    return true;
 
   if (group == general_reggroup
       && reg->general_p)
-    return 1;
+    return true;
 
   if (group == m32c_dma_reggroup
       && reg->dma_p)
-    return 1;
+    return true;
 
   if (group == system_reggroup
       && reg->system_p)
-    return 1;
+    return true;
 
   /* Since the m32c DWARF register numbers refer to cooked registers, not
      raw registers, and frame_pop depends on the save and restore groups
@@ -286,9 +286,9 @@ m32c_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
   if ((group == save_reggroup
        || group == restore_reggroup)
       && reg->save_restore_p)
-    return 1;
+    return true;
 
-  return 0;
+  return false;
 }
 
 
diff --git a/gdb/m68hc11-tdep.c b/gdb/m68hc11-tdep.c
index f131b921dfe..14a9c93e0e3 100644
--- a/gdb/m68hc11-tdep.c
+++ b/gdb/m68hc11-tdep.c
@@ -1358,7 +1358,7 @@ m68hc11_add_reggroups (struct gdbarch *gdbarch)
   reggroup_add (gdbarch, m68hc11_soft_reggroup);
 }
 
-static int
+static bool
 m68hc11_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			     const struct reggroup *group)
 {
diff --git a/gdb/mep-tdep.c b/gdb/mep-tdep.c
index e4a0408836d..9f8e8ebca38 100644
--- a/gdb/mep-tdep.c
+++ b/gdb/mep-tdep.c
@@ -1029,7 +1029,7 @@ static const reggroup *mep_cr_reggroup;  /* coprocessor general-purpose */
 static const reggroup *mep_ccr_reggroup; /* coprocessor control */
 
 
-static int
+static bool
 mep_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			 const struct reggroup *group)
 {
@@ -1038,7 +1038,7 @@ mep_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
     const char *name = mep_register_name (gdbarch, regnum);
 
     if (! name || name[0] == '\0')
-      return 0;
+      return false;
   }
 
   /* We could separate the GPRs and the CSRs.  Toshiba has approved of
@@ -1076,7 +1076,7 @@ mep_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
   else if (group == mep_ccr_reggroup)
     return IS_CCR_REGNUM (regnum);
   else
-    return 0;
+    return false;
 }
 
 
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index c34c4d6c21f..f1cda0b0935 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -699,24 +699,21 @@ mips_register_name (struct gdbarch *gdbarch, int regno)
 
 /* Return the groups that a MIPS register can be categorised into.  */
 
-static int
+static bool
 mips_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *reggroup)
 {
-  int vector_p;
-  int float_p;
-  int raw_p;
   int rawnum = regnum % gdbarch_num_regs (gdbarch);
   int pseudo = regnum / gdbarch_num_regs (gdbarch);
   if (reggroup == all_reggroup)
     return pseudo;
-  vector_p = register_type (gdbarch, regnum)->is_vector ();
-  float_p = register_type (gdbarch, regnum)->code () == TYPE_CODE_FLT;
+  bool vector_p = register_type (gdbarch, regnum)->is_vector ();
+  bool float_p = register_type (gdbarch, regnum)->code () == TYPE_CODE_FLT;
   /* FIXME: cagney/2003-04-13: Can't yet use gdbarch_num_regs
      (gdbarch), as not all architectures are multi-arch.  */
-  raw_p = rawnum < gdbarch_num_regs (gdbarch);
+  bool raw_p = rawnum < gdbarch_num_regs (gdbarch);
   if (gdbarch_register_name (gdbarch, regnum)[0] == '\0')
-    return 0;
+    return false;
   if (reggroup == float_reggroup)
     return float_p && pseudo;
   if (reggroup == vector_reggroup)
@@ -731,14 +728,14 @@ mips_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
   /* Restore the same pseudo register.  */
   if (reggroup == restore_reggroup)
     return raw_p && pseudo;
-  return 0;
+  return false;
 }
 
 /* Return the groups that a MIPS register can be categorised into.
    This version is only used if we have a target description which
    describes real registers (and their groups).  */
 
-static int
+static bool
 mips_tdesc_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				const struct reggroup *reggroup)
 {
@@ -754,7 +751,7 @@ mips_tdesc_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
      strange; if we have 64 bits, we should save and restore all
      64 bits.  But this is hard and has little benefit.  */
   if (!pseudo)
-    return 0;
+    return false;
 
   ret = tdesc_register_in_reggroup_p (gdbarch, rawnum, reggroup);
   if (ret != -1)
diff --git a/gdb/msp430-tdep.c b/gdb/msp430-tdep.c
index 190959adf81..7b28bec290f 100644
--- a/gdb/msp430-tdep.c
+++ b/gdb/msp430-tdep.c
@@ -204,12 +204,12 @@ msp430_register_name (struct gdbarch *gdbarch, int regnr)
 
 /* Implement the "register_reggroup_p" gdbarch method.  */
 
-static int
+static bool
 msp430_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			    const struct reggroup *group)
 {
   if (group == all_reggroup)
-    return 1;
+    return true;
 
   /* All other registers are saved and restored.  */
   if (group == save_reggroup || group == restore_reggroup)
diff --git a/gdb/nds32-tdep.c b/gdb/nds32-tdep.c
index e2efe4fcdda..90ed8355775 100644
--- a/gdb/nds32-tdep.c
+++ b/gdb/nds32-tdep.c
@@ -359,7 +359,7 @@ nds32_add_reggroups (struct gdbarch *gdbarch)
 
 /* Implement the "register_reggroup_p" gdbarch method.  */
 
-static int
+static bool
 nds32_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			   const struct reggroup *reggroup)
 {
@@ -368,7 +368,7 @@ nds32_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
   int ret;
 
   if (reggroup == all_reggroup)
-    return 1;
+    return true;
 
   /* General reggroup contains only GPRs and PC.  */
   if (reggroup == general_reggroup)
diff --git a/gdb/reggroups.c b/gdb/reggroups.c
index cf377ddee76..d5af2ce0736 100644
--- a/gdb/reggroups.c
+++ b/gdb/reggroups.c
@@ -139,23 +139,19 @@ gdbarch_reggroups (struct gdbarch *gdbarch)
 
 /* See reggroups.h.  */
 
-int
+bool
 default_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			     const struct reggroup *group)
 {
-  int vector_p;
-  int float_p;
-  int raw_p;
-
   if (*gdbarch_register_name (gdbarch, regnum) == '\0')
-    return 0;
+    return false;
   if (group == all_reggroup)
-    return 1;
-  vector_p = register_type (gdbarch, regnum)->is_vector ();
-  float_p = (register_type (gdbarch, regnum)->code () == TYPE_CODE_FLT
-	     || (register_type (gdbarch, regnum)->code ()
-		 == TYPE_CODE_DECFLOAT));
-  raw_p = regnum < gdbarch_num_regs (gdbarch);
+    return true;
+  bool vector_p = register_type (gdbarch, regnum)->is_vector ();
+  bool float_p = (register_type (gdbarch, regnum)->code () == TYPE_CODE_FLT
+		  || (register_type (gdbarch, regnum)->code ()
+		      == TYPE_CODE_DECFLOAT));
+  bool raw_p = regnum < gdbarch_num_regs (gdbarch);
   if (group == float_reggroup)
     return float_p;
   if (group == vector_reggroup)
@@ -164,7 +160,7 @@ default_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
     return (!vector_p && !float_p);
   if (group == save_reggroup || group == restore_reggroup)
     return raw_p;
-  return 0;
+  return false;
 }
 
 /* See reggroups.h.  */
diff --git a/gdb/reggroups.h b/gdb/reggroups.h
index 319ab462e45..47824d5427e 100644
--- a/gdb/reggroups.h
+++ b/gdb/reggroups.h
@@ -95,7 +95,7 @@ extern const reggroup *reggroup_find (struct gdbarch *gdbarch,
 				      const char *name);
 
 /* Is REGNUM a member of REGGROUP?  */
-extern int default_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
-					const struct reggroup *reggroup);
+extern bool default_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
+					 const struct reggroup *reggroup);
 
 #endif /* GDB_REGGROUPS_H */
diff --git a/gdb/riscv-tdep.c b/gdb/riscv-tdep.c
index 452859b45ac..1d11ce50e86 100644
--- a/gdb/riscv-tdep.c
+++ b/gdb/riscv-tdep.c
@@ -1392,7 +1392,7 @@ riscv_is_unknown_csr (struct gdbarch *gdbarch, int regnum)
 /* Implement the register_reggroup_p gdbarch method.  Is REGNUM a member
    of REGGROUP?  */
 
-static int
+static bool
 riscv_register_reggroup_p (struct gdbarch  *gdbarch, int regnum,
 			   const struct reggroup *reggroup)
 {
@@ -1401,7 +1401,7 @@ riscv_register_reggroup_p (struct gdbarch  *gdbarch, int regnum,
   /* Used by 'info registers' and 'info registers <groupname>'.  */
 
   if (gdbarch_register_name (gdbarch, regnum)[0] == '\0')
-    return 0;
+    return false;
 
   if (regnum > RISCV_LAST_REGNUM && regnum < gdbarch_num_regs (gdbarch))
     {
@@ -1418,9 +1418,9 @@ riscv_register_reggroup_p (struct gdbarch  *gdbarch, int regnum,
 	{
 	  if (reggroup == restore_reggroup || reggroup == save_reggroup
 	       || reggroup == general_reggroup)
-	    return 0;
+	    return false;
 	  else if (reggroup == system_reggroup || reggroup == csr_reggroup)
-	    return 1;
+	    return true;
 	}
 
       /* This is some other unknown register from the target description.
@@ -1436,10 +1436,10 @@ riscv_register_reggroup_p (struct gdbarch  *gdbarch, int regnum,
   if (reggroup == all_reggroup)
     {
       if (regnum < RISCV_FIRST_CSR_REGNUM || regnum >= RISCV_PRIV_REGNUM)
-	return 1;
+	return true;
       if (riscv_is_regnum_a_named_csr (regnum))
-	return 1;
-      return 0;
+	return true;
+      return false;
     }
   else if (reggroup == float_reggroup)
     return (riscv_is_fp_regno_p (regnum)
@@ -1461,17 +1461,17 @@ riscv_register_reggroup_p (struct gdbarch  *gdbarch, int regnum,
   else if (reggroup == system_reggroup || reggroup == csr_reggroup)
     {
       if (regnum == RISCV_PRIV_REGNUM)
-	return 1;
+	return true;
       if (regnum < RISCV_FIRST_CSR_REGNUM || regnum > RISCV_LAST_CSR_REGNUM)
-	return 0;
+	return false;
       if (riscv_is_regnum_a_named_csr (regnum))
-	return 1;
-      return 0;
+	return true;
+      return false;
     }
   else if (reggroup == vector_reggroup)
     return (regnum >= RISCV_V0_REGNUM && regnum <= RISCV_V31_REGNUM);
   else
-    return 0;
+    return false;
 }
 
 /* Return the name for pseudo-register REGNUM for GDBARCH.  */
@@ -1502,10 +1502,10 @@ riscv_pseudo_register_type (struct gdbarch *gdbarch, int regnum)
     gdb_assert_not_reached ("unknown pseudo register number %d", regnum);
 }
 
-/* Return true (non-zero) if pseudo-register REGNUM from GDBARCH is a
-   member of REGGROUP, otherwise return false (zero).  */
+/* Return true if pseudo-register REGNUM from GDBARCH is a
+   member of REGGROUP, otherwise return false.  */
 
-static int
+static bool
 riscv_pseudo_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				  const struct reggroup *reggroup)
 {
diff --git a/gdb/rl78-tdep.c b/gdb/rl78-tdep.c
index 07cdce13ebc..ead2b8494c5 100644
--- a/gdb/rl78-tdep.c
+++ b/gdb/rl78-tdep.c
@@ -585,12 +585,12 @@ rl78_g10_register_name (struct gdbarch *gdbarch, int regnr)
 
 /* Implement the "register_reggroup_p" gdbarch method.  */
 
-static int
+static bool
 rl78_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			  const struct reggroup *group)
 {
   if (group == all_reggroup)
-    return 1;
+    return true;
 
   /* All other registers are saved and restored.  */
   if (group == save_reggroup || group == restore_reggroup)
@@ -601,9 +601,9 @@ rl78_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 	   && regnum != RL78_RAW_PC_REGNUM)
 	  || regnum == RL78_SP_REGNUM
 	  || regnum == RL78_PC_REGNUM)
-	return 1;
+	return true;
       else
-	return 0;
+	return false;
     }
 
   if ((RL78_BANK0_R0_REGNUM <= regnum && regnum <= RL78_BANK3_R7_REGNUM)
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index a68309d2a86..d5efd936c9e 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -2644,14 +2644,14 @@ rs6000_pseudo_register_type (struct gdbarch *gdbarch, int regnum)
    since the raw vrX registers will already show in these cases.  For
    other pseudo-registers we use the default membership function.  */
 
-static int
+static bool
 rs6000_pseudo_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				   const struct reggroup *group)
 {
   ppc_gdbarch_tdep *tdep = gdbarch_tdep<ppc_gdbarch_tdep> (gdbarch);
 
   if (IS_V_ALIAS_PSEUDOREG (tdep, regnum))
-    return 0;
+    return false;
   else
     return default_register_reggroup_p (gdbarch, regnum, group);
 }
diff --git a/gdb/s390-tdep.c b/gdb/s390-tdep.c
index 5b17d5da89b..07793c4809e 100644
--- a/gdb/s390-tdep.c
+++ b/gdb/s390-tdep.c
@@ -1232,7 +1232,7 @@ regnum_is_gpr_full (s390_gdbarch_tdep *tdep, int regnum)
 /* Check whether REGNUM indicates a full vector register (v0-v15).
    These pseudo-registers are composed of f0-f15 and v0l-v15l.  */
 
-static int
+static bool
 regnum_is_vxr_full (s390_gdbarch_tdep *tdep, int regnum)
 {
   return (tdep->v0_full_regnum != -1
@@ -1477,7 +1477,7 @@ s390_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache,
 
 /* Implement pseudo_register_reggroup_p tdesc method.  */
 
-static int
+static bool
 s390_pseudo_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 				 const struct reggroup *group)
 {
@@ -1498,7 +1498,7 @@ s390_pseudo_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
     return regnum_is_vxr_full (tdep, regnum);
 
   if (group == general_reggroup && regnum_is_vxr_full (tdep, regnum))
-    return 0;
+    return false;
 
   return default_register_reggroup_p (gdbarch, regnum, group);
 }
diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c
index c74114b2687..0b6dc111194 100644
--- a/gdb/sh-tdep.c
+++ b/gdb/sh-tdep.c
@@ -1469,24 +1469,24 @@ sh_default_register_type (struct gdbarch *gdbarch, int reg_nr)
    The default code in reggroup.c doesn't identify system registers, some
    float registers or any of the vector registers.
    TODO: sh2a and dsp registers.  */
-static int
+static bool
 sh_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
 			const struct reggroup *reggroup)
 {
   if (*gdbarch_register_name (gdbarch, regnum) == '\0')
-    return 0;
+    return false;
 
   if (reggroup == float_reggroup
       && (regnum == FPUL_REGNUM
 	  || regnum == FPSCR_REGNUM))
-    return 1;
+    return true;
 
   if (regnum >= FV0_REGNUM && regnum <= FV_LAST_REGNUM)
     {
       if (reggroup == vector_reggroup || reggroup == float_reggroup)
-	return 1;
+	return true;
       if (reggroup == general_reggroup)
-	return 0;
+	return false;
     }
 
   if (regnum == VBR_REGNUM
@@ -1496,9 +1496,9 @@ sh_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
       || regnum == SPC_REGNUM)
     {
       if (reggroup == system_reggroup)
-	return 1;
+	return true;
       if (reggroup == general_reggroup)
-	return 0;
+	return false;
     }
 
   /* The default code can cope with any other registers.  */
diff --git a/gdb/target-descriptions.c b/gdb/target-descriptions.c
index 3464af80dec..e1821fe7114 100644
--- a/gdb/target-descriptions.c
+++ b/gdb/target-descriptions.c
@@ -956,7 +956,7 @@ tdesc_register_in_reggroup_p (struct gdbarch *gdbarch, int regno,
    group specified go to the default reggroup function and are handled
    by type.  */
 
-static int
+static bool
 tdesc_register_reggroup_p (struct gdbarch *gdbarch, int regno,
 			   const struct reggroup *reggroup)
 {
diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c
index 9ec5653e968..3b70678b167 100644
--- a/gdb/xtensa-tdep.c
+++ b/gdb/xtensa-tdep.c
@@ -759,7 +759,7 @@ xtensa_coprocessor_register_group (const struct reggroup *group)
 #define SAVE_REST_VALID	(XTENSA_REGISTER_FLAGS_READABLE \
 			| XTENSA_REGISTER_FLAGS_WRITABLE)
 
-static int
+static bool
 xtensa_register_reggroup_p (struct gdbarch *gdbarch,
 			    int regnum,
 			    const struct reggroup *group)
@@ -773,15 +773,15 @@ xtensa_register_reggroup_p (struct gdbarch *gdbarch,
   if (group == save_reggroup)
     /* Every single register should be included into the list of registers
        to be watched for changes while using -data-list-changed-registers.  */
-    return 1;
+    return true;
 
   /* First, skip registers that are not visible to this target
      (unknown and unmapped registers when not using ISS).  */
 
   if (type == xtRegisterTypeUnmapped || type == xtRegisterTypeUnknown)
-    return 0;
+    return false;
   if (group == all_reggroup)
-    return 1;
+    return true;
   if (group == xtensa_ar_reggroup)
     return rg & xtRegisterGroupAddrReg;
   if (group == xtensa_user_reggroup)
@@ -801,7 +801,7 @@ xtensa_register_reggroup_p (struct gdbarch *gdbarch,
   if (cp_number >= 0)
     return rg & (xtRegisterGroupCP0 << cp_number);
   else
-    return 1;
+    return true;
 }


More information about the Gdb-cvs mailing list