aboutsummaryrefslogtreecommitdiff
path: root/gdb/elfread.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2003-02-20 18:31:14 +0000
committerDaniel Jacobowitz <drow@false.org>2003-02-20 18:31:14 +0000
commit7134143f534f02e8a283bb1fc0a9f22300c90e8d (patch)
tree7df28797a4403c1f540ca84d0a1d3214ab06058e /gdb/elfread.c
parentcf466558d0faa40bd6cc78b7f4e983c5a3ec883b (diff)
downloadfsf-binutils-gdb-7134143f534f02e8a283bb1fc0a9f22300c90e8d.zip
fsf-binutils-gdb-7134143f534f02e8a283bb1fc0a9f22300c90e8d.tar.gz
fsf-binutils-gdb-7134143f534f02e8a283bb1fc0a9f22300c90e8d.tar.bz2
* coffread.c (coff_symfile_read): Clean up minimal symbols earlier.
* dbxread.c (elfstab_build_psymtabs): Don't call install_minimal_symbols. (stabsect_build_psymtabs): Likewise. * elfread.c (elf_symfile_read): Call install_minimal_symbols earlier. * somread.c (som_symfile_read): Call install_minimal_symbols and do_cleanups earlier. * nlmread.c (nlm_symfile_read): Likewise. * mdebugread.c (elfmdebug_build_psymtabs): Call install_minimal_symbols and make appropriate cleanups.
Diffstat (limited to 'gdb/elfread.c')
-rw-r--r--gdb/elfread.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/gdb/elfread.c b/gdb/elfread.c
index b96d6e7..7aee37c 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -542,6 +542,15 @@ elf_symfile_read (struct objfile *objfile, int mainline)
elf_symtab_read (objfile, 1);
+ /* Install any minimal symbols that have been collected as the current
+ minimal symbols for this objfile. The debug readers below this point
+ should not generate new minimal symbols; if they do it's their
+ responsibility to install them. "mdebug" appears to be the only one
+ which will do this. */
+
+ install_minimal_symbols (objfile);
+ do_cleanups (back_to);
+
/* Now process debugging information, which is contained in
special ELF sections. */
@@ -611,13 +620,6 @@ elf_symfile_read (struct objfile *objfile, int mainline)
if (DWARF2_BUILD_FRAME_INFO_P ())
DWARF2_BUILD_FRAME_INFO(objfile);
-
- /* Install any minimal symbols that have been collected as the current
- minimal symbols for this objfile. */
-
- install_minimal_symbols (objfile);
-
- do_cleanups (back_to);
}
/* This cleans up the objfile's sym_stab_info pointer, and the chain of