aboutsummaryrefslogtreecommitdiff
path: root/gdb/psymtab.c
diff options
context:
space:
mode:
authorYao Qi <yao@codesourcery.com>2012-12-20 00:58:14 +0000
committerYao Qi <yao@codesourcery.com>2012-12-20 00:58:14 +0000
commitdfc7bb5b17b462701fb92325c79671eee417a16a (patch)
tree51eeede00cd4e1fe85debfe7f494dca397285898 /gdb/psymtab.c
parent463133ca3ac3381f8a536089f908ddc09d2cbfbf (diff)
downloadgdb-dfc7bb5b17b462701fb92325c79671eee417a16a.zip
gdb-dfc7bb5b17b462701fb92325c79671eee417a16a.tar.gz
gdb-dfc7bb5b17b462701fb92325c79671eee417a16a.tar.bz2
gdb/
2012-12-20 Yao Qi <yao@codesourcery.com> * maint.c (_initialize_maint_cmds): Move code to ... * psymtab.c (_initialize_psymtab): ... here. New. Include "gdbcmd.h". (maintenance_print_psymbols): Make it static. (maintenance_info_psymtabs, maintenance_check_symtabs): Likewise. * symtab.h (maintenance_print_psymbols): Remove declaration. (maintenance_check_symtabs, maintenance_info_psymtabs): Likewise.
Diffstat (limited to 'gdb/psymtab.c')
-rw-r--r--gdb/psymtab.c29
1 files changed, 26 insertions, 3 deletions
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index 027ad38..2b4d9f9 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -35,6 +35,7 @@
#include "dictionary.h"
#include "language.h"
#include "cp-support.h"
+#include "gdbcmd.h"
#ifndef DEV_TTY
#define DEV_TTY "/dev/tty"
@@ -1815,7 +1816,7 @@ discard_psymtab (struct objfile *objfile, struct partial_symtab *pst)
-void
+static void
maintenance_print_psymbols (char *args, int from_tty)
{
char **argv;
@@ -1864,7 +1865,7 @@ print-psymbols takes an output file name and optional symbol file name"));
}
/* List all the partial symbol tables whose names match REGEXP (optional). */
-void
+static void
maintenance_info_psymtabs (char *regexp, int from_tty)
{
struct program_space *pspace;
@@ -1970,7 +1971,7 @@ maintenance_info_psymtabs (char *regexp, int from_tty)
/* Check consistency of psymtabs and symtabs. */
-void
+static void
maintenance_check_symtabs (char *ignore, int from_tty)
{
struct symbol *sym;
@@ -2083,3 +2084,25 @@ map_partial_symbol_filenames (symbol_filename_ftype *fun, void *data,
need_fullname);
}
}
+
+extern initialize_file_ftype _initialize_psymtab;
+
+void
+_initialize_psymtab (void)
+{
+ add_cmd ("psymbols", class_maintenance, maintenance_print_psymbols, _("\
+Print dump of current partial symbol definitions.\n\
+Entries in the partial symbol table are dumped to file OUTFILE.\n\
+If a SOURCE file is specified, dump only that file's partial symbols."),
+ &maintenanceprintlist);
+
+ add_cmd ("psymtabs", class_maintenance, maintenance_info_psymtabs, _("\
+List the partial symbol tables for all object files.\n\
+This does not include information about individual partial symbols,\n\
+just the symbol table structures themselves."),
+ &maintenanceinfolist);
+
+ add_cmd ("check-symtabs", class_maintenance, maintenance_check_symtabs,
+ _("Check consistency of psymtabs and symtabs."),
+ &maintenancelist);
+}