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