aboutsummaryrefslogtreecommitdiff
path: root/gdb/symfile.c
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>2014-01-14 18:19:51 -0800
committerDoug Evans <dje@google.com>2014-01-14 18:19:51 -0800
commit540c2971fa25a14ae16a9bb14ba2f424b5f1ea96 (patch)
treefeef7b3931cac287ac2ca1409c62212e75f24c0d /gdb/symfile.c
parent818d220a6fe3d0512a226188e9164245a02c9185 (diff)
downloadgdb-540c2971fa25a14ae16a9bb14ba2f424b5f1ea96.zip
gdb-540c2971fa25a14ae16a9bb14ba2f424b5f1ea96.tar.gz
gdb-540c2971fa25a14ae16a9bb14ba2f424b5f1ea96.tar.bz2
psymtab cleanup patch 1/3
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. * 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".
Diffstat (limited to 'gdb/symfile.c')
-rw-r--r--gdb/symfile.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/gdb/symfile.c b/gdb/symfile.c
index a8bc3d8..607a648 100644
--- a/gdb/symfile.c
+++ b/gdb/symfile.c
@@ -3838,6 +3838,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)
{