mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
Use gdb_bfd_sections in get_stap_base_address
This changes get_stap_base_address to avoid bfd_map_over_sections, in favor of iteration. gdb/ChangeLog 2020-09-19 Tom Tromey <tom@tromey.com> * stap-probe.c (get_stap_base_address_1): Remove. (get_stap_base_address): Use foreach.
This commit is contained in:
parent
1ce51eb52d
commit
3cabfd268b
@ -1,3 +1,8 @@
|
||||
2020-09-19 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* stap-probe.c (get_stap_base_address_1): Remove.
|
||||
(get_stap_base_address): Use foreach.
|
||||
|
||||
2020-09-19 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* gdb_bfd.c (free_one_bfd_section): Remove 'abfd' and 'ignore'
|
||||
|
@ -1578,19 +1578,6 @@ handle_stap_probe (struct objfile *objfile, struct sdt_note *el,
|
||||
probesp->emplace_back (ret);
|
||||
}
|
||||
|
||||
/* Helper function which tries to find the base address of the SystemTap
|
||||
base section named STAP_BASE_SECTION_NAME. */
|
||||
|
||||
static void
|
||||
get_stap_base_address_1 (bfd *abfd, asection *sect, void *obj)
|
||||
{
|
||||
asection **ret = (asection **) obj;
|
||||
|
||||
if ((sect->flags & (SEC_DATA | SEC_ALLOC | SEC_HAS_CONTENTS))
|
||||
&& sect->name && !strcmp (sect->name, STAP_BASE_SECTION_NAME))
|
||||
*ret = sect;
|
||||
}
|
||||
|
||||
/* Helper function which iterates over every section in the BFD file,
|
||||
trying to find the base address of the SystemTap base section.
|
||||
Returns 1 if found (setting BASE to the proper value), zero otherwise. */
|
||||
@ -1600,7 +1587,10 @@ get_stap_base_address (bfd *obfd, bfd_vma *base)
|
||||
{
|
||||
asection *ret = NULL;
|
||||
|
||||
bfd_map_over_sections (obfd, get_stap_base_address_1, (void *) &ret);
|
||||
for (asection *sect : gdb_bfd_sections (obfd))
|
||||
if ((sect->flags & (SEC_DATA | SEC_ALLOC | SEC_HAS_CONTENTS))
|
||||
&& sect->name && !strcmp (sect->name, STAP_BASE_SECTION_NAME))
|
||||
ret = sect;
|
||||
|
||||
if (ret == NULL)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user