summaryrefslogtreecommitdiff
path: root/gdb/psymtab.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2021-03-20 17:23:40 -0600
committerTom Tromey <tom@tromey.com>2021-03-20 17:23:46 -0600
commiteb36a3eb2f846b8d4b16c1bb114136961d0ce5bf (patch)
tree66db807b35c33f6ba4ab2406e19308ecd2ac4a29 /gdb/psymtab.c
parente11145903f25b7ac91dd12e6330df3faec0a3f1b (diff)
downloadbinutils-gdb-eb36a3eb2f846b8d4b16c1bb114136961d0ce5bf.tar.gz
Allow multiple partial symbol readers per objfile
This patch finally changes gdb so that an objfile can have multiple sources of partial symbols (or mixed partial symbols and other kinds of indices). This is done by having each symbol reader create its own psymbol_functions object and add it to the 'qf' list in the objfile. gdb/ChangeLog 2021-03-20 Tom Tromey <tom@tromey.com> * xcoffread.c (xcoff_initial_scan): Create partial symtabs. * symfile.c (syms_from_objfile_1, reread_symbols): Update. * psymtab.h (make_psymbol_functions): Don't declare. * psymtab.c (make_psymbol_functions): Remove. (maintenance_print_psymbols): Update. * psympriv.h (struct psymbol_functions): Add no-argument constructor. * objfiles.h (struct objfile) <reset_psymtabs>: Remove. <partial_symtabs>: Remove. * mdebugread.c (mdebug_build_psymtabs): Create partial symtabs. * elfread.c (read_partial_symbols): Update. (elf_symfile_read): Remove check for existing partial symbols. Don't clear "qf". * dwarf2/read.c (dwarf2_has_info): Remove check for existing partial symbols. (dwarf2_build_psymtabs): Add psymbol_functions parameter. Create partial symtabs. * dwarf2/public.h (dwarf2_build_psymtabs): Add psymbol_functions parameter. * dbxread.c (dbx_symfile_read): Create partial symtabs. * ctfread.c (elfctf_build_psymtabs): Create partial symtabs.
Diffstat (limited to 'gdb/psymtab.c')
-rw-r--r--gdb/psymtab.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index 785eda04c9e..597817269c1 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -1430,12 +1430,6 @@ psymbol_functions::find_compunit_symtab_by_address (struct objfile *objfile,
return psymtab_to_symtab (objfile, iter->second);
}
-quick_symbol_functions_up
-make_psymbol_functions (const std::shared_ptr<psymtab_storage> &storage)
-{
- return quick_symbol_functions_up (new psymbol_functions (storage));
-}
-
/* Partially fill a partial symtab. It will be completely filled at