From 52e260a34ef6e013980890bee0d5435cfc14e9c4 Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Mon, 26 Aug 2013 18:41:31 +0000 Subject: [PATCH] * NEWS: Document "mt print objfiles" now takes optional regexp. * symmisc.c (maintenance_print_objfiles): Argument is now an optional regexp of objfiles to print. (_initialize_symmisc): Update doc string for "mt print objfiles". doc/ * gdb.texinfo (Maintenance Commands): "maint print objfiles" now takes an optional regexp. --- gdb/ChangeLog | 5 +++++ gdb/NEWS | 2 ++ gdb/doc/ChangeLog | 5 +++++ gdb/doc/gdb.texinfo | 9 +++++---- gdb/symmisc.c | 12 +++++++++--- 5 files changed, 26 insertions(+), 7 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 91dc2d4aa22..c0ff6ea8e31 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2013-08-26 Doug Evans + * NEWS: Document "mt print objfiles" now takes optional regexp. + * symmisc.c (maintenance_print_objfiles): Argument is now an optional + regexp of objfiles to print. + (_initialize_symmisc): Update doc string for "mt print objfiles". + * dwarf2read.c (write_psymtabs_to_index): Move error checks ahead of missing debug info checks. diff --git a/gdb/NEWS b/gdb/NEWS index f246ee1d062..75016c11125 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -3,6 +3,8 @@ *** Changes since GDB 7.6 +* The "maintenance print objfiles" command now takes an optional regexp. + * The "catch syscall" command now works on arm*-linux* targets. * Python scripting diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index eaaccd50821..61a6f4151ba 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,8 @@ +2013-08-26 Doug Evans + + * gdb.texinfo (Maintenance Commands): "maint print objfiles" now takes + an optional regexp. + 2013-08-13 Tom Tromey * gdbint.texinfo (Testsuite): Use @table, not @itemize. diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 6d5dec4813f..c88ee65a6fb 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -36820,10 +36820,11 @@ This command forces @value{GDBN} to flush its internal register cache. @kindex maint print objfiles @cindex info for known object files -@item maint print objfiles -Print a dump of all known object files. For each object file, this -command prints its name, address in memory, and all of its psymtabs -and symtabs. +@item maint print objfiles @r{[}@var{regexp}@r{]} +Print a dump of all known object files. +If @var{regexp} is specified, only print object files whose names +match @var{regexp}. For each object file, this command prints its name, +address in memory, and all of its psymtabs and symtabs. @kindex maint print section-scripts @cindex info for known .debug_gdb_scripts-loaded scripts diff --git a/gdb/symmisc.c b/gdb/symmisc.c index fb0d336b3ec..842c16f76ca 100644 --- a/gdb/symmisc.c +++ b/gdb/symmisc.c @@ -687,18 +687,23 @@ maintenance_print_msymbols (char *args, int from_tty) } static void -maintenance_print_objfiles (char *ignore, int from_tty) +maintenance_print_objfiles (char *regexp, int from_tty) { struct program_space *pspace; struct objfile *objfile; dont_repeat (); + if (regexp) + re_comp (regexp); + ALL_PSPACES (pspace) ALL_PSPACE_OBJFILES (pspace, objfile) { QUIT; - dump_objfile (objfile); + if (! regexp + || re_exec (objfile->name)) + dump_objfile (objfile); } } @@ -935,7 +940,8 @@ 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."), + _("Print dump of current object file definitions.\n\ +With an argument REGEXP, list the object files with matching names."), &maintenanceprintlist); add_cmd ("symtabs", class_maintenance, maintenance_info_symtabs, _("\ -- 2.30.2