diff options
-rw-r--r-- | gdb/ChangeLog | 9 | ||||
-rw-r--r-- | gdb/exec.c | 9 | ||||
-rw-r--r-- | gdb/exec.h | 5 | ||||
-rw-r--r-- | gdb/progspace.h | 4 | ||||
-rw-r--r-- | gdb/symfile-mem.c | 2 | ||||
-rw-r--r-- | gdb/symfile.c | 2 |
6 files changed, 19 insertions, 12 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3aeb0d1..4096a1b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,14 @@ 2020-10-29 Tom Tromey <tom@tromey.com> + * symfile.c (add_symbol_file_command): Update. + * exec.c (program_space::add_target_sections): Rename. + * symfile-mem.c (symbol_file_add_from_memory): Update. + * progspace.h (struct program_space) <add_target_sections>: + Declare new overload. + * exec.h (add_target_sections_of_objfile): Don't declare. + +2020-10-29 Tom Tromey <tom@tromey.com> + * solib.c (solib_map_sections): Update. * exec.c (program_space::add_target_sections): Now a method. (exec_file_attach): Update. @@ -628,9 +628,8 @@ program_space::add_target_sections (void *owner, /* Add the sections of OBJFILE to the current set of target sections. */ void -add_target_sections_of_objfile (struct objfile *objfile) +program_space::add_target_sections (struct objfile *objfile) { - target_section_table *table = ¤t_program_space->target_sections; struct obj_section *osect; gdb_assert (objfile != nullptr); @@ -641,9 +640,9 @@ add_target_sections_of_objfile (struct objfile *objfile) if (bfd_section_size (osect->the_bfd_section) == 0) continue; - table->emplace_back (obj_section_addr (osect), - obj_section_endaddr (osect), - osect->the_bfd_section, (void *) objfile); + target_sections.emplace_back (obj_section_addr (osect), + obj_section_endaddr (osect), + osect->the_bfd_section, (void *) objfile); } } @@ -92,11 +92,6 @@ extern enum target_xfer_status /* Set the loaded address of a section. */ extern void exec_set_section_address (const char *, int, CORE_ADDR); -/* Add the sections of OBJFILE to the current set of target sections. - * OBJFILE owns the new target sections. */ - -extern void add_target_sections_of_objfile (struct objfile *objfile); - /* Prints info about all sections defined in the TABLE. ABFD is special cased --- it's filename is omitted; if it is the executable file, its entry point is printed. */ diff --git a/gdb/progspace.h b/gdb/progspace.h index 92a7942..c141731 100644 --- a/gdb/progspace.h +++ b/gdb/progspace.h @@ -305,6 +305,10 @@ struct program_space void add_target_sections (void *owner, const target_section_table §ions); + /* Add the sections of OBJFILE to the current set of target + sections. They are given OBJFILE as the "owner". */ + void add_target_sections (struct objfile *objfile); + /* Unique ID number. */ int num = 0; diff --git a/gdb/symfile-mem.c b/gdb/symfile-mem.c index 916c37c..914976c 100644 --- a/gdb/symfile-mem.c +++ b/gdb/symfile-mem.c @@ -122,7 +122,7 @@ symbol_file_add_from_memory (struct bfd *templ, CORE_ADDR addr, objf = symbol_file_add_from_bfd (nbfd, bfd_get_filename (nbfd), add_flags, &sai, OBJF_SHARED, NULL); - add_target_sections_of_objfile (objf); + current_program_space->add_target_sections (objf); /* This might change our ideas about frames already looked at. */ reinit_frame_cache (); diff --git a/gdb/symfile.c b/gdb/symfile.c index 5041327..58ed660 100644 --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -2323,7 +2323,7 @@ add_symbol_file_command (const char *args, int from_tty) if (seen_offset) set_objfile_default_section_offset (objf, section_addrs, offset); - add_target_sections_of_objfile (objf); + current_program_space->add_target_sections (objf); /* Getting new symbols may change our opinion about what is frameless. */ |