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