bfd/
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
b0a0b978
JZ
12008-07-15 Jie Zhang <jie.zhang@analog.com>
2
3 * elf32-bfin.c (elf32_bfin_special_sections[]): New.
4 (elf_backend_special_sections): Define.
5
aaf30c25
CS
62008-07-13 Craig Silverstein <csilvers@google.com>
7
08b78292 8 PR binutils/6743
aaf30c25
CS
9 * dwarf2.c (struct dwarf2_debug): New variable info_ptr_memory.
10 (find_line): Use info_ptr_memory instead of sec_info_ptr.
11 (_bfd_dwarf2_cleanup_debug_info): Likewise.
12
1bac266e
JZ
132008-07-12 Jie Zhang <jie.zhang@analog.com>
14
15 Revert
16 2008-07-12 Jie Zhang <jie.zhang@analog.com>
17 * elf.c (_bfd_elf_map_sections_to_segments): Don't put
18 executable sections into the same segment with other
19 read only sections if --sep-code.
20 * elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
21 (elf32_bfin_data_in_l1): New variable.
22 (elf32_bfin_final_write_processing): New.
23 (elf32_bfin_special_sections[]): New.
24 (elf_backend_final_write_processing): Define.
25 (elf_backend_special_sections): Define.
26
8c684578
JZ
272008-07-12 Jie Zhang <jie.zhang@analog.com>
28
29 * elf.c (_bfd_elf_map_sections_to_segments): Don't put
30 executable sections into the same segment with other
31 read only sections if --sep-code.
32 * elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
33 (elf32_bfin_data_in_l1): New variable.
34 (elf32_bfin_final_write_processing): New.
35 (elf32_bfin_special_sections[]): New.
36 (elf_backend_final_write_processing): Define.
37 (elf_backend_special_sections): Define.
38
3076cd1f
AS
392008-07-11 Andreas Schwab <schwab@suse.de>
40
41 * dwarf2.c (read_section): Take pointer to bfd_size_type instead
42 of unsigned long as last parameter.
43 (struct dwarf2_debug): Define dwarf_abbrev_size, dwarf_line_size,
44 dwarf_str_size and dwarf_ranges_size as bfd_size_type instead of
45 unsigned long.
46
0a61c8c2
RS
472008-07-10 Richard Sandiford <rdsandiford@googlemail.com>
48
49 * elfxx-mips.c (mips_elf_calculate_relocation): Calculate GP and GP0
50 for all relocation types. Allow any type of relocation to refer to
51 __gnu_local_gp.
52
30c09090
RS
532008-07-10 Richard Sandiford <rdsandiford@googlemail.com>
54
55 * elfxx-mips.c (mips_elf_check_mips16_stubs): Use ELF_ST_IS_MIPS16.
56 (mips_elf_calculate_relocation): Likewise.
57 (_bfd_mips_elf_add_symbol_hook): Likewise.
58 (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
59 (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
60
355d10dc
AS
612008-07-10 Andreas Schwab <schwab@suse.de>
62
63 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Add missing
64 paren.
65
1b315056
CS
662008-07-09 Craig Silverstein <csilvers@google.com>
67
68 * Makefile.am (BFD32_LIBS): Add compress.lo.
69 (BFD32_LIBS_CFILES): Add compress.c.
70 (BFD_H_FILES): Likewise.
71 * Makefile.in: Regenerate.
72 * bfd-in2.h: Regenerate.
73 * config.in: Add HAVE_ZLIB_H
74 * configure.in: Add test for libz and zlib.h
75 * configure: Regenerate.
76 * dwarf2.c (read_section): New function.
77 (read_indirect_string): Call new function read_section.
78 (read_abbrevs): Likewise.
79 (decode_line_info): Likewise.
80 (read_debug_ranges): Likewise.
81 (find_line): Call new function read_section when just one
82 .zdebug_info section is found, otherwise read and compress
83 multiple sections.
84 (_bfd_dwarf2_cleanup_debug_info): Free sec_info_ptr.
85 * elf.c (_bfd_elf_make_section_from_shdr): Add zdebug prefix.
86 (special_sections_z): New struct.
87 (special_sections): Refer to special_sections_z.
88 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Recognize
89 sections named .zdebug_*.
90 (_bfd_mips_elf_fake_sections): Likewise.
91 * compress.c: New file.
92 (bfd_uncompress_section_contents): New function.
93
329dcd78
NC
942008-07-07 Christophe Lyon <christophe.lyon@st.com>
95
96 * elf32-arm.c (arm_type_of_stub): Don't crash on local symbols in
97 the presence of a PLT.
98
c29aae59
AM
992008-07-07 Alan Modra <amodra@bigpond.net.au>
100
101 * bfd.c (bfd_demangle): Always trim off bfd_get_symbol_leading_char.
102
7382d32a
AM
1032008-07-02 Alan Modra <amodra@bigpond.net.au>
104
105 * elf32-ppc.c (is_pic_glink_stub): New function.
106 (ppc_elf_get_synthetic_symtab): Don't generate symbols when
107 multiple shared/pie stubs per plt entry.
108
cb53bf42
RS
1092008-06-30 Richard Sandiford <rdsandiford@googlemail.com>
110
111 * elf.c (_bfd_elf_get_synthetic_symtab): Increment p by
112 bed->s->int_rels_per_ext_rel.
113
6ba2a415
RS
1142008-06-30 Richard Sandiford <rdsandiford@googlemail.com>
115
116 * syms.c (BSF_SYNTHETIC): New flag.
117 * elf.c (_bfd_elf_get_synthetic_symtab): Set it.
118 * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Likewise.
119 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
120 * bfd-in.h (bfd_asymbol_flavour): Return bfd_target_unknown_flavour
121 for synthetic symbols.
122 * bfd-in2.h: Regenerate.
123
3dccd7b7
DJ
1242008-06-30 Daniel Jacobowitz <dan@codesourcery.com>
125
126 * elf32-arm.c (record_arm_to_thumb_glue, record_thumb_to_arm_glue):
127 Expand comments.
128 (arm_map_one_stub): Use | 1 when setting the low bit.
129
f57718b4
AS
1302008-06-29 Andreas Schwab <schwab@suse.de>
131
132 * elf32-m68k.c (elf_m68k_relocate_section): Don't ignore existing
133 addend on _GLOBAL_OFFSET_TABLE_.
134
7413f23f
DJ
1352008-06-24 Daniel Jacobowitz <dan@codesourcery.com>
136
137 * elf32-arm.c (STUB_ENTRY_NAME): Define.
138 (arm_thumb_thumb_long_branch_stub): Use bx instead of b.n.
139 (arm_pic_long_branch_stub): Mention R_ARM_REL32 instead of
140 R_ARM_ABS32.
141 (struct elf32_arm_stub_hash_entry): Add output_name.
142 (arm_build_one_stub): Move offsets into the offset argument
143 of _bfd_final_link_relocate. Correct offset for
144 arm_thumb_arm_v4t_stub_long_branch.
145 (elf32_arm_size_stubs): Set stub_entry->output_name.
146 (elf32_arm_ouput_plt_map_sym): Rename to elf32_arm_output_map_sym.
147 Update all callers.
148 (elf32_arm_output_stub_sym): New.
149 (arm_map_one_stub): Correct formatting. Use elf32_arm_output_stub_sym.
150
7c39fb20
AM
1512008-06-20 Alan Modra <amodra@bigpond.net.au>
152
153 * elf32-spu.c (needs_ovl_stub): Correctly return nonovl_stub for
154 non-branch insns.
155
f3c29e8a
AM
1562008-06-20 Alan Modra <amodra@bigpond.net.au>
157
158 * elf32-spu.c (build_stub): Allow wraparound on stub branches.
159 (allocate_spuear_stubs, build_spuear_stubs): Return value from
160 count_stub/build_stub.
161 (spu_elf_build_stubs): Correct location of stub reloc error message.
162
de73c611
SR
1632008-06-18 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
164
165 * elf32-cr16.c (ELF_MACHINE_ALT1): Define to EM_CR16_OLD.
166
7a283e07
RW
1672008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
168
169 * configure: Regenerate.
170
99302af9
AM
1712008-06-17 Alan Modra <amodra@bigpond.net.au>
172
173 * elf32-spu.c (struct spu_link_hash_table): Add extra_stack_space.
174 (spu_elf_check_vma): Add extra_stack_space param, copy to htab.
175 (spu_elf_auto_overlay): Use it.
176 (RECURSE_UNMARK): Define as 0.
177 (unmark_overlay_section): Heed RECURSE_UNMARK.
178 * elf32-spu.h (spu_elf_check_vma): Update prototype.
179
ff7eeb89
DD
1802008-06-12 DJ Delorie <dj@redhat.com>
181
182 * elf32-m32c.c (ELF_MACHINE_ALT1): Define as EM_M32C_OLD.
183
c13bb2ea
PB
1842008-06-09 Paul Brook <paul@codesourcery.com>
185
186 bfd/
187 * elf32-arm.c (elf32_arm_merge_private_bfd_data): Allow BE8 shared
188 libraries.
189
f4ac8484
DJ
1902008-06-09 Christophe Lyon <christophe.lyon@st.com>
191
192 * elf32-arm.c (arm_stub_is_thumb): Define.
193 (elf32_arm_final_link_relocate): Handle near mode switching stubs.
194
6a267715
AM
1952008-06-07 Alan Modra <amodra@bigpond.net.au>
196
197 * elf32-spu.c (spu_elf_auto_overlay): Add valid area below sp
198 to stack calculation.
199
23684067
PB
2002008-06-06 Paul Brook <paul@codesourcery.com>
201
202 bfd/
203 * elf32-arm.c (elf32_arm_merge_private_bfd_data): Reject BE8 input.
204
97407faf
AM
2052008-06-06 Alan Modra <amodra@bigpond.net.au>
206
207 * elf32-spu.c (spu_elf_auto_overlay): Relax requirement that
208 file names be unique. Specify archive:path in overlay script.
209
7cfbafbc
AM
2102008-06-05 Alan Modra <amodra@bigpond.net.au>
211
212 PR ld/6590
213 * elf64-ppc.c (ppc_build_one_stub): Correct reloc offsets.
214
0f0a5e58
AM
2152008-06-04 Alan Modra <amodra@bigpond.net.au>
216
217 * elf.c (ignore_section_sym): Don't test section sym value here.
218 (elf_map_symbols): Instead check zero value here as was done prior
219 to 2006-05-26 change.
220
696b7ad2
NC
2212008-06-04 Nick Clifton <nickc@redhat.com>
222
223 PR ld/6019
224 * elf32-avr.c (elf32_avr_relax_section): Handle the case where
225 there are no local symbols.
226
1f27ab8d
AM
2272008-06-04 Alan Modra <amodra@bigpond.net.au>
228
229 * elf32-spu.c (get_sym_h): Don't attempt to read global syms.
230 (process_stubs): Likewise.
231 (discover_functions): Don't used cached symbols.
232 (maybe_insert_function): Correct condition under which function
233 array is realloc'd.
234 (mark_functions_via_relocs): Delete unused variable.
235
adfef0bd
NC
2362008-05-30 Frediano Ziglio <frediano.ziglio@vodafone.com>
237 Nick Clifton <nickc@redhat.com>
238
239 PR ld/6511
240 * elf64-hppa.c (allocate_global_data_opd): Default to using the
241 dynamic symbol table for local function names in shared libraries.
242
11701589
JK
2432008-05-29 Jan Kratochvil <jan.kratochvil@redhat.com>
244
245 * elf.c (assign_file_positions_for_load_sections): Adjust pre-section
246 gaps based on VMA and P_VADDR instead of LMA and P_PADDR addresses.
247
124b52c6
AM
2482008-05-28 Alan Modra <amodra@bigpond.net.au>
249
250 * elf32-spu.c (spu_elf_object_p): New function.
251 (elf_backend_object_p): Define.
252 (build_stub): Correct second word of 8 byte overlay stubs.
253 (spu_elf_relocate_section): Formatting.
254
bb864ac1
CES
2552008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
256
257 * elf.c (elfcore_write_register_note): New function.
258 * elf-bfd.h (elfcore_write_register_note): New prototype.
259
da5938a2
NC
2602008-05-22 Christophe Lyon <christophe.lyon@st.com>
261
262 * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols.
263 (elf32_arm_stub_add_mapping_symbol): Remove.
264 (elf32_arm_add_stub): Don't generate mapping symbols. Change
265 prototype.
266 (elf32_arm_size_stubs): Use new elf32_arm_add_stub
267 prototype. Don't generate thumb to arm glue for calls.
268 (arm_map_one_stub): Define.
269 (elf32_arm_output_arch_local_syms): Generate mapping symbols for
270 long calls stubs.
271
7fb9f789
NC
2722008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
273
274 Add multi-GOT support for m68k.
275 * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
276 glist): New fields.
277 (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
278 struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
279 struct elf_m68k_multi_got): New data structures.
280 (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
281 allow_multigot_p, multi_got_): New fields.
282 (elf_m68k_multi_got): New macro.
283 (elf_m68k_link_hash_newfunc): Initialize new fields of
284 struct elf_m68k_link_hash_entry.
285 (elf_m68k_link_hash_table_create): Initialize new fields of
286 struct elf_m68k_link_hash_table.
287 (elf_m68k_link_hash_table_free): New static function implementing hook.
288 (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
289 static functions for struct elf_m68k_got.
290 (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
291 elf_m68k_got_entry_eq): New static functions for
292 struct elf_m68k_got_entry.
293 (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
294 ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
295 (enum elf_m68k_get_entry_howto): New enum.
296 (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
297 elf_m68k_remove_got_entry_type): New static functions for
298 struct elf_m68k_got_entry.
299 (elf_m68k_add_entry_to_got): New static function.
300 (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
301 elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
302 functions for struct elf_m68k_bfd2got_entry.
303 (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
304 elf_m68k_can_merge_gots): New traversal.
305 (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
306 elf_m68k_merge_gots): Ditto.
307 (struct elf_m68k_finalize_got_offsets_arg,
308 elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
309 (struct elf_m68k_partition_multi_got_arg,
310 elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
311 elf_m68k_partition_multi_got): Ditto.
312 (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
313 functions.
314 (elf_m68k_copy_indirect_symbol): New static function implementing
315 a hook.
316 (elf_m68k_check_relocs): Update to add entries to multi-GOT.
317 (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
318 (elf_m68k_always_size_sections): Assign BFDs to GOTs.
319 (elf_m68k_relocate_section): Update to properly handle GOT relocations.
320 (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
321 of a global symbol.
322 (bfd_elf_m68k_set_target_options): New function.
323 (bfd_elf32_bfd_link_hash_table_free): Define hook.
324 (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
325 to skip generic calculation of GOT offsets.
326 (elf_backend_copy_indirect_symbol): Define hook.
327 * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
328 * bfd-in2.h: Regenerate.
329