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