* elf.c (assign_file_positions_for_segments): Set next_file_pos even
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
0ebdbb83
BW
12004-11-03 Bob Wilson <bob.wilson@acm.org>
2
3 * elf.c (assign_file_positions_for_segments): Set next_file_pos even
4 if there are no segments.
5
675b2ace
DJ
62004-11-02 Daniel Jacobowitz <dan@debian.org>
7
8 * config.bfd: Mark arm-*-oabi and thumb-*-oabi as obsolete.
9
58852c27
NC
102004-11-02 Nick Clifton <nickc@redhat.com>
11
12 * elf32-iq2000.c: Convert to ISO C90 formatting.
13
e6857c0c
HPN
142004-11-02 Hans-Peter Nilsson <hp@axis.com>
15
20288ed6 16 * elflink.c (_bfd_elf_create_got_section): Hide _GLOBAL_OFFSET_TABLE_.
e6857c0c 17
bf718458
L
182004-10-28 H.J. Lu <hongjiu.lu@intel.com>
19
20 * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle weak
21 undefined symbols for R_IA64_SECREL32MSB, R_IA64_SECREL32LSB,
22 R_IA64_SECREL64MSB and R_IA64_SECREL64LSB.
23
044ad7e3
KK
242004-10-28 Kaz Kojima <kkojima@rr.iij4u.or.jp>
25
26 * elf32-sh.c (tpoff): Take alignment into account.
27
d5cb4bb8
NC
282004-10-28 Nick Clifton <nickc@redhat.com>
29
30 * elf32-iq2000.c (iq2000_elf_relocate_section): Do nothing when
0d48eab6 31 performing a relocatable link.
d5cb4bb8
NC
32 (iq2000_elf_object_p): Do not set elf_bad_symtab. This is only
33 for MIPS ports under Irix.
34
5b5bb741
PB
352004-10-27 Richard Earnshaw <rearnsha@arm.com>
36
37 * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Handle
38 R_ARM_CALL and R_ARM_JUMP24 as aliases of R_ARM_PC24.
39 (elf32_arm_final_link_relocate): Ditto.
40 (arm_add_to_rel, elf32_arm_relocate_section): Ditto.
41 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto
42 (elf32_arm_adjust_dynamic_symbol): Ditto.
43 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_CALL and
44 R_ARM_JUMP32. Move R_ARM_R{REL32,ABS32,PC24,BASE}...
45 (elf32_arm_r_howto): ... To here.
46 (elf32_arm_howto_from_type): Use elf32_arm_r_howto.
47
97ecf322
L
482004-10-26 H.J. Lu <hongjiu.lu@intel.com>
49
50 PR 475
51 * elfxx-ia64.c (elfNN_ia64_relocate_section): Correct
52 R_IA64_SECREL32MSB, R_IA64_SECREL32LSB, R_IA64_SECREL64MSB
53 and R_IA64_SECREL64LSB.
54
3e3b46e5
PB
552004-10-26 Paul Brook <paul@codesourcery.com>
56
57 * elflink.c (elf_finalize_dynstr): Skip shared aux structure.
58 (bfd_elf_size_dynamic_sections): Create default version definition.
59 (elf_link_output_extsym): Adjust for default symbol version.
60
aa69fe43
HPN
612004-10-24 Hans-Peter Nilsson <hp@bitrange.com>
62
278b4623
HPN
63 * mmo.c: Adjust to ISO C.
64
aa69fe43
HPN
65 * mmo.c (mmo_write_section_description): New function broken out
66 of mmo_internal_write_section.
67 (mmo_internal_write_section): For each of .text and .data, call
68 mmo_write_section_description before outputting contents if it has
69 nontrivially deducible vma or contents.
70 (mmo_has_leading_or_trailing_zero_tetra_p): New function.
71 (mmo_canonicalize_symtab): Adjust absolute symbols to .data
72 symbols if found within the .data address range.
73
ed040321
DJ
742004-10-24 Daniel Jacobowitz <dan@debian.org>
75
76 * opncls.c (bfd_close): Return TRUE for BFD_IN_MEMORY.
77
830866af
HPN
782004-10-24 Hans-Peter Nilsson <hp@bitrange.com>
79
80 * mmo.c (File Layout): Correct place of misplaced blurb about
81 special data.
82
5f417ca3
MK
832004-10-22 Mark Kettenis <kettenis@gnu.org>
84
85 * config.bfd: Add mips64*-*-openbsd.
86
823fc61f
BW
872004-10-21 Bob Wilson <bob.wilson@acm.org>
88
89 * elf32-xtensa.c (ebb_propose_action): Put declarations before
90 statements.
91
8697aafb
L
922004-10-21 H.J. Lu <hongjiu.lu@intel.com>
93
94 * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.94.
95 * configure: Regenerate.
96
dfeffb9f
L
972004-10-21 H.J. Lu <hongjiu.lu@intel.com>
98
99 PR 463
100 * aoutx.h (aout_link_input_section_std): Pass proper hash entry
101 to linker reloc_overflow callback.
102 (aout_link_input_section_ext): Likewise.
103 (aout_link_reloc_link_order): Likewise.
104 * coff-a29k.c (coff_a29k_relocate_section): Likewise.
105 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
106 Likewise.
107 (alpha_relocate_section): Likewise.
108 * coff-arm.c (coff_arm_relocate_section): Likewise.
109 * coff-h8300.c (h8300_reloc16_extra_cases): Likewise.
110 * coff-h8500.c (extra_case): Likewise.
111 * coff-i960.c (coff_i960_relocate_section): Likewise.
112 * coff-mcore.c (coff_mcore_relocate_section): Likewise.
113 * coff-mips.c (mips_relocate_section): Likewise.
114 * coff-or32.c (coff_or32_relocate_section): Likewise.
115 * coff-ppc.c (coff_ppc_relocate_section): Likewise.
116 * coff-rs6000.c (xcoff_ppc_relocate_section): Likewise.
117 * coff-sh.c (sh_relocate_section): Likewise.
118 * coff-tic80.c (coff_tic80_relocate_section): Likewise.
119 * coff-w65.c (w65_reloc16_extra_cases): Likewise.
120 * coff-z8k.c (extra_case): Likewise.
121 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
122 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
123 (_bfd_coff_generic_relocate_section): Likewise.
124 * ecoff.c (ecoff_reloc_link_order): Likewise.
125 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
126 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
127 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
128 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
129 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
130 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
131 * elf32-cris.c (cris_elf_relocate_section): Likewise.
132 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
133 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
134 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
135 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
136 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
137 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
138 * elf32-i370.c (i370_elf_relocate_section): Likewise.
139 * elf32-i386.c (elf_i386_relocate_section): Likewise.
140 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
141 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
142 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
143 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
144 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
145 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
146 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
147 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
148 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
149 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
150 * elf32-s390.c (elf_s390_relocate_section): Likewise.
151 * elf32-sh.c (sh_elf_relocate_section): Likewise.
152 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
153 * elf32-v850.c (v850_elf_relocate_section): Likewise.
154 * elf32-vax.c (elf_vax_relocate_section): Likewise.
155 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
156 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
157 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
158 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
159 * elf64-s390.c (elf_s390_relocate_section): Likewise.
160 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
161 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
162 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
163 * elflink.c (elf_reloc_link_order): Likewise.
164 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
165 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
166 (_bfd_elf_mips_get_relocated_section_contents): Likewise.
167 * linker.c (_bfd_generic_reloc_link_order): Likewise.
168 * pdp11.c (pdp11_aout_link_input_section): Likewise.
169 (aout_link_reloc_link_order): Likewise.
170 * reloc.c (bfd_generic_get_relocated_section_contents):
171 Likewise.
172 * xcofflink.c (xcoff_reloc_link_order): Likewise.
173 * simple.c (simple_dummy_reloc_overflow): Updated.
174
1715e0e3
AS
1752004-10-20 Andreas Schwab <schwab@suse.de>
176
177 * elf32-m68k.c (elf_m68k_plt_sym_val): New function.
178 (elf_backend_plt_sym_val): Define.
179
db3d41a8
DS
1802004-10-19 Danny Smith <dannysmith@users.sourceforege.net>
181
182 * config.bfd: Set targ_underscore=yes for PE COFF targets
183
4b85d634
AM
1842004-10-19 Alan Modra <amodra@bigpond.net.au>
185
186 * elf64-ppc.c (opd_entry_value): Handle --just-symbols objects.
187 (ppc64_elf_edit_opd): Likewise.
188
6df4d94c
MM
1892004-10-18 Mark Mitchell <mark@codesourcery.com>
190
191 * elfarm-nabi.c (ELF_DYNAMIC_SEC_FLAGS): Add comment.
192 * elflink.c (_bfd_elf_create_dynamic_sections): For a loaded PLT,
193 set SEC_ALLOC and SEC_LOAD.
194
00d962d1
NC
1952004-10-18 Nick Clifton <nickc@redhat.com>
196
197 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Compute
198 'name' for relocs against both local and global symbols.
199
b58f81ae
DJ
2002004-10-16 Daniel Jacobowitz <dan@debian.org>
201
202 * bfd-in2.h: Regenerate.
203 * bfd.c (struct bfd): Add no_export.
204 * elflink.c (elf_link_add_object_symbols): Handle no_export.
205
7d3f158f
AM
2062004-10-15 Alan Modra <amodra@bigpond.net.au>
207
208 * config.bfd: Whitespace cleanup.
209 * Makefile.am: Run "make dep-am"
210 * Makefile.in: Regenerate.
211
6d2cd210
JJ
2122004-10-15 Jakub Jelinek <jakub@redhat.com>
213
214 * elflink.c (struct already_linked_section): Removed.
215 (try_match_symbols_in_sections, already_linked): Removed.
216 (_bfd_elf_section_already_linked): Skip ^\.gnu\.linkonce\.[^.]*\.
217 prefix of section names when finding already_linked_table
218 chain. Compare section names. Instead of calling already_linked,
219 do it inline and only for sections in the same already_linked_list.
220
92e4ec35
AM
2212004-10-15 Alan Modra <amodra@bigpond.net.au>
222
223 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Add "info"
224 parameter. If called after _bfd_elf_write_section_eh_frame,
225 don't allow a -2 return unless need_* bit is already set, and
226 handle offsets adjusted for output_offset.
227 * elf-bfd.h (_bfd_elf_eh_frame_section_offset): Update prototype.
228 * elf.c (_bfd_elf_section_offset): Update call.
229
7bf6dede
L
2302004-10-13 H.J. Lu <hongjiu.lu@intel.com>
231
232 PR 440
233 * coffcode.h (coff_compute_section_file_positions): Cast to
234 bfd_vma when computing page alignment.
235
c0042f5d
MM
2362004-10-13 Mark Mitchell <mark@codesourcery.com>
237
238 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
239 offsets, not VMAs, for DT_VERSYM, DT_VERDEF, DT_VERNEED.
240
2a1b9a48
MM
2412004-10-12 Mark Mitchell <mark@codesourcery.com>
242
243 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Make .rel.plt
244 relocations use a virtual address, not a section offset.
245
b08b5071
BW
2462004-10-12 Bob Wilson <bob.wilson@acm.org>
247
248 * elf32-xtensa.c (elf_xtensa_get_private_bfd_flags): Delete.
249 (narrow_instruction, widen_instruction): Remove unnecessary calls to
250 xtensa_format_encode.
251 (ebb_propose_action): Inline call to ebb_add_proposed_action.
252 (ebb_add_proposed_action): Delete.
253
7fa3d080
BW
2542004-10-12 Bob Wilson <bob.wilson@acm.org>
255
256 * elf32-xtensa.c: Use ISO C90 formatting.
257
3656d5e3
PB
2582004-10-12 Paul Brook <paul@codesourcery.com>
259
260 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Rephrase error
261 message.
262
8cb51566
PB
2632004-10-12 Paul Brook <paul@codesourcery.com>
264
265 * elf32-arm.h: Support EABI version 4 objects.
266
1abc8597
AM
2672004-10-12 Alan Modra <amodra@bigpond.net.au>
268
269 PR 325
270 * cpu-i386.c (bfd_x86_64_arch_intel_syntax): Place last in chain.
271 Don't mark as default.
272 (bfd_x86_64_arch): Don't mark as default.
273
9e66c942
AM
2742004-10-12 Alan Modra <amodra@bigpond.net.au>
275
276 * elflink.c (enum action_discarded): New.
277 (elf_section_complain_discarded): Delete.
278 (elf_action_discarded): New function subsuming the above and also
279 controlling reloc behaviour.
1abc8597 280 (elf_link_input_bfd): Use it.
9e66c942 281
7f1204bb
JJ
2822004-10-11 Jakub Jelinek <jakub@redhat.com>
283
284 * elf.c (bfd_section_from_shdr): Handle SHT_GNU_LIBLIST.
285 (special_sections): Add .gnu.liblist and .gnu.conflict.
286 (assign_section_numbers): Handle SHT_GNU_LIBLIST.
287
87e5235d
AM
2882004-10-11 Alan Modra <amodra@bigpond.net.au>
289
290 PR 233
291 * elflink.c (elf_link_input_bfd): Try harder to support
292 relocations against symbols in removed linkonce sections.
293
2ad770c3
AM
2942004-10-11 Alan Modra <amodra@bigpond.net.au>
295
029446c4
AM
296 * elflink.c (elf_link_input_bfd): Revert PR 354 change.
297
2ad770c3
AM
298 PR 354
299 * elflink.c (elf_link_input_bfd): Check that relocs in SEC_ALLOC
300 sections do not reference symbols in non-SEC_ALLOC sections.
301
1da212d6
AM
3022004-10-11 Alan Modra <amodra@bigpond.net.au>
303
304 PR 437
305 * elflink.c (elf_link_sort_relocs): Don't bomb on unusual sections.
306 (_bfd_elf_link_omit_section_dynsym): Formatting.
307
f12123c0
AM
3082004-10-10 Alan Modra <amodra@bigpond.net.au>
309
310 * libbfd-in.h (BFD_ASSERT, BFD_FAIL): Wrap macro body in do while.
311 * libbfd.h: Regnerate.
312 * elf32-cris.c: Add missing semicolon to BFD_ASSERTs.
313 * elf32-frv.c: Likewise.
314 * elf32-m32r.c: Likewise.
315 * elf32-ppc.c: Likewise.
316 * elf64-hppa.c: Likewise.
317 * elfxx-ia64.c: Likewise.
318 * opncls.c: Likewise.
319
fda3ecf2
AM
3202004-10-10 Alan Modra <amodra@bigpond.net.au>
321
3472e2e9
AM
322 * elf-bfd.h (struct eh_frame_hdr_info): Add offsets_adjusted.
323 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Adjust
324 offsets stored in struct eh_cie_fde entries before doing other
325 work.
326
fda3ecf2
AM
327 * elf-bfd.h (struct eh_cie_fde): Add cie_inf, remove sec.
328 (struct eh_frame_hdr_info): Add last_cie_inf, remove last_cie_offset.
329 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete code
330 setting offsets for removed CIEs. Don't set "sec", instead set
331 cie_inf for FDEs. Keep a pointer to last struct eh_cie_fde for a
332 CIE in hdr_info. Only set make_relative and make_lsda_relative
333 for CIEs. Use pointers rather than array indices.
334 (_bfd_elf_eh_frame_section_offset): Test/set make_relative,
335 make_lsda_relative, need_* on cie_inf for FDEs.
336 (_bfd_elf_write_section_eh_frame): Adjust offset and new_offset for
337 section output_offset. Delete cie_offset, instead use cie_inf
338 pointer to CIE entry. Use need_relative and need_lsda_relative on
339 CIE entry for FDEs. Use pointers rather than array indices.
340
7db6994f
AM
3412004-10-09 Alan Modra <amodra@bigpond.net.au>
342
343 * coff-rs6000.c (rs6000coff_vec): Add initializer for
344 bfd_is_target_special_symbol.
345 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
346 * som.c (som_bfd_is_target_special_symbol): Define.
347
3c9458e9
NC
3482004-10-08 Nick Clifton <nickc@redhat.com>
349
350 * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.93.
351 * configure: Regenerate.
352 * bfd-in2.h: Regenerate.
353 * syms.c (bfd_is_target_special_symbol): New interface function.
354 Returns true when a symbol should be considered to be special.
7db6994f 355 * targets.c (bfd_target): Include bfd_is_target_special_symbol in
3c9458e9
NC
356 the symbol jump table.
357 * elf32-arm.h (elf32_arm_is_target_special_symbol): New function.
358 Return true iff the symbol is a mapping symbol.
359 (bfd_elf32_bfd_is_target_special_symbol): Define.
360 * elfxx-target.h: Provide a default definition for
361 bfd_is_target_special_symbol.
362 * aout-target.h: Likewise.
363 * aout-tic30.c: Likewise.
873d03ee 364 * binary.c: Likewise.
3c9458e9
NC
365 * coffcode.h: Likewise.
366 * i386msdos.c: Likewise.
367 * ieee.c: Likewise.
873d03ee 368 * ihex.c: Likewise.
3c9458e9
NC
369 * libaout.h: Likewise.
370 * libbfd-in.h: Likewise
371 * libecoff.h: Likewise.
372 * mach-o.c: Likewise.
373 * mmo.c: Likewise.
374 * nlm-target.h: Likewise.
375 * oasys.c: Likewise.
376 * pef.c: Likewise.
377 * ppcboot.c: Likewise.
378 * srec.c: Likewise.
379 * tekhex.c: Likewise.
380 * versados.c: Likewise.
381 * vms.c: Likewise.
382 * xcoff-target.h: Likewise.
383 * xsym.c: Likewise.
384 * libbfd.h: Regenerate.
385
d2b2c203
DJ
3862004-10-08 Daniel Jacobowitz <dan@debian.org>
387
388 * config.bfd: Include 64-bit support for i[3-7]86-*-solaris2*.
389 * elf64-x86-64.c (elf64_x86_64_section_from_shdr): New function.
390 (elf_backend_section_from_shdr): Define.
391
864274b0
AM
3922004-10-08 Alan Modra <amodra@bigpond.net.au>
393
394 * syms.c (bfd_is_local_label): Return false for file symbols.
395
43cd72b9 3962004-10-07 Bob Wilson <bob.wilson@acm.org>
85a5ac80 397 David Heine <dlheine@tensilica.com>
43cd72b9
BW
398
399 * elf32-xtensa.c (elf32xtensa_size_opt): New global variable.
400 (xtensa_default_isa): Global variable moved here from xtensa-isa.c.
401 (elf32xtensa_no_literal_movement): New global variable.
402 (elf_howto_table): Add entries for new relocations.
403 (elf_xtensa_reloc_type_lookup): Handle new relocations.
404 (property_table_compare): When addresses are equal, compare sizes and
405 various property flags.
406 (property_table_matches): New.
407 (xtensa_read_table_entries): Extend to read new property tables. Add
408 output_addr parameter to indicate that output addresses should be used.
409 Use bfd_get_section_limit.
410 (elf_xtensa_find_property_entry): New.
411 (elf_xtensa_in_literal_pool): Use elf_xtensa_find_property_entry.
412 (elf_xtensa_check_relocs): Handle new relocations.
413 (elf_xtensa_do_reloc): Use bfd_get_section_limit. Handle new
414 relocations. Use new xtensa-isa.h functions.
415 (build_encoding_error_message): Remove encode_result parameter. Add
416 new target_address parameter used to detect alignment errors.
417 (elf_xtensa_relocate_section): Use bfd_get_section_limit. Clean up
418 error handling. Use new is_operand_relocation function.
419 (elf_xtensa_combine_prop_entries, elf_xtensa_merge_private_bfd_data):
420 Use underbar macro for error messages. Formatting.
421 (get_const16_opcode): New.
422 (get_l32r_opcode): Add a separate flag for initialization.
423 (get_relocation_opnd): Operand number is no longer explicit in the
424 relocation. Change to decode the opcode and analyze its operands.
425 (get_relocation_slot): New.
426 (get_relocation_opcode): Add bfd parameter. Use bfd_get_section_limit.
427 Use new xtensa-isa.h functions to handle multislot instructions.
428 (is_l32r_relocation): Add bfd parameter. Use is_operand_relocation.
429 (get_asm_simplify_size, is_alt_relocation, is_operand_relocation,
430 insn_decode_len, insn_decode_opcode, check_branch_target_aligned,
431 check_loop_aligned, check_branch_target_aligned_address, narrowable,
432 widenable, narrow_instruction, widen_instruction, op_single_fmt_table,
433 get_single_format, init_op_single_format_table): New.
434 (elf_xtensa_do_asm_simplify): Add error_message parameter and use it
435 instead of calling _bfd_error_handler. Use new xtensa-isa.h functions.
436 (contract_asm_expansion): Add error_message parameter and pass it to
437 elf_xtensa_do_asm_simplify. Replace use of R_XTENSA_OP0 relocation
438 with R_XTENSA_SLOT0_OP.
439 (get_expanded_call_opcode): Extend to handle either L32R or CONST16
440 instructions. Use new xtensa-isa.h functions.
441 (r_reloc struct): Add new virtual_offset field.
442 (r_reloc_init): Add contents and content_length parameters. Set
443 virtual_offset field to zero. Add contents to target_offset field for
444 partial_inplace relocations.
445 (r_reloc_is_defined): Check for null.
446 (print_r_reloc): New debug function.
447 (source_reloc struct): Replace xtensa_operand field with pair of the
448 opcode and the operand position. Add is_abs_literal field.
449 (init_source_reloc): Specify operand by opcode/position pair. Set
450 is_abs_literal field.
451 (source_reloc_compare): When target_offsets are equal, compare other
452 fields to make sorting predictable.
453 (literal_value struct): Add is_abs_literal field.
454 (value_map_hash_table struct): Add has_last_loc and last_loc fields.
455 (init_literal_value): New.
456 (is_same_value): Replace with ...
457 (literal_value_equal): ... this function. Add comparisons of
458 virtual_offset and is_abs_literal fields.
459 (value_map_hash_table_init): Use bfd_zmalloc. Check for allocation
460 failure. Initialize has_last_loc field.
461 (value_map_hash_table_delete): New.
462 (hash_literal_value): Rename to ...
463 (literal_value_hash): ... this. Include is_abs_literal flag and
464 virtual_offset field in the hash value.
465 (get_cached_value): Rename to ...
466 (value_map_get_cached_value): ... this. Update calls to
467 literal_value_hash and literal_value_equal.
468 (add_value_map): Check for allocation failure. Update calls to
469 value_map_get_cached_value and literal_value_hash.
470 (text_action, text_action_list, text_action_t): New types.
471 (find_fill_action, compute_removed_action_diff, adjust_fill_action,
472 text_action_add, text_action_add_literal, offset_with_removed_text,
473 offset_with_removed_text_before_fill, find_insn_action,
474 print_action_list, print_removed_literals): New.
475 (offset_with_removed_literals): Delete.
476 (xtensa_relax_info struct): Add is_relaxable_asm_section, action_list,
477 fix_array, fix_array_count, allocated_relocs, relocs_count, and
478 allocated_relocs_count fields.
479 (init_xtensa_relax_info): Initialize new fields.
480 (reloc_bfd_fix struct): Add new translated field.
481 (reloc_bfd_fix_init): Add translated parameter and use it to set the
482 translated field.
483 (fix_compare, cache_fix_array): New.
484 (get_bfd_fix): Remove fix_list parameter and get all relax_info for the
485 section via get_xtensa_relax_info. Use cache_fix_array to set up
486 sorted fix_array and use bsearch instead of linear search.
487 (section_cache_t): New struct.
488 (init_section_cache, section_cache_section, clear_section_cache): New.
489 (ebb_t, ebb_target_enum, proposed_action, ebb_constraint): New types.
490 (init_ebb_constraint, free_ebb_constraint, init_ebb, extend_ebb_bounds,
491 extend_ebb_bounds_forward, extend_ebb_bounds_backward,
492 insn_block_decodable_len, ebb_propose_action, ebb_add_proposed_action):
493 New.
494 (retrieve_contents): Use bfd_get_section_limit.
495 (elf_xtensa_relax_section): Add relocations_analyzed flag. Update call
496 to compute_removed_literals. Free value_map_hash_table when no longer
497 needed.
498 (analyze_relocations): Check is_relaxable_asm_section flag. Call
499 compute_text_actions for all sections.
500 (find_relaxable_sections): Mark sections as relaxable if they contain
501 ASM_EXPAND relocations that can be optimized. Adjust r_reloc_init
502 call. Increment relax_info src_count field only for appropriate
503 relocation types. Remove is_literal_section check.
504 (collect_source_relocs): Use bfd_get_section_limit. Adjust calls to
505 r_reloc_init and find_associated_l32r_irel. Check
506 is_relaxable_asm_section flag. Handle L32R instructions with absolute
507 literals. Pass is_abs_literal flag to init_source_reloc.
508 (is_resolvable_asm_expansion): Use bfd_get_section_limit. Check for
509 CONST16 instructions. Adjust calls to r_reloc_init and
fda3ecf2 510 pcrel_reloc_fits. Handle weak symbols conservatively.
43cd72b9
BW
511 (find_associated_l32r_irel): Add bfd parameter and pass it to
512 is_l32r_relocation.
513 (compute_text_actions, compute_ebb_proposed_actions,
514 compute_ebb_actions, check_section_ebb_pcrels_fit,
515 check_section_ebb_reduces, text_action_add_proposed,
516 compute_fill_extra_space): New.
517 (remove_literals): Replace with ...
518 (compute_removed_literals): ... this function. Call
519 init_section_cache. Use bfd_get_section_limit. Sort internal_relocs.
520 Call xtensa_read_table_entries to get the property table. Skip
521 relocations other than R_XTENSA_32 and R_XTENSA_PLT. Use new
522 is_removable_literal, remove_dead_literal, and
fda3ecf2 523 identify_literal_placement functions.
43cd72b9
BW
524 (get_irel_at_offset): Rewrite to use bsearch on sorted relocations
525 instead of linear search.
526 (is_removable_literal, remove_dead_literal,
527 identify_literal_placement): New.
528 (relocations_reach): Update check for literal not referenced by any
529 PC-relative relocations. Adjust call to pcrel_reloc_fits.
530 (coalesce_shared_literal, move_shared_literal): New.
531 (relax_section): Use bfd_get_section_limit. Call
532 translate_section_fixes. Update calls to r_reloc_init and
533 offset_with_removed_text. Check new is_relaxable_asm_section flag.
534 Add call to pin_internal_relocs. Add special handling for
535 R_XTENSA_ASM_SIMPLIFY and R_XTENSA_DIFF* relocs. Use virtual_offset
536 info to calculate new addend_displacement variable. Replace code for
537 deleting literals with more general code to perform the actions
538 determined by the action_list for the section.
539 (translate_section_fixes, translate_reloc_bfd_fix): New.
540 (translate_reloc): Check new is_relaxable_asm_section flag. Call
541 find_removed_literal only if is_operand_relocation. Update call to
542 offset_with_removed_text. Use new target_offset and removed_bytes
543 variables.
544 (move_literal): New.
545 (relax_property_section): Use bfd_get_section_limit. Set new
546 is_full_prop_section flag and handle new property tables. Update calls
547 to r_reloc_init and offset_with_removed_text. Check
548 is_relaxable_asm_section flag. Handle expansion of zero-sized
549 unreachable entries, with use of offset_with_removed_text_before_fill.
550 For relocatable links, combine entries only for literal tables.
551 (relax_section_symbols): Check is_relaxable_asm_section flag. Update
552 calls to offset_with_removed_text. Translate st_size field for
553 function symbols.
554 (do_fix_for_relocatable_link): Change to return bfd_boolean to indicate
555 failure. Add contents parameter. Update call to get_bfd_fix. Update
556 call to r_reloc_init. Call _bfd_error_handler and return FALSE for
557 R_XTENSA_ASM_EXPAND relocs.
558 (do_fix_for_final_link): Add input_bfd and contents parameters. Update
559 call to get_bfd_fix. Include offset from contents for partial_inplace
560 relocations.
561 (is_reloc_sym_weak): New.
562 (pcrel_reloc_fits): Use new xtensa-isa.h functions.
563 (prop_sec_len): New.
564 (xtensa_is_property_section): Handle new property sections.
565 (is_literal_section): Delete.
566 (internal_reloc_compare): When r_offset matches, compare r_info and
567 r_addend to make sorting predictable.
568 (internal_reloc_matches): New.
569 (xtensa_get_property_section_name): Handle new property sections.
570 (xtensa_get_property_predef_flags): New.
571 (xtensa_callback_required_dependence): Use bfd_get_section_limit.
572 Update calls to xtensa_isa_init, is_l32r_relocation, and r_reloc_init.
573 * xtensa-isa.c (xtensa_default_isa): Moved to elf32-xtensa.c.
574 (xtisa_errno, xtisa_error_msg): New variables.
575 (xtensa_isa_errno, xtensa_isa_error_msg): New.
576 (xtensa_insnbuf_alloc): Add error handling.
577 (xtensa_insnbuf_to_chars): Add num_chars parameter. Update to
578 use xtensa_format_decode. Add error handling.
579 (xtensa_insnbuf_from_chars): Add num_chars parameter. Decode the
580 instruction length to find the number of bytes to copy.
581 (xtensa_isa_init): Add error handling. Replace calls to
582 xtensa_load_isa and xtensa_extend_isa with code to initialize lookup
583 tables in the xtensa_modules structure.
584 (xtensa_check_isa_config, xtensa_add_isa, xtensa_load_isa,
585 xtensa_extend_isa): Delete.
586 (xtensa_isa_free): Change to only free lookup tables.
587 (opname_lookup_compare): Replace with ...
588 (xtensa_isa_name_compare): ... this function. Use strcasecmp.
589 (xtensa_insn_maxlength): Rename to ...
590 (xtensa_isa_maxlength): ... this.
591 (xtensa_insn_length): Delete.
592 (xtensa_insn_length_from_first_byte): Replace with ...
593 (xtensa_isa_length_from_chars): ... this function.
594 (xtensa_num_opcodes): Rename to ...
595 (xtensa_isa_num_opcodes): ... this.
596 (xtensa_isa_num_pipe_stages, xtensa_isa_num_formats,
597 xtensa_isa_num_regfiles, xtensa_isa_num_stages,
598 xtensa_isa_num_sysregs, xtensa_isa_num_interfaces,
599 xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup,
600 xtensa_format_decode, xtensa_format_encode, xtensa_format_length,
601 xtensa_format_num_slots, xtensa_format_slot_nop_opcode,
602 xtensa_format_get_slot, xtensa_format_set_slot): New functions.
603 (xtensa_opcode_lookup): Add error handling.
604 (xtensa_decode_insn): Replace with ...
605 (xtensa_opcode_decode): ... this function, with new format and
606 slot parameters. Add error handling.
607 (xtensa_encode_insn): Replace with ...
608 (xtensa_opcode_encode): ... this function, which does the encoding via
609 one of the entries in the "encode_fns" array. Add error handling.
610 (xtensa_opcode_name): Add error handling.
611 (xtensa_opcode_is_branch, xtensa_opcode_is_jump, xtensa_opcode_is_loop,
612 xtensa_opcode_is_call): New.
613 (xtensa_num_operands): Replace with ...
614 (xtensa_opcode_num_operands): ... this function. Add error handling.
615 (xtensa_opcode_num_stateOperands,
616 xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses,
617 xtensa_opcode_funcUnit_use, xtensa_operand_name,
618 xtensa_operand_is_visible): New.
619 (xtensa_get_operand, xtensa_operand_kind): Delete.
620 (xtensa_operand_inout): Add error handling and special-case for
621 "sout" operands.
622 (xtensa_operand_get_field, xtensa_operand_set_field): Rewritten to
623 operate on one slot of an instruction. Added error handling.
624 (xtensa_operand_encode): Handle default operands with no encoding
625 functions. Check for success by comparing against decoded value.
626 Add error handling.
627 (xtensa_operand_decode): Handle default operands. Return decoded value
628 through argument pointer. Add error handling.
629 (xtensa_operand_is_register, xtensa_operand_regfile,
630 xtensa_operand_num_regs, xtensa_operand_is_known_reg): New.
631 (xtensa_operand_isPCRelative): Rename to ...
632 (xtensa_operand_is_PCrelative): ... this. Add error handling.
633 (xtensa_operand_do_reloc, xtensa_operand_undo_reloc): Return value
634 through argument pointer. Add error handling.
635 (xtensa_stateOperand_state, xtensa_stateOperand_inout,
636 xtensa_interfaceOperand_interface, xtensa_regfile_lookup,
637 xtensa_regfile_lookup_shortname, xtensa_regfile_name,
638 xtensa_regfile_shortname, xtensa_regfile_view_parent,
639 xtensa_regfile_num_bits, xtensa_regfile_num_entries,
640 xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits,
641 xtensa_state_is_exported, xtensa_sysreg_lookup,
642 xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number,
643 xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name,
644 xtensa_interface_num_bits, xtensa_interface_inout,
645 xtensa_interface_has_side_effect, xtensa_funcUnit_lookup,
646 xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New.
647 * xtensa-modules.c: Rewrite to use new data structures.
648 * reloc.c (BFD_RELOC_XTENSA_DIFF8, BFD_RELOC_XTENSA_DIFF16,
649 BFD_RELOC_XTENSA_DIFF32, BFD_RELOC_XTENSA_SLOT0_OP,
650 BFD_RELOC_XTENSA_SLOT1_OP, BFD_RELOC_XTENSA_SLOT2_OP,
651 BFD_RELOC_XTENSA_SLOT3_OP, BFD_RELOC_XTENSA_SLOT4_OP,
652 BFD_RELOC_XTENSA_SLOT5_OP, BFD_RELOC_XTENSA_SLOT6_OP,
653 BFD_RELOC_XTENSA_SLOT7_OP, BFD_RELOC_XTENSA_SLOT8_OP,
654 BFD_RELOC_XTENSA_SLOT9_OP, BFD_RELOC_XTENSA_SLOT10_OP,
655 BFD_RELOC_XTENSA_SLOT11_OP, BFD_RELOC_XTENSA_SLOT12_OP,
656 BFD_RELOC_XTENSA_SLOT13_OP, BFD_RELOC_XTENSA_SLOT14_OP,
657 BFD_RELOC_XTENSA_SLOT0_ALT, BFD_RELOC_XTENSA_SLOT1_ALT,
658 BFD_RELOC_XTENSA_SLOT2_ALT, BFD_RELOC_XTENSA_SLOT3_ALT,
659 BFD_RELOC_XTENSA_SLOT4_ALT, BFD_RELOC_XTENSA_SLOT5_ALT,
660 BFD_RELOC_XTENSA_SLOT6_ALT, BFD_RELOC_XTENSA_SLOT7_ALT,
661 BFD_RELOC_XTENSA_SLOT8_ALT, BFD_RELOC_XTENSA_SLOT9_ALT,
662 BFD_RELOC_XTENSA_SLOT10_ALT, BFD_RELOC_XTENSA_SLOT11_ALT,
663 BFD_RELOC_XTENSA_SLOT12_ALT, BFD_RELOC_XTENSA_SLOT13_ALT,
664 BFD_RELOC_XTENSA_SLOT14_ALT): Add new relocations.
665 * Makefile.am (xtensa-isa.lo, xtensa-modules.lo): Update dependencies.
666 * Makefile.in: Regenerate.
667 * bfd-in2.h: Likewise.
668 * libbfd.h: Likewise.
669
99022dfb
RS
6702004-10-07 Richard Sandiford <rsandifo@redhat.com>
671
672 * elf64-mips.c (mips_elf64_write_rel): Use STN_UNDEF for relocs
673 against the absolute section.
674 (mips_elf64_write_rela): Likewise.
675
b67ae299
NC
6762004-10-07 Jan Beulich <jbeulich@novell.com>
677
678 * elf.c (elf_find_function): Don't generally check for matching
679 section, just for non-file symbols. Remove redunant comparison
680 for the latter.
681 * elf32-arm.h (arm_elf_find_function): Likewise.
682
8fdd7217
NC
6832004-10-07 Jeff Baker <jbaker@qnx.com>
684
685 * elflink.c (_bfd_elf_add_dynamic_entry): Add code to warn if
686 adding a DT_TEXTREL to a shared object and --warn-shared-textrel
687 was specified.
688
073a2dc3
RM
6892004-10-04 Roland McGrath <roland@redhat.com>
690
691 * hash.c (bfd_hash_set_default_size): Use const for table.
692 Use size_t instead of int for variable compared to sizeof results.
693
7785be14
AM
6942004-10-05 Alan Modra <amodra@bigpond.net.au>
695
696 PR 425
697 * syms.c (_bfd_stab_section_find_nearest_line): Ignore R_*_NONE relocs.
698
40a18ebd
NC
6992004-10-01 Paul Brook <paul@codesourcery.com>
700
701 * elf32-arm.h (elf32_arm_fake_sections,
702 is_arm_elf_unwind_section_name, elf32_arm_section_from_shdr): New
703 functions.
704 (elf_backend_fake_sections, elf_backend_section_from_shdr): Define.
705
8935b81f
AM
7062004-10-01 Alan Modra <amodra@bigpond.net.au>
707
708 * elf-bfd.h (struct eh_cie_fde): Add need_relative and
709 need_lsda_relative.
710 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Set
711 need_relative or need_lsda_relative if we are processing an
712 offset for a reloc on a FDE initial loc or LSDA field
713 respectively.
714 (_bfd_elf_write_section_eh_frame): Test need_relative and
715 need_lsda_relative in place of corresponding make_* field
716 when deciding to use pc-relative encodings.
717
eeac373a
PB
7182004-09-30 Paul Brook <paul@codesourcery.com>
719
720 * elf32-arm.h (bfd_elf32_arm_set_target_relocs): Handle "abs"
721 target2 relocation type.
722
7479dfd4
L
7232004-09-30 H.J. Lu <hongjiu.lu@intel.com>
724
725 PR 414
726 * elflink.c (_bfd_elf_merge_symbol): Check TLS symbol.
727
0dd132b6
NC
7282004-09-30 Paul Brook <paul@codesourcery.com>
729
730 * reloc.c: Add BFD_RELOC_ARM_SMI.
731 * bfd-in2.h: Regenerate.
732 * libbfd.h: Ditto.
733
1ba54ee0
AM
7342004-09-24 Alan Modra <amodra@bigpond.net.au>
735
736 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add output section
737 vma and output offset to address.
738 * simple.c (simple_save_output_info): Only set output section
739 and offset for debug sections, or those not already set up by
740 the linker.
741 (bfd_simple_get_relocated_section_contents): Update comment.
742
5efb6261
AM
7432004-09-24 Alan Modra <amodra@bigpond.net.au>
744
745 * elf.c (IS_LOADED): Delete.
746 (assign_file_positions_for_segments): Just test SEC_LOAD instead.
747 Restore SEC_HAS_CONTENTS test to the one place it was used prior
748 to 2004-09-22.
749
fca870e4
AM
7502004-09-23 Alan Modra <amodra@bigpond.net.au>
751
752 PR gas/396
753 * elf32-sparc.c (elf32_sparc_final_write_processing): Handle
754 bfd_mach_sparc_sparclet and bfd_mach_sparc_sparclite. Remove
755 redundant assignment of EM_SPARC.
756
c86696a3
BF
7572004-09-22 Brian Ford <ford@vss.fsi.com>
758
759 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
760 alignment for .rdata sections so sse[2] code works with gcc >= 3.3.3
761 constants.
762 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
763
73adb214
AM
7642004-09-22 Alan Modra <amodra@bigpond.net.au>
765
766 * elf32-ppc.c (ppc_elf_modify_segment_map): Delete.
767 (elf_backend_modify_segment_map): Don't define.
768
b301b248
AM
7692004-09-22 Alan Modra <amodra@bigpond.net.au>
770
771 * elf.c (IS_LOADED): Define.
772 (assign_file_positions_for_segments): Don't round up file offset of
773 PT_LOAD segments containing no SEC_LOAD sections, instead round down.
774 Delete code handling link script adjustment of lma. Do the adjust
775 in later code handling similar ajustments. Remove dead code error
776 check. Warn if section lma would require a negative offset
777 adjustment. Tweak lma adjustment to use p_filesz rather than p_memsz.
778 Use p_vaddr + p_memsz inside section loop in place of voff. Don't
779 update voff in section loop. Change voff in segment loop to be an
780 adjustment on top of "off". Set sec->filepos and update "off" later.
781 Test for loadable sections consistently using IS_LOADED. Similarly,
073a2dc3 782 test for alloc-only sections other than .tbss consistently.
b301b248
AM
783 Don't bother checking SEC_ALLOC in PT_LOAD segments. Remove FIXME.
784 Tidy PT_NOTE handling. Use %B and %A in error messages.
785 (assign_file_positions_except_relocs): Use %B in error message.
786
3f85e526
L
7872004-09-17 H.J. Lu <hongjiu.lu@intel.com>
788
789 * Makefile.am (AUTOMAKE_OPTIONS): Require 1.9.
790 (CONFIG_STATUS_DEPENDENCIES): New.
791 (Makefile): Removed.
792 (config.status): Likewise.
793 * Makefile.in: Regenerated.
794
eb043451
PB
7952004-09-17 Paul Brook <paul@codesourcery.com>
796
797 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add prototype.
798 (bfd_elf32_arm_process_before_allocation): Update prototype.
799 * bfd-in2.h: Regenerate.
800 * bfd/elf32-arm.h (elf32_arm_link_hash_table): Add target2_reloc.
801 (elf32_arm_link_hash_table_create): Set it.
802 (bfd_elf32_arm_process_before_allocation): Remove target1_is_rel.
803 (bfd_elf32_arm_set_target_relocs): New function.
804 (arm_real_reloc_type): New function.
805 (elf32_arm_final_link_relocate): Use it. Handle R_ARM_PREL31 and
806 R_ARM_GOT_PREL. Remove R_ARM_TARGET1.
807 (elf32_arm_gc_sweep_hook): Ditto.
808 (elf32_arm_check_relocs): Ditto.
809 (elf32_arm_relocate_section): Handle R_ARM_GOT_PREL.
810 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_PREL31 and
811 R_ARM_GOT_TARGET2.
812 (elf32_arm_got_prel): New variable.
813 (elf32_arm_howto_from_type): New function.
814 (elf32_arm_info_to_howto): Use it.
815 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PREL31 and
816 BFD_RELOC_ARM_TARGET2.
817 * libbfd.h: Regenerate.
818 * reloc.c: Add BFD_RELOC_ARM_TARGET2 and BFD_RELOC_ARM_PREL31.
819
f6e332e6
AM
8202004-09-17 Alan Modra <amodra@bigpond.net.au>
821
822 * ecoff.c: Update u.undef.next refs.
823 * elf64-ppc.c: Likewise.
824 * elflink.c: Likewise.
825 * linker.c: Likewise.
826 * xcofflink.c: Likewise.
827
828 * elf-bfd.h (struct elf_link_hash_entry): Rearrange. Add FIXME to
829 dynamic_def. Combine weakdef and elf_hash_value. Move vtable
830 fields to indirect struct.
831 * elf-m10300.c: Update u.weakdef refs.
832 * elf32-arm.h: Likewise.
833 * elf32-cris.c: Likewise.
834 * elf32-frv.c: Likewise.
835 * elf32-hppa.c: Likewise.
836 * elf32-i370.c: Likewise.
837 * elf32-i386.c: Likewise.
838 * elf32-m32r.c: Likewise.
839 * elf32-m68k.c: Likewise.
840 * elf32-ppc.c: Likewise.
841 * elf32-s390.c: Likewise.
842 * elf32-sh.c: Likewise.
843 * elf32-sparc.c: Likewise.
844 * elf32-vax.c: Likewise.
845 * elf32-xtensa.c: Likewise.
846 * elf64-alpha.c: Likewise.
847 * elf64-hppa.c: Likewise.
848 * elf64-ppc.c: Likewise.
849 * elf64-s390.c: Likewise.
850 * elf64-sh64.c: Likewise.
851 * elf64-sparc.c: Likewise.
852 * elf64-x86-64.c: Likewise.
853 * elfxx-ia64.c: Likewise.
854 * elfxx-mips.c: Likewise.
855 * elflink.c: Likewise. Also u.elf_hash_value.
856 (elf_gc_propagate_vtable_entries_used): Update for h->vtable
857 indirection.
858 (elf_gc_smash_unused_vtentry_relocs): Likewise.
859 (bfd_elf_gc_record_vtinherit): Alloc vtable.
860 (bfd_elf_gc_record_vtentry): Likewise.
861 * elf.c (_bfd_elf_link_hash_newfunc): Use memset.
862
90c0a373
AM
8632004-09-17 Alan Modra <amodra@bigpond.net.au>
864
865 * Makefile.am: Run "make dep-am".
866 * Makefile.in: Regenerate.
867 * bfd-in2.h: Regenerate.
868 * po/SRC-POTFILES.in: Regenerate.
869 * po/bfd.pot: Regenerate.
870
f5385ebf
AM
8712004-09-16 Alan Modra <amodra@bigpond.net.au>
872
873 * elf-bfd.h (struct elf_link_hash_entry): Replace elf_link_hash_flags
874 with bitfields. Make "type" and "other" bitfields too.
875 (ELF_LINK_HASH_REF_REGULAR, ELF_LINK_HASH_DEF_REGULAR,
876 ELF_LINK_HASH_REF_DYNAMIC, ELF_LINK_HASH_DEF_DYNAMIC,
877 ELF_LINK_HASH_REF_REGULAR_NONWEAK, ELF_LINK_HASH_DYNAMIC_ADJUSTED,
878 ELF_LINK_HASH_NEEDS_COPY, ELF_LINK_HASH_NEEDS_PLT, ELF_LINK_NON_ELF,
879 ELF_LINK_HIDDEN, ELF_LINK_FORCED_LOCAL, ELF_LINK_HASH_MARK,
880 ELF_LINK_NON_GOT_REF, ELF_LINK_DYNAMIC_DEF, ELF_LINK_DYNAMIC_WEAK,
881 ELF_LINK_POINTER_EQUALITY_NEEDED): Delete.
882 (ELF_COMMON_DEF_P, WILL_CALL_FINISH_DYNAMIC_SYMBOL): Update.
883 * elf-hppa.h: Update all uses of elf_link_hash_flags.
884 * elf-m10300.c: Likewise.
885 * elf.c: Likewise.
886 * elf32-arm.h: Likewise.
887 * elf32-cris.c: Likewise.
888 * elf32-frv.c: Likewise.
889 * elf32-hppa.c: Likewise.
890 * elf32-i370.c: Likewise.
891 * elf32-i386.c: Likewise.
892 * elf32-m32r.c: Likewise.
893 * elf32-m68k.c: Likewise.
894 * elf32-ppc.c: Likewise.
895 * elf32-s390.c: Likewise.
896 * elf32-sh-symbian.c: Likewise.
897 * elf32-sh.c: Likewise.
898 * elf32-sh64.c: Likewise.
899 * elf32-sparc.c: Likewise.
900 * elf32-vax.c: Likewise.
901 * elf32-xtensa.c: Likewise.
902 * elf64-alpha.c: Likewise.
903 * elf64-hppa.c: Likewise.
904 * elf64-ppc.c: Likewise.
905 * elf64-s390.c: Likewise.
906 * elf64-sh64.c: Likewise.
907 * elf64-sparc.c: Likewise.
908 * elf64-x86-64.c: Likewise.
909 * elflink.c: Likewise.
910 * elfxx-ia64.c: Likewise.
911 * elfxx-mips.c: Likewise.
912 * configure.in (AM_INIT_AUTOMAKE): Set version to 2.15.92.
913 * configure: Regenerate.
914 * aclocal.m4: Regenerate.
915
b6ee372a
AM
9162004-09-16 Alan Modra <amodra@bigpond.net.au>
917
918 * elf32-arm.h (elf32_arm_gc_sweep_hook): Add #ifndef OLD_ARM_ABI
919 around uses of R_ARM_TARGET1.
920 (elf32_arm_check_relocs): Likewise.
921
9c504268
PB
9222004-09-13 Paul Brook <paul@codesourcery.com>
923
924 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
925 prototype.
926 * bfd-in2.h: Regenerate.
927 * libbfd.h: Regenerate.
928 * elf32-arm.h (elf32_arm_link_hash_table): Add target1_is_rel.
929 (elf32_arm_link_hash_table_create): Set target1_is_rel.
930 (bfd_elf32_arm_process_before_allocation): Ditto.
931 (elf32_arm_final_link_relocate): Handle R_ARM_TARGET1.
932 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto.
933 * elfarm-nabi.c (elf32_arm_howto_table): Rename RELABS to TARGET1.
934 * reloc.c: Ditto.
935
94ea025a
JB
9362004-09-10 Joel Brobecker <brobecker@gnat.com>
937
938 * hpux-core.c (thread_section_p): New function.
939 (hpux_core_core_file_p): Fix computation of offset in call
940 to bfd_seek. Create a ".reg" section from an arbitrary
941 ".reg/<id>" section if none was created after having read
942 all sections.
943
24443139
AS
9442004-09-11 Andreas Schwab <schwab@suse.de>
945
946 * acinclude.m4: Fix spelling of ACX_NONCANONICAL_*.
947 * aclocal.m4: Rebuild.
948 * configure: Rebuild.
949
f4eae89c
JB
9502004-09-10 Joel Brobecker <brobecker@gnat.com>
951
952 * section.c (bfd_sections_find_if): Fix parameter name in
953 comment to match code.
954
e0638f70
AM
9552004-09-10 Alan Modra <amodra@bigpond.net.au>
956
957 * elf.c (assign_file_positions_except_relocs): Assign relocs
958 stored in a bfd section.
959
5e0f5ae3
HPN
9602004-09-08 Hans-Peter Nilsson <hp@axis.com>
961
962 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Reset
963 h->gotplt_refcount to 0, not -1.
964
ada1953e
HPN
9652004-09-07 Hans-Peter Nilsson <hp@axis.com>
966
967 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT,
968 case R_CRIS_32_GOTPLT>: For internal error message, handle NULL
969 symname.
970 (cris_elf_check_relocs) <case R_CRIS_32_PLT_PCREL>: Don't try to
971 handle symbol visibility here.
972
ee75fd95
AM
9732004-09-07 Alan Modra <amodra@bigpond.net.au>
974
975 * elf64-ppc.c (struct ppc_link_hash_table): Add stub_globals.
976 (is_ppc64_elf_target): Rename from is_ppc64_target. Update all
977 callers.
978 (ppc_stub_name): Remove trailing "+0" on stub name.
979 (create_linkage_sections): Create relocations for
980 branch lookup table when --emit-relocs as well as when --shared.
981 (ppc_build_one_stub): Emit relocs for long branch stubs. Adjust
982 relbrlt test. For --emit-stub-syms, always output a sym even when
983 one already exists on a plt call stub. Put stub type in the stub
984 symbol name.
985 (ppc_size_one_stub): Size long branch stub relocs. Adjust relbrlt
986 test.
987 (ppc64_elf_size_stubs): Count global sym stubs added. Zero
988 reloc_count in stub sections. Adjust relbrlt test.
989 (ppc64_elf_build_stubs): Adjust relbrlt test. Tweak stats output.
990 * elflink.c (bfd_elf_size_dynamic_sections): Fix comment typo.
991 (elf_link_input_bfd): Ignore symbol index zero relocs when checking
992 for relocs against discarded symbols. Fix comments.
993
229fcec5
MM
9942004-09-06 Mark Mitchell <mark@codesourcery.com>
995
996 * elf-bfd.h (_bfd_elf_make_dynamic_segment): Declare it.
997 * elf.c (_bfd_elf_make_dynamic_segment): New function, split out
998 from ...
999 (map_sections_to_segments): ... here. Use it. Assign a file
1000 position to the .dynamic section if it is not loadable, but part
1001 of the PT_DYNAMIC segment.
1002 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
1003 offsets, not VMAs, for the BPABI. Do not fill in the header in
1004 the .got.plt section for the BPABI.
1005 * elfarm-nabi.c (elf32_arm_symbian_modify_segment_map): Add a
1006 PT_DYNAMIC segment.
1007 (elf_backend_want_got_plt): Define to zero for Symbian OS.
073a2dc3 1008
9a0789ec
NC
10092004-09-06 Nick Clifton <nickc@redhat.com>
1010
1011 * elflink.c (elf_link_add_object_symbols): Set the error code to
1012 bfd_error_wrong_format when the input format does not match the
1013 output format.
1014
7b53ace3
AM
10152004-09-06 Alan Modra <amodra@bigpond.net.au>
1016
1017 * elf64-ppc.c (is_ppc64_target): New function, extracted from..
1018 (ppc64_elf_check_directives): ..here.
1019 (ppc64_elf_size_dynamic_sections): Use it here to check bfd type
1020 before accessing ppc64_elf_tdata.
1021 (ppc64_elf_finish_dynamic_sections): And here too.
1022
3e540f25
AM
10232004-09-04 Alan Modra <amodra@bigpond.net.au>
1024
1025 * bfd.c (_bfd_default_error_handler): Correct loop exit.
1026
e5a52504
MM
10272004-09-03 Mark Mitchell <mark@codesourcery.com>
1028
1029 * config.bfd (arm*-*-symbianelf*): Use OS-specific target vectors.
1030 * configure.in (bfd_elf32_bigarm_symbian_vec): Add it.
1031 (bfd_elf32_littlearm_symbian_vec): Likewise.
1032 * configure: Regenerated.
1033 * elf-bfd.h (elf_backend_data): Add dynamic_sec_flags.
1034 * elf32-arm.h (PLT_HEADER_SIZE): Do not define.
1035 (PLT_ENTRY_SIZE): Likewise.
1036 (bfd_vma_elf32_arm_symbian_plt_entry): New
1037 variable.
1038 (elf32_arm_link_hash_table): Add plt_header_size, plt_entry_size,
1039 and symbian_p.
1040 (create_got_section): Don't create sections when generating BPABI
1041 objects.
1042 (elf32_arm_create_dynamic_sections): Tidy.
1043 (elf32_arm_link_hash_table_create): Set plt_header_size,
1044 plt_entry_size, and symbian_p.
1045 (elf32_arm_check_relocs): Do not mark .rel.dyn as loadable when
1046 generating BPABI objects.
1047 (allocate_dynrelocs): Use htab->plt_header_size, not
1048 PLT_HEADER_SIZE. Do not add to .got.plt when
1049 generating BPABI objects.
1050 (elf32_arm_finish_dynamic_symbol): Generate Symbian OS PLTs.
1051 * elfarm-nabi.c: Add SymbianOS target vectors.
1052 * elflink.c (_bfd_elf_create_got_section): Use dynamic_sec_flags.
1053 (_bfd_elf_link_create_dynamic_sections): Likewise.
1054 * elfxx-target.h (ELF_DYNAMIC_SEC_FLAGS): New macro.
1055 (elfNN_bed): Use it.
1056 * targets.c (bfd_elf32_bigarm_symbian_vec): New variable.
1057 (bfd_elf32_littlearm_symbian_vec): Likewise.
1058 (_bfd_target_vector): Add them.
1059
6e3b6835
NC
10602004-09-03 Nick Clifton <nickc@redhat.com>
1061
1062 PR 360
1063 * coffcode.h (handle_COMDAT): Replace abort with an warning
1064 message and allow the scan to continue.
1065
595da8c5
AM
10662004-09-02 Alan Modra <amodra@bigpond.net.au>
1067
1068 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Use static_syms passed
1069 in when reading relocs, not our sorted syms. Remove unnecessary
1070 var.
1071
6723a9f4
EB
10722004-08-31 Eric Botcazou <ebotcazou@libertysurf.fr>
1073
1074 * elf.c (special_sections): Add .gnu.linkonce.b modelled on .bss.
1075
5464f5a1
NN
10762004-08-30 Nathanael Nerode <neroden@gcc.gnu.org>
1077
1078 * acinclude.m4: Require AC_CANONICAL_TARGET, not AC_CANONICAL_SYSTEM.
1079 Include ../config/acx.m4 and use ACX_NONCANONICAL_* where appropriate;
1080 replace uses of *_alias with *_noncanonical.
1081 * aclocal.m4: Rebuild with aclocal 1.4p6.
1082 * Makefile.in: Rebuild with automake 1.4p6.
1083 * doc/Makefile.in: Rebuild with automake 1.4p6.
1084 * configure.in: Autoupdate with autoupdate 2.59.
1085 * config.in: Regenerate with autoheader 2.59.
1086 * configure: Regnerate with autoconf 2.59.
1087
a7535cf3
AM
10882004-08-28 Alan Modra <amodra@bigpond.net.au>
1089
1090 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Copy input
1091 symbol pointer arrays before modifying.
1092
c9727e01
AM
10932004-08-28 Alan Modra <amodra@bigpond.net.au>
1094
b91e2ae2 1095 * bfd.c (bfd_get_synthetic_symtab): Pass counts and both symbol tables.
c9727e01
AM
1096 * elf-bfd.h (_bfd_elf_get_synthetic_symtab): Adjust.
1097 * elf.c (_bfd_elf_get_synthetic_symtab): Adjust.
1098 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Adjust.
b91e2ae2
AM
1099 * targets.c (struct bfd_target <_bfd_get_synthetic_symtab>): Adjust.
1100 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't read symbols.
1101 Use both symbol tables on non-relocatable objects. Use a common
1102 error exit. Fix "mid" warning.
c9727e01
AM
1103 * libbfd.h: Regenerate.
1104 * bfd-in2.h: Regenerate.
1105
699733f6
AM
11062004-08-28 Alan Modra <amodra@bigpond.net.au>
1107
1108 * elf64-ppc.c (ppc64_elf_branch_reloc): Check .opd is in a regular
1109 object file.
1110 (struct sfpr_def_parms): Save some space.
1111 (sfpr_define): Here too.
1112
1113 * elf64-ppc.c (compare_symbols): Put section syms first.
1114 (sym_exists_at): New function.
1115 (ppc64_elf_get_synthetic_symtab): Use relocs to find code entry
1116 points only for relocatable files. Use .opd section contents
1117 otherwise. Generally clean up the code.
1118
deb0e272
AM
11192004-08-27 Alan Modra <amodra@bigpond.net.au>
1120
1121 * elf64-ppc.c (STD_R0_0R1, STD_R0_0R12, LD_R0_0R1, LD_R0_0R12,
1122 LI_R12_0, STVX_VR0_R12_R0, LVX_VR0_R12_R0, MTLR_R0, SFPR_MAX): Define.
1123 (struct sfpr_def_parms): New.
1124 (sfpr_define): New function.
1125 (savegpr0, savegpr0_tail, restgpr0, restgpr0_tail): New functions.
1126 (savegpr1, savegpr1_tail, restgpr1, restgpr1_tail): New functions.
1127 (savefpr, savefpr0_tail, restfpr, restfpr0_tail): New functions.
1128 (savefpr1_tail, restfpr1_tail): New functions.
1129 (savevr, savevr_tail, restvr, restvr_tail): New functions.
1130 (MIN_SAVE_FPR, MAX_SAVE_FPR): Don't define.
1131 (ppc64_elf_func_desc_adjust): Use sfpr_define in place of existing
1132 code. Define all ABI mandated _save and _rest functions.
1133
85a84e7a
PB
11342004-08-26 Paul Brook <paul@codesourcery.com>
1135
deb0e272 1136 * elf32-arm.h (INTERWORK_FLAG): Return true for EABIv3 objects.
85a84e7a 1137
688c58f3
AM
11382004-08-26 Alan Modra <amodra@bigpond.net.au>
1139
1140 * elf32-m32r.c (m32r_elf_relocate_section): Don't compare with
1141 TRUE or FALSE.
1142
3e95eabc
AM
11432004-08-26 Alan Modra <amodra@bigpond.net.au>
1144
1145 * elf32-i386.c (elf_i386_relocate_section): Tweak last change so
1146 that pcrel correction is applied for R_386_PC32.
1147
f855931b
AM
11482004-08-25 Alan Modra <amodra@bigpond.net.au>
1149
1150 * elf32-i386.c (elf_i386_relocate_section): Zero section contents
1151 for R_386_32 and R_386_PC32 relocs against symbols defined in
1152 discarded sections.
1153
b18c562e
NC
11542004-08-25 Dmitry Diky <diwil@spec.ru>
1155
1156 * reloc.c (BFD_RELOC_MSP430_2X_PCREL,BFD_RELOC_MSP430_RL_PCREL):
1157 Add new relocations.
1158 * bfd-in2.h: Regenerate.
f855931b 1159 * libbfd.h: Regenerate.
b18c562e
NC
1160 * elf32-msp430.c: Clean-up code.
1161 (elf_msp430_howto_table): Add new relocation entries.
1162 (bfd_elf32_bfd_reloc_type_lookup): New relocation handlers.
1163 (msp430_elf_relax_section): New function.
1164 (msp430_elf_relax_delete_bytes): New function.
1165 (msp430_elf_symbol_address_p): New function.
1166
af705ba8
NC
11672004-08-24 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1168
1169 * elf32-m32r.c (m32r_elf_relocate_section): Handle
1170 R_M32R_SDA16_RELA in the same way as R_M32R_SDA16.
1171
ea5158d8
DJ
11722004-08-20 Daniel Jacobowitz <dan@debian.org>
1173
1174 * elflink.c (_bfd_elf_section_already_linked): Handle
1175 SEC_LINK_DUPLICATES_SAME_CONTENTS.
1176
49d934f1
MM
11772004-08-19 Mark Mitchell <mark@codesourcery.com>
1178
1179 * config.bfd (arm*-*-symbianelf*): New target.
1180 (arm*-*-eabi*): Likewise.
1181
039b3fef
AM
11822004-08-19 Alan Modra <amodra@bigpond.net.au>
1183
1184 * elf64-ppc.c (ppc_get_stub_entry): Change third param to a
1185 "struct ppc_link_hash_entry *".
1186 (ppc64_elf_relocate_section): Ditto for type of h. Introduce h_elf
1187 to satisfy RELOC_FOR_GLOBAL_SYMBOL.
1188
3f764659
JJ
11892004-08-19 Jakub Jelinek <jakub@redhat.com>
1190
1191 * elf64-ppc.c (ppc64_elf_edit_opd): Support 16 byte long .opd
1192 entries (where fd_aux overlaps next entry's fd_func).
1193 Add non_overlapping argument, use it.
1194 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, adjust_opd_syms,
1195 ppc64_elf_size_stubs, ppc64_elf_relocate_section,
1196 ppc64_elf_output_symbol_hook): Use address / 8 instead of address / 24
1197 as indexes into opd_sym_map/opd_adjust array.
1198 * elf64-ppc.h (ppc64_elf_edit_opd): Adjust prototype.
1199
c09bdfe5
AM
12002004-08-18 Alan Modra <amodra@bigpond.net.au>
1201
1202 * elf64-ppc.c (func_desc_adjust): Give undefined dot-symbols a value
1203 if we can look up their function descriptor in a regular file.
1204
271d0fc3
NC
12052004-08-18 Nick Clifton <nickc@redhat.com>
1206
1207 PR 324
1208 * cofflink.c (coff_link_add_symbols): Check that the comdat
1209 pointer in the coff_section_data structure has been initialised
1210 before using it.
1211
a010d60f
AM
12122004-08-18 Alan Modra <amodra@bigpond.net.au>
1213
1214 PR 338
1215 * elflink.c (bfd_elf_record_link_assignment): Add comment about
1216 changing bfd_link_hash_undefined to bfd_link_hash_new.
1217
90e3cdf2
JJ
12182004-08-17 Jakub Jelinek <jakub@redhat.com>
1219
1220 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Only define
1221 if not yet defined.
1222 * elf64-ppc.c (bfd_elf64_get_synthetic_symtab): Define.
1223 (synthetic_opd, synthetic_relocatable): New variables.
1224 (compare_symbols, compare_relocs): New helper routines.
1225 (ppc64_elf_get_synthetic_symtab): New function.
1226 * bfd.c (bfd_get_synthetic_symtab): Rename dynsyms argument
1227 to relsyms.
1228 * bfd-in2.h: Regenerated.
1229 * elf.c (_bfd_elf_get_synthetic_symtab): Rename dynsyms argument
1230 to relsyms. Return 0 if abfd is relocatable.
1231
7c2c8505
AM
12322004-08-17 Alan Modra <amodra@bigpond.net.au>
1233
1234 * elflink.h (elf_gc_sweep): Keep non-alloc, non-load sections.
1235
0367ecfb
NC
12362004-08-17 Nick Clifton <nickc@redhat.com>
1237
1238 * (is_arm_mapping_symbol_name): New function - return true
1239 when a symbol name matches the requirements for an ARM mapping
1240 symbol name.
1241 (arm_elf_find_function): New function based on
1242 elf_find_function in elf.c but skipping ARM mapping symbols
1243 and including thumb function symbols.
1244 (elf32_arm_find_nearest_line): Use arm_elf_find_function.
1245 (elf32_arm_output_symbol_hook): Use is_arm_mapping_symbol_name.
1246
2441e016
AM
12472004-08-17 Alan Modra <amodra@bigpond.net.au>
1248
1249 * elf64-ppc.c (ppc64_elf_branch_reloc): New function.
1250 (ppc64_elf_howto_raw): Use ppc64_elf_branch_reloc.
1251 (ppc64_elf_brtaken_reloc): Here too.
1252
35b0ce59
AM
12532004-08-17 Alan Modra <amodra@bigpond.net.au>
1254
1255 * elf64-ppc.c (add_symbol_adjust): Correct mismatched function
1256 symbol visibility.
1257 (ppc64_elf_check_directives): Check that we have the right hash
1258 table before proceeding.
1259
81688140
AM
12602004-08-17 Alan Modra <amodra@bigpond.net.au>
1261
1262 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add "deleted_section".
1263 (adjust_opd_syms): Attach opd syms for deleted entries to one of
1264 the sections that will be discarded.
1265
327c1315
AM
12662004-08-16 Alan Modra <amodra@bigpond.net.au>
1267
1268 * elflink.c (elf_section_complain_discarded): Ignore .fixup.
1269
45fc9e4a
AM
12702004-08-16 Alan Modra <amodra@bigpond.net.au>
1271
1272 * bfd.c (_bfd_default_error_handler): Account for doubled '%' in
1273 free space available.
1274
9dadfa79
AM
12752004-08-16 Alan Modra <amodra@bigpond.net.au>
1276
1277 * pdp11.c (struct pdp11_aout_reloc_external): Delete. Replace
f89c4dec 1278 occurrences with bfd_byte * thoughout file.
9dadfa79
AM
1279
1280 * coff-rs6000.c (do_shared_object_padding): Warning fix.
1281 (xcoff_write_armap_big): Likewise.
1282 (xcoff_write_archive_contents_old): Likewise.
1283 (xcoff_write_archive_contents_big): Likewise.
1284
1285 * elf64-mmix.c (mmix_elf_get_section_contents): Delete declaration.
1286
57e8b36a
NC
12872004-08-13 Nick Clifton <nickc@redhat.com>
1288
1289 * elf32-arm.h: Convert to ISO C90.
1290
a005f94e
AM
12912004-08-13 Alan Modra <amodra@bigpond.net.au>
1292
1293 PR 293
1294 * elf32-hppa.c (elf32_hppa_hide_symbol): Use init_refcount to
1295 zero the plt field.
1296
d003868e
AM
12972004-08-13 Alan Modra <amodra@bigpond.net.au>
1298
1299 * bfd.c (_bfd_default_error_handler): Handle %A and %B.
1300 (bfd_archive_filename, bfd_get_section_ident): Delete.
1301 * ecofflink.c (bfd_ecoff_debug_accumulate_other): Don't call
1302 bfd_archive_filename.
1303 * elflink.c (elf_link_input_bfd): Don't use callbacks->error_handler
1304 to warn about symbols in discarded sections. Use _bfd_error_handler.
1305 * aout-adobe.c (aout_adobe_callback): See below.
1306 * aout-cris.c (swap_ext_reloc_in): ..
1307 * coff-arm.c (find_thumb_glue, find_arm_glue,
1308 coff_arm_relocate_section, bfd_arm_process_before_allocation,
1309 coff_arm_merge_private_bfd_data, _bfd_coff_arm_set_private_flags,
1310 coff_arm_copy_private_bfd_data): ..
1311 * coff-i860.c (i860_reloc_processing): ..
1312 * coff-mcore.c (mcore_coff_unsupported_reloc,
1313 coff_mcore_relocate_section): ..
1314 * coff-ppc.c (coff_ppc_relocate_section): ..
1315 * coff-rs6000.c (xcoff_create_csect_from_smclas
1316 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
1317 sh_swap_insns, sh_relocate_section): ..
1318 * coff-tic54x.c (tic54x_reloc_processing): ..
1319 * coff-tic80.c (coff_tic80_relocate_section): ..
1320 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): ..
1321 * coffcode.h (styp_to_sec_flags, coff_slurp_line_table,
1322 coff_slurp_symbol_table, coff_classify_symbol,
1323 coff_slurp_reloc_table): ..
1324 * coffgen.c (_bfd_coff_read_string_table): ..
1325 * cofflink.c (coff_link_add_symbols, _bfd_coff_link_input_bfd,
1326 _bfd_coff_generic_relocate_section): ..
1327 * cpu-arm.c (bfd_arm_merge_machines): ..
1328 * cpu-sh.c (sh_merge_bfd_arch): ..
1329 * elf-hppa.h (elf_hppa_relocate_section): ..
1330 * elf.c (bfd_elf_string_from_elf_section, setup_group,
1331 _bfd_elf_setup_group_pointers, bfd_section_from_shdr,
1332 assign_section_numbers, _bfd_elf_symbol_from_bfd_symbol,
1333 copy_private_bfd_data, _bfd_elf_validate_reloc): ..
1334 * elf32-arm.h (find_thumb_glue, find_arm_glue,
1335 bfd_elf32_arm_process_before_allocation, elf32_thumb_to_arm_stub,
1336 elf32_arm_to_thumb_stub, elf32_arm_final_link_relocate,
1337 elf32_arm_relocate_section, elf32_arm_set_private_flags,
1338 elf32_arm_copy_private_bfd_data, elf32_arm_merge_private_bfd_data): ..
1339 * elf32-cris.c (cris_elf_relocate_section, cris_elf_check_relocs,
1340 cris_elf_merge_private_bfd_data
1341 * elf32-frv.c (elf32_frv_relocate_section, elf32_frv_check_relocs): ..
1342 * elf32-gen.c (elf32_generic_link_add_symbols): ..
1343 * elf32-hppa.c (hppa_add_stub, hppa_build_one_stub,
1344 elf32_hppa_check_relocs, get_local_syms, final_link_relocate,
1345 elf32_hppa_relocate_section): ..
1346 * elf32-i370.c (i370_elf_merge_private_bfd_data,
1347 i370_elf_check_relocs, i370_elf_relocate_section): ..
1348 * elf32-i386.c (elf_i386_info_to_howto_rel, elf_i386_check_relocs,
1349 elf_i386_relocate_section): ..
1350 * elf32-m32r.c (m32r_elf_relocate_section,
1351 m32r_elf_merge_private_bfd_data): ..
1352 * elf32-m68hc1x.c (m68hc12_add_stub,
1353 _bfd_m68hc11_elf_merge_private_bfd_data): ..
1354 * elf32-m68k.c (elf_m68k_relocate_section): ..
1355 * elf32-mcore.c (mcore_elf_unsupported_reloc,
1356 mcore_elf_relocate_section): ..
1357 * elf32-ppc.c (ppc_elf_merge_private_bfd_data, bad_shared_reloc,
1358 ppc_elf_check_relocs, ppc_elf_relocate_section,
1359 ppc_elf_begin_write_processing): ..
1360 * elf32-s390.c (elf_s390_check_relocs, invalid_tls_insn,
1361 elf_s390_relocate_section): ..
1362 * elf32-sh-symbian.c (sh_symbian_import_as,
1363 sh_symbian_process_embedded_commands,
1364 sh_symbian_relocate_section): ..
1365 * elf32-sh.c (sh_elf_relax_section, sh_elf_relax_delete_bytes,
1366 sh_elf_swap_insns, sh_elf_relocate_section, sh_elf_check_relocs,
1367 sh_elf_merge_private_data): ..
1368 * elf32-sparc.c (elf32_sparc_check_relocs,
1369 elf32_sparc_relocate_section,
1370 elf32_sparc_merge_private_bfd_data): ..
1371 * elf32-v850.c (v850_elf_check_relocs,
1372 v850_elf_merge_private_bfd_data): ..
1373 * elf32-xtensa.c (elf_xtensa_check_relocs,
1374 elf_xtensa_relocate_section, elf_xtensa_merge_private_bfd_data): ..
1375 * elf64-alpha.c (elf64_alpha_relax_with_lituse,
1376 elf64_alpha_relax_got_load, elf64_alpha_size_got_sections,
1377 elf64_alpha_relocate_section_r, elf64_alpha_relocate_section): ..
1378 * elf64-gen.c (elf64_generic_link_add_symbols): ..
1379 * elf64-ppc.c (ppc64_elf_merge_private_bfd_data, ppc_add_stub,
1380 ppc64_elf_check_relocs, ppc64_elf_edit_opd,
1381 ppc64_elf_relocate_section): ..
1382 * elf64-s390.c (elf_s390_check_relocs, invalid_tls_insn,
1383 elf_s390_relocate_section): ..
1384 * elf64-sh64.c (sh_elf64_relocate_section): ..
1385 * elf64-sparc.c (sparc64_elf_check_relocs,
1386 sparc64_elf_add_symbol_hook, sparc64_elf_relocate_section,
1387 sparc64_elf_merge_private_bfd_data): ..
1388 * elf64-x86-64.c (elf64_x86_64_check_relocs,
1389 elf64_x86_64_relocate_section): ..
1390 * elflink.c (_bfd_elf_add_default_symbol,
1391 _bfd_elf_link_assign_sym_version, elf_link_read_relocs_from_section,
1392 _bfd_elf_link_output_relocs, elf_link_add_object_symbols,
1393 bfd_elf_size_dynamic_sections, elf_link_output_extsym,
1394 elf_get_linked_section_vma, elf_fixup_link_order,
1395 bfd_elf_final_link, bfd_elf_gc_record_vtinherit,
1396 bfd_elf_gc_record_vtinherit, _bfd_elf_section_already_linked): ..
1397 * elfxx-ia64.c (elfNN_ia64_relax_section,
1398 elfNN_ia64_relocate_section, elfNN_ia64_merge_private_bfd_data): ..
1399 * elfxx-mips.c (mips_elf_perform_relocation,
1400 _bfd_mips_elf_check_relocs,
1401 _bfd_mips_elf_merge_private_bfd_data): ..
1402 * ieee.c (ieee_slurp_external_symbols): ..
1403 * ihex.c (ihex_bad_byte, ihex_scan, ihex_read_section): ..
1404 * libbfd.c (_bfd_generic_verify_endian_match): ..
1405 * linker.c (_bfd_generic_link_add_one_symbol,
1406 _bfd_generic_section_already_linked): ..
1407 * pdp11.c (translate_to_native_sym_flags): ..
1408 * pe-mips.c (coff_pe_mips_relocate_section): ..
1409 * peicode.h (pe_ILF_build_a_bfd): ..
1410 * srec.c (srec_bad_byte): ..
1411 * stabs.c (_bfd_link_section_stabs): ..
1412 * xcofflink.c (xcoff_link_add_symbols, xcoff_link_input_bfd): ..
1413 Replace all uses of bfd_archive_filename and bfd_get_section_ident
1414 with corresponding %B and %A in _bfd_error_handler format string.
1415 Replace occurrences of "fprintf (stderr," with _bfd_error_handler
1416 calls to use %A and %B. Fix "against symbol .. from section" and
1417 similar error messages. Combine multiple _bfd_error_handler calls
1418 where they were separated due to bfd_archive_filename deficiencies.
1419 * bfd-in2.h: Regenerate.
1420
6ba842b6
L
14212004-08-12 H.J. Lu <hongjiu.lu@intel.com>
1422
1423 * elf32-i386.c (elf_i386_relocate_section): Report unrecognized
1424 relocation.
1425
99877b66
AM
14262004-08-10 Alan Modra <amodra@bigpond.net.au>
1427
1428 * elf64-ppc.c (struct ppc_link_hash_entry): Add was_undefined.
1429 (struct ppc_link_hash_table): Remove no_multi_toc, multi_toc_needed.
1430 Make emit_stub_syms, stub_error and has_14bit_branch bit-fields.
1431 Add twiddled_syms.
1432 (link_hash_newfunc): Init was_undefined.
1433 (add_symbol_adjust): Don't set undefined dot symbols to defweak;
1434 Use undefweak instead.
1435 (ppc64_elf_check_directives): Fix undefs chain.
1436 (ppc64_elf_next_toc_section): Remove no_multi_toc and multi_toc_needed
1437 references.
1438 (ppc64_elf_size_stubs): Adjust for add_symbol_adjust change.
1439 (undo_symbol_twiddle, ppc64_elf_restore_symbols): New functions.
1440 * elf64-ppc.h (ppc64_elf_restore_symbols): Declare.
1441
ba3bee0b
JJ
14422004-08-09 Jakub Jelinek <jakub@redhat.com>
1443
1444 * elf64-x86-64.c (elf64_x86_64_relocate_section): For -fno-pic
1445 error, test input_section flags rather than sec.
1446
8387904d
AM
14472004-08-09 Alan Modra <amodra@bigpond.net.au>
1448
1449 * elf-bfd.h (struct elf_backend_data): Add
1450 elf_backend_archive_symbol_lookup.
1451 (_bfd_elf_archive_symbol_lookup): Declare.
1452 * elflink.c (_bfd_elf_archive_symbol_lookup): New function..
1453 (elf_link_add_archive_symbols): ..extracted from here. Call the
1454 backend version.
1455 * elfxx-target.h (elf_backend_archive_symbol_lookup): Provide default.
1456 (elfNN_bed): Init new field.
1457 * elf64-ppc.c (elf_backend_check_directives): Define.
1458 (elf_backend_archive_symbol_lookup): Define.
1459 (struct ppc_link_hash_table): Add tls_get_add_fd. Make tls_get_add
1460 a ppc_link_hash_entry pointer.
1461 (get_fdh): Move.
1462 (ppc64_elf_archive_symbol_lookup, opd_entry_value): New functions.
1463 (add_symbol_adjust, ppc64_elf_check_directives): New functions.
1464 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, func_desc_adjust,
1465 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup,
1466 ppc64_elf_tls_optimize, allocate_dynrelocs, ppc_type_of_stub,
1467 ppc_build_one_stub, ppc64_elf_size_stubs, ppc64_elf_relocate_section,
1468 ppc64_elf_finish_dynamic_symbol): Handle branch relocs to function
1469 descriptor symbols.
1470
b25116a9
AM
14712004-08-09 Alan Modra <amodra@bigpond.net.au>
1472
8843416a
AM
1473 * elf64-ppc.c (struct ppc_link_hash_entry): Expand adjust_done comment.
1474 (ppc64_elf_add_symbol_hook): Test for NULL section.
1475 (get_sym_h): Formatting.
1476 (ppc64_elf_size_stubs): Include reloc addend in value stored as
1477 stub target_value.
1478
b25116a9
AM
1479 * elf64-ppc.c (ppc64_elf_relocate_section): Combine handling of
1480 long branch stubs with code handling plt and r2off branch stubs.
1481
ccfa59ea
AM
14822004-08-09 Alan Modra <amodra@bigpond.net.au>
1483
1484 * elf-bfd.h (_bfd_elf_gc_mark): Declare.
1485 * elflink.c (elf_link_input_bfd): Formatting.
1486 (_bfd_elf_gc_mark): Rename from elf_gc_mark and make global. Adjust
1487 all callers.
1488 * elf64-ppc.c (struct ppc_link_hash_entry): Remove is_entry.
1489 (link_hash_newfunc): Don't set it.
1490 (ppc64_elf_copy_indirect_symbol): Nor copy it.
1491 (ppc64_elf_mark_entry_syms): Delete.
1492 (ppc64_elf_gc_mark_hook): Mark entry syms here. Also mark opd
1493 sections. Use get_opd_info.
1494 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Delete.
1495
4025353c
AM
14962004-08-09 Alan Modra <amodra@bigpond.net.au>
1497
4f800a42
AM
1498 * elf64-ppc.c (adjust_opd_syms): Fix merge error.
1499
06da1e8e
AM
1500 * elf64-ppc.c (struct ppc_link_hash_table): Remove have_undefweak.
1501 (func_desc_adjust): Don't set have_undefweak.
1502 (ppc64_elf_func_desc_adjust): Don't add an extr nop to sfpr.
1503 (ppc64_elf_relocate_section): NOP out calls to undefweak functions.
1504
34814b9f
AM
1505 * elf64-ppc.c (struct ppc_link_hash_entry): Make "oh" a
1506 "struct ppc_link_hash_entry *". Adjust all references.
1507 (ppc64_elf_hide_symbol): Correct a comment.
1508
4025353c
AM
1509 * elf64-ppc.c (get_opd_info): New function.
1510 (adjust_opd_syms): Use get_opd_info. Define removed symbols as zero.
1511 (ppc64_elf_edit_opd): Use get_opd_info. Check that sym has a dot
1512 before calling get_fdh. Test fdh rather than h before dereferencing
1513 fdh. Mark removed symbols in opd_adjust.
1514 (ppc64_elf_tls_optimize): Don't bother with opd adjustment here.
1515 (ppc64_elf_relocate_section): Use get_opd_info, and handle removed
1516 opd symbols.
1517 (ppc64_elf_output_symbol_hook): Likewise.
1518
db6579d4
PB
15192004-08-06 Paul Brook <paul@codesourcery.com>
1520
1521 * elfarm-nabi.c (elf32_arm_howto_table): Add new EABI relocations.
1522 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_RELABS32,
1523 BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32.
1524 * reloc.c: Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32
1525 and BFD_RELOC_ARM_SBREL32.
1526 * bfd-in2.h, bbfd.h: Regenerate.
1527
a4d0f181
TS
15282004-08-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1529
1530 * elfxx-mips.c (mips_elf_calculate_relocation): Test only for
1531 the dynamic link symbol actually in use.
1532
83774818
SC
15332004-08-01 Stephane Carrez <stcarrez@nerim.fr>
1534
1535 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Handle bfd_link_hash_new
1536
a4d0f181 15372004-07-31 Joel Brobecker <brobecker@gnat.com>
00b4930b
TS
1538 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1539
1540 * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Handle
1541 SHN_MIPS_TEXT and SHN_MIPS_DATA.
1542
185d09ad
L
15432004-07-30 H.J. Lu <hongjiu.lu@intel.com>
1544 Nick Clifton <nickc@redhat.com>
1545
1546 PR 290
1547 * bfd.c (_bfd_default_error_handler): Make it global.
1548
1549 * elf-bfd.h (elf_backend_data): Add link_order_error_handler.
1550
1551 * elf.c (assign_section_numbers): Cope gracefully with sections
1552 which have SHF_LINK_ORDER set but no sh_link set up.
1553 * elflink.c (elf_get_linked_section_vma): Likewise.
1554
1555 * elfxx-ia64.c (elf_backend_link_order_error_handler): New. Set
1556 it to NULL.
1557
1558 * elfxx-target.h (elf_backend_link_order_error_handler): New.
1559 Set it to _bfd_default_error_handler.
1560 (elfNN_bed): Add elf_backend_link_order_error_handler.
1561
1562 * libbfd-in.h (_bfd_default_error_handler): New.
1563
1564 * libbfd.h: Regenerated.
1565
7946e94a
JJ
15662004-07-30 Jakub Jelinek <jakub@redhat.com>
1567
1568 * archures.c (bfd_mach_sparc_64bit_p): Define.
1569 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Use it.
1570 * bfd-in2.h: Rebuilt.
1571
1d70c7fb
AO
15722004-07-29 Alexandre Oliva <aoliva@redhat.com>
1573
1574 Introduce SH2a support.
1575 2004-02-18 Corinna Vinschen <vinschen@redhat.com>
1576 * archures.c (bfd_mach_sh2a_nofpu): New.
1577 * bfd-in2.h: Rebuilt.
1578 * cpu-sh.c (SH2A_NOFPU_NEXT): New.
1579 (arch_info_struct): Add sh2a_nofpu.
1580 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu.
1581 2003-12-29 DJ Delorie <dj@redhat.com>
1582 * reloc.c: Add relocs for sh2a.
1583 * bfd-in2.h: Regenerate.
1584 * libbfd.hh: Regenerate.
1585 2003-12-01 Michael Snyder <msnyder@redhat.com>
1586 * archures.c (bfd_mach_sh2a): New.
1587 * bfd-in2.h: Rebuilt.
1588 * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums.
1589 (SH2A_NEXT): New.
1590 (arch_info_struct): Add sh2a.
1591 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a.
1592
404ed0cf
DA
15932004-07-28 Nick Clifton <nickc@redhat.com>
1594 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1595
1596 PR 273
1597 * som.c (setup_sections): Improve estimation of space sizes in
1598 relocatable objects.
1599
225247f0
JT
16002004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
1601 * config.bfd (hppa*-*-netbsd*): Set targ_defvec to
1602 bfd_elf32_hppa_nbsd_vec. Add bfd_elf32_hppa_linux_vec
1603 to targ_selvecs.
1604 * configure.in (bfd_elf32_hppa_nbsd_vec): Add case.
1605 * configure: Regenerate.
1606 * elf32-hppa.c (elf32_hppa_object_p): Add "elf32-hppa-netbsd"
1607 case that accepts OSABI=NetBSD and OSABI=SysV.
1608 (elf32_hppa_set_gp): For "elf32-hppa-netbsd", set the GP to
1609 the base of .got or .data (if .got does not exist).
1610 (elf32_hppa_post_process_headers): For elf32-hppa-netbsd,
1611 set OSABI=NetBSD.
1612 (TARGET_BIG_SYM): Add bfd_elf32_hppa_nbsd_vec case.
1613 (TARGET_BIG_NAME): Add "elf32-hppa-netbsd" case.
1614 * targets.c (bfd_elf32_hppa_nbsd_vec): Add extern declaration.
1615 (_bfd_target_vector): Add bfd_elf32_hppa_nbsd_vec.
1616
3d7f7666
L
16172004-07-27 H.J. Lu <hongjiu.lu@intel.com>
1618
1619 PR 161/251
1620 * elf-bfd.h (bfd_elf_section_data): Add sec_group.
1621 (elf_sec_group): Defined.
1622 (bfd_elf_match_symbols_in_sections): New prototype.
1623 (_bfd_elf_setup_group_pointers): Likewise.
1624
1625 * elf.c (bfd_elf_discard_group): Abort.
1626 (bfd_elf_set_group_contents): Also include relocation sections.
1627 Remove zero-fill for ld -r.
1628 (_bfd_elf_setup_group_pointers): New function.
1629 (elf_sort_elf_symbol): Likewise.
1630 (elf_sym_name_compare): Likewise.
1631 (bfd_elf_match_symbols_in_sections): Likewise.
1632
1633 * elfcode.h (elf_object_p): Call _bfd_elf_setup_group_pointers.
1634
1635 * elflink.c (match_group_member): New.
1636 (elf_link_input_bfd): Check group member for discarded section.
1637 (try_match_symbols_in_sections): New function.
1638 (already_linked): Likewise.
1639 (_bfd_elf_section_already_linked): Support mixing comdat group
1640 and linkonce section.
1641
1642 * libbfd-in.h (bfd_section_already_linked_table_traverse): New.
1643 * linker.c (bfd_section_already_linked_table_traverse): New.
1644
1645 * libbfd.h: Regenerated.
1646
670ec21d
NC
16472004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
1648
1649 * reloc.c: Add BFD_RELOC_CRX_SWITCH8, BFD_RELOC_CRX_SWITCH16,
1650 BFD_RELOC_CRX_SWITCH32.
1651 * bfd-in2.h: Regenerate.
6cd7f07e 1652 * libbfd.h: Regenerate.
670ec21d
NC
1653 * elf32-crx.c: Support relocation/relaxation of
1654 BFD_RELOC_CRX_SWITCH* types.
1655
2c66dc6c
AM
16562004-07-27 Alan Modra <amodra@bigpond.net.au>
1657
1658 * elf64-ppc.c: Correct "Linker stubs" comment.
1659
38ce5b11
L
16602004-07-26 H.J. Lu <hongjiu.lu@intel.com>
1661
1662 * elf-bfd.h (bfd_elf_section_data): Add a pointer for the
1663 linked-to section.
1664 (elf_linked_to_section): New.
1665
1666 * elf.c (assign_section_numbers): Set up sh_link for
1667 SHF_LINK_ORDER.
1668
1669 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set sh_info
1670 to sh_link for SHT_IA_64_UNWIND sections.
1671
65da361f
L
16722004-07-22 H.J. Lu <hongjiu.lu@intel.com>
1673
1674 * elflink.c (elf_fixup_link_order): Add _() to error message.
1675
08ccf96b
L
16762004-07-22 H.J. Lu <hongjiu.lu@intel.com>
1677
1678 * elflink.c (elf_fixup_link_order): Issue a warning and flag
1679 an error if failed.
1680
082b7297
L
16812004-07-21 H.J. Lu <hongjiu.lu@intel.com>
1682
1683 * aout-adobe.c (aout_32_section_already_linked): Defined.
1684 * aout-target.h (MY_section_already_linked): Likewise.
1685 * aout-tic30.c (MY_section_already_linked): Likewise.
1686 * binary.c (binary_section_already_linked): Likewise.
1687 * bout.c (b_out_section_already_linked): Likewise.
1688 * coff-alpha.c (_bfd_ecoff_section_already_linked): Likewise.
1689 * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
1690 * coffcode.h (coff_section_already_linked): Likewise.
1691 * i386msdos.c (msdos_section_already_linked): Likewise.
1692 * i386os9k.c (os9k_section_already_linked): Likewise.
1693 * ieee.c (ieee_section_already_linked): Likewise.
1694 * ihex.c (ihex_section_already_linked): Likewise.
1695 * mach-o.c (bfd_mach_o_section_already_linked): Likewise.
1696 * mmo.c (mmo_section_already_linked): Likewise.
1697 * nlm-target.h (nlm_section_already_linked): Likewise.
1698 * oasys.c (oasys_section_already_linked): Likewise.
1699 * pef.c (bfd_pef_section_already_linked): Likewise.
1700 * ppcboot.c (ppcboot_section_already_linked): Likewise.
1701 * som.c (som_bfd_discard_group): Likewise.
1702 * srec.c (srec_section_already_linked): Likewise.
1703 * tekhex.c (tekhex_section_already_linked): Likewise.
1704 * versados.c (versados_section_already_linked): Likewise.
1705 * vms.c (vms_section_already_linked): Likewise.
1706 * coff-target.h (_bfd_xcoff_section_already_linked): Likewise.
1707 * xsym.c (bfd_sym_section_already_linked): Likewise.
1708
1709 * bfd-in.h (bfd_section_already_linked_table_init): New.
1710 (bfd_section_already_linked_table_free): Likewise.
1711
1712 * coff-rs6000.c (rs6000coff_vec): Add
1713 _bfd_generic_section_already_linked.
1714 (pmac_xcoff_vec): Likewise.
1715 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
1716 (aix5coff64_vec): Likewise.
1717
1718 * elf-bfd.h (_bfd_elf_section_already_linked): New prototype.
1719 * elflink.c (_bfd_elf_section_already_linked): New function.
1720
1721 * elfxx-target.h (bfd_elfNN_section_already_linked): Defined.
1722
1723 * libbfd-in.h (_bfd_nolink_section_already_linked): Defined.
1724 (_bfd_generic_section_already_linked): New.
1725 (bfd_section_already_linked_hash_entry): Likewise.
1726 (bfd_section_already_linked): Likewise.
1727 (bfd_section_already_linked_table_lookup): Likewise.
1728 (bfd_section_already_linked_table_insert): Likewise.
1729
1730 * linker.c (bfd_section_already_linked): New.
1731 (_bfd_section_already_linked_table): Likewise.
1732 (bfd_section_already_linked_table_lookup): Likewise.
1733 (bfd_section_already_linked_table_insert): Likewise.
1734 (already_linked_newfunc): Likewise.
1735 (bfd_section_already_linked_table_init): Likewise.
1736 (bfd_section_already_linked_table_free): Likewise.
1737 (_bfd_generic_section_already_linked): Likewise.
1738
1739 * section.c (bfd_section): Remove comdat.
1740 (bfd_comdat_info): Moved to ...
1741 * bfd-in.h (coff_comdat_info): Here.
1742 (bfd_coff_get_comdat_section): New.
1743 * coffgen.c (bfd_coff_get_comdat_section): Likewise.
1744 * libcoff-in.h (coff_section_tdata): Add comdat.
1745 * coffcode.h (handle_COMDAT): Updated.
1746 * cofflink.c (coff_link_add_symbols): Likewise.
1747 * ecoff.c (bfd_debug_section): Likewise.
1748
1749 * targets.c (bfd_target): Add _section_already_linked.
1750 (BFD_JUMP_TABLE_LINK): Updated.
1751
1752 * bfd-in2.h: Regenerated.
1753 * libbfd.h: Likewise.
1754 * libcoff.h: Likewise.
1755
0b52efa6
PB
17562003-07-21 Paul Brook <paul@codesourcery.com>
1757
1758 * elflink.c (elf_get_linked_section_vma, compare_link_order,
1759 elf_fixup_link_order): New functions.
1760 (bfd_elf_final_link): Call elf_fixup_link_order.
1761
7e2294f9
AO
17622004-07-21 Alexandre Oliva <aoliva@redhat.com>
1763
1764 * elf-bfd.h (ELF_COMMON_DEF_P): New.
1765 * elflink.c (_bfd_elf_symbol_refs_local_p): Use it to handle
1766 common definitions.
1767 * elf-m10300.c: Use SYMBOL_REFERENCES_LOCAL instead of
1768 _bfd_elf_symbol_refs_local_p.
1769 * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove hack for common
1770 symbols.
1771
e56f61be
L
17722004-07-19 H.J. Lu <hongjiu.lu@intel.com>
1773
1774 * bfd-in.h (dynamic_lib_link_class): Add DYN_NO_ADD_NEEDED and
1775 DYN_NO_NEEDED.
1776 (bfd_elf_get_dyn_lib_class): New prototype.
1777 * elf.c (bfd_elf_get_dyn_lib_class): New function.
1778
1779 * elflink.c (elf_link_add_object_symbols): Check DYN_AS_NEEDED,
1780 DYN_DT_NEEDED and DYN_NO_NEEDED bits to see if a DT_NEEDED
1781 entry is needed. Issue an error if a DT_NEEDED entry is needed
1782 for a file marked DYN_NO_NEEDED.
1783 (elf_link_check_versioned_symbol): Check the DYN_DT_NEEDED bit
1784 for DT_NEEDED tags.
1785
1786 * bfd-in2.h: Regenerated.
1787
27b56da8
DA
17882004-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1789
1790 * elflink.c (elf_section_complain_discarded): Don't complain in
1791 .PARISC.unwind.
1792
bbb268c3
JW
17932004-07-10 James E Wilson <wilson@specifixinc.com>
1794
1795 * elfxx-ia64.c (elfNN_ia64_relax_ldxmov): Remove abfd parameter.
1796 (elfNN_ia64_install_value, elfNN_ia64_relax_brl): Likewise.
1797 (elfNN_ia64_relax_section, elfNN_ia64_relocate_section,
1798 elfNN_ia64_finish_dynamic_symbol, elfNN_ia64_finish_dynamic_sections):
1799 Fix callers.
1800 (elfNN_ia64_relax_brl): Change bfd_get_64 to bfd_getl64. Change
1801 bfd_put_64 to bfd_putl64.
1802 (elfNN_ia64_relax_ldxmov, elfNN_ia64_install_value): Likewise.
2c66dc6c 1803
e525914f
L
18042004-07-09 H.J. Lu <hongjiu.lu@intel.com>
1805
1806 PR 240
1807 * elfxx-ia64.c (elfNN_ia64_relax_section): Only warn br in
1808 .init/.fini sections when trying to relax it.
1809
b1a6d0b1
NC
18102004-07-09 Jie Zhang <zhangjie@magima.com.cn>
1811
1812 * elf.c (assign_file_positions_for_segments): Make sure the
1813 .dynamic section is the first section in the PT_DYNAMIC segment.
1814
1a320fbb
NC
18152004-07-09 Nick Clifton <nickc@redhat.com>
1816
1817 * config.bfd: Change sh-sybmian-elf to sh-*-symbianelf.
1818 * elf32-sh-symbian.c: Rename the sh_find_elf_flags and
1819 sh_elf_get_flags_from_mach functions so that they do not conflict
1820 when this target is built with other sh-elf targets.
1821 * elf32-sh.c (sh_elf_get_flags_from_mach): Remove bogus
1822 suppression of this function.
1823 (sh_elf_find_flags): Likewise.
1824
1fe1f39c
NC
18252004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
1826
1827 * Makefile.am (ALL_MACHINES): Add cpu-crx.lo.
1828 (ALL_MACHINES_CFILES): Add cpu-crx.c.
1829 (BFD32_BACKENDS): Add elf32-crx.lo.
1830 (BFD32_BACKENDS_CFILES): Add elf32-crx.c.
1831 (cpu-crx.lo): New target.
1832 (elf32-crx.lo): New target.
1833 * Makefile.in: Regenerate.
1834 * archures.c (bfd_architecture): Add bfd_{arch,mach}_crx.
1835 (bfd_archures_list): Add bfd_crx_arch.
1836 * bfd-in2.h: Regenerate.
1837 * config.bfd: Handle crx-*-elf*, crx*.
1838 * configure.in: Handle bfd_elf32_crx_vec.
1839 * configure: Regenerate.
1840 * cpu-crx.c: New file.
1841 * elf32-crx.c: Likewise.
1842 * libbfd.h: Regenerate.
1843 * reloc.c: Add BFD_RELOC_CRX_REL4, BFD_RELOC_CRX_REL8,
1844 BFD_RELOC_CRX_REL8_CMP, BFD_RELOC_CRX_REL16, BFD_RELOC_CRX_REL24,
1845 BFD_RELOC_CRX_REL32, BFD_RELOC_CRX_REGREL12, BFD_RELOC_CRX_REGREL22,
1846 BFD_RELOC_CRX_REGREL28, BFD_RELOC_CRX_REGREL32, BFD_RELOC_CRX_ABS16,
1847 BFD_RELOC_CRX_ABS32, BFD_RELOC_CRX_NUM8, BFD_RELOC_CRX_NUM16,
1848 BFD_RELOC_CRX_NUM32, BFD_RELOC_CRX_IMM16 and BFD_RELOC_CRX_IMM32
1849 * targets.c (bfd_elf32_crx_vec): Declare.
1850 (bfd_target_vector): Add bfd_elf32_crx_vec.
1851
85fbca6a
NC
18522004-07-06 Nick Clifton <nickc@redhat.com>
1853
1854 * config.bfd: Add sh-symbian-elf target.
1855 * configure.in: Add bfd_elf32_shl_symbian_vec.
1856 * configure: Regenerate.
1857 * elf-bfd.h (struct elf_backend_data): Add new field
1858 'check_directives'.
1fe1f39c 1859 * elflink.c (elf_link_add_object_symbols): Invoke the
85fbca6a 1860 check_directives function, if defined.
1fe1f39c 1861 * elfxx-target.h: Provide a default, NULL definition for
85fbca6a 1862 check_directives.
1fe1f39c
NC
1863 * targets.c: Add bfd_elf32_shl_symbian_vec.
1864 * elf32-sh.c (sh_elf_swap_insns): Protect against unnecessary
85fbca6a 1865 definition.
1fe1f39c 1866 (elf32_shlin_grok_prstatus, elf32_shlib_grok_psinfo,
85fbca6a 1867 * sh_elf_get_flags_from_mach, sh_elf_find_flags): Likewise.
1fe1f39c 1868 (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Only define if they have
85fbca6a 1869 not already been defined.
1fe1f39c
NC
1870 * elf32-sh64.c: Use SH_TARGET_ALREADY_DEFINED.
1871 * sh-symbian.c: New file. Provide functions to support the
85fbca6a
NC
1872 * sh-symbian-elf target.
1873 * Makefile.am: Add elf32-sh-symbian.c
1874 * Makefile.in: Regenerate.
1fe1f39c 1875
871ec896
JR
18762004-07-05 Andrew Stubbs <andrew.stubbs@superh.com>
1877
1fe1f39c
NC
1878 * elf32-sh.c: Include ../opcodes/sh-opc.h.
1879 * Makefile.am: Ran make dep-am.
1880 * Makefile.in: Ran make dep-in.
871ec896 1881
c87db184
CF
18822004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1883
1884 * cofflink.c (_bfd_coff_generic_relocate_section): Resolve PE weak
1885 externals properly.
1886
06f2f6af
MS
18872004-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
1888
1889 * config.bfd: Add want64 to configuration target s390-*-linux*.
1890
b602c853
L
18912004-07-01 H.J. Lu <hongjiu.lu@intel.com>
1892
1893 * bfd.c (bfd_get_section_ident): New.
1894
1895 * elflink.c (elf_link_read_relocs_from_section): Call
1896 bfd_get_section_ident to identify the section when reporting
1897 error.
1898 (_bfd_elf_link_output_relocs): Likewise.
1899 (elf_link_output_extsym): Likewise.
1900 (elf_link_input_bfd): Likewise.
1901 (bfd_elf_gc_record_vtinherit): Likewise.
1902
1903 * bfd-in2.h: Regenerated.
1904
7a2a6943
NC
19052004-07-01 Jie Zhang <zhangjie@magima.com.cn>
1906 Nick Clifton <nickc@redhat.com>
1907
1908 PR 204
1909 * elfxx-mips.c (_bfd_mips_elf_final_link): Pass the correct number
1910 of section symbols to mips_elf_sort_hash_table ().
1911
cdd3575c
AM
19122004-07-01 Alan Modra <amodra@bigpond.net.au>
1913
1914 * elflink.c (elf_section_ignore_discarded_relocs): Revert last
1915 change. Comment.
1916 (elf_section_complain_discarded): New function. Handle
1917 .gcc_except_table too.
1918 (elf_link_input_bfd): Rewrite handling of relocs against symbols
1919 in discarded sections.
1920 * elf-bfd.h (elf_discarded_section): Protect macro arg.
1921
21a8f7fa
JW
19222004-06-30 James E Wilson <wilson@specifixinc.com>
1923
1924 * elfxx-ia64.c (elfNN_ia64_check_relocs): New local pltoff. Initialize
1925 to NULL. Call get_pltoff if NULL and NEED_PLTOFF is true.
1926
2de26f35
L
19272004-06-30 H.J. Lu <hongjiu.lu@intel.com>
1928
1929 PR 233
1930 * elflink.c (elf_link_input_bfd): Issue an error for non-debug
1931 local references to discarded sections and report their
1932 locations.
1933
72d7a15c
AM
19342004-06-30 Alan Modra <amodra@bigpond.net.au>
1935
1936 * elflink.c (elf_section_ignore_discarded_relocs): Don't test
1937 sec_info_type, test section name instead.
1938
e7f0a167
L
19392004-06-29 H.J. Lu <hongjiu.lu@intel.com>
1940
1941 PR 240
1942 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't relax branch
1943 in .init/.fini sections.
1944
bff5f93a
BW
19452004-06-29 Bob Wilson <bob.wilson@acm.org>
1946
1947 * elf32-xtensa.c (elf_xtensa_relocate_section): Use
1948 bfd_get_section_limit.
1949
b54d4b07
BW
19502004-06-29 Bob Wilson <bob.wilson@acm.org>
1951
1952 * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Don't change the
1953 output section size.
1954
e87a64e1
AM
19552004-06-29 Alan Modra <amodra@bigpond.net.au>
1956
1a23a9e6
AM
1957 * elf64-mmix.c (mmix_set_relaxable_size): Save original size in
1958 rawsize.
1959 (mmix_elf_perform_relocation): Adjust for above change.
1960 (mmix_elf_relocate_section): Likewise.
1961 (mmix_elf_relax_section): Likewise. Use output_section->rawsize.
1962 (mmix_elf_get_section_contents): Delete.
1963 (bfd_elf64_get_section_contents): Delete.
1964 (mmix_elf_relocate_section): Zero stub area.
1965 * linker.c (default_indirect_link_order): Alloc max of section size
1966 and rawsize.
1967 * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
1968 * section.c (bfd_malloc_and_get_section): Likewise.
1969 (struct bfd_section): Update rawsize comment.
1970 * bfd-in2.h: Regenerate.
1971
e87a64e1
AM
1972 * reloc16.c (bfd_coff_reloc16_relax_section): Set rawsize.
1973
07515404
AM
19742004-06-29 Alan Modra <amodra@bigpond.net.au>
1975
1976 * bfd-in.h (bfd_get_section_limit): Define.
1fe1f39c 1977 * reloc.c (bfd_perform_relocation, bfd_install_relocation)
07515404
AM
1978 (_bfd_final_link_relocate): Use bfd_get_section_limit.
1979 * aout-tic30.c (tic30_aout_final_link_relocate): Likewise.
1980 * coff-arm.c (coff_arm_relocate_section): Likewise.
1981 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): Likewise.
1982 * cpu-ns32k.c (do_ns32k_reloc): Likewise.
1983 (bfd_ns32k_final_link_relocate): Likewise.
1984 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): Likwise.
1985 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): Likewise.
1fe1f39c 1986 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc)
07515404 1987 (i860_howto_highadj_reloc, i860_howto_splitn_reloc): Likewise.
1fe1f39c 1988 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc)
07515404
AM
1989 (m32r_elf_generic_reloc, m32r_elf_relocate_section): Likewise.
1990 * elf32-m68hc1x.c (m68hc11_elf_special_reloc): Likewise.
1991 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1992 * elf32-or32.c (or32_elf_consth_reloc): Likewise.
1993 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Likewise.
1994 * elf32-s390.c (s390_elf_ldisp_reloc): Likewise.
1995 * elf32-sh.c (sh_elf_reloc_loop): Likewise.
1996 * elf32-sparc.c (sparc_elf_wdisp16_reloc): Likewise.
1997 (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc): Likwise.
1998 * elf32-v850.c (v850_elf_reloc): Likewise.
1999 * elf32-xstormy16.c (xstormy16_elf_24_reloc): Likewise.
2000 * elf32-xtensa.c (bfd_elf_xtensa_reloc): Likewise.
2001 * elf64-alpha.c (elf64_alpha_reloc_gpdisp): Likewise.
2002 * elf64-mips.c (mips_elf64_gprel32_reloc)
2003 (mips16_gprel_reloc): Likewise.
2004 * elf64-mmix.c (mmix_elf_reloc): Likewise.
2005 * elf64-s390.c (s390_elf_ldisp_reloc): Likewise.
2006 * elf64-sparc.c (init_insn_reloc): Likewise.
2007 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1fe1f39c
NC
2008 * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp)
2009 (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_lo16_reloc)
07515404
AM
2010 (_bfd_mips_elf_generic_reloc): Likewise.
2011 * bfd-in2.h: Regenerate.
2012
3722b82f
AM
20132004-06-28 Alan Modra <amodra@bigpond.net.au>
2014
2015 * bfd-in.h (struct stab_info): Move from stabs.c.
2016 * stabs.c (struct stab_link_includes_table): Delete.
2017 (stab_link_includes_lookup): Delete.
2018 (_bfd_write_section_stabs, _bfd_write_stab_strings): Remove one
2019 level of indirection from sinfo parm.
2020 (_bfd_link_section_stabs): Likewise. Set SEC_LINKER_CREATED on
2021 stabstr section. Adjust hash table accesses.
2022 * coff-ppc.c (ppc_bfd_coff_final_link): Do include rawsize in contents
2023 alloc. Adjust stab_info test.
2024 * cofflink.c (_bfd_coff_link_hash_table_init): Clear stab_info.
2025 (_bfd_coff_final_link): Adjust stab_info test.
2026 (_bfd_coff_link_input_bfd): Ignore SEC_LINKER_CREATED sections.
2027 * elf-bfd.h (struct elf_link_hash_table): Include struct stab_info
2028 in place.
2029 * libcoff-in.h (struct coff_link_hash_table): Likewise.
2030 * elf.c (_bfd_elf_link_hash_table_init): Clear stab_info.
2031 * elflink.c (bfd_elf_final_link): Don't attempt to link linker created
2032 stabstr section. Adjust stab_info test.
2033 * libbfd-in.h (_bfd_link_section_stabs, _bfd_write_section_stabs)
2034 (_bfd_write_stab_strings): Adjust prototypes.
2035 * libbfd.h: Regenerate.
2036 * libcoff.h: Regenerate.
2037 * bfd-in2.h: Regenerate.
2038
727e493d
MK
20392004-06-27 Mark Kettenis <kettenis@gnu.org>
2040
2041 From Miod Vallat <miod@online.fr>:
2042 * aoutx.h (NAME(aout,machine_type)): Handle bfd_arch_m88k.
2043
146ccdbb
AO
20442004-06-26 Alexandre Oliva <aoliva@redhat.com>
2045
2046 * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): Delete.
2047 (struct elf32_mn10300_link_hash_entry): Remove
2048 pcrel_relocs_copied.
2049 (mn10300_elf_check_relocs): Only reserve dynamic relocations for
2050 R_MN10300_32. Don't adjust pcrel_relocs_copied.
2051 (mn10300_elf_final_link_relocate): Fail for direct, pc-relative
2052 and gotoff relocations if the symbol doesn't bind locally. Use
2053 _bfd_elf_symbol_refs_local_p to test. Don't create dynamic
2054 relocation for PCREL32.
2055 (mn10300_elf_relocate_section): Use _bfd_elf_symbol_refs_local_p
2056 to test whether a symbol binds locally.
2057 (elf32_mn10300_link_hash_newfunc): Don't initialize
2058 pcrel_relocs_copied.
2059 (_bfd_mn10300_elf_discard_copies): Delete.
2060 (_bfd_mn10300_elf_size_dynamic_sections): Don't call it.
2061
a5fd0812
MK
20622004-06-26 Mark Kettenis <kettenis@gnu.org>
2063
2064 * config.bfd: Replace m88k-*-openbsd* with m88*-*-openbsd*.
2065
22bfad37
JB
20662004-06-25 Joel Brobecker <brobecker@gnat.com>
2067
2068 * som.c (som_set_reloc_info): Correct small typo.
2069
097f809a
NC
20702004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
2071
2072 * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_GOTOFF.
2073 (m32r_elf_relocate_section): Changed for R_M32R_GOTOFF.
2074 (m32r_elf_gcsweep_hook): Likewise.
2075 (m32r_elf_check_relocs): Likewise.
2076 (m32r_elf_howto_table): Added R_M32R_GOTOFF_HI_ULO,
2077 R_M32R_GOTOFF_HI_SLO and R_M32R_GOTOFF_LO.
2078 * reloc.c: Added BFD_RELOC_M32R_GOTOFF_HI_ULO,
2079 BFD_RELOC_M32R_GOTOFF_HI_SLO and BFD_RELOC_M32R_GOTOFF_LO.
f9f2cf5d
NC
2080 * bfd-in2.h: Regenerated.
2081 * libbfd.h: Regenerated.
097f809a 2082
6610a52d
L
20832004-06-24 H.J. Lu <hongjiu.lu@intel.com>
2084
2085 * elf64-x86-64.c (elf64_x86_64_check_relocs): Warn overflow
2086 relocation symbol.
2087 (elf64_x86_64_relocate_section): Issue an error for
2088 R_X86_64_PC8, R_X86_64_PC16 and R_X86_64_PC32 relocations
2089 against global symbols when building shared library.
2090
eea6121a
AM
20912004-06-24 Alan Modra <amodra@bigpond.net.au>
2092
2093 * section.c (struct sec): Rename "_cooked_size" to "size".
2094 Rename "_raw_size" to "rawsize".
2095 (STD_SECTION): Adjust comments.
2096 (bfd_set_section_size, bfd_get_section_contents): Use size.
2097 (bfd_malloc_and_get_section): New function.
2098 * bfd-in.h (bfd_section_size, bfd_get_section_size): Use size.
2099 * coff-sh.c (sh_relax_section): Alloc coff_section_data struct early.
2100 Correctly free reloc and contents memory.
2101 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete FIXME
2102 and fake CIE now that we can shink section size to zero.
2103 (_bfd_elf_write_section_eh_frame): Likewise..
2104 * elf32-ppc.c (ppc_elf_relax_section): Delay reading section contents.
2105 * elf-m10300.c (mn10300_elf_final_link_relocate): Don't use
2106 _bfd_stab_section_offset. Use _bfd_elf_section_offset.
2107 * stabs.c (_bfd_stab_section_offset_): Remove unused args and
2108 unneeded indirection.
2109 * elf.c (_bfd_elf_section_offset): .. and update call.
2110 * libbfd-in.h (_bfd_stab_section_offset): Update prototype.
2111 * libbfd.h: Regenerate.
2112 * bfd-in2.h: Regenerate.
2113
2114 Replace occurrences of "_raw_size" and "_cooked_size" in most places
2115 with "size". Set new "rawsize" for stabs, eh_frame, and SEC_MERGE
2116 sections. Use "rawsize", if non-zero, for bfd_get_section_contents
2117 calls if the section might be a stabs, eh_frame, or SEC_MERGE section.
2118 Similarly use "rawsize", if non-zero, in reloc functions to validate
2119 reloc addresses. Use new bfd_malloc_and_get_section in most places
2120 where bfd_get_section_contents was called. Expand all occurrences of
2121 bfd_section_size and bfd_get_section_size. Rename "raw_size" var in
2122 grok_prstatus and similar functions to "size".
2123 * aix386-core.c (aix386_core_file_p): ..
2124 * aix5ppc-core.c (xcoff64_core_p): ..
2125 * aout-adobe.c (aout_adobe_callback, aout_adobe_write_object_contents,
2126 aout_adobe_set_section_contents): ..
2127 * aout-target.h (callback): ..
2128 * aout-tic30.c (tic30_aout_callback, tic30_aout_final_link_relocate,
2129 MY_bfd_final_link): ..
2130 * aoutf1.h (sunos4_core_file_p): ..
2131 * aoutx.h (some_aout_object_p, adjust_o_magic, adjust_z_magic,
2132 adjust_n_magic, adjust_sizes_and_vmas, translate_from_native_sym_flags,
2133 final_link, aout_link_input_section): ..
2134 * binary.c (binary_object_p, binary_canonicalize_symtab,
2135 binary_set_section_contents): ..
2136 * bout.c (b_out_callback, b_out_write_object_contents,
2137 b_out_set_section_contents, b_out_bfd_relax_section,
2138 b_out_bfd_get_relocated_section_contents): ..
2139 * cisco-core.c (cisco_core_file_validate): ..
2140 * coff-alpha.c (alpha_ecoff_object_p,
2141 alpha_ecoff_get_relocated_section_conten, alpha_relocate_section): ..
2142 * coff-arm.c (coff_arm_relocate_section,
2143 bfd_arm_allocate_interworking_sections): ..
2144 * coff-h8300.c (h8300_reloc16_extra_cases,
2145 h8300_bfd_link_add_symbols): ..
2146 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): ..
2147 * coff-ppc.c (coff_ppc_relocate_section, ppc_allocate_toc_section,
2148 ppc_bfd_coff_final_link): ..
2149 * coff-rs6000.c (xcoff_reloc_type_br, xcoff_ppc_relocate_section): ..
2150 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
2151 sh_align_loads, sh_coff_get_relocated_section_contents): ..
2152 * coff64-rs6000.c (xcoff64_write_object_contents,
2153 xcoff64_reloc_type_br, xcoff64_ppc_relocate_section): ..
2154 * coffcode.h (coff_compute_section_file_positions,
2155 coff_write_object_contents): ..
2156 * coffgen.c (make_a_section_from_file, coff_write_symbols,
2157 coff_section_symbol, build_debug_section): ..
2158 * cofflink.c (coff_link_add_symbols, _bfd_coff_final_link,
2159 process_embedded_commands, _bfd_coff_link_input_bfd,
2160 _bfd_coff_write_global_sym): ..
2161 * cpu-arm.c (bfd_arm_update_notes, bfd_arm_get_mach_from_notes): ..
2162 * cpu-ns32k.c (do_ns32k_reloc, _bfd_ns32k_final_link_relocate): ..
2163 * dwarf1.c (parse_line_table, _bfd_dwarf1_find_nearest_line): ..
2164 * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
2165 _bfd_dwarf2_find_nearest_line): ..
2166 * ecoff.c (bfd_debug_section, ecoff_set_symbol_info,
2167 ecoff_compute_section_file_positions,
2168 _bfd_ecoff_write_object_contents, ecoff_indirect_link_order): ..
2169 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame,
2170 _bfd_elf_discard_section_eh_frame_hdr,
2171 _bfd_elf_maybe_strip_eh_frame_hdr, _bfd_elf_eh_frame_section_offset,
2172 _bfd_elf_write_section_eh_frame,
2173 _bfd_elf_write_section_eh_frame_hdr): ..
2174 * elf-hppa.h (elf_hppa_sort_unwind): ..
2175 * elf-m10200.c (mn10200_elf_relax_section,
2176 mn10200_elf_relax_delete_bytes,
2177 mn10200_elf_get_relocated_section_contents): ..
2178 * elf-m10300.c (_bfd_mn10300_elf_create_got_section,
2179 mn10300_elf_check_relocs, mn10300_elf_relax_section,
2180 mn10300_elf_relax_delete_bytes,
2181 mn10300_elf_get_relocated_section_contents,
2182 _bfd_mn10300_elf_adjust_dynamic_symbol,
2183 _bfd_mn10300_elf_discard_copies,
2184 _bfd_mn10300_elf_size_dynamic_sections,
2185 _bfd_mn10300_elf_finish_dynamic_sections): ..
2186 * elf.c (_bfd_elf_print_private_bfd_data, bfd_elf_get_bfd_needed_list,
2187 _bfd_elf_make_section_from_phdr, elf_fake_sections,
2188 bfd_elf_set_group_contents, map_sections_to_segments,
2189 elf_sort_sections, assign_file_positions_for_segments,
2190 SECTION_SIZE, copy_private_bfd_data,
2191 _bfd_elf_get_dynamic_reloc_upper_bound,
2192 _bfd_elf_canonicalize_dynamic_reloc, elfcore_maybe_make_sect,
2193 _bfd_elfcore_make_pseudosection, elfcore_grok_prstatus,
2194 elfcore_grok_lwpstatus, elfcore_grok_win32pstatus,
2195 elfcore_grok_note, elfcore_grok_nto_status, elfcore_grok_nto_gregs,
2196 _bfd_elf_rel_local_sym, _bfd_elf_get_synthetic_symtab): ..
2197 * elf32-arm.h (bfd_elf32_arm_allocate_interworking_sect,
2198 bfd_elf32_arm_process_before_allocation,
2199 elf32_arm_adjust_dynamic_symbol, allocate_dynrelocs,
2200 elf32_arm_size_dynamic_sections, elf32_arm_finish_dynamic_sections,
2201 elf32_arm_write_section): ..
2202 * elf32-cris.c (cris_elf_grok_prstatus,
2203 elf_cris_finish_dynamic_sections, cris_elf_gc_sweep_hook,
2204 elf_cris_adjust_gotplt_to_got, elf_cris_adjust_dynamic_symbol,
2205 cris_elf_check_relocs, elf_cris_size_dynamic_sections,
2206 elf_cris_discard_excess_dso_dynamics,
2207 elf_cris_discard_excess_program_dynamics): ..
2208 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): ..
2209 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): ..
2210 * elf32-frv.c (_frvfdpic_add_dyn_reloc, _frvfdpic_add_rofixup,
2211 _frv_create_got_section, _frvfdpic_assign_plt_entries,
2212 elf32_frvfdpic_size_dynamic_sections,
2213 elf32_frvfdpic_modify_segment_map,
2214 elf32_frvfdpic_finish_dynamic_sections): ..
2215 * elf32-h8300.c (elf32_h8_relax_section, elf32_h8_relax_delete_bytes,
2216 elf32_h8_get_relocated_section_contents): ..
2217 * elf32-hppa.c (hppa_build_one_stub, hppa_size_one_stub,
2218 elf32_hppa_adjust_dynamic_symbol, allocate_plt_static,
2219 allocate_dynrelocs, elf32_hppa_size_dynamic_sections, group_sections,
2220 elf32_hppa_size_stubs, elf32_hppa_set_gp, elf32_hppa_build_stubs,
2221 elf32_hppa_finish_dynamic_sections): ..
2222 * elf32-i370.c (i370_elf_adjust_dynamic_symbol,
2223 i370_elf_size_dynamic_sections, i370_elf_check_relocs,
2224 i370_elf_finish_dynamic_sections): ..
2225 * elf32-i386.c (elf_i386_grok_prstatus, elf_i386_adjust_dynamic_symbol,
2226 allocate_dynrelocs, elf_i386_size_dynamic_sections,
2227 elf_i386_relocate_section, elf_i386_finish_dynamic_sections): ..
2228 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc,
2229 i860_howto_highadj_reloc, i860_howto_splitn_reloc): ..
2230 * elf32-ip2k.c (ip2k_is_switch_table_128,
2231 ip2k_relax_switch_table_128, ip2k_is_switch_table_256,
2232 ip2k_relax_switch_table_256, ip2k_elf_relax_section,
2233 adjust_all_relocations, ip2k_elf_relax_delete_bytes): ..
2234 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc,
2235 m32r_elf_generic_reloc, m32r_elf_adjust_dynamic_symbol,
2236 allocate_dynrelocs, m32r_elf_size_dynamic_sections,
2237 m32r_elf_relocate_section, m32r_elf_finish_dynamic_sections,
2238 m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
2239 m32r_elf_get_relocated_section_contents): ..
2240 * elf32-m68hc11.c (m68hc11_elf_build_one_stub,
2241 m68hc11_elf_size_one_stub, m68hc11_elf_relax_section,
2242 m68hc11_elf_relax_delete_bytes): ..
2243 * elf32-m68hc12.c (m68hc12_elf_build_one_stub,
2244 m68hc12_elf_size_one_stub): ..
2245 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs,
2246 elf32_m68hc11_build_stubs, m68hc11_elf_special_reloc): ..
2247 * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_gc_sweep_hook,
2248 elf_m68k_adjust_dynamic_symbol, elf_m68k_size_dynamic_sections,
2249 elf_m68k_discard_copies, elf_m68k_finish_dynamic_sections): ..
2250 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
2251 elf32_mips_grok_prstatus): ..
2252 * elf32-or32.c (or32_elf_consth_reloc): ..
2253 * elf32-ppc.c (ppc_elf_relax_section, ppc_elf_addr16_ha_reloc,
2254 elf_create_pointer_linker_section, ppc_elf_create_linker_section,
2255 ppc_elf_additional_program_headers, ppc_elf_adjust_dynamic_symbol,
2256 allocate_dynrelocs, ppc_elf_size_dynamic_sections,
2257 ppc_elf_finish_dynamic_sections, ppc_elf_grok_prstatus,
2258 ppc_elf_final_write_processing): ..
2259 * elf32-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
2260 allocate_dynrelocs, elf_s390_size_dynamic_sections,
2261 elf_s390_finish_dynamic_sections, elf_s390_grok_prstatus): ..
2262 * elf32-sh.c (sh_elf_reloc_loop, sh_elf_relax_section,
2263 sh_elf_relax_delete_bytes, sh_elf_align_loads,
2264 sh_elf_adjust_dynamic_symbol, allocate_dynrelocs,
2265 sh_elf_size_dynamic_sections, sh_elf_get_relocated_section_contents,
2266 sh_elf_finish_dynamic_sections, elf32_shlin_grok_prstatus): ..
2267 * elf32-sh64-com.c (sh64_address_in_cranges,
2268 sh64_get_contents_type): ..
2269 * elf32-sh64.c (sh64_find_section_for_address,
2270 sh64_elf_final_write_processing): ..
2271 * elf32-sparc.c (sparc_elf_wdisp16_reloc, sparc_elf_hix22_reloc,
2272 sparc_elf_lox10_reloc, elf32_sparc_adjust_dynamic_symbol,
2273 allocate_dynrelocs, elf32_sparc_size_dynamic_sections,
2274 elf32_sparc_relocate_section, elf32_sparc_finish_dynamic_sections): ..
2275 * elf32-v850.c (v850_elf_reloc, v850_elf_relax_section): ..
2276 * elf32-vax.c (elf_vax_check_relocs, elf_vax_adjust_dynamic_symbol,
2277 elf_vax_size_dynamic_sections, elf_vax_discard_copies,
2278 elf_vax_instantiate_got_entries, elf_vax_relocate_section,
2279 elf_vax_finish_dynamic_sections): ..
2280 * elf32-xstormy16.c (xstormy16_elf_24_reloc,
2281 xstormy16_elf_check_relocs, xstormy16_relax_plt_check,
2282 xstormy16_elf_relax_section, xstormy16_elf_always_size_sections,
2283 xstormy16_elf_finish_dynamic_sections): ..
2284 * elf32-xtensa.c (xtensa_read_table_entries,
2285 elf_xtensa_allocate_got_size, elf_xtensa_allocate_local_got_size,
2286 elf_xtensa_size_dynamic_sections, elf_xtensa_do_reloc,
2287 bfd_elf_xtensa_reloc, elf_xtensa_relocate_section,
2288 elf_xtensa_combine_prop_entries, elf_xtensa_finish_dynamic_sections,
2289 elf_xtensa_discard_info_for_section, elf_xtensa_grok_prstatus,
2290 get_relocation_opcode, retrieve_contents, find_relaxable_sections,
2291 collect_source_relocs, is_resolvable_asm_expansion, remove_literals,
2292 relax_section, shrink_dynamic_reloc_sections, relax_property_section,
2293 xtensa_callback_required_dependence): ..
2294 * elf64-alpha.c (elf64_alpha_reloc_gpdisp, elf64_alpha_relax_section,
2295 elf64_alpha_check_relocs, elf64_alpha_adjust_dynamic_symbol,
2296 elf64_alpha_calc_got_offsets_for_symbol, elf64_alpha_calc_got_offsets,
2297 elf64_alpha_size_plt_section, elf64_alpha_size_plt_section_1,
2298 elf64_alpha_always_size_sections, elf64_alpha_calc_dynrel_sizes,
2299 elf64_alpha_size_rela_got_section, elf64_alpha_size_rela_got_1,
2300 elf64_alpha_size_dynamic_sections, elf64_alpha_emit_dynrel,
2301 elf64_alpha_finish_dynamic_sections, elf64_alpha_final_link): ..
2302 * elf64-hppa.c (allocate_dynrel_entries,
2303 elf64_hppa_size_dynamic_sections,
2304 elf64_hppa_finish_dynamic_sections): ..
2305 * elf64-mips.c (mips_elf64_gprel32_reloc, mips16_gprel_reloc,
2306 mips_elf64_canonicalize_dynamic_reloc, mips_elf64_slurp_reloc_table,
2307 elf64_mips_grok_prstatus): ..
2308 * elf64-mmix.c (mmix_elf_perform_relocation, mmix_elf_reloc,
2309 mmix_elf_relocate_section, mmix_elf_final_link,
2310 mmix_set_relaxable_size, _bfd_mmix_after_linker_allocation,
2311 mmix_elf_relax_section, mmix_elf_get_section_contents): ..
2312 * elf64-ppc.c (ppc64_elf_object_p, ppc64_elf_grok_prstatus,
2313 ppc64_elf_check_relocs, ppc64_elf_func_desc_adjust,
2314 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_edit_opd,
2315 allocate_dynrelocs, ppc64_elf_size_dynamic_sections,
2316 ppc_build_one_stub, ppc_size_one_stub, ppc64_elf_next_toc_section,
2317 toc_adjusting_stub_needed, group_sections, ppc64_elf_size_stubs,
2318 ppc64_elf_build_stubs, ppc64_elf_relocate_section,
2319 ppc64_elf_finish_dynamic_sections): ..
2320 * elf64-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
2321 allocate_dynrelocs, elf_s390_size_dynamic_sections,
2322 elf_s390_finish_dynamic_sections): ..
2323 * elf64-sh64.c (sh_elf64_get_relocated_section_contents,
2324 sh_elf64_check_relocs, sh64_elf64_adjust_dynamic_symbol,
2325 sh64_elf64_discard_copies, sh64_elf64_size_dynamic_sections,
2326 sh64_elf64_finish_dynamic_sections): ..
2327 * elf64-sparc.c (sparc64_elf_slurp_reloc_table, init_insn_reloc,
2328 sparc64_elf_check_relocs, sparc64_elf_adjust_dynamic_symbol,
2329 sparc64_elf_size_dynamic_sections, sparc64_elf_relocate_section,
2330 sparc64_elf_finish_dynamic_symbol,
2331 sparc64_elf_finish_dynamic_sections): ..
2332 * elf64-x86-64.c (elf64_x86_64_grok_prstatus,
2333 elf64_x86_64_adjust_dynamic_symbol, allocate_dynrelocs,
2334 elf64_x86_64_size_dynamic_sections, elf64_x86_64_relocate_section,
2335 elf64_x86_64_finish_dynamic_sections): ..
2336 * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): ..
2337 * elfcode.h (elf_slurp_reloc_table): ..
2338 * elflink.c (_bfd_elf_create_got_section, elf_add_dt_needed_tag,
2339 elf_finalize_dynstr, elf_link_add_object_symbols,
2340 bfd_elf_size_dynamic_sections, elf_link_sort_relocs,
2341 elf_link_input_bfd, bfd_elf_final_link, bfd_elf_discard_info): ..
2342 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
2343 elf32_mips_grok_prstatus): ..
2344 * elfxx-ia64.c (elfNN_ia64_relax_section, allocate_dynrel_entries,
2345 elfNN_ia64_size_dynamic_sections, elfNN_ia64_install_dyn_reloc,
2346 elfNN_ia64_choose_gp, elfNN_ia64_final_link,
2347 elfNN_ia64_finish_dynamic_sections): ..
2348 * elfxx-mips.c (mips_elf_create_procedure_table,
2349 mips_elf_check_mips16_stubs, _bfd_mips_elf_gprel16_with_gp,
2350 _bfd_mips_elf_hi16_reloc, _bfd_mips_elf_generic_reloc,
2351 mips_elf_global_got_index, mips_elf_multi_got,
2352 mips_elf_create_compact_rel_section, mips_elf_calculate_relocation,
2353 mips_elf_allocate_dynamic_relocations,
2354 mips_elf_create_dynamic_relocation, _bfd_mips_elf_fake_sections,
2355 _bfd_mips_relax_section, _bfd_mips_elf_adjust_dynamic_symbol,
2356 _bfd_mips_elf_always_size_sections,
2357 _bfd_mips_elf_size_dynamic_sections,
2358 _bfd_mips_elf_finish_dynamic_symbol,
2359 _bfd_mips_elf_finish_dynamic_sections,
2360 _bfd_mips_elf_modify_segment_map, _bfd_mips_elf_discard_info,
2361 _bfd_mips_elf_write_section, _bfd_mips_elf_set_section_contents,
2362 _bfd_elf_mips_get_relocated_section_contents,
2363 _bfd_mips_elf_final_link, _bfd_mips_elf_merge_private_bfd_data): ..
2364 * hp300hpux.c (callback): ..
2365 * hppabsd-core.c (make_bfd_asection): ..
2366 * hpux-core.c (make_bfd_asection): ..
2367 * i386linux.c (linux_link_create_dynamic_sections,
2368 bfd_i386linux_size_dynamic_sections, linux_finish_dynamic_link): ..
2369 * i386msdos.c (msdos_write_object_contents): ..
2370 * i386os9k.c (os9k_callback, os9k_write_object_contents,
2371 os9k_set_section_contents): ..
2372 * ieee.c (parse_expression, ieee_slurp_external_symbols,
2373 ieee_slurp_sections, ieee_slurp_debug, ieee_slurp_section_data,
2374 ieee_write_section_part, do_with_relocs, do_as_repeat,
2375 do_without_relocs, ieee_write_debug_part, init_for_output,
2376 ieee_set_section_contents): ..
2377 * ihex.c (ihex_scan, ihex_read_section, ihex_get_section_contents): ..
2378 * irix-core.c (do_sections, make_bfd_asection): ..
2379 * libaout.h (aout_section_merge_with_text_p): ..
2380 * libbfd.c (_bfd_generic_get_section_contents,
2381 _bfd_generic_get_section_contents_in_window): ..
2382 * linker.c (default_indirect_link_order): ..
2383 * lynx-core.c (make_bfd_asection): ..
2384 * m68klinux.c (linux_link_create_dynamic_sections,
2385 bfd_m68klinux_size_dynamic_sections, linux_finish_dynamic_link): ..
2386 * mach-o.c (bfd_mach_o_make_bfd_section,
2387 bfd_mach_o_scan_read_dylinker, bfd_mach_o_scan_read_dylib,
2388 bfd_mach_o_scan_read_thread, bfd_mach_o_scan_read_symtab,
2389 bfd_mach_o_scan_read_segment): ..
2390 * merge.c (_bfd_add_merge_section, record_section, merge_strings,
2391 _bfd_merge_sections): ..
2392 * mmo.c (mmo_find_sec_w_addr, mmo_get_spec_section, mmo_get_loc,
2393 mmo_map_set_sizes, mmo_canonicalize_symtab,
2394 mmo_internal_write_section, mmo_write_object_contents): ..
2395 * netbsd-core.c (netbsd_core_file_p): ..
2396 * nlm32-alpha.c (nlm_alpha_read_reloc, nlm_alpha_write_import,
2397 nlm_alpha_set_public_section): ..
2398 * nlm32-ppc.c (nlm_powerpc_read_reloc, nlm_powerpc_write_reloc): ..
2399 * nlm32-sparc.c (nlm_sparc_write_import): ..
2400 * nlmcode.h (add_bfd_section, nlm_swap_auxiliary_headers_in,
2401 nlm_compute_section_file_positions): ..
2402 * oasys.c (oasys_object_p, oasys_slurp_section_data,
2403 oasys_write_sections, oasys_write_data, oasys_set_section_contents): ..
2404 * opncls.c (get_debug_link_info): ..
2405 * osf-core.c (make_bfd_asection): ..
2406 * pdp11.c (some_aout_object_p, adjust_o_magic, adjust_z_magic,
2407 adjust_n_magic, adjust_sizes_and_vmas, squirt_out_relocs,
2408 final_link, aout_link_input_section): ..
2409 * peXXigen.c (_bfd_XXi_swap_sym_in, _bfd_XXi_swap_aouthdr_out,
2410 pe_print_idata, pe_print_edata, pe_print_pdata, pe_print_reloc): ..
2411 * pef.c (bfd_pef_make_bfd_section, bfd_pef_print_loader_section,
2412 bfd_pef_scan_start_address, bfd_pef_parse_symbols): ..
2413 * ppcboot.c (ppcboot_object_p, ppcboot_canonicalize_symtab): ..
2414 * ptrace-core.c (ptrace_unix_core_file_p): ..
2415 * reloc.c (bfd_perform_relocation, bfd_install_relocation,
2416 _bfd_final_link_relocate, bfd_generic_relax_section,
2417 bfd_generic_get_relocated_section_contents): ..
2418 * reloc16.c (bfd_coff_reloc16_relax_section,
2419 bfd_coff_reloc16_get_relocated_section_c): ..
2420 * riscix.c (riscix_some_aout_object_p): ..
2421 * rs6000-core.c (read_hdr, make_bfd_asection): ..
2422 * sco5-core.c (make_bfd_asection): ..
2423 * simple.c (bfd_simple_get_relocated_section_contents): ..
2424 * som.c (som_object_setup, setup_sections, som_prep_headers,
2425 som_write_fixups, som_begin_writing, bfd_section_from_som_symbol,
2426 som_set_reloc_info, som_get_section_contents,
2427 som_bfd_link_split_section): ..
2428 * sparclinux.c (linux_link_create_dynamic_sections,
2429 bfd_sparclinux_size_dynamic_sections, linux_finish_dynamic_link): ..
2430 * srec.c (srec_scan, srec_read_section, srec_get_section_contents): ..
2431 * stabs.c (_bfd_link_section_stabs, _bfd_discard_section_stabs,
2432 _bfd_write_stab_strings, _bfd_stab_section_offset): ..
2433 * sunos.c (sunos_read_dynamic_info, sunos_create_dynamic_sections,
2434 bfd_sunos_size_dynamic_sections, sunos_scan_std_relocs,
2435 sunos_scan_ext_relocs, sunos_scan_dynamic_symbol,
2436 sunos_write_dynamic_symbol, sunos_check_dynamic_reloc,
2437 sunos_finish_dynamic_link): ..
2438 * syms.c (_bfd_stab_section_find_nearest_line): ..
2439 * tekhex.c (first_phase, tekhex_set_section_contents,
2440 tekhex_write_object_contents): ..
2441 * trad-core.c (trad_unix_core_file_p): ..
2442 * versados.c (process_esd, process_otr, process_otr): ..
2443 * vms-gsd.c (_bfd_vms_slurp_gsd, _bfd_vms_write_gsd): ..
2444 * vms-misc.c (add_new_contents): ..
2445 * vms-tir.c (check_section, new_section, _bfd_vms_write_tir): ..
2446 * vms.c (vms_set_section_contents): ..
2447 * xcofflink.c (xcoff_get_section_contents, xcoff_link_add_symbols,
2448 xcoff_sweep, bfd_xcoff_size_dynamic_sections, xcoff_build_ldsyms,
2449 _bfd_xcoff_bfd_final_link, xcoff_link_input_bfd): ..
2450 * xsym.c (bfd_sym_scan): .. See above.
2451
bf8b15af
L
24522004-06-21 H.J. Lu <hongjiu.lu@intel.com>
2453
2454 * elfxx-ia64.c (elfNN_ia64_relax_section): Add addend when
2455 calling _bfd_merged_section_offset only for section symbols.
2456
d1c6de6f
AM
24572004-06-22 Alan Modra <amodra@bigpond.net.au>
2458
2459 * elf32-ppc.c (ppc_elf_relax_section): Implement reference code
2460 for handling SEC_MERGE symbols in relax_section.
2461
aa02cc63
AO
24622004-06-21 Alexandre Oliva <aoliva@redhat.com>
2463
2464 2003-05-15 Richard Sandiford <rsandifo@redhat.com>
2465 * cpu-h8300.c (compatible): Allow h8300s and h8300sx code to be
2466 linked together. Mark the result as h8300sx code.
2467
aee6f5b4
AO
24682004-06-21 Alexandre Oliva <aoliva@redhat.com>
2469
2470 * elf-bfd.h (struct elf_backend_data): Added
2471 elf_backend_omit_section_dynsym.
2472 (_bfd_elf_link_omit_section_dynsym): Declare.
2473 * elf32-frv.c (_frvfdpic_link_omit_section_dynsym): New.
2474 (elf_backend_omit_section_dynsym): Use it for frvfdpic.
2475 * elflink.c (_bfd_elf_link_omit_section_dynsym): Split out of...
2476 (_bfd_elf_link_renumber_dynsyms): ... this function.
2477 * elfxx-target.h (elf_backend_omit_section_dynsym): Default to
2478 _bfd_elf_link_omit_section_dynsym).
2479 (elfNN_bed): Added elf_backend_omit_section_dynsym.
2480
05576f10
NC
24812004-06-21 Nick Clifton <nickc@redhat.com>
2482
2483 * coffcode.h (styp_to_sec_flags): Ignore IMAGE_SCN_MEM_NOT_PAGED
2484 flags.
2485
02d5a37b
JG
24862004-06-17 Jerome Guitton <guitton@gnat.com>
2487
2488 * bfd-in.h (bfd_cache_close_all): New function declaration.
2489 * bfd-in2.h: Regenerate.
2490 * cache.c (bfd_cache_close_all): New function definition.
2491
d2bef492
MK
24922004-06-16 Mark Kettenis <kettenis@gnu.org>
2493
2494 * configure.in: Don't set COREFILE to trad-core.lo for FreeBSD
2495 4.10 and beyond.
2496 * configure: Regenerate.
2497
8528d62e
DJ
24982004-06-16 Daniel Jacobowitz <dan@debian.org>
2499
2500 * elf32-ppc.c (ppc_elf_create_linker_section): Create symbols in
2501 the pre-existing section.
2502
911d08a7
AM
25032004-06-15 Alan Modra <amodra@bigpond.net.au>
2504
2505 * section.c (struct sec): Remove usused flags. Reorganize a little.
2506 (bfd_get_section_size_before_reloc): Delete.
2507 (bfd_get_section_size_after_reloc): Delete.
2508 (STD_SECTION): Update.
2509 (bfd_get_section_size_now): Delete.
2510 (bfd_set_section_contents): Don't referece reloc_done.
2511 (bfd_get_section_contents): Remove reloc_done comment.
2512 * bout.c (b_out_bfd_get_relocated_section_contents): Don't set
2513 reloc_done.
2514 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Likewise.
2515 * ecoff.c (bfd_debug_section): Update initializer.
2516 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Ditto.
2517 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
2518 * bfd-in.h (bfd_section_size): Expand.
2519 (bfd_get_section_size): New macro.
2520 * bfd-in2.h: Regenerate.
2521 * coff64-rs6000.c (xcoff64_write_object_contents): Replace
2522 bfd_get_section_size_before_reloc with bfd_get_section_size.
2523 * coffcode.h (coff_write_object_contents): Likewise.
2524 * coffgen.c (build_debug_section): Likewise.
2525 * dwarf1.c (parse_line_table): Likewise.
2526 (_bfd_dwarf1_find_nearest_line): Likewise.
2527 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
2528 * i386msdos.c (msdos_write_object_contents): Likewise.
2529 * pdp11.c (squirt_out_relocs): Likewise.
2530 * elf32-sh64.c (sh64_find_section_for_address): Remove comment.
2531 * elf64-mmix.c (mmix_elf_final_link): Update comment.
2532
092dcd75
CD
25332004-06-14 Chris Demetriou <cgd@broadcom.com>
2534
2535 * elf32-mips.c (elf_mips_gnu_pcrel32): Add (undoing 2004-04-24
2536 removal) with updated comment.
2537 (bfd_elf32_bfd_reloc_type_lookup): Add back case for
2538 BFD_RELOC_32_PCREL.
2539 (mips_elf32_rtype_to_howto): Add back case for R_MIPS_PC32.
2540 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
2541
3ffa5234
AM
25422004-06-12 Alan Modra <amodra@bigpond.net.au>
2543
2544 * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc
2545 overflow on branches to undefweaks.
2546
e9edc808
MR
25472004-06-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
2548
2549 * coff-alpha.c (alpha_relocate_section): Set used_by_bfd directly
2550 as ecoff_section_data() does not return a valid lvalue.
2551
a873f25a
AO
25522004-06-09 Alexandre Oliva <aoliva@redhat.com>
2553
a9b881be
AO
2554 * elflink.c (elf_sort_symbol): Compare section id, not pointers.
2555 (elf_link_add_object_symbols): Likewise.
2556
a873f25a
AO
2557 * elf-m10300.c (_bfd_mn10300_elf_reloc_type_class): New.
2558 (elf_backend_reloc_type_class): New.
2559
eef0f186
MK
25602004-06-08 Mark Kettenis <kettenis@gnu.org>
2561
2562 * configure.in (hppa*-*-netbsd*, hppa*-*-openbsd): Set COREFILE to
2563 netbsd-core.lo.
2564 * configure: Regenerate.
2565
822392ce
DJ
25662004-06-07 Daniel Jacobowitz <dan@debian.org>
2567
2568 From: Albert Chin-A-Young <china@thewrittenword.com>
2569 * bfd/elf-bfd.h (struct eh_cie_fde): Convert unsigned char bitfields
2570 to unsigned int.
2571
9f2e92c5
L
25722004-05-29 H.J. Lu <hongjiu.lu@intel.com>
2573
2574 * elfxx-ia64.c (elfNN_ia64_relax_section): Undo the last
2575 change.
2576
dd90f1b2
DD
25772004-05-28 DJ Delorie <dj@redhat.com>
2578
2579 * elf-m10300.c (mn10300_elf_relax_section): Preserve reloc addend
2580 for linking, but otherwise adjust reloc for merged sections.
2581
5dd23ec1
L
25822004-05-28 H.J. Lu <hongjiu.lu@intel.com>
2583
2584 * elfxx-ia64.c (elfNN_ia64_relax_section): Properly call
2585 _bfd_merged_section_offset for local symbols.
2586
f6f9408f
JR
25872004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
2588
2589 * Makefile.am: Regenerate dependencies.
2590 * Makefile.in: Regenerate.
2591 * archures.c: Add bfd_mach_sh3_nommu .
2592 * bfd-in2.h: Regenerate.
2593 * cpu-sh.c: Add sh3-nommu architecture.
2594 (bfd_to_arch_table): Create new table.
2595 (sh_get_arch_from_bfd_mach): Create new function.
2596 (sh_get_arch_up_from_bfd_mach): Create new function.
2597 (sh_merge_bfd_arch): Create new function.
2598 * elf32-sh.c (sh_ef_bfd_table): Add table.
2599 (sh_elf_check_relocs): Replace switch statement with
2600 use of sh_ef_bfd_table .
2601 (sh_elf_get_flags_from_mach): Add new function.
2602 (sh_find_elf_flags): Likewise.
2603 (sh_elf_copy_private_data): Replace most of non-elf contents
2604 with a call to sh_merge_bfd_arch() .
2605
d866f350
MC
26062004-05-27 Michael Chastain <mec.gnu@mindspring.com>
2607
2608 * Makefile.am (bfdver.h): Use explicit filename, not $< .
2609 * Makefile.in: Regenerate.
2610
1055df0f
AO
26112004-05-27 Alexandre Oliva <aoliva@redhat.com>
2612
2613 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Avoid
2614 custom calling conventions for dynamic symbols.
2615 (mn10300_elf_relax_section): Avoid relaxing a function as a local
2616 symbol if it's an alias to a global one.
2617
b3096250
L
26182004-05-26 H.J. Lu <hongjiu.lu@intel.com>
2619
2620 * elf.c (_bfd_elf_make_section_from_shdr): Undo the last
2621 change.
2622
9bb351fd
AO
26232004-05-27 Alexandre Oliva <aoliva@redhat.com>
2624
2625 * elf-m10300.c (mn10300_elf_relax_section): Don't test isym within
2626 loop over hashes.
2627
e49f5022
AM
26282004-05-26 Alan Modra <amodra@bigpond.net.au>
2629
2630 * elf.c (_bfd_elf_make_section_from_shdr): Don't set SEC_EXCLUDE
2631 for SHT_GROUP sections.
2632
57ceae94
AM
26332004-05-25 Alan Modra <amodra@bigpond.net.au>
2634
2635 * elflink.c (elf_link_add_object_symbols): Don't set up merge
2636 section data here..
2637 * elf.c (_bfd_elf_merge_sections): .. Do it here instead.
2638 * merge.c: Formatting. Remove unnecessary casts. Expand
2639 bfd_get_section_alignment macro.
2640 (struct sec_merge_sec_info): Rename "first" to "first_str". Update
2641 use throughout file.
2642 (_bfd_add_merge_section): Rename from _bfd_merge_section. Update
2643 comment. Abort on dynamic or non-SEC_MERGE input. Don't test
2644 section name to determine sinfo group, instead test output section
2645 and alignment.
2646 (_bfd_merge_sections): Add struct bfd_link_info param. Call
2647 _bfd_strip_section_from_output rather than just twiddling flags.
2648 * libbfd-in.h (_bfd_add_merge_section): Rename, update comment.
2649 (_bfd_merge_sections): Update prototype.
2650 * libbfd.h: Regenerate.
2651
c6f8758f 26522004-05-24 Mark Kettenis <kettenis@gnu.org>
d34436e8
MK
2653
2654 * netbsd-core.c: Correctly indent section that sets architecture
2655 from machine ID.
2656
c6f8758f
NC
2657 From Miod Vallat <miod@online.fr>:
2658 * m88kopenbsd.c: New file.
2659 * targets.c (m88k_openbsd_vec): New.
2660 * config.bfd: Add m88k-*-openbsd*.
2661 * configure.in (m88k-*-openbsd*): Set COREFILE to netbsd-core.lo.
2662 (m88kopenbsd_vec): New.
2663 * configure: Regenerate.
2664 * Makefile.am (BFD32_BACKENDS): Add m88kopenbsd.lo.
2665 (BFD32_BACKENDS_CFILES): Add m88kopenbsd.c.
2666 Run "make dep-am".
2667 * Makefile.in: Regenerate.
2668 * po/SRC-POTFILES.in: Regenerate.
2669
7d7e6bc4
NC
26702004-05-24 Nick Clifton <nickc@redhat.com>
2671
2672 * hash.c: Remove bogus node "Changing the default Hash Table Size"
2673 introduced by hash table size patch.
2674
bc286f95
BE
26752004-05-22 Ben Elliston <bje@au.ibm.com>
2676
2677 * configure.in (is_release): Remove.
2678 (bfd_version_date, bfd_version, bfd_version_string): Likewise.
2679 (AC_OUTPUT): Don't output bfdver.h from version.h.
2680 * configure: Regenerate.
2681 * Makefile.am (RELEASE): New variable.
2682 (bfdver.h): New target.
2683 * Makefile.in: Regenerate.
2684 * doc/Makefile.in: Likewise.
2685
8b89a4eb
BE
26862004-05-22 Ben Elliston <bje@au.ibm.com>
2687
2688 * Makefile.am (config.status): Don't depend on version.h.
2689 * Makefile.in: Regenerate.
2690
753731ee
AM
26912004-05-22 Alan Modra <amodra@bigpond.net.au>
2692
2693 * merge.c (_bfd_merged_section_offset): Remove "addend" param.
2694 * libbfd-in.h (_bfd_merged_section_offset): Adjust prototype.
2695 * libbfd.h: Regenerate.
2696 * elf.c (_bfd_elf_rela_local_sym): Adjust call.
2697 (_bfd_elf_rel_local_sym): Likewise.
2698 * elflink.c (_bfd_elf_link_sec_merge_syms): Likewise.
2699 (elf_link_input_bfd): Likewise.
2700 * elf32-ppc.c (ppc_elf_relax_section): Likewise.
2701 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
2702 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
2703 (elfNN_ia64_relocate_section): Likewise.
2704
2d643429
NC
27052004-05-21 Andy Chittenden <achittenden@bluearc.com>
2706
2707 * hash.c (bfd_default_hash_table_size): New variable.
2708 (bfd_hash_table_init): Use new variable instead of DEFAULT_SIZE.
2709 (bfd_hash_set_default_size): New function. Set the default size
2710 to a selected prime number close to the argument. Document new
2711 function.
2712 * bfd-in.h: Add prototype for bfd_hash_set_default_size.
2713 * bfd-in2.h: Regenerate.
2714 * Makefile.am (hash.lo): Add dependency upon libiberty.h.
2715 * Makefile.in: Regenerate.
2716
8377c19c
MK
27172004-05-21 Mark Kettenis <kettenis@gnu.org>
2718
2719 * libaout.h (machine_type): Add M_88K_OPENBSD and M_HPPA_OPENBSD.
2720 * netbsd-core.c (netbsd_core_file_p): Set architecture for alpha,
2721 arm, m68k, m88k and hppa core files.
2722
69fd4758
NC
27232004-05-21 Nick Clifton <nickc@redhat.com>
2724
2725 * bfdio.c (bfd_bread): Do not use iovec if it is NULL.
2726 (bfd_bwrite): Likewise.
2727 (bfd_tell): Likewise.
2728 (bfd_flush): Likewise.
2729 (bfd_stat): Likewise.
2730 (bfd_seek): Likewise.
2731 (bfd_get_mtime): Likewise.
2732 (bfd_get_size): Likewise.
2733
cd917290
BE
27342004-05-19 Ben Elliston <bje@au.ibm.com>
2735
2736 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Comment correction.
2737
1b09e940
NC
27382004-05-19 Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
2739
2740 * archive.c (_bfd_get_elt_at_filepos): Cope with a nested archives.
2741 (bfd_generic_openr_next_archived_file): Likewise.
2742
096c35a7
BW
27432004-05-17 Bob Wilson <bob.wilson@acm.org>
2744
2745 * elf32-xtensa.c (xtensa_get_property_section_name): Determine linkonce
2746 section names by inserting a new substring after .gnu.linkonce, except
2747 for .gnu.linkonce.t.* where the "t." is replaced.
2748
eea6121a 27492004-05-17 Adam Nemet <anemet@lnxw.com>
b2d65c0b
NC
2750
2751 * config.bfd (sparc-*-lynxos* case): Add to obsolete list.
2752 (m68-*-lynxos* case): Likewise.
2753 (powerpc-*-lyxnos* case): New case.
2754 (i[3-7]86-*-lynxos* case): Update to LynxOS 4.0 ELF.
2755
80fccad2
BW
27562004-05-17 David Heine <dlheine@tensilica.com>
2757
2758 * aout-target.h (MY_bfd_copy_private_header_data): Define.
2759 * aout-tic30.c (MY_bfd_copy_private_header_data): Define.
2760 * bfd.c (bfd_copy_private_header_data): Define.
2761 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Add entries for new
2762 interface.
2763 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
2764 * coffcode.h (coff_bfd_copy_private_header_data): Define.
2765 * elf-bfd.h (_bfd_elf_copy_private_header_data): Declare.
2766 * elf.c (_bfd_elf_copy_private_section_data): Remove code to set up
2767 segments by calling copy_private_bfd_data.
2768 (_bfd_elf_copy_private_header_data): Define.
2769 * elfxx-target.h (bfd_elfNN_bfd_copy_private_header_data): Define.
2770 * libbfd-in.h (_bfd_generic_bfd_copy_private_header_data): Define.
2771 * libecoff.h (_bfd_ecoff_bfd_copy_private_header_data): Define.
2772 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Define.
2773 * mmo.c (mmo_bfd_copy_private_header_data): Define.
2774 * ppcboot.c (ppcboot_bfd_copy_private_header_data): Define.
2775 * som.c (som_bfd_copy_private_header_data): Define.
2776 * targets.c (BFD_JUMP_TABLE_COPY): Add _bfd_copy_private_header_data.
2777 * vms.c (vms_bfd_copy_private_header_data): Define.
2778 * bfd-in2.h: Regenerate.
2779 * libbfd.h: Regenerate.
2780
c5ae1840
TS
27812004-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2782
2783 * elfxx-mips.c (MINUS_TWO): Define.
2784 (mips_elf_higher, mips_elf_highest,
2785 mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for
2786 some bfd_vma values.
2787 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup.
2788
a99cf92b
DA
27892004-05-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2790
2791 * som.c (log2): Rename to exact_log2. Adjust all callers.
2792
0da76f83
NC
27932004-05-13 Paul Brook <paul@codesourcery.com>
2794
c273895f 2795 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle
336b9722
NC
2796 dwarf3 format CIE entries. Remove comment about the size of the
2797 ra_column field. It is now correctly deduced.
0da76f83 2798
4b363073
NC
27992004-05-13 Joel Sherrill <joel@oarcorp.com>
2800
2801 * config.bfd (or32-*-rtems*): Switch to elf.
2802
9598fbe5
NC
28032004-05-13 Nick Clifton <nickc@redhat.com>
2804
2805 * po/fr.po: Updated French translation.
2806
8c37241b
JJ
28072004-05-11 Jakub Jelinek <jakub@redhat.com>
2808
2809 * elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol
2810 into .dynsym if elf_section_data (sec)->dynindx <= 0.
2811 Adjust counting of last_local.
2812 (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
2813 other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
2814 created by the linker nor !SHF_ALLOC.
2815
2816 * elf32-i386.c (elf_i386_finish_dynamic_sections): Point
2817 DT_PLTGOT to the start of the .got.plt section instead of the
2818 .got output section. Set sh_entsize for .got section in addition
2819 to .got.plt.
2820 (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
2821 is at sgot->output_section->vma.
2822 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
2823 DT_PLTGOT to the start of the .got.plt section instead of the
2824 .got output section.
2825 (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
2826 is at sgot->output_section->vma. Set sh_entsize for .got section
2827 in addition to .got.plt.
2828 * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
2829 (bfd_section_from_phdr): Likewise.
2830 (map_sections_to_segments): Likewise.
2831 (assign_file_positions_for_segments): Likewise.
2832 (get_program_header_size): Likewise.
2833 * elflink.c (bfd_elf_size_dynamic_sections): Set
2834 elf_tdata (output_bfd)->relro from info->relro.
2835 * elf-bfd.h (struct elf_obj_tdata): Add relro field.
2836
3f980e41
AO
28372004-05-08 Alexandre Oliva <aoliva@redhat.com>
2838
2839 * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get
2840 a zero symndx for which we hadn't accounted a dynamic relocation.
2841 (_frvfdpic_add_rofixup): Likewise.
2842
d70270c5 28432004-05-07 Brian Ford <ford@vss.fsi.com>
eea6121a 2844 DJ Delorie <dj@redhat.com>
d70270c5
BF
2845
2846 * coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]:
2847 Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE.
2848 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize
2849 IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines.
2850
7e9f3bd6
AO
28512004-05-07 Alexandre Oliva <aoliva@redhat.com>
2852
2853 * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Return
2854 immediately if there's no link info.
2855 (elf32_frvfdpic_copy_private_bfd_data): New.
2856 (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic.
2857
eb61d2d6
ZW
28582004-05-06 Zack Weinberg <zack@codesourcery.com>
2859
2860 * dwarf2.c (add_line_info): Also set info->filename to NULL if
2861 filename argument is null; do not call strlen on a null pointer.
2862
ecb2d096
DJ
28632004-05-06 Daniel Jacobowitz <drow@mvista.com>
2864
2865 * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32
2866 special case.
2867
43850d5b
AO
28682004-05-05 Alexandre Oliva <aoliva@redhat.com>
2869
2870 * configure.in (bfd_elf32_frvfdpic_vec): New.
2871 * configure: Rebuilt.
2872 * targets.c (bfd_elf32_frvfdpic_vec): New.
2873 * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default
2874 on the latter.
2875 * elf32-frv.c: Prefix all identifiers added for FDPIC support with
2876 frvfdpic instead of frv. Rearrange elf-target macros such that
2877 the FDPIC-specific ones are only defined for this new target
2878 vector.
2879 (bfd_elf32_frvfdpic_vec): Declare.
2880 (IS_FDPIC): New.
2881 (elf32_frv_relocate_section): Use it to enable segment checking
2882 and to control rofixup emission. Add output section vma to
2883 applied relocation in non-LOAD non-ALLOC sections. Use
2884 _bfd_error_handler for errors.
2885 (_frv_create_got_section): Create .rel.got and .rofixup only in
2886 FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the
2887 linker script.
2888 (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC.
2889 (elf32_frvfdpic_modify_segment_map): Likewise.
2890 (elf32_frv_finish_dynamic_sections): New, do-nothing.
2891 (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve
2892 error message if we miscompute the rofixup size.
2893 (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC.
2894 (frvfdpic_elf_encode_eh_address): Likewise.
2895 (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC.
2896 Record relocs only in FDPIC. Make sure _gp is defined for GPREL
2897 relocs. Reject unknown relocation types.
2898 (elf32_frv_object_p): Make sure target vector matches FDPIC bits.
2899 (frv_elf_merge_private_bfd_data): Likewise.
2900 (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as
2901 0x4000 for newly-added elf32-frvfdpic.
2902
06fc8a8c
NC
29032004-05-05 Nick Clifton <nickc@redhat.com>
2904
2905 PR/136
2906 * cache.c (bfd_cache_lookup_worker): Call abort() rather than
2907 returning NULL as most users of this function do not check its
2908 return value.
33216455
NC
2909 * hppabsd-core.c (hppabsd_core_core_file_p): Do not check result
2910 of bfd_cache_lookup().
2911 * sco5-core.c (sco5_core_file_p): Likewise.
2912 * trad-core.c (trad_unix_core_file_p): Likewise.
06fc8a8c
NC
2913
29142004-05-05 Nick Clifton <nickc@redhat.com>
2915
2916 * cache.c (bfd_cache_lookup): Improve formatting.
2917 * archive.c: Fix formatting.
2918
6b6e92f4
NC
29192004-05-05 Peter Barada <peter@the-baradas.com>
2920
2921 * bfd_archures.c(bfd_architecture): Add 521x,5249,547x,548x.
2922 * cpu-m68k.c(bfd_m68k_arch): Likewise.
2923 * bfd-in2.h(bfd_architecture): Regenerate.
2924
6a8d1586
AM
29252004-05-03 Alan Modra <amodra@bigpond.net.au>
2926
2927 * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excluded
2928 SEC_MERGE sections.
2929 * elflink.c (elf_link_input_bfd): Adjust output reloc index for
2930 those against discarded link-once and SEC_MERGE section symbols.
2931
fafe6678
L
29322004-05-02 H.J. Lu <hongjiu.lu@intel.com>
2933
2934 * section.c (bfd_get_section_by_name_if): New.
2935 * bfd-in2.h: Regenerated.
2936
ad7b9a36
AM
29372004-05-02 Alan Modra <amodra@bigpond.net.au>
2938
2939 * som.c (som_bfd_is_group_section): Define.
2940
73499ab8
AM
29412004-05-01 Alan Modra <amodra@bigpond.net.au>
2942
2943 * section.c (bfd_make_section_anyway): Copy the whole
2944 bfd_hash_entry, not just "next" from existing entry.
2945
45c5e9ed
L
29462004-04-30 H.J. Lu <hongjiu.lu@intel.com>
2947
2948 * elf.c (bfd_section_from_shdr): Maintain the section order in
2949 a section group.
2950 (special_sections): Add ".note.GNU-stack".
2951 (elf_fake_sections): Handle section group for relocatable
2952 link..
2953
bc87dd2e
L
29542004-04-30 H.J. Lu <hongjiu.lu@intel.com>
2955
2956 * section.c (bfd_sections_find_if): New.
2957 * bfd-in2.h: Regenerated.
2958
72adc230
AM
29592004-04-30 Alan Modra <amodra@bigpond.net.au>
2960
2961 * section.c (bfd_make_section_anyway): Add all sections to hash tab.
2962
2963 * elf-bfd.h (bfd_elf_is_group_section): Declare.
2964 * elf.c (bfd_elf_is_group_section): New function.
2965 * elfxx-target.h (bfd_elfNN_bfd_is_group_section
2966 * section.c (bfd_generic_is_group_section): New function.
2967 * targets.c (struct bfd_target): Add _bfd_is_group_section field.
2968 (BFD_JUMP_TABLE_LINK): Adjust.
2969 * aout-adobe.c (aout_32_bfd_is_group_section): Define.
2970 * aout-target.h (MY_bfd_is_group_section): Define.
2971 * aout-tic30.c (MY_bfd_is_group_section): Define.
2972 * bfd.c (bfd_is_group_section): Define.
2973 * binary.c (binary_bfd_is_group_section): Define.
2974 * bout.c (b_out_bfd_is_group_section): Define.
2975 * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define.
2976 * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define.
2977 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust.
2978 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust.
2979 * coffcode.h (coff_bfd_is_group_section): Define.
2980 * i386msdos.c (msdos_bfd_is_group_section): Define.
2981 * i386os9k.c (os9k_bfd_is_group_section): Define.
2982 * ieee.c (ieee_bfd_is_group_section): Define.
2983 * ihex.c (ihex_bfd_is_group_section): Define.
2984 * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define.
2985 * mach-o.c (bfd_mach_o_bfd_is_group_section): Define.
2986 * mmo.c (mmo_bfd_is_group_section): Define.
2987 * nlm-target.h (nlm_bfd_is_group_section): Define.
2988 * oasys.c (oasys_bfd_is_group_section): Define.
2989 * pef.c (bfd_pef_bfd_is_group_section): Define.
2990 * ppcboot.c (ppcboot_bfd_is_group_section): Define.
2991 * srec.c (srec_bfd_is_group_section): Define.
2992 * tekhex.c (tekhex_bfd_is_group_section): Define.
2993 * versados.c (versados_bfd_is_group_section): Define.
2994 * vms.c (vms_bfd_is_group_section): Define.
2995 * xsym.c (bfd_sym_bfd_is_group_section): Define.
2996 * bfd-in2.h: Regenerate.
2997 * libbfd.h: Regenerate.
2998
20f0a1ad
AM
29992004-04-30 Alan Modra <amodra@bigpond.net.au>
3000
3001 * elflink.c (elf_gc_mark): Follow indirect and warning syms.
3002
f7458fc9 30032004-04-30 Hans-Peter Nilsson <hp@axis.com>
7dfb3b6b
HPN
3004
3005 * configure.in: Update version to 2.15.91.
3006 * configure: Regenerate.
3007
8a7140c3
NC
30082004-04-29 Brian Ford <ford@vss.fsi.com>
3009
3010 * bfd.c (bfd_get_sign_extend_vma): Add pe[i]-i386 case to DJGPP hack.
3011 * coffcode.h (DOT_DEBUG, GNU_LINKONCE_WI): Define.
3012 [!COFF_WITH_PE] (sec_to_styp_flags, styp_to_sec_flags): Use them.
3013 (coff_compute_section_file_positions) [RS6000COFF_C]: Likewise.
3014 [COFF_WITH_PE] (sec_to_styp_flags): Handle DWARF 2/3 .debug* and
3015 .gnu.linkonce.wi. sections.
3016 * pe-i386.c (COFF_SUPPORT_GNU_LINKONCE): Define.
3017 (COFF_SECTION_ALIGNMENT_ENTRIES): Add entries for .debug and
3018 .gnu.linkonce.wi..
3019 * pei-i386.c (COFF_SUPPORT_GNU_LINKONCE): Likewise.
3020 (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
3021
3e722fb5
CD
30222004-04-28 Chris Demetriou <cgd@broadcom.com>
3023
3024 * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
3025 * bfd-in2.h: Regenerate.
3026 * libbfd.h: Likewise.
3027
351e2b5a
DA
30282004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3029
3030 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and
3031 dup_common fields.
3032 (setup_sections): Use som_subspace_dictionary_record struct instead
3033 subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is
3034 is_comdat, is_common or dup_common.
3035 (som_prep_headers): Use som_subspace_dictionary_record struct. Set
3036 is_comdat, is_common and dup_common in section subspace_dict from
3037 copy_data.
3038 (som_begin_writing): Use som_subspace_dictionary_record struct.
3039 (som_finish_writing): Likewise.
3040 (som_bfd_derive_misc_symbol_info): Add support to set is_comdat,
3041 is_common and dup_common flags in info for symbol. Add comment
3042 regarding linker support for these fields. Slightly reorganize
3043 function.
3044 (som_build_and_write_symbol_table): Set is_comdat, is_common and
3045 dup_common fields in symbol table from symbol info.
3046 (bfd_som_set_subsection_attributes): Add comdat, common and dup_common
3047 arguments. Set corresponding fields in copy_data. Change all callers.
3048 (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library
3049 symbol table.
3050 (som_vec): Add SEC_LINK_ONCE to applicable section flags.
3051 * som.h (som_subspace_dictionary_record): Define.
3052 (som_copyable_section_data_struct): Add is_comdat, is_common and
3053 dup_common fields.
3054 (som_section_data_struct): Use som_subspace_dictionary_record struct
3055 instead of subspace_dictionary_record.
3056 (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype.
3057
3ba3bc8c
BW
30582004-04-27 Bob Wilson <bob.wilson@acm.org>
3059
3060 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size
3061 if set. Check reloc_done flag before applying relocations. Use
3062 output addresses, both when applying relocations and when comparing
3063 against the specified section.
3064 (elf_xtensa_relocate_section): Use output address to check if dynamic
3065 reloc is in a literal pool. Set section's reloc_done flag.
3066
beb8df56
L
30672004-04-27 H.J. Lu <hongjiu.lu@intel.com>
3068
3069 * elf32-sh64.c (elf_backend_section_flags): New. Defined.
3070 (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges
3071 section.
3072 (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges
3073 section.
3074
1829f4b2
AM
30752004-04-27 Alan Modra <amodra@bigpond.net.au>
3076
3077 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign
3078 structure field removed in 2004-04-24 patch.
3079 * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix.
3080
3081 * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>):
3082 Constify hdr arg.
3083 * elf32-arm.h (elf32_arm_section_flags): Likewise.
3084 * elf64-alpha.c (elf64_alpha_section_flags): Likewise.
3085 * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise.
3086 * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section
3087 field before calling elf_backend_section_flags.
3088
4030e8f6
CD
30892004-04-24 Chris Demetriou <cgd@broadcom.com>
3090
3091 * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16)
3092 (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove.
3093 (bfd_elf32_bfd_reloc_type_lookup): Remove cases for
3094 BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL,
3095 and BFD_RELOC_32_PCREL.
3096 (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16,
3097 R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32.
3098 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
3099 (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16.
3100 (mips_elf_next_relocation): Move comment about matching HI/LO
3101 relocations to...
3102 (_bfd_mips_elf_relocate_section): Here. Remove handling for
3103 R_MIPS_GNU_REL_HI16.
3104
3e27568f
CD
31052004-04-23 Chris Demetriou <cgd@broadcom.com>
3106
3107 * coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
3108 (mips_switch_reloc, mips_read_relocs, mips_relax_section)
3109 (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
3110 (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
3111 and update comments to reflect current usage.
3112 (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
3113 and MIPS_R_SWITCH, as well as several empty entries. Update comment
3114 for MIPS_R_PCREL16.
3115 (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
3116 (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
3117 for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
3118 (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
3119 type number to be MIPS_R_PCREL16.
3120 (mips_relocate_section): Remove support for link-time relaxation
3121 of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
3122 MIPS_R_RELLO, and MIPS_R_RELHI relocations.
3123 (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
3124 * ecoff.c (ecoff_indirect_link_order): Remove support for link-time
3125 relaxation of branches used by embedded-PIC.
3126 * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
3127 * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
3128 related members, update comment.
3129 * pe-mips.c: Remove disabled (commented-out and #if 0'd)
3130 code related to embedded-PIC.
3131 * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
3132 initialization of now-removed 'adjust' member of
3133 'struct ecoff_debug_info'.
3134
b32de0bc 31352004-04-23 Chris Demetriou <cgd@broadcom.com>
8472310d
CD
3136
3137 * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove.
3138
955af222
PB
31392004-04-21 Philip Blundell <pb@nexus.co.uk>
3140
3141 * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32
3142 relocs for locally defined symbols during -shared final link.
3143 (elf32_arm_final_link_relocate): Likewise.
3144
47a9f7b3
JJ
31452004-04-22 Jakub Jelinek <jakub@redhat.com>
3146
3147 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also
3148 ELF_LINK_POINTER_EQUALITY_NEEDED.
3149 (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED
3150 if r_type is not R_X86_64_PC32.
3151 (elf64_x86_64_finish_dynamic_symbol): If
3152 ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of
3153 SHN_UNDEF symbols.
3154
1f1799d5
KK
31552004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3156
3157 * elf32-sh.c (sh_elf_plt_sym_val): New function.
3158 (elf_backend_plt_sym_val): Define.
3159
0fdea5ce
AC
31602004-04-22 Andrew Cagney <cagney@redhat.com>
3161
3162 * opncls.c (bfd_alloc): Fix type of "wanted" in doco.
3163
5198ba8b
DA
31642004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3165
eb61d2d6 3166 * hpux-core.c (hpux_core_core_file_p): Add cast in call to
5198ba8b
DA
3167 make_bfd_asection.
3168 * som.c (som_set_section_contents): Constantify second argument.
3169 (hppa_som_gen_reloc_type): Abort for unsupported selectors.
3170 (som_object_setup): Rework to avoid warning.
3171 (setup_sections, som_write_fixups, bfd_section_from_som_symbol):
3172 Likewise.
3173
fe2e161a
AC
31742004-04-22 Andrew Cagney <cagney@redhat.com>
3175
3176 * cache.c (bfd_cache_close): Check for a previously closed file.
3177
4c45e5c9
JJ
31782004-04-22 Jakub Jelinek <jakub@redhat.com>
3179
3180 * bfd.c (bfd_get_synthetic_symtab): Define.
3181 * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
3182 NAME##_get_synthetic_symtab.
3183 (struct bfd_target): Add _bfd_get_synthetic_symtab.
3184 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
3185 * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
3186 relplt_name fields.
3187 (_bfd_elf_get_synthetic_symtab): New prototype.
3188 * elfcode.h (elf_get_synthetic_symtab): Define.
3189 * elf.c (_bfd_elf_get_synthetic_symtab): New function.
3190 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
3191 (elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
3192 (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
3193 * bfd-in2.h: Rebuilt.
3194 * libbfd.h: Rebuilt.
3195 * elf32-i386.c (elf_i386_plt_sym_val): New function.
3196 (elf_backend_plt_sym_val): Define.
3197 * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
3198 (elf_backend_plt_sym_val): Define.
3199 * elf32-s390.c (elf_s390_plt_sym_val): New function.
3200 (elf_backend_plt_sym_val): Define.
3201 * elf64-s390.c (elf_s390_plt_sym_val): New function.
3202 (elf_backend_plt_sym_val): Define.
3203 * elf32-sparc (elf32_sparc_plt_sym_val): New function.
3204 (elf_backend_plt_sym_val): Define.
3205 * elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
3206 (elf_backend_plt_sym_val): Define.
3207 * elf32-ppc.c (ppc_elf_plt_sym_val): New function.
3208 (elf_backend_plt_sym_val): Define.
3209 * aout-target.h (MY_get_synthetic_symtab): Define.
3210 * aout-tic30.c (MY_get_synthetic_symtab): Define.
3211 * coff-rs6000.c (rs6000coff_vec): Add
3212 _bfd_nodynamic_get_synthetic_symtab.
3213 (pmac_xcoff_vec): Likewise.
3214 * coff64-rs6000.c (rs6000coff64_vec): Add
3215 _bfd_nodynamic_get_synthetic_symtab.
3216 (aix5coff64_vec): Likewise.
3217 * sunos.c (MY_get_synthetic_symtab): Define.
3218 * vms.c (vms_get_synthetic_symtab): Define.
3219
d2f7ecac
NC
32202004-04-22 Nick Clifton <nickc@redhat.com>
3221
3222 * bfd.c (bfd_archive_filename): Return NULL on NULL input.
3223
fd99574b
NC
32242004-04-22 Peter Barada <peter@the-baradas.com>
3225
3226 * archures.c: Add bfd_mach_mcfv4e to bfd_architecture.
3227 * bfd2-in.h: Regenerate.
3228 * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[].
3229
23867d67
CD
32302004-04-21 Chris Demetriou <cgd@broadcom.com>
3231
3232 * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove.
3233 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove.
3234 * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs)
3235 (bfd_mips_elf32_create_embedded_relocs): Remove prototypes
3236 * bfd-in2.h: Regenerate.
3237
2c8c90bc
BW
32382004-04-21 Bob Wilson <bob.wilson@acm.org>
3239
3240 * elf32-xtensa.c (is_same_value): Add final_static_link argument and
3241 require relocations against a weak symbol to reference the same
3242 symbol hash entry if not a final, static link.
3243 (get_cached_value, add_value_map): Add final_static_link argument.
3244 (remove_literals): Pass final_static_link argument as needed.
3245
40838a72
AC
32462004-04-21 Andrew Cagney <cagney@redhat.com>
3247
3248 * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
3249 (struct opncls, opncls_btell, opncls_bseek, opncls_bread)
3250 (opncls_bwrite, opncls_bclose, opncls_bflush)
3251 (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
3252 bfd iovec that uses function callbacks.
3253 (bfd_close): Use the iovec's bclose.
3254 * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
3255 (cache_bclose, cache_bflush, cache_bstat)
3256 (cache_iovec): New functions and global variable, implement a
3257 cache "iovec", where applicable set bfd_error.
3258 (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
3259 * bfdio.c (struct bfd_iovec): Define.
3260 (real_read): Delete function.
3261 (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
3262 (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
3263 assume that bread and bwrite set bfd_error.
3264 * bfd.c (struct bfd): Add "iovec", update comments.
3265 * bfd-in2.h, libbfd.h: Re-generate.
3266
7f919c84
AC
32672004-04-21 Andrew Cagney <cagney@redhat.com>
3268
3269 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
3270
715df9b8
EB
32712004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
3272
3273 * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function.
3274 (bfd_elf_gc_sections): Fail if a shared object is being created.
3275 Do not fail if dynamic sections have been created. Instead call
3276 elf_gc_mark_dynamic_ref_symbol to mark sections that contain
3277 dynamically referenced symbols. Do not mark the whole graph
3278 rooted at .eh_frame, only the section proper.
3279
6482c264
NC
32802004-04-20 DJ Delorie <dj@redhat.com>
3281
3282 * reloc.c: Add BFD_RELOC_32_SECREL.
3283 * bfd-in2.h: Regenerate.
3284 * libbfd.h: Likewise.
3285 * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32.
3286 (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it.
3287 (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise.
3288
4dc570c2
JJ
32892004-04-19 Jakub Jelinek <jakub@redhat.com>
3290
3291 * elf32-sparc.c (elf32_sparc_relocate_section): Handle
3292 relocs against hidden/protected undefweak symbols properly.
3293 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
3294
0b60d5d3
MK
32952004-04-18 Mark Kettenis <kettenis@gnu.org>
3296
3297 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
3298 * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC
3299 core files.
3300
d48bdb99
AM
33012004-04-17 Brian Ford <ford@vss.fsi.com>
3302
3303 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero
3304 filepos for the SizeOfHeaders field.
3305 (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc
3306 overflow.
3307 (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment.
3308
57a1784e
AM
33092004-04-16 Alan Modra <amodra@bigpond.net.au>
3310
3311 * simple.c (bfd_simple_get_relocated_section_contents): Don't
3312 change reloc_done. Set and restore _cooked_size.
3313 (RETURN): Delete.
3314
d1ad3f6f
MK
33152004-04-15 Mark Kettenis <kettenis@gnu.org>
3316
3317 * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX
3318 core files.
3319
3d1bca9d
NC
33202004-04-15 Nick Clifton <nickc@redhat.com>
3321
3322 * bfd.c (bfd_archive_filename): Catch NULL bfd pointers.
3323
019b892f
AM
33242004-04-15 Alan Modra <amodra@bigpond.net.au>
3325
3326 * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change.
3327
15b43f48
AM
33282004-04-15 H.J. Lu <hongjiu.lu@intel.com>
3329
3330 * elflink.c (_bfd_elf_merge_symbol): Treat weak as strong only
3331 when it is a definition.
3332
6de00a78
AM
33332004-04-14 Alan Modra <amodra@bigpond.net.au>
3334
3335 * elf32-sparc.c (elf32_sparc_relocate_section): Don't abort
3336 when statically linking PIC code.
3337 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
3338
279500de
TS
33392004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3340
3341 * config.bfd: Remove mips*-*-mach3* and mips*-dec-mach3* targets.
3342 * configure.in: Remove mips-dec-bsd*, mips-dec-mach3*, mips-*-mach3*
3343 targets amd aout_mips_big_vec, aout_mips_little_vec target vectors.
3344 * configure: Regenerate.
3345
ccf2f652
RS
33462004-04-08 Richard Sandiford <rsandifo@redhat.com>
3347
3348 * elflink.c: Include libiberty.h.
3349 * Makefile.am (elflink.lo): Depend on libiberty.h.
3350 * Makefile.in: Regenerate.
3351
ca07892d
DJ
33522004-04-06 Daniel Jacobowitz <drow@mvista.com>
3353
3354 * elfxx-mips.c (MIPS_ELF_STUB_SECTION_NAME): Always use
3355 ".MIPS.stubs".
3356
a5a58ba4
L
33572004-04-05 H.J. Lu <hongjiu.lu@intel.com>
3358
3359 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Always
3360 reserve the memory for dynamic linker
3361
24d18d30
MK
33622004-04-05 Mark Kettenis <kettenis@gnu.org>
3363
3364 * netbsd-core.c (CORE_WCOOKIE_OFFSET): New define.
3365 (netbsd_core_file_p): Create a .wcookie section for OpenBSD/sparc.
3366
a4d7b4b5
L
33672004-04-02 H.J. Lu <hongjiu.lu@intel.com>
3368
3369 * elf32-cr16c.c (elf32_cr16c_relocate_section): Use
3370 RELOC_FOR_GLOBAL_SYMBOL.
3371 (elf32_cr16c_add_symbol_hook): Remove const from Elf_Internal_Sym.
3372
1f433d93
L
33732004-04-02 H.J. Lu <hongjiu.lu@intel.com>
3374
3375 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
3376 R_ARM_ALU* only if OLD_ARM_ABI is not defined.
3377
e489d0ae
PB
33782004-04-01 Paul Brook <paul@codesourcery.com>
3379
3380 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.
3381 * elf32-arm.h (struct elf32_elf_section_map): New.
3382 (struct _arm_elf_section_data): New.
3383 (elf32_arm_section_data): Define.
3384 (struct elf32_arm_link_hash_table): Add byteswap_code.
3385 (elf32_arm_link_hash_table_create): Initialize byteswap_code.
3386 (bfd_elf32_arm_process_before_allocation): Add byteswap_code.
3387 (elf32_arm_post_process_headers): Set EF_ARM_BE8.
3388 (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook,
3389 elf32_arm_compare_mapping, elf32_arm_write_section): New functions.
3390 (bfd_elf32_new_section_hook, elf_backend_write_section,
3391 elf_backend_link_output_symbol_hook): Define.
3392
66a695f0
NC
33932004-04-01 Andy Chittenden <achittenden@bluearc.com>
3394
3395 * stabs.c (struct stab_link_includes_totals): Add field 'symb'
3396 that keeps the characters in a B_INCL..B_EINCL range.
3397 (_bfd_link_section_stabs): When computing the sum of the
3398 characters in a B_INCL..B_EINCL range also keep a copy of those
3399 characters. Use this information to distinguish between
3400 include sections that have the same sum and the same length
3401 but which are nevertheless unique.
3402
8375c36b
PB
34032004-03-31 Paul Brook <paul@codesourcery.com>
3404
3405 * elf32-arm.h (elf32_arm_final_link_relocate): Add R_ARM_ALU*.
3406 * elfarm-nabi.c (elf32_arm_howto_table): Ditto.
3407
a56b48eb
NC
34082004-03-31 Andy Chittenden <achittenden@bluearc.com>
3409
3410 * stabs.c (struct stab_link_includes_totals): Rename field 'total'
3411 to 'sum_chars' and add field 'num_chars'.
3412 (_bfd_link_section_stabs): When computing the sum of the
3413 characters in a B_INCL..B_EINCL range also keep a count of the
3414 number of characters. Use this information to help distinguish
3415 between include sections when have the same sum but which
3416 nevertheless are still unique.
3417