diff options
author | Peter Schauer <Peter.Schauer@mytum.de> | 1994-07-12 19:29:04 +0000 |
---|---|---|
committer | Peter Schauer <Peter.Schauer@mytum.de> | 1994-07-12 19:29:04 +0000 |
commit | 6d9b8a93f981e61e061b2910363a614a186fbd62 (patch) | |
tree | 22ac220a8732ddd2d6d779fe502483423a629780 /gdb/elfread.c | |
parent | a85cd2890c25d35ecc243716e332e14ef62274d0 (diff) | |
download | gdb-6d9b8a93f981e61e061b2910363a614a186fbd62.zip gdb-6d9b8a93f981e61e061b2910363a614a186fbd62.tar.gz gdb-6d9b8a93f981e61e061b2910363a614a186fbd62.tar.bz2 |
* elfread.c (elf_symfile_read): Unconditionally add dynamic
symbols for all symbol files. Makes skipping over the
trampoline code work when stepping from a function in a shared
library into a function in a different shared library for Irix 5.
Other ELF targets do not have enough information in their
dynamic symbol tables to make this work.
(elf_symtab_read): Relocate mst_solib_trampoline address.
Diffstat (limited to 'gdb/elfread.c')
-rw-r--r-- | gdb/elfread.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gdb/elfread.c b/gdb/elfread.c index 95c9c0f..7b87cb2 100644 --- a/gdb/elfread.c +++ b/gdb/elfread.c @@ -350,6 +350,7 @@ elf_symtab_read (abfd, addr, objfile, dynamic) symaddr = sym -> value; if (symaddr == 0) continue; + symaddr += addr; } else if (sym -> section == &bfd_abs_section) { @@ -560,10 +561,9 @@ elf_symfile_read (objfile, section_offsets, mainline) offset = ANOFFSET (section_offsets, 0); elf_symtab_read (abfd, offset, objfile, 0); - /* Add the dynamic symbols if we are reading the main symbol table. */ + /* Add the dynamic symbols. */ - if (mainline) - elf_symtab_read (abfd, offset, objfile, 1); + elf_symtab_read (abfd, offset, objfile, 1); /* Now process debugging information, which is contained in special ELF sections. We first have to find them... */ |