[PATCHv2 13/16] gdb: make the pre-defined register groups const

Andrew Burgess via Gdb-patches
2022-04-06T12:12:21Z

Convert the 7 global, pre-defined, register groups const, and fix the
fall out (a minor tweak required in riscv-tdep.c).

There should be no user visible changes after this commit.
---
gdb/reggroups.c | 30 +++++++++++++++---------------
gdb/reggroups.h | 14 +++++++-------
gdb/riscv-tdep.c | 2 +-
3 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/gdb/reggroups.c b/gdb/reggroups.c
index 419e091c3c0..2888704f2d2 100644
--- a/gdb/reggroups.c
+++ b/gdb/reggroups.c
@@ -254,21 +254,21 @@ maintenance_print_reggroups (const char *args, int from_tty)
}

/* Pre-defined register groups. */
-static struct reggroup general_group = { "general", USER_REGGROUP };
-static struct reggroup float_group = { "float", USER_REGGROUP };
-static struct reggroup system_group = { "system", USER_REGGROUP };
-static struct reggroup vector_group = { "vector", USER_REGGROUP };
-static struct reggroup all_group = { "all", USER_REGGROUP };
-static struct reggroup save_group = { "save", INTERNAL_REGGROUP };
-static struct reggroup restore_group = { "restore", INTERNAL_REGGROUP };
-
-struct reggroup *const general_reggroup = &general_group;
-struct reggroup *const float_reggroup = &float_group;
-struct reggroup *const system_reggroup = &system_group;
-struct reggroup *const vector_reggroup = &vector_group;
-struct reggroup *const all_reggroup = &all_group;
-struct reggroup *const save_reggroup = &save_group;
-struct reggroup *const restore_reggroup = &restore_group;
+static const reggroup general_group = { "general", USER_REGGROUP };
+static const reggroup float_group = { "float", USER_REGGROUP };
+static const reggroup system_group = { "system", USER_REGGROUP };
+static const reggroup vector_group = { "vector", USER_REGGROUP };
+static const reggroup all_group = { "all", USER_REGGROUP };
+static const reggroup save_group = { "save", INTERNAL_REGGROUP };
+static const reggroup restore_group = { "restore", INTERNAL_REGGROUP };
+
+const reggroup *const general_reggroup = &general_group;
+const reggroup *const float_reggroup = &float_group;
+const reggroup *const system_reggroup = &system_group;
+const reggroup *const vector_reggroup = &vector_group;
+const reggroup *const all_reggroup = &all_group;
+const reggroup *const save_reggroup = &save_group;
+const reggroup *const restore_reggroup = &restore_group;

void _initialize_reggroup ();
void
diff --git a/gdb/reggroups.h b/gdb/reggroups.h
index 28bd00ff176..ec1d79dfc30 100644
--- a/gdb/reggroups.h
+++ b/gdb/reggroups.h
@@ -28,15 +28,15 @@ struct reggroup;
enum reggroup_type { USER_REGGROUP, INTERNAL_REGGROUP };

/* Pre-defined, user visible, register groups. */
-extern struct reggroup *const general_reggroup;
-extern struct reggroup *const float_reggroup;
-extern struct reggroup *const system_reggroup;
-extern struct reggroup *const vector_reggroup;
-extern struct reggroup *const all_reggroup;
+extern const reggroup *const general_reggroup;
+extern const reggroup *const float_reggroup;
+extern const reggroup *const system_reggroup;
+extern const reggroup *const vector_reggroup;
+extern const reggroup *const all_reggroup;

/* Pre-defined, internal, register groups. */
-extern struct reggroup *const save_reggroup;
-extern struct reggroup *const restore_reggroup;
+extern const reggroup *const save_reggroup;
+extern const reggroup *const restore_reggroup;

/* Create a new local register group. */
extern const reggroup *reggroup_new (const char *name,
diff --git a/gdb/riscv-tdep.c b/gdb/riscv-tdep.c
index ab239744393..69f2123dcdb 100644
--- a/gdb/riscv-tdep.c
+++ b/gdb/riscv-tdep.c
@@ -1369,7 +1369,7 @@ riscv_print_registers_info (struct gdbarch *gdbarch,
}
else
{
- struct reggroup *reggroup;
+ const struct reggroup *reggroup;

if (print_all)
reggroup = all_reggroup;
--
2.25.4