diff options
author | Alan Modra <amodra@gmail.com> | 2015-08-31 17:50:33 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2015-08-31 22:54:06 +0930 |
commit | 6f20ed8a6ba1a01fb356eea8ea45310ed8478a27 (patch) | |
tree | 4d036fe5f4eae325cc4925745f2251223a158eca /bfd/ChangeLog | |
parent | 136765eab14d32f5fec607f755c3096eb43bf96f (diff) | |
download | gdb-6f20ed8a6ba1a01fb356eea8ea45310ed8478a27.zip gdb-6f20ed8a6ba1a01fb356eea8ea45310ed8478a27.tar.gz gdb-6f20ed8a6ba1a01fb356eea8ea45310ed8478a27.tar.bz2 |
ppc64 section group handling
Two organizational changes to the array of additional info kept for
sections.
1) Move group info into a per-group allocated struct, in preparation
for future changes that need per-group accounting.
2) Expand the array to include output sections, which simplifies
sizing and removes the need for a separate output section array.
* section.c (section_id): Make file scope.
(bfd_get_next_section_id): New function.
* elf64-ppc.c (struct map_stub): Remove toc_off field. Move decl.
(struct ppc_stub_hash_entry): Delete stub_sec and id_sec. Add
group. Update all uses.
(struct ppc_link_hash_table): Delete top_id, top_index, and
input_list. Add sec_info_arr_size. Rename stub_group to
sec_info, and make group info indirect. Update stub_group refs
throughout file.
(ppc_add_stub): Don't look for stub_sec on link_sec stub_group
entry.
(ppc_build_one_stub): Delete FIXME.
(ppc64_elf_setup_section_lists): Size htab->sec_info for all
sections, not just input sections. Don't create htab->input_list.
(ppc64_elf_next_input_section): Update to use sec_info union as
list pointer.
(PREV_SEC): Delete.
(group_sections): Pass "info" param rather than "htab". Iterate
over output sections rather than input_list. Use sec_info union
as list pointers. Alloc atruct map_stub, and return fail status.
* bfd-in2.h: Regenerate.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r-- | bfd/ChangeLog | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 44f5d78..58d2359 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,29 @@ 2015-08-31 Alan Modra <amodra@gmail.com> + * section.c (section_id): Make file scope. + (bfd_get_next_section_id): New function. + * elf64-ppc.c (struct map_stub): Remove toc_off field. Move decl. + (struct ppc_stub_hash_entry): Delete stub_sec and id_sec. Add + group. Update all uses. + (struct ppc_link_hash_table): Delete top_id, top_index, and + input_list. Add sec_info_arr_size. Rename stub_group to + sec_info, and make group info indirect. Update stub_group refs + throughout file. + (ppc_add_stub): Don't look for stub_sec on link_sec stub_group + entry. + (ppc_build_one_stub): Delete FIXME. + (ppc64_elf_setup_section_lists): Size htab->sec_info for all + sections, not just input sections. Don't create htab->input_list. + (ppc64_elf_next_input_section): Update to use sec_info union as + list pointer. + (PREV_SEC): Delete. + (group_sections): Pass "info" param rather than "htab". Iterate + over output sections rather than input_list. Use sec_info union + as list pointers. Alloc atruct map_stub, and return fail status. + * bfd-in2.h: Regenerate. + +2015-08-31 Alan Modra <amodra@gmail.com> + * elflink.c (elf_sort_symbol): Use correctly sized type for calculating signed section->id difference. (elf_link_add_object_symbols): Likewise. |