* exec.c (exec_close, exec_file_attach): Update.

(add_to_section_table): Initialize 'key' field.
	(add_target_sections, remove_target_sections): Add 'key' argument.
	* exec.h (add_target_sections, remove_target_sections): Add
	'key' argument.
	* solib.c (solib_map_sections, update_solib_list, clear_solib)
	(reload_shared_libraries_1): Update.
	* target.h (struct target_section) <key>: New field.
This commit is contained in:
Tom Tromey
2012-08-22 15:01:50 +00:00
parent b4893d4828
commit ed9eebafbc
5 changed files with 37 additions and 13 deletions

View File

@ -504,7 +504,7 @@ solib_map_sections (struct so_list *so)
section tables. Do this immediately after mapping the object so
that later nodes in the list can query this object, as is needed
in solib-osf.c. */
add_target_sections (so->sections, so->sections_end);
add_target_sections (so, so->sections, so->sections_end);
return 1;
}
@ -772,7 +772,7 @@ update_solib_list (int from_tty, struct target_ops *target)
/* Some targets' section tables might be referring to
sections from so->abfd; remove them. */
remove_target_sections (gdb->abfd);
remove_target_sections (gdb, gdb->abfd);
free_so (gdb);
gdb = *gdb_link;
@ -1154,7 +1154,7 @@ clear_solib (void)
so_list_head = so->next;
observer_notify_solib_unloaded (so);
if (so->abfd)
remove_target_sections (so->abfd);
remove_target_sections (so, so->abfd);
free_so (so);
}
@ -1247,7 +1247,7 @@ reload_shared_libraries_1 (int from_tty)
if (so->objfile && ! (so->objfile->flags & OBJF_USERLOADED)
&& !solib_used (so))
free_objfile (so->objfile);
remove_target_sections (so->abfd);
remove_target_sections (so, so->abfd);
free_so_symbols (so);
}