Remove clear_section_table

The call to clear_section_table in ~program_space is now clearly not
needed -- the section table will clear itself.  This patch removes
this call and then inlines the one remaining call to
clear_section_table.

gdb/ChangeLog
2020-10-12  Tom Tromey  <tom@tromey.com>

	* progspace.c (program_space::~program_space): Don't call
	clear_section_table.
	* exec.h (clear_section_table): Don't declare.
	* exec.c (exec_target::close): Update.
	(clear_section_table): Remove.
This commit is contained in:
Tom Tromey 2020-10-12 15:53:16 -06:00
parent 91840ee38a
commit eda214cec1
4 changed files with 9 additions and 14 deletions

View file

@ -1,3 +1,11 @@
2020-10-12 Tom Tromey <tom@tromey.com>
* progspace.c (program_space::~program_space): Don't call
clear_section_table.
* exec.h (clear_section_table): Don't declare.
* exec.c (exec_target::close): Update.
(clear_section_table): Remove.
2020-10-12 Tom Tromey <tom@tromey.com>
* exec.c (add_target_sections_of_objfile): Simplify.

View file

@ -183,7 +183,7 @@ exec_target::close ()
for (struct program_space *ss : program_spaces)
{
set_current_program_space (ss);
clear_section_table (current_target_sections);
current_target_sections->sections.clear ();
exec_close ();
}
}
@ -577,14 +577,6 @@ file_command (const char *arg, int from_tty)
}
/* See exec.h. */
void
clear_section_table (struct target_section_table *table)
{
table->sections.clear ();
}
/* Builds a section table, given args BFD, TABLE. */
target_section_table

View file

@ -38,10 +38,6 @@ struct objfile;
extern target_section_table build_section_table (struct bfd *);
/* Remove all entries from TABLE. */
extern void clear_section_table (struct target_section_table *table);
/* The current inferior is a child vforked and its program space is
shared with its parent. This pushes the exec target on the
current/child inferior's target stack if there are sections in the

View file

@ -154,7 +154,6 @@ program_space::~program_space ()
clear_symtab_users (SYMFILE_DEFER_BP_RESET);
if (!gdbarch_has_shared_address_space (target_gdbarch ()))
free_address_space (this->aspace);
clear_section_table (&this->target_sections);
clear_program_space_solib_cache (this);
/* Discard any data modules have associated with the PSPACE. */
program_space_free_data (this);