]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
* gas/elf/elf.exp (section5): Use 0-9 instead of [:digit:].
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
06f22d7e
FF
12005-01-05 Fred Fish <fnf@specifixinc.com>
2
3 * dwarf2.c (struct dwarf2_debug): Add info_ptr_unit member.
4 (find_abstract_instance_name): New function.
5 (scan_unit_for_functions): Handle DW_TAG_inlined_subroutine.
6 (scan_unit_for_functions): Handle DW_AT_abstract_origin.
7 (_bfd_dwarf2_find_nearest_line): Initialize info_ptr_unit.
8
83a358aa
PB
92004-12-31 Paul Brook <paul@copdesourcery.com>
10
11 * elf32-arm.c (elf32_arm_symbian_plt_entry): Fix comment typo.
12
b996922c
AM
132004-12-31 Alan Modra <amodra@bigpond.net.au>
14
15 * reloc.c (BFD_RELOC_AVR_LDI, BFD_RELOC_AVR_6, BFD_RELOC_AVR_6_ADIW):
16 Commit missing changes from 2004-12-22.
17 * bfd-in2.h: Regenerate.
18
17a83432
TL
192004-12-23 Tomer Levi <Tomer.Levi@nsc.com>
20
21 * elf32-crx.c (elf32_crx_relax_section): Support 'bcop' relaxation.
22
d69f560c
KW
232004-12-21 Kris Warkentin <kewarken@qnx.com>
24
25 * elf.c (elfcore_grok_nto_gregs): Change name to elfcore_grok_nto_regs.
26 Add 'base' argument for constructing register sections. Reformat.
27 (elfcore_grok_nto_note): Call elfcore_grok_nto_regs for both
28 gp and fp regs. Reformat.
29
750bce0e
NC
302004-12-22 Klaus Rudolph <lts-rudolph@gmx.de>
31
32 * reloc.c: Add new relocs R_AVR_LDI, R_AVR_6, R_AVR_6_ADIW.
33 * bfd-in2.h: Regenerate.
34 * elf32-avr.c (elf_avr_nowto_table): Add the new relocs.
35 (avr_reloc_map): Likewise.
36 (avr_final_link_relocate): Likewise.
37
a5db907e
AM
382004-12-22 Alan Modra <amodra@bigpond.net.au>
39
40 * elflink.c (_bfd_elf_merge_symbol): Treat old definitions from
41 as-needed dynamic libs as undefined.
42 (elf_link_add_object_symbols): Remove DYN_AS_NEEDED from as-needed
43 libs when finding they are needed.
44
8860955f
AM
452004-12-20 Alan Modra <amodra@bigpond.net.au>
46
47 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add opd_relocs.
48 (opd_entry_value): Use opd_relocs if available.
49 (ppc64_elf_relocate_section): Don't set reloc_done. Instead
50 copy .opd relocations to opd_relocs.
51 (ppc64_elf_edit_toc): Set rel_hdr.sh_size after editing relocs.
52
1e50d24d
RS
532004-12-16 Richard Sandiford <rsandifo@redhat.com>
54
55 * reloc.c (BFD_RELOC_V850_LO16_SPLIT_OFFSET): New bfd_reloc_code_type.
56 * elf32-v850.c (v850_elf_howto_table): Add entry for
57 R_V850_LO16_SPLIT_OFFSET.
58 (v850_elf_reloc_map): Map it to BFD_RELOC_V850_LO16_SPLIT_OFFSET.
59 (v850_elf_perform_lo16_relocation): New function, extracted from...
60 (v850_elf_perform_relocation): ...here. Use it to handle
61 R_V850_LO16_SPLIT_OFFSET.
62 (v850_elf_check_relocs, v850_elf_final_link_relocate): Handle
63 R_V850_LO16_SPLIT_OFFSET.
64 * libbfd.h, bfd-in2.h: Regenerate.
65
2fbd2a87
NC
662004-12-14 P.J. Darcy <darcypj@us.ibm.com>
67
68 * config.bfd: Add s390x-ibm-tpf support.
69
06302770
TL
702004-12-14 Tomer Levi <Tomer.Levi@nsc.com>
71
8860955f 72 * elf32-crx.c (elf32_crx_relax_delete_bytes): Add 'struct bfd_link_info *'
06302770
TL
73 to prototype, to make hash info available.
74 Prevent wrapped symbols from being adjusted twice.
75
c314987d
RS
762004-12-14 Richard Sandiford <rsandifo@redhat.com>
77
78 * elfxx-mips.c (mips_elf_calculate_relocation): Don't report an
79 overflow for calls to undefined weak symbols.
80
5c799c07
AM
812004-12-11 Alan Modra <amodra@bigpond.net.au>
82
83 * elfcode.h (elf_slurp_symbol_table): Use bfd_elf_sym_name so that
84 canonical sections syms have a name.
85
645ea6a9
AM
862004-12-11 Alan Modra <amodra@bigpond.net.au>
87
88 * elf64-ppc.c (opd_entry_value): Don't use cached relocs if they
89 have been adjusted for output.
90 (ppc64_elf_relocate_section): Mark sections with reloc_done.
91
0e2cfdce
AM
922004-12-10 Alan Modra <amodra@bigpond.net.au>
93
be8dd2ca
AM
94 * elf.c (bfd_elf_sym_name): Rename from bfd_elf_local_sym_name and
95 add symtab_hdr param.
0e2cfdce
AM
96 (group_signature): Update calls.
97 * elf-bfd.h (bfd_elf_sym_name): Update.
98 * elf32-ppc.c (ppc_elf_relocate_section): Update.
8860955f
AM
99 * elf64-ppc.c (ppc64_elf_edit_opd, ppc64_elf_edit_toc): Update.
100 (ppc64_elf_relocate_section): Update.
0e2cfdce
AM
101 * elflink.c (elf_link_input_bfd): Update.
102
138f35cc
JJ
1032004-12-10 Jakub Jelinek <jakub@redhat.com>
104
105 * elf.c (bfd_elf_local_sym_name): Avoid crashes with invalid
106 st_shndx on STT_SECTION sections.
107
f9cfae62
DJ
1082004-12-09 Daniel Jacobowitz <dan@codesourcery.com>
109
110 * elfcode.h (elf_slurp_reloc_table_from_section): Don't canonicalize
111 ELF section symbols.
112
0d2e43ed
ILT
1132004-12-09 Ian Lance Taylor <ian@wasabisystems.com>
114
1367d393
ILT
115 * elfxx-mips.c (mips_elf_calculate_relocation): For R_MIPS_JALR,
116 return a real value, unless it is a PLT symbol.
117 (mips_elf_perform_relocation): On the RM9000, turn a jal into a
118 bal if possible.
119
74f79d8d
ILT
120 * elfn32-mips.c (elf_mips_howto_table_rela): Change dst_mask of
121 R_MIPS_JALR entry to 0.
122
0d2e43ed
ILT
123 * archures.c: Define bfd_mach_mips9000.
124 * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_9000.
125 (mips_set_isa_flags): Handle bfd_mach_mips9000.
126 * cpu-mips.c (I_mips9000): Define.
127 (arch_info_struct): Add case for bfd_mach_mips9000.
128 * aoutx.h (NAME(aout,machine_type)): Handle bfd_mach_mips9000.
129 * bfd-in2.h: Regenerate.
130
728b2f21
ILT
1312004-12-08 Ian Lance Taylor <ian@wasabisystems.com>
132
133 * elfxx-mips.c (mips_elf_calculate_relocation): Test for R_MIPS_26
134 overflow.
135
45ab555d
BE
1362004-12-07 Ben Elliston <bje@gnu.org>
137
138 * netbsd-core.c (netbsd_core_file_p): Make `i' unsigned.
139
1511ddaf
DJ
1402004-12-06 Daniel Jacobowitz <dan@debian.org>
141
142 Suggested by Fergal Daly <fergal@esatclear.ie>:
143 * simple.c (simple_dummy_multiple_definition): New function.
144 (bfd_simple_get_relocated_section_contents): Use it.
145
1462004-12-03 Jan Beulich <jbeulich@novell.com>
57426232
JB
147
148 * elf.c (elf_find_function): Don't use the last file symbol ever,
149 seen, but the last one seen prior to the symbol being reported.
150 Don't report a filename at all for global symbols when that might
151 be ambiguous/wrong.
152
94a3258f
PB
1532004-12-01 Paul Brook <paul@codesourcery.com>
154
155 * elf32-arm.c (elf32_arm_copy_private_bfd_data): Set EI_OSABI.
156 (elf32_arm_post_process_headers): Set EI_OSABI depending on ABI
157 version.
158
529fcb95
PB
1592004-12-01 Paul Brook <paul@codesourcery.com>
160
161 * elflink.c (elf_link_add_object_symbols): Make symbols from discarded
162 sections undefined.
163
dea514f5
PB
1642004-11-30 Paul Brook <paul@codesourcery.com>
165
166 * elf32-arm.c (struct elf32_arm_link_hash_table): Remove
167 no_pipeline_knowledge
168 (elf32_arm_link_hash_table_create): Ditto.
169 (bfd_elf32_arm_process_before_allocation): Ditto.
170 (elf32_arm_final_link_relocate): Ditto. Remove oabi relocation
171 handling.
172 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
173 prototype.
174 * bfd-in2.h: Regenerate.
175
edfc032f
AM
1762004-11-30 Randolph Chung <tausq@debian.org>
177
178 * elf32-hppa.c (elf32_hppa_grok_prstatus): New function.
179 (elf32_hppa_grok_psinfo): New function.
180 (elf_backend_grok_prstatus): Define.
181 (elf_backend_grok_psinfo): Define.
182
0be9069d
L
1832004-11-24 H.J. Lu <hongjiu.lu@intel.com>
184
185 PR 574:
186 * elfcode.h (elf_slurp_symbol_table): Handle STT_TLS.
187
47cc2cf5
PB
1882004-11-24 Paul Brook <paul@codesourcery.com>
189
190 * elf.c (assign_section_numbers): Number SHT_GROUP sections first.
191
0beaef2b
PB
1922004-11-24 Paul Brook <paul@codesourcery.com>
193
194 * elf32-arm.c (elf32_arm_swap_symbol_in): New function.
195 (elf32_arm_swap_symbol_out): New function.
196 (elf32_arm_size_info): Add.
197 (elf_backend_size_info): Define.
198
3dd2fcf0
DA
1992004-11-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
200
201 * hpux-core.c (hpux_core_core_file_p): Use offsetof macro in calls to
202 make_bfd_asection.
203
de52dba4
AM
2042004-11-19 Alan Modra <amodra@bigpond.net.au>
205
206 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Warning fix.
207 * elf32-iq2000.c (iq2000_reloc_type_lookup): C90 function decl.
208 * nlmcode.h (nlm_write_object_contents): Warning fix.
209
288f74fa
BW
2102004-11-18 Bob Wilson <bob.wilson@acm.org>
211
212 * elf32-xtensa.c (ebb_propose_action): Fix argument order.
213
b7693d02
DJ
2142004-11-17 Daniel Jacobowitz <dan@codesourcery.com>
215
216 * elf32-arm.c (PLT_THUMB_STUB_SIZE): Define.
217 (elf32_arm_plt_thumb_stub): New.
218 (struct elf32_arm_link_hash_entry): Add plt_thumb_refcount
219 and plt_got_offset.
220 (elf32_arm_link_hash_traverse): Fix typo.
221 (elf32_arm_link_hash_table): Add obfd.
222 (elf32_arm_link_hash_newfunc): Initialize new fields.
223 (elf32_arm_copy_indirect_symbol): Copy plt_thumb_refcount.
224 (elf32_arm_link_hash_table_create): Initialize obfd.
225 (record_arm_to_thumb_glue): Mark the glue as a local ARM function.
226 (record_thumb_to_arm_glue): Mark the glue as a local Thumb function.
227 (bfd_elf32_arm_get_bfd_for_interworking): Verify that the
228 interworking BFD is not dynamic.
229 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_PLT32. Do
230 not emit glue for PLT references.
231 (elf32_arm_final_link_relocate): Handle Thumb functions. Do not
232 emit glue for PLT references. Support the Thumb PLT prefix.
233 (elf32_arm_gc_sweep_hook): Handle R_ARM_THM_PC22 and
234 plt_thumb_refcount.
235 (elf32_arm_check_relocs): Likewise.
236 (elf32_arm_adjust_dynamic_symbol): Handle Thumb functions and
237 plt_thumb_refcount.
238 (allocate_dynrelocs): Handle Thumb PLT references.
239 (elf32_arm_finish_dynamic_symbol): Likewise.
240 (elf32_arm_symbol_processing): New function.
241 (elf_backend_symbol_processing): Define.
242
353057a5
RS
2432004-11-16 Richard Sandiford <rsandifo@redhat.com>
244
245 * elf-bfd.h (eh_cie_fde): Add new fields: add_augmentation_size and
246 add_fde_encoding. Remove need_relative.
247 * elf-eh-frame.c (extra_augmentation_string_bytes)
248 (extra_augmentation_data_bytes, size_of_output_cie_fde): New functions.
249 (_bfd_elf_discard_section_eh_frame): Consider changing the FDE encoding
250 in cases where the CIE has no existing 'R' augmentation. Use
251 size_of_output_cie_fde when assigning offsets. Use the final offset
252 as the new section size.
253 (_bfd_elf_eh_frame_section_offset): Remove need_relative handling.
254 Account for any extra augmentation bytes in the returned offset.
255 (_bfd_elf_write_section_eh_frame): Rework so that the entries are
256 moved before being modified. Pad growing entries with DW_CFA_nops.
257 Add 'z' and 'R' augmentations as directed by add_augmentation_size
258 and add_fde_encoding.
259
b32d3aa2
MM
2602004-11-15 Mark Mitchell <mark@codesourcery.com>
261
262 * elf32-arm.c (elf32_arm_relocate_section): Use
263 arm_real_reloc_type.
264
5d41f0b6
RS
2652004-11-16 Richard Sandiford <rsandifo@redhat.com>
266
267 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Return early
268 for discard relocations; don't add an R_MIPS_NONE to the main body
269 of .rel.dyn.
270
fc0e6df6
PB
2712004-11-04 Paul Brook <paul@codesourcery.com>
272
273 * elf-bfd.h (_bfd_elf_slurp_version_tables): Update prototype.
274 * elf.c (_bfd_elf_print_private_bfd_data): Pass extra argument.
275 (_bfd_elf_slurp_version_tables): Add extra argument. Create extra
276 default version definition for unversioned symbols.
277 * elfcode.h (elf_slurp_symbol_table): Pass extra argument.
278 * elflink.c (elf_link_add_object_symbols): Pass extra argument to
279 _bfd_elf_slurp_version_tables. Set default version for unversioned
280 imported symbols.
281
b23e50e2
PB
2822004-11-15 Paul Brook <paul@codesourcery.com>
283
284 * elflink.c (elf_link_add_object_symbols): Don't assume version
285 indices are consecutive.
286
f4a6705c
RS
2872004-11-14 Richard Sandiford <rsandifo@redhat.com>
288
289 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Deal with
290 composite relocations against the personality data.
291
ee06dc07
PB
2922004-11-13 Paul Brook <paul@codesourcery.com>
293
294 * bfd/elf32-arm.c (elf32_arm_final_link_relocate): Resolve
295 R_ARM_PREL31 relocations to PLT entries.
296 (elf32_arm_relocate_section, elf32_arm_gc_sweep_hook): Ditto.
297 (elf32_arm_check_relocs): Ditto.
298
a1ace8d8
BW
2992004-11-12 Bob Wilson <bob.wilson@acm.org>
300
301 * xtensa-isa.c (xtensa_interface_class_id): New.
302
e4115460
BW
3032004-11-11 Bob Wilson <bob.wilson@acm.org>
304
305 * elf32-xtensa.c (property_table_compare): Remove assertion about
306 entries with the same address and non-zero size.
307 (xtensa_read_table_entries): Report such entries as errors.
308
6366ff1e
MM
3092004-11-11 Mark Mitchell <mark@codesourcery.com>
310
311 * elf32-arm.c (elf32_arm_final_link_relocate): Correct logic for
312 R_ARM_RELATIVE on Symbian OS.
313
b34af79c
MM
3142004-11-09 Mark Mitchell <mark@codesourcery.com>
315
e6dc21b6
MM
316 * som.c (som_bfd_print_private_bfd_data): New function.
317 (som_object_setup): Save the auxiliary header. Don't assume that
318 zero is an invalid entry point for a shared library.
319 (som_object_p): Allocate the auxiliary header on the heap.
320
b34af79c
MM
321 * elf32-arm.c (elf32_arm_begin_write_processing): Do not use a K&R
322 declaration.
323 (elf32_arm_symbian_modify_segment_map): Likewise.
324
08d1f311
DJ
3252004-11-09 Daniel Jacobowitz <dan@debian.org>
326
327 From David Poole <daveml@mbuf.com>:
328 * elf32-arm.c (elf32_arm_readonly_dynrelocs): New function.
329 (elf32_arm_size_dynamic_sections): Call it.
330
0306b3bf
AM
3312004-11-09 Alan Modra <amodra@bigpond.net.au>
332
333 * Makefile.am (SOURCE_HFILES): Remove elf32-arm.h.
334 (ALL_MACHINES_CFILES): Fix typo.
335 * Makefile.in: Regenerate.
336 * po/SRC-POTFILES.in: Regenerate.
337
a16385dc
MM
3382004-11-08 Mark Mitchell <mark@codesourcery.com>
339
340 * elf32-arm.c (elf32_arm_final_link_relocate): When generating an
341 R_ARM_RELATIVE relocation for Symbian OS, mention the section
342 symbol in the relocation.
343
0306b3bf
AM
3442004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
345 Vineet Sharma <vineets@noida.hcltech.com>
7499d566
NC
346
347 * coff-maxq.c: New File.
0306b3bf
AM
348 * cpu-maxq.c: New File.
349 * coffcode.h: Likewise.
350 * config.bfd: Likewise.
351 * configure.in (maxqcoff_vec): New target vector.
7499d566
NC
352 * Makefile.am: Add support for maxq target.
353 * configure.in: Likewise.
0306b3bf
AM
354 * archures.c:. Likewise.
355 * targets.c: Likewise.
356 * bfd_in2.h : Regenerated.
7499d566
NC
357 * Makefile.in: Regenerated.
358 * configure: Regenerated.
359 * doc/Makefile.in: Regenerated.
360
977cdf5a
NC
3612004-11-08 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
362
363 * coff-i386.c (coff_i386_reloc): Fix weak symbols.
364 * cofflink.c (_bfd_coff_link_input_bfd): Don't process
365 C_NT_WEAK aux entries.
366 (_bfd_coff_generic_relocate_section): Handle undefined
367 aliases.
368
9dfe8738
AS
3692004-11-07 Andreas Schwab <schwab@suse.de>
370
371 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Use
372 SYMBOL_CALLS_LOCAL and check for undefweak symbols with
373 non-default visibility.
374
c3c76620
MM
3752004-11-01 Mark Mitchell <mark@codesourcery.com>
376
377 * elf32-arm.c (elf32_arm_symbian_begin_write_processing): Clear
0306b3bf 378 D_PAGED.
c3c76620
MM
379 (elf32_arm_symbian_modify_segment_map): Don't
380 reset includes_filehdr and includes_phdrs here.
381
7f266840
DJ
3822004-11-04 Daniel Jacobowitz <dan@debian.org>
383
384 * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Replace
385 elfarm-nabi with elf32-arm. Remove elfarm-oabi.
386 (elf32-arm.lo): Replace elfarm-nabi.lo rule. Remove elf32-arm.h
387 dependency.
388 * config.bfd: Move arm-*-oabi* and thumb-*-oabi* from obsolete list
389 to a new removed list. Remove normal configuration stanzas.
390 * configure.in: (bfd_elf32_bigarm_vec, bfd_elf32_bigarm_symbian_vec)
391 (bfd_elf32_littlearm_symbian_vec, bfd_elf32_littlearm_vec): Replace
392 elfarm-nabi.lo with elf32-arm.lo.
393 (bfd_elf32_bigarm_oabi_vec, bfd_elf32_littlearm_oabi_vec): Remove.
394 * elf32-arm.c: Renamed from elfarm-nabi.c. Inline elf32-arm.h.
395 * elf32-arm.h: Remove.
396 * elfarm-oabi.c: Remove.
397 * targets.c (_bfd_target_vector): Remove bfd_elf32_bigarm_oabi_vec
398 and bfd_elf32_littlearm_oabi_vec.
399 * aclocal.m4, Makefile.in, configure, doc/Makefile.in: Regenerated.
400
bac23f82
HPN
4012004-11-04 Hans-Peter Nilsson <hp@axis.com>
402
403 * config.bfd: Support crisv32-*-* like cris-*-*.
404 * archures.c (bfd_mach_cris_v0_v10, bfd_mach_cris_v32)
405 (bfd_mach_cris_v10_v32): New macros.
406 * cpu-cris.c: Tweak formatting.
407 (get_compatible): New function.
408 (N): New macro.
409 (bfd_cris_arch_compat_v10_v32, bfd_cris_arch_v32): New
410 bfd_arch_info_type:s.
411 (bfd_cris_arch): Use bfd_mach_cris_v0_v10 for member mach,
412 get_compatible for member compatible and link bfd_cris_arch_v32 as
413 next.
414 * elf32-cris.c (cris_elf_pcrel_reloc)
415 (cris_elf_set_mach_from_flags): New functions.
416 (cris_elf_howto_table) <R_CRIS_8_PCREL, R_CRIS_16_PCREL>
417 <R_CRIS_32_PCREL>: Use cris_elf_pcrel_reloc.
418 (cris_elf_grok_prstatus, cris_elf_grok_psinfo): Give correct
419 numbers for bfd_mach_cris_v32.
420 (PLT_ENTRY_SIZE_V32): New macro.
421 (elf_cris_plt0_entry): Drop last comma in initializer.
422 (elf_cris_plt0_entry_v32, elf_cris_plt_entry_v32)
423 (elf_cris_pic_plt0_entry_v32, elf_cris_pic_plt_entry_v32): New
424 PLT initializers.
425 (cris_elf_relocate_section): Change all "%B(%A)" messages to
426 "%B, section %A".
427 (elf_cris_finish_dynamic_symbol): Do V32-specific PLT entries.
428 (elf_cris_finish_dynamic_sections): Similar.
429 (elf_cris_adjust_dynamic_symbol): Similar.
430 (cris_elf_check_relocs): Change all "%B(%A)" messages to "%B,
431 section %A".
432 <switch with PIC relocs>: Emit error and return FALSE for
433 bfd_mach_cris_v10_v32.
434 <case R_CRIS_8_PCREL, case R_CRIS_16_PCREL, case R_CRIS_32_PCREL>:
435 Emit warning when generating textrel reloc.
436 (cris_elf_object_p): Call cris_elf_set_mach_from_flags.
437 (cris_elf_final_write_processing): Set flags according to mach.
438 (cris_elf_print_private_bfd_data): Display
439 EF_CRIS_VARIANT_COMMON_V10_V32 and EF_CRIS_VARIANT_V32.
440 (cris_elf_merge_private_bfd_data): Drop variables old_flags,
441 new_flags. Don't call cris_elf_final_write_processing. Don't
442 look at the actual elf header flags at all; use
443 bfd_get_symbol_leading_char to check ibfd, obfd. Trap difference
444 in bfd_get_mach for ibfd and obfd and handle merging of compatible
445 objects.
446 (bfd_elf32_bfd_copy_private_bfd_data): Define.
447 * reloc.c (BFD_RELOC_CRIS_SIGNED_8, BFD_RELOC_CRIS_UNSIGNED_8)
448 (BFD_RELOC_CRIS_SIGNED_16, BFD_RELOC_CRIS_UNSIGNED_16)
449 (BFD_RELOC_CRIS_LAPCQ_OFFSET): New relocs.
450 * bfd-in2.h, libbfd.h: Regenerate.
451
c5614fa4
AM
4522004-11-04 Alan Modra <amodra@bigpond.net.au>
453
454 * elf64-ppc.h (ppc64_elf_edit_toc): Declare.
455 * elf64-ppc.c (struct ppc_link_hash_entry <adjust_done>): Update
456 comment.
457 (struct adjust_toc_info): New.
458 (adjust_toc_syms, ppc64_elf_edit_toc): New functions.
459
0ebdbb83
BW
4602004-11-03 Bob Wilson <bob.wilson@acm.org>
461
462 * elf.c (assign_file_positions_for_segments): Set next_file_pos even
463 if there are no segments.
464
675b2ace
DJ
4652004-11-02 Daniel Jacobowitz <dan@debian.org>
466
467 * config.bfd: Mark arm-*-oabi and thumb-*-oabi as obsolete.
468
58852c27
NC
4692004-11-02 Nick Clifton <nickc@redhat.com>
470
471 * elf32-iq2000.c: Convert to ISO C90 formatting.
472
e6857c0c
HPN
4732004-11-02 Hans-Peter Nilsson <hp@axis.com>
474
20288ed6 475 * elflink.c (_bfd_elf_create_got_section): Hide _GLOBAL_OFFSET_TABLE_.
e6857c0c 476
bf718458
L
4772004-10-28 H.J. Lu <hongjiu.lu@intel.com>
478
479 * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle weak
480 undefined symbols for R_IA64_SECREL32MSB, R_IA64_SECREL32LSB,
481 R_IA64_SECREL64MSB and R_IA64_SECREL64LSB.
482
044ad7e3
KK
4832004-10-28 Kaz Kojima <kkojima@rr.iij4u.or.jp>
484
485 * elf32-sh.c (tpoff): Take alignment into account.
486
d5cb4bb8
NC
4872004-10-28 Nick Clifton <nickc@redhat.com>
488
489 * elf32-iq2000.c (iq2000_elf_relocate_section): Do nothing when
0d48eab6 490 performing a relocatable link.
d5cb4bb8
NC
491 (iq2000_elf_object_p): Do not set elf_bad_symtab. This is only
492 for MIPS ports under Irix.
493
5b5bb741
PB
4942004-10-27 Richard Earnshaw <rearnsha@arm.com>
495
496 * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Handle
497 R_ARM_CALL and R_ARM_JUMP24 as aliases of R_ARM_PC24.
498 (elf32_arm_final_link_relocate): Ditto.
499 (arm_add_to_rel, elf32_arm_relocate_section): Ditto.
500 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto
501 (elf32_arm_adjust_dynamic_symbol): Ditto.
502 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_CALL and
503 R_ARM_JUMP32. Move R_ARM_R{REL32,ABS32,PC24,BASE}...
504 (elf32_arm_r_howto): ... To here.
505 (elf32_arm_howto_from_type): Use elf32_arm_r_howto.
506
97ecf322
L
5072004-10-26 H.J. Lu <hongjiu.lu@intel.com>
508
509 PR 475
510 * elfxx-ia64.c (elfNN_ia64_relocate_section): Correct
511 R_IA64_SECREL32MSB, R_IA64_SECREL32LSB, R_IA64_SECREL64MSB
512 and R_IA64_SECREL64LSB.
513
3e3b46e5
PB
5142004-10-26 Paul Brook <paul@codesourcery.com>
515
516 * elflink.c (elf_finalize_dynstr): Skip shared aux structure.
517 (bfd_elf_size_dynamic_sections): Create default version definition.
518 (elf_link_output_extsym): Adjust for default symbol version.
519
aa69fe43
HPN
5202004-10-24 Hans-Peter Nilsson <hp@bitrange.com>
521
278b4623
HPN
522 * mmo.c: Adjust to ISO C.
523
aa69fe43
HPN
524 * mmo.c (mmo_write_section_description): New function broken out
525 of mmo_internal_write_section.
526 (mmo_internal_write_section): For each of .text and .data, call
527 mmo_write_section_description before outputting contents if it has
528 nontrivially deducible vma or contents.
529 (mmo_has_leading_or_trailing_zero_tetra_p): New function.
530 (mmo_canonicalize_symtab): Adjust absolute symbols to .data
531 symbols if found within the .data address range.
532
ed040321
DJ
5332004-10-24 Daniel Jacobowitz <dan@debian.org>
534
535 * opncls.c (bfd_close): Return TRUE for BFD_IN_MEMORY.
536
830866af
HPN
5372004-10-24 Hans-Peter Nilsson <hp@bitrange.com>
538
539 * mmo.c (File Layout): Correct place of misplaced blurb about
540 special data.
541
5f417ca3
MK
5422004-10-22 Mark Kettenis <kettenis@gnu.org>
543
544 * config.bfd: Add mips64*-*-openbsd.
545
823fc61f
BW
5462004-10-21 Bob Wilson <bob.wilson@acm.org>
547
548 * elf32-xtensa.c (ebb_propose_action): Put declarations before
549 statements.
550
8697aafb
L
5512004-10-21 H.J. Lu <hongjiu.lu@intel.com>
552
553 * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.94.
554 * configure: Regenerate.
555
dfeffb9f
L
5562004-10-21 H.J. Lu <hongjiu.lu@intel.com>
557
558 PR 463
559 * aoutx.h (aout_link_input_section_std): Pass proper hash entry
560 to linker reloc_overflow callback.
561 (aout_link_input_section_ext): Likewise.
562 (aout_link_reloc_link_order): Likewise.
563 * coff-a29k.c (coff_a29k_relocate_section): Likewise.
564 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
565 Likewise.
566 (alpha_relocate_section): Likewise.
567 * coff-arm.c (coff_arm_relocate_section): Likewise.
568 * coff-h8300.c (h8300_reloc16_extra_cases): Likewise.
569 * coff-h8500.c (extra_case): Likewise.
570 * coff-i960.c (coff_i960_relocate_section): Likewise.
571 * coff-mcore.c (coff_mcore_relocate_section): Likewise.
572 * coff-mips.c (mips_relocate_section): Likewise.
573 * coff-or32.c (coff_or32_relocate_section): Likewise.
574 * coff-ppc.c (coff_ppc_relocate_section): Likewise.
575 * coff-rs6000.c (xcoff_ppc_relocate_section): Likewise.
576 * coff-sh.c (sh_relocate_section): Likewise.
577 * coff-tic80.c (coff_tic80_relocate_section): Likewise.
578 * coff-w65.c (w65_reloc16_extra_cases): Likewise.
579 * coff-z8k.c (extra_case): Likewise.
580 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
581 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
582 (_bfd_coff_generic_relocate_section): Likewise.
583 * ecoff.c (ecoff_reloc_link_order): Likewise.
584 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
585 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
586 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
587 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
588 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
589 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
590 * elf32-cris.c (cris_elf_relocate_section): Likewise.
591 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
592 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
593 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
594 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
595 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
596 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
597 * elf32-i370.c (i370_elf_relocate_section): Likewise.
598 * elf32-i386.c (elf_i386_relocate_section): Likewise.
599 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
600 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
601 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
602 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
603 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
604 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
605 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
606 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
607 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
608 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
609 * elf32-s390.c (elf_s390_relocate_section): Likewise.
610 * elf32-sh.c (sh_elf_relocate_section): Likewise.
611 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
612 * elf32-v850.c (v850_elf_relocate_section): Likewise.
613 * elf32-vax.c (elf_vax_relocate_section): Likewise.
614 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
615 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
616 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
617 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
618 * elf64-s390.c (elf_s390_relocate_section): Likewise.
619 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
620 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
621 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
622 * elflink.c (elf_reloc_link_order): Likewise.
623 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
624 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
625 (_bfd_elf_mips_get_relocated_section_contents): Likewise.
626 * linker.c (_bfd_generic_reloc_link_order): Likewise.
627 * pdp11.c (pdp11_aout_link_input_section): Likewise.
628 (aout_link_reloc_link_order): Likewise.
629 * reloc.c (bfd_generic_get_relocated_section_contents):
630 Likewise.
631 * xcofflink.c (xcoff_reloc_link_order): Likewise.
632 * simple.c (simple_dummy_reloc_overflow): Updated.
633
1715e0e3
AS
6342004-10-20 Andreas Schwab <schwab@suse.de>
635
636 * elf32-m68k.c (elf_m68k_plt_sym_val): New function.
637 (elf_backend_plt_sym_val): Define.
638
db3d41a8
DS
6392004-10-19 Danny Smith <dannysmith@users.sourceforege.net>
640
641 * config.bfd: Set targ_underscore=yes for PE COFF targets
642
4b85d634
AM
6432004-10-19 Alan Modra <amodra@bigpond.net.au>
644
645 * elf64-ppc.c (opd_entry_value): Handle --just-symbols objects.
646 (ppc64_elf_edit_opd): Likewise.
647
6df4d94c
MM
6482004-10-18 Mark Mitchell <mark@codesourcery.com>
649
650 * elfarm-nabi.c (ELF_DYNAMIC_SEC_FLAGS): Add comment.
651 * elflink.c (_bfd_elf_create_dynamic_sections): For a loaded PLT,
652 set SEC_ALLOC and SEC_LOAD.
653
00d962d1
NC
6542004-10-18 Nick Clifton <nickc@redhat.com>
655
656 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Compute
657 'name' for relocs against both local and global symbols.
658
b58f81ae
DJ
6592004-10-16 Daniel Jacobowitz <dan@debian.org>
660
661 * bfd-in2.h: Regenerate.
662 * bfd.c (struct bfd): Add no_export.
663 * elflink.c (elf_link_add_object_symbols): Handle no_export.
664
7d3f158f
AM
6652004-10-15 Alan Modra <amodra@bigpond.net.au>
666
667 * config.bfd: Whitespace cleanup.
668 * Makefile.am: Run "make dep-am"
669 * Makefile.in: Regenerate.
670
6d2cd210
JJ
6712004-10-15 Jakub Jelinek <jakub@redhat.com>
672
673 * elflink.c (struct already_linked_section): Removed.
674 (try_match_symbols_in_sections, already_linked): Removed.
675 (_bfd_elf_section_already_linked): Skip ^\.gnu\.linkonce\.[^.]*\.
676 prefix of section names when finding already_linked_table
677 chain. Compare section names. Instead of calling already_linked,
678 do it inline and only for sections in the same already_linked_list.
679
92e4ec35
AM
6802004-10-15 Alan Modra <amodra@bigpond.net.au>
681
682 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Add "info"
683 parameter. If called after _bfd_elf_write_section_eh_frame,
684 don't allow a -2 return unless need_* bit is already set, and
685 handle offsets adjusted for output_offset.
686 * elf-bfd.h (_bfd_elf_eh_frame_section_offset): Update prototype.
687 * elf.c (_bfd_elf_section_offset): Update call.
688
7bf6dede
L
6892004-10-13 H.J. Lu <hongjiu.lu@intel.com>
690
691 PR 440
692 * coffcode.h (coff_compute_section_file_positions): Cast to
693 bfd_vma when computing page alignment.
694
c0042f5d
MM
6952004-10-13 Mark Mitchell <mark@codesourcery.com>
696
697 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
698 offsets, not VMAs, for DT_VERSYM, DT_VERDEF, DT_VERNEED.
699
2a1b9a48
MM
7002004-10-12 Mark Mitchell <mark@codesourcery.com>
701
702 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Make .rel.plt
703 relocations use a virtual address, not a section offset.
704
b08b5071
BW
7052004-10-12 Bob Wilson <bob.wilson@acm.org>
706
707 * elf32-xtensa.c (elf_xtensa_get_private_bfd_flags): Delete.
708 (narrow_instruction, widen_instruction): Remove unnecessary calls to
709 xtensa_format_encode.
710 (ebb_propose_action): Inline call to ebb_add_proposed_action.
711 (ebb_add_proposed_action): Delete.
712
7fa3d080
BW
7132004-10-12 Bob Wilson <bob.wilson@acm.org>
714
715 * elf32-xtensa.c: Use ISO C90 formatting.
716
3656d5e3
PB
7172004-10-12 Paul Brook <paul@codesourcery.com>
718
719 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Rephrase error
720 message.
721
8cb51566
PB
7222004-10-12 Paul Brook <paul@codesourcery.com>
723
724 * elf32-arm.h: Support EABI version 4 objects.
725
1abc8597
AM
7262004-10-12 Alan Modra <amodra@bigpond.net.au>
727
728 PR 325
729 * cpu-i386.c (bfd_x86_64_arch_intel_syntax): Place last in chain.
730 Don't mark as default.
731 (bfd_x86_64_arch): Don't mark as default.
732
9e66c942
AM
7332004-10-12 Alan Modra <amodra@bigpond.net.au>
734
735 * elflink.c (enum action_discarded): New.
736 (elf_section_complain_discarded): Delete.
737 (elf_action_discarded): New function subsuming the above and also
738 controlling reloc behaviour.
1abc8597 739 (elf_link_input_bfd): Use it.
9e66c942 740
7f1204bb
JJ
7412004-10-11 Jakub Jelinek <jakub@redhat.com>
742
743 * elf.c (bfd_section_from_shdr): Handle SHT_GNU_LIBLIST.
744 (special_sections): Add .gnu.liblist and .gnu.conflict.
745 (assign_section_numbers): Handle SHT_GNU_LIBLIST.
746
87e5235d
AM
7472004-10-11 Alan Modra <amodra@bigpond.net.au>
748
749 PR 233
750 * elflink.c (elf_link_input_bfd): Try harder to support
751 relocations against symbols in removed linkonce sections.
752
2ad770c3
AM
7532004-10-11 Alan Modra <amodra@bigpond.net.au>
754
029446c4
AM
755 * elflink.c (elf_link_input_bfd): Revert PR 354 change.
756
2ad770c3
AM
757 PR 354
758 * elflink.c (elf_link_input_bfd): Check that relocs in SEC_ALLOC
759 sections do not reference symbols in non-SEC_ALLOC sections.
760
1da212d6
AM
7612004-10-11 Alan Modra <amodra@bigpond.net.au>
762
763 PR 437
764 * elflink.c (elf_link_sort_relocs): Don't bomb on unusual sections.
765 (_bfd_elf_link_omit_section_dynsym): Formatting.
766
f12123c0
AM
7672004-10-10 Alan Modra <amodra@bigpond.net.au>
768
769 * libbfd-in.h (BFD_ASSERT, BFD_FAIL): Wrap macro body in do while.
770 * libbfd.h: Regnerate.
771 * elf32-cris.c: Add missing semicolon to BFD_ASSERTs.
772 * elf32-frv.c: Likewise.
773 * elf32-m32r.c: Likewise.
774 * elf32-ppc.c: Likewise.
775 * elf64-hppa.c: Likewise.
776 * elfxx-ia64.c: Likewise.
777 * opncls.c: Likewise.
778
fda3ecf2
AM
7792004-10-10 Alan Modra <amodra@bigpond.net.au>
780
3472e2e9
AM
781 * elf-bfd.h (struct eh_frame_hdr_info): Add offsets_adjusted.
782 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Adjust
783 offsets stored in struct eh_cie_fde entries before doing other
784 work.
785
fda3ecf2
AM
786 * elf-bfd.h (struct eh_cie_fde): Add cie_inf, remove sec.
787 (struct eh_frame_hdr_info): Add last_cie_inf, remove last_cie_offset.
788 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete code
789 setting offsets for removed CIEs. Don't set "sec", instead set
790 cie_inf for FDEs. Keep a pointer to last struct eh_cie_fde for a
791 CIE in hdr_info. Only set make_relative and make_lsda_relative
792 for CIEs. Use pointers rather than array indices.
793 (_bfd_elf_eh_frame_section_offset): Test/set make_relative,
794 make_lsda_relative, need_* on cie_inf for FDEs.
795 (_bfd_elf_write_section_eh_frame): Adjust offset and new_offset for
796 section output_offset. Delete cie_offset, instead use cie_inf
797 pointer to CIE entry. Use need_relative and need_lsda_relative on
798 CIE entry for FDEs. Use pointers rather than array indices.
799
7db6994f
AM
8002004-10-09 Alan Modra <amodra@bigpond.net.au>
801
802 * coff-rs6000.c (rs6000coff_vec): Add initializer for
803 bfd_is_target_special_symbol.
804 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
805 * som.c (som_bfd_is_target_special_symbol): Define.
806
3c9458e9
NC
8072004-10-08 Nick Clifton <nickc@redhat.com>
808
809 * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.93.
810 * configure: Regenerate.
811 * bfd-in2.h: Regenerate.
812 * syms.c (bfd_is_target_special_symbol): New interface function.
813 Returns true when a symbol should be considered to be special.
7db6994f 814 * targets.c (bfd_target): Include bfd_is_target_special_symbol in
3c9458e9
NC
815 the symbol jump table.
816 * elf32-arm.h (elf32_arm_is_target_special_symbol): New function.
817 Return true iff the symbol is a mapping symbol.
818 (bfd_elf32_bfd_is_target_special_symbol): Define.
819 * elfxx-target.h: Provide a default definition for
820 bfd_is_target_special_symbol.
821 * aout-target.h: Likewise.
822 * aout-tic30.c: Likewise.
873d03ee 823 * binary.c: Likewise.
3c9458e9
NC
824 * coffcode.h: Likewise.
825 * i386msdos.c: Likewise.
826 * ieee.c: Likewise.
873d03ee 827 * ihex.c: Likewise.
3c9458e9
NC
828 * libaout.h: Likewise.
829 * libbfd-in.h: Likewise
830 * libecoff.h: Likewise.
831 * mach-o.c: Likewise.
832 * mmo.c: Likewise.
833 * nlm-target.h: Likewise.
834 * oasys.c: Likewise.
835 * pef.c: Likewise.
836 * ppcboot.c: Likewise.
837 * srec.c: Likewise.
838 * tekhex.c: Likewise.
839 * versados.c: Likewise.
840 * vms.c: Likewise.
841 * xcoff-target.h: Likewise.
842 * xsym.c: Likewise.
843 * libbfd.h: Regenerate.
844
d2b2c203
DJ
8452004-10-08 Daniel Jacobowitz <dan@debian.org>
846
847 * config.bfd: Include 64-bit support for i[3-7]86-*-solaris2*.
848 * elf64-x86-64.c (elf64_x86_64_section_from_shdr): New function.
849 (elf_backend_section_from_shdr): Define.
850
864274b0
AM
8512004-10-08 Alan Modra <amodra@bigpond.net.au>
852
853 * syms.c (bfd_is_local_label): Return false for file symbols.
854
43cd72b9 8552004-10-07 Bob Wilson <bob.wilson@acm.org>
85a5ac80 856 David Heine <dlheine@tensilica.com>
43cd72b9
BW
857
858 * elf32-xtensa.c (elf32xtensa_size_opt): New global variable.
859 (xtensa_default_isa): Global variable moved here from xtensa-isa.c.
860 (elf32xtensa_no_literal_movement): New global variable.
861 (elf_howto_table): Add entries for new relocations.
862 (elf_xtensa_reloc_type_lookup): Handle new relocations.
863 (property_table_compare): When addresses are equal, compare sizes and
864 various property flags.
865 (property_table_matches): New.
866 (xtensa_read_table_entries): Extend to read new property tables. Add
867 output_addr parameter to indicate that output addresses should be used.
868 Use bfd_get_section_limit.
869 (elf_xtensa_find_property_entry): New.
870 (elf_xtensa_in_literal_pool): Use elf_xtensa_find_property_entry.
871 (elf_xtensa_check_relocs): Handle new relocations.
872 (elf_xtensa_do_reloc): Use bfd_get_section_limit. Handle new
873 relocations. Use new xtensa-isa.h functions.
874 (build_encoding_error_message): Remove encode_result parameter. Add
875 new target_address parameter used to detect alignment errors.
876 (elf_xtensa_relocate_section): Use bfd_get_section_limit. Clean up
877 error handling. Use new is_operand_relocation function.
878 (elf_xtensa_combine_prop_entries, elf_xtensa_merge_private_bfd_data):
879 Use underbar macro for error messages. Formatting.
880 (get_const16_opcode): New.
881 (get_l32r_opcode): Add a separate flag for initialization.
882 (get_relocation_opnd): Operand number is no longer explicit in the
883 relocation. Change to decode the opcode and analyze its operands.
884 (get_relocation_slot): New.
885 (get_relocation_opcode): Add bfd parameter. Use bfd_get_section_limit.
886 Use new xtensa-isa.h functions to handle multislot instructions.
887 (is_l32r_relocation): Add bfd parameter. Use is_operand_relocation.
888 (get_asm_simplify_size, is_alt_relocation, is_operand_relocation,
889 insn_decode_len, insn_decode_opcode, check_branch_target_aligned,
890 check_loop_aligned, check_branch_target_aligned_address, narrowable,
891 widenable, narrow_instruction, widen_instruction, op_single_fmt_table,
892 get_single_format, init_op_single_format_table): New.
893 (elf_xtensa_do_asm_simplify): Add error_message parameter and use it
894 instead of calling _bfd_error_handler. Use new xtensa-isa.h functions.
895 (contract_asm_expansion): Add error_message parameter and pass it to
896 elf_xtensa_do_asm_simplify. Replace use of R_XTENSA_OP0 relocation
897 with R_XTENSA_SLOT0_OP.
898 (get_expanded_call_opcode): Extend to handle either L32R or CONST16
899 instructions. Use new xtensa-isa.h functions.
900 (r_reloc struct): Add new virtual_offset field.
901 (r_reloc_init): Add contents and content_length parameters. Set
902 virtual_offset field to zero. Add contents to target_offset field for
903 partial_inplace relocations.
904 (r_reloc_is_defined): Check for null.
905 (print_r_reloc): New debug function.
906 (source_reloc struct): Replace xtensa_operand field with pair of the
907 opcode and the operand position. Add is_abs_literal field.
908 (init_source_reloc): Specify operand by opcode/position pair. Set
909 is_abs_literal field.
910 (source_reloc_compare): When target_offsets are equal, compare other
911 fields to make sorting predictable.
912 (literal_value struct): Add is_abs_literal field.
913 (value_map_hash_table struct): Add has_last_loc and last_loc fields.
914 (init_literal_value): New.
915 (is_same_value): Replace with ...
916 (literal_value_equal): ... this function. Add comparisons of
917 virtual_offset and is_abs_literal fields.
918 (value_map_hash_table_init): Use bfd_zmalloc. Check for allocation
919 failure. Initialize has_last_loc field.
920 (value_map_hash_table_delete): New.
921 (hash_literal_value): Rename to ...
922 (literal_value_hash): ... this. Include is_abs_literal flag and
923 virtual_offset field in the hash value.
924 (get_cached_value): Rename to ...
925 (value_map_get_cached_value): ... this. Update calls to
926 literal_value_hash and literal_value_equal.
927 (add_value_map): Check for allocation failure. Update calls to
928 value_map_get_cached_value and literal_value_hash.
929 (text_action, text_action_list, text_action_t): New types.
930 (find_fill_action, compute_removed_action_diff, adjust_fill_action,
931 text_action_add, text_action_add_literal, offset_with_removed_text,
932 offset_with_removed_text_before_fill, find_insn_action,
933 print_action_list, print_removed_literals): New.
934 (offset_with_removed_literals): Delete.
935 (xtensa_relax_info struct): Add is_relaxable_asm_section, action_list,
936 fix_array, fix_array_count, allocated_relocs, relocs_count, and
937 allocated_relocs_count fields.
938 (init_xtensa_relax_info): Initialize new fields.
939 (reloc_bfd_fix struct): Add new translated field.
940 (reloc_bfd_fix_init): Add translated parameter and use it to set the
941 translated field.
942 (fix_compare, cache_fix_array): New.
943 (get_bfd_fix): Remove fix_list parameter and get all relax_info for the
944 section via get_xtensa_relax_info. Use cache_fix_array to set up
945 sorted fix_array and use bsearch instead of linear search.
946 (section_cache_t): New struct.
947 (init_section_cache, section_cache_section, clear_section_cache): New.
948 (ebb_t, ebb_target_enum, proposed_action, ebb_constraint): New types.
949 (init_ebb_constraint, free_ebb_constraint, init_ebb, extend_ebb_bounds,
950 extend_ebb_bounds_forward, extend_ebb_bounds_backward,
951 insn_block_decodable_len, ebb_propose_action, ebb_add_proposed_action):
952 New.
953 (retrieve_contents): Use bfd_get_section_limit.
954 (elf_xtensa_relax_section): Add relocations_analyzed flag. Update call
955 to compute_removed_literals. Free value_map_hash_table when no longer
956 needed.
957 (analyze_relocations): Check is_relaxable_asm_section flag. Call
958 compute_text_actions for all sections.
959 (find_relaxable_sections): Mark sections as relaxable if they contain
960 ASM_EXPAND relocations that can be optimized. Adjust r_reloc_init
961 call. Increment relax_info src_count field only for appropriate
962 relocation types. Remove is_literal_section check.
963 (collect_source_relocs): Use bfd_get_section_limit. Adjust calls to
964 r_reloc_init and find_associated_l32r_irel. Check
965 is_relaxable_asm_section flag. Handle L32R instructions with absolute
966 literals. Pass is_abs_literal flag to init_source_reloc.
967 (is_resolvable_asm_expansion): Use bfd_get_section_limit. Check for
968 CONST16 instructions. Adjust calls to r_reloc_init and
fda3ecf2 969 pcrel_reloc_fits. Handle weak symbols conservatively.
43cd72b9
BW
970 (find_associated_l32r_irel): Add bfd parameter and pass it to
971 is_l32r_relocation.
972 (compute_text_actions, compute_ebb_proposed_actions,
973 compute_ebb_actions, check_section_ebb_pcrels_fit,
974 check_section_ebb_reduces, text_action_add_proposed,
975 compute_fill_extra_space): New.
976 (remove_literals): Replace with ...
977 (compute_removed_literals): ... this function. Call
978 init_section_cache. Use bfd_get_section_limit. Sort internal_relocs.
979 Call xtensa_read_table_entries to get the property table. Skip
980 relocations other than R_XTENSA_32 and R_XTENSA_PLT. Use new
981 is_removable_literal, remove_dead_literal, and
fda3ecf2 982 identify_literal_placement functions.
43cd72b9
BW
983 (get_irel_at_offset): Rewrite to use bsearch on sorted relocations
984 instead of linear search.
985 (is_removable_literal, remove_dead_literal,
986 identify_literal_placement): New.
987 (relocations_reach): Update check for literal not referenced by any
988 PC-relative relocations. Adjust call to pcrel_reloc_fits.
989 (coalesce_shared_literal, move_shared_literal): New.
990 (relax_section): Use bfd_get_section_limit. Call
991 translate_section_fixes. Update calls to r_reloc_init and
992 offset_with_removed_text. Check new is_relaxable_asm_section flag.
993 Add call to pin_internal_relocs. Add special handling for
994 R_XTENSA_ASM_SIMPLIFY and R_XTENSA_DIFF* relocs. Use virtual_offset
995 info to calculate new addend_displacement variable. Replace code for
996 deleting literals with more general code to perform the actions
997 determined by the action_list for the section.
998 (translate_section_fixes, translate_reloc_bfd_fix): New.
999 (translate_reloc): Check new is_relaxable_asm_section flag. Call
1000 find_removed_literal only if is_operand_relocation. Update call to
1001 offset_with_removed_text. Use new target_offset and removed_bytes
1002 variables.
1003 (move_literal): New.
1004 (relax_property_section): Use bfd_get_section_limit. Set new
1005 is_full_prop_section flag and handle new property tables. Update calls
1006 to r_reloc_init and offset_with_removed_text. Check
1007 is_relaxable_asm_section flag. Handle expansion of zero-sized
1008 unreachable entries, with use of offset_with_removed_text_before_fill.
1009 For relocatable links, combine entries only for literal tables.
1010 (relax_section_symbols): Check is_relaxable_asm_section flag. Update
1011 calls to offset_with_removed_text. Translate st_size field for
1012 function symbols.
1013 (do_fix_for_relocatable_link): Change to return bfd_boolean to indicate
1014 failure. Add contents parameter. Update call to get_bfd_fix. Update
1015 call to r_reloc_init. Call _bfd_error_handler and return FALSE for
1016 R_XTENSA_ASM_EXPAND relocs.
1017 (do_fix_for_final_link): Add input_bfd and contents parameters. Update
1018 call to get_bfd_fix. Include offset from contents for partial_inplace
1019 relocations.
1020 (is_reloc_sym_weak): New.
1021 (pcrel_reloc_fits): Use new xtensa-isa.h functions.
1022 (prop_sec_len): New.
1023 (xtensa_is_property_section): Handle new property sections.
1024 (is_literal_section): Delete.
1025 (internal_reloc_compare): When r_offset matches, compare r_info and
1026 r_addend to make sorting predictable.
1027 (internal_reloc_matches): New.
1028 (xtensa_get_property_section_name): Handle new property sections.
1029 (xtensa_get_property_predef_flags): New.
1030 (xtensa_callback_required_dependence): Use bfd_get_section_limit.
1031 Update calls to xtensa_isa_init, is_l32r_relocation, and r_reloc_init.
1032 * xtensa-isa.c (xtensa_default_isa): Moved to elf32-xtensa.c.
1033 (xtisa_errno, xtisa_error_msg): New variables.
1034 (xtensa_isa_errno, xtensa_isa_error_msg): New.
1035 (xtensa_insnbuf_alloc): Add error handling.
1036 (xtensa_insnbuf_to_chars): Add num_chars parameter. Update to
1037 use xtensa_format_decode. Add error handling.
1038 (xtensa_insnbuf_from_chars): Add num_chars parameter. Decode the
1039 instruction length to find the number of bytes to copy.
1040 (xtensa_isa_init): Add error handling. Replace calls to
1041 xtensa_load_isa and xtensa_extend_isa with code to initialize lookup
1042 tables in the xtensa_modules structure.
1043 (xtensa_check_isa_config, xtensa_add_isa, xtensa_load_isa,
1044 xtensa_extend_isa): Delete.
1045 (xtensa_isa_free): Change to only free lookup tables.
1046 (opname_lookup_compare): Replace with ...
1047 (xtensa_isa_name_compare): ... this function. Use strcasecmp.
1048 (xtensa_insn_maxlength): Rename to ...
1049 (xtensa_isa_maxlength): ... this.
1050 (xtensa_insn_length): Delete.
1051 (xtensa_insn_length_from_first_byte): Replace with ...
1052 (xtensa_isa_length_from_chars): ... this function.
1053 (xtensa_num_opcodes): Rename to ...
1054 (xtensa_isa_num_opcodes): ... this.
1055 (xtensa_isa_num_pipe_stages, xtensa_isa_num_formats,
1056 xtensa_isa_num_regfiles, xtensa_isa_num_stages,
1057 xtensa_isa_num_sysregs, xtensa_isa_num_interfaces,
1058 xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup,
1059 xtensa_format_decode, xtensa_format_encode, xtensa_format_length,
1060 xtensa_format_num_slots, xtensa_format_slot_nop_opcode,
1061 xtensa_format_get_slot, xtensa_format_set_slot): New functions.
1062 (xtensa_opcode_lookup): Add error handling.
1063 (xtensa_decode_insn): Replace with ...
1064 (xtensa_opcode_decode): ... this function, with new format and
1065 slot parameters. Add error handling.
1066 (xtensa_encode_insn): Replace with ...
1067 (xtensa_opcode_encode): ... this function, which does the encoding via
1068 one of the entries in the "encode_fns" array. Add error handling.
1069 (xtensa_opcode_name): Add error handling.
1070 (xtensa_opcode_is_branch, xtensa_opcode_is_jump, xtensa_opcode_is_loop,
1071 xtensa_opcode_is_call): New.
1072 (xtensa_num_operands): Replace with ...
1073 (xtensa_opcode_num_operands): ... this function. Add error handling.
1074 (xtensa_opcode_num_stateOperands,
1075 xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses,
1076 xtensa_opcode_funcUnit_use, xtensa_operand_name,
1077 xtensa_operand_is_visible): New.
1078 (xtensa_get_operand, xtensa_operand_kind): Delete.
1079 (xtensa_operand_inout): Add error handling and special-case for
1080 "sout" operands.
1081 (xtensa_operand_get_field, xtensa_operand_set_field): Rewritten to
1082 operate on one slot of an instruction. Added error handling.
1083 (xtensa_operand_encode): Handle default operands with no encoding
1084 functions. Check for success by comparing against decoded value.
1085 Add error handling.
1086 (xtensa_operand_decode): Handle default operands. Return decoded value
1087 through argument pointer. Add error handling.
1088 (xtensa_operand_is_register, xtensa_operand_regfile,
1089 xtensa_operand_num_regs, xtensa_operand_is_known_reg): New.
1090 (xtensa_operand_isPCRelative): Rename to ...
1091 (xtensa_operand_is_PCrelative): ... this. Add error handling.
1092 (xtensa_operand_do_reloc, xtensa_operand_undo_reloc): Return value
1093 through argument pointer. Add error handling.
1094 (xtensa_stateOperand_state, xtensa_stateOperand_inout,
1095 xtensa_interfaceOperand_interface, xtensa_regfile_lookup,
1096 xtensa_regfile_lookup_shortname, xtensa_regfile_name,
1097 xtensa_regfile_shortname, xtensa_regfile_view_parent,
1098 xtensa_regfile_num_bits, xtensa_regfile_num_entries,
1099 xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits,
1100 xtensa_state_is_exported, xtensa_sysreg_lookup,
1101 xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number,
1102 xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name,
1103 xtensa_interface_num_bits, xtensa_interface_inout,
1104 xtensa_interface_has_side_effect, xtensa_funcUnit_lookup,
1105 xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New.
1106 * xtensa-modules.c: Rewrite to use new data structures.
1107 * reloc.c (BFD_RELOC_XTENSA_DIFF8, BFD_RELOC_XTENSA_DIFF16,
1108 BFD_RELOC_XTENSA_DIFF32, BFD_RELOC_XTENSA_SLOT0_OP,
1109 BFD_RELOC_XTENSA_SLOT1_OP, BFD_RELOC_XTENSA_SLOT2_OP,
1110 BFD_RELOC_XTENSA_SLOT3_OP, BFD_RELOC_XTENSA_SLOT4_OP,
1111 BFD_RELOC_XTENSA_SLOT5_OP, BFD_RELOC_XTENSA_SLOT6_OP,
1112 BFD_RELOC_XTENSA_SLOT7_OP, BFD_RELOC_XTENSA_SLOT8_OP,
1113 BFD_RELOC_XTENSA_SLOT9_OP, BFD_RELOC_XTENSA_SLOT10_OP,
1114 BFD_RELOC_XTENSA_SLOT11_OP, BFD_RELOC_XTENSA_SLOT12_OP,
1115 BFD_RELOC_XTENSA_SLOT13_OP, BFD_RELOC_XTENSA_SLOT14_OP,
1116 BFD_RELOC_XTENSA_SLOT0_ALT, BFD_RELOC_XTENSA_SLOT1_ALT,
1117 BFD_RELOC_XTENSA_SLOT2_ALT, BFD_RELOC_XTENSA_SLOT3_ALT,
1118 BFD_RELOC_XTENSA_SLOT4_ALT, BFD_RELOC_XTENSA_SLOT5_ALT,
1119 BFD_RELOC_XTENSA_SLOT6_ALT, BFD_RELOC_XTENSA_SLOT7_ALT,
1120 BFD_RELOC_XTENSA_SLOT8_ALT, BFD_RELOC_XTENSA_SLOT9_ALT,
1121 BFD_RELOC_XTENSA_SLOT10_ALT, BFD_RELOC_XTENSA_SLOT11_ALT,
1122 BFD_RELOC_XTENSA_SLOT12_ALT, BFD_RELOC_XTENSA_SLOT13_ALT,
1123 BFD_RELOC_XTENSA_SLOT14_ALT): Add new relocations.
1124 * Makefile.am (xtensa-isa.lo, xtensa-modules.lo): Update dependencies.
1125 * Makefile.in: Regenerate.
1126 * bfd-in2.h: Likewise.
1127 * libbfd.h: Likewise.
1128
99022dfb
RS
11292004-10-07 Richard Sandiford <rsandifo@redhat.com>
1130
1131 * elf64-mips.c (mips_elf64_write_rel): Use STN_UNDEF for relocs
1132 against the absolute section.
1133 (mips_elf64_write_rela): Likewise.
1134
b67ae299
NC
11352004-10-07 Jan Beulich <jbeulich@novell.com>
1136
1137 * elf.c (elf_find_function): Don't generally check for matching
1138 section, just for non-file symbols. Remove redunant comparison
1139 for the latter.
1140 * elf32-arm.h (arm_elf_find_function): Likewise.
1141
8fdd7217
NC
11422004-10-07 Jeff Baker <jbaker@qnx.com>
1143
1144 * elflink.c (_bfd_elf_add_dynamic_entry): Add code to warn if
1145 adding a DT_TEXTREL to a shared object and --warn-shared-textrel
1146 was specified.
1147
073a2dc3
RM
11482004-10-04 Roland McGrath <roland@redhat.com>
1149
1150 * hash.c (bfd_hash_set_default_size): Use const for table.
1151 Use size_t instead of int for variable compared to sizeof results.
1152
7785be14
AM
11532004-10-05 Alan Modra <amodra@bigpond.net.au>
1154
1155 PR 425
1156 * syms.c (_bfd_stab_section_find_nearest_line): Ignore R_*_NONE relocs.
1157
40a18ebd
NC
11582004-10-01 Paul Brook <paul@codesourcery.com>
1159
1160 * elf32-arm.h (elf32_arm_fake_sections,
1161 is_arm_elf_unwind_section_name, elf32_arm_section_from_shdr): New
1162 functions.
1163 (elf_backend_fake_sections, elf_backend_section_from_shdr): Define.
1164
8935b81f
AM
11652004-10-01 Alan Modra <amodra@bigpond.net.au>
1166
1167 * elf-bfd.h (struct eh_cie_fde): Add need_relative and
1168 need_lsda_relative.
1169 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Set
1170 need_relative or need_lsda_relative if we are processing an
1171 offset for a reloc on a FDE initial loc or LSDA field
1172 respectively.
1173 (_bfd_elf_write_section_eh_frame): Test need_relative and
1174 need_lsda_relative in place of corresponding make_* field
1175 when deciding to use pc-relative encodings.
1176
eeac373a
PB
11772004-09-30 Paul Brook <paul@codesourcery.com>
1178
1179 * elf32-arm.h (bfd_elf32_arm_set_target_relocs): Handle "abs"
1180 target2 relocation type.
1181
7479dfd4
L
11822004-09-30 H.J. Lu <hongjiu.lu@intel.com>
1183
1184 PR 414
1185 * elflink.c (_bfd_elf_merge_symbol): Check TLS symbol.
1186
0dd132b6
NC
11872004-09-30 Paul Brook <paul@codesourcery.com>
1188
1189 * reloc.c: Add BFD_RELOC_ARM_SMI.
1190 * bfd-in2.h: Regenerate.
1191 * libbfd.h: Ditto.
1192
1ba54ee0
AM
11932004-09-24 Alan Modra <amodra@bigpond.net.au>
1194
1195 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add output section
1196 vma and output offset to address.
1197 * simple.c (simple_save_output_info): Only set output section
1198 and offset for debug sections, or those not already set up by
1199 the linker.
1200 (bfd_simple_get_relocated_section_contents): Update comment.
1201
5efb6261
AM
12022004-09-24 Alan Modra <amodra@bigpond.net.au>
1203
1204 * elf.c (IS_LOADED): Delete.
1205 (assign_file_positions_for_segments): Just test SEC_LOAD instead.
1206 Restore SEC_HAS_CONTENTS test to the one place it was used prior
1207 to 2004-09-22.
1208
fca870e4
AM
12092004-09-23 Alan Modra <amodra@bigpond.net.au>
1210
1211 PR gas/396
1212 * elf32-sparc.c (elf32_sparc_final_write_processing): Handle
1213 bfd_mach_sparc_sparclet and bfd_mach_sparc_sparclite. Remove
1214 redundant assignment of EM_SPARC.
1215
c86696a3
BF
12162004-09-22 Brian Ford <ford@vss.fsi.com>
1217
1218 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
1219 alignment for .rdata sections so sse[2] code works with gcc >= 3.3.3
1220 constants.
1221 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
1222
73adb214
AM
12232004-09-22 Alan Modra <amodra@bigpond.net.au>
1224
1225 * elf32-ppc.c (ppc_elf_modify_segment_map): Delete.
1226 (elf_backend_modify_segment_map): Don't define.
1227
b301b248
AM
12282004-09-22 Alan Modra <amodra@bigpond.net.au>
1229
1230 * elf.c (IS_LOADED): Define.
1231 (assign_file_positions_for_segments): Don't round up file offset of
1232 PT_LOAD segments containing no SEC_LOAD sections, instead round down.
1233 Delete code handling link script adjustment of lma. Do the adjust
1234 in later code handling similar ajustments. Remove dead code error
1235 check. Warn if section lma would require a negative offset
1236 adjustment. Tweak lma adjustment to use p_filesz rather than p_memsz.
1237 Use p_vaddr + p_memsz inside section loop in place of voff. Don't
1238 update voff in section loop. Change voff in segment loop to be an
1239 adjustment on top of "off". Set sec->filepos and update "off" later.
1240 Test for loadable sections consistently using IS_LOADED. Similarly,
073a2dc3 1241 test for alloc-only sections other than .tbss consistently.
b301b248
AM
1242 Don't bother checking SEC_ALLOC in PT_LOAD segments. Remove FIXME.
1243 Tidy PT_NOTE handling. Use %B and %A in error messages.
1244 (assign_file_positions_except_relocs): Use %B in error message.
1245
3f85e526
L
12462004-09-17 H.J. Lu <hongjiu.lu@intel.com>
1247
1248 * Makefile.am (AUTOMAKE_OPTIONS): Require 1.9.
1249 (CONFIG_STATUS_DEPENDENCIES): New.
1250 (Makefile): Removed.
1251 (config.status): Likewise.
1252 * Makefile.in: Regenerated.
1253
eb043451
PB
12542004-09-17 Paul Brook <paul@codesourcery.com>
1255
1256 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add prototype.
1257 (bfd_elf32_arm_process_before_allocation): Update prototype.
1258 * bfd-in2.h: Regenerate.
1259 * bfd/elf32-arm.h (elf32_arm_link_hash_table): Add target2_reloc.
1260 (elf32_arm_link_hash_table_create): Set it.
1261 (bfd_elf32_arm_process_before_allocation): Remove target1_is_rel.
1262 (bfd_elf32_arm_set_target_relocs): New function.
1263 (arm_real_reloc_type): New function.
1264 (elf32_arm_final_link_relocate): Use it. Handle R_ARM_PREL31 and
1265 R_ARM_GOT_PREL. Remove R_ARM_TARGET1.
1266 (elf32_arm_gc_sweep_hook): Ditto.
1267 (elf32_arm_check_relocs): Ditto.
1268 (elf32_arm_relocate_section): Handle R_ARM_GOT_PREL.
1269 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_PREL31 and
1270 R_ARM_GOT_TARGET2.
1271 (elf32_arm_got_prel): New variable.
1272 (elf32_arm_howto_from_type): New function.
1273 (elf32_arm_info_to_howto): Use it.
1274 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PREL31 and
1275 BFD_RELOC_ARM_TARGET2.
1276 * libbfd.h: Regenerate.
1277 * reloc.c: Add BFD_RELOC_ARM_TARGET2 and BFD_RELOC_ARM_PREL31.
1278
f6e332e6
AM
12792004-09-17 Alan Modra <amodra@bigpond.net.au>
1280
1281 * ecoff.c: Update u.undef.next refs.
1282 * elf64-ppc.c: Likewise.
1283 * elflink.c: Likewise.
1284 * linker.c: Likewise.
1285 * xcofflink.c: Likewise.
1286
1287 * elf-bfd.h (struct elf_link_hash_entry): Rearrange. Add FIXME to
1288 dynamic_def. Combine weakdef and elf_hash_value. Move vtable
1289 fields to indirect struct.
1290 * elf-m10300.c: Update u.weakdef refs.
1291 * elf32-arm.h: Likewise.
1292 * elf32-cris.c: Likewise.
1293 * elf32-frv.c: Likewise.
1294 * elf32-hppa.c: Likewise.
1295 * elf32-i370.c: Likewise.
1296 * elf32-i386.c: Likewise.
1297 * elf32-m32r.c: Likewise.
1298 * elf32-m68k.c: Likewise.
1299 * elf32-ppc.c: Likewise.
1300 * elf32-s390.c: Likewise.
1301 * elf32-sh.c: Likewise.
1302 * elf32-sparc.c: Likewise.
1303 * elf32-vax.c: Likewise.
1304 * elf32-xtensa.c: Likewise.
1305 * elf64-alpha.c: Likewise.
1306 * elf64-hppa.c: Likewise.
1307 * elf64-ppc.c: Likewise.
1308 * elf64-s390.c: Likewise.
1309 * elf64-sh64.c: Likewise.
1310 * elf64-sparc.c: Likewise.
1311 * elf64-x86-64.c: Likewise.
1312 * elfxx-ia64.c: Likewise.
1313 * elfxx-mips.c: Likewise.
1314 * elflink.c: Likewise. Also u.elf_hash_value.
1315 (elf_gc_propagate_vtable_entries_used): Update for h->vtable
1316 indirection.
1317 (elf_gc_smash_unused_vtentry_relocs): Likewise.
1318 (bfd_elf_gc_record_vtinherit): Alloc vtable.
1319 (bfd_elf_gc_record_vtentry): Likewise.
1320 * elf.c (_bfd_elf_link_hash_newfunc): Use memset.
1321
90c0a373
AM
13222004-09-17 Alan Modra <amodra@bigpond.net.au>
1323
1324 * Makefile.am: Run "make dep-am".
1325 * Makefile.in: Regenerate.
1326 * bfd-in2.h: Regenerate.
1327 * po/SRC-POTFILES.in: Regenerate.
1328 * po/bfd.pot: Regenerate.
1329
f5385ebf
AM
13302004-09-16 Alan Modra <amodra@bigpond.net.au>
1331
1332 * elf-bfd.h (struct elf_link_hash_entry): Replace elf_link_hash_flags
1333 with bitfields. Make "type" and "other" bitfields too.
1334 (ELF_LINK_HASH_REF_REGULAR, ELF_LINK_HASH_DEF_REGULAR,
1335 ELF_LINK_HASH_REF_DYNAMIC, ELF_LINK_HASH_DEF_DYNAMIC,
1336 ELF_LINK_HASH_REF_REGULAR_NONWEAK, ELF_LINK_HASH_DYNAMIC_ADJUSTED,
1337 ELF_LINK_HASH_NEEDS_COPY, ELF_LINK_HASH_NEEDS_PLT, ELF_LINK_NON_ELF,
1338 ELF_LINK_HIDDEN, ELF_LINK_FORCED_LOCAL, ELF_LINK_HASH_MARK,
1339 ELF_LINK_NON_GOT_REF, ELF_LINK_DYNAMIC_DEF, ELF_LINK_DYNAMIC_WEAK,
1340 ELF_LINK_POINTER_EQUALITY_NEEDED): Delete.
1341 (ELF_COMMON_DEF_P, WILL_CALL_FINISH_DYNAMIC_SYMBOL): Update.
1342 * elf-hppa.h: Update all uses of elf_link_hash_flags.
1343 * elf-m10300.c: Likewise.
1344 * elf.c: Likewise.
1345 * elf32-arm.h: Likewise.
1346 * elf32-cris.c: Likewise.
1347 * elf32-frv.c: Likewise.
1348 * elf32-hppa.c: Likewise.
1349 * elf32-i370.c: Likewise.
1350 * elf32-i386.c: Likewise.
1351 * elf32-m32r.c: Likewise.
1352 * elf32-m68k.c: Likewise.
1353 * elf32-ppc.c: Likewise.
1354 * elf32-s390.c: Likewise.
1355 * elf32-sh-symbian.c: Likewise.
1356 * elf32-sh.c: Likewise.
1357 * elf32-sh64.c: Likewise.
1358 * elf32-sparc.c: Likewise.
1359 * elf32-vax.c: Likewise.
1360 * elf32-xtensa.c: Likewise.
1361 * elf64-alpha.c: Likewise.
1362 * elf64-hppa.c: Likewise.
1363 * elf64-ppc.c: Likewise.
1364 * elf64-s390.c: Likewise.
1365 * elf64-sh64.c: Likewise.
1366 * elf64-sparc.c: Likewise.
1367 * elf64-x86-64.c: Likewise.
1368 * elflink.c: Likewise.
1369 * elfxx-ia64.c: Likewise.
1370 * elfxx-mips.c: Likewise.
1371 * configure.in (AM_INIT_AUTOMAKE): Set version to 2.15.92.
1372 * configure: Regenerate.
1373 * aclocal.m4: Regenerate.
1374
b6ee372a
AM
13752004-09-16 Alan Modra <amodra@bigpond.net.au>
1376
1377 * elf32-arm.h (elf32_arm_gc_sweep_hook): Add #ifndef OLD_ARM_ABI
1378 around uses of R_ARM_TARGET1.
1379 (elf32_arm_check_relocs): Likewise.
1380
9c504268
PB
13812004-09-13 Paul Brook <paul@codesourcery.com>
1382
1383 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
1384 prototype.
1385 * bfd-in2.h: Regenerate.
1386 * libbfd.h: Regenerate.
1387 * elf32-arm.h (elf32_arm_link_hash_table): Add target1_is_rel.
1388 (elf32_arm_link_hash_table_create): Set target1_is_rel.
1389 (bfd_elf32_arm_process_before_allocation): Ditto.
1390 (elf32_arm_final_link_relocate): Handle R_ARM_TARGET1.
1391 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto.
1392 * elfarm-nabi.c (elf32_arm_howto_table): Rename RELABS to TARGET1.
1393 * reloc.c: Ditto.
1394
94ea025a
JB
13952004-09-10 Joel Brobecker <brobecker@gnat.com>
1396
1397 * hpux-core.c (thread_section_p): New function.
1398 (hpux_core_core_file_p): Fix computation of offset in call
1399 to bfd_seek. Create a ".reg" section from an arbitrary
1400 ".reg/<id>" section if none was created after having read
1401 all sections.
1402
24443139
AS
14032004-09-11 Andreas Schwab <schwab@suse.de>
1404
1405 * acinclude.m4: Fix spelling of ACX_NONCANONICAL_*.
1406 * aclocal.m4: Rebuild.
1407 * configure: Rebuild.
1408
f4eae89c
JB
14092004-09-10 Joel Brobecker <brobecker@gnat.com>
1410
1411 * section.c (bfd_sections_find_if): Fix parameter name in
1412 comment to match code.
1413
e0638f70
AM
14142004-09-10 Alan Modra <amodra@bigpond.net.au>
1415
1416 * elf.c (assign_file_positions_except_relocs): Assign relocs
1417 stored in a bfd section.
1418
5e0f5ae3
HPN
14192004-09-08 Hans-Peter Nilsson <hp@axis.com>
1420
1421 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Reset
1422 h->gotplt_refcount to 0, not -1.
1423
ada1953e
HPN
14242004-09-07 Hans-Peter Nilsson <hp@axis.com>
1425
1426 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT,
1427 case R_CRIS_32_GOTPLT>: For internal error message, handle NULL
1428 symname.
1429 (cris_elf_check_relocs) <case R_CRIS_32_PLT_PCREL>: Don't try to
1430 handle symbol visibility here.
1431
ee75fd95
AM
14322004-09-07 Alan Modra <amodra@bigpond.net.au>
1433
1434 * elf64-ppc.c (struct ppc_link_hash_table): Add stub_globals.
1435 (is_ppc64_elf_target): Rename from is_ppc64_target. Update all
1436 callers.
1437 (ppc_stub_name): Remove trailing "+0" on stub name.
1438 (create_linkage_sections): Create relocations for
1439 branch lookup table when --emit-relocs as well as when --shared.
1440 (ppc_build_one_stub): Emit relocs for long branch stubs. Adjust
1441 relbrlt test. For --emit-stub-syms, always output a sym even when
1442 one already exists on a plt call stub. Put stub type in the stub
1443 symbol name.
1444 (ppc_size_one_stub): Size long branch stub relocs. Adjust relbrlt
1445 test.
1446 (ppc64_elf_size_stubs): Count global sym stubs added. Zero
1447 reloc_count in stub sections. Adjust relbrlt test.
1448 (ppc64_elf_build_stubs): Adjust relbrlt test. Tweak stats output.
1449 * elflink.c (bfd_elf_size_dynamic_sections): Fix comment typo.
1450 (elf_link_input_bfd): Ignore symbol index zero relocs when checking
1451 for relocs against discarded symbols. Fix comments.
1452
229fcec5
MM
14532004-09-06 Mark Mitchell <mark@codesourcery.com>
1454
1455 * elf-bfd.h (_bfd_elf_make_dynamic_segment): Declare it.
1456 * elf.c (_bfd_elf_make_dynamic_segment): New function, split out
1457 from ...
1458 (map_sections_to_segments): ... here. Use it. Assign a file
1459 position to the .dynamic section if it is not loadable, but part
1460 of the PT_DYNAMIC segment.
1461 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
1462 offsets, not VMAs, for the BPABI. Do not fill in the header in
1463 the .got.plt section for the BPABI.
1464 * elfarm-nabi.c (elf32_arm_symbian_modify_segment_map): Add a
1465 PT_DYNAMIC segment.
1466 (elf_backend_want_got_plt): Define to zero for Symbian OS.
073a2dc3 1467
9a0789ec
NC
14682004-09-06 Nick Clifton <nickc@redhat.com>
1469
1470 * elflink.c (elf_link_add_object_symbols): Set the error code to
1471 bfd_error_wrong_format when the input format does not match the
1472 output format.
1473
7b53ace3
AM
14742004-09-06 Alan Modra <amodra@bigpond.net.au>
1475
1476 * elf64-ppc.c (is_ppc64_target): New function, extracted from..
1477 (ppc64_elf_check_directives): ..here.
1478 (ppc64_elf_size_dynamic_sections): Use it here to check bfd type
1479 before accessing ppc64_elf_tdata.
1480 (ppc64_elf_finish_dynamic_sections): And here too.
1481
3e540f25
AM
14822004-09-04 Alan Modra <amodra@bigpond.net.au>
1483
1484 * bfd.c (_bfd_default_error_handler): Correct loop exit.
1485
e5a52504
MM
14862004-09-03 Mark Mitchell <mark@codesourcery.com>
1487
1488 * config.bfd (arm*-*-symbianelf*): Use OS-specific target vectors.
1489 * configure.in (bfd_elf32_bigarm_symbian_vec): Add it.
1490 (bfd_elf32_littlearm_symbian_vec): Likewise.
1491 * configure: Regenerated.
1492 * elf-bfd.h (elf_backend_data): Add dynamic_sec_flags.
1493 * elf32-arm.h (PLT_HEADER_SIZE): Do not define.
1494 (PLT_ENTRY_SIZE): Likewise.
1495 (bfd_vma_elf32_arm_symbian_plt_entry): New
1496 variable.
1497 (elf32_arm_link_hash_table): Add plt_header_size, plt_entry_size,
1498 and symbian_p.
1499 (create_got_section): Don't create sections when generating BPABI
1500 objects.
1501 (elf32_arm_create_dynamic_sections): Tidy.
1502 (elf32_arm_link_hash_table_create): Set plt_header_size,
1503 plt_entry_size, and symbian_p.
1504 (elf32_arm_check_relocs): Do not mark .rel.dyn as loadable when
1505 generating BPABI objects.
1506 (allocate_dynrelocs): Use htab->plt_header_size, not
1507 PLT_HEADER_SIZE. Do not add to .got.plt when
1508 generating BPABI objects.
1509 (elf32_arm_finish_dynamic_symbol): Generate Symbian OS PLTs.
1510 * elfarm-nabi.c: Add SymbianOS target vectors.
1511 * elflink.c (_bfd_elf_create_got_section): Use dynamic_sec_flags.
1512 (_bfd_elf_link_create_dynamic_sections): Likewise.
1513 * elfxx-target.h (ELF_DYNAMIC_SEC_FLAGS): New macro.
1514 (elfNN_bed): Use it.
1515 * targets.c (bfd_elf32_bigarm_symbian_vec): New variable.
1516 (bfd_elf32_littlearm_symbian_vec): Likewise.
1517 (_bfd_target_vector): Add them.
1518
6e3b6835
NC
15192004-09-03 Nick Clifton <nickc@redhat.com>
1520
1521 PR 360
1522 * coffcode.h (handle_COMDAT): Replace abort with an warning
1523 message and allow the scan to continue.
1524
595da8c5
AM
15252004-09-02 Alan Modra <amodra@bigpond.net.au>
1526
1527 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Use static_syms passed
1528 in when reading relocs, not our sorted syms. Remove unnecessary
1529 var.
1530
6723a9f4
EB
15312004-08-31 Eric Botcazou <ebotcazou@libertysurf.fr>
1532
1533 * elf.c (special_sections): Add .gnu.linkonce.b modelled on .bss.
1534
5464f5a1
NN
15352004-08-30 Nathanael Nerode <neroden@gcc.gnu.org>
1536
1537 * acinclude.m4: Require AC_CANONICAL_TARGET, not AC_CANONICAL_SYSTEM.
1538 Include ../config/acx.m4 and use ACX_NONCANONICAL_* where appropriate;
1539 replace uses of *_alias with *_noncanonical.
1540 * aclocal.m4: Rebuild with aclocal 1.4p6.
1541 * Makefile.in: Rebuild with automake 1.4p6.
1542 * doc/Makefile.in: Rebuild with automake 1.4p6.
1543 * configure.in: Autoupdate with autoupdate 2.59.
1544 * config.in: Regenerate with autoheader 2.59.
1545 * configure: Regnerate with autoconf 2.59.
1546
a7535cf3
AM
15472004-08-28 Alan Modra <amodra@bigpond.net.au>
1548
1549 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Copy input
1550 symbol pointer arrays before modifying.
1551
c9727e01
AM
15522004-08-28 Alan Modra <amodra@bigpond.net.au>
1553
b91e2ae2 1554 * bfd.c (bfd_get_synthetic_symtab): Pass counts and both symbol tables.
c9727e01
AM
1555 * elf-bfd.h (_bfd_elf_get_synthetic_symtab): Adjust.
1556 * elf.c (_bfd_elf_get_synthetic_symtab): Adjust.
1557 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Adjust.
b91e2ae2
AM
1558 * targets.c (struct bfd_target <_bfd_get_synthetic_symtab>): Adjust.
1559 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't read symbols.
1560 Use both symbol tables on non-relocatable objects. Use a common
1561 error exit. Fix "mid" warning.
c9727e01
AM
1562 * libbfd.h: Regenerate.
1563 * bfd-in2.h: Regenerate.
1564
699733f6
AM
15652004-08-28 Alan Modra <amodra@bigpond.net.au>
1566
1567 * elf64-ppc.c (ppc64_elf_branch_reloc): Check .opd is in a regular
1568 object file.
1569 (struct sfpr_def_parms): Save some space.
1570 (sfpr_define): Here too.
1571
1572 * elf64-ppc.c (compare_symbols): Put section syms first.
1573 (sym_exists_at): New function.
1574 (ppc64_elf_get_synthetic_symtab): Use relocs to find code entry
1575 points only for relocatable files. Use .opd section contents
1576 otherwise. Generally clean up the code.
1577
deb0e272
AM
15782004-08-27 Alan Modra <amodra@bigpond.net.au>
1579
1580 * elf64-ppc.c (STD_R0_0R1, STD_R0_0R12, LD_R0_0R1, LD_R0_0R12,
1581 LI_R12_0, STVX_VR0_R12_R0, LVX_VR0_R12_R0, MTLR_R0, SFPR_MAX): Define.
1582 (struct sfpr_def_parms): New.
1583 (sfpr_define): New function.
1584 (savegpr0, savegpr0_tail, restgpr0, restgpr0_tail): New functions.
1585 (savegpr1, savegpr1_tail, restgpr1, restgpr1_tail): New functions.
1586 (savefpr, savefpr0_tail, restfpr, restfpr0_tail): New functions.
1587 (savefpr1_tail, restfpr1_tail): New functions.
1588 (savevr, savevr_tail, restvr, restvr_tail): New functions.
1589 (MIN_SAVE_FPR, MAX_SAVE_FPR): Don't define.
1590 (ppc64_elf_func_desc_adjust): Use sfpr_define in place of existing
1591 code. Define all ABI mandated _save and _rest functions.
1592
85a84e7a
PB
15932004-08-26 Paul Brook <paul@codesourcery.com>
1594
deb0e272 1595 * elf32-arm.h (INTERWORK_FLAG): Return true for EABIv3 objects.
85a84e7a 1596
688c58f3
AM
15972004-08-26 Alan Modra <amodra@bigpond.net.au>
1598
1599 * elf32-m32r.c (m32r_elf_relocate_section): Don't compare with
1600 TRUE or FALSE.
1601
3e95eabc
AM
16022004-08-26 Alan Modra <amodra@bigpond.net.au>
1603
1604 * elf32-i386.c (elf_i386_relocate_section): Tweak last change so
1605 that pcrel correction is applied for R_386_PC32.
1606
f855931b
AM
16072004-08-25 Alan Modra <amodra@bigpond.net.au>
1608
1609 * elf32-i386.c (elf_i386_relocate_section): Zero section contents
1610 for R_386_32 and R_386_PC32 relocs against symbols defined in
1611 discarded sections.
1612
b18c562e
NC
16132004-08-25 Dmitry Diky <diwil@spec.ru>
1614
1615 * reloc.c (BFD_RELOC_MSP430_2X_PCREL,BFD_RELOC_MSP430_RL_PCREL):
1616 Add new relocations.
1617 * bfd-in2.h: Regenerate.
f855931b 1618 * libbfd.h: Regenerate.
b18c562e
NC
1619 * elf32-msp430.c: Clean-up code.
1620 (elf_msp430_howto_table): Add new relocation entries.
1621 (bfd_elf32_bfd_reloc_type_lookup): New relocation handlers.
1622 (msp430_elf_relax_section): New function.
1623 (msp430_elf_relax_delete_bytes): New function.
1624 (msp430_elf_symbol_address_p): New function.
1625
af705ba8
NC
16262004-08-24 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1627
1628 * elf32-m32r.c (m32r_elf_relocate_section): Handle
1629 R_M32R_SDA16_RELA in the same way as R_M32R_SDA16.
1630
ea5158d8
DJ
16312004-08-20 Daniel Jacobowitz <dan@debian.org>
1632
1633 * elflink.c (_bfd_elf_section_already_linked): Handle
1634 SEC_LINK_DUPLICATES_SAME_CONTENTS.
1635
49d934f1
MM
16362004-08-19 Mark Mitchell <mark@codesourcery.com>
1637
1638 * config.bfd (arm*-*-symbianelf*): New target.
1639 (arm*-*-eabi*): Likewise.
1640
039b3fef
AM
16412004-08-19 Alan Modra <amodra@bigpond.net.au>
1642
1643 * elf64-ppc.c (ppc_get_stub_entry): Change third param to a
1644 "struct ppc_link_hash_entry *".
1645 (ppc64_elf_relocate_section): Ditto for type of h. Introduce h_elf
1646 to satisfy RELOC_FOR_GLOBAL_SYMBOL.
1647
3f764659
JJ
16482004-08-19 Jakub Jelinek <jakub@redhat.com>
1649
1650 * elf64-ppc.c (ppc64_elf_edit_opd): Support 16 byte long .opd
1651 entries (where fd_aux overlaps next entry's fd_func).
1652 Add non_overlapping argument, use it.
1653 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, adjust_opd_syms,
1654 ppc64_elf_size_stubs, ppc64_elf_relocate_section,
1655 ppc64_elf_output_symbol_hook): Use address / 8 instead of address / 24
1656 as indexes into opd_sym_map/opd_adjust array.
1657 * elf64-ppc.h (ppc64_elf_edit_opd): Adjust prototype.
1658
c09bdfe5
AM
16592004-08-18 Alan Modra <amodra@bigpond.net.au>
1660
1661 * elf64-ppc.c (func_desc_adjust): Give undefined dot-symbols a value
1662 if we can look up their function descriptor in a regular file.
1663
271d0fc3
NC
16642004-08-18 Nick Clifton <nickc@redhat.com>
1665
1666 PR 324
1667 * cofflink.c (coff_link_add_symbols): Check that the comdat
1668 pointer in the coff_section_data structure has been initialised
1669 before using it.
1670
a010d60f
AM
16712004-08-18 Alan Modra <amodra@bigpond.net.au>
1672
1673 PR 338
1674 * elflink.c (bfd_elf_record_link_assignment): Add comment about
1675 changing bfd_link_hash_undefined to bfd_link_hash_new.
1676
90e3cdf2
JJ
16772004-08-17 Jakub Jelinek <jakub@redhat.com>
1678
1679 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Only define
1680 if not yet defined.
1681 * elf64-ppc.c (bfd_elf64_get_synthetic_symtab): Define.
1682 (synthetic_opd, synthetic_relocatable): New variables.
1683 (compare_symbols, compare_relocs): New helper routines.
1684 (ppc64_elf_get_synthetic_symtab): New function.
1685 * bfd.c (bfd_get_synthetic_symtab): Rename dynsyms argument
1686 to relsyms.
1687 * bfd-in2.h: Regenerated.
1688 * elf.c (_bfd_elf_get_synthetic_symtab): Rename dynsyms argument
1689 to relsyms. Return 0 if abfd is relocatable.
1690
7c2c8505
AM
16912004-08-17 Alan Modra <amodra@bigpond.net.au>
1692
1693 * elflink.h (elf_gc_sweep): Keep non-alloc, non-load sections.
1694
0367ecfb
NC
16952004-08-17 Nick Clifton <nickc@redhat.com>
1696
1697 * (is_arm_mapping_symbol_name): New function - return true
1698 when a symbol name matches the requirements for an ARM mapping
1699 symbol name.
1700 (arm_elf_find_function): New function based on
1701 elf_find_function in elf.c but skipping ARM mapping symbols
1702 and including thumb function symbols.
1703 (elf32_arm_find_nearest_line): Use arm_elf_find_function.
1704 (elf32_arm_output_symbol_hook): Use is_arm_mapping_symbol_name.
1705
2441e016
AM
17062004-08-17 Alan Modra <amodra@bigpond.net.au>
1707
1708 * elf64-ppc.c (ppc64_elf_branch_reloc): New function.
1709 (ppc64_elf_howto_raw): Use ppc64_elf_branch_reloc.
1710 (ppc64_elf_brtaken_reloc): Here too.
1711
35b0ce59
AM
17122004-08-17 Alan Modra <amodra@bigpond.net.au>
1713
1714 * elf64-ppc.c (add_symbol_adjust): Correct mismatched function
1715 symbol visibility.
1716 (ppc64_elf_check_directives): Check that we have the right hash
1717 table before proceeding.
1718
81688140
AM
17192004-08-17 Alan Modra <amodra@bigpond.net.au>
1720
1721 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add "deleted_section".
1722 (adjust_opd_syms): Attach opd syms for deleted entries to one of
1723 the sections that will be discarded.
1724
327c1315
AM
17252004-08-16 Alan Modra <amodra@bigpond.net.au>
1726
1727 * elflink.c (elf_section_complain_discarded): Ignore .fixup.
1728
45fc9e4a
AM
17292004-08-16 Alan Modra <amodra@bigpond.net.au>
1730
1731 * bfd.c (_bfd_default_error_handler): Account for doubled '%' in
1732 free space available.
1733
9dadfa79
AM
17342004-08-16 Alan Modra <amodra@bigpond.net.au>
1735
1736 * pdp11.c (struct pdp11_aout_reloc_external): Delete. Replace
f89c4dec 1737 occurrences with bfd_byte * thoughout file.
9dadfa79
AM
1738
1739 * coff-rs6000.c (do_shared_object_padding): Warning fix.
1740 (xcoff_write_armap_big): Likewise.
1741 (xcoff_write_archive_contents_old): Likewise.
1742 (xcoff_write_archive_contents_big): Likewise.
1743
1744 * elf64-mmix.c (mmix_elf_get_section_contents): Delete declaration.
1745
57e8b36a
NC
17462004-08-13 Nick Clifton <nickc@redhat.com>
1747
1748 * elf32-arm.h: Convert to ISO C90.
1749
a005f94e
AM
17502004-08-13 Alan Modra <amodra@bigpond.net.au>
1751
1752 PR 293
1753 * elf32-hppa.c (elf32_hppa_hide_symbol): Use init_refcount to
1754 zero the plt field.
1755
d003868e
AM
17562004-08-13 Alan Modra <amodra@bigpond.net.au>
1757
1758 * bfd.c (_bfd_default_error_handler): Handle %A and %B.
1759 (bfd_archive_filename, bfd_get_section_ident): Delete.
1760 * ecofflink.c (bfd_ecoff_debug_accumulate_other): Don't call
1761 bfd_archive_filename.
1762 * elflink.c (elf_link_input_bfd): Don't use callbacks->error_handler
1763 to warn about symbols in discarded sections. Use _bfd_error_handler.
1764 * aout-adobe.c (aout_adobe_callback): See below.
1765 * aout-cris.c (swap_ext_reloc_in): ..
1766 * coff-arm.c (find_thumb_glue, find_arm_glue,
1767 coff_arm_relocate_section, bfd_arm_process_before_allocation,
1768 coff_arm_merge_private_bfd_data, _bfd_coff_arm_set_private_flags,
1769 coff_arm_copy_private_bfd_data): ..
1770 * coff-i860.c (i860_reloc_processing): ..
1771 * coff-mcore.c (mcore_coff_unsupported_reloc,
1772 coff_mcore_relocate_section): ..
1773 * coff-ppc.c (coff_ppc_relocate_section): ..
1774 * coff-rs6000.c (xcoff_create_csect_from_smclas
1775 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
1776 sh_swap_insns, sh_relocate_section): ..
1777 * coff-tic54x.c (tic54x_reloc_processing): ..
1778 * coff-tic80.c (coff_tic80_relocate_section): ..
1779 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): ..
1780 * coffcode.h (styp_to_sec_flags, coff_slurp_line_table,
1781 coff_slurp_symbol_table, coff_classify_symbol,
1782 coff_slurp_reloc_table): ..
1783 * coffgen.c (_bfd_coff_read_string_table): ..
1784 * cofflink.c (coff_link_add_symbols, _bfd_coff_link_input_bfd,
1785 _bfd_coff_generic_relocate_section): ..
1786 * cpu-arm.c (bfd_arm_merge_machines): ..
1787 * cpu-sh.c (sh_merge_bfd_arch): ..
1788 * elf-hppa.h (elf_hppa_relocate_section): ..
1789 * elf.c (bfd_elf_string_from_elf_section, setup_group,
1790 _bfd_elf_setup_group_pointers, bfd_section_from_shdr,
1791 assign_section_numbers, _bfd_elf_symbol_from_bfd_symbol,
1792 copy_private_bfd_data, _bfd_elf_validate_reloc): ..
1793 * elf32-arm.h (find_thumb_glue, find_arm_glue,
1794 bfd_elf32_arm_process_before_allocation, elf32_thumb_to_arm_stub,
1795 elf32_arm_to_thumb_stub, elf32_arm_final_link_relocate,
1796 elf32_arm_relocate_section, elf32_arm_set_private_flags,
1797 elf32_arm_copy_private_bfd_data, elf32_arm_merge_private_bfd_data): ..
1798 * elf32-cris.c (cris_elf_relocate_section, cris_elf_check_relocs,
1799 cris_elf_merge_private_bfd_data
1800 * elf32-frv.c (elf32_frv_relocate_section, elf32_frv_check_relocs): ..
1801 * elf32-gen.c (elf32_generic_link_add_symbols): ..
1802 * elf32-hppa.c (hppa_add_stub, hppa_build_one_stub,
1803 elf32_hppa_check_relocs, get_local_syms, final_link_relocate,
1804 elf32_hppa_relocate_section): ..
1805 * elf32-i370.c (i370_elf_merge_private_bfd_data,
1806 i370_elf_check_relocs, i370_elf_relocate_section): ..
1807 * elf32-i386.c (elf_i386_info_to_howto_rel, elf_i386_check_relocs,
1808 elf_i386_relocate_section): ..
1809 * elf32-m32r.c (m32r_elf_relocate_section,
1810 m32r_elf_merge_private_bfd_data): ..
1811 * elf32-m68hc1x.c (m68hc12_add_stub,
1812 _bfd_m68hc11_elf_merge_private_bfd_data): ..
1813 * elf32-m68k.c (elf_m68k_relocate_section): ..
1814 * elf32-mcore.c (mcore_elf_unsupported_reloc,
1815 mcore_elf_relocate_section): ..
1816 * elf32-ppc.c (ppc_elf_merge_private_bfd_data, bad_shared_reloc,
1817 ppc_elf_check_relocs, ppc_elf_relocate_section,
1818 ppc_elf_begin_write_processing): ..
1819 * elf32-s390.c (elf_s390_check_relocs, invalid_tls_insn,
1820 elf_s390_relocate_section): ..
1821 * elf32-sh-symbian.c (sh_symbian_import_as,
1822 sh_symbian_process_embedded_commands,
1823 sh_symbian_relocate_section): ..
1824 * elf32-sh.c (sh_elf_relax_section, sh_elf_relax_delete_bytes,
1825 sh_elf_swap_insns, sh_elf_relocate_section, sh_elf_check_relocs,
1826 sh_elf_merge_private_data): ..
1827 * elf32-sparc.c (elf32_sparc_check_relocs,
1828 elf32_sparc_relocate_section,
1829 elf32_sparc_merge_private_bfd_data): ..
1830 * elf32-v850.c (v850_elf_check_relocs,
1831 v850_elf_merge_private_bfd_data): ..
1832 * elf32-xtensa.c (elf_xtensa_check_relocs,
1833 elf_xtensa_relocate_section, elf_xtensa_merge_private_bfd_data): ..
1834 * elf64-alpha.c (elf64_alpha_relax_with_lituse,
1835 elf64_alpha_relax_got_load, elf64_alpha_size_got_sections,
1836 elf64_alpha_relocate_section_r, elf64_alpha_relocate_section): ..
1837 * elf64-gen.c (elf64_generic_link_add_symbols): ..
1838 * elf64-ppc.c (ppc64_elf_merge_private_bfd_data, ppc_add_stub,
1839 ppc64_elf_check_relocs, ppc64_elf_edit_opd,
1840 ppc64_elf_relocate_section): ..
1841 * elf64-s390.c (elf_s390_check_relocs, invalid_tls_insn,
1842 elf_s390_relocate_section): ..
1843 * elf64-sh64.c (sh_elf64_relocate_section): ..
1844 * elf64-sparc.c (sparc64_elf_check_relocs,
1845 sparc64_elf_add_symbol_hook, sparc64_elf_relocate_section,
1846 sparc64_elf_merge_private_bfd_data): ..
1847 * elf64-x86-64.c (elf64_x86_64_check_relocs,
1848 elf64_x86_64_relocate_section): ..
1849 * elflink.c (_bfd_elf_add_default_symbol,
1850 _bfd_elf_link_assign_sym_version, elf_link_read_relocs_from_section,
1851 _bfd_elf_link_output_relocs, elf_link_add_object_symbols,
1852 bfd_elf_size_dynamic_sections, elf_link_output_extsym,
1853 elf_get_linked_section_vma, elf_fixup_link_order,
1854 bfd_elf_final_link, bfd_elf_gc_record_vtinherit,
1855 bfd_elf_gc_record_vtinherit, _bfd_elf_section_already_linked): ..
1856 * elfxx-ia64.c (elfNN_ia64_relax_section,
1857 elfNN_ia64_relocate_section, elfNN_ia64_merge_private_bfd_data): ..
1858 * elfxx-mips.c (mips_elf_perform_relocation,
1859 _bfd_mips_elf_check_relocs,
1860 _bfd_mips_elf_merge_private_bfd_data): ..
1861 * ieee.c (ieee_slurp_external_symbols): ..
1862 * ihex.c (ihex_bad_byte, ihex_scan, ihex_read_section): ..
1863 * libbfd.c (_bfd_generic_verify_endian_match): ..
1864 * linker.c (_bfd_generic_link_add_one_symbol,
1865 _bfd_generic_section_already_linked): ..
1866 * pdp11.c (translate_to_native_sym_flags): ..
1867 * pe-mips.c (coff_pe_mips_relocate_section): ..
1868 * peicode.h (pe_ILF_build_a_bfd): ..
1869 * srec.c (srec_bad_byte): ..
1870 * stabs.c (_bfd_link_section_stabs): ..
1871 * xcofflink.c (xcoff_link_add_symbols, xcoff_link_input_bfd): ..
1872 Replace all uses of bfd_archive_filename and bfd_get_section_ident
1873 with corresponding %B and %A in _bfd_error_handler format string.
1874 Replace occurrences of "fprintf (stderr," with _bfd_error_handler
1875 calls to use %A and %B. Fix "against symbol .. from section" and
1876 similar error messages. Combine multiple _bfd_error_handler calls
1877 where they were separated due to bfd_archive_filename deficiencies.
1878 * bfd-in2.h: Regenerate.
1879
6ba842b6
L
18802004-08-12 H.J. Lu <hongjiu.lu@intel.com>
1881
1882 * elf32-i386.c (elf_i386_relocate_section): Report unrecognized
1883 relocation.
1884
99877b66
AM
18852004-08-10 Alan Modra <amodra@bigpond.net.au>
1886
1887 * elf64-ppc.c (struct ppc_link_hash_entry): Add was_undefined.
1888 (struct ppc_link_hash_table): Remove no_multi_toc, multi_toc_needed.
1889 Make emit_stub_syms, stub_error and has_14bit_branch bit-fields.
1890 Add twiddled_syms.
1891 (link_hash_newfunc): Init was_undefined.
1892 (add_symbol_adjust): Don't set undefined dot symbols to defweak;
1893 Use undefweak instead.
1894 (ppc64_elf_check_directives): Fix undefs chain.
1895 (ppc64_elf_next_toc_section): Remove no_multi_toc and multi_toc_needed
1896 references.
1897 (ppc64_elf_size_stubs): Adjust for add_symbol_adjust change.
1898 (undo_symbol_twiddle, ppc64_elf_restore_symbols): New functions.
1899 * elf64-ppc.h (ppc64_elf_restore_symbols): Declare.
1900
ba3bee0b
JJ
19012004-08-09 Jakub Jelinek <jakub@redhat.com>
1902
1903 * elf64-x86-64.c (elf64_x86_64_relocate_section): For -fno-pic
1904 error, test input_section flags rather than sec.
1905
8387904d
AM
19062004-08-09 Alan Modra <amodra@bigpond.net.au>
1907
1908 * elf-bfd.h (struct elf_backend_data): Add
1909 elf_backend_archive_symbol_lookup.
1910 (_bfd_elf_archive_symbol_lookup): Declare.
1911 * elflink.c (_bfd_elf_archive_symbol_lookup): New function..
1912 (elf_link_add_archive_symbols): ..extracted from here. Call the
1913 backend version.
1914 * elfxx-target.h (elf_backend_archive_symbol_lookup): Provide default.
1915 (elfNN_bed): Init new field.
1916 * elf64-ppc.c (elf_backend_check_directives): Define.
1917 (elf_backend_archive_symbol_lookup): Define.
1918 (struct ppc_link_hash_table): Add tls_get_add_fd. Make tls_get_add
1919 a ppc_link_hash_entry pointer.
1920 (get_fdh): Move.
1921 (ppc64_elf_archive_symbol_lookup, opd_entry_value): New functions.
1922 (add_symbol_adjust, ppc64_elf_check_directives): New functions.
1923 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, func_desc_adjust,
1924 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup,
1925 ppc64_elf_tls_optimize, allocate_dynrelocs, ppc_type_of_stub,
1926 ppc_build_one_stub, ppc64_elf_size_stubs, ppc64_elf_relocate_section,
1927 ppc64_elf_finish_dynamic_symbol): Handle branch relocs to function
1928 descriptor symbols.
1929
b25116a9
AM
19302004-08-09 Alan Modra <amodra@bigpond.net.au>
1931
8843416a
AM
1932 * elf64-ppc.c (struct ppc_link_hash_entry): Expand adjust_done comment.
1933 (ppc64_elf_add_symbol_hook): Test for NULL section.
1934 (get_sym_h): Formatting.
1935 (ppc64_elf_size_stubs): Include reloc addend in value stored as
1936 stub target_value.
1937
b25116a9
AM
1938 * elf64-ppc.c (ppc64_elf_relocate_section): Combine handling of
1939 long branch stubs with code handling plt and r2off branch stubs.
1940
ccfa59ea
AM
19412004-08-09 Alan Modra <amodra@bigpond.net.au>
1942
1943 * elf-bfd.h (_bfd_elf_gc_mark): Declare.
1944 * elflink.c (elf_link_input_bfd): Formatting.
1945 (_bfd_elf_gc_mark): Rename from elf_gc_mark and make global. Adjust
1946 all callers.
1947 * elf64-ppc.c (struct ppc_link_hash_entry): Remove is_entry.
1948 (link_hash_newfunc): Don't set it.
1949 (ppc64_elf_copy_indirect_symbol): Nor copy it.
1950 (ppc64_elf_mark_entry_syms): Delete.
1951 (ppc64_elf_gc_mark_hook): Mark entry syms here. Also mark opd
1952 sections. Use get_opd_info.
1953 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Delete.
1954
4025353c
AM
19552004-08-09 Alan Modra <amodra@bigpond.net.au>
1956
4f800a42
AM
1957 * elf64-ppc.c (adjust_opd_syms): Fix merge error.
1958
06da1e8e
AM
1959 * elf64-ppc.c (struct ppc_link_hash_table): Remove have_undefweak.
1960 (func_desc_adjust): Don't set have_undefweak.
1961 (ppc64_elf_func_desc_adjust): Don't add an extr nop to sfpr.
1962 (ppc64_elf_relocate_section): NOP out calls to undefweak functions.
1963
34814b9f
AM
1964 * elf64-ppc.c (struct ppc_link_hash_entry): Make "oh" a
1965 "struct ppc_link_hash_entry *". Adjust all references.
1966 (ppc64_elf_hide_symbol): Correct a comment.
1967
4025353c
AM
1968 * elf64-ppc.c (get_opd_info): New function.
1969 (adjust_opd_syms): Use get_opd_info. Define removed symbols as zero.
1970 (ppc64_elf_edit_opd): Use get_opd_info. Check that sym has a dot
1971 before calling get_fdh. Test fdh rather than h before dereferencing
1972 fdh. Mark removed symbols in opd_adjust.
1973 (ppc64_elf_tls_optimize): Don't bother with opd adjustment here.
1974 (ppc64_elf_relocate_section): Use get_opd_info, and handle removed
1975 opd symbols.
1976 (ppc64_elf_output_symbol_hook): Likewise.
1977
db6579d4
PB
19782004-08-06 Paul Brook <paul@codesourcery.com>
1979
1980 * elfarm-nabi.c (elf32_arm_howto_table): Add new EABI relocations.
1981 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_RELABS32,
1982 BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32.
1983 * reloc.c: Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32
1984 and BFD_RELOC_ARM_SBREL32.
1985 * bfd-in2.h, bbfd.h: Regenerate.
1986
a4d0f181
TS
19872004-08-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1988
1989 * elfxx-mips.c (mips_elf_calculate_relocation): Test only for
1990 the dynamic link symbol actually in use.
1991
83774818
SC
19922004-08-01 Stephane Carrez <stcarrez@nerim.fr>
1993
1994 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Handle bfd_link_hash_new
1995
a4d0f181 19962004-07-31 Joel Brobecker <brobecker@gnat.com>
00b4930b
TS
1997 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1998
1999 * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Handle
2000 SHN_MIPS_TEXT and SHN_MIPS_DATA.
2001
185d09ad
L
20022004-07-30 H.J. Lu <hongjiu.lu@intel.com>
2003 Nick Clifton <nickc@redhat.com>
2004
2005 PR 290
2006 * bfd.c (_bfd_default_error_handler): Make it global.
2007
2008 * elf-bfd.h (elf_backend_data): Add link_order_error_handler.
2009
2010 * elf.c (assign_section_numbers): Cope gracefully with sections
2011 which have SHF_LINK_ORDER set but no sh_link set up.
2012 * elflink.c (elf_get_linked_section_vma): Likewise.
2013
2014 * elfxx-ia64.c (elf_backend_link_order_error_handler): New. Set
2015 it to NULL.
2016
2017 * elfxx-target.h (elf_backend_link_order_error_handler): New.
2018 Set it to _bfd_default_error_handler.
2019 (elfNN_bed): Add elf_backend_link_order_error_handler.
2020
2021 * libbfd-in.h (_bfd_default_error_handler): New.
2022
2023 * libbfd.h: Regenerated.
2024
7946e94a
JJ
20252004-07-30 Jakub Jelinek <jakub@redhat.com>
2026
2027 * archures.c (bfd_mach_sparc_64bit_p): Define.
2028 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Use it.
2029 * bfd-in2.h: Rebuilt.
2030
1d70c7fb
AO
20312004-07-29 Alexandre Oliva <aoliva@redhat.com>
2032
2033 Introduce SH2a support.
2034 2004-02-18 Corinna Vinschen <vinschen@redhat.com>
2035 * archures.c (bfd_mach_sh2a_nofpu): New.
2036 * bfd-in2.h: Rebuilt.
2037 * cpu-sh.c (SH2A_NOFPU_NEXT): New.
2038 (arch_info_struct): Add sh2a_nofpu.
2039 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu.
2040 2003-12-29 DJ Delorie <dj@redhat.com>
2041 * reloc.c: Add relocs for sh2a.
2042 * bfd-in2.h: Regenerate.
2043 * libbfd.hh: Regenerate.
2044 2003-12-01 Michael Snyder <msnyder@redhat.com>
2045 * archures.c (bfd_mach_sh2a): New.
2046 * bfd-in2.h: Rebuilt.
2047 * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums.
2048 (SH2A_NEXT): New.
2049 (arch_info_struct): Add sh2a.
2050 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a.
2051
404ed0cf
DA
20522004-07-28 Nick Clifton <nickc@redhat.com>
2053 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2054
2055 PR 273
2056 * som.c (setup_sections): Improve estimation of space sizes in
2057 relocatable objects.
2058
225247f0
JT
20592004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
2060 * config.bfd (hppa*-*-netbsd*): Set targ_defvec to
2061 bfd_elf32_hppa_nbsd_vec. Add bfd_elf32_hppa_linux_vec
2062 to targ_selvecs.
2063 * configure.in (bfd_elf32_hppa_nbsd_vec): Add case.
2064 * configure: Regenerate.
2065 * elf32-hppa.c (elf32_hppa_object_p): Add "elf32-hppa-netbsd"
2066 case that accepts OSABI=NetBSD and OSABI=SysV.
2067 (elf32_hppa_set_gp): For "elf32-hppa-netbsd", set the GP to
2068 the base of .got or .data (if .got does not exist).
2069 (elf32_hppa_post_process_headers): For elf32-hppa-netbsd,
2070 set OSABI=NetBSD.
2071 (TARGET_BIG_SYM): Add bfd_elf32_hppa_nbsd_vec case.
2072 (TARGET_BIG_NAME): Add "elf32-hppa-netbsd" case.
2073 * targets.c (bfd_elf32_hppa_nbsd_vec): Add extern declaration.
2074 (_bfd_target_vector): Add bfd_elf32_hppa_nbsd_vec.
2075
3d7f7666
L
20762004-07-27 H.J. Lu <hongjiu.lu@intel.com>
2077
2078 PR 161/251
2079 * elf-bfd.h (bfd_elf_section_data): Add sec_group.
2080 (elf_sec_group): Defined.
2081 (bfd_elf_match_symbols_in_sections): New prototype.
2082 (_bfd_elf_setup_group_pointers): Likewise.
2083
2084 * elf.c (bfd_elf_discard_group): Abort.
2085 (bfd_elf_set_group_contents): Also include relocation sections.
2086 Remove zero-fill for ld -r.
2087 (_bfd_elf_setup_group_pointers): New function.
2088 (elf_sort_elf_symbol): Likewise.
2089 (elf_sym_name_compare): Likewise.
2090 (bfd_elf_match_symbols_in_sections): Likewise.
2091
2092 * elfcode.h (elf_object_p): Call _bfd_elf_setup_group_pointers.
2093
2094 * elflink.c (match_group_member): New.
2095 (elf_link_input_bfd): Check group member for discarded section.
2096 (try_match_symbols_in_sections): New function.
2097 (already_linked): Likewise.
2098 (_bfd_elf_section_already_linked): Support mixing comdat group
2099 and linkonce section.
2100
2101 * libbfd-in.h (bfd_section_already_linked_table_traverse): New.
2102 * linker.c (bfd_section_already_linked_table_traverse): New.
2103
2104 * libbfd.h: Regenerated.
2105
670ec21d
NC
21062004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
2107
2108 * reloc.c: Add BFD_RELOC_CRX_SWITCH8, BFD_RELOC_CRX_SWITCH16,
2109 BFD_RELOC_CRX_SWITCH32.
2110 * bfd-in2.h: Regenerate.
6cd7f07e 2111 * libbfd.h: Regenerate.
670ec21d
NC
2112 * elf32-crx.c: Support relocation/relaxation of
2113 BFD_RELOC_CRX_SWITCH* types.
2114
2c66dc6c
AM
21152004-07-27 Alan Modra <amodra@bigpond.net.au>
2116
2117 * elf64-ppc.c: Correct "Linker stubs" comment.
2118
38ce5b11
L
21192004-07-26 H.J. Lu <hongjiu.lu@intel.com>
2120
2121 * elf-bfd.h (bfd_elf_section_data): Add a pointer for the
2122 linked-to section.
2123 (elf_linked_to_section): New.
2124
2125 * elf.c (assign_section_numbers): Set up sh_link for
2126 SHF_LINK_ORDER.
2127
2128 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set sh_info
2129 to sh_link for SHT_IA_64_UNWIND sections.
2130
65da361f
L
21312004-07-22 H.J. Lu <hongjiu.lu@intel.com>
2132
2133 * elflink.c (elf_fixup_link_order): Add _() to error message.
2134
08ccf96b
L
21352004-07-22 H.J. Lu <hongjiu.lu@intel.com>
2136
2137 * elflink.c (elf_fixup_link_order): Issue a warning and flag
2138 an error if failed.
2139
082b7297
L
21402004-07-21 H.J. Lu <hongjiu.lu@intel.com>
2141
2142 * aout-adobe.c (aout_32_section_already_linked): Defined.
2143 * aout-target.h (MY_section_already_linked): Likewise.
2144 * aout-tic30.c (MY_section_already_linked): Likewise.
2145 * binary.c (binary_section_already_linked): Likewise.
2146 * bout.c (b_out_section_already_linked): Likewise.
2147 * coff-alpha.c (_bfd_ecoff_section_already_linked): Likewise.
2148 * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
2149 * coffcode.h (coff_section_already_linked): Likewise.
2150 * i386msdos.c (msdos_section_already_linked): Likewise.
2151 * i386os9k.c (os9k_section_already_linked): Likewise.
2152 * ieee.c (ieee_section_already_linked): Likewise.
2153 * ihex.c (ihex_section_already_linked): Likewise.
2154 * mach-o.c (bfd_mach_o_section_already_linked): Likewise.
2155 * mmo.c (mmo_section_already_linked): Likewise.
2156 * nlm-target.h (nlm_section_already_linked): Likewise.
2157 * oasys.c (oasys_section_already_linked): Likewise.
2158 * pef.c (bfd_pef_section_already_linked): Likewise.
2159 * ppcboot.c (ppcboot_section_already_linked): Likewise.
2160 * som.c (som_bfd_discard_group): Likewise.
2161 * srec.c (srec_section_already_linked): Likewise.
2162 * tekhex.c (tekhex_section_already_linked): Likewise.
2163 * versados.c (versados_section_already_linked): Likewise.
2164 * vms.c (vms_section_already_linked): Likewise.
2165 * coff-target.h (_bfd_xcoff_section_already_linked): Likewise.
2166 * xsym.c (bfd_sym_section_already_linked): Likewise.
2167
2168 * bfd-in.h (bfd_section_already_linked_table_init): New.
2169 (bfd_section_already_linked_table_free): Likewise.
2170
2171 * coff-rs6000.c (rs6000coff_vec): Add
2172 _bfd_generic_section_already_linked.
2173 (pmac_xcoff_vec): Likewise.
2174 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
2175 (aix5coff64_vec): Likewise.
2176
2177 * elf-bfd.h (_bfd_elf_section_already_linked): New prototype.
2178 * elflink.c (_bfd_elf_section_already_linked): New function.
2179
2180 * elfxx-target.h (bfd_elfNN_section_already_linked): Defined.
2181
2182 * libbfd-in.h (_bfd_nolink_section_already_linked): Defined.
2183 (_bfd_generic_section_already_linked): New.
2184 (bfd_section_already_linked_hash_entry): Likewise.
2185 (bfd_section_already_linked): Likewise.
2186 (bfd_section_already_linked_table_lookup): Likewise.
2187 (bfd_section_already_linked_table_insert): Likewise.
2188
2189 * linker.c (bfd_section_already_linked): New.
2190 (_bfd_section_already_linked_table): Likewise.
2191 (bfd_section_already_linked_table_lookup): Likewise.
2192 (bfd_section_already_linked_table_insert): Likewise.
2193 (already_linked_newfunc): Likewise.
2194 (bfd_section_already_linked_table_init): Likewise.
2195 (bfd_section_already_linked_table_free): Likewise.
2196 (_bfd_generic_section_already_linked): Likewise.
2197
2198 * section.c (bfd_section): Remove comdat.
2199 (bfd_comdat_info): Moved to ...
2200 * bfd-in.h (coff_comdat_info): Here.
2201 (bfd_coff_get_comdat_section): New.
2202 * coffgen.c (bfd_coff_get_comdat_section): Likewise.
2203 * libcoff-in.h (coff_section_tdata): Add comdat.
2204 * coffcode.h (handle_COMDAT): Updated.
2205 * cofflink.c (coff_link_add_symbols): Likewise.
2206 * ecoff.c (bfd_debug_section): Likewise.
2207
2208 * targets.c (bfd_target): Add _section_already_linked.
2209 (BFD_JUMP_TABLE_LINK): Updated.
2210
2211 * bfd-in2.h: Regenerated.
2212 * libbfd.h: Likewise.
2213 * libcoff.h: Likewise.
2214
0b52efa6
PB
22152003-07-21 Paul Brook <paul@codesourcery.com>
2216
2217 * elflink.c (elf_get_linked_section_vma, compare_link_order,
2218 elf_fixup_link_order): New functions.
2219 (bfd_elf_final_link): Call elf_fixup_link_order.
2220
7e2294f9
AO
22212004-07-21 Alexandre Oliva <aoliva@redhat.com>
2222
2223 * elf-bfd.h (ELF_COMMON_DEF_P): New.
2224 * elflink.c (_bfd_elf_symbol_refs_local_p): Use it to handle
2225 common definitions.
2226 * elf-m10300.c: Use SYMBOL_REFERENCES_LOCAL instead of
2227 _bfd_elf_symbol_refs_local_p.
2228 * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove hack for common
2229 symbols.
2230
e56f61be
L
22312004-07-19 H.J. Lu <hongjiu.lu@intel.com>
2232
2233 * bfd-in.h (dynamic_lib_link_class): Add DYN_NO_ADD_NEEDED and
2234 DYN_NO_NEEDED.
2235 (bfd_elf_get_dyn_lib_class): New prototype.
2236 * elf.c (bfd_elf_get_dyn_lib_class): New function.
2237
2238 * elflink.c (elf_link_add_object_symbols): Check DYN_AS_NEEDED,
2239 DYN_DT_NEEDED and DYN_NO_NEEDED bits to see if a DT_NEEDED
2240 entry is needed. Issue an error if a DT_NEEDED entry is needed
2241 for a file marked DYN_NO_NEEDED.
2242 (elf_link_check_versioned_symbol): Check the DYN_DT_NEEDED bit
2243 for DT_NEEDED tags.
2244
2245 * bfd-in2.h: Regenerated.
2246
27b56da8
DA
22472004-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2248
2249 * elflink.c (elf_section_complain_discarded): Don't complain in
2250 .PARISC.unwind.
2251
bbb268c3
JW
22522004-07-10 James E Wilson <wilson@specifixinc.com>
2253
2254 * elfxx-ia64.c (elfNN_ia64_relax_ldxmov): Remove abfd parameter.
2255 (elfNN_ia64_install_value, elfNN_ia64_relax_brl): Likewise.
2256 (elfNN_ia64_relax_section, elfNN_ia64_relocate_section,
2257 elfNN_ia64_finish_dynamic_symbol, elfNN_ia64_finish_dynamic_sections):
2258 Fix callers.
2259 (elfNN_ia64_relax_brl): Change bfd_get_64 to bfd_getl64. Change
2260 bfd_put_64 to bfd_putl64.
2261 (elfNN_ia64_relax_ldxmov, elfNN_ia64_install_value): Likewise.
2c66dc6c 2262
e525914f
L
22632004-07-09 H.J. Lu <hongjiu.lu@intel.com>
2264
2265 PR 240
2266 * elfxx-ia64.c (elfNN_ia64_relax_section): Only warn br in
2267 .init/.fini sections when trying to relax it.
2268
b1a6d0b1
NC
22692004-07-09 Jie Zhang <zhangjie@magima.com.cn>
2270
2271 * elf.c (assign_file_positions_for_segments): Make sure the
2272 .dynamic section is the first section in the PT_DYNAMIC segment.
2273
1a320fbb
NC
22742004-07-09 Nick Clifton <nickc@redhat.com>
2275
2276 * config.bfd: Change sh-sybmian-elf to sh-*-symbianelf.
2277 * elf32-sh-symbian.c: Rename the sh_find_elf_flags and
2278 sh_elf_get_flags_from_mach functions so that they do not conflict
2279 when this target is built with other sh-elf targets.
2280 * elf32-sh.c (sh_elf_get_flags_from_mach): Remove bogus
2281 suppression of this function.
2282 (sh_elf_find_flags): Likewise.
2283
1fe1f39c
NC
22842004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
2285
2286 * Makefile.am (ALL_MACHINES): Add cpu-crx.lo.
2287 (ALL_MACHINES_CFILES): Add cpu-crx.c.
2288 (BFD32_BACKENDS): Add elf32-crx.lo.
2289 (BFD32_BACKENDS_CFILES): Add elf32-crx.c.
2290 (cpu-crx.lo): New target.
2291 (elf32-crx.lo): New target.
2292 * Makefile.in: Regenerate.
2293 * archures.c (bfd_architecture): Add bfd_{arch,mach}_crx.
2294 (bfd_archures_list): Add bfd_crx_arch.
2295 * bfd-in2.h: Regenerate.
2296 * config.bfd: Handle crx-*-elf*, crx*.
2297 * configure.in: Handle bfd_elf32_crx_vec.
2298 * configure: Regenerate.
2299 * cpu-crx.c: New file.
2300 * elf32-crx.c: Likewise.
2301 * libbfd.h: Regenerate.
2302 * reloc.c: Add BFD_RELOC_CRX_REL4, BFD_RELOC_CRX_REL8,
2303 BFD_RELOC_CRX_REL8_CMP, BFD_RELOC_CRX_REL16, BFD_RELOC_CRX_REL24,
2304 BFD_RELOC_CRX_REL32, BFD_RELOC_CRX_REGREL12, BFD_RELOC_CRX_REGREL22,
2305 BFD_RELOC_CRX_REGREL28, BFD_RELOC_CRX_REGREL32, BFD_RELOC_CRX_ABS16,
2306 BFD_RELOC_CRX_ABS32, BFD_RELOC_CRX_NUM8, BFD_RELOC_CRX_NUM16,
2307 BFD_RELOC_CRX_NUM32, BFD_RELOC_CRX_IMM16 and BFD_RELOC_CRX_IMM32
2308 * targets.c (bfd_elf32_crx_vec): Declare.
2309 (bfd_target_vector): Add bfd_elf32_crx_vec.
2310
85fbca6a
NC
23112004-07-06 Nick Clifton <nickc@redhat.com>
2312
2313 * config.bfd: Add sh-symbian-elf target.
2314 * configure.in: Add bfd_elf32_shl_symbian_vec.
2315 * configure: Regenerate.
2316 * elf-bfd.h (struct elf_backend_data): Add new field
2317 'check_directives'.
1fe1f39c 2318 * elflink.c (elf_link_add_object_symbols): Invoke the
85fbca6a 2319 check_directives function, if defined.
1fe1f39c 2320 * elfxx-target.h: Provide a default, NULL definition for
85fbca6a 2321 check_directives.
1fe1f39c
NC
2322 * targets.c: Add bfd_elf32_shl_symbian_vec.
2323 * elf32-sh.c (sh_elf_swap_insns): Protect against unnecessary
85fbca6a 2324 definition.
1fe1f39c 2325 (elf32_shlin_grok_prstatus, elf32_shlib_grok_psinfo,
85fbca6a 2326 * sh_elf_get_flags_from_mach, sh_elf_find_flags): Likewise.
1fe1f39c 2327 (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Only define if they have
85fbca6a 2328 not already been defined.
1fe1f39c
NC
2329 * elf32-sh64.c: Use SH_TARGET_ALREADY_DEFINED.
2330 * sh-symbian.c: New file. Provide functions to support the
85fbca6a
NC
2331 * sh-symbian-elf target.
2332 * Makefile.am: Add elf32-sh-symbian.c
2333 * Makefile.in: Regenerate.
1fe1f39c 2334
871ec896
JR
23352004-07-05 Andrew Stubbs <andrew.stubbs@superh.com>
2336
1fe1f39c
NC
2337 * elf32-sh.c: Include ../opcodes/sh-opc.h.
2338 * Makefile.am: Ran make dep-am.
2339 * Makefile.in: Ran make dep-in.
871ec896 2340
c87db184
CF
23412004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
2342
2343 * cofflink.c (_bfd_coff_generic_relocate_section): Resolve PE weak
2344 externals properly.
2345
06f2f6af
MS
23462004-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
2347
2348 * config.bfd: Add want64 to configuration target s390-*-linux*.
2349
b602c853
L
23502004-07-01 H.J. Lu <hongjiu.lu@intel.com>
2351
2352 * bfd.c (bfd_get_section_ident): New.
2353
2354 * elflink.c (elf_link_read_relocs_from_section): Call
2355 bfd_get_section_ident to identify the section when reporting
2356 error.
2357 (_bfd_elf_link_output_relocs): Likewise.
2358 (elf_link_output_extsym): Likewise.
2359 (elf_link_input_bfd): Likewise.
2360 (bfd_elf_gc_record_vtinherit): Likewise.
2361
2362 * bfd-in2.h: Regenerated.
2363
7a2a6943
NC
23642004-07-01 Jie Zhang <zhangjie@magima.com.cn>
2365 Nick Clifton <nickc@redhat.com>
2366
2367 PR 204
2368 * elfxx-mips.c (_bfd_mips_elf_final_link): Pass the correct number
2369 of section symbols to mips_elf_sort_hash_table ().
2370
cdd3575c
AM
23712004-07-01 Alan Modra <amodra@bigpond.net.au>
2372
2373 * elflink.c (elf_section_ignore_discarded_relocs): Revert last
2374 change. Comment.
2375 (elf_section_complain_discarded): New function. Handle
2376 .gcc_except_table too.
2377 (elf_link_input_bfd): Rewrite handling of relocs against symbols
2378 in discarded sections.
2379 * elf-bfd.h (elf_discarded_section): Protect macro arg.
2380
21a8f7fa
JW
23812004-06-30 James E Wilson <wilson@specifixinc.com>
2382
2383 * elfxx-ia64.c (elfNN_ia64_check_relocs): New local pltoff. Initialize
2384 to NULL. Call get_pltoff if NULL and NEED_PLTOFF is true.
2385
2de26f35
L
23862004-06-30 H.J. Lu <hongjiu.lu@intel.com>
2387
2388 PR 233
2389 * elflink.c (elf_link_input_bfd): Issue an error for non-debug
2390 local references to discarded sections and report their
2391 locations.
2392
72d7a15c
AM
23932004-06-30 Alan Modra <amodra@bigpond.net.au>
2394
2395 * elflink.c (elf_section_ignore_discarded_relocs): Don't test
2396 sec_info_type, test section name instead.
2397
e7f0a167
L
23982004-06-29 H.J. Lu <hongjiu.lu@intel.com>
2399
2400 PR 240
2401 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't relax branch
2402 in .init/.fini sections.
2403
bff5f93a
BW
24042004-06-29 Bob Wilson <bob.wilson@acm.org>
2405
2406 * elf32-xtensa.c (elf_xtensa_relocate_section): Use
2407 bfd_get_section_limit.
2408
b54d4b07
BW
24092004-06-29 Bob Wilson <bob.wilson@acm.org>
2410
2411 * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Don't change the
2412 output section size.
2413
e87a64e1
AM
24142004-06-29 Alan Modra <amodra@bigpond.net.au>
2415
1a23a9e6
AM
2416 * elf64-mmix.c (mmix_set_relaxable_size): Save original size in
2417 rawsize.
2418 (mmix_elf_perform_relocation): Adjust for above change.
2419 (mmix_elf_relocate_section): Likewise.
2420 (mmix_elf_relax_section): Likewise. Use output_section->rawsize.
2421 (mmix_elf_get_section_contents): Delete.
2422 (bfd_elf64_get_section_contents): Delete.
2423 (mmix_elf_relocate_section): Zero stub area.
2424 * linker.c (default_indirect_link_order): Alloc max of section size
2425 and rawsize.
2426 * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
2427 * section.c (bfd_malloc_and_get_section): Likewise.
2428 (struct bfd_section): Update rawsize comment.
2429 * bfd-in2.h: Regenerate.
2430
e87a64e1
AM
2431 * reloc16.c (bfd_coff_reloc16_relax_section): Set rawsize.
2432
07515404
AM
24332004-06-29 Alan Modra <amodra@bigpond.net.au>
2434
2435 * bfd-in.h (bfd_get_section_limit): Define.
1fe1f39c 2436 * reloc.c (bfd_perform_relocation, bfd_install_relocation)
07515404
AM
2437 (_bfd_final_link_relocate): Use bfd_get_section_limit.
2438 * aout-tic30.c (tic30_aout_final_link_relocate): Likewise.
2439 * coff-arm.c (coff_arm_relocate_section): Likewise.
2440 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): Likewise.
2441 * cpu-ns32k.c (do_ns32k_reloc): Likewise.
2442 (bfd_ns32k_final_link_relocate): Likewise.
2443 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): Likwise.
2444 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): Likewise.
1fe1f39c 2445 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc)
07515404 2446 (i860_howto_highadj_reloc, i860_howto_splitn_reloc): Likewise.
1fe1f39c 2447 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc)
07515404
AM
2448 (m32r_elf_generic_reloc, m32r_elf_relocate_section): Likewise.
2449 * elf32-m68hc1x.c (m68hc11_elf_special_reloc): Likewise.
2450 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
2451 * elf32-or32.c (or32_elf_consth_reloc): Likewise.
2452 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Likewise.
2453 * elf32-s390.c (s390_elf_ldisp_reloc): Likewise.
2454 * elf32-sh.c (sh_elf_reloc_loop): Likewise.
2455 * elf32-sparc.c (sparc_elf_wdisp16_reloc): Likewise.
2456 (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc): Likwise.
2457 * elf32-v850.c (v850_elf_reloc): Likewise.
2458 * elf32-xstormy16.c (xstormy16_elf_24_reloc): Likewise.
2459 * elf32-xtensa.c (bfd_elf_xtensa_reloc): Likewise.
2460 * elf64-alpha.c (elf64_alpha_reloc_gpdisp): Likewise.
2461 * elf64-mips.c (mips_elf64_gprel32_reloc)
2462 (mips16_gprel_reloc): Likewise.
2463 * elf64-mmix.c (mmix_elf_reloc): Likewise.
2464 * elf64-s390.c (s390_elf_ldisp_reloc): Likewise.
2465 * elf64-sparc.c (init_insn_reloc): Likewise.
2466 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1fe1f39c
NC
2467 * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp)
2468 (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_lo16_reloc)
07515404
AM
2469 (_bfd_mips_elf_generic_reloc): Likewise.
2470 * bfd-in2.h: Regenerate.
2471
3722b82f
AM
24722004-06-28 Alan Modra <amodra@bigpond.net.au>
2473
2474 * bfd-in.h (struct stab_info): Move from stabs.c.
2475 * stabs.c (struct stab_link_includes_table): Delete.
2476 (stab_link_includes_lookup): Delete.
2477 (_bfd_write_section_stabs, _bfd_write_stab_strings): Remove one
2478 level of indirection from sinfo parm.
2479 (_bfd_link_section_stabs): Likewise. Set SEC_LINKER_CREATED on
2480 stabstr section. Adjust hash table accesses.
2481 * coff-ppc.c (ppc_bfd_coff_final_link): Do include rawsize in contents
2482 alloc. Adjust stab_info test.
2483 * cofflink.c (_bfd_coff_link_hash_table_init): Clear stab_info.
2484 (_bfd_coff_final_link): Adjust stab_info test.
2485 (_bfd_coff_link_input_bfd): Ignore SEC_LINKER_CREATED sections.
2486 * elf-bfd.h (struct elf_link_hash_table): Include struct stab_info
2487 in place.
2488 * libcoff-in.h (struct coff_link_hash_table): Likewise.
2489 * elf.c (_bfd_elf_link_hash_table_init): Clear stab_info.
2490 * elflink.c (bfd_elf_final_link): Don't attempt to link linker created
2491 stabstr section. Adjust stab_info test.
2492 * libbfd-in.h (_bfd_link_section_stabs, _bfd_write_section_stabs)
2493 (_bfd_write_stab_strings): Adjust prototypes.
2494 * libbfd.h: Regenerate.
2495 * libcoff.h: Regenerate.
2496 * bfd-in2.h: Regenerate.
2497
727e493d
MK
24982004-06-27 Mark Kettenis <kettenis@gnu.org>
2499
2500 From Miod Vallat <miod@online.fr>:
2501 * aoutx.h (NAME(aout,machine_type)): Handle bfd_arch_m88k.
2502
146ccdbb
AO
25032004-06-26 Alexandre Oliva <aoliva@redhat.com>
2504
2505 * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): Delete.
2506 (struct elf32_mn10300_link_hash_entry): Remove
2507 pcrel_relocs_copied.
2508 (mn10300_elf_check_relocs): Only reserve dynamic relocations for
2509 R_MN10300_32. Don't adjust pcrel_relocs_copied.
2510 (mn10300_elf_final_link_relocate): Fail for direct, pc-relative
2511 and gotoff relocations if the symbol doesn't bind locally. Use
2512 _bfd_elf_symbol_refs_local_p to test. Don't create dynamic
2513 relocation for PCREL32.
2514 (mn10300_elf_relocate_section): Use _bfd_elf_symbol_refs_local_p
2515 to test whether a symbol binds locally.
2516 (elf32_mn10300_link_hash_newfunc): Don't initialize
2517 pcrel_relocs_copied.
2518 (_bfd_mn10300_elf_discard_copies): Delete.
2519 (_bfd_mn10300_elf_size_dynamic_sections): Don't call it.
2520
a5fd0812
MK
25212004-06-26 Mark Kettenis <kettenis@gnu.org>
2522
2523 * config.bfd: Replace m88k-*-openbsd* with m88*-*-openbsd*.
2524
22bfad37
JB
25252004-06-25 Joel Brobecker <brobecker@gnat.com>
2526
2527 * som.c (som_set_reloc_info): Correct small typo.
2528
097f809a
NC
25292004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
2530
2531 * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_GOTOFF.
2532 (m32r_elf_relocate_section): Changed for R_M32R_GOTOFF.
2533 (m32r_elf_gcsweep_hook): Likewise.
2534 (m32r_elf_check_relocs): Likewise.
2535 (m32r_elf_howto_table): Added R_M32R_GOTOFF_HI_ULO,
2536 R_M32R_GOTOFF_HI_SLO and R_M32R_GOTOFF_LO.
2537 * reloc.c: Added BFD_RELOC_M32R_GOTOFF_HI_ULO,
2538 BFD_RELOC_M32R_GOTOFF_HI_SLO and BFD_RELOC_M32R_GOTOFF_LO.
f9f2cf5d
NC
2539 * bfd-in2.h: Regenerated.
2540 * libbfd.h: Regenerated.
097f809a 2541
6610a52d
L
25422004-06-24 H.J. Lu <hongjiu.lu@intel.com>
2543
2544 * elf64-x86-64.c (elf64_x86_64_check_relocs): Warn overflow
2545 relocation symbol.
2546 (elf64_x86_64_relocate_section): Issue an error for
2547 R_X86_64_PC8, R_X86_64_PC16 and R_X86_64_PC32 relocations
2548 against global symbols when building shared library.
2549
eea6121a
AM
25502004-06-24 Alan Modra <amodra@bigpond.net.au>
2551
2552 * section.c (struct sec): Rename "_cooked_size" to "size".
2553 Rename "_raw_size" to "rawsize".
2554 (STD_SECTION): Adjust comments.
2555 (bfd_set_section_size, bfd_get_section_contents): Use size.
2556 (bfd_malloc_and_get_section): New function.
2557 * bfd-in.h (bfd_section_size, bfd_get_section_size): Use size.
2558 * coff-sh.c (sh_relax_section): Alloc coff_section_data struct early.
2559 Correctly free reloc and contents memory.
2560 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete FIXME
2561 and fake CIE now that we can shink section size to zero.
2562 (_bfd_elf_write_section_eh_frame): Likewise..
2563 * elf32-ppc.c (ppc_elf_relax_section): Delay reading section contents.
2564 * elf-m10300.c (mn10300_elf_final_link_relocate): Don't use
2565 _bfd_stab_section_offset. Use _bfd_elf_section_offset.
2566 * stabs.c (_bfd_stab_section_offset_): Remove unused args and
2567 unneeded indirection.
2568 * elf.c (_bfd_elf_section_offset): .. and update call.
2569 * libbfd-in.h (_bfd_stab_section_offset): Update prototype.
2570 * libbfd.h: Regenerate.
2571 * bfd-in2.h: Regenerate.
2572
2573 Replace occurrences of "_raw_size" and "_cooked_size" in most places
2574 with "size". Set new "rawsize" for stabs, eh_frame, and SEC_MERGE
2575 sections. Use "rawsize", if non-zero, for bfd_get_section_contents
2576 calls if the section might be a stabs, eh_frame, or SEC_MERGE section.
2577 Similarly use "rawsize", if non-zero, in reloc functions to validate
2578 reloc addresses. Use new bfd_malloc_and_get_section in most places
2579 where bfd_get_section_contents was called. Expand all occurrences of
2580 bfd_section_size and bfd_get_section_size. Rename "raw_size" var in
2581 grok_prstatus and similar functions to "size".
2582 * aix386-core.c (aix386_core_file_p): ..
2583 * aix5ppc-core.c (xcoff64_core_p): ..
2584 * aout-adobe.c (aout_adobe_callback, aout_adobe_write_object_contents,
2585 aout_adobe_set_section_contents): ..
2586 * aout-target.h (callback): ..
2587 * aout-tic30.c (tic30_aout_callback, tic30_aout_final_link_relocate,
2588 MY_bfd_final_link): ..
2589 * aoutf1.h (sunos4_core_file_p): ..
2590 * aoutx.h (some_aout_object_p, adjust_o_magic, adjust_z_magic,
2591 adjust_n_magic, adjust_sizes_and_vmas, translate_from_native_sym_flags,
2592 final_link, aout_link_input_section): ..
2593 * binary.c (binary_object_p, binary_canonicalize_symtab,
2594 binary_set_section_contents): ..
2595 * bout.c (b_out_callback, b_out_write_object_contents,
2596 b_out_set_section_contents, b_out_bfd_relax_section,
2597 b_out_bfd_get_relocated_section_contents): ..
2598 * cisco-core.c (cisco_core_file_validate): ..
2599 * coff-alpha.c (alpha_ecoff_object_p,
2600 alpha_ecoff_get_relocated_section_conten, alpha_relocate_section): ..
2601 * coff-arm.c (coff_arm_relocate_section,
2602 bfd_arm_allocate_interworking_sections): ..
2603 * coff-h8300.c (h8300_reloc16_extra_cases,
2604 h8300_bfd_link_add_symbols): ..
2605 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): ..
2606 * coff-ppc.c (coff_ppc_relocate_section, ppc_allocate_toc_section,
2607 ppc_bfd_coff_final_link): ..
2608 * coff-rs6000.c (xcoff_reloc_type_br, xcoff_ppc_relocate_section): ..
2609 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
2610 sh_align_loads, sh_coff_get_relocated_section_contents): ..
2611 * coff64-rs6000.c (xcoff64_write_object_contents,
2612 xcoff64_reloc_type_br, xcoff64_ppc_relocate_section): ..
2613 * coffcode.h (coff_compute_section_file_positions,
2614 coff_write_object_contents): ..
2615 * coffgen.c (make_a_section_from_file, coff_write_symbols,
2616 coff_section_symbol, build_debug_section): ..
2617 * cofflink.c (coff_link_add_symbols, _bfd_coff_final_link,
2618 process_embedded_commands, _bfd_coff_link_input_bfd,
2619 _bfd_coff_write_global_sym): ..
2620 * cpu-arm.c (bfd_arm_update_notes, bfd_arm_get_mach_from_notes): ..
2621 * cpu-ns32k.c (do_ns32k_reloc, _bfd_ns32k_final_link_relocate): ..
2622 * dwarf1.c (parse_line_table, _bfd_dwarf1_find_nearest_line): ..
2623 * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
2624 _bfd_dwarf2_find_nearest_line): ..
2625 * ecoff.c (bfd_debug_section, ecoff_set_symbol_info,
2626 ecoff_compute_section_file_positions,
2627 _bfd_ecoff_write_object_contents, ecoff_indirect_link_order): ..
2628 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame,
2629 _bfd_elf_discard_section_eh_frame_hdr,
2630 _bfd_elf_maybe_strip_eh_frame_hdr, _bfd_elf_eh_frame_section_offset,
2631 _bfd_elf_write_section_eh_frame,
2632 _bfd_elf_write_section_eh_frame_hdr): ..
2633 * elf-hppa.h (elf_hppa_sort_unwind): ..
2634 * elf-m10200.c (mn10200_elf_relax_section,
2635 mn10200_elf_relax_delete_bytes,
2636 mn10200_elf_get_relocated_section_contents): ..
2637 * elf-m10300.c (_bfd_mn10300_elf_create_got_section,
2638 mn10300_elf_check_relocs, mn10300_elf_relax_section,
2639 mn10300_elf_relax_delete_bytes,
2640 mn10300_elf_get_relocated_section_contents,
2641 _bfd_mn10300_elf_adjust_dynamic_symbol,
2642 _bfd_mn10300_elf_discard_copies,
2643 _bfd_mn10300_elf_size_dynamic_sections,
2644 _bfd_mn10300_elf_finish_dynamic_sections): ..
2645 * elf.c (_bfd_elf_print_private_bfd_data, bfd_elf_get_bfd_needed_list,
2646 _bfd_elf_make_section_from_phdr, elf_fake_sections,
2647 bfd_elf_set_group_contents, map_sections_to_segments,
2648 elf_sort_sections, assign_file_positions_for_segments,
2649 SECTION_SIZE, copy_private_bfd_data,
2650 _bfd_elf_get_dynamic_reloc_upper_bound,
2651 _bfd_elf_canonicalize_dynamic_reloc, elfcore_maybe_make_sect,
2652 _bfd_elfcore_make_pseudosection, elfcore_grok_prstatus,
2653 elfcore_grok_lwpstatus, elfcore_grok_win32pstatus,
2654 elfcore_grok_note, elfcore_grok_nto_status, elfcore_grok_nto_gregs,
2655 _bfd_elf_rel_local_sym, _bfd_elf_get_synthetic_symtab): ..
2656 * elf32-arm.h (bfd_elf32_arm_allocate_interworking_sect,
2657 bfd_elf32_arm_process_before_allocation,
2658 elf32_arm_adjust_dynamic_symbol, allocate_dynrelocs,
2659 elf32_arm_size_dynamic_sections, elf32_arm_finish_dynamic_sections,
2660 elf32_arm_write_section): ..
2661 * elf32-cris.c (cris_elf_grok_prstatus,
2662 elf_cris_finish_dynamic_sections, cris_elf_gc_sweep_hook,
2663 elf_cris_adjust_gotplt_to_got, elf_cris_adjust_dynamic_symbol,
2664 cris_elf_check_relocs, elf_cris_size_dynamic_sections,
2665 elf_cris_discard_excess_dso_dynamics,
2666 elf_cris_discard_excess_program_dynamics): ..
2667 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): ..
2668 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): ..
2669 * elf32-frv.c (_frvfdpic_add_dyn_reloc, _frvfdpic_add_rofixup,
2670 _frv_create_got_section, _frvfdpic_assign_plt_entries,
2671 elf32_frvfdpic_size_dynamic_sections,
2672 elf32_frvfdpic_modify_segment_map,
2673 elf32_frvfdpic_finish_dynamic_sections): ..
2674 * elf32-h8300.c (elf32_h8_relax_section, elf32_h8_relax_delete_bytes,
2675 elf32_h8_get_relocated_section_contents): ..
2676 * elf32-hppa.c (hppa_build_one_stub, hppa_size_one_stub,
2677 elf32_hppa_adjust_dynamic_symbol, allocate_plt_static,
2678 allocate_dynrelocs, elf32_hppa_size_dynamic_sections, group_sections,
2679 elf32_hppa_size_stubs, elf32_hppa_set_gp, elf32_hppa_build_stubs,
2680 elf32_hppa_finish_dynamic_sections): ..
2681 * elf32-i370.c (i370_elf_adjust_dynamic_symbol,
2682 i370_elf_size_dynamic_sections, i370_elf_check_relocs,
2683 i370_elf_finish_dynamic_sections): ..
2684 * elf32-i386.c (elf_i386_grok_prstatus, elf_i386_adjust_dynamic_symbol,
2685 allocate_dynrelocs, elf_i386_size_dynamic_sections,
2686 elf_i386_relocate_section, elf_i386_finish_dynamic_sections): ..
2687 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc,
2688 i860_howto_highadj_reloc, i860_howto_splitn_reloc): ..
2689 * elf32-ip2k.c (ip2k_is_switch_table_128,
2690 ip2k_relax_switch_table_128, ip2k_is_switch_table_256,
2691 ip2k_relax_switch_table_256, ip2k_elf_relax_section,
2692 adjust_all_relocations, ip2k_elf_relax_delete_bytes): ..
2693 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc,
2694 m32r_elf_generic_reloc, m32r_elf_adjust_dynamic_symbol,
2695 allocate_dynrelocs, m32r_elf_size_dynamic_sections,
2696 m32r_elf_relocate_section, m32r_elf_finish_dynamic_sections,
2697 m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
2698 m32r_elf_get_relocated_section_contents): ..
2699 * elf32-m68hc11.c (m68hc11_elf_build_one_stub,
2700 m68hc11_elf_size_one_stub, m68hc11_elf_relax_section,
2701 m68hc11_elf_relax_delete_bytes): ..
2702 * elf32-m68hc12.c (m68hc12_elf_build_one_stub,
2703 m68hc12_elf_size_one_stub): ..
2704 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs,
2705 elf32_m68hc11_build_stubs, m68hc11_elf_special_reloc): ..
2706 * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_gc_sweep_hook,
2707 elf_m68k_adjust_dynamic_symbol, elf_m68k_size_dynamic_sections,
2708 elf_m68k_discard_copies, elf_m68k_finish_dynamic_sections): ..
2709 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
2710 elf32_mips_grok_prstatus): ..
2711 * elf32-or32.c (or32_elf_consth_reloc): ..
2712 * elf32-ppc.c (ppc_elf_relax_section, ppc_elf_addr16_ha_reloc,
2713 elf_create_pointer_linker_section, ppc_elf_create_linker_section,
2714 ppc_elf_additional_program_headers, ppc_elf_adjust_dynamic_symbol,
2715 allocate_dynrelocs, ppc_elf_size_dynamic_sections,
2716 ppc_elf_finish_dynamic_sections, ppc_elf_grok_prstatus,
2717 ppc_elf_final_write_processing): ..
2718 * elf32-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
2719 allocate_dynrelocs, elf_s390_size_dynamic_sections,
2720 elf_s390_finish_dynamic_sections, elf_s390_grok_prstatus): ..
2721 * elf32-sh.c (sh_elf_reloc_loop, sh_elf_relax_section,
2722 sh_elf_relax_delete_bytes, sh_elf_align_loads,
2723 sh_elf_adjust_dynamic_symbol, allocate_dynrelocs,
2724 sh_elf_size_dynamic_sections, sh_elf_get_relocated_section_contents,
2725 sh_elf_finish_dynamic_sections, elf32_shlin_grok_prstatus): ..
2726 * elf32-sh64-com.c (sh64_address_in_cranges,
2727 sh64_get_contents_type): ..
2728 * elf32-sh64.c (sh64_find_section_for_address,
2729 sh64_elf_final_write_processing): ..
2730 * elf32-sparc.c (sparc_elf_wdisp16_reloc, sparc_elf_hix22_reloc,
2731 sparc_elf_lox10_reloc, elf32_sparc_adjust_dynamic_symbol,
2732 allocate_dynrelocs, elf32_sparc_size_dynamic_sections,
2733 elf32_sparc_relocate_section, elf32_sparc_finish_dynamic_sections): ..
2734 * elf32-v850.c (v850_elf_reloc, v850_elf_relax_section): ..
2735 * elf32-vax.c (elf_vax_check_relocs, elf_vax_adjust_dynamic_symbol,
2736 elf_vax_size_dynamic_sections, elf_vax_discard_copies,
2737 elf_vax_instantiate_got_entries, elf_vax_relocate_section,
2738 elf_vax_finish_dynamic_sections): ..
2739 * elf32-xstormy16.c (xstormy16_elf_24_reloc,
2740 xstormy16_elf_check_relocs, xstormy16_relax_plt_check,
2741 xstormy16_elf_relax_section, xstormy16_elf_always_size_sections,
2742 xstormy16_elf_finish_dynamic_sections): ..
2743 * elf32-xtensa.c (xtensa_read_table_entries,
2744 elf_xtensa_allocate_got_size, elf_xtensa_allocate_local_got_size,
2745 elf_xtensa_size_dynamic_sections, elf_xtensa_do_reloc,
2746 bfd_elf_xtensa_reloc, elf_xtensa_relocate_section,
2747 elf_xtensa_combine_prop_entries, elf_xtensa_finish_dynamic_sections,
2748 elf_xtensa_discard_info_for_section, elf_xtensa_grok_prstatus,
2749 get_relocation_opcode, retrieve_contents, find_relaxable_sections,
2750 collect_source_relocs, is_resolvable_asm_expansion, remove_literals,
2751 relax_section, shrink_dynamic_reloc_sections, relax_property_section,
2752 xtensa_callback_required_dependence): ..
2753 * elf64-alpha.c (elf64_alpha_reloc_gpdisp, elf64_alpha_relax_section,
2754 elf64_alpha_check_relocs, elf64_alpha_adjust_dynamic_symbol,
2755 elf64_alpha_calc_got_offsets_for_symbol, elf64_alpha_calc_got_offsets,
2756 elf64_alpha_size_plt_section, elf64_alpha_size_plt_section_1,
2757 elf64_alpha_always_size_sections, elf64_alpha_calc_dynrel_sizes,
2758 elf64_alpha_size_rela_got_section, elf64_alpha_size_rela_got_1,
2759 elf64_alpha_size_dynamic_sections, elf64_alpha_emit_dynrel,
2760 elf64_alpha_finish_dynamic_sections, elf64_alpha_final_link): ..
2761 * elf64-hppa.c (allocate_dynrel_entries,
2762 elf64_hppa_size_dynamic_sections,
2763 elf64_hppa_finish_dynamic_sections): ..
2764 * elf64-mips.c (mips_elf64_gprel32_reloc, mips16_gprel_reloc,
2765 mips_elf64_canonicalize_dynamic_reloc, mips_elf64_slurp_reloc_table,
2766 elf64_mips_grok_prstatus): ..
2767 * elf64-mmix.c (mmix_elf_perform_relocation, mmix_elf_reloc,
2768 mmix_elf_relocate_section, mmix_elf_final_link,
2769 mmix_set_relaxable_size, _bfd_mmix_after_linker_allocation,
2770 mmix_elf_relax_section, mmix_elf_get_section_contents): ..
2771 * elf64-ppc.c (ppc64_elf_object_p, ppc64_elf_grok_prstatus,
2772 ppc64_elf_check_relocs, ppc64_elf_func_desc_adjust,
2773 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_edit_opd,
2774 allocate_dynrelocs, ppc64_elf_size_dynamic_sections,
2775 ppc_build_one_stub, ppc_size_one_stub, ppc64_elf_next_toc_section,
2776 toc_adjusting_stub_needed, group_sections, ppc64_elf_size_stubs,
2777 ppc64_elf_build_stubs, ppc64_elf_relocate_section,
2778 ppc64_elf_finish_dynamic_sections): ..
2779 * elf64-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
2780 allocate_dynrelocs, elf_s390_size_dynamic_sections,
2781 elf_s390_finish_dynamic_sections): ..
2782 * elf64-sh64.c (sh_elf64_get_relocated_section_contents,
2783 sh_elf64_check_relocs, sh64_elf64_adjust_dynamic_symbol,
2784 sh64_elf64_discard_copies, sh64_elf64_size_dynamic_sections,
2785 sh64_elf64_finish_dynamic_sections): ..
2786 * elf64-sparc.c (sparc64_elf_slurp_reloc_table, init_insn_reloc,
2787 sparc64_elf_check_relocs, sparc64_elf_adjust_dynamic_symbol,
2788 sparc64_elf_size_dynamic_sections, sparc64_elf_relocate_section,
2789 sparc64_elf_finish_dynamic_symbol,
2790 sparc64_elf_finish_dynamic_sections): ..
2791 * elf64-x86-64.c (elf64_x86_64_grok_prstatus,
2792 elf64_x86_64_adjust_dynamic_symbol, allocate_dynrelocs,
2793 elf64_x86_64_size_dynamic_sections, elf64_x86_64_relocate_section,
2794 elf64_x86_64_finish_dynamic_sections): ..
2795 * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): ..
2796 * elfcode.h (elf_slurp_reloc_table): ..
2797 * elflink.c (_bfd_elf_create_got_section, elf_add_dt_needed_tag,
2798 elf_finalize_dynstr, elf_link_add_object_symbols,
2799 bfd_elf_size_dynamic_sections, elf_link_sort_relocs,
2800 elf_link_input_bfd, bfd_elf_final_link, bfd_elf_discard_info): ..
2801 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
2802 elf32_mips_grok_prstatus): ..
2803 * elfxx-ia64.c (elfNN_ia64_relax_section, allocate_dynrel_entries,
2804 elfNN_ia64_size_dynamic_sections, elfNN_ia64_install_dyn_reloc,
2805 elfNN_ia64_choose_gp, elfNN_ia64_final_link,
2806 elfNN_ia64_finish_dynamic_sections): ..
2807 * elfxx-mips.c (mips_elf_create_procedure_table,
2808 mips_elf_check_mips16_stubs, _bfd_mips_elf_gprel16_with_gp,
2809 _bfd_mips_elf_hi16_reloc, _bfd_mips_elf_generic_reloc,
2810 mips_elf_global_got_index, mips_elf_multi_got,
2811 mips_elf_create_compact_rel_section, mips_elf_calculate_relocation,
2812 mips_elf_allocate_dynamic_relocations,
2813 mips_elf_create_dynamic_relocation, _bfd_mips_elf_fake_sections,
2814 _bfd_mips_relax_section, _bfd_mips_elf_adjust_dynamic_symbol,
2815 _bfd_mips_elf_always_size_sections,
2816 _bfd_mips_elf_size_dynamic_sections,
2817 _bfd_mips_elf_finish_dynamic_symbol,
2818 _bfd_mips_elf_finish_dynamic_sections,
2819 _bfd_mips_elf_modify_segment_map, _bfd_mips_elf_discard_info,
2820 _bfd_mips_elf_write_section, _bfd_mips_elf_set_section_contents,
2821 _bfd_elf_mips_get_relocated_section_contents,
2822 _bfd_mips_elf_final_link, _bfd_mips_elf_merge_private_bfd_data): ..
2823 * hp300hpux.c (callback): ..
2824 * hppabsd-core.c (make_bfd_asection): ..
2825 * hpux-core.c (make_bfd_asection): ..
2826 * i386linux.c (linux_link_create_dynamic_sections,
2827 bfd_i386linux_size_dynamic_sections, linux_finish_dynamic_link): ..
2828 * i386msdos.c (msdos_write_object_contents): ..
2829 * i386os9k.c (os9k_callback, os9k_write_object_contents,
2830 os9k_set_section_contents): ..
2831 * ieee.c (parse_expression, ieee_slurp_external_symbols,
2832 ieee_slurp_sections, ieee_slurp_debug, ieee_slurp_section_data,
2833 ieee_write_section_part, do_with_relocs, do_as_repeat,
2834 do_without_relocs, ieee_write_debug_part, init_for_output,
2835 ieee_set_section_contents): ..
2836 * ihex.c (ihex_scan, ihex_read_section, ihex_get_section_contents): ..
2837 * irix-core.c (do_sections, make_bfd_asection): ..
2838 * libaout.h (aout_section_merge_with_text_p): ..
2839 * libbfd.c (_bfd_generic_get_section_contents,
2840 _bfd_generic_get_section_contents_in_window): ..
2841 * linker.c (default_indirect_link_order): ..
2842 * lynx-core.c (make_bfd_asection): ..
2843 * m68klinux.c (linux_link_create_dynamic_sections,
2844 bfd_m68klinux_size_dynamic_sections, linux_finish_dynamic_link): ..
2845 * mach-o.c (bfd_mach_o_make_bfd_section,
2846 bfd_mach_o_scan_read_dylinker, bfd_mach_o_scan_read_dylib,
2847 bfd_mach_o_scan_read_thread, bfd_mach_o_scan_read_symtab,
2848 bfd_mach_o_scan_read_segment): ..
2849 * merge.c (_bfd_add_merge_section, record_section, merge_strings,
2850 _bfd_merge_sections): ..
2851 * mmo.c (mmo_find_sec_w_addr, mmo_get_spec_section, mmo_get_loc,
2852 mmo_map_set_sizes, mmo_canonicalize_symtab,
2853 mmo_internal_write_section, mmo_write_object_contents): ..
2854 * netbsd-core.c (netbsd_core_file_p): ..
2855 * nlm32-alpha.c (nlm_alpha_read_reloc, nlm_alpha_write_import,
2856 nlm_alpha_set_public_section): ..
2857 * nlm32-ppc.c (nlm_powerpc_read_reloc, nlm_powerpc_write_reloc): ..
2858 * nlm32-sparc.c (nlm_sparc_write_import): ..
2859 * nlmcode.h (add_bfd_section, nlm_swap_auxiliary_headers_in,
2860 nlm_compute_section_file_positions): ..
2861 * oasys.c (oasys_object_p, oasys_slurp_section_data,
2862 oasys_write_sections, oasys_write_data, oasys_set_section_contents): ..
2863 * opncls.c (get_debug_link_info): ..
2864 * osf-core.c (make_bfd_asection): ..
2865 * pdp11.c (some_aout_object_p, adjust_o_magic, adjust_z_magic,
2866 adjust_n_magic, adjust_sizes_and_vmas, squirt_out_relocs,
2867 final_link, aout_link_input_section): ..
2868 * peXXigen.c (_bfd_XXi_swap_sym_in, _bfd_XXi_swap_aouthdr_out,
2869 pe_print_idata, pe_print_edata, pe_print_pdata, pe_print_reloc): ..
2870 * pef.c (bfd_pef_make_bfd_section, bfd_pef_print_loader_section,
2871 bfd_pef_scan_start_address, bfd_pef_parse_symbols): ..
2872 * ppcboot.c (ppcboot_object_p, ppcboot_canonicalize_symtab): ..
2873 * ptrace-core.c (ptrace_unix_core_file_p): ..
2874 * reloc.c (bfd_perform_relocation, bfd_install_relocation,
2875 _bfd_final_link_relocate, bfd_generic_relax_section,
2876 bfd_generic_get_relocated_section_contents): ..
2877 * reloc16.c (bfd_coff_reloc16_relax_section,
2878 bfd_coff_reloc16_get_relocated_section_c): ..
2879 * riscix.c (riscix_some_aout_object_p): ..
2880 * rs6000-core.c (read_hdr, make_bfd_asection): ..
2881 * sco5-core.c (make_bfd_asection): ..
2882 * simple.c (bfd_simple_get_relocated_section_contents): ..
2883 * som.c (som_object_setup, setup_sections, som_prep_headers,
2884 som_write_fixups, som_begin_writing, bfd_section_from_som_symbol,
2885 som_set_reloc_info, som_get_section_contents,
2886 som_bfd_link_split_section): ..
2887 * sparclinux.c (linux_link_create_dynamic_sections,
2888 bfd_sparclinux_size_dynamic_sections, linux_finish_dynamic_link): ..
2889 * srec.c (srec_scan, srec_read_section, srec_get_section_contents): ..
2890 * stabs.c (_bfd_link_section_stabs, _bfd_discard_section_stabs,
2891 _bfd_write_stab_strings, _bfd_stab_section_offset): ..
2892 * sunos.c (sunos_read_dynamic_info, sunos_create_dynamic_sections,
2893 bfd_sunos_size_dynamic_sections, sunos_scan_std_relocs,
2894 sunos_scan_ext_relocs, sunos_scan_dynamic_symbol,
2895 sunos_write_dynamic_symbol, sunos_check_dynamic_reloc,
2896 sunos_finish_dynamic_link): ..
2897 * syms.c (_bfd_stab_section_find_nearest_line): ..
2898 * tekhex.c (first_phase, tekhex_set_section_contents,
2899 tekhex_write_object_contents): ..
2900 * trad-core.c (trad_unix_core_file_p): ..
2901 * versados.c (process_esd, process_otr, process_otr): ..
2902 * vms-gsd.c (_bfd_vms_slurp_gsd, _bfd_vms_write_gsd): ..
2903 * vms-misc.c (add_new_contents): ..
2904 * vms-tir.c (check_section, new_section, _bfd_vms_write_tir): ..
2905 * vms.c (vms_set_section_contents): ..
2906 * xcofflink.c (xcoff_get_section_contents, xcoff_link_add_symbols,
2907 xcoff_sweep, bfd_xcoff_size_dynamic_sections, xcoff_build_ldsyms,
2908 _bfd_xcoff_bfd_final_link, xcoff_link_input_bfd): ..
2909 * xsym.c (bfd_sym_scan): .. See above.
2910
bf8b15af
L
29112004-06-21 H.J. Lu <hongjiu.lu@intel.com>
2912
2913 * elfxx-ia64.c (elfNN_ia64_relax_section): Add addend when
2914 calling _bfd_merged_section_offset only for section symbols.
2915
d1c6de6f
AM
29162004-06-22 Alan Modra <amodra@bigpond.net.au>
2917
2918 * elf32-ppc.c (ppc_elf_relax_section): Implement reference code
2919 for handling SEC_MERGE symbols in relax_section.
2920
aa02cc63
AO
29212004-06-21 Alexandre Oliva <aoliva@redhat.com>
2922
2923 2003-05-15 Richard Sandiford <rsandifo@redhat.com>
2924 * cpu-h8300.c (compatible): Allow h8300s and h8300sx code to be
2925 linked together. Mark the result as h8300sx code.
2926
aee6f5b4
AO
29272004-06-21 Alexandre Oliva <aoliva@redhat.com>
2928
2929 * elf-bfd.h (struct elf_backend_data): Added
2930 elf_backend_omit_section_dynsym.
2931 (_bfd_elf_link_omit_section_dynsym): Declare.
2932 * elf32-frv.c (_frvfdpic_link_omit_section_dynsym): New.
2933 (elf_backend_omit_section_dynsym): Use it for frvfdpic.
2934 * elflink.c (_bfd_elf_link_omit_section_dynsym): Split out of...
2935 (_bfd_elf_link_renumber_dynsyms): ... this function.
2936 * elfxx-target.h (elf_backend_omit_section_dynsym): Default to
2937 _bfd_elf_link_omit_section_dynsym).
2938 (elfNN_bed): Added elf_backend_omit_section_dynsym.
2939
05576f10
NC
29402004-06-21 Nick Clifton <nickc@redhat.com>
2941
2942 * coffcode.h (styp_to_sec_flags): Ignore IMAGE_SCN_MEM_NOT_PAGED
2943 flags.
2944
02d5a37b
JG
29452004-06-17 Jerome Guitton <guitton@gnat.com>
2946
2947 * bfd-in.h (bfd_cache_close_all): New function declaration.
2948 * bfd-in2.h: Regenerate.
2949 * cache.c (bfd_cache_close_all): New function definition.
2950
d2bef492
MK
29512004-06-16 Mark Kettenis <kettenis@gnu.org>
2952
2953 * configure.in: Don't set COREFILE to trad-core.lo for FreeBSD
2954 4.10 and beyond.
2955 * configure: Regenerate.
2956
8528d62e
DJ
29572004-06-16 Daniel Jacobowitz <dan@debian.org>
2958
2959 * elf32-ppc.c (ppc_elf_create_linker_section): Create symbols in
2960 the pre-existing section.
2961
911d08a7
AM
29622004-06-15 Alan Modra <amodra@bigpond.net.au>
2963
2964 * section.c (struct sec): Remove usused flags. Reorganize a little.
2965 (bfd_get_section_size_before_reloc): Delete.
2966 (bfd_get_section_size_after_reloc): Delete.
2967 (STD_SECTION): Update.
2968 (bfd_get_section_size_now): Delete.
2969 (bfd_set_section_contents): Don't referece reloc_done.
2970 (bfd_get_section_contents): Remove reloc_done comment.
2971 * bout.c (b_out_bfd_get_relocated_section_contents): Don't set
2972 reloc_done.
2973 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Likewise.
2974 * ecoff.c (bfd_debug_section): Update initializer.
2975 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Ditto.
2976 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
2977 * bfd-in.h (bfd_section_size): Expand.
2978 (bfd_get_section_size): New macro.
2979 * bfd-in2.h: Regenerate.
2980 * coff64-rs6000.c (xcoff64_write_object_contents): Replace
2981 bfd_get_section_size_before_reloc with bfd_get_section_size.
2982 * coffcode.h (coff_write_object_contents): Likewise.
2983 * coffgen.c (build_debug_section): Likewise.
2984 * dwarf1.c (parse_line_table): Likewise.
2985 (_bfd_dwarf1_find_nearest_line): Likewise.
2986 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
2987 * i386msdos.c (msdos_write_object_contents): Likewise.
2988 * pdp11.c (squirt_out_relocs): Likewise.
2989 * elf32-sh64.c (sh64_find_section_for_address): Remove comment.
2990 * elf64-mmix.c (mmix_elf_final_link): Update comment.
2991
092dcd75
CD
29922004-06-14 Chris Demetriou <cgd@broadcom.com>
2993
2994 * elf32-mips.c (elf_mips_gnu_pcrel32): Add (undoing 2004-04-24
2995 removal) with updated comment.
2996 (bfd_elf32_bfd_reloc_type_lookup): Add back case for
2997 BFD_RELOC_32_PCREL.
2998 (mips_elf32_rtype_to_howto): Add back case for R_MIPS_PC32.
2999 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
3000
3ffa5234
AM
30012004-06-12 Alan Modra <amodra@bigpond.net.au>
3002
3003 * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc
3004 overflow on branches to undefweaks.
3005
e9edc808
MR
30062004-06-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3007
3008 * coff-alpha.c (alpha_relocate_section): Set used_by_bfd directly
3009 as ecoff_section_data() does not return a valid lvalue.
3010
a873f25a
AO
30112004-06-09 Alexandre Oliva <aoliva@redhat.com>
3012
a9b881be
AO
3013 * elflink.c (elf_sort_symbol): Compare section id, not pointers.
3014 (elf_link_add_object_symbols): Likewise.
3015
a873f25a
AO
3016 * elf-m10300.c (_bfd_mn10300_elf_reloc_type_class): New.
3017 (elf_backend_reloc_type_class): New.
3018
eef0f186
MK
30192004-06-08 Mark Kettenis <kettenis@gnu.org>
3020
3021 * configure.in (hppa*-*-netbsd*, hppa*-*-openbsd): Set COREFILE to
3022 netbsd-core.lo.
3023 * configure: Regenerate.
3024
822392ce
DJ
30252004-06-07 Daniel Jacobowitz <dan@debian.org>
3026
3027 From: Albert Chin-A-Young <china@thewrittenword.com>
3028 * bfd/elf-bfd.h (struct eh_cie_fde): Convert unsigned char bitfields
3029 to unsigned int.
3030
9f2e92c5
L
30312004-05-29 H.J. Lu <hongjiu.lu@intel.com>
3032
3033 * elfxx-ia64.c (elfNN_ia64_relax_section): Undo the last
3034 change.
3035
dd90f1b2
DD
30362004-05-28 DJ Delorie <dj@redhat.com>
3037
3038 * elf-m10300.c (mn10300_elf_relax_section): Preserve reloc addend
3039 for linking, but otherwise adjust reloc for merged sections.
3040
5dd23ec1
L
30412004-05-28 H.J. Lu <hongjiu.lu@intel.com>
3042
3043 * elfxx-ia64.c (elfNN_ia64_relax_section): Properly call
3044 _bfd_merged_section_offset for local symbols.
3045
f6f9408f
JR
30462004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
3047
3048 * Makefile.am: Regenerate dependencies.
3049 * Makefile.in: Regenerate.
3050 * archures.c: Add bfd_mach_sh3_nommu .
3051 * bfd-in2.h: Regenerate.
3052 * cpu-sh.c: Add sh3-nommu architecture.
3053 (bfd_to_arch_table): Create new table.
3054 (sh_get_arch_from_bfd_mach): Create new function.
3055 (sh_get_arch_up_from_bfd_mach): Create new function.
3056 (sh_merge_bfd_arch): Create new function.
3057 * elf32-sh.c (sh_ef_bfd_table): Add table.
3058 (sh_elf_check_relocs): Replace switch statement with
3059 use of sh_ef_bfd_table .
3060 (sh_elf_get_flags_from_mach): Add new function.
3061 (sh_find_elf_flags): Likewise.
3062 (sh_elf_copy_private_data): Replace most of non-elf contents
3063 with a call to sh_merge_bfd_arch() .
3064
d866f350
MC
30652004-05-27 Michael Chastain <mec.gnu@mindspring.com>
3066
3067 * Makefile.am (bfdver.h): Use explicit filename, not $< .
3068 * Makefile.in: Regenerate.
3069
1055df0f
AO
30702004-05-27 Alexandre Oliva <aoliva@redhat.com>
3071
3072 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Avoid
3073 custom calling conventions for dynamic symbols.
3074 (mn10300_elf_relax_section): Avoid relaxing a function as a local
3075 symbol if it's an alias to a global one.
3076
b3096250
L
30772004-05-26 H.J. Lu <hongjiu.lu@intel.com>
3078
3079 * elf.c (_bfd_elf_make_section_from_shdr): Undo the last
3080 change.
3081
9bb351fd
AO
30822004-05-27 Alexandre Oliva <aoliva@redhat.com>
3083
3084 * elf-m10300.c (mn10300_elf_relax_section): Don't test isym within
3085 loop over hashes.
3086
e49f5022
AM
30872004-05-26 Alan Modra <amodra@bigpond.net.au>
3088
3089 * elf.c (_bfd_elf_make_section_from_shdr): Don't set SEC_EXCLUDE
3090 for SHT_GROUP sections.
3091
57ceae94
AM
30922004-05-25 Alan Modra <amodra@bigpond.net.au>
3093
3094 * elflink.c (elf_link_add_object_symbols): Don't set up merge
3095 section data here..
3096 * elf.c (_bfd_elf_merge_sections): .. Do it here instead.
3097 * merge.c: Formatting. Remove unnecessary casts. Expand
3098 bfd_get_section_alignment macro.
3099 (struct sec_merge_sec_info): Rename "first" to "first_str". Update
3100 use throughout file.
3101 (_bfd_add_merge_section): Rename from _bfd_merge_section. Update
3102 comment. Abort on dynamic or non-SEC_MERGE input. Don't test
3103 section name to determine sinfo group, instead test output section
3104 and alignment.
3105 (_bfd_merge_sections): Add struct bfd_link_info param. Call
3106 _bfd_strip_section_from_output rather than just twiddling flags.
3107 * libbfd-in.h (_bfd_add_merge_section): Rename, update comment.
3108 (_bfd_merge_sections): Update prototype.
3109 * libbfd.h: Regenerate.
3110
c6f8758f 31112004-05-24 Mark Kettenis <kettenis@gnu.org>
d34436e8
MK
3112
3113 * netbsd-core.c: Correctly indent section that sets architecture
3114 from machine ID.
3115
c6f8758f
NC
3116 From Miod Vallat <miod@online.fr>:
3117 * m88kopenbsd.c: New file.
3118 * targets.c (m88k_openbsd_vec): New.
3119 * config.bfd: Add m88k-*-openbsd*.
3120 * configure.in (m88k-*-openbsd*): Set COREFILE to netbsd-core.lo.
3121 (m88kopenbsd_vec): New.
3122 * configure: Regenerate.
3123 * Makefile.am (BFD32_BACKENDS): Add m88kopenbsd.lo.
3124 (BFD32_BACKENDS_CFILES): Add m88kopenbsd.c.
3125 Run "make dep-am".
3126 * Makefile.in: Regenerate.
3127 * po/SRC-POTFILES.in: Regenerate.
3128
7d7e6bc4
NC
31292004-05-24 Nick Clifton <nickc@redhat.com>
3130
3131 * hash.c: Remove bogus node "Changing the default Hash Table Size"
3132 introduced by hash table size patch.
3133
bc286f95
BE
31342004-05-22 Ben Elliston <bje@au.ibm.com>
3135
3136 * configure.in (is_release): Remove.
3137 (bfd_version_date, bfd_version, bfd_version_string): Likewise.
3138 (AC_OUTPUT): Don't output bfdver.h from version.h.
3139 * configure: Regenerate.
3140 * Makefile.am (RELEASE): New variable.
3141 (bfdver.h): New target.
3142 * Makefile.in: Regenerate.
3143 * doc/Makefile.in: Likewise.
3144
8b89a4eb
BE
31452004-05-22 Ben Elliston <bje@au.ibm.com>
3146
3147 * Makefile.am (config.status): Don't depend on version.h.
3148 * Makefile.in: Regenerate.
3149
753731ee
AM
31502004-05-22 Alan Modra <amodra@bigpond.net.au>
3151
3152 * merge.c (_bfd_merged_section_offset): Remove "addend" param.
3153 * libbfd-in.h (_bfd_merged_section_offset): Adjust prototype.
3154 * libbfd.h: Regenerate.
3155 * elf.c (_bfd_elf_rela_local_sym): Adjust call.
3156 (_bfd_elf_rel_local_sym): Likewise.
3157 * elflink.c (_bfd_elf_link_sec_merge_syms): Likewise.
3158 (elf_link_input_bfd): Likewise.
3159 * elf32-ppc.c (ppc_elf_relax_section): Likewise.
3160 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
3161 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
3162 (elfNN_ia64_relocate_section): Likewise.
3163
2d643429
NC
31642004-05-21 Andy Chittenden <achittenden@bluearc.com>
3165
3166 * hash.c (bfd_default_hash_table_size): New variable.
3167 (bfd_hash_table_init): Use new variable instead of DEFAULT_SIZE.
3168 (bfd_hash_set_default_size): New function. Set the default size
3169 to a selected prime number close to the argument. Document new
3170 function.
3171 * bfd-in.h: Add prototype for bfd_hash_set_default_size.
3172 * bfd-in2.h: Regenerate.
3173 * Makefile.am (hash.lo): Add dependency upon libiberty.h.
3174 * Makefile.in: Regenerate.
3175
8377c19c
MK
31762004-05-21 Mark Kettenis <kettenis@gnu.org>
3177
3178 * libaout.h (machine_type): Add M_88K_OPENBSD and M_HPPA_OPENBSD.
3179 * netbsd-core.c (netbsd_core_file_p): Set architecture for alpha,
3180 arm, m68k, m88k and hppa core files.
3181
69fd4758
NC
31822004-05-21 Nick Clifton <nickc@redhat.com>
3183
3184 * bfdio.c (bfd_bread): Do not use iovec if it is NULL.
3185 (bfd_bwrite): Likewise.
3186 (bfd_tell): Likewise.
3187 (bfd_flush): Likewise.
3188 (bfd_stat): Likewise.
3189 (bfd_seek): Likewise.
3190 (bfd_get_mtime): Likewise.
3191 (bfd_get_size): Likewise.
3192
cd917290
BE
31932004-05-19 Ben Elliston <bje@au.ibm.com>
3194
3195 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Comment correction.
3196
1b09e940
NC
31972004-05-19 Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
3198
3199 * archive.c (_bfd_get_elt_at_filepos): Cope with a nested archives.
3200 (bfd_generic_openr_next_archived_file): Likewise.
3201
096c35a7
BW
32022004-05-17 Bob Wilson <bob.wilson@acm.org>
3203
3204 * elf32-xtensa.c (xtensa_get_property_section_name): Determine linkonce
3205 section names by inserting a new substring after .gnu.linkonce, except
3206 for .gnu.linkonce.t.* where the "t." is replaced.
3207
eea6121a 32082004-05-17 Adam Nemet <anemet@lnxw.com>
b2d65c0b
NC
3209
3210 * config.bfd (sparc-*-lynxos* case): Add to obsolete list.
3211 (m68-*-lynxos* case): Likewise.
3212 (powerpc-*-lyxnos* case): New case.
3213 (i[3-7]86-*-lynxos* case): Update to LynxOS 4.0 ELF.
3214
80fccad2
BW
32152004-05-17 David Heine <dlheine@tensilica.com>
3216
3217 * aout-target.h (MY_bfd_copy_private_header_data): Define.
3218 * aout-tic30.c (MY_bfd_copy_private_header_data): Define.
3219 * bfd.c (bfd_copy_private_header_data): Define.
3220 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Add entries for new
3221 interface.
3222 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
3223 * coffcode.h (coff_bfd_copy_private_header_data): Define.
3224 * elf-bfd.h (_bfd_elf_copy_private_header_data): Declare.
3225 * elf.c (_bfd_elf_copy_private_section_data): Remove code to set up
3226 segments by calling copy_private_bfd_data.
3227 (_bfd_elf_copy_private_header_data): Define.
3228 * elfxx-target.h (bfd_elfNN_bfd_copy_private_header_data): Define.
3229 * libbfd-in.h (_bfd_generic_bfd_copy_private_header_data): Define.
3230 * libecoff.h (_bfd_ecoff_bfd_copy_private_header_data): Define.
3231 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Define.
3232 * mmo.c (mmo_bfd_copy_private_header_data): Define.
3233 * ppcboot.c (ppcboot_bfd_copy_private_header_data): Define.
3234 * som.c (som_bfd_copy_private_header_data): Define.
3235 * targets.c (BFD_JUMP_TABLE_COPY): Add _bfd_copy_private_header_data.
3236 * vms.c (vms_bfd_copy_private_header_data): Define.
3237 * bfd-in2.h: Regenerate.
3238 * libbfd.h: Regenerate.
3239
c5ae1840
TS
32402004-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3241
3242 * elfxx-mips.c (MINUS_TWO): Define.
3243 (mips_elf_higher, mips_elf_highest,
3244 mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for
3245 some bfd_vma values.
3246 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup.
3247
a99cf92b
DA
32482004-05-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3249
3250 * som.c (log2): Rename to exact_log2. Adjust all callers.
3251
0da76f83
NC
32522004-05-13 Paul Brook <paul@codesourcery.com>
3253
c273895f 3254 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle
336b9722
NC
3255 dwarf3 format CIE entries. Remove comment about the size of the
3256 ra_column field. It is now correctly deduced.
0da76f83 3257
4b363073
NC
32582004-05-13 Joel Sherrill <joel@oarcorp.com>
3259
3260 * config.bfd (or32-*-rtems*): Switch to elf.
3261
9598fbe5
NC
32622004-05-13 Nick Clifton <nickc@redhat.com>
3263
3264 * po/fr.po: Updated French translation.
3265
8c37241b
JJ
32662004-05-11 Jakub Jelinek <jakub@redhat.com>
3267
0306b3bf 3268 * elflink.c (bfd_elf_final_link): Don't output STT_SECTION symbol
8c37241b
JJ
3269 into .dynsym if elf_section_data (sec)->dynindx <= 0.
3270 Adjust counting of last_local.
3271 (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
3272 other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
3273 created by the linker nor !SHF_ALLOC.
3274
3275 * elf32-i386.c (elf_i386_finish_dynamic_sections): Point
3276 DT_PLTGOT to the start of the .got.plt section instead of the
3277 .got output section. Set sh_entsize for .got section in addition
3278 to .got.plt.
3279 (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
3280 is at sgot->output_section->vma.
3281 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
3282 DT_PLTGOT to the start of the .got.plt section instead of the
3283 .got output section.
3284 (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
3285 is at sgot->output_section->vma. Set sh_entsize for .got section
3286 in addition to .got.plt.
3287 * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
3288 (bfd_section_from_phdr): Likewise.
3289 (map_sections_to_segments): Likewise.
3290 (assign_file_positions_for_segments): Likewise.
3291 (get_program_header_size): Likewise.
3292 * elflink.c (bfd_elf_size_dynamic_sections): Set
3293 elf_tdata (output_bfd)->relro from info->relro.
3294 * elf-bfd.h (struct elf_obj_tdata): Add relro field.
3295
3f980e41
AO
32962004-05-08 Alexandre Oliva <aoliva@redhat.com>
3297
3298 * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get
3299 a zero symndx for which we hadn't accounted a dynamic relocation.
3300 (_frvfdpic_add_rofixup): Likewise.
3301
d70270c5 33022004-05-07 Brian Ford <ford@vss.fsi.com>
eea6121a 3303 DJ Delorie <dj@redhat.com>
d70270c5
BF
3304
3305 * coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]:
3306 Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE.
3307 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize
3308 IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines.
3309
7e9f3bd6
AO
33102004-05-07 Alexandre Oliva <aoliva@redhat.com>
3311
3312 * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Return
3313 immediately if there's no link info.
3314 (elf32_frvfdpic_copy_private_bfd_data): New.
3315 (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic.
3316
eb61d2d6
ZW
33172004-05-06 Zack Weinberg <zack@codesourcery.com>
3318
3319 * dwarf2.c (add_line_info): Also set info->filename to NULL if
3320 filename argument is null; do not call strlen on a null pointer.
3321
ecb2d096
DJ
33222004-05-06 Daniel Jacobowitz <drow@mvista.com>
3323
3324 * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32
3325 special case.
3326
43850d5b
AO
33272004-05-05 Alexandre Oliva <aoliva@redhat.com>
3328
3329 * configure.in (bfd_elf32_frvfdpic_vec): New.
3330 * configure: Rebuilt.
3331 * targets.c (bfd_elf32_frvfdpic_vec): New.
3332 * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default
3333 on the latter.
3334 * elf32-frv.c: Prefix all identifiers added for FDPIC support with
3335 frvfdpic instead of frv. Rearrange elf-target macros such that
3336 the FDPIC-specific ones are only defined for this new target
3337 vector.
3338 (bfd_elf32_frvfdpic_vec): Declare.
3339 (IS_FDPIC): New.
3340 (elf32_frv_relocate_section): Use it to enable segment checking
3341 and to control rofixup emission. Add output section vma to
3342 applied relocation in non-LOAD non-ALLOC sections. Use
3343 _bfd_error_handler for errors.
3344 (_frv_create_got_section): Create .rel.got and .rofixup only in
3345 FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the
3346 linker script.
3347 (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC.
3348 (elf32_frvfdpic_modify_segment_map): Likewise.
3349 (elf32_frv_finish_dynamic_sections): New, do-nothing.
3350 (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve
3351 error message if we miscompute the rofixup size.
3352 (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC.
3353 (frvfdpic_elf_encode_eh_address): Likewise.
3354 (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC.
3355 Record relocs only in FDPIC. Make sure _gp is defined for GPREL
3356 relocs. Reject unknown relocation types.
3357 (elf32_frv_object_p): Make sure target vector matches FDPIC bits.
3358 (frv_elf_merge_private_bfd_data): Likewise.
3359 (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as
3360 0x4000 for newly-added elf32-frvfdpic.
3361
06fc8a8c
NC
33622004-05-05 Nick Clifton <nickc@redhat.com>
3363
3364 PR/136
3365 * cache.c (bfd_cache_lookup_worker): Call abort() rather than
3366 returning NULL as most users of this function do not check its
3367 return value.
33216455
NC
3368 * hppabsd-core.c (hppabsd_core_core_file_p): Do not check result
3369 of bfd_cache_lookup().
3370 * sco5-core.c (sco5_core_file_p): Likewise.
3371 * trad-core.c (trad_unix_core_file_p): Likewise.
06fc8a8c
NC
3372
33732004-05-05 Nick Clifton <nickc@redhat.com>
3374
3375 * cache.c (bfd_cache_lookup): Improve formatting.
3376 * archive.c: Fix formatting.
3377
6b6e92f4
NC
33782004-05-05 Peter Barada <peter@the-baradas.com>
3379
3380 * bfd_archures.c(bfd_architecture): Add 521x,5249,547x,548x.
3381 * cpu-m68k.c(bfd_m68k_arch): Likewise.
3382 * bfd-in2.h(bfd_architecture): Regenerate.
3383
6a8d1586
AM
33842004-05-03 Alan Modra <amodra@bigpond.net.au>
3385
3386 * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excluded
3387 SEC_MERGE sections.
3388 * elflink.c (elf_link_input_bfd): Adjust output reloc index for
3389 those against discarded link-once and SEC_MERGE section symbols.
3390
fafe6678
L
33912004-05-02 H.J. Lu <hongjiu.lu@intel.com>
3392
3393 * section.c (bfd_get_section_by_name_if): New.
3394 * bfd-in2.h: Regenerated.
3395
ad7b9a36
AM
33962004-05-02 Alan Modra <amodra@bigpond.net.au>
3397
3398 * som.c (som_bfd_is_group_section): Define.
3399
73499ab8
AM
34002004-05-01 Alan Modra <amodra@bigpond.net.au>
3401
3402 * section.c (bfd_make_section_anyway): Copy the whole
3403 bfd_hash_entry, not just "next" from existing entry.
3404
45c5e9ed
L
34052004-04-30 H.J. Lu <hongjiu.lu@intel.com>
3406
3407 * elf.c (bfd_section_from_shdr): Maintain the section order in
3408 a section group.
3409 (special_sections): Add ".note.GNU-stack".
3410 (elf_fake_sections): Handle section group for relocatable
3411 link..
3412
bc87dd2e
L
34132004-04-30 H.J. Lu <hongjiu.lu@intel.com>
3414
3415 * section.c (bfd_sections_find_if): New.
3416 * bfd-in2.h: Regenerated.
3417
72adc230
AM
34182004-04-30 Alan Modra <amodra@bigpond.net.au>
3419
3420 * section.c (bfd_make_section_anyway): Add all sections to hash tab.
3421
3422 * elf-bfd.h (bfd_elf_is_group_section): Declare.
3423 * elf.c (bfd_elf_is_group_section): New function.
3424 * elfxx-target.h (bfd_elfNN_bfd_is_group_section
3425 * section.c (bfd_generic_is_group_section): New function.
3426 * targets.c (struct bfd_target): Add _bfd_is_group_section field.
3427 (BFD_JUMP_TABLE_LINK): Adjust.
3428 * aout-adobe.c (aout_32_bfd_is_group_section): Define.
3429 * aout-target.h (MY_bfd_is_group_section): Define.
3430 * aout-tic30.c (MY_bfd_is_group_section): Define.
3431 * bfd.c (bfd_is_group_section): Define.
3432 * binary.c (binary_bfd_is_group_section): Define.
3433 * bout.c (b_out_bfd_is_group_section): Define.
3434 * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define.
3435 * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define.
3436 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust.
3437 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust.
3438 * coffcode.h (coff_bfd_is_group_section): Define.
3439 * i386msdos.c (msdos_bfd_is_group_section): Define.
3440 * i386os9k.c (os9k_bfd_is_group_section): Define.
3441 * ieee.c (ieee_bfd_is_group_section): Define.
3442 * ihex.c (ihex_bfd_is_group_section): Define.
3443 * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define.
3444 * mach-o.c (bfd_mach_o_bfd_is_group_section): Define.
3445 * mmo.c (mmo_bfd_is_group_section): Define.
3446 * nlm-target.h (nlm_bfd_is_group_section): Define.
3447 * oasys.c (oasys_bfd_is_group_section): Define.
3448 * pef.c (bfd_pef_bfd_is_group_section): Define.
3449 * ppcboot.c (ppcboot_bfd_is_group_section): Define.
3450 * srec.c (srec_bfd_is_group_section): Define.
3451 * tekhex.c (tekhex_bfd_is_group_section): Define.
3452 * versados.c (versados_bfd_is_group_section): Define.
3453 * vms.c (vms_bfd_is_group_section): Define.
3454 * xsym.c (bfd_sym_bfd_is_group_section): Define.
3455 * bfd-in2.h: Regenerate.
3456 * libbfd.h: Regenerate.
3457
20f0a1ad
AM
34582004-04-30 Alan Modra <amodra@bigpond.net.au>
3459
3460 * elflink.c (elf_gc_mark): Follow indirect and warning syms.
3461
f7458fc9 34622004-04-30 Hans-Peter Nilsson <hp@axis.com>
7dfb3b6b
HPN
3463
3464 * configure.in: Update version to 2.15.91.
3465 * configure: Regenerate.
3466
8a7140c3
NC
34672004-04-29 Brian Ford <ford@vss.fsi.com>
3468
3469 * bfd.c (bfd_get_sign_extend_vma): Add pe[i]-i386 case to DJGPP hack.
3470 * coffcode.h (DOT_DEBUG, GNU_LINKONCE_WI): Define.
3471 [!COFF_WITH_PE] (sec_to_styp_flags, styp_to_sec_flags): Use them.
3472 (coff_compute_section_file_positions) [RS6000COFF_C]: Likewise.
3473 [COFF_WITH_PE] (sec_to_styp_flags): Handle DWARF 2/3 .debug* and
3474 .gnu.linkonce.wi. sections.
3475 * pe-i386.c (COFF_SUPPORT_GNU_LINKONCE): Define.
3476 (COFF_SECTION_ALIGNMENT_ENTRIES): Add entries for .debug and
3477 .gnu.linkonce.wi..
3478 * pei-i386.c (COFF_SUPPORT_GNU_LINKONCE): Likewise.
3479 (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
3480
3e722fb5
CD
34812004-04-28 Chris Demetriou <cgd@broadcom.com>
3482
3483 * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
3484 * bfd-in2.h: Regenerate.
3485 * libbfd.h: Likewise.
3486
351e2b5a
DA
34872004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3488
3489 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and
3490 dup_common fields.
3491 (setup_sections): Use som_subspace_dictionary_record struct instead
3492 subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is
3493 is_comdat, is_common or dup_common.
3494 (som_prep_headers): Use som_subspace_dictionary_record struct. Set
3495 is_comdat, is_common and dup_common in section subspace_dict from
3496 copy_data.
3497 (som_begin_writing): Use som_subspace_dictionary_record struct.
3498 (som_finish_writing): Likewise.
3499 (som_bfd_derive_misc_symbol_info): Add support to set is_comdat,
3500 is_common and dup_common flags in info for symbol. Add comment
3501 regarding linker support for these fields. Slightly reorganize
3502 function.
3503 (som_build_and_write_symbol_table): Set is_comdat, is_common and
3504 dup_common fields in symbol table from symbol info.
3505 (bfd_som_set_subsection_attributes): Add comdat, common and dup_common
3506 arguments. Set corresponding fields in copy_data. Change all callers.
3507 (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library
3508 symbol table.
3509 (som_vec): Add SEC_LINK_ONCE to applicable section flags.
3510 * som.h (som_subspace_dictionary_record): Define.
3511 (som_copyable_section_data_struct): Add is_comdat, is_common and
3512 dup_common fields.
3513 (som_section_data_struct): Use som_subspace_dictionary_record struct
3514 instead of subspace_dictionary_record.
3515 (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype.
3516
3ba3bc8c
BW
35172004-04-27 Bob Wilson <bob.wilson@acm.org>
3518
3519 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size
3520 if set. Check reloc_done flag before applying relocations. Use
3521 output addresses, both when applying relocations and when comparing
3522 against the specified section.
3523 (elf_xtensa_relocate_section): Use output address to check if dynamic
3524 reloc is in a literal pool. Set section's reloc_done flag.
3525
beb8df56
L
35262004-04-27 H.J. Lu <hongjiu.lu@intel.com>
3527
3528 * elf32-sh64.c (elf_backend_section_flags): New. Defined.
3529 (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges
3530 section.
3531 (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges
3532 section.
3533
1829f4b2
AM
35342004-04-27 Alan Modra <amodra@bigpond.net.au>
3535
3536 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign
3537 structure field removed in 2004-04-24 patch.
3538 * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix.
3539
3540 * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>):
3541 Constify hdr arg.
3542 * elf32-arm.h (elf32_arm_section_flags): Likewise.
3543 * elf64-alpha.c (elf64_alpha_section_flags): Likewise.
3544 * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise.
3545 * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section
3546 field before calling elf_backend_section_flags.
3547
4030e8f6
CD
35482004-04-24 Chris Demetriou <cgd@broadcom.com>
3549
3550 * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16)
3551 (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove.
3552 (bfd_elf32_bfd_reloc_type_lookup): Remove cases for
3553 BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL,
3554 and BFD_RELOC_32_PCREL.
3555 (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16,
3556 R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32.
3557 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
3558 (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16.
3559 (mips_elf_next_relocation): Move comment about matching HI/LO
3560 relocations to...
3561 (_bfd_mips_elf_relocate_section): Here. Remove handling for
3562 R_MIPS_GNU_REL_HI16.
3563
3e27568f
CD
35642004-04-23 Chris Demetriou <cgd@broadcom.com>
3565
3566 * coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
3567 (mips_switch_reloc, mips_read_relocs, mips_relax_section)
3568 (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
3569 (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
3570 and update comments to reflect current usage.
3571 (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
3572 and MIPS_R_SWITCH, as well as several empty entries. Update comment
3573 for MIPS_R_PCREL16.
3574 (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
3575 (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
3576 for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
3577 (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
3578 type number to be MIPS_R_PCREL16.
3579 (mips_relocate_section): Remove support for link-time relaxation
3580 of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
3581 MIPS_R_RELLO, and MIPS_R_RELHI relocations.
3582 (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
3583 * ecoff.c (ecoff_indirect_link_order): Remove support for link-time
3584 relaxation of branches used by embedded-PIC.
3585 * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
3586 * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
3587 related members, update comment.
3588 * pe-mips.c: Remove disabled (commented-out and #if 0'd)
3589 code related to embedded-PIC.
3590 * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
3591 initialization of now-removed 'adjust' member of
3592 'struct ecoff_debug_info'.
3593
b32de0bc 35942004-04-23 Chris Demetriou <cgd@broadcom.com>
8472310d
CD
3595
3596 * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove.
3597
955af222
PB
35982004-04-21 Philip Blundell <pb@nexus.co.uk>
3599
3600 * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32
3601 relocs for locally defined symbols during -shared final link.
3602 (elf32_arm_final_link_relocate): Likewise.
3603
47a9f7b3
JJ
36042004-04-22 Jakub Jelinek <jakub@redhat.com>
3605
3606 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also
3607 ELF_LINK_POINTER_EQUALITY_NEEDED.
3608 (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED
3609 if r_type is not R_X86_64_PC32.
3610 (elf64_x86_64_finish_dynamic_symbol): If
3611 ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of
3612 SHN_UNDEF symbols.
3613
1f1799d5
KK
36142004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3615
3616 * elf32-sh.c (sh_elf_plt_sym_val): New function.
3617 (elf_backend_plt_sym_val): Define.
3618
0fdea5ce
AC
36192004-04-22 Andrew Cagney <cagney@redhat.com>
3620
3621 * opncls.c (bfd_alloc): Fix type of "wanted" in doco.
3622
5198ba8b
DA
36232004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3624
eb61d2d6 3625 * hpux-core.c (hpux_core_core_file_p): Add cast in call to
5198ba8b
DA
3626 make_bfd_asection.
3627 * som.c (som_set_section_contents): Constantify second argument.
3628 (hppa_som_gen_reloc_type): Abort for unsupported selectors.
3629 (som_object_setup): Rework to avoid warning.
3630 (setup_sections, som_write_fixups, bfd_section_from_som_symbol):
3631 Likewise.
3632
fe2e161a
AC
36332004-04-22 Andrew Cagney <cagney@redhat.com>
3634
3635 * cache.c (bfd_cache_close): Check for a previously closed file.
3636
4c45e5c9
JJ
36372004-04-22 Jakub Jelinek <jakub@redhat.com>
3638
3639 * bfd.c (bfd_get_synthetic_symtab): Define.
3640 * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
3641 NAME##_get_synthetic_symtab.
3642 (struct bfd_target): Add _bfd_get_synthetic_symtab.
3643 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
3644 * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
3645 relplt_name fields.
3646 (_bfd_elf_get_synthetic_symtab): New prototype.
3647 * elfcode.h (elf_get_synthetic_symtab): Define.
3648 * elf.c (_bfd_elf_get_synthetic_symtab): New function.
3649 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
3650 (elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
3651 (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
3652 * bfd-in2.h: Rebuilt.
3653 * libbfd.h: Rebuilt.
3654 * elf32-i386.c (elf_i386_plt_sym_val): New function.
3655 (elf_backend_plt_sym_val): Define.
3656 * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
3657 (elf_backend_plt_sym_val): Define.
3658 * elf32-s390.c (elf_s390_plt_sym_val): New function.
3659 (elf_backend_plt_sym_val): Define.
3660 * elf64-s390.c (elf_s390_plt_sym_val): New function.
3661 (elf_backend_plt_sym_val): Define.
3662 * elf32-sparc (elf32_sparc_plt_sym_val): New function.
3663 (elf_backend_plt_sym_val): Define.
3664 * elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
3665 (elf_backend_plt_sym_val): Define.
3666 * elf32-ppc.c (ppc_elf_plt_sym_val): New function.
3667 (elf_backend_plt_sym_val): Define.
3668 * aout-target.h (MY_get_synthetic_symtab): Define.
3669 * aout-tic30.c (MY_get_synthetic_symtab): Define.
3670 * coff-rs6000.c (rs6000coff_vec): Add
3671 _bfd_nodynamic_get_synthetic_symtab.
3672 (pmac_xcoff_vec): Likewise.
3673 * coff64-rs6000.c (rs6000coff64_vec): Add
3674 _bfd_nodynamic_get_synthetic_symtab.
3675 (aix5coff64_vec): Likewise.
3676 * sunos.c (MY_get_synthetic_symtab): Define.
3677 * vms.c (vms_get_synthetic_symtab): Define.
3678
d2f7ecac
NC
36792004-04-22 Nick Clifton <nickc@redhat.com>
3680
3681 * bfd.c (bfd_archive_filename): Return NULL on NULL input.
3682
fd99574b
NC
36832004-04-22 Peter Barada <peter@the-baradas.com>
3684
3685 * archures.c: Add bfd_mach_mcfv4e to bfd_architecture.
3686 * bfd2-in.h: Regenerate.
3687 * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[].
3688
23867d67
CD
36892004-04-21 Chris Demetriou <cgd@broadcom.com>
3690
3691 * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove.
3692 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove.
3693 * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs)
3694 (bfd_mips_elf32_create_embedded_relocs): Remove prototypes
3695 * bfd-in2.h: Regenerate.
3696
2c8c90bc
BW
36972004-04-21 Bob Wilson <bob.wilson@acm.org>
3698
3699 * elf32-xtensa.c (is_same_value): Add final_static_link argument and
3700 require relocations against a weak symbol to reference the same
3701 symbol hash entry if not a final, static link.
3702 (get_cached_value, add_value_map): Add final_static_link argument.
3703 (remove_literals): Pass final_static_link argument as needed.
3704
40838a72
AC
37052004-04-21 Andrew Cagney <cagney@redhat.com>
3706
3707 * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
3708 (struct opncls, opncls_btell, opncls_bseek, opncls_bread)
3709 (opncls_bwrite, opncls_bclose, opncls_bflush)
3710 (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
3711 bfd iovec that uses function callbacks.
3712 (bfd_close): Use the iovec's bclose.
3713 * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
3714 (cache_bclose, cache_bflush, cache_bstat)
3715 (cache_iovec): New functions and global variable, implement a
3716 cache "iovec", where applicable set bfd_error.
3717 (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
3718 * bfdio.c (struct bfd_iovec): Define.
3719 (real_read): Delete function.
3720 (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
3721 (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
3722 assume that bread and bwrite set bfd_error.
3723 * bfd.c (struct bfd): Add "iovec", update comments.
3724 * bfd-in2.h, libbfd.h: Re-generate.
3725
7f919c84
AC
37262004-04-21 Andrew Cagney <cagney@redhat.com>
3727
3728 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
3729
715df9b8
EB
37302004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
3731
3732 * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function.
3733 (bfd_elf_gc_sections): Fail if a shared object is being created.
3734 Do not fail if dynamic sections have been created. Instead call
3735 elf_gc_mark_dynamic_ref_symbol to mark sections that contain
3736 dynamically referenced symbols. Do not mark the whole graph
3737 rooted at .eh_frame, only the section proper.
3738
6482c264
NC
37392004-04-20 DJ Delorie <dj@redhat.com>
3740
3741 * reloc.c: Add BFD_RELOC_32_SECREL.
3742 * bfd-in2.h: Regenerate.
3743 * libbfd.h: Likewise.
3744 * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32.
3745 (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it.
3746 (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise.
3747
4dc570c2
JJ
37482004-04-19 Jakub Jelinek <jakub@redhat.com>
3749
3750 * elf32-sparc.c (elf32_sparc_relocate_section): Handle
3751 relocs against hidden/protected undefweak symbols properly.
3752 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
3753
0b60d5d3
MK
37542004-04-18 Mark Kettenis <kettenis@gnu.org>
3755
3756 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
3757 * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC
3758 core files.
3759
d48bdb99
AM
37602004-04-17 Brian Ford <ford@vss.fsi.com>
3761
3762 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero
3763 filepos for the SizeOfHeaders field.
3764 (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc
3765 overflow.
3766 (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment.
3767
57a1784e
AM
37682004-04-16 Alan Modra <amodra@bigpond.net.au>
3769
3770 * simple.c (bfd_simple_get_relocated_section_contents): Don't
3771 change reloc_done. Set and restore _cooked_size.
3772 (RETURN): Delete.
3773
d1ad3f6f
MK
37742004-04-15 Mark Kettenis <kettenis@gnu.org>
3775
3776 * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX
3777 core files.
3778
3d1bca9d
NC
37792004-04-15 Nick Clifton <nickc@redhat.com>
3780
3781 * bfd.c (bfd_archive_filename): Catch NULL bfd pointers.
3782
019b892f
AM
37832004-04-15 Alan Modra <amodra@bigpond.net.au>
3784
3785 * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change.
3786
15b43f48
AM
37872004-04-15 H.J. Lu <hongjiu.lu@intel.com>
3788
3789 * elflink.c (_bfd_elf_merge_symbol): Treat weak as strong only
3790 when it is a definition.
3791
6de00a78
AM
37922004-04-14 Alan Modra <amodra@bigpond.net.au>
3793
3794 * elf32-sparc.c (elf32_sparc_relocate_section): Don't abort
3795 when statically linking PIC code.
3796 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
3797
279500de
TS
37982004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3799
3800 * config.bfd: Remove mips*-*-mach3* and mips*-dec-mach3* targets.
3801 * configure.in: Remove mips-dec-bsd*, mips-dec-mach3*, mips-*-mach3*
3802 targets amd aout_mips_big_vec, aout_mips_little_vec target vectors.
3803 * configure: Regenerate.
3804
ccf2f652
RS
38052004-04-08 Richard Sandiford <rsandifo@redhat.com>
3806
3807 * elflink.c: Include libiberty.h.
3808 * Makefile.am (elflink.lo): Depend on libiberty.h.
3809 * Makefile.in: Regenerate.
3810
ca07892d
DJ
38112004-04-06 Daniel Jacobowitz <drow@mvista.com>
3812
3813 * elfxx-mips.c (MIPS_ELF_STUB_SECTION_NAME): Always use
3814 ".MIPS.stubs".
3815
a5a58ba4
L
38162004-04-05 H.J. Lu <hongjiu.lu@intel.com>
3817
3818 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Always
3819 reserve the memory for dynamic linker
3820
24d18d30
MK
38212004-04-05 Mark Kettenis <kettenis@gnu.org>
3822
3823 * netbsd-core.c (CORE_WCOOKIE_OFFSET): New define.
3824 (netbsd_core_file_p): Create a .wcookie section for OpenBSD/sparc.
3825
a4d7b4b5
L
38262004-04-02 H.J. Lu <hongjiu.lu@intel.com>
3827
3828 * elf32-cr16c.c (elf32_cr16c_relocate_section): Use
3829 RELOC_FOR_GLOBAL_SYMBOL.
3830 (elf32_cr16c_add_symbol_hook): Remove const from Elf_Internal_Sym.
3831
1f433d93
L
38322004-04-02 H.J. Lu <hongjiu.lu@intel.com>
3833
3834 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
3835 R_ARM_ALU* only if OLD_ARM_ABI is not defined.
3836
e489d0ae
PB
38372004-04-01 Paul Brook <paul@codesourcery.com>
3838
3839 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.
3840 * elf32-arm.h (struct elf32_elf_section_map): New.
3841 (struct _arm_elf_section_data): New.
3842 (elf32_arm_section_data): Define.
3843 (struct elf32_arm_link_hash_table): Add byteswap_code.
3844 (elf32_arm_link_hash_table_create): Initialize byteswap_code.
3845 (bfd_elf32_arm_process_before_allocation): Add byteswap_code.
3846 (elf32_arm_post_process_headers): Set EF_ARM_BE8.
3847 (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook,
3848 elf32_arm_compare_mapping, elf32_arm_write_section): New functions.
3849 (bfd_elf32_new_section_hook, elf_backend_write_section,
3850 elf_backend_link_output_symbol_hook): Define.
3851
66a695f0
NC
38522004-04-01 Andy Chittenden <achittenden@bluearc.com>
3853
3854 * stabs.c (struct stab_link_includes_totals): Add field 'symb'
3855 that keeps the characters in a B_INCL..B_EINCL range.
3856 (_bfd_link_section_stabs): When computing the sum of the
3857 characters in a B_INCL..B_EINCL range also keep a copy of those
3858 characters. Use this information to distinguish between
3859 include sections that have the same sum and the same length
3860 but which are nevertheless unique.
3861
8375c36b
PB
38622004-03-31 Paul Brook <paul@codesourcery.com>
3863
3864 * elf32-arm.h (elf32_arm_final_link_relocate): Add R_ARM_ALU*.
3865 * elfarm-nabi.c (elf32_arm_howto_table): Ditto.
3866
a56b48eb
NC
38672004-03-31 Andy Chittenden <achittenden@bluearc.com>
3868
3869 * stabs.c (struct stab_link_includes_totals): Rename field 'total'
3870 to 'sum_chars' and add field 'num_chars'.
3871 (_bfd_link_section_stabs): When computing the sum of the
3872 characters in a B_INCL..B_EINCL range also keep a count of the
3873 number of characters. Use this information to help distinguish
3874 between include sections when have the same sum but which
3875 nevertheless are still unique.
3876
3d456464
NC
3877