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