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