Change target_section_table to std::vector alias
Because target_section_table only holds a vector, and because it is used in an "open" way, this patch makes it just be an alias for the std::vector specialization. This makes the code less wordy. If we do ever want to add more specialized behavior to this type, it's simple enough to convert it back to a struct with the few needed methods implied by this change. gdb/ChangeLog 2020-10-12 Tom Tromey <tom@tromey.com> * target.h (struct target_ops) <get_section_table>: Update. (target_get_section_table): Update. * target.c (target_get_section_table, target_section_by_addr) (memory_xfer_partial_1): Update. * target-section.h (target_section_table): Now an alias. * target-delegates.c: Rebuild. * target-debug.h (target_debug_print_target_section_table_p): Rename from target_debug_print_struct_target_section_table_p. * symfile.c (build_section_addr_info_from_section_table): Update. * solib.c (solib_map_sections, solib_contains_address_p): Update. * solib-svr4.c (scan_dyntag): Update. * solib-dsbt.c (scan_dyntag): Update. * remote.c (remote_target::remote_xfer_live_readonly_partial): Update. * record-full.c (record_full_core_target::xfer_partial): Update. * progspace.h (struct program_space) <target_sections>: Update. * exec.h (print_section_info): Update. * exec.c (exec_target::close, build_section_table) (add_target_sections, add_target_sections_of_objfile) (remove_target_sections, exec_on_vfork) (section_table_available_memory) (section_table_xfer_memory_partial) (exec_target::get_section_table, exec_target::xfer_partial) (print_section_info, set_section_command) (exec_set_section_address, exec_target::has_memory): Update. * corelow.c (core_target::build_file_mappings) (core_target::xfer_partial, core_target::info_proc_mappings) (core_target::info_proc_mappings): Update. * bfd-target.c (class target_bfd): Update
This commit is contained in:
parent
eda214cec1
commit
d7a78e5c41
17 changed files with 94 additions and 75 deletions
|
@ -77,7 +77,7 @@ struct dummy_target : public target_ops
|
|||
void rcmd (const char *arg0, struct ui_file *arg1) override;
|
||||
char *pid_to_exec_file (int arg0) override;
|
||||
void log_command (const char *arg0) override;
|
||||
struct target_section_table *get_section_table () override;
|
||||
target_section_table *get_section_table () override;
|
||||
thread_control_capabilities get_thread_control_capabilities () override;
|
||||
bool attach_no_wait () override;
|
||||
bool can_async_p () override;
|
||||
|
@ -248,7 +248,7 @@ struct debug_target : public target_ops
|
|||
void rcmd (const char *arg0, struct ui_file *arg1) override;
|
||||
char *pid_to_exec_file (int arg0) override;
|
||||
void log_command (const char *arg0) override;
|
||||
struct target_section_table *get_section_table () override;
|
||||
target_section_table *get_section_table () override;
|
||||
thread_control_capabilities get_thread_control_capabilities () override;
|
||||
bool attach_no_wait () override;
|
||||
bool can_async_p () override;
|
||||
|
@ -2021,27 +2021,27 @@ debug_target::log_command (const char *arg0)
|
|||
fputs_unfiltered (")\n", gdb_stdlog);
|
||||
}
|
||||
|
||||
struct target_section_table *
|
||||
target_section_table *
|
||||
target_ops::get_section_table ()
|
||||
{
|
||||
return this->beneath ()->get_section_table ();
|
||||
}
|
||||
|
||||
struct target_section_table *
|
||||
target_section_table *
|
||||
dummy_target::get_section_table ()
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
struct target_section_table *
|
||||
target_section_table *
|
||||
debug_target::get_section_table ()
|
||||
{
|
||||
struct target_section_table * result;
|
||||
target_section_table * result;
|
||||
fprintf_unfiltered (gdb_stdlog, "-> %s->get_section_table (...)\n", this->beneath ()->shortname ());
|
||||
result = this->beneath ()->get_section_table ();
|
||||
fprintf_unfiltered (gdb_stdlog, "<- %s->get_section_table (", this->beneath ()->shortname ());
|
||||
fputs_unfiltered (") = ", gdb_stdlog);
|
||||
target_debug_print_struct_target_section_table_p (result);
|
||||
target_debug_print_target_section_table_p (result);
|
||||
fputs_unfiltered ("\n", gdb_stdlog);
|
||||
return result;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue