[PATCH 2/2] Move registering maint cmd from maint.c to symmisc.c.

Yao Qi
2012-12-19T07:56:17Z

Similar to the previous patch.

gdb:

2012-12-19 Yao Qi <yao@codesourcery.com>

* maint.c (_initialize_maint_cmds): Move code ...
* symmisc.c (_initialize_symmisc): ... to here.
(maintenance_print_msymbols): Make it static.
(maintenance_print_objfiles): Likewise.
(maintenance_print_symbols): Likewise.
(maintenance_info_symtabs): Likewise.
* symtab.h (maintenance_print_msymbols): Remove declaration.
(maintenance_print_objfiles, maintenance_print_symbols): Likewise.
(maintenance_info_symtabs): Likewise.
---
gdb/maint.c | 23 -----------------------
gdb/symmisc.c | 32 ++++++++++++++++++++++++++++----
gdb/symtab.h | 10 ----------
3 files changed, 28 insertions(+), 37 deletions(-)

diff --git a/gdb/maint.c b/gdb/maint.c
index 4c7a588..cba67a7 100644
--- a/gdb/maint.c
+++ b/gdb/maint.c
@@ -821,29 +821,6 @@ For each node in a type chain, print the raw data for each member of\n\
the type structure, and the interpretation of the data."),
&maintenanceprintlist);

- add_cmd ("symbols", class_maintenance, maintenance_print_symbols, _("\
-Print dump of current symbol definitions.\n\
-Entries in the full symbol table are dumped to file OUTFILE.\n\
-If a SOURCE file is specified, dump only that file's symbols."),
- &maintenanceprintlist);
-
- add_cmd ("msymbols", class_maintenance, maintenance_print_msymbols, _("\
-Print dump of current minimal symbol definitions.\n\
-Entries in the minimal symbol table are dumped to file OUTFILE.\n\
-If a SOURCE file is specified, dump only that file's minimal symbols."),
- &maintenanceprintlist);
-
- add_cmd ("objfiles", class_maintenance, maintenance_print_objfiles,
- _("Print dump of current object file definitions."),
- &maintenanceprintlist);
-
- add_cmd ("symtabs", class_maintenance, maintenance_info_symtabs, _("\
-List the full symbol tables for all object files.\n\
-This does not include information about individual symbols, blocks, or\n\
-linetables --- just the symbol table structures themselves.\n\
-With an argument REGEXP, list the symbol tables whose names that match that."),
- &maintenanceinfolist);
-
add_cmd ("statistics", class_maintenance, maintenance_print_statistics,
_("Print statistics about internal gdb state."),
&maintenanceprintlist);
diff --git a/gdb/symmisc.c b/gdb/symmisc.c
index 694a84a..c88e36c 100644
--- a/gdb/symmisc.c
+++ b/gdb/symmisc.c
@@ -36,6 +36,7 @@
#include "gdb_stat.h"
#include "dictionary.h"
#include "typeprint.h"
+#include "gdbcmd.h"

#include "gdb_string.h"
#include "readline/readline.h"
@@ -401,7 +402,7 @@ dump_symtab (struct objfile *objfile, struct symtab *symtab,
dump_symtab_1 (objfile, symtab, outfile);
}

-void
+static void
maintenance_print_symbols (char *args, int from_tty)
{
char **argv;
@@ -626,7 +627,7 @@ print_symbol (void *args)
return 1;
}

-void
+static void
maintenance_print_msymbols (char *args, int from_tty)
{
char **argv;
@@ -682,7 +683,7 @@ maintenance_print_msymbols (char *args, int from_tty)
do_cleanups (cleanups);
}

-void
+static void
maintenance_print_objfiles (char *ignore, int from_tty)
{
struct program_space *pspace;
@@ -700,7 +701,7 @@ maintenance_print_objfiles (char *ignore, int from_tty)

/* List all the symbol tables whose names match REGEXP (optional). */

-void
+static void
maintenance_info_symtabs (char *regexp, int from_tty)
{
struct program_space *pspace;
@@ -784,4 +785,27 @@ _initialize_symmisc (void)
std_in = stdin;
std_out = stdout;
std_err = stderr;
+
+ add_cmd ("symbols", class_maintenance, maintenance_print_symbols, _("\
+Print dump of current symbol definitions.\n\
+Entries in the full symbol table are dumped to file OUTFILE.\n\
+If a SOURCE file is specified, dump only that file's symbols."),
+ &maintenanceprintlist);
+
+ add_cmd ("msymbols", class_maintenance, maintenance_print_msymbols, _("\
+Print dump of current minimal symbol definitions.\n\
+Entries in the minimal symbol table are dumped to file OUTFILE.\n\
+If a SOURCE file is specified, dump only that file's minimal symbols."),
+ &maintenanceprintlist);
+
+ add_cmd ("objfiles", class_maintenance, maintenance_print_objfiles,
+ _("Print dump of current object file definitions."),
+ &maintenanceprintlist);
+
+ add_cmd ("symtabs", class_maintenance, maintenance_info_symtabs, _("\
+List the full symbol tables for all object files.\n\
+This does not include information about individual symbols, blocks, or\n\
+linetables --- just the symbol table structures themselves.\n\
+With an argument REGEXP, list the symbol tables whose names that match that."),
+ &maintenanceinfolist);
}
diff --git a/gdb/symtab.h b/gdb/symtab.h
index bdabb0c..e2845e9 100644
--- a/gdb/symtab.h
+++ b/gdb/symtab.h
@@ -1158,16 +1158,6 @@ extern int find_line_pc_range (struct symtab_and_line, CORE_ADDR *,

extern void resolve_sal_pc (struct symtab_and_line *);

-/* Symmisc.c */
-
-void maintenance_print_symbols (char *, int);
-
-void maintenance_print_msymbols (char *, int);
-
-void maintenance_print_objfiles (char *, int);
-
-void maintenance_info_symtabs (char *, int);
-
/* Symbol-reading stuff in symfile.c and solib.c. */

extern void clear_solib (void);
--
1.7.7.6