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