From 276d885b572b12221f639641846ab94ef9582995 Mon Sep 17 00:00:00 2001 From: Gary Benson Date: Sat, 31 Jan 2015 14:45:26 -0800 Subject: new callback parameter expansion_notify for expand_symtabs_matching This commit adds a new callback parameter, "expansion_notify", to the top-level expand_symtabs_matching function and to all the vectorized functions it defers to. If expansion_notify is non-NULL, it will be called every time a symbol table is expanded. gdb/ChangeLog: * symfile.h (expand_symtabs_exp_notify_ftype): New typedef. (struct quick_symbol_functions) : New argument expansion_notify. All uses updated. (expand_symtabs_matching): New argument expansion_notify. All uses updated. * symfile-debug.c (debug_qf_expand_symtabs_matching): Also print expansion notify. * symtab.c (expand_symtabs_matching_via_partial): Call expansion_notify whenever a partial symbol table is expanded. * dwarf2read.c (dw2_expand_symtabs_matching): Call expansion_notify whenever a symbol table is instantiated. --- gdb/psymtab.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'gdb/psymtab.c') diff --git a/gdb/psymtab.c b/gdb/psymtab.c index 592efd7..4ee9dc1 100644 --- a/gdb/psymtab.c +++ b/gdb/psymtab.c @@ -1409,6 +1409,7 @@ psym_expand_symtabs_matching (struct objfile *objfile, expand_symtabs_file_matcher_ftype *file_matcher, expand_symtabs_symbol_matcher_ftype *symbol_matcher, + expand_symtabs_exp_notify_ftype *expansion_notify, enum search_domain kind, void *data) { @@ -1451,7 +1452,13 @@ psym_expand_symtabs_matching } if (recursively_search_psymtabs (ps, objfile, kind, symbol_matcher, data)) - psymtab_to_symtab (objfile, ps); + { + struct compunit_symtab *symtab = + psymtab_to_symtab (objfile, ps); + + if (expansion_notify != NULL) + expansion_notify (symtab, data); + } } } -- cgit v1.1