* elf32-spu.c (get_sym_h): Don't attempt to read global syms.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
1f27ab8d
AM
12008-06-04 Alan Modra <amodra@bigpond.net.au>
2
3 * elf32-spu.c (get_sym_h): Don't attempt to read global syms.
4 (process_stubs): Likewise.
5 (discover_functions): Don't used cached symbols.
6 (maybe_insert_function): Correct condition under which function
7 array is realloc'd.
8 (mark_functions_via_relocs): Delete unused variable.
9
adfef0bd
NC
102008-05-30 Frediano Ziglio <frediano.ziglio@vodafone.com>
11 Nick Clifton <nickc@redhat.com>
12
13 PR ld/6511
14 * elf64-hppa.c (allocate_global_data_opd): Default to using the
15 dynamic symbol table for local function names in shared libraries.
16
11701589
JK
172008-05-29 Jan Kratochvil <jan.kratochvil@redhat.com>
18
19 * elf.c (assign_file_positions_for_load_sections): Adjust pre-section
20 gaps based on VMA and P_VADDR instead of LMA and P_PADDR addresses.
21
124b52c6
AM
222008-05-28 Alan Modra <amodra@bigpond.net.au>
23
24 * elf32-spu.c (spu_elf_object_p): New function.
25 (elf_backend_object_p): Define.
26 (build_stub): Correct second word of 8 byte overlay stubs.
27 (spu_elf_relocate_section): Formatting.
28
bb864ac1
CES
292008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
30
31 * elf.c (elfcore_write_register_note): New function.
32 * elf-bfd.h (elfcore_write_register_note): New prototype.
33
da5938a2
NC
342008-05-22 Christophe Lyon <christophe.lyon@st.com>
35
36 * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols.
37 (elf32_arm_stub_add_mapping_symbol): Remove.
38 (elf32_arm_add_stub): Don't generate mapping symbols. Change
39 prototype.
40 (elf32_arm_size_stubs): Use new elf32_arm_add_stub
41 prototype. Don't generate thumb to arm glue for calls.
42 (arm_map_one_stub): Define.
43 (elf32_arm_output_arch_local_syms): Generate mapping symbols for
44 long calls stubs.
45
7fb9f789
NC
462008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
47
48 Add multi-GOT support for m68k.
49 * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
50 glist): New fields.
51 (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
52 struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
53 struct elf_m68k_multi_got): New data structures.
54 (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
55 allow_multigot_p, multi_got_): New fields.
56 (elf_m68k_multi_got): New macro.
57 (elf_m68k_link_hash_newfunc): Initialize new fields of
58 struct elf_m68k_link_hash_entry.
59 (elf_m68k_link_hash_table_create): Initialize new fields of
60 struct elf_m68k_link_hash_table.
61 (elf_m68k_link_hash_table_free): New static function implementing hook.
62 (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
63 static functions for struct elf_m68k_got.
64 (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
65 elf_m68k_got_entry_eq): New static functions for
66 struct elf_m68k_got_entry.
67 (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
68 ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
69 (enum elf_m68k_get_entry_howto): New enum.
70 (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
71 elf_m68k_remove_got_entry_type): New static functions for
72 struct elf_m68k_got_entry.
73 (elf_m68k_add_entry_to_got): New static function.
74 (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
75 elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
76 functions for struct elf_m68k_bfd2got_entry.
77 (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
78 elf_m68k_can_merge_gots): New traversal.
79 (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
80 elf_m68k_merge_gots): Ditto.
81 (struct elf_m68k_finalize_got_offsets_arg,
82 elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
83 (struct elf_m68k_partition_multi_got_arg,
84 elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
85 elf_m68k_partition_multi_got): Ditto.
86 (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
87 functions.
88 (elf_m68k_copy_indirect_symbol): New static function implementing
89 a hook.
90 (elf_m68k_check_relocs): Update to add entries to multi-GOT.
91 (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
92 (elf_m68k_always_size_sections): Assign BFDs to GOTs.
93 (elf_m68k_relocate_section): Update to properly handle GOT relocations.
94 (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
95 of a global symbol.
96 (bfd_elf_m68k_set_target_options): New function.
97 (bfd_elf32_bfd_link_hash_table_free): Define hook.
98 (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
99 to skip generic calculation of GOT offsets.
100 (elf_backend_copy_indirect_symbol): Define hook.
101 * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
102 * bfd-in2.h: Regenerate.
103