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