This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi. This is the first of a set of three patches to cleanup psymtab.c a bit. Basically, these two functions do not belong in psymtab.c: expand_partial_symbol_names, map_partial_symbol_filenames, and "partial" does not belong in the function name. This first patch moves them to a better location. The second patch adds some typedefs for function parameters to quick_symbol_functions.expand_symtabs_matching. The third patch removes "partial" from the function names and uses them in more places. Regression tested on amd64-linux. [Hey, I remembered to say that this time. :-)] 2013-12-06 Doug Evans <dje@google.com> * psymtab.c (expand_partial_symbol_names): Delete, moved to symfile.c. (map_partial_symbol_filenames): Ditto. * psymtab.h (expand_partial_symbol_names): Delete, moved to symfile.h. (map_partial_symbol_filenames): Ditto. * symfile.c (expand_partial_symbol_names): Moved here from psymtab.c. (map_partial_symbol_filenames): Ditto. * symfile.h (expand_partial_symbol_names): Moved here from psymtab.h. (map_partial_symbol_filenames): Ditto. * symtab.c: Delete #include "psymtab.h". diff --git a/gdb/psymtab.c b/gdb/psymtab.c index 8eac5e1..aecdfae 100644 --- a/gdb/psymtab.c +++ b/gdb/psymtab.c @@ -2088,34 +2088,6 @@ maintenance_check_psymtabs (char *ignore, int from_tty) -void -expand_partial_symbol_names (int (*fun) (const char *, void *), - void *data) -{ - struct objfile *objfile; - - ALL_OBJFILES (objfile) - { - if (objfile->sf) - objfile->sf->qf->expand_symtabs_matching (objfile, NULL, fun, - ALL_DOMAIN, data); - } -} - -void -map_partial_symbol_filenames (symbol_filename_ftype *fun, void *data, - int need_fullname) -{ - struct objfile *objfile; - - ALL_OBJFILES (objfile) - { - if (objfile->sf) - objfile->sf->qf->map_symbol_filenames (objfile, fun, data, - need_fullname); - } -} - extern initialize_file_ftype _initialize_psymtab; void diff --git a/gdb/psymtab.h b/gdb/psymtab.h index f32191a..28b6d3b 100644 --- a/gdb/psymtab.h +++ b/gdb/psymtab.h @@ -30,12 +30,6 @@ extern struct psymbol_bcache *psymbol_bcache_init (void); extern void psymbol_bcache_free (struct psymbol_bcache *); extern struct bcache *psymbol_bcache_get_bcache (struct psymbol_bcache *); -void expand_partial_symbol_names (int (*fun) (const char *, void *), - void *data); - -void map_partial_symbol_filenames (symbol_filename_ftype *fun, void *data, - int need_fullname); - extern const struct quick_symbol_functions psym_functions; extern const struct quick_symbol_functions dwarf2_gdb_index_functions; diff --git a/gdb/symfile.c b/gdb/symfile.c index 59d0583..634f4fd 100644 --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -3839,6 +3839,42 @@ symfile_free_objfile (struct objfile *objfile) remove_target_sections ((void *) objfile); } +/* Wrapper around the quick_symbol_functions expand_symtabs_matching "method". + Expand all symtabs that match the specified criteria. + See quick_symbol_functions.expand_symtabs_matching for details. */ + +void +expand_partial_symbol_names (int (*fun) (const char *, void *), + void *data) +{ + struct objfile *objfile; + + ALL_OBJFILES (objfile) + { + if (objfile->sf) + objfile->sf->qf->expand_symtabs_matching (objfile, NULL, fun, + ALL_DOMAIN, data); + } +} + +/* Wrapper around the quick_symbol_functions map_symbol_filenames "method". + Map function FUN over every file. + See quick_symbol_functions.map_symbol_filenames for details. */ + +void +map_partial_symbol_filenames (symbol_filename_ftype *fun, void *data, + int need_fullname) +{ + struct objfile *objfile; + + ALL_OBJFILES (objfile) + { + if (objfile->sf) + objfile->sf->qf->map_symbol_filenames (objfile, fun, data, + need_fullname); + } +} + void _initialize_symfile (void) { diff --git a/gdb/symfile.h b/gdb/symfile.h index 106a9d9..951f053 100644 --- a/gdb/symfile.h +++ b/gdb/symfile.h @@ -554,6 +554,12 @@ void free_symfile_segment_data (struct symfile_segment_data *data); extern struct cleanup *increment_reading_symtab (void); +void expand_partial_symbol_names (int (*fun) (const char *, void *), + void *data); + +void map_partial_symbol_filenames (symbol_filename_ftype *fun, void *data, + int need_fullname); + /* From dwarf2read.c */ /* Names for a dwarf2 debugging section. The field NORMAL is the normal diff --git a/gdb/symtab.c b/gdb/symtab.c index 8fac0be..d554c67 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -61,7 +61,6 @@ #include "macrotab.h" #include "macroscope.h" -#include "psymtab.h" #include "parser-defs.h" /* Prototypes for local functions */
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |