daily update
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
bb864ac1
CES
12008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
2
3 * elf.c (elfcore_write_register_note): New function.
4 * elf-bfd.h (elfcore_write_register_note): New prototype.
5
da5938a2
NC
62008-05-22 Christophe Lyon <christophe.lyon@st.com>
7
8 * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols.
9 (elf32_arm_stub_add_mapping_symbol): Remove.
10 (elf32_arm_add_stub): Don't generate mapping symbols. Change
11 prototype.
12 (elf32_arm_size_stubs): Use new elf32_arm_add_stub
13 prototype. Don't generate thumb to arm glue for calls.
14 (arm_map_one_stub): Define.
15 (elf32_arm_output_arch_local_syms): Generate mapping symbols for
16 long calls stubs.
17
7fb9f789
NC
182008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
19
20 Add multi-GOT support for m68k.
21 * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
22 glist): New fields.
23 (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
24 struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
25 struct elf_m68k_multi_got): New data structures.
26 (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
27 allow_multigot_p, multi_got_): New fields.
28 (elf_m68k_multi_got): New macro.
29 (elf_m68k_link_hash_newfunc): Initialize new fields of
30 struct elf_m68k_link_hash_entry.
31 (elf_m68k_link_hash_table_create): Initialize new fields of
32 struct elf_m68k_link_hash_table.
33 (elf_m68k_link_hash_table_free): New static function implementing hook.
34 (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
35 static functions for struct elf_m68k_got.
36 (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
37 elf_m68k_got_entry_eq): New static functions for
38 struct elf_m68k_got_entry.
39 (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
40 ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
41 (enum elf_m68k_get_entry_howto): New enum.
42 (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
43 elf_m68k_remove_got_entry_type): New static functions for
44 struct elf_m68k_got_entry.
45 (elf_m68k_add_entry_to_got): New static function.
46 (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
47 elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
48 functions for struct elf_m68k_bfd2got_entry.
49 (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
50 elf_m68k_can_merge_gots): New traversal.
51 (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
52 elf_m68k_merge_gots): Ditto.
53 (struct elf_m68k_finalize_got_offsets_arg,
54 elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
55 (struct elf_m68k_partition_multi_got_arg,
56 elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
57 elf_m68k_partition_multi_got): Ditto.
58 (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
59 functions.
60 (elf_m68k_copy_indirect_symbol): New static function implementing
61 a hook.
62 (elf_m68k_check_relocs): Update to add entries to multi-GOT.
63 (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
64 (elf_m68k_always_size_sections): Assign BFDs to GOTs.
65 (elf_m68k_relocate_section): Update to properly handle GOT relocations.
66 (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
67 of a global symbol.
68 (bfd_elf_m68k_set_target_options): New function.
69 (bfd_elf32_bfd_link_hash_table_free): Define hook.
70 (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
71 to skip generic calculation of GOT offsets.
72 (elf_backend_copy_indirect_symbol): Define hook.
73 * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
74 * bfd-in2.h: Regenerate.
75