* elf-bfd.h (struct elf_backend_data): Add
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
8387904d
AM
12004-08-09 Alan Modra <amodra@bigpond.net.au>
2
3 * elf-bfd.h (struct elf_backend_data): Add
4 elf_backend_archive_symbol_lookup.
5 (_bfd_elf_archive_symbol_lookup): Declare.
6 * elflink.c (_bfd_elf_archive_symbol_lookup): New function..
7 (elf_link_add_archive_symbols): ..extracted from here. Call the
8 backend version.
9 * elfxx-target.h (elf_backend_archive_symbol_lookup): Provide default.
10 (elfNN_bed): Init new field.
11 * elf64-ppc.c (elf_backend_check_directives): Define.
12 (elf_backend_archive_symbol_lookup): Define.
13 (struct ppc_link_hash_table): Add tls_get_add_fd. Make tls_get_add
14 a ppc_link_hash_entry pointer.
15 (get_fdh): Move.
16 (ppc64_elf_archive_symbol_lookup, opd_entry_value): New functions.
17 (add_symbol_adjust, ppc64_elf_check_directives): New functions.
18 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, func_desc_adjust,
19 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup,
20 ppc64_elf_tls_optimize, allocate_dynrelocs, ppc_type_of_stub,
21 ppc_build_one_stub, ppc64_elf_size_stubs, ppc64_elf_relocate_section,
22 ppc64_elf_finish_dynamic_symbol): Handle branch relocs to function
23 descriptor symbols.
24
b25116a9
AM
252004-08-09 Alan Modra <amodra@bigpond.net.au>
26
8843416a
AM
27 * elf64-ppc.c (struct ppc_link_hash_entry): Expand adjust_done comment.
28 (ppc64_elf_add_symbol_hook): Test for NULL section.
29 (get_sym_h): Formatting.
30 (ppc64_elf_size_stubs): Include reloc addend in value stored as
31 stub target_value.
32
b25116a9
AM
33 * elf64-ppc.c (ppc64_elf_relocate_section): Combine handling of
34 long branch stubs with code handling plt and r2off branch stubs.
35
ccfa59ea
AM
362004-08-09 Alan Modra <amodra@bigpond.net.au>
37
38 * elf-bfd.h (_bfd_elf_gc_mark): Declare.
39 * elflink.c (elf_link_input_bfd): Formatting.
40 (_bfd_elf_gc_mark): Rename from elf_gc_mark and make global. Adjust
41 all callers.
42 * elf64-ppc.c (struct ppc_link_hash_entry): Remove is_entry.
43 (link_hash_newfunc): Don't set it.
44 (ppc64_elf_copy_indirect_symbol): Nor copy it.
45 (ppc64_elf_mark_entry_syms): Delete.
46 (ppc64_elf_gc_mark_hook): Mark entry syms here. Also mark opd
47 sections. Use get_opd_info.
48 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Delete.
49
4025353c
AM
502004-08-09 Alan Modra <amodra@bigpond.net.au>
51
4f800a42
AM
52 * elf64-ppc.c (adjust_opd_syms): Fix merge error.
53
06da1e8e
AM
54 * elf64-ppc.c (struct ppc_link_hash_table): Remove have_undefweak.
55 (func_desc_adjust): Don't set have_undefweak.
56 (ppc64_elf_func_desc_adjust): Don't add an extr nop to sfpr.
57 (ppc64_elf_relocate_section): NOP out calls to undefweak functions.
58
34814b9f
AM
59 * elf64-ppc.c (struct ppc_link_hash_entry): Make "oh" a
60 "struct ppc_link_hash_entry *". Adjust all references.
61 (ppc64_elf_hide_symbol): Correct a comment.
62
4025353c
AM
63 * elf64-ppc.c (get_opd_info): New function.
64 (adjust_opd_syms): Use get_opd_info. Define removed symbols as zero.
65 (ppc64_elf_edit_opd): Use get_opd_info. Check that sym has a dot
66 before calling get_fdh. Test fdh rather than h before dereferencing
67 fdh. Mark removed symbols in opd_adjust.
68 (ppc64_elf_tls_optimize): Don't bother with opd adjustment here.
69 (ppc64_elf_relocate_section): Use get_opd_info, and handle removed
70 opd symbols.
71 (ppc64_elf_output_symbol_hook): Likewise.
72
db6579d4
PB
732004-08-06 Paul Brook <paul@codesourcery.com>
74
75 * elfarm-nabi.c (elf32_arm_howto_table): Add new EABI relocations.
76 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_RELABS32,
77 BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32.
78 * reloc.c: Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32
79 and BFD_RELOC_ARM_SBREL32.
80 * bfd-in2.h, bbfd.h: Regenerate.
81
a4d0f181
TS
822004-08-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
83
84 * elfxx-mips.c (mips_elf_calculate_relocation): Test only for
85 the dynamic link symbol actually in use.
86
83774818
SC
872004-08-01 Stephane Carrez <stcarrez@nerim.fr>
88
89 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Handle bfd_link_hash_new
90
a4d0f181 912004-07-31 Joel Brobecker <brobecker@gnat.com>
00b4930b
TS
92 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
93
94 * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Handle
95 SHN_MIPS_TEXT and SHN_MIPS_DATA.
96
185d09ad
L
972004-07-30 H.J. Lu <hongjiu.lu@intel.com>
98 Nick Clifton <nickc@redhat.com>
99
100 PR 290
101 * bfd.c (_bfd_default_error_handler): Make it global.
102
103 * elf-bfd.h (elf_backend_data): Add link_order_error_handler.
104
105 * elf.c (assign_section_numbers): Cope gracefully with sections
106 which have SHF_LINK_ORDER set but no sh_link set up.
107 * elflink.c (elf_get_linked_section_vma): Likewise.
108
109 * elfxx-ia64.c (elf_backend_link_order_error_handler): New. Set
110 it to NULL.
111
112 * elfxx-target.h (elf_backend_link_order_error_handler): New.
113 Set it to _bfd_default_error_handler.
114 (elfNN_bed): Add elf_backend_link_order_error_handler.
115
116 * libbfd-in.h (_bfd_default_error_handler): New.
117
118 * libbfd.h: Regenerated.
119
7946e94a
JJ
1202004-07-30 Jakub Jelinek <jakub@redhat.com>
121
122 * archures.c (bfd_mach_sparc_64bit_p): Define.
123 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Use it.
124 * bfd-in2.h: Rebuilt.
125
1d70c7fb
AO
1262004-07-29 Alexandre Oliva <aoliva@redhat.com>
127
128 Introduce SH2a support.
129 2004-02-18 Corinna Vinschen <vinschen@redhat.com>
130 * archures.c (bfd_mach_sh2a_nofpu): New.
131 * bfd-in2.h: Rebuilt.
132 * cpu-sh.c (SH2A_NOFPU_NEXT): New.
133 (arch_info_struct): Add sh2a_nofpu.
134 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu.
135 2003-12-29 DJ Delorie <dj@redhat.com>
136 * reloc.c: Add relocs for sh2a.
137 * bfd-in2.h: Regenerate.
138 * libbfd.hh: Regenerate.
139 2003-12-01 Michael Snyder <msnyder@redhat.com>
140 * archures.c (bfd_mach_sh2a): New.
141 * bfd-in2.h: Rebuilt.
142 * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums.
143 (SH2A_NEXT): New.
144 (arch_info_struct): Add sh2a.
145 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a.
146
404ed0cf
DA
1472004-07-28 Nick Clifton <nickc@redhat.com>
148 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
149
150 PR 273
151 * som.c (setup_sections): Improve estimation of space sizes in
152 relocatable objects.
153
225247f0
JT
1542004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
155 * config.bfd (hppa*-*-netbsd*): Set targ_defvec to
156 bfd_elf32_hppa_nbsd_vec. Add bfd_elf32_hppa_linux_vec
157 to targ_selvecs.
158 * configure.in (bfd_elf32_hppa_nbsd_vec): Add case.
159 * configure: Regenerate.
160 * elf32-hppa.c (elf32_hppa_object_p): Add "elf32-hppa-netbsd"
161 case that accepts OSABI=NetBSD and OSABI=SysV.
162 (elf32_hppa_set_gp): For "elf32-hppa-netbsd", set the GP to
163 the base of .got or .data (if .got does not exist).
164 (elf32_hppa_post_process_headers): For elf32-hppa-netbsd,
165 set OSABI=NetBSD.
166 (TARGET_BIG_SYM): Add bfd_elf32_hppa_nbsd_vec case.
167 (TARGET_BIG_NAME): Add "elf32-hppa-netbsd" case.
168 * targets.c (bfd_elf32_hppa_nbsd_vec): Add extern declaration.
169 (_bfd_target_vector): Add bfd_elf32_hppa_nbsd_vec.
170
3d7f7666
L
1712004-07-27 H.J. Lu <hongjiu.lu@intel.com>
172
173 PR 161/251
174 * elf-bfd.h (bfd_elf_section_data): Add sec_group.
175 (elf_sec_group): Defined.
176 (bfd_elf_match_symbols_in_sections): New prototype.
177 (_bfd_elf_setup_group_pointers): Likewise.
178
179 * elf.c (bfd_elf_discard_group): Abort.
180 (bfd_elf_set_group_contents): Also include relocation sections.
181 Remove zero-fill for ld -r.
182 (_bfd_elf_setup_group_pointers): New function.
183 (elf_sort_elf_symbol): Likewise.
184 (elf_sym_name_compare): Likewise.
185 (bfd_elf_match_symbols_in_sections): Likewise.
186
187 * elfcode.h (elf_object_p): Call _bfd_elf_setup_group_pointers.
188
189 * elflink.c (match_group_member): New.
190 (elf_link_input_bfd): Check group member for discarded section.
191 (try_match_symbols_in_sections): New function.
192 (already_linked): Likewise.
193 (_bfd_elf_section_already_linked): Support mixing comdat group
194 and linkonce section.
195
196 * libbfd-in.h (bfd_section_already_linked_table_traverse): New.
197 * linker.c (bfd_section_already_linked_table_traverse): New.
198
199 * libbfd.h: Regenerated.
200
670ec21d
NC
2012004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
202
203 * reloc.c: Add BFD_RELOC_CRX_SWITCH8, BFD_RELOC_CRX_SWITCH16,
204 BFD_RELOC_CRX_SWITCH32.
205 * bfd-in2.h: Regenerate.
6cd7f07e 206 * libbfd.h: Regenerate.
670ec21d
NC
207 * elf32-crx.c: Support relocation/relaxation of
208 BFD_RELOC_CRX_SWITCH* types.
209
2c66dc6c
AM
2102004-07-27 Alan Modra <amodra@bigpond.net.au>
211
212 * elf64-ppc.c: Correct "Linker stubs" comment.
213
38ce5b11
L
2142004-07-26 H.J. Lu <hongjiu.lu@intel.com>
215
216 * elf-bfd.h (bfd_elf_section_data): Add a pointer for the
217 linked-to section.
218 (elf_linked_to_section): New.
219
220 * elf.c (assign_section_numbers): Set up sh_link for
221 SHF_LINK_ORDER.
222
223 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set sh_info
224 to sh_link for SHT_IA_64_UNWIND sections.
225
65da361f
L
2262004-07-22 H.J. Lu <hongjiu.lu@intel.com>
227
228 * elflink.c (elf_fixup_link_order): Add _() to error message.
229
08ccf96b
L
2302004-07-22 H.J. Lu <hongjiu.lu@intel.com>
231
232 * elflink.c (elf_fixup_link_order): Issue a warning and flag
233 an error if failed.
234
082b7297
L
2352004-07-21 H.J. Lu <hongjiu.lu@intel.com>
236
237 * aout-adobe.c (aout_32_section_already_linked): Defined.
238 * aout-target.h (MY_section_already_linked): Likewise.
239 * aout-tic30.c (MY_section_already_linked): Likewise.
240 * binary.c (binary_section_already_linked): Likewise.
241 * bout.c (b_out_section_already_linked): Likewise.
242 * coff-alpha.c (_bfd_ecoff_section_already_linked): Likewise.
243 * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
244 * coffcode.h (coff_section_already_linked): Likewise.
245 * i386msdos.c (msdos_section_already_linked): Likewise.
246 * i386os9k.c (os9k_section_already_linked): Likewise.
247 * ieee.c (ieee_section_already_linked): Likewise.
248 * ihex.c (ihex_section_already_linked): Likewise.
249 * mach-o.c (bfd_mach_o_section_already_linked): Likewise.
250 * mmo.c (mmo_section_already_linked): Likewise.
251 * nlm-target.h (nlm_section_already_linked): Likewise.
252 * oasys.c (oasys_section_already_linked): Likewise.
253 * pef.c (bfd_pef_section_already_linked): Likewise.
254 * ppcboot.c (ppcboot_section_already_linked): Likewise.
255 * som.c (som_bfd_discard_group): Likewise.
256 * srec.c (srec_section_already_linked): Likewise.
257 * tekhex.c (tekhex_section_already_linked): Likewise.
258 * versados.c (versados_section_already_linked): Likewise.
259 * vms.c (vms_section_already_linked): Likewise.
260 * coff-target.h (_bfd_xcoff_section_already_linked): Likewise.
261 * xsym.c (bfd_sym_section_already_linked): Likewise.
262
263 * bfd-in.h (bfd_section_already_linked_table_init): New.
264 (bfd_section_already_linked_table_free): Likewise.
265
266 * coff-rs6000.c (rs6000coff_vec): Add
267 _bfd_generic_section_already_linked.
268 (pmac_xcoff_vec): Likewise.
269 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
270 (aix5coff64_vec): Likewise.
271
272 * elf-bfd.h (_bfd_elf_section_already_linked): New prototype.
273 * elflink.c (_bfd_elf_section_already_linked): New function.
274
275 * elfxx-target.h (bfd_elfNN_section_already_linked): Defined.
276
277 * libbfd-in.h (_bfd_nolink_section_already_linked): Defined.
278 (_bfd_generic_section_already_linked): New.
279 (bfd_section_already_linked_hash_entry): Likewise.
280 (bfd_section_already_linked): Likewise.
281 (bfd_section_already_linked_table_lookup): Likewise.
282 (bfd_section_already_linked_table_insert): Likewise.
283
284 * linker.c (bfd_section_already_linked): New.
285 (_bfd_section_already_linked_table): Likewise.
286 (bfd_section_already_linked_table_lookup): Likewise.
287 (bfd_section_already_linked_table_insert): Likewise.
288 (already_linked_newfunc): Likewise.
289 (bfd_section_already_linked_table_init): Likewise.
290 (bfd_section_already_linked_table_free): Likewise.
291 (_bfd_generic_section_already_linked): Likewise.
292
293 * section.c (bfd_section): Remove comdat.
294 (bfd_comdat_info): Moved to ...
295 * bfd-in.h (coff_comdat_info): Here.
296 (bfd_coff_get_comdat_section): New.
297 * coffgen.c (bfd_coff_get_comdat_section): Likewise.
298 * libcoff-in.h (coff_section_tdata): Add comdat.
299 * coffcode.h (handle_COMDAT): Updated.
300 * cofflink.c (coff_link_add_symbols): Likewise.
301 * ecoff.c (bfd_debug_section): Likewise.
302
303 * targets.c (bfd_target): Add _section_already_linked.
304 (BFD_JUMP_TABLE_LINK): Updated.
305
306 * bfd-in2.h: Regenerated.
307 * libbfd.h: Likewise.
308 * libcoff.h: Likewise.
309
0b52efa6
PB
3102003-07-21 Paul Brook <paul@codesourcery.com>
311
312 * elflink.c (elf_get_linked_section_vma, compare_link_order,
313 elf_fixup_link_order): New functions.
314 (bfd_elf_final_link): Call elf_fixup_link_order.
315
7e2294f9
AO
3162004-07-21 Alexandre Oliva <aoliva@redhat.com>
317
318 * elf-bfd.h (ELF_COMMON_DEF_P): New.
319 * elflink.c (_bfd_elf_symbol_refs_local_p): Use it to handle
320 common definitions.
321 * elf-m10300.c: Use SYMBOL_REFERENCES_LOCAL instead of
322 _bfd_elf_symbol_refs_local_p.
323 * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove hack for common
324 symbols.
325
e56f61be
L
3262004-07-19 H.J. Lu <hongjiu.lu@intel.com>
327
328 * bfd-in.h (dynamic_lib_link_class): Add DYN_NO_ADD_NEEDED and
329 DYN_NO_NEEDED.
330 (bfd_elf_get_dyn_lib_class): New prototype.
331 * elf.c (bfd_elf_get_dyn_lib_class): New function.
332
333 * elflink.c (elf_link_add_object_symbols): Check DYN_AS_NEEDED,
334 DYN_DT_NEEDED and DYN_NO_NEEDED bits to see if a DT_NEEDED
335 entry is needed. Issue an error if a DT_NEEDED entry is needed
336 for a file marked DYN_NO_NEEDED.
337 (elf_link_check_versioned_symbol): Check the DYN_DT_NEEDED bit
338 for DT_NEEDED tags.
339
340 * bfd-in2.h: Regenerated.
341
27b56da8
DA
3422004-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
343
344 * elflink.c (elf_section_complain_discarded): Don't complain in
345 .PARISC.unwind.
346
bbb268c3
JW
3472004-07-10 James E Wilson <wilson@specifixinc.com>
348
349 * elfxx-ia64.c (elfNN_ia64_relax_ldxmov): Remove abfd parameter.
350 (elfNN_ia64_install_value, elfNN_ia64_relax_brl): Likewise.
351 (elfNN_ia64_relax_section, elfNN_ia64_relocate_section,
352 elfNN_ia64_finish_dynamic_symbol, elfNN_ia64_finish_dynamic_sections):
353 Fix callers.
354 (elfNN_ia64_relax_brl): Change bfd_get_64 to bfd_getl64. Change
355 bfd_put_64 to bfd_putl64.
356 (elfNN_ia64_relax_ldxmov, elfNN_ia64_install_value): Likewise.
2c66dc6c 357
e525914f
L
3582004-07-09 H.J. Lu <hongjiu.lu@intel.com>
359
360 PR 240
361 * elfxx-ia64.c (elfNN_ia64_relax_section): Only warn br in
362 .init/.fini sections when trying to relax it.
363
b1a6d0b1
NC
3642004-07-09 Jie Zhang <zhangjie@magima.com.cn>
365
366 * elf.c (assign_file_positions_for_segments): Make sure the
367 .dynamic section is the first section in the PT_DYNAMIC segment.
368
1a320fbb
NC
3692004-07-09 Nick Clifton <nickc@redhat.com>
370
371 * config.bfd: Change sh-sybmian-elf to sh-*-symbianelf.
372 * elf32-sh-symbian.c: Rename the sh_find_elf_flags and
373 sh_elf_get_flags_from_mach functions so that they do not conflict
374 when this target is built with other sh-elf targets.
375 * elf32-sh.c (sh_elf_get_flags_from_mach): Remove bogus
376 suppression of this function.
377 (sh_elf_find_flags): Likewise.
378
1fe1f39c
NC
3792004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
380
381 * Makefile.am (ALL_MACHINES): Add cpu-crx.lo.
382 (ALL_MACHINES_CFILES): Add cpu-crx.c.
383 (BFD32_BACKENDS): Add elf32-crx.lo.
384 (BFD32_BACKENDS_CFILES): Add elf32-crx.c.
385 (cpu-crx.lo): New target.
386 (elf32-crx.lo): New target.
387 * Makefile.in: Regenerate.
388 * archures.c (bfd_architecture): Add bfd_{arch,mach}_crx.
389 (bfd_archures_list): Add bfd_crx_arch.
390 * bfd-in2.h: Regenerate.
391 * config.bfd: Handle crx-*-elf*, crx*.
392 * configure.in: Handle bfd_elf32_crx_vec.
393 * configure: Regenerate.
394 * cpu-crx.c: New file.
395 * elf32-crx.c: Likewise.
396 * libbfd.h: Regenerate.
397 * reloc.c: Add BFD_RELOC_CRX_REL4, BFD_RELOC_CRX_REL8,
398 BFD_RELOC_CRX_REL8_CMP, BFD_RELOC_CRX_REL16, BFD_RELOC_CRX_REL24,
399 BFD_RELOC_CRX_REL32, BFD_RELOC_CRX_REGREL12, BFD_RELOC_CRX_REGREL22,
400 BFD_RELOC_CRX_REGREL28, BFD_RELOC_CRX_REGREL32, BFD_RELOC_CRX_ABS16,
401 BFD_RELOC_CRX_ABS32, BFD_RELOC_CRX_NUM8, BFD_RELOC_CRX_NUM16,
402 BFD_RELOC_CRX_NUM32, BFD_RELOC_CRX_IMM16 and BFD_RELOC_CRX_IMM32
403 * targets.c (bfd_elf32_crx_vec): Declare.
404 (bfd_target_vector): Add bfd_elf32_crx_vec.
405
85fbca6a
NC
4062004-07-06 Nick Clifton <nickc@redhat.com>
407
408 * config.bfd: Add sh-symbian-elf target.
409 * configure.in: Add bfd_elf32_shl_symbian_vec.
410 * configure: Regenerate.
411 * elf-bfd.h (struct elf_backend_data): Add new field
412 'check_directives'.
1fe1f39c 413 * elflink.c (elf_link_add_object_symbols): Invoke the
85fbca6a 414 check_directives function, if defined.
1fe1f39c 415 * elfxx-target.h: Provide a default, NULL definition for
85fbca6a 416 check_directives.
1fe1f39c
NC
417 * targets.c: Add bfd_elf32_shl_symbian_vec.
418 * elf32-sh.c (sh_elf_swap_insns): Protect against unnecessary
85fbca6a 419 definition.
1fe1f39c 420 (elf32_shlin_grok_prstatus, elf32_shlib_grok_psinfo,
85fbca6a 421 * sh_elf_get_flags_from_mach, sh_elf_find_flags): Likewise.
1fe1f39c 422 (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Only define if they have
85fbca6a 423 not already been defined.
1fe1f39c
NC
424 * elf32-sh64.c: Use SH_TARGET_ALREADY_DEFINED.
425 * sh-symbian.c: New file. Provide functions to support the
85fbca6a
NC
426 * sh-symbian-elf target.
427 * Makefile.am: Add elf32-sh-symbian.c
428 * Makefile.in: Regenerate.
1fe1f39c 429
871ec896
JR
4302004-07-05 Andrew Stubbs <andrew.stubbs@superh.com>
431
1fe1f39c
NC
432 * elf32-sh.c: Include ../opcodes/sh-opc.h.
433 * Makefile.am: Ran make dep-am.
434 * Makefile.in: Ran make dep-in.
871ec896 435
c87db184
CF
4362004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
437
438 * cofflink.c (_bfd_coff_generic_relocate_section): Resolve PE weak
439 externals properly.
440
06f2f6af
MS
4412004-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
442
443 * config.bfd: Add want64 to configuration target s390-*-linux*.
444
b602c853
L
4452004-07-01 H.J. Lu <hongjiu.lu@intel.com>
446
447 * bfd.c (bfd_get_section_ident): New.
448
449 * elflink.c (elf_link_read_relocs_from_section): Call
450 bfd_get_section_ident to identify the section when reporting
451 error.
452 (_bfd_elf_link_output_relocs): Likewise.
453 (elf_link_output_extsym): Likewise.
454 (elf_link_input_bfd): Likewise.
455 (bfd_elf_gc_record_vtinherit): Likewise.
456
457 * bfd-in2.h: Regenerated.
458
7a2a6943
NC
4592004-07-01 Jie Zhang <zhangjie@magima.com.cn>
460 Nick Clifton <nickc@redhat.com>
461
462 PR 204
463 * elfxx-mips.c (_bfd_mips_elf_final_link): Pass the correct number
464 of section symbols to mips_elf_sort_hash_table ().
465
cdd3575c
AM
4662004-07-01 Alan Modra <amodra@bigpond.net.au>
467
468 * elflink.c (elf_section_ignore_discarded_relocs): Revert last
469 change. Comment.
470 (elf_section_complain_discarded): New function. Handle
471 .gcc_except_table too.
472 (elf_link_input_bfd): Rewrite handling of relocs against symbols
473 in discarded sections.
474 * elf-bfd.h (elf_discarded_section): Protect macro arg.
475
21a8f7fa
JW
4762004-06-30 James E Wilson <wilson@specifixinc.com>
477
478 * elfxx-ia64.c (elfNN_ia64_check_relocs): New local pltoff. Initialize
479 to NULL. Call get_pltoff if NULL and NEED_PLTOFF is true.
480
2de26f35
L
4812004-06-30 H.J. Lu <hongjiu.lu@intel.com>
482
483 PR 233
484 * elflink.c (elf_link_input_bfd): Issue an error for non-debug
485 local references to discarded sections and report their
486 locations.
487
72d7a15c
AM
4882004-06-30 Alan Modra <amodra@bigpond.net.au>
489
490 * elflink.c (elf_section_ignore_discarded_relocs): Don't test
491 sec_info_type, test section name instead.
492
e7f0a167
L
4932004-06-29 H.J. Lu <hongjiu.lu@intel.com>
494
495 PR 240
496 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't relax branch
497 in .init/.fini sections.
498
bff5f93a
BW
4992004-06-29 Bob Wilson <bob.wilson@acm.org>
500
501 * elf32-xtensa.c (elf_xtensa_relocate_section): Use
502 bfd_get_section_limit.
503
b54d4b07
BW
5042004-06-29 Bob Wilson <bob.wilson@acm.org>
505
506 * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Don't change the
507 output section size.
508
e87a64e1
AM
5092004-06-29 Alan Modra <amodra@bigpond.net.au>
510
1a23a9e6
AM
511 * elf64-mmix.c (mmix_set_relaxable_size): Save original size in
512 rawsize.
513 (mmix_elf_perform_relocation): Adjust for above change.
514 (mmix_elf_relocate_section): Likewise.
515 (mmix_elf_relax_section): Likewise. Use output_section->rawsize.
516 (mmix_elf_get_section_contents): Delete.
517 (bfd_elf64_get_section_contents): Delete.
518 (mmix_elf_relocate_section): Zero stub area.
519 * linker.c (default_indirect_link_order): Alloc max of section size
520 and rawsize.
521 * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
522 * section.c (bfd_malloc_and_get_section): Likewise.
523 (struct bfd_section): Update rawsize comment.
524 * bfd-in2.h: Regenerate.
525
e87a64e1
AM
526 * reloc16.c (bfd_coff_reloc16_relax_section): Set rawsize.
527
07515404
AM
5282004-06-29 Alan Modra <amodra@bigpond.net.au>
529
530 * bfd-in.h (bfd_get_section_limit): Define.
1fe1f39c 531 * reloc.c (bfd_perform_relocation, bfd_install_relocation)
07515404
AM
532 (_bfd_final_link_relocate): Use bfd_get_section_limit.
533 * aout-tic30.c (tic30_aout_final_link_relocate): Likewise.
534 * coff-arm.c (coff_arm_relocate_section): Likewise.
535 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): Likewise.
536 * cpu-ns32k.c (do_ns32k_reloc): Likewise.
537 (bfd_ns32k_final_link_relocate): Likewise.
538 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): Likwise.
539 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): Likewise.
1fe1f39c 540 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc)
07515404 541 (i860_howto_highadj_reloc, i860_howto_splitn_reloc): Likewise.
1fe1f39c 542 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc)
07515404
AM
543 (m32r_elf_generic_reloc, m32r_elf_relocate_section): Likewise.
544 * elf32-m68hc1x.c (m68hc11_elf_special_reloc): Likewise.
545 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
546 * elf32-or32.c (or32_elf_consth_reloc): Likewise.
547 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Likewise.
548 * elf32-s390.c (s390_elf_ldisp_reloc): Likewise.
549 * elf32-sh.c (sh_elf_reloc_loop): Likewise.
550 * elf32-sparc.c (sparc_elf_wdisp16_reloc): Likewise.
551 (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc): Likwise.
552 * elf32-v850.c (v850_elf_reloc): Likewise.
553 * elf32-xstormy16.c (xstormy16_elf_24_reloc): Likewise.
554 * elf32-xtensa.c (bfd_elf_xtensa_reloc): Likewise.
555 * elf64-alpha.c (elf64_alpha_reloc_gpdisp): Likewise.
556 * elf64-mips.c (mips_elf64_gprel32_reloc)
557 (mips16_gprel_reloc): Likewise.
558 * elf64-mmix.c (mmix_elf_reloc): Likewise.
559 * elf64-s390.c (s390_elf_ldisp_reloc): Likewise.
560 * elf64-sparc.c (init_insn_reloc): Likewise.
561 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1fe1f39c
NC
562 * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp)
563 (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_lo16_reloc)
07515404
AM
564 (_bfd_mips_elf_generic_reloc): Likewise.
565 * bfd-in2.h: Regenerate.
566
3722b82f
AM
5672004-06-28 Alan Modra <amodra@bigpond.net.au>
568
569 * bfd-in.h (struct stab_info): Move from stabs.c.
570 * stabs.c (struct stab_link_includes_table): Delete.
571 (stab_link_includes_lookup): Delete.
572 (_bfd_write_section_stabs, _bfd_write_stab_strings): Remove one
573 level of indirection from sinfo parm.
574 (_bfd_link_section_stabs): Likewise. Set SEC_LINKER_CREATED on
575 stabstr section. Adjust hash table accesses.
576 * coff-ppc.c (ppc_bfd_coff_final_link): Do include rawsize in contents
577 alloc. Adjust stab_info test.
578 * cofflink.c (_bfd_coff_link_hash_table_init): Clear stab_info.
579 (_bfd_coff_final_link): Adjust stab_info test.
580 (_bfd_coff_link_input_bfd): Ignore SEC_LINKER_CREATED sections.
581 * elf-bfd.h (struct elf_link_hash_table): Include struct stab_info
582 in place.
583 * libcoff-in.h (struct coff_link_hash_table): Likewise.
584 * elf.c (_bfd_elf_link_hash_table_init): Clear stab_info.
585 * elflink.c (bfd_elf_final_link): Don't attempt to link linker created
586 stabstr section. Adjust stab_info test.
587 * libbfd-in.h (_bfd_link_section_stabs, _bfd_write_section_stabs)
588 (_bfd_write_stab_strings): Adjust prototypes.
589 * libbfd.h: Regenerate.
590 * libcoff.h: Regenerate.
591 * bfd-in2.h: Regenerate.
592
727e493d
MK
5932004-06-27 Mark Kettenis <kettenis@gnu.org>
594
595 From Miod Vallat <miod@online.fr>:
596 * aoutx.h (NAME(aout,machine_type)): Handle bfd_arch_m88k.
597
146ccdbb
AO
5982004-06-26 Alexandre Oliva <aoliva@redhat.com>
599
600 * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): Delete.
601 (struct elf32_mn10300_link_hash_entry): Remove
602 pcrel_relocs_copied.
603 (mn10300_elf_check_relocs): Only reserve dynamic relocations for
604 R_MN10300_32. Don't adjust pcrel_relocs_copied.
605 (mn10300_elf_final_link_relocate): Fail for direct, pc-relative
606 and gotoff relocations if the symbol doesn't bind locally. Use
607 _bfd_elf_symbol_refs_local_p to test. Don't create dynamic
608 relocation for PCREL32.
609 (mn10300_elf_relocate_section): Use _bfd_elf_symbol_refs_local_p
610 to test whether a symbol binds locally.
611 (elf32_mn10300_link_hash_newfunc): Don't initialize
612 pcrel_relocs_copied.
613 (_bfd_mn10300_elf_discard_copies): Delete.
614 (_bfd_mn10300_elf_size_dynamic_sections): Don't call it.
615
a5fd0812
MK
6162004-06-26 Mark Kettenis <kettenis@gnu.org>
617
618 * config.bfd: Replace m88k-*-openbsd* with m88*-*-openbsd*.
619
22bfad37
JB
6202004-06-25 Joel Brobecker <brobecker@gnat.com>
621
622 * som.c (som_set_reloc_info): Correct small typo.
623
097f809a
NC
6242004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
625
626 * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_GOTOFF.
627 (m32r_elf_relocate_section): Changed for R_M32R_GOTOFF.
628 (m32r_elf_gcsweep_hook): Likewise.
629 (m32r_elf_check_relocs): Likewise.
630 (m32r_elf_howto_table): Added R_M32R_GOTOFF_HI_ULO,
631 R_M32R_GOTOFF_HI_SLO and R_M32R_GOTOFF_LO.
632 * reloc.c: Added BFD_RELOC_M32R_GOTOFF_HI_ULO,
633 BFD_RELOC_M32R_GOTOFF_HI_SLO and BFD_RELOC_M32R_GOTOFF_LO.
f9f2cf5d
NC
634 * bfd-in2.h: Regenerated.
635 * libbfd.h: Regenerated.
097f809a 636
6610a52d
L
6372004-06-24 H.J. Lu <hongjiu.lu@intel.com>
638
639 * elf64-x86-64.c (elf64_x86_64_check_relocs): Warn overflow
640 relocation symbol.
641 (elf64_x86_64_relocate_section): Issue an error for
642 R_X86_64_PC8, R_X86_64_PC16 and R_X86_64_PC32 relocations
643 against global symbols when building shared library.
644
eea6121a
AM
6452004-06-24 Alan Modra <amodra@bigpond.net.au>
646
647 * section.c (struct sec): Rename "_cooked_size" to "size".
648 Rename "_raw_size" to "rawsize".
649 (STD_SECTION): Adjust comments.
650 (bfd_set_section_size, bfd_get_section_contents): Use size.
651 (bfd_malloc_and_get_section): New function.
652 * bfd-in.h (bfd_section_size, bfd_get_section_size): Use size.
653 * coff-sh.c (sh_relax_section): Alloc coff_section_data struct early.
654 Correctly free reloc and contents memory.
655 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete FIXME
656 and fake CIE now that we can shink section size to zero.
657 (_bfd_elf_write_section_eh_frame): Likewise..
658 * elf32-ppc.c (ppc_elf_relax_section): Delay reading section contents.
659 * elf-m10300.c (mn10300_elf_final_link_relocate): Don't use
660 _bfd_stab_section_offset. Use _bfd_elf_section_offset.
661 * stabs.c (_bfd_stab_section_offset_): Remove unused args and
662 unneeded indirection.
663 * elf.c (_bfd_elf_section_offset): .. and update call.
664 * libbfd-in.h (_bfd_stab_section_offset): Update prototype.
665 * libbfd.h: Regenerate.
666 * bfd-in2.h: Regenerate.
667
668 Replace occurrences of "_raw_size" and "_cooked_size" in most places
669 with "size". Set new "rawsize" for stabs, eh_frame, and SEC_MERGE
670 sections. Use "rawsize", if non-zero, for bfd_get_section_contents
671 calls if the section might be a stabs, eh_frame, or SEC_MERGE section.
672 Similarly use "rawsize", if non-zero, in reloc functions to validate
673 reloc addresses. Use new bfd_malloc_and_get_section in most places
674 where bfd_get_section_contents was called. Expand all occurrences of
675 bfd_section_size and bfd_get_section_size. Rename "raw_size" var in
676 grok_prstatus and similar functions to "size".
677 * aix386-core.c (aix386_core_file_p): ..
678 * aix5ppc-core.c (xcoff64_core_p): ..
679 * aout-adobe.c (aout_adobe_callback, aout_adobe_write_object_contents,
680 aout_adobe_set_section_contents): ..
681 * aout-target.h (callback): ..
682 * aout-tic30.c (tic30_aout_callback, tic30_aout_final_link_relocate,
683 MY_bfd_final_link): ..
684 * aoutf1.h (sunos4_core_file_p): ..
685 * aoutx.h (some_aout_object_p, adjust_o_magic, adjust_z_magic,
686 adjust_n_magic, adjust_sizes_and_vmas, translate_from_native_sym_flags,
687 final_link, aout_link_input_section): ..
688 * binary.c (binary_object_p, binary_canonicalize_symtab,
689 binary_set_section_contents): ..
690 * bout.c (b_out_callback, b_out_write_object_contents,
691 b_out_set_section_contents, b_out_bfd_relax_section,
692 b_out_bfd_get_relocated_section_contents): ..
693 * cisco-core.c (cisco_core_file_validate): ..
694 * coff-alpha.c (alpha_ecoff_object_p,
695 alpha_ecoff_get_relocated_section_conten, alpha_relocate_section): ..
696 * coff-arm.c (coff_arm_relocate_section,
697 bfd_arm_allocate_interworking_sections): ..
698 * coff-h8300.c (h8300_reloc16_extra_cases,
699 h8300_bfd_link_add_symbols): ..
700 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): ..
701 * coff-ppc.c (coff_ppc_relocate_section, ppc_allocate_toc_section,
702 ppc_bfd_coff_final_link): ..
703 * coff-rs6000.c (xcoff_reloc_type_br, xcoff_ppc_relocate_section): ..
704 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
705 sh_align_loads, sh_coff_get_relocated_section_contents): ..
706 * coff64-rs6000.c (xcoff64_write_object_contents,
707 xcoff64_reloc_type_br, xcoff64_ppc_relocate_section): ..
708 * coffcode.h (coff_compute_section_file_positions,
709 coff_write_object_contents): ..
710 * coffgen.c (make_a_section_from_file, coff_write_symbols,
711 coff_section_symbol, build_debug_section): ..
712 * cofflink.c (coff_link_add_symbols, _bfd_coff_final_link,
713 process_embedded_commands, _bfd_coff_link_input_bfd,
714 _bfd_coff_write_global_sym): ..
715 * cpu-arm.c (bfd_arm_update_notes, bfd_arm_get_mach_from_notes): ..
716 * cpu-ns32k.c (do_ns32k_reloc, _bfd_ns32k_final_link_relocate): ..
717 * dwarf1.c (parse_line_table, _bfd_dwarf1_find_nearest_line): ..
718 * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
719 _bfd_dwarf2_find_nearest_line): ..
720 * ecoff.c (bfd_debug_section, ecoff_set_symbol_info,
721 ecoff_compute_section_file_positions,
722 _bfd_ecoff_write_object_contents, ecoff_indirect_link_order): ..
723 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame,
724 _bfd_elf_discard_section_eh_frame_hdr,
725 _bfd_elf_maybe_strip_eh_frame_hdr, _bfd_elf_eh_frame_section_offset,
726 _bfd_elf_write_section_eh_frame,
727 _bfd_elf_write_section_eh_frame_hdr): ..
728 * elf-hppa.h (elf_hppa_sort_unwind): ..
729 * elf-m10200.c (mn10200_elf_relax_section,
730 mn10200_elf_relax_delete_bytes,
731 mn10200_elf_get_relocated_section_contents): ..
732 * elf-m10300.c (_bfd_mn10300_elf_create_got_section,
733 mn10300_elf_check_relocs, mn10300_elf_relax_section,
734 mn10300_elf_relax_delete_bytes,
735 mn10300_elf_get_relocated_section_contents,
736 _bfd_mn10300_elf_adjust_dynamic_symbol,
737 _bfd_mn10300_elf_discard_copies,
738 _bfd_mn10300_elf_size_dynamic_sections,
739 _bfd_mn10300_elf_finish_dynamic_sections): ..
740 * elf.c (_bfd_elf_print_private_bfd_data, bfd_elf_get_bfd_needed_list,
741 _bfd_elf_make_section_from_phdr, elf_fake_sections,
742 bfd_elf_set_group_contents, map_sections_to_segments,
743 elf_sort_sections, assign_file_positions_for_segments,
744 SECTION_SIZE, copy_private_bfd_data,
745 _bfd_elf_get_dynamic_reloc_upper_bound,
746 _bfd_elf_canonicalize_dynamic_reloc, elfcore_maybe_make_sect,
747 _bfd_elfcore_make_pseudosection, elfcore_grok_prstatus,
748 elfcore_grok_lwpstatus, elfcore_grok_win32pstatus,
749 elfcore_grok_note, elfcore_grok_nto_status, elfcore_grok_nto_gregs,
750 _bfd_elf_rel_local_sym, _bfd_elf_get_synthetic_symtab): ..
751 * elf32-arm.h (bfd_elf32_arm_allocate_interworking_sect,
752 bfd_elf32_arm_process_before_allocation,
753 elf32_arm_adjust_dynamic_symbol, allocate_dynrelocs,
754 elf32_arm_size_dynamic_sections, elf32_arm_finish_dynamic_sections,
755 elf32_arm_write_section): ..
756 * elf32-cris.c (cris_elf_grok_prstatus,
757 elf_cris_finish_dynamic_sections, cris_elf_gc_sweep_hook,
758 elf_cris_adjust_gotplt_to_got, elf_cris_adjust_dynamic_symbol,
759 cris_elf_check_relocs, elf_cris_size_dynamic_sections,
760 elf_cris_discard_excess_dso_dynamics,
761 elf_cris_discard_excess_program_dynamics): ..
762 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): ..
763 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): ..
764 * elf32-frv.c (_frvfdpic_add_dyn_reloc, _frvfdpic_add_rofixup,
765 _frv_create_got_section, _frvfdpic_assign_plt_entries,
766 elf32_frvfdpic_size_dynamic_sections,
767 elf32_frvfdpic_modify_segment_map,
768 elf32_frvfdpic_finish_dynamic_sections): ..
769 * elf32-h8300.c (elf32_h8_relax_section, elf32_h8_relax_delete_bytes,
770 elf32_h8_get_relocated_section_contents): ..
771 * elf32-hppa.c (hppa_build_one_stub, hppa_size_one_stub,
772 elf32_hppa_adjust_dynamic_symbol, allocate_plt_static,
773 allocate_dynrelocs, elf32_hppa_size_dynamic_sections, group_sections,
774 elf32_hppa_size_stubs, elf32_hppa_set_gp, elf32_hppa_build_stubs,
775 elf32_hppa_finish_dynamic_sections): ..
776 * elf32-i370.c (i370_elf_adjust_dynamic_symbol,
777 i370_elf_size_dynamic_sections, i370_elf_check_relocs,
778 i370_elf_finish_dynamic_sections): ..
779 * elf32-i386.c (elf_i386_grok_prstatus, elf_i386_adjust_dynamic_symbol,
780 allocate_dynrelocs, elf_i386_size_dynamic_sections,
781 elf_i386_relocate_section, elf_i386_finish_dynamic_sections): ..
782 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc,
783 i860_howto_highadj_reloc, i860_howto_splitn_reloc): ..
784 * elf32-ip2k.c (ip2k_is_switch_table_128,
785 ip2k_relax_switch_table_128, ip2k_is_switch_table_256,
786 ip2k_relax_switch_table_256, ip2k_elf_relax_section,
787 adjust_all_relocations, ip2k_elf_relax_delete_bytes): ..
788 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc,
789 m32r_elf_generic_reloc, m32r_elf_adjust_dynamic_symbol,
790 allocate_dynrelocs, m32r_elf_size_dynamic_sections,
791 m32r_elf_relocate_section, m32r_elf_finish_dynamic_sections,
792 m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
793 m32r_elf_get_relocated_section_contents): ..
794 * elf32-m68hc11.c (m68hc11_elf_build_one_stub,
795 m68hc11_elf_size_one_stub, m68hc11_elf_relax_section,
796 m68hc11_elf_relax_delete_bytes): ..
797 * elf32-m68hc12.c (m68hc12_elf_build_one_stub,
798 m68hc12_elf_size_one_stub): ..
799 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs,
800 elf32_m68hc11_build_stubs, m68hc11_elf_special_reloc): ..
801 * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_gc_sweep_hook,
802 elf_m68k_adjust_dynamic_symbol, elf_m68k_size_dynamic_sections,
803 elf_m68k_discard_copies, elf_m68k_finish_dynamic_sections): ..
804 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
805 elf32_mips_grok_prstatus): ..
806 * elf32-or32.c (or32_elf_consth_reloc): ..
807 * elf32-ppc.c (ppc_elf_relax_section, ppc_elf_addr16_ha_reloc,
808 elf_create_pointer_linker_section, ppc_elf_create_linker_section,
809 ppc_elf_additional_program_headers, ppc_elf_adjust_dynamic_symbol,
810 allocate_dynrelocs, ppc_elf_size_dynamic_sections,
811 ppc_elf_finish_dynamic_sections, ppc_elf_grok_prstatus,
812 ppc_elf_final_write_processing): ..
813 * elf32-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
814 allocate_dynrelocs, elf_s390_size_dynamic_sections,
815 elf_s390_finish_dynamic_sections, elf_s390_grok_prstatus): ..
816 * elf32-sh.c (sh_elf_reloc_loop, sh_elf_relax_section,
817 sh_elf_relax_delete_bytes, sh_elf_align_loads,
818 sh_elf_adjust_dynamic_symbol, allocate_dynrelocs,
819 sh_elf_size_dynamic_sections, sh_elf_get_relocated_section_contents,
820 sh_elf_finish_dynamic_sections, elf32_shlin_grok_prstatus): ..
821 * elf32-sh64-com.c (sh64_address_in_cranges,
822 sh64_get_contents_type): ..
823 * elf32-sh64.c (sh64_find_section_for_address,
824 sh64_elf_final_write_processing): ..
825 * elf32-sparc.c (sparc_elf_wdisp16_reloc, sparc_elf_hix22_reloc,
826 sparc_elf_lox10_reloc, elf32_sparc_adjust_dynamic_symbol,
827 allocate_dynrelocs, elf32_sparc_size_dynamic_sections,
828 elf32_sparc_relocate_section, elf32_sparc_finish_dynamic_sections): ..
829 * elf32-v850.c (v850_elf_reloc, v850_elf_relax_section): ..
830 * elf32-vax.c (elf_vax_check_relocs, elf_vax_adjust_dynamic_symbol,
831 elf_vax_size_dynamic_sections, elf_vax_discard_copies,
832 elf_vax_instantiate_got_entries, elf_vax_relocate_section,
833 elf_vax_finish_dynamic_sections): ..
834 * elf32-xstormy16.c (xstormy16_elf_24_reloc,
835 xstormy16_elf_check_relocs, xstormy16_relax_plt_check,
836 xstormy16_elf_relax_section, xstormy16_elf_always_size_sections,
837 xstormy16_elf_finish_dynamic_sections): ..
838 * elf32-xtensa.c (xtensa_read_table_entries,
839 elf_xtensa_allocate_got_size, elf_xtensa_allocate_local_got_size,
840 elf_xtensa_size_dynamic_sections, elf_xtensa_do_reloc,
841 bfd_elf_xtensa_reloc, elf_xtensa_relocate_section,
842 elf_xtensa_combine_prop_entries, elf_xtensa_finish_dynamic_sections,
843 elf_xtensa_discard_info_for_section, elf_xtensa_grok_prstatus,
844 get_relocation_opcode, retrieve_contents, find_relaxable_sections,
845 collect_source_relocs, is_resolvable_asm_expansion, remove_literals,
846 relax_section, shrink_dynamic_reloc_sections, relax_property_section,
847 xtensa_callback_required_dependence): ..
848 * elf64-alpha.c (elf64_alpha_reloc_gpdisp, elf64_alpha_relax_section,
849 elf64_alpha_check_relocs, elf64_alpha_adjust_dynamic_symbol,
850 elf64_alpha_calc_got_offsets_for_symbol, elf64_alpha_calc_got_offsets,
851 elf64_alpha_size_plt_section, elf64_alpha_size_plt_section_1,
852 elf64_alpha_always_size_sections, elf64_alpha_calc_dynrel_sizes,
853 elf64_alpha_size_rela_got_section, elf64_alpha_size_rela_got_1,
854 elf64_alpha_size_dynamic_sections, elf64_alpha_emit_dynrel,
855 elf64_alpha_finish_dynamic_sections, elf64_alpha_final_link): ..
856 * elf64-hppa.c (allocate_dynrel_entries,
857 elf64_hppa_size_dynamic_sections,
858 elf64_hppa_finish_dynamic_sections): ..
859 * elf64-mips.c (mips_elf64_gprel32_reloc, mips16_gprel_reloc,
860 mips_elf64_canonicalize_dynamic_reloc, mips_elf64_slurp_reloc_table,
861 elf64_mips_grok_prstatus): ..
862 * elf64-mmix.c (mmix_elf_perform_relocation, mmix_elf_reloc,
863 mmix_elf_relocate_section, mmix_elf_final_link,
864 mmix_set_relaxable_size, _bfd_mmix_after_linker_allocation,
865 mmix_elf_relax_section, mmix_elf_get_section_contents): ..
866 * elf64-ppc.c (ppc64_elf_object_p, ppc64_elf_grok_prstatus,
867 ppc64_elf_check_relocs, ppc64_elf_func_desc_adjust,
868 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_edit_opd,
869 allocate_dynrelocs, ppc64_elf_size_dynamic_sections,
870 ppc_build_one_stub, ppc_size_one_stub, ppc64_elf_next_toc_section,
871 toc_adjusting_stub_needed, group_sections, ppc64_elf_size_stubs,
872 ppc64_elf_build_stubs, ppc64_elf_relocate_section,
873 ppc64_elf_finish_dynamic_sections): ..
874 * elf64-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
875 allocate_dynrelocs, elf_s390_size_dynamic_sections,
876 elf_s390_finish_dynamic_sections): ..
877 * elf64-sh64.c (sh_elf64_get_relocated_section_contents,
878 sh_elf64_check_relocs, sh64_elf64_adjust_dynamic_symbol,
879 sh64_elf64_discard_copies, sh64_elf64_size_dynamic_sections,
880 sh64_elf64_finish_dynamic_sections): ..
881 * elf64-sparc.c (sparc64_elf_slurp_reloc_table, init_insn_reloc,
882 sparc64_elf_check_relocs, sparc64_elf_adjust_dynamic_symbol,
883 sparc64_elf_size_dynamic_sections, sparc64_elf_relocate_section,
884 sparc64_elf_finish_dynamic_symbol,
885 sparc64_elf_finish_dynamic_sections): ..
886 * elf64-x86-64.c (elf64_x86_64_grok_prstatus,
887 elf64_x86_64_adjust_dynamic_symbol, allocate_dynrelocs,
888 elf64_x86_64_size_dynamic_sections, elf64_x86_64_relocate_section,
889 elf64_x86_64_finish_dynamic_sections): ..
890 * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): ..
891 * elfcode.h (elf_slurp_reloc_table): ..
892 * elflink.c (_bfd_elf_create_got_section, elf_add_dt_needed_tag,
893 elf_finalize_dynstr, elf_link_add_object_symbols,
894 bfd_elf_size_dynamic_sections, elf_link_sort_relocs,
895 elf_link_input_bfd, bfd_elf_final_link, bfd_elf_discard_info): ..
896 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
897 elf32_mips_grok_prstatus): ..
898 * elfxx-ia64.c (elfNN_ia64_relax_section, allocate_dynrel_entries,
899 elfNN_ia64_size_dynamic_sections, elfNN_ia64_install_dyn_reloc,
900 elfNN_ia64_choose_gp, elfNN_ia64_final_link,
901 elfNN_ia64_finish_dynamic_sections): ..
902 * elfxx-mips.c (mips_elf_create_procedure_table,
903 mips_elf_check_mips16_stubs, _bfd_mips_elf_gprel16_with_gp,
904 _bfd_mips_elf_hi16_reloc, _bfd_mips_elf_generic_reloc,
905 mips_elf_global_got_index, mips_elf_multi_got,
906 mips_elf_create_compact_rel_section, mips_elf_calculate_relocation,
907 mips_elf_allocate_dynamic_relocations,
908 mips_elf_create_dynamic_relocation, _bfd_mips_elf_fake_sections,
909 _bfd_mips_relax_section, _bfd_mips_elf_adjust_dynamic_symbol,
910 _bfd_mips_elf_always_size_sections,
911 _bfd_mips_elf_size_dynamic_sections,
912 _bfd_mips_elf_finish_dynamic_symbol,
913 _bfd_mips_elf_finish_dynamic_sections,
914 _bfd_mips_elf_modify_segment_map, _bfd_mips_elf_discard_info,
915 _bfd_mips_elf_write_section, _bfd_mips_elf_set_section_contents,
916 _bfd_elf_mips_get_relocated_section_contents,
917 _bfd_mips_elf_final_link, _bfd_mips_elf_merge_private_bfd_data): ..
918 * hp300hpux.c (callback): ..
919 * hppabsd-core.c (make_bfd_asection): ..
920 * hpux-core.c (make_bfd_asection): ..
921 * i386linux.c (linux_link_create_dynamic_sections,
922 bfd_i386linux_size_dynamic_sections, linux_finish_dynamic_link): ..
923 * i386msdos.c (msdos_write_object_contents): ..
924 * i386os9k.c (os9k_callback, os9k_write_object_contents,
925 os9k_set_section_contents): ..
926 * ieee.c (parse_expression, ieee_slurp_external_symbols,
927 ieee_slurp_sections, ieee_slurp_debug, ieee_slurp_section_data,
928 ieee_write_section_part, do_with_relocs, do_as_repeat,
929 do_without_relocs, ieee_write_debug_part, init_for_output,
930 ieee_set_section_contents): ..
931 * ihex.c (ihex_scan, ihex_read_section, ihex_get_section_contents): ..
932 * irix-core.c (do_sections, make_bfd_asection): ..
933 * libaout.h (aout_section_merge_with_text_p): ..
934 * libbfd.c (_bfd_generic_get_section_contents,
935 _bfd_generic_get_section_contents_in_window): ..
936 * linker.c (default_indirect_link_order): ..
937 * lynx-core.c (make_bfd_asection): ..
938 * m68klinux.c (linux_link_create_dynamic_sections,
939 bfd_m68klinux_size_dynamic_sections, linux_finish_dynamic_link): ..
940 * mach-o.c (bfd_mach_o_make_bfd_section,
941 bfd_mach_o_scan_read_dylinker, bfd_mach_o_scan_read_dylib,
942 bfd_mach_o_scan_read_thread, bfd_mach_o_scan_read_symtab,
943 bfd_mach_o_scan_read_segment): ..
944 * merge.c (_bfd_add_merge_section, record_section, merge_strings,
945 _bfd_merge_sections): ..
946 * mmo.c (mmo_find_sec_w_addr, mmo_get_spec_section, mmo_get_loc,
947 mmo_map_set_sizes, mmo_canonicalize_symtab,
948 mmo_internal_write_section, mmo_write_object_contents): ..
949 * netbsd-core.c (netbsd_core_file_p): ..
950 * nlm32-alpha.c (nlm_alpha_read_reloc, nlm_alpha_write_import,
951 nlm_alpha_set_public_section): ..
952 * nlm32-ppc.c (nlm_powerpc_read_reloc, nlm_powerpc_write_reloc): ..
953 * nlm32-sparc.c (nlm_sparc_write_import): ..
954 * nlmcode.h (add_bfd_section, nlm_swap_auxiliary_headers_in,
955 nlm_compute_section_file_positions): ..
956 * oasys.c (oasys_object_p, oasys_slurp_section_data,
957 oasys_write_sections, oasys_write_data, oasys_set_section_contents): ..
958 * opncls.c (get_debug_link_info): ..
959 * osf-core.c (make_bfd_asection): ..
960 * pdp11.c (some_aout_object_p, adjust_o_magic, adjust_z_magic,
961 adjust_n_magic, adjust_sizes_and_vmas, squirt_out_relocs,
962 final_link, aout_link_input_section): ..
963 * peXXigen.c (_bfd_XXi_swap_sym_in, _bfd_XXi_swap_aouthdr_out,
964 pe_print_idata, pe_print_edata, pe_print_pdata, pe_print_reloc): ..
965 * pef.c (bfd_pef_make_bfd_section, bfd_pef_print_loader_section,
966 bfd_pef_scan_start_address, bfd_pef_parse_symbols): ..
967 * ppcboot.c (ppcboot_object_p, ppcboot_canonicalize_symtab): ..
968 * ptrace-core.c (ptrace_unix_core_file_p): ..
969 * reloc.c (bfd_perform_relocation, bfd_install_relocation,
970 _bfd_final_link_relocate, bfd_generic_relax_section,
971 bfd_generic_get_relocated_section_contents): ..
972 * reloc16.c (bfd_coff_reloc16_relax_section,
973 bfd_coff_reloc16_get_relocated_section_c): ..
974 * riscix.c (riscix_some_aout_object_p): ..
975 * rs6000-core.c (read_hdr, make_bfd_asection): ..
976 * sco5-core.c (make_bfd_asection): ..
977 * simple.c (bfd_simple_get_relocated_section_contents): ..
978 * som.c (som_object_setup, setup_sections, som_prep_headers,
979 som_write_fixups, som_begin_writing, bfd_section_from_som_symbol,
980 som_set_reloc_info, som_get_section_contents,
981 som_bfd_link_split_section): ..
982 * sparclinux.c (linux_link_create_dynamic_sections,
983 bfd_sparclinux_size_dynamic_sections, linux_finish_dynamic_link): ..
984 * srec.c (srec_scan, srec_read_section, srec_get_section_contents): ..
985 * stabs.c (_bfd_link_section_stabs, _bfd_discard_section_stabs,
986 _bfd_write_stab_strings, _bfd_stab_section_offset): ..
987 * sunos.c (sunos_read_dynamic_info, sunos_create_dynamic_sections,
988 bfd_sunos_size_dynamic_sections, sunos_scan_std_relocs,
989 sunos_scan_ext_relocs, sunos_scan_dynamic_symbol,
990 sunos_write_dynamic_symbol, sunos_check_dynamic_reloc,
991 sunos_finish_dynamic_link): ..
992 * syms.c (_bfd_stab_section_find_nearest_line): ..
993 * tekhex.c (first_phase, tekhex_set_section_contents,
994 tekhex_write_object_contents): ..
995 * trad-core.c (trad_unix_core_file_p): ..
996 * versados.c (process_esd, process_otr, process_otr): ..
997 * vms-gsd.c (_bfd_vms_slurp_gsd, _bfd_vms_write_gsd): ..
998 * vms-misc.c (add_new_contents): ..
999 * vms-tir.c (check_section, new_section, _bfd_vms_write_tir): ..
1000 * vms.c (vms_set_section_contents): ..
1001 * xcofflink.c (xcoff_get_section_contents, xcoff_link_add_symbols,
1002 xcoff_sweep, bfd_xcoff_size_dynamic_sections, xcoff_build_ldsyms,
1003 _bfd_xcoff_bfd_final_link, xcoff_link_input_bfd): ..
1004 * xsym.c (bfd_sym_scan): .. See above.
1005
bf8b15af
L
10062004-06-21 H.J. Lu <hongjiu.lu@intel.com>
1007
1008 * elfxx-ia64.c (elfNN_ia64_relax_section): Add addend when
1009 calling _bfd_merged_section_offset only for section symbols.
1010
d1c6de6f
AM
10112004-06-22 Alan Modra <amodra@bigpond.net.au>
1012
1013 * elf32-ppc.c (ppc_elf_relax_section): Implement reference code
1014 for handling SEC_MERGE symbols in relax_section.
1015
aa02cc63
AO
10162004-06-21 Alexandre Oliva <aoliva@redhat.com>
1017
1018 2003-05-15 Richard Sandiford <rsandifo@redhat.com>
1019 * cpu-h8300.c (compatible): Allow h8300s and h8300sx code to be
1020 linked together. Mark the result as h8300sx code.
1021
aee6f5b4
AO
10222004-06-21 Alexandre Oliva <aoliva@redhat.com>
1023
1024 * elf-bfd.h (struct elf_backend_data): Added
1025 elf_backend_omit_section_dynsym.
1026 (_bfd_elf_link_omit_section_dynsym): Declare.
1027 * elf32-frv.c (_frvfdpic_link_omit_section_dynsym): New.
1028 (elf_backend_omit_section_dynsym): Use it for frvfdpic.
1029 * elflink.c (_bfd_elf_link_omit_section_dynsym): Split out of...
1030 (_bfd_elf_link_renumber_dynsyms): ... this function.
1031 * elfxx-target.h (elf_backend_omit_section_dynsym): Default to
1032 _bfd_elf_link_omit_section_dynsym).
1033 (elfNN_bed): Added elf_backend_omit_section_dynsym.
1034
05576f10
NC
10352004-06-21 Nick Clifton <nickc@redhat.com>
1036
1037 * coffcode.h (styp_to_sec_flags): Ignore IMAGE_SCN_MEM_NOT_PAGED
1038 flags.
1039
02d5a37b
JG
10402004-06-17 Jerome Guitton <guitton@gnat.com>
1041
1042 * bfd-in.h (bfd_cache_close_all): New function declaration.
1043 * bfd-in2.h: Regenerate.
1044 * cache.c (bfd_cache_close_all): New function definition.
1045
d2bef492
MK
10462004-06-16 Mark Kettenis <kettenis@gnu.org>
1047
1048 * configure.in: Don't set COREFILE to trad-core.lo for FreeBSD
1049 4.10 and beyond.
1050 * configure: Regenerate.
1051
8528d62e
DJ
10522004-06-16 Daniel Jacobowitz <dan@debian.org>
1053
1054 * elf32-ppc.c (ppc_elf_create_linker_section): Create symbols in
1055 the pre-existing section.
1056
911d08a7
AM
10572004-06-15 Alan Modra <amodra@bigpond.net.au>
1058
1059 * section.c (struct sec): Remove usused flags. Reorganize a little.
1060 (bfd_get_section_size_before_reloc): Delete.
1061 (bfd_get_section_size_after_reloc): Delete.
1062 (STD_SECTION): Update.
1063 (bfd_get_section_size_now): Delete.
1064 (bfd_set_section_contents): Don't referece reloc_done.
1065 (bfd_get_section_contents): Remove reloc_done comment.
1066 * bout.c (b_out_bfd_get_relocated_section_contents): Don't set
1067 reloc_done.
1068 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Likewise.
1069 * ecoff.c (bfd_debug_section): Update initializer.
1070 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Ditto.
1071 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
1072 * bfd-in.h (bfd_section_size): Expand.
1073 (bfd_get_section_size): New macro.
1074 * bfd-in2.h: Regenerate.
1075 * coff64-rs6000.c (xcoff64_write_object_contents): Replace
1076 bfd_get_section_size_before_reloc with bfd_get_section_size.
1077 * coffcode.h (coff_write_object_contents): Likewise.
1078 * coffgen.c (build_debug_section): Likewise.
1079 * dwarf1.c (parse_line_table): Likewise.
1080 (_bfd_dwarf1_find_nearest_line): Likewise.
1081 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
1082 * i386msdos.c (msdos_write_object_contents): Likewise.
1083 * pdp11.c (squirt_out_relocs): Likewise.
1084 * elf32-sh64.c (sh64_find_section_for_address): Remove comment.
1085 * elf64-mmix.c (mmix_elf_final_link): Update comment.
1086
092dcd75
CD
10872004-06-14 Chris Demetriou <cgd@broadcom.com>
1088
1089 * elf32-mips.c (elf_mips_gnu_pcrel32): Add (undoing 2004-04-24
1090 removal) with updated comment.
1091 (bfd_elf32_bfd_reloc_type_lookup): Add back case for
1092 BFD_RELOC_32_PCREL.
1093 (mips_elf32_rtype_to_howto): Add back case for R_MIPS_PC32.
1094 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1095
3ffa5234
AM
10962004-06-12 Alan Modra <amodra@bigpond.net.au>
1097
1098 * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc
1099 overflow on branches to undefweaks.
1100
e9edc808
MR
11012004-06-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1102
1103 * coff-alpha.c (alpha_relocate_section): Set used_by_bfd directly
1104 as ecoff_section_data() does not return a valid lvalue.
1105
a873f25a
AO
11062004-06-09 Alexandre Oliva <aoliva@redhat.com>
1107
a9b881be
AO
1108 * elflink.c (elf_sort_symbol): Compare section id, not pointers.
1109 (elf_link_add_object_symbols): Likewise.
1110
a873f25a
AO
1111 * elf-m10300.c (_bfd_mn10300_elf_reloc_type_class): New.
1112 (elf_backend_reloc_type_class): New.
1113
eef0f186
MK
11142004-06-08 Mark Kettenis <kettenis@gnu.org>
1115
1116 * configure.in (hppa*-*-netbsd*, hppa*-*-openbsd): Set COREFILE to
1117 netbsd-core.lo.
1118 * configure: Regenerate.
1119
822392ce
DJ
11202004-06-07 Daniel Jacobowitz <dan@debian.org>
1121
1122 From: Albert Chin-A-Young <china@thewrittenword.com>
1123 * bfd/elf-bfd.h (struct eh_cie_fde): Convert unsigned char bitfields
1124 to unsigned int.
1125
9f2e92c5
L
11262004-05-29 H.J. Lu <hongjiu.lu@intel.com>
1127
1128 * elfxx-ia64.c (elfNN_ia64_relax_section): Undo the last
1129 change.
1130
dd90f1b2
DD
11312004-05-28 DJ Delorie <dj@redhat.com>
1132
1133 * elf-m10300.c (mn10300_elf_relax_section): Preserve reloc addend
1134 for linking, but otherwise adjust reloc for merged sections.
1135
5dd23ec1
L
11362004-05-28 H.J. Lu <hongjiu.lu@intel.com>
1137
1138 * elfxx-ia64.c (elfNN_ia64_relax_section): Properly call
1139 _bfd_merged_section_offset for local symbols.
1140
f6f9408f
JR
11412004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
1142
1143 * Makefile.am: Regenerate dependencies.
1144 * Makefile.in: Regenerate.
1145 * archures.c: Add bfd_mach_sh3_nommu .
1146 * bfd-in2.h: Regenerate.
1147 * cpu-sh.c: Add sh3-nommu architecture.
1148 (bfd_to_arch_table): Create new table.
1149 (sh_get_arch_from_bfd_mach): Create new function.
1150 (sh_get_arch_up_from_bfd_mach): Create new function.
1151 (sh_merge_bfd_arch): Create new function.
1152 * elf32-sh.c (sh_ef_bfd_table): Add table.
1153 (sh_elf_check_relocs): Replace switch statement with
1154 use of sh_ef_bfd_table .
1155 (sh_elf_get_flags_from_mach): Add new function.
1156 (sh_find_elf_flags): Likewise.
1157 (sh_elf_copy_private_data): Replace most of non-elf contents
1158 with a call to sh_merge_bfd_arch() .
1159
d866f350
MC
11602004-05-27 Michael Chastain <mec.gnu@mindspring.com>
1161
1162 * Makefile.am (bfdver.h): Use explicit filename, not $< .
1163 * Makefile.in: Regenerate.
1164
1055df0f
AO
11652004-05-27 Alexandre Oliva <aoliva@redhat.com>
1166
1167 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Avoid
1168 custom calling conventions for dynamic symbols.
1169 (mn10300_elf_relax_section): Avoid relaxing a function as a local
1170 symbol if it's an alias to a global one.
1171
b3096250
L
11722004-05-26 H.J. Lu <hongjiu.lu@intel.com>
1173
1174 * elf.c (_bfd_elf_make_section_from_shdr): Undo the last
1175 change.
1176
9bb351fd
AO
11772004-05-27 Alexandre Oliva <aoliva@redhat.com>
1178
1179 * elf-m10300.c (mn10300_elf_relax_section): Don't test isym within
1180 loop over hashes.
1181
e49f5022
AM
11822004-05-26 Alan Modra <amodra@bigpond.net.au>
1183
1184 * elf.c (_bfd_elf_make_section_from_shdr): Don't set SEC_EXCLUDE
1185 for SHT_GROUP sections.
1186
57ceae94
AM
11872004-05-25 Alan Modra <amodra@bigpond.net.au>
1188
1189 * elflink.c (elf_link_add_object_symbols): Don't set up merge
1190 section data here..
1191 * elf.c (_bfd_elf_merge_sections): .. Do it here instead.
1192 * merge.c: Formatting. Remove unnecessary casts. Expand
1193 bfd_get_section_alignment macro.
1194 (struct sec_merge_sec_info): Rename "first" to "first_str". Update
1195 use throughout file.
1196 (_bfd_add_merge_section): Rename from _bfd_merge_section. Update
1197 comment. Abort on dynamic or non-SEC_MERGE input. Don't test
1198 section name to determine sinfo group, instead test output section
1199 and alignment.
1200 (_bfd_merge_sections): Add struct bfd_link_info param. Call
1201 _bfd_strip_section_from_output rather than just twiddling flags.
1202 * libbfd-in.h (_bfd_add_merge_section): Rename, update comment.
1203 (_bfd_merge_sections): Update prototype.
1204 * libbfd.h: Regenerate.
1205
c6f8758f 12062004-05-24 Mark Kettenis <kettenis@gnu.org>
d34436e8
MK
1207
1208 * netbsd-core.c: Correctly indent section that sets architecture
1209 from machine ID.
1210
c6f8758f
NC
1211 From Miod Vallat <miod@online.fr>:
1212 * m88kopenbsd.c: New file.
1213 * targets.c (m88k_openbsd_vec): New.
1214 * config.bfd: Add m88k-*-openbsd*.
1215 * configure.in (m88k-*-openbsd*): Set COREFILE to netbsd-core.lo.
1216 (m88kopenbsd_vec): New.
1217 * configure: Regenerate.
1218 * Makefile.am (BFD32_BACKENDS): Add m88kopenbsd.lo.
1219 (BFD32_BACKENDS_CFILES): Add m88kopenbsd.c.
1220 Run "make dep-am".
1221 * Makefile.in: Regenerate.
1222 * po/SRC-POTFILES.in: Regenerate.
1223
7d7e6bc4
NC
12242004-05-24 Nick Clifton <nickc@redhat.com>
1225
1226 * hash.c: Remove bogus node "Changing the default Hash Table Size"
1227 introduced by hash table size patch.
1228
bc286f95
BE
12292004-05-22 Ben Elliston <bje@au.ibm.com>
1230
1231 * configure.in (is_release): Remove.
1232 (bfd_version_date, bfd_version, bfd_version_string): Likewise.
1233 (AC_OUTPUT): Don't output bfdver.h from version.h.
1234 * configure: Regenerate.
1235 * Makefile.am (RELEASE): New variable.
1236 (bfdver.h): New target.
1237 * Makefile.in: Regenerate.
1238 * doc/Makefile.in: Likewise.
1239
8b89a4eb
BE
12402004-05-22 Ben Elliston <bje@au.ibm.com>
1241
1242 * Makefile.am (config.status): Don't depend on version.h.
1243 * Makefile.in: Regenerate.
1244
753731ee
AM
12452004-05-22 Alan Modra <amodra@bigpond.net.au>
1246
1247 * merge.c (_bfd_merged_section_offset): Remove "addend" param.
1248 * libbfd-in.h (_bfd_merged_section_offset): Adjust prototype.
1249 * libbfd.h: Regenerate.
1250 * elf.c (_bfd_elf_rela_local_sym): Adjust call.
1251 (_bfd_elf_rel_local_sym): Likewise.
1252 * elflink.c (_bfd_elf_link_sec_merge_syms): Likewise.
1253 (elf_link_input_bfd): Likewise.
1254 * elf32-ppc.c (ppc_elf_relax_section): Likewise.
1255 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1256 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
1257 (elfNN_ia64_relocate_section): Likewise.
1258
2d643429
NC
12592004-05-21 Andy Chittenden <achittenden@bluearc.com>
1260
1261 * hash.c (bfd_default_hash_table_size): New variable.
1262 (bfd_hash_table_init): Use new variable instead of DEFAULT_SIZE.
1263 (bfd_hash_set_default_size): New function. Set the default size
1264 to a selected prime number close to the argument. Document new
1265 function.
1266 * bfd-in.h: Add prototype for bfd_hash_set_default_size.
1267 * bfd-in2.h: Regenerate.
1268 * Makefile.am (hash.lo): Add dependency upon libiberty.h.
1269 * Makefile.in: Regenerate.
1270
8377c19c
MK
12712004-05-21 Mark Kettenis <kettenis@gnu.org>
1272
1273 * libaout.h (machine_type): Add M_88K_OPENBSD and M_HPPA_OPENBSD.
1274 * netbsd-core.c (netbsd_core_file_p): Set architecture for alpha,
1275 arm, m68k, m88k and hppa core files.
1276
69fd4758
NC
12772004-05-21 Nick Clifton <nickc@redhat.com>
1278
1279 * bfdio.c (bfd_bread): Do not use iovec if it is NULL.
1280 (bfd_bwrite): Likewise.
1281 (bfd_tell): Likewise.
1282 (bfd_flush): Likewise.
1283 (bfd_stat): Likewise.
1284 (bfd_seek): Likewise.
1285 (bfd_get_mtime): Likewise.
1286 (bfd_get_size): Likewise.
1287
cd917290
BE
12882004-05-19 Ben Elliston <bje@au.ibm.com>
1289
1290 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Comment correction.
1291
1b09e940
NC
12922004-05-19 Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
1293
1294 * archive.c (_bfd_get_elt_at_filepos): Cope with a nested archives.
1295 (bfd_generic_openr_next_archived_file): Likewise.
1296
096c35a7
BW
12972004-05-17 Bob Wilson <bob.wilson@acm.org>
1298
1299 * elf32-xtensa.c (xtensa_get_property_section_name): Determine linkonce
1300 section names by inserting a new substring after .gnu.linkonce, except
1301 for .gnu.linkonce.t.* where the "t." is replaced.
1302
eea6121a 13032004-05-17 Adam Nemet <anemet@lnxw.com>
b2d65c0b
NC
1304
1305 * config.bfd (sparc-*-lynxos* case): Add to obsolete list.
1306 (m68-*-lynxos* case): Likewise.
1307 (powerpc-*-lyxnos* case): New case.
1308 (i[3-7]86-*-lynxos* case): Update to LynxOS 4.0 ELF.
1309
80fccad2
BW
13102004-05-17 David Heine <dlheine@tensilica.com>
1311
1312 * aout-target.h (MY_bfd_copy_private_header_data): Define.
1313 * aout-tic30.c (MY_bfd_copy_private_header_data): Define.
1314 * bfd.c (bfd_copy_private_header_data): Define.
1315 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Add entries for new
1316 interface.
1317 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
1318 * coffcode.h (coff_bfd_copy_private_header_data): Define.
1319 * elf-bfd.h (_bfd_elf_copy_private_header_data): Declare.
1320 * elf.c (_bfd_elf_copy_private_section_data): Remove code to set up
1321 segments by calling copy_private_bfd_data.
1322 (_bfd_elf_copy_private_header_data): Define.
1323 * elfxx-target.h (bfd_elfNN_bfd_copy_private_header_data): Define.
1324 * libbfd-in.h (_bfd_generic_bfd_copy_private_header_data): Define.
1325 * libecoff.h (_bfd_ecoff_bfd_copy_private_header_data): Define.
1326 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Define.
1327 * mmo.c (mmo_bfd_copy_private_header_data): Define.
1328 * ppcboot.c (ppcboot_bfd_copy_private_header_data): Define.
1329 * som.c (som_bfd_copy_private_header_data): Define.
1330 * targets.c (BFD_JUMP_TABLE_COPY): Add _bfd_copy_private_header_data.
1331 * vms.c (vms_bfd_copy_private_header_data): Define.
1332 * bfd-in2.h: Regenerate.
1333 * libbfd.h: Regenerate.
1334
c5ae1840
TS
13352004-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1336
1337 * elfxx-mips.c (MINUS_TWO): Define.
1338 (mips_elf_higher, mips_elf_highest,
1339 mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for
1340 some bfd_vma values.
1341 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup.
1342
a99cf92b
DA
13432004-05-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1344
1345 * som.c (log2): Rename to exact_log2. Adjust all callers.
1346
0da76f83
NC
13472004-05-13 Paul Brook <paul@codesourcery.com>
1348
c273895f 1349 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle
336b9722
NC
1350 dwarf3 format CIE entries. Remove comment about the size of the
1351 ra_column field. It is now correctly deduced.
0da76f83 1352
4b363073
NC
13532004-05-13 Joel Sherrill <joel@oarcorp.com>
1354
1355 * config.bfd (or32-*-rtems*): Switch to elf.
1356
9598fbe5
NC
13572004-05-13 Nick Clifton <nickc@redhat.com>
1358
1359 * po/fr.po: Updated French translation.
1360
8c37241b
JJ
13612004-05-11 Jakub Jelinek <jakub@redhat.com>
1362
1363 * elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol
1364 into .dynsym if elf_section_data (sec)->dynindx <= 0.
1365 Adjust counting of last_local.
1366 (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
1367 other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
1368 created by the linker nor !SHF_ALLOC.
1369
1370 * elf32-i386.c (elf_i386_finish_dynamic_sections): Point
1371 DT_PLTGOT to the start of the .got.plt section instead of the
1372 .got output section. Set sh_entsize for .got section in addition
1373 to .got.plt.
1374 (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
1375 is at sgot->output_section->vma.
1376 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
1377 DT_PLTGOT to the start of the .got.plt section instead of the
1378 .got output section.
1379 (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
1380 is at sgot->output_section->vma. Set sh_entsize for .got section
1381 in addition to .got.plt.
1382 * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
1383 (bfd_section_from_phdr): Likewise.
1384 (map_sections_to_segments): Likewise.
1385 (assign_file_positions_for_segments): Likewise.
1386 (get_program_header_size): Likewise.
1387 * elflink.c (bfd_elf_size_dynamic_sections): Set
1388 elf_tdata (output_bfd)->relro from info->relro.
1389 * elf-bfd.h (struct elf_obj_tdata): Add relro field.
1390
3f980e41
AO
13912004-05-08 Alexandre Oliva <aoliva@redhat.com>
1392
1393 * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get
1394 a zero symndx for which we hadn't accounted a dynamic relocation.
1395 (_frvfdpic_add_rofixup): Likewise.
1396
d70270c5 13972004-05-07 Brian Ford <ford@vss.fsi.com>
eea6121a 1398 DJ Delorie <dj@redhat.com>
d70270c5
BF
1399
1400 * coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]:
1401 Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE.
1402 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize
1403 IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines.
1404
7e9f3bd6
AO
14052004-05-07 Alexandre Oliva <aoliva@redhat.com>
1406
1407 * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Return
1408 immediately if there's no link info.
1409 (elf32_frvfdpic_copy_private_bfd_data): New.
1410 (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic.
1411
eb61d2d6
ZW
14122004-05-06 Zack Weinberg <zack@codesourcery.com>
1413
1414 * dwarf2.c (add_line_info): Also set info->filename to NULL if
1415 filename argument is null; do not call strlen on a null pointer.
1416
ecb2d096
DJ
14172004-05-06 Daniel Jacobowitz <drow@mvista.com>
1418
1419 * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32
1420 special case.
1421
43850d5b
AO
14222004-05-05 Alexandre Oliva <aoliva@redhat.com>
1423
1424 * configure.in (bfd_elf32_frvfdpic_vec): New.
1425 * configure: Rebuilt.
1426 * targets.c (bfd_elf32_frvfdpic_vec): New.
1427 * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default
1428 on the latter.
1429 * elf32-frv.c: Prefix all identifiers added for FDPIC support with
1430 frvfdpic instead of frv. Rearrange elf-target macros such that
1431 the FDPIC-specific ones are only defined for this new target
1432 vector.
1433 (bfd_elf32_frvfdpic_vec): Declare.
1434 (IS_FDPIC): New.
1435 (elf32_frv_relocate_section): Use it to enable segment checking
1436 and to control rofixup emission. Add output section vma to
1437 applied relocation in non-LOAD non-ALLOC sections. Use
1438 _bfd_error_handler for errors.
1439 (_frv_create_got_section): Create .rel.got and .rofixup only in
1440 FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the
1441 linker script.
1442 (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC.
1443 (elf32_frvfdpic_modify_segment_map): Likewise.
1444 (elf32_frv_finish_dynamic_sections): New, do-nothing.
1445 (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve
1446 error message if we miscompute the rofixup size.
1447 (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC.
1448 (frvfdpic_elf_encode_eh_address): Likewise.
1449 (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC.
1450 Record relocs only in FDPIC. Make sure _gp is defined for GPREL
1451 relocs. Reject unknown relocation types.
1452 (elf32_frv_object_p): Make sure target vector matches FDPIC bits.
1453 (frv_elf_merge_private_bfd_data): Likewise.
1454 (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as
1455 0x4000 for newly-added elf32-frvfdpic.
1456
06fc8a8c
NC
14572004-05-05 Nick Clifton <nickc@redhat.com>
1458
1459 PR/136
1460 * cache.c (bfd_cache_lookup_worker): Call abort() rather than
1461 returning NULL as most users of this function do not check its
1462 return value.
33216455
NC
1463 * hppabsd-core.c (hppabsd_core_core_file_p): Do not check result
1464 of bfd_cache_lookup().
1465 * sco5-core.c (sco5_core_file_p): Likewise.
1466 * trad-core.c (trad_unix_core_file_p): Likewise.
06fc8a8c
NC
1467
14682004-05-05 Nick Clifton <nickc@redhat.com>
1469
1470 * cache.c (bfd_cache_lookup): Improve formatting.
1471 * archive.c: Fix formatting.
1472
6b6e92f4
NC
14732004-05-05 Peter Barada <peter@the-baradas.com>
1474
1475 * bfd_archures.c(bfd_architecture): Add 521x,5249,547x,548x.
1476 * cpu-m68k.c(bfd_m68k_arch): Likewise.
1477 * bfd-in2.h(bfd_architecture): Regenerate.
1478
6a8d1586
AM
14792004-05-03 Alan Modra <amodra@bigpond.net.au>
1480
1481 * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excluded
1482 SEC_MERGE sections.
1483 * elflink.c (elf_link_input_bfd): Adjust output reloc index for
1484 those against discarded link-once and SEC_MERGE section symbols.
1485
fafe6678
L
14862004-05-02 H.J. Lu <hongjiu.lu@intel.com>
1487
1488 * section.c (bfd_get_section_by_name_if): New.
1489 * bfd-in2.h: Regenerated.
1490
ad7b9a36
AM
14912004-05-02 Alan Modra <amodra@bigpond.net.au>
1492
1493 * som.c (som_bfd_is_group_section): Define.
1494
73499ab8
AM
14952004-05-01 Alan Modra <amodra@bigpond.net.au>
1496
1497 * section.c (bfd_make_section_anyway): Copy the whole
1498 bfd_hash_entry, not just "next" from existing entry.
1499
45c5e9ed
L
15002004-04-30 H.J. Lu <hongjiu.lu@intel.com>
1501
1502 * elf.c (bfd_section_from_shdr): Maintain the section order in
1503 a section group.
1504 (special_sections): Add ".note.GNU-stack".
1505 (elf_fake_sections): Handle section group for relocatable
1506 link..
1507
bc87dd2e
L
15082004-04-30 H.J. Lu <hongjiu.lu@intel.com>
1509
1510 * section.c (bfd_sections_find_if): New.
1511 * bfd-in2.h: Regenerated.
1512
72adc230
AM
15132004-04-30 Alan Modra <amodra@bigpond.net.au>
1514
1515 * section.c (bfd_make_section_anyway): Add all sections to hash tab.
1516
1517 * elf-bfd.h (bfd_elf_is_group_section): Declare.
1518 * elf.c (bfd_elf_is_group_section): New function.
1519 * elfxx-target.h (bfd_elfNN_bfd_is_group_section
1520 * section.c (bfd_generic_is_group_section): New function.
1521 * targets.c (struct bfd_target): Add _bfd_is_group_section field.
1522 (BFD_JUMP_TABLE_LINK): Adjust.
1523 * aout-adobe.c (aout_32_bfd_is_group_section): Define.
1524 * aout-target.h (MY_bfd_is_group_section): Define.
1525 * aout-tic30.c (MY_bfd_is_group_section): Define.
1526 * bfd.c (bfd_is_group_section): Define.
1527 * binary.c (binary_bfd_is_group_section): Define.
1528 * bout.c (b_out_bfd_is_group_section): Define.
1529 * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define.
1530 * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define.
1531 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust.
1532 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust.
1533 * coffcode.h (coff_bfd_is_group_section): Define.
1534 * i386msdos.c (msdos_bfd_is_group_section): Define.
1535 * i386os9k.c (os9k_bfd_is_group_section): Define.
1536 * ieee.c (ieee_bfd_is_group_section): Define.
1537 * ihex.c (ihex_bfd_is_group_section): Define.
1538 * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define.
1539 * mach-o.c (bfd_mach_o_bfd_is_group_section): Define.
1540 * mmo.c (mmo_bfd_is_group_section): Define.
1541 * nlm-target.h (nlm_bfd_is_group_section): Define.
1542 * oasys.c (oasys_bfd_is_group_section): Define.
1543 * pef.c (bfd_pef_bfd_is_group_section): Define.
1544 * ppcboot.c (ppcboot_bfd_is_group_section): Define.
1545 * srec.c (srec_bfd_is_group_section): Define.
1546 * tekhex.c (tekhex_bfd_is_group_section): Define.
1547 * versados.c (versados_bfd_is_group_section): Define.
1548 * vms.c (vms_bfd_is_group_section): Define.
1549 * xsym.c (bfd_sym_bfd_is_group_section): Define.
1550 * bfd-in2.h: Regenerate.
1551 * libbfd.h: Regenerate.
1552
20f0a1ad
AM
15532004-04-30 Alan Modra <amodra@bigpond.net.au>
1554
1555 * elflink.c (elf_gc_mark): Follow indirect and warning syms.
1556
f7458fc9 15572004-04-30 Hans-Peter Nilsson <hp@axis.com>
7dfb3b6b
HPN
1558
1559 * configure.in: Update version to 2.15.91.
1560 * configure: Regenerate.
1561
8a7140c3
NC
15622004-04-29 Brian Ford <ford@vss.fsi.com>
1563
1564 * bfd.c (bfd_get_sign_extend_vma): Add pe[i]-i386 case to DJGPP hack.
1565 * coffcode.h (DOT_DEBUG, GNU_LINKONCE_WI): Define.
1566 [!COFF_WITH_PE] (sec_to_styp_flags, styp_to_sec_flags): Use them.
1567 (coff_compute_section_file_positions) [RS6000COFF_C]: Likewise.
1568 [COFF_WITH_PE] (sec_to_styp_flags): Handle DWARF 2/3 .debug* and
1569 .gnu.linkonce.wi. sections.
1570 * pe-i386.c (COFF_SUPPORT_GNU_LINKONCE): Define.
1571 (COFF_SECTION_ALIGNMENT_ENTRIES): Add entries for .debug and
1572 .gnu.linkonce.wi..
1573 * pei-i386.c (COFF_SUPPORT_GNU_LINKONCE): Likewise.
1574 (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
1575
3e722fb5
CD
15762004-04-28 Chris Demetriou <cgd@broadcom.com>
1577
1578 * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
1579 * bfd-in2.h: Regenerate.
1580 * libbfd.h: Likewise.
1581
351e2b5a
DA
15822004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1583
1584 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and
1585 dup_common fields.
1586 (setup_sections): Use som_subspace_dictionary_record struct instead
1587 subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is
1588 is_comdat, is_common or dup_common.
1589 (som_prep_headers): Use som_subspace_dictionary_record struct. Set
1590 is_comdat, is_common and dup_common in section subspace_dict from
1591 copy_data.
1592 (som_begin_writing): Use som_subspace_dictionary_record struct.
1593 (som_finish_writing): Likewise.
1594 (som_bfd_derive_misc_symbol_info): Add support to set is_comdat,
1595 is_common and dup_common flags in info for symbol. Add comment
1596 regarding linker support for these fields. Slightly reorganize
1597 function.
1598 (som_build_and_write_symbol_table): Set is_comdat, is_common and
1599 dup_common fields in symbol table from symbol info.
1600 (bfd_som_set_subsection_attributes): Add comdat, common and dup_common
1601 arguments. Set corresponding fields in copy_data. Change all callers.
1602 (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library
1603 symbol table.
1604 (som_vec): Add SEC_LINK_ONCE to applicable section flags.
1605 * som.h (som_subspace_dictionary_record): Define.
1606 (som_copyable_section_data_struct): Add is_comdat, is_common and
1607 dup_common fields.
1608 (som_section_data_struct): Use som_subspace_dictionary_record struct
1609 instead of subspace_dictionary_record.
1610 (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype.
1611
3ba3bc8c
BW
16122004-04-27 Bob Wilson <bob.wilson@acm.org>
1613
1614 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size
1615 if set. Check reloc_done flag before applying relocations. Use
1616 output addresses, both when applying relocations and when comparing
1617 against the specified section.
1618 (elf_xtensa_relocate_section): Use output address to check if dynamic
1619 reloc is in a literal pool. Set section's reloc_done flag.
1620
beb8df56
L
16212004-04-27 H.J. Lu <hongjiu.lu@intel.com>
1622
1623 * elf32-sh64.c (elf_backend_section_flags): New. Defined.
1624 (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges
1625 section.
1626 (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges
1627 section.
1628
1829f4b2
AM
16292004-04-27 Alan Modra <amodra@bigpond.net.au>
1630
1631 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign
1632 structure field removed in 2004-04-24 patch.
1633 * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix.
1634
1635 * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>):
1636 Constify hdr arg.
1637 * elf32-arm.h (elf32_arm_section_flags): Likewise.
1638 * elf64-alpha.c (elf64_alpha_section_flags): Likewise.
1639 * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise.
1640 * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section
1641 field before calling elf_backend_section_flags.
1642
4030e8f6
CD
16432004-04-24 Chris Demetriou <cgd@broadcom.com>
1644
1645 * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16)
1646 (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove.
1647 (bfd_elf32_bfd_reloc_type_lookup): Remove cases for
1648 BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL,
1649 and BFD_RELOC_32_PCREL.
1650 (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16,
1651 R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32.
1652 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1653 (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16.
1654 (mips_elf_next_relocation): Move comment about matching HI/LO
1655 relocations to...
1656 (_bfd_mips_elf_relocate_section): Here. Remove handling for
1657 R_MIPS_GNU_REL_HI16.
1658
3e27568f
CD
16592004-04-23 Chris Demetriou <cgd@broadcom.com>
1660
1661 * coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
1662 (mips_switch_reloc, mips_read_relocs, mips_relax_section)
1663 (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
1664 (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
1665 and update comments to reflect current usage.
1666 (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
1667 and MIPS_R_SWITCH, as well as several empty entries. Update comment
1668 for MIPS_R_PCREL16.
1669 (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
1670 (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
1671 for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
1672 (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
1673 type number to be MIPS_R_PCREL16.
1674 (mips_relocate_section): Remove support for link-time relaxation
1675 of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
1676 MIPS_R_RELLO, and MIPS_R_RELHI relocations.
1677 (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
1678 * ecoff.c (ecoff_indirect_link_order): Remove support for link-time
1679 relaxation of branches used by embedded-PIC.
1680 * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
1681 * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
1682 related members, update comment.
1683 * pe-mips.c: Remove disabled (commented-out and #if 0'd)
1684 code related to embedded-PIC.
1685 * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
1686 initialization of now-removed 'adjust' member of
1687 'struct ecoff_debug_info'.
1688
b32de0bc 16892004-04-23 Chris Demetriou <cgd@broadcom.com>
8472310d
CD
1690
1691 * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove.
1692
955af222
PB
16932004-04-21 Philip Blundell <pb@nexus.co.uk>
1694
1695 * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32
1696 relocs for locally defined symbols during -shared final link.
1697 (elf32_arm_final_link_relocate): Likewise.
1698
47a9f7b3
JJ
16992004-04-22 Jakub Jelinek <jakub@redhat.com>
1700
1701 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also
1702 ELF_LINK_POINTER_EQUALITY_NEEDED.
1703 (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED
1704 if r_type is not R_X86_64_PC32.
1705 (elf64_x86_64_finish_dynamic_symbol): If
1706 ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of
1707 SHN_UNDEF symbols.
1708
1f1799d5
KK
17092004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1710
1711 * elf32-sh.c (sh_elf_plt_sym_val): New function.
1712 (elf_backend_plt_sym_val): Define.
1713
0fdea5ce
AC
17142004-04-22 Andrew Cagney <cagney@redhat.com>
1715
1716 * opncls.c (bfd_alloc): Fix type of "wanted" in doco.
1717
5198ba8b
DA
17182004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1719
eb61d2d6 1720 * hpux-core.c (hpux_core_core_file_p): Add cast in call to
5198ba8b
DA
1721 make_bfd_asection.
1722 * som.c (som_set_section_contents): Constantify second argument.
1723 (hppa_som_gen_reloc_type): Abort for unsupported selectors.
1724 (som_object_setup): Rework to avoid warning.
1725 (setup_sections, som_write_fixups, bfd_section_from_som_symbol):
1726 Likewise.
1727
fe2e161a
AC
17282004-04-22 Andrew Cagney <cagney@redhat.com>
1729
1730 * cache.c (bfd_cache_close): Check for a previously closed file.
1731
4c45e5c9
JJ
17322004-04-22 Jakub Jelinek <jakub@redhat.com>
1733
1734 * bfd.c (bfd_get_synthetic_symtab): Define.
1735 * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
1736 NAME##_get_synthetic_symtab.
1737 (struct bfd_target): Add _bfd_get_synthetic_symtab.
1738 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
1739 * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
1740 relplt_name fields.
1741 (_bfd_elf_get_synthetic_symtab): New prototype.
1742 * elfcode.h (elf_get_synthetic_symtab): Define.
1743 * elf.c (_bfd_elf_get_synthetic_symtab): New function.
1744 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
1745 (elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
1746 (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
1747 * bfd-in2.h: Rebuilt.
1748 * libbfd.h: Rebuilt.
1749 * elf32-i386.c (elf_i386_plt_sym_val): New function.
1750 (elf_backend_plt_sym_val): Define.
1751 * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
1752 (elf_backend_plt_sym_val): Define.
1753 * elf32-s390.c (elf_s390_plt_sym_val): New function.
1754 (elf_backend_plt_sym_val): Define.
1755 * elf64-s390.c (elf_s390_plt_sym_val): New function.
1756 (elf_backend_plt_sym_val): Define.
1757 * elf32-sparc (elf32_sparc_plt_sym_val): New function.
1758 (elf_backend_plt_sym_val): Define.
1759 * elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
1760 (elf_backend_plt_sym_val): Define.
1761 * elf32-ppc.c (ppc_elf_plt_sym_val): New function.
1762 (elf_backend_plt_sym_val): Define.
1763 * aout-target.h (MY_get_synthetic_symtab): Define.
1764 * aout-tic30.c (MY_get_synthetic_symtab): Define.
1765 * coff-rs6000.c (rs6000coff_vec): Add
1766 _bfd_nodynamic_get_synthetic_symtab.
1767 (pmac_xcoff_vec): Likewise.
1768 * coff64-rs6000.c (rs6000coff64_vec): Add
1769 _bfd_nodynamic_get_synthetic_symtab.
1770 (aix5coff64_vec): Likewise.
1771 * sunos.c (MY_get_synthetic_symtab): Define.
1772 * vms.c (vms_get_synthetic_symtab): Define.
1773
d2f7ecac
NC
17742004-04-22 Nick Clifton <nickc@redhat.com>
1775
1776 * bfd.c (bfd_archive_filename): Return NULL on NULL input.
1777
fd99574b
NC
17782004-04-22 Peter Barada <peter@the-baradas.com>
1779
1780 * archures.c: Add bfd_mach_mcfv4e to bfd_architecture.
1781 * bfd2-in.h: Regenerate.
1782 * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[].
1783
23867d67
CD
17842004-04-21 Chris Demetriou <cgd@broadcom.com>
1785
1786 * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove.
1787 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove.
1788 * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs)
1789 (bfd_mips_elf32_create_embedded_relocs): Remove prototypes
1790 * bfd-in2.h: Regenerate.
1791
2c8c90bc
BW
17922004-04-21 Bob Wilson <bob.wilson@acm.org>
1793
1794 * elf32-xtensa.c (is_same_value): Add final_static_link argument and
1795 require relocations against a weak symbol to reference the same
1796 symbol hash entry if not a final, static link.
1797 (get_cached_value, add_value_map): Add final_static_link argument.
1798 (remove_literals): Pass final_static_link argument as needed.
1799
40838a72
AC
18002004-04-21 Andrew Cagney <cagney@redhat.com>
1801
1802 * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
1803 (struct opncls, opncls_btell, opncls_bseek, opncls_bread)
1804 (opncls_bwrite, opncls_bclose, opncls_bflush)
1805 (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
1806 bfd iovec that uses function callbacks.
1807 (bfd_close): Use the iovec's bclose.
1808 * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
1809 (cache_bclose, cache_bflush, cache_bstat)
1810 (cache_iovec): New functions and global variable, implement a
1811 cache "iovec", where applicable set bfd_error.
1812 (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
1813 * bfdio.c (struct bfd_iovec): Define.
1814 (real_read): Delete function.
1815 (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
1816 (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
1817 assume that bread and bwrite set bfd_error.
1818 * bfd.c (struct bfd): Add "iovec", update comments.
1819 * bfd-in2.h, libbfd.h: Re-generate.
1820
7f919c84
AC
18212004-04-21 Andrew Cagney <cagney@redhat.com>
1822
1823 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
1824
715df9b8
EB
18252004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
1826
1827 * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function.
1828 (bfd_elf_gc_sections): Fail if a shared object is being created.
1829 Do not fail if dynamic sections have been created. Instead call
1830 elf_gc_mark_dynamic_ref_symbol to mark sections that contain
1831 dynamically referenced symbols. Do not mark the whole graph
1832 rooted at .eh_frame, only the section proper.
1833
6482c264
NC
18342004-04-20 DJ Delorie <dj@redhat.com>
1835
1836 * reloc.c: Add BFD_RELOC_32_SECREL.
1837 * bfd-in2.h: Regenerate.
1838 * libbfd.h: Likewise.
1839 * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32.
1840 (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it.
1841 (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise.
1842
4dc570c2
JJ
18432004-04-19 Jakub Jelinek <jakub@redhat.com>
1844
1845 * elf32-sparc.c (elf32_sparc_relocate_section): Handle
1846 relocs against hidden/protected undefweak symbols properly.
1847 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1848
0b60d5d3
MK
18492004-04-18 Mark Kettenis <kettenis@gnu.org>
1850
1851 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
1852 * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC
1853 core files.
1854
d48bdb99
AM
18552004-04-17 Brian Ford <ford@vss.fsi.com>
1856
1857 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero
1858 filepos for the SizeOfHeaders field.
1859 (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc
1860 overflow.
1861 (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment.
1862
57a1784e
AM
18632004-04-16 Alan Modra <amodra@bigpond.net.au>
1864
1865 * simple.c (bfd_simple_get_relocated_section_contents): Don't
1866 change reloc_done. Set and restore _cooked_size.
1867 (RETURN): Delete.
1868
d1ad3f6f
MK
18692004-04-15 Mark Kettenis <kettenis@gnu.org>
1870
1871 * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX
1872 core files.
1873
3d1bca9d
NC
18742004-04-15 Nick Clifton <nickc@redhat.com>
1875
1876 * bfd.c (bfd_archive_filename): Catch NULL bfd pointers.
1877
019b892f
AM
18782004-04-15 Alan Modra <amodra@bigpond.net.au>
1879
1880 * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change.
1881
15b43f48
AM
18822004-04-15 H.J. Lu <hongjiu.lu@intel.com>
1883
1884 * elflink.c (_bfd_elf_merge_symbol): Treat weak as strong only
1885 when it is a definition.
1886
6de00a78
AM
18872004-04-14 Alan Modra <amodra@bigpond.net.au>
1888
1889 * elf32-sparc.c (elf32_sparc_relocate_section): Don't abort
1890 when statically linking PIC code.
1891 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1892
279500de
TS
18932004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1894
1895 * config.bfd: Remove mips*-*-mach3* and mips*-dec-mach3* targets.
1896 * configure.in: Remove mips-dec-bsd*, mips-dec-mach3*, mips-*-mach3*
1897 targets amd aout_mips_big_vec, aout_mips_little_vec target vectors.
1898 * configure: Regenerate.
1899
ccf2f652
RS
19002004-04-08 Richard Sandiford <rsandifo@redhat.com>
1901
1902 * elflink.c: Include libiberty.h.
1903 * Makefile.am (elflink.lo): Depend on libiberty.h.
1904 * Makefile.in: Regenerate.
1905
ca07892d
DJ
19062004-04-06 Daniel Jacobowitz <drow@mvista.com>
1907
1908 * elfxx-mips.c (MIPS_ELF_STUB_SECTION_NAME): Always use
1909 ".MIPS.stubs".
1910
a5a58ba4
L
19112004-04-05 H.J. Lu <hongjiu.lu@intel.com>
1912
1913 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Always
1914 reserve the memory for dynamic linker
1915
24d18d30
MK
19162004-04-05 Mark Kettenis <kettenis@gnu.org>
1917
1918 * netbsd-core.c (CORE_WCOOKIE_OFFSET): New define.
1919 (netbsd_core_file_p): Create a .wcookie section for OpenBSD/sparc.
1920
a4d7b4b5
L
19212004-04-02 H.J. Lu <hongjiu.lu@intel.com>
1922
1923 * elf32-cr16c.c (elf32_cr16c_relocate_section): Use
1924 RELOC_FOR_GLOBAL_SYMBOL.
1925 (elf32_cr16c_add_symbol_hook): Remove const from Elf_Internal_Sym.
1926
1f433d93
L
19272004-04-02 H.J. Lu <hongjiu.lu@intel.com>
1928
1929 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
1930 R_ARM_ALU* only if OLD_ARM_ABI is not defined.
1931
e489d0ae
PB
19322004-04-01 Paul Brook <paul@codesourcery.com>
1933
1934 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.
1935 * elf32-arm.h (struct elf32_elf_section_map): New.
1936 (struct _arm_elf_section_data): New.
1937 (elf32_arm_section_data): Define.
1938 (struct elf32_arm_link_hash_table): Add byteswap_code.
1939 (elf32_arm_link_hash_table_create): Initialize byteswap_code.
1940 (bfd_elf32_arm_process_before_allocation): Add byteswap_code.
1941 (elf32_arm_post_process_headers): Set EF_ARM_BE8.
1942 (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook,
1943 elf32_arm_compare_mapping, elf32_arm_write_section): New functions.
1944 (bfd_elf32_new_section_hook, elf_backend_write_section,
1945 elf_backend_link_output_symbol_hook): Define.
1946
66a695f0
NC
19472004-04-01 Andy Chittenden <achittenden@bluearc.com>
1948
1949 * stabs.c (struct stab_link_includes_totals): Add field 'symb'
1950 that keeps the characters in a B_INCL..B_EINCL range.
1951 (_bfd_link_section_stabs): When computing the sum of the
1952 characters in a B_INCL..B_EINCL range also keep a copy of those
1953 characters. Use this information to distinguish between
1954 include sections that have the same sum and the same length
1955 but which are nevertheless unique.
1956
8375c36b
PB
19572004-03-31 Paul Brook <paul@codesourcery.com>
1958
1959 * elf32-arm.h (elf32_arm_final_link_relocate): Add R_ARM_ALU*.
1960 * elfarm-nabi.c (elf32_arm_howto_table): Ditto.
1961
a56b48eb
NC
19622004-03-31 Andy Chittenden <achittenden@bluearc.com>
1963
1964 * stabs.c (struct stab_link_includes_totals): Rename field 'total'
1965 to 'sum_chars' and add field 'num_chars'.
1966 (_bfd_link_section_stabs): When computing the sum of the
1967 characters in a B_INCL..B_EINCL range also keep a count of the
1968 number of characters. Use this information to help distinguish
1969 between include sections when have the same sum but which
1970 nevertheless are still unique.
1971