Use gdb_bfd_sections in elf_symfile_read

This changes elf_symfile_read to avoid bfd_map_over_sections, in favor
of iteration.

gdb/ChangeLog
2020-09-19  Tom Tromey  <tom@tromey.com>

	* elfread.c (elf_locate_sections): Change parameters.
	(elf_symfile_read): Use foreach.
This commit is contained in:
Tom Tromey
2020-09-19 11:54:49 -06:00
parent 03cd72b810
commit 08f93a1a93
2 changed files with 10 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2020-09-19 Tom Tromey <tom@tromey.com>
* elfread.c (elf_locate_sections): Change parameters.
(elf_symfile_read): Use foreach.
2020-09-19 Tom Tromey <tom@tromey.com>
* cli/cli-dump.c (struct callback_data): Remove.

View File

@ -176,11 +176,8 @@ elf_symfile_segments (bfd *abfd)
-kingdon). */
static void
elf_locate_sections (bfd *ignore_abfd, asection *sectp, void *eip)
elf_locate_sections (asection *sectp, struct elfinfo *ei)
{
struct elfinfo *ei;
ei = (struct elfinfo *) eip;
if (strcmp (sectp->name, ".stab") == 0)
{
ei->stabsect = sectp;
@ -1211,7 +1208,10 @@ elf_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags)
memset ((char *) &ei, 0, sizeof (ei));
if (!(objfile->flags & OBJF_READNEVER))
bfd_map_over_sections (abfd, elf_locate_sections, (void *) & ei);
{
for (asection *sect : gdb_bfd_sections (abfd))
elf_locate_sections (sect, &ei);
}
elf_read_minimal_symbols (objfile, symfile_flags, &ei);