Commit | Line | Data |
---|---|---|
7382d32a AM |
1 | 2008-07-02 Alan Modra <amodra@bigpond.net.au> |
2 | ||
3 | * elf32-ppc.c (is_pic_glink_stub): New function. | |
4 | (ppc_elf_get_synthetic_symtab): Don't generate symbols when | |
5 | multiple shared/pie stubs per plt entry. | |
6 | ||
cb53bf42 RS |
7 | 2008-06-30 Richard Sandiford <rdsandiford@googlemail.com> |
8 | ||
9 | * elf.c (_bfd_elf_get_synthetic_symtab): Increment p by | |
10 | bed->s->int_rels_per_ext_rel. | |
11 | ||
6ba2a415 RS |
12 | 2008-06-30 Richard Sandiford <rdsandiford@googlemail.com> |
13 | ||
14 | * syms.c (BSF_SYNTHETIC): New flag. | |
15 | * elf.c (_bfd_elf_get_synthetic_symtab): Set it. | |
16 | * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Likewise. | |
17 | * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise. | |
18 | * bfd-in.h (bfd_asymbol_flavour): Return bfd_target_unknown_flavour | |
19 | for synthetic symbols. | |
20 | * bfd-in2.h: Regenerate. | |
21 | ||
3dccd7b7 DJ |
22 | 2008-06-30 Daniel Jacobowitz <dan@codesourcery.com> |
23 | ||
24 | * elf32-arm.c (record_arm_to_thumb_glue, record_thumb_to_arm_glue): | |
25 | Expand comments. | |
26 | (arm_map_one_stub): Use | 1 when setting the low bit. | |
27 | ||
f57718b4 AS |
28 | 2008-06-29 Andreas Schwab <schwab@suse.de> |
29 | ||
30 | * elf32-m68k.c (elf_m68k_relocate_section): Don't ignore existing | |
31 | addend on _GLOBAL_OFFSET_TABLE_. | |
32 | ||
7413f23f DJ |
33 | 2008-06-24 Daniel Jacobowitz <dan@codesourcery.com> |
34 | ||
35 | * elf32-arm.c (STUB_ENTRY_NAME): Define. | |
36 | (arm_thumb_thumb_long_branch_stub): Use bx instead of b.n. | |
37 | (arm_pic_long_branch_stub): Mention R_ARM_REL32 instead of | |
38 | R_ARM_ABS32. | |
39 | (struct elf32_arm_stub_hash_entry): Add output_name. | |
40 | (arm_build_one_stub): Move offsets into the offset argument | |
41 | of _bfd_final_link_relocate. Correct offset for | |
42 | arm_thumb_arm_v4t_stub_long_branch. | |
43 | (elf32_arm_size_stubs): Set stub_entry->output_name. | |
44 | (elf32_arm_ouput_plt_map_sym): Rename to elf32_arm_output_map_sym. | |
45 | Update all callers. | |
46 | (elf32_arm_output_stub_sym): New. | |
47 | (arm_map_one_stub): Correct formatting. Use elf32_arm_output_stub_sym. | |
48 | ||
7c39fb20 AM |
49 | 2008-06-20 Alan Modra <amodra@bigpond.net.au> |
50 | ||
51 | * elf32-spu.c (needs_ovl_stub): Correctly return nonovl_stub for | |
52 | non-branch insns. | |
53 | ||
f3c29e8a AM |
54 | 2008-06-20 Alan Modra <amodra@bigpond.net.au> |
55 | ||
56 | * elf32-spu.c (build_stub): Allow wraparound on stub branches. | |
57 | (allocate_spuear_stubs, build_spuear_stubs): Return value from | |
58 | count_stub/build_stub. | |
59 | (spu_elf_build_stubs): Correct location of stub reloc error message. | |
60 | ||
de73c611 SR |
61 | 2008-06-18 M R Swami Reddy <MR.Swami.Reddy@nsc.com> |
62 | ||
63 | * elf32-cr16.c (ELF_MACHINE_ALT1): Define to EM_CR16_OLD. | |
64 | ||
7a283e07 RW |
65 | 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
66 | ||
67 | * configure: Regenerate. | |
68 | ||
99302af9 AM |
69 | 2008-06-17 Alan Modra <amodra@bigpond.net.au> |
70 | ||
71 | * elf32-spu.c (struct spu_link_hash_table): Add extra_stack_space. | |
72 | (spu_elf_check_vma): Add extra_stack_space param, copy to htab. | |
73 | (spu_elf_auto_overlay): Use it. | |
74 | (RECURSE_UNMARK): Define as 0. | |
75 | (unmark_overlay_section): Heed RECURSE_UNMARK. | |
76 | * elf32-spu.h (spu_elf_check_vma): Update prototype. | |
77 | ||
ff7eeb89 DD |
78 | 2008-06-12 DJ Delorie <dj@redhat.com> |
79 | ||
80 | * elf32-m32c.c (ELF_MACHINE_ALT1): Define as EM_M32C_OLD. | |
81 | ||
c13bb2ea PB |
82 | 2008-06-09 Paul Brook <paul@codesourcery.com> |
83 | ||
84 | bfd/ | |
85 | * elf32-arm.c (elf32_arm_merge_private_bfd_data): Allow BE8 shared | |
86 | libraries. | |
87 | ||
f4ac8484 DJ |
88 | 2008-06-09 Christophe Lyon <christophe.lyon@st.com> |
89 | ||
90 | * elf32-arm.c (arm_stub_is_thumb): Define. | |
91 | (elf32_arm_final_link_relocate): Handle near mode switching stubs. | |
92 | ||
6a267715 AM |
93 | 2008-06-07 Alan Modra <amodra@bigpond.net.au> |
94 | ||
95 | * elf32-spu.c (spu_elf_auto_overlay): Add valid area below sp | |
96 | to stack calculation. | |
97 | ||
23684067 PB |
98 | 2008-06-06 Paul Brook <paul@codesourcery.com> |
99 | ||
100 | bfd/ | |
101 | * elf32-arm.c (elf32_arm_merge_private_bfd_data): Reject BE8 input. | |
102 | ||
97407faf AM |
103 | 2008-06-06 Alan Modra <amodra@bigpond.net.au> |
104 | ||
105 | * elf32-spu.c (spu_elf_auto_overlay): Relax requirement that | |
106 | file names be unique. Specify archive:path in overlay script. | |
107 | ||
7cfbafbc AM |
108 | 2008-06-05 Alan Modra <amodra@bigpond.net.au> |
109 | ||
110 | PR ld/6590 | |
111 | * elf64-ppc.c (ppc_build_one_stub): Correct reloc offsets. | |
112 | ||
0f0a5e58 AM |
113 | 2008-06-04 Alan Modra <amodra@bigpond.net.au> |
114 | ||
115 | * elf.c (ignore_section_sym): Don't test section sym value here. | |
116 | (elf_map_symbols): Instead check zero value here as was done prior | |
117 | to 2006-05-26 change. | |
118 | ||
696b7ad2 NC |
119 | 2008-06-04 Nick Clifton <nickc@redhat.com> |
120 | ||
121 | PR ld/6019 | |
122 | * elf32-avr.c (elf32_avr_relax_section): Handle the case where | |
123 | there are no local symbols. | |
124 | ||
1f27ab8d AM |
125 | 2008-06-04 Alan Modra <amodra@bigpond.net.au> |
126 | ||
127 | * elf32-spu.c (get_sym_h): Don't attempt to read global syms. | |
128 | (process_stubs): Likewise. | |
129 | (discover_functions): Don't used cached symbols. | |
130 | (maybe_insert_function): Correct condition under which function | |
131 | array is realloc'd. | |
132 | (mark_functions_via_relocs): Delete unused variable. | |
133 | ||
adfef0bd NC |
134 | 2008-05-30 Frediano Ziglio <frediano.ziglio@vodafone.com> |
135 | Nick Clifton <nickc@redhat.com> | |
136 | ||
137 | PR ld/6511 | |
138 | * elf64-hppa.c (allocate_global_data_opd): Default to using the | |
139 | dynamic symbol table for local function names in shared libraries. | |
140 | ||
11701589 JK |
141 | 2008-05-29 Jan Kratochvil <jan.kratochvil@redhat.com> |
142 | ||
143 | * elf.c (assign_file_positions_for_load_sections): Adjust pre-section | |
144 | gaps based on VMA and P_VADDR instead of LMA and P_PADDR addresses. | |
145 | ||
124b52c6 AM |
146 | 2008-05-28 Alan Modra <amodra@bigpond.net.au> |
147 | ||
148 | * elf32-spu.c (spu_elf_object_p): New function. | |
149 | (elf_backend_object_p): Define. | |
150 | (build_stub): Correct second word of 8 byte overlay stubs. | |
151 | (spu_elf_relocate_section): Formatting. | |
152 | ||
bb864ac1 CES |
153 | 2008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> |
154 | ||
155 | * elf.c (elfcore_write_register_note): New function. | |
156 | * elf-bfd.h (elfcore_write_register_note): New prototype. | |
157 | ||
da5938a2 NC |
158 | 2008-05-22 Christophe Lyon <christophe.lyon@st.com> |
159 | ||
160 | * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols. | |
161 | (elf32_arm_stub_add_mapping_symbol): Remove. | |
162 | (elf32_arm_add_stub): Don't generate mapping symbols. Change | |
163 | prototype. | |
164 | (elf32_arm_size_stubs): Use new elf32_arm_add_stub | |
165 | prototype. Don't generate thumb to arm glue for calls. | |
166 | (arm_map_one_stub): Define. | |
167 | (elf32_arm_output_arch_local_syms): Generate mapping symbols for | |
168 | long calls stubs. | |
169 | ||
7fb9f789 NC |
170 | 2008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com> |
171 | ||
172 | Add multi-GOT support for m68k. | |
173 | * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key, | |
174 | glist): New fields. | |
175 | (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry, | |
176 | struct elf_m68k_got, struct elf_m68k_bfd2got_entry, | |
177 | struct elf_m68k_multi_got): New data structures. | |
178 | (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p, | |
179 | allow_multigot_p, multi_got_): New fields. | |
180 | (elf_m68k_multi_got): New macro. | |
181 | (elf_m68k_link_hash_newfunc): Initialize new fields of | |
182 | struct elf_m68k_link_hash_entry. | |
183 | (elf_m68k_link_hash_table_create): Initialize new fields of | |
184 | struct elf_m68k_link_hash_table. | |
185 | (elf_m68k_link_hash_table_free): New static function implementing hook. | |
186 | (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New | |
187 | static functions for struct elf_m68k_got. | |
188 | (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash, | |
189 | elf_m68k_got_entry_eq): New static functions for | |
190 | struct elf_m68k_got_entry. | |
191 | (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT, | |
192 | ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros. | |
193 | (enum elf_m68k_get_entry_howto): New enum. | |
194 | (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type, | |
195 | elf_m68k_remove_got_entry_type): New static functions for | |
196 | struct elf_m68k_got_entry. | |
197 | (elf_m68k_add_entry_to_got): New static function. | |
198 | (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq, | |
199 | elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static | |
200 | functions for struct elf_m68k_bfd2got_entry. | |
201 | (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1, | |
202 | elf_m68k_can_merge_gots): New traversal. | |
203 | (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1, | |
204 | elf_m68k_merge_gots): Ditto. | |
205 | (struct elf_m68k_finalize_got_offsets_arg, | |
206 | elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto. | |
207 | (struct elf_m68k_partition_multi_got_arg, | |
208 | elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1, | |
209 | elf_m68k_partition_multi_got): Ditto. | |
210 | (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static | |
211 | functions. | |
212 | (elf_m68k_copy_indirect_symbol): New static function implementing | |
213 | a hook. | |
214 | (elf_m68k_check_relocs): Update to add entries to multi-GOT. | |
215 | (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT. | |
216 | (elf_m68k_always_size_sections): Assign BFDs to GOTs. | |
217 | (elf_m68k_relocate_section): Update to properly handle GOT relocations. | |
218 | (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries | |
219 | of a global symbol. | |
220 | (bfd_elf_m68k_set_target_options): New function. | |
221 | (bfd_elf32_bfd_link_hash_table_free): Define hook. | |
222 | (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link | |
223 | to skip generic calculation of GOT offsets. | |
224 | (elf_backend_copy_indirect_symbol): Define hook. | |
225 | * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function. | |
226 | * bfd-in2.h: Regenerate. | |
227 |