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