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