gdb: more 'const' in gdb/reggroups.{c,h}
authorAndrew Burgess <aburgess@redhat.com>
Thu, 31 Mar 2022 15:32:50 +0000 (16:32 +0100)
committerAndrew Burgess <aburgess@redhat.com>
Thu, 7 Apr 2022 15:01:18 +0000 (16:01 +0100)
Convert the reggroup_new and reggroup_gdbarch_new functions to return
a 'const regggroup *', and fix up all the fallout.

There should be no user visible changes after this commit.

gdb/csky-tdep.c
gdb/i386-tdep.c
gdb/m32c-tdep.c
gdb/m68hc11-tdep.c
gdb/mep-tdep.c
gdb/nds32-tdep.c
gdb/reggroups.c
gdb/reggroups.h
gdb/riscv-tdep.c
gdb/xtensa-tdep.c

index feb416a2406847d2f821f3ddc80f119ab87af89b..3712409dbe831f3d2d956613d8a2e6d1f21f5297 100644 (file)
 /* Control debugging information emitted in this file.  */
 static bool csky_debug = false;
 
-static struct reggroup *cr_reggroup;
-static struct reggroup *fr_reggroup;
-static struct reggroup *vr_reggroup;
-static struct reggroup *mmu_reggroup;
-static struct reggroup *prof_reggroup;
+static const reggroup *cr_reggroup;
+static const reggroup *fr_reggroup;
+static const reggroup *vr_reggroup;
+static const reggroup *mmu_reggroup;
+static const reggroup *prof_reggroup;
 
 /* Convenience function to print debug messages in prologue analysis.  */
 
index 99a81b98da113cafa1047487bcd580d3bc224f7a..8501e12e24119bb9b546e2d193d6b4db3a2a6018 100644 (file)
@@ -4531,8 +4531,8 @@ i386_svr4_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 /* i386 register groups.  In addition to the normal groups, add "mmx"
    and "sse".  */
 
-static struct reggroup *i386_sse_reggroup;
-static struct reggroup *i386_mmx_reggroup;
+static const reggroup *i386_sse_reggroup;
+static const reggroup *i386_mmx_reggroup;
 
 static void
 i386_init_reggroups (void)
index 5a767c9ed523fe28a38612c14fdfee7dcec787fb..55ef5a551f8bb8fef59019d3423c5f27a11eb2a3 100644 (file)
@@ -35,7 +35,7 @@
 \f
 /* The m32c tdep structure.  */
 
-static struct reggroup *m32c_dma_reggroup;
+static const reggroup *m32c_dma_reggroup;
 
 /* The type of a function that moves the value of REG between CACHE or
    BUF --- in either direction.  */
index 9d978d8801804f8fb5cb03ce115e7a521f0ba1de..5c1f20415c8c0827730cbd15709465ab0913325d 100644 (file)
@@ -1346,8 +1346,8 @@ m68hc11_elf_make_msymbol_special (asymbol *sym, struct minimal_symbol *msym)
 /* 68HC11/68HC12 register groups.
    Identify real hard registers and soft registers used by gcc.  */
 
-static struct reggroup *m68hc11_soft_reggroup;
-static struct reggroup *m68hc11_hard_reggroup;
+static const reggroup *m68hc11_soft_reggroup;
+static const reggroup *m68hc11_hard_reggroup;
 
 static void
 m68hc11_init_reggroups (void)
index 1ab01c6cbb3d689331423cf1b7dc94b90138e589..6b3a62391c047ab562bb12b0edb704a970dc0fbe 100644 (file)
@@ -1021,9 +1021,9 @@ mep_register_name (struct gdbarch *gdbarch, int regnr)
 
 
 /* Custom register groups for the MeP.  */
-static struct reggroup *mep_csr_reggroup; /* control/special */
-static struct reggroup *mep_cr_reggroup;  /* coprocessor general-purpose */
-static struct reggroup *mep_ccr_reggroup; /* coprocessor control */
+static const reggroup *mep_csr_reggroup; /* control/special */
+static const reggroup *mep_cr_reggroup;  /* coprocessor general-purpose */
+static const reggroup *mep_ccr_reggroup; /* coprocessor control */
 
 
 static int
index a94a03ab2ab2997ac33d6232fb7a5f4bc99dce34..06b129bdd313af3dda3f675e5b949f3f3444821e 100644 (file)
@@ -314,16 +314,16 @@ nds32_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int num)
 }
 \f
 /* NDS32 register groups.  */
-static struct reggroup *nds32_cr_reggroup;
-static struct reggroup *nds32_ir_reggroup;
-static struct reggroup *nds32_mr_reggroup;
-static struct reggroup *nds32_dr_reggroup;
-static struct reggroup *nds32_pfr_reggroup;
-static struct reggroup *nds32_hspr_reggroup;
-static struct reggroup *nds32_dmar_reggroup;
-static struct reggroup *nds32_racr_reggroup;
-static struct reggroup *nds32_idr_reggroup;
-static struct reggroup *nds32_secur_reggroup;
+static const reggroup *nds32_cr_reggroup;
+static const reggroup *nds32_ir_reggroup;
+static const reggroup *nds32_mr_reggroup;
+static const reggroup *nds32_dr_reggroup;
+static const reggroup *nds32_pfr_reggroup;
+static const reggroup *nds32_hspr_reggroup;
+static const reggroup *nds32_dmar_reggroup;
+static const reggroup *nds32_racr_reggroup;
+static const reggroup *nds32_idr_reggroup;
+static const reggroup *nds32_secur_reggroup;
 
 static void
 nds32_init_reggroups (void)
index 7b8537e94f62d6dcb0cdf13f18398a448f8b4553..bb8a83f76530763f71d21df79699aa0af824ad02 100644 (file)
@@ -36,7 +36,7 @@ struct reggroup
   enum reggroup_type type;
 };
 
-struct reggroup *
+const reggroup *
 reggroup_new (const char *name, enum reggroup_type type)
 {
   struct reggroup *group = XNEW (struct reggroup);
@@ -48,7 +48,7 @@ reggroup_new (const char *name, enum reggroup_type type)
 
 /* See reggroups.h.  */
 
-struct reggroup *
+const reggroup *
 reggroup_gdbarch_new (struct gdbarch *gdbarch, const char *name,
                      enum reggroup_type type)
 {
@@ -81,7 +81,7 @@ struct reggroups
 {
   /* Add GROUP to the list of register groups.  */
 
-  void add (struct reggroup *group)
+  void add (const reggroup *group)
   {
     gdb_assert (group != nullptr);
     gdb_assert (std::find (m_groups.begin(), m_groups.end(), group)
@@ -116,7 +116,7 @@ static struct gdbarch_data *reggroups_data;
 /* Add GROUP to the list of register groups for GDBARCH.  */
 
 void
-reggroup_add (struct gdbarch *gdbarch, struct reggroup *group)
+reggroup_add (struct gdbarch *gdbarch, const reggroup *group)
 {
   struct reggroups *groups
     = (struct reggroups *) gdbarch_data (gdbarch, reggroups_data);
index 4f0453871fc7baac7c6504ec12d066d92c5e4184..8ac372574be269b28bbfcabe8e46413693157423 100644 (file)
@@ -39,15 +39,16 @@ extern struct reggroup *const save_reggroup;
 extern struct reggroup *const restore_reggroup;
 
 /* Create a new local register group.  */
-extern struct reggroup *reggroup_new (const char *name,
-                                     enum reggroup_type type);
+extern const reggroup *reggroup_new (const char *name,
+                                    enum reggroup_type type);
+
 /* Create a new register group allocated onto the gdbarch obstack.  */
-extern struct reggroup *reggroup_gdbarch_new (struct gdbarch *gdbarch,
-                                             const char *name,
-                                             enum reggroup_type type);
+extern const reggroup *reggroup_gdbarch_new (struct gdbarch *gdbarch,
+                                            const char *name,
+                                            enum reggroup_type type);
 
 /* Add a register group (with attribute values) to the pre-defined list.  */
-extern void reggroup_add (struct gdbarch *gdbarch, struct reggroup *group);
+extern void reggroup_add (struct gdbarch *gdbarch, const reggroup *group);
 
 /* Register group attributes.  */
 extern const char *reggroup_name (const struct reggroup *reggroup);
index 79b8135103941646a8ae9478b3c2f96454b8c8ae..ab2397443938714b5156c9918f12529f22f01fa8 100644 (file)
@@ -129,7 +129,7 @@ struct riscv_unwind_cache
 
 /* RISC-V specific register group for CSRs.  */
 
-static reggroup *csr_reggroup = NULL;
+static const reggroup *csr_reggroup = nullptr;
 
 /* Callback function for user_reg_add.  */
 
index 6e478ee893d67414d2a559ad77886f6a3a04d945..89bdd7ffd2842416781d5a0f1e167fdc97bf9ab4 100644 (file)
@@ -712,10 +712,10 @@ xtensa_pseudo_register_write (struct gdbarch *gdbarch,
                    _("invalid register number %d"), regnum);
 }
 
-static struct reggroup *xtensa_ar_reggroup;
-static struct reggroup *xtensa_user_reggroup;
-static struct reggroup *xtensa_vectra_reggroup;
-static struct reggroup *xtensa_cp[XTENSA_MAX_COPROCESSOR];
+static const reggroup *xtensa_ar_reggroup;
+static const reggroup *xtensa_user_reggroup;
+static const reggroup *xtensa_vectra_reggroup;
+static const reggroup *xtensa_cp[XTENSA_MAX_COPROCESSOR];
 
 static void
 xtensa_init_reggroups (void)