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