]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
* coffgen.c (bfd_coff_get_comdat_section): Check that
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
fedf8d51
AM
12005-02-21 Alan Modra <amodra@bigpond.net.au>
2
3 * coffgen.c (bfd_coff_get_comdat_section): Check that
4 coff_section_data isn't NULL.
5
f075ee0c
AM
62005-02-21 Alan Modra <amodra@bigpond.net.au>
7
8 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix.
9 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise.
10 * coff-rs6000.c (xcoff_write_armap_big): Warning fixes. Remove
11 useless assignments.
12 (xcoff_write_archive_contents_big): Likewise.
13 (_bfd_xcoff_put_ldsymbol_name): Likewise.
14 * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
15 * coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
16 * cofflink.c (process_embedded_commands): Warning fixes.
17 * cpu-arm.c: Delete unnecessary prototypes. Convert to C90.
18 Warning fixes.
19 * dwarf2.c: Warning fixes.
20 * elf-bfd.h: Likewise.
21 * elf-eh-frame.c: Likewise.
22 * elf-strtab.c: Likewise.
23 * elf.c: Likewise.
24 * elf32-m68k.c: Likewise.
25 * elf32-ppc.c: Likewise.
26 * elf32-sh-symbian.c: Likewise.
27 * elf32-sh.c: Delete unnecessary prototypes. Warning fixes.
28 * elf64-sh64.c: Likewise.
29 * peicode.h: Likewise.
30 * elf64-mmix.c: Warning fixes.
31 * elfcode.h: Likewise.
32 * elfxx-mips.c: Likewise.
33 * libbfd-in.h: Likewise.
34 * libbfd.c: Likewise.
35 * mach-o.c: Likewise.
36 * merge.c: Likewise.
37 * mmo.c: Likewise.
38 * opncls.c: Likewise.
39 * pef.c: Likewise.
40 * srec.c: Likewise.
41 * vms-hdr.c: Likewise.
42 * vms-tir.c: Likewise.
43 * xtensa-isa.c: Likewise.
44 * xtensa-modules.c: Likewise.
45 * xsym.c: Likewise.
46 (pstrcmp): Use correct choice of string lengths. Fix return value.
47 (bfd_sym_module_name): Correct string length.
48 * bfd-in2.h: Regenerate.
49 * libbfd.h: Regenerate.
50
68320ddb
AO
512005-02-17 Alexandre Oliva <aoliva@redhat.com>
52
53 * elf32-frv.c (elf32_frv_relocate_section): Remove warning from
fedf8d51 54 uninitialized check_segment[1] in TLSMOFF case.
68320ddb
AO
55 Reported by Alan Modra.
56 (elf32_frv_relocate_section): Improve errors and warnings.
57
1808e341
AM
582005-02-17 Alan Modra <amodra@bigpond.net.au>
59
60 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Fix warning.
61
5ff625e9
AM
622005-02-16 Alan Modra <amodra@bigpond.net.au>
63
64 * coff-arm.c (coff_arm_is_local_label_name): Warning fix.
65 * elf32-frv.c (frvfdpic_relocs_info_hash): Likewise.
66 * pef.c (bfd_pef_scan): Don't ignore return value of
67 bfd_pef_scan_start_address.
7e3102a7
AM
68 * mach-o.c (bfd_mach_o_scan): Don't ignore return value of
69 bfd_mach_o_scan_start_address.
70 * elfxx-ia64.c (elfNN_ia64_relax_brl): Rewrite for 32-bit bfd_vma.
71 * elfxx-mips.c: Remove unnecessary prototypes.
72 (sort_dynamic_relocs_64): Abort if not BFD64.
5ff625e9 73
92b7a70f
AM
742005-02-16 Alan Modra <amodra@bigpond.net.au>
75
76 * elf64-ppc.c (ppc64_elf_edit_toc): Skip toc if size is zero.
77 Skip toc reloc adjust if reloc_count is zero.
78
d6f16593 792005-02-15 Nigel Stephens <nigel@mips.com>
fedf8d51 80 Maciej W. Rozycki <macro@mips.com>
d6f16593
MR
81
82 * elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
83 reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
84 R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
85 (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
86 (elf_mips16_gprel_howto): Likewise. Redefine src_mask and
87 dst_mask.
88 (mips16_gprel_reloc): Remove bit shuffling; call
89 _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
90 and _bfd_mips16_elf_reloc_shuffle() instead.
91 (mips16_reloc_map): New reloc map for MIPS16 relocs.
92 (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
93 relocs.
94 (mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from
95 elf_mips16_howto_table_rel.
96 * elf64-mips.c (mips16_elf64_howto_table_rel): New array for
97 MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16
98 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
99 (elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel.
100 (elf_mips16_gprel_howto): Likewise. Redefine src_mask and
101 dst_mask.
102 (mips16_elf64_howto_table_rela): New array for MIPS16 RELA
103 reloc howtos. Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and
104 R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16
105 placeholders.
106 (mips16_gprel_reloc): Remove bit shuffling; call
107 _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
108 and _bfd_mips16_elf_reloc_shuffle() instead.
109 (mips16_reloc_map): New reloc map for MIPS16 relocs.
110 (bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
111 relocs.
112 (mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from
113 mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel.
114 * elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
115 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
116 R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
117 (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
118 (elf_mips16_gprel_howto): Likewise. Redefine src_mask and
119 dst_mask.
120 (mips16_gprel_reloc): Remove bit shuffling; call
121 _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
122 and _bfd_mips16_elf_reloc_shuffle() instead.
123 (mips16_reloc_map): New reloc map for MIPS16 relocs.
124 (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
125 relocs.
126 (mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from
127 elf_mips16_howto_table_rela or elf_mips16_howto_table_rel.
128 * elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to
129 handle bit shuffling for MIPS16 relocs.
130 (_bfd_mips16_elf_reloc_shuffle): Likewise.
131 (_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle()
132 and _bfd_mips16_elf_reloc_shuffle().
133 (_bfd_mips_elf_generic_reloc): Likewise.
134 (mips_elf_calculate_relocation): Likewise. Handle R_MIPS16_HI16
135 and R_MIPS16_LO16.
136 (mips_elf_obtain_contents): Remove bit shuffling.
137 (mips_elf_perform_relocation): Likewise; call
138 _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle()
139 instead.
140 (_bfd_mips_elf_relocate_section): Likewise. Handle R_MIPS16_HI16
141 and R_MIPS16_LO16.
142 * elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare.
143 (_bfd_mips16_elf_reloc_shuffle): Likewise.
144 * reloc.c (BFD_RELOC_MIPS16_HI16): New reloc.
145 (BFD_RELOC_MIPS16_HI16_S): Likewise.
146 (BFD_RELOC_MIPS16_LO16): Likewise.
147 * bfd-in2.h: Regenerate.
148 * libbfd.h: Regenerate.
149
0ca3e455
JB
1502005-02-15 Jan Beulich <jbeulich@novell.com>
151
152 * elfxx-ia64.c (ia64_howto_table): Correct strings for
153 R_IA64_DTPMOD64[LM]SB.
154
c5509b92
L
1552005-02-14 H.J. Lu <hongjiu.lu@intel.com>
156
157 * elfxx-ia64.c (elfNN_ia64_relax_section): Allow relax
158 backward branch in the same section.
159 (elfNN_ia64_relocate_section): Inform users that the input
160 section is too big to relax br instruction when overflow
161 happens to R_IA64_PCREL21B, R_IA64_PCREL21BI, R_IA64_PCREL21M
162 and R_IA64_PCREL21F.
163
5cba516c
NC
1642005-02-14 Orjan Friberg <orjanf@axis.com>
165
166 * elfcore.h (elf_core_file_p): Move the call to
167 elf_backend_object_p to allow the correct machine to be set before
168 processing the program headers.
169
b59a68e1
NC
1702005-02-14 Nick Clifton <nickc@redhat.com>
171
172 PR binutils/716
173 * peicode.h (pe_bfd_copy_private_bfd_data): Copy the large address
174 aware flag from the input bfd to the output bfd.
175
254f0426
MR
1762005-02-11 Maciej W. Rozycki <macro@mips.com>
177
178 * elf32-mips.c (_bfd_mips_elf32_gprel16_reloc): Reject
179 R_MIPS_LITERAL relocations for external symbols.
180 * elf64-mips.c (mips_elf64_literal_reloc): Likewise.
181 * elfn32-mips.c (mips_elf_literal_reloc): Likewise.
182
e91cdea7
L
1832005-02-11 H.J. Lu <hongjiu.lu@intel.com>
184
185 * bfd-in2.h: Rebuilt.
186
67687978
PB
1872005-02-11 Paul Brook <paul@codesourcery.com>
188
189 * elf-bfd.h (struct elf_link_hash_table): Add
190 is_relocatable_executable.
191 * elf.c (_bfd_elf_link_hash_table_init): Initialize it.
192 * elflink.c (bfd_elf_link_record_dynamic_symbol): Create local dynamic
193 symbols in relocatable executables.
194 (bfd_elf_record_link_assignment): Create dynamic section symbols in
195 relocatable executables.
196 (_bfd_elf_link_renumber_dynsyms): Ditto.
197 (bfd_elf_final_link): Ditto.
198 * elf32-arm.c (elf32_arm_final_link_relocate): Copy absolute
199 relocations into relocatable executables.
200 (elf32_arm_check_relocs): Crate dynamic sections for relocatable
201 executables. Also copy absolute relocations.
202 (elf32_arm_adjust_dynamic_symbol): Don't create copy relocations
203 in relocatable executables.
204 (allocate_dynrelocs): Copy relocations for relocatable executables.
205 Output dynamic symbols for symbols defined in linker scripts.
206
ca724bf2
NC
2072005-02-11 Nick Clifton <nickc@redhat.com>
208
4b74b983
NC
209 * libbfd.c (read_signed_leb128): Use an unsigned type for 'shift'
210 to avoid a compile time warning.
211
ca724bf2
NC
212 * coff-alpha.c (alpha_adjust_reloc_in): Remove redundant test from
213 BFD_ASSERT.
214
3e25964f
NC
215 * coff-tic4x.c (coff_rtype_to_howto): Move definition before
216 inclusion of coffcode.h so that it is actually picked up.
217
cb7a88a4
NC
218 * coffcode.h (coff_std_swap_table): Add an unused attribute in
219 case it is not used.
220
596c83ec
NC
221 * elf32-ip2k.c (ip2k_call_opcode, IS_CALL_OPCODE): Remove unused
222 structure and macro.
223
6c408f53
NC
224 * elf32-iq2000.c (iq2000_reloc_map): Remove unused structure and
225 array.
226
d5b2f13b
NC
227 * elf32-m32r.c (m32r_reloc_map_old): Use #ifdef USE_M32R_OLD_RELOC
228 to protect the declaration of this array.
229
169a6afd
NC
230 * xsym.c (bfd_sym_parse_contained_variables_table_entry_v32):
231 Avoid call to memcpy with a size of 0.
232
2917689a
AM
2332005-02-12 Alan Modra <amodra@bigpond.net.au>
234
235 * elf64-ppc.c (toc_adjusting_stub_needed): Return true for
236 old-style branches to undefined dot-symbols which will be
237 satisfied by a plt call.
238
40d16e0b
AM
2392005-02-11 Alan Modra <amodra@bigpond.net.au>
240
241 * elf64-ppc.c (move_plt_plist): New function, extracted from..
242 (ppc64_elf_copy_indirect_symbol): ..here.
243 (func_desc_adjust): Use move_plt_plist.
244
e37c699c
PB
2452005-02-10 Paul Brook <paul@codesourcery.com>
246
247 * elf32-arm.c (elf32_arm_final_link_relocate): Handle R_ARM_THM_PC9.
248
6fa3860b
PB
2492005-02-10 Paul Brook <paul@codesourcery.com>
250
251 * elflink.c (bfd_elf_record_link_assignment): Make hidden and internal
252 symbols local.
253 (elf_link_renumber_hash_table_dynsyms): Ignore local symbols.
254 (elf_link_renumber_local_hash_table_dynsyms): New function.
255 (_bfd_elf_link_renumber_dynsyms): Number local dynamic symbols.
256
d457dcf6
JJ
2572005-02-10 Jakub Jelinek <jakub@redhat.com>
258
259 * bfd-in.h (BFD_LINKER_CREATED): Define.
260 * bfd-in2.h: Rebuilt.
261 * elflink.c (bfd_elf_size_dynamic_sections): Disregard
262 BFD_LINKER_CREATED bfds when determining input bfds without
263 .note.GNU-stack section.
264
7f05722e
MR
2652005-02-10 Maciej W. Rozycki <macro@mips.com>
266
267 * elf64-mips.c (mips16_gprel_reloc): Update a comment.
268 * elfn32-mips.c (mips16_gprel_reloc): Keep R_MIPS16_GPREL
269 relocations against external symbols unchanged.
270
ccf5f610
PB
2712005-02-08 Paul Brook <paul@codesourcery.com>
272
273 * elflink.c (elf_link_input_bfd): Ignore symbols from null input
274 sections.
275
370a0e1b
HPN
2762005-02-08 Hans-Peter Nilsson <hp@axis.com>
277
278 * elflink.c (elf_link_add_object_symbols): Don't add "warning: "
279 prefix here.
280
99277196
MR
2812005-02-07 Maciej W. Rozycki <macro@mips.com>
282
283 * elf64-mips.c: Fix formatting throughout.
284
6422fbef
MR
2852005-02-07 Maciej W. Rozycki <macro@mips.com>
286
287 * elfn32-mips.c (elf_mips_howto_table_rela): Fix a comment typo.
288
303e4c21
AO
2892005-02-07 Alexandre Oliva <aoliva@redhat.com>
290
291 * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove special handling for
292 *ABS*/*UND* sections.
293 (elf32_frv_relocate_section): Move zero-addend-required error...
294 (_frv_emit_got_relocs_plt_entries): ... here. Report error for
295 missing needed TLS section.
296
c3864421
HPN
2972005-02-07 Hans-Peter Nilsson <hp@axis.com>
298
299 * aoutx.h (NAME(aout,find_nearest_line)): Correct case for N_SO
300 being the last symbol.
9f400ee9
HPN
301 (aout_link_add_symbols): Just return TRUE if a warning
302 symbol was last.
c3864421 303
765f2ef6
MR
3042005-02-07 Maciej W. Rozycki <macro@mips.com>
305
306 * elf32-mips.c (mips_elf_gprel32_reloc): Reject
307 R_MIPS_GPREL32 relocations against external symbols.
308 * elf64-mips.c (mips_elf64_gprel32_reloc): Replace an incorrect
309 comment.
310
1b3a8575
AM
3112005-02-07 Alan Modra <amodra@bigpond.net.au>
312
313 * elf-bfd.h (elf_string_from_elf_strtab): Delete macro.
314 * elf.c (bfd_elf_string_from_elf_section): Expand occurrence of
315 elf_string_from_elf_strtab.
316 (_bfd_elf_setup_group_pointers, bfd_section_from_shdr): Likewise.
317 (bfd_section_from_shdr): For SHT_SYMTAB, load SHT_SYMTAB_SHNDX too
318 if it exists. Don't do the reverse for SHT_SYMTAB_SHNDX. For
319 SHT_STRTAB, check whether the strtab is for symtab or dynsymtab by
320 looking at cached symtab info first, before iterating over headers.
321 For SHT_REL and SHT_RELA, load dynsymtab if needed.
322 * elfcode.h (elf_object_p): Don't load section header stringtab
323 specially.
324
90f487df
L
3252005-02-06 H.J. Lu <hongjiu.lu@intel.com>
326
327 * elf32-i386.c (elf_i386_relocate_section): Disallow R_386_GOTOFF
328 against protected function when building shared library.
329
330 PR 584
331 * elf64-x86-64.c (is_32bit_relative_branch): New.
332 (elf64_x86_64_relocate_section): Alllow R_X86_64_PC32 on a
333 protected function symbol when building shared library for
334 32bit relative branch instruction.
335
c4f68ce3
AM
3362005-02-06 Alan Modra <amodra@bigpond.net.au>
337
338 * elf64-ppc.c (add_symbol_adjust): Don't create fake descriptor
339 syms when doing a relocatable link.
340 (ppc64_elf_gc_mark_hook): Check that syms are defined before looking
341 at u.def.section.
342 (ppc64_elf_tls_setup): Likewise.
343 (ppc64_elf_edit_opd): Don't use an undefined func desc sym.
344
908b32fc
AM
3452005-02-04 Alan Modra <amodra@bigpond.net.au>
346
347 * elf64-ppc.c (struct ppc_link_hash_entry): Add "fake".
348 (link_hash_newfunc): Clear all locals using memset.
349 (make_fdh): Remove flags param. Always create fake func desc
350 weak. Link the descriptor with the code entry sym.
351 (ppc64_elf_archive_symbol_lookup): Don't return fake syms.
352 (add_symbol_adjust): Adjust make_fdh call.
353 (func_desc_adjust): Likewise. Twiddle any pre-existing fake
354 descriptor to strong undefined if code entry is strong.
355
4ea42fb7
AM
3562005-02-04 Alan Modra <amodra@bigpond.net.au>
357
358 * elflink.c (bfd_elf_record_link_assignment): Do "provide" symbol
359 lookup here. Set to new before calling bfd_link_repair_undef_list.
360 (elf_smash_syms): Check that u.undef.weak isn't the not_needed bfd.
361
10d86c8a
AM
3622005-02-03 Alan Modra <amodra@bigpond.net.au>
363
364 * linker.c (_bfd_link_hash_newfunc): Set all local fields.
365
11f25ea6
AM
3662005-02-03 Alan Modra <amodra@bigpond.net.au>
367
368 * linker.c (_bfd_generic_link_add_one_symbol): Set u.undef.weak.
369 * elflink.c (elf_smash_syms): Restore symbols that were undefweak
370 before the as-needed lib was loaded. Abort on unexpected refs.
371
4f40114d
AM
3722005-02-02 Alan Modra <amodra@bigpond.net.au>
373
ec13b3bb
AM
374 * elflink.c (elf_smash_syms): Expand comments.
375 (elf_link_add_object_symbols): Only call elf_smash_syms for
376 as-needed dynamic objects.
377
4f40114d
AM
378 * elfxx-ia64.c (elfNN_ia64_new_elf_hash_entry): Don't clear
379 everything, just the field specific to ia64.
336549c1 380 * elf64-hppa.c (elf64_hppa_new_dyn_hash_entry): Likewise.
4f40114d 381
bb700d78
AM
3822005-02-01 Alan Modra <amodra@bigpond.net.au>
383
384 * elf64-ppc.c (func_desc_adjust): Move code creating func desc sym to..
385 (make_fdh): ..here. New function. Don't set BSF_OBJECT for
386 undefined syms.
387 (struct add_symbol_adjust_data): New.
388 (add_symbol_adjust): Make an undefweak func desc for old ABI
389 objects to link with --as-needed shared libs. Return fail status.
390 Don't adjust old ABI func entry sym to weak if func desc syms
391 isn't defined.
392 (ppc64_elf_check_directives): Adjust call to add_symbol_adjust,
393 and return status.
394
1ffd1c2f
HPN
3952005-02-01 Hans-Peter Nilsson <hp@axis.com>
396
397 * cpu-cris.c (get_compatible): Rearrange disabled code and comment
398 for clarity.
399
77cfaee6
AM
4002005-02-01 Alan Modra <amodra@bigpond.net.au>
401
402 * elf64-ppc.c (ppc64_elf_check_directives): Move undefs list fixup..
403 * linker.c (bfd_link_repair_undef_list): ..to new function, but don't
404 remove anything but new and undefweak.
405 * elflink.c (_bfd_elf_link_create_dynamic_sections): Override any
406 existing _DYNAMIC.
407 (_bfd_elf_create_dynamic_sections): Formatting.
408 (bfd_elf_record_link_assignment): Call bfd_link_repair_undef_list.
409 (_bfd_elf_merge_symbol): Don't handle as-needed syms here.
410 (struct elf_smash_data): New.
411 (elf_smash_syms): New function.
412 (elf_link_add_object_symbols): Call elf_smash_syms. Don't add
413 unneeded dynamic objects to loaded list.
414 (elf_link_output_extsym): Don't handle as-needed here. Strip
415 bfd_link_hash_new symbols.
416 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
417 delref when dynindx is already -1.
418 * elf64-alpha.c (elf64_alpha_output_extsym): Strip bfd_link_hash_new
419 symbols.
420 * elfxx-mips.c (mips_elf_output_extsym): Likewise.
421
b15c48d1
BE
4222005-02-01 Ben Elliston <bje@au.ibm.com>
423
424 * elfxx-target.h (bfd_elfNN_bfd_discard_group): Redefine.
425
0983f4eb 4262005-02-01 Ben Elliston <bje@au.ibm.com>
0e71e495
BE
427
428 * aout-arm.c, aout-target.h, aoutx.h, archive.c, armnetbsd.c,
429 bfd-in.h, bfdio.c, coff-alpha.c, coff-arm.c, coff-h8300.c,
430 coff-i860.c, coff-mcore.c, coff-or32.c, coff-ppc.c, coff-sh.c,
431 coff-sparc.c, coffcode.h, coffgen.c, cofflink.c, cpu-cris.c,
432 cpu-h8500.c, cpu-ns32k.c, ecoff.c, ecofflink.c, elf.c,
433 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-hppa.c,
434 elf32-i860.c, elf32-ip2k.c, elf32-m32r.c, elf32-sh.c,
435 elf32-v850.c, elf64-mips.c, elf64-sparc.c, elflink.c,
436 i386aout.c, i386msdos.c, i386os9k.c, ieee.c, mach-o.c,
437 nlm32-sparc.c, oasys.c, opncls.c, pdp11.c, pe-mips.c, peXXigen.c,
438 pef.c, peicode.h, reloc.c, riscix.c, section.c, simple.c, som.c,
439 sparclynx.c, targets.c, vms-misc.c, vms-tir.c, xsym.c, doc/chew.c,
440 hosts/delta68.h, hosts/vaxbsd.h: Remove #if 0'd code
441 throughout. Similarly, collapse #if 1'd code.
442
4432005-02-01 Ben Elliston <bje@au.ibm.com>
444
0983f4eb
BE
445 * elf-bfd.h (bfd_elf_discard_group): Remove.
446 * elf.c (bfd_elf_discard_group): Likewise.
447 * elfxx-target.h (bfd_elfNN_bfd_discard_group): Remove macro.
448
8c946ed5
RS
4492005-01-31 Richard Sandiford <rsandifo@redhat.com>
450
451 * elf-bfd.h (elf_backend_data): Add elf_backend_eh_frame_address_size.
452 (_bfd_elf_eh_frame_address_size): Declare.
453 * elfxx-target.h (elf_backend_eh_frame_address_size): Define a default.
454 (elfNN_bed): Initialize elf_backend_eh_frame_address_size.
455 * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Declare.
456 (elf_backend_eh_frame_address_size): Define.
457 * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): New function.
458 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Get the address
459 size from the new backend hook.
460 (_bfd_elf_write_section_eh_frame): Likewise.
461 (_bfd_elf_eh_frame_address_size): New function.
462
c46f8c51
AC
4632005-01-31 Andrew Cagney <cagney@gnu.org>
464
465 * configure: Regenerate to track ../gettext.m4.
466
5cd3778d
MM
4672005-01-31 Mark Mitchell <mark@codesourcery.com>
468
469 * elf32-arm.c (elf32_arm_symbian_special_sections): Do not set
470 SHF_WRITE for .init_array, .fini_array, and .preinit_array.
ec13b3bb 471
d6486796
NC
4722005-01-31 Nick Clifton <nickc@redhat.com>
473
474 * confg.bfd: Make targets scheduled for obsoletion (m68k-lynxos,
475 sparc-lynxos, vax-vms) be obsolete.
476
b1342370
DJ
4772005-01-28 Daniel Jacobowitz <dan@codesourcery.com>
478
479 * elf-bfd.h (struct elf_backend_data): Add minpagesize.
480 * elf32-arm.c (ELF_MINPAGESIZE): Define.
481 * elf32-ppc.c (ELF_MINPAGESIZE): Define.
482 * elfcode.h (elf_object_p): Use minpagesize instead of
483 maxpagesize.
484 * elfxx-target.h (ELF_MINPAGESIZE): Default to ELF_MAXPAGESIZE.
485 (elfNN_bed): Include ELF_MINPAGESIZE.
486
319850b4
JB
4872005-01-28 Julian Brown <julian@codesourcery.com>
488
489 * bin-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
490 * bin-in2.h (bfd_elf32_arm_set_target_relocs): Update prototype.
491 * elf32-arm.c (elf32_arm_link_hash_table): Add fix_v4bx flag.
492 (bfd_elf32_arm_set_target_relocs): Add formal parameter fix_v4bx for
ec13b3bb 493 passing flag value from ld. Set flag value in global hash table entry.
319850b4 494 (elf32_arm_final_link_relocate): Add code to implement R_ARM_V4BX
ec13b3bb 495 relocation.
319850b4 496
a53bf506
AC
4972005-01-27 Andrew Cagney <cagney@gnu.org>
498
499 * configure: Regenerate to track ../gettext.m4 change.
500
dc4c9c19
MM
5012005-01-25 Mark Mitchell <mark@codesourcery.com>
502
503 * elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for
ec13b3bb 504 SymbianOS.
dc4c9c19 505
90219bd0
AO
5062005-01-25 Alexandre Oliva <aoliva@redhat.com>
507
508 2004-12-10 Alexandre Oliva <aoliva@redhat.com>
509 * elf32-frv.c (elf32_frv_relocate_section): Force local binding
510 for TLSMOFF.
511 * reloc.c: Add R_FRV_TLSMOFF.
512 * elf32-frv.c (elf32_frv_howto_table): Likewise.
513 (frv_reloc_map, frv_reloc_type_lookup): Map it.
514 (elf32_frv_relocate_section): Handle it.
515 (elf32_frv_check_relocs): Likewise.
516 * libbfd.h, bfd-in2.h: Rebuilt.
517 2004-11-26 Alexandre Oliva <aoliva@redhat.com>
518 * elf32-frv.c (_frvfdpic_emit_got_relocs_plt_entries): Don't crash
519 when given an undefweak TLS symbol. Fix constant TLS PLT entries
520 such that they return the constant in gr9.
521 (_frvfdpic_relax_tls_entries): Don't crash for undefweak TLS
522 symbols.
523 (_frvfdpic_size_got_plt): Set _cooked_size of dynamic sections.
524 too, such that they shrink on relaxation.
525 (elf32_frvfdpic_finish_dynamic_sections): Check __ROFIXUP_END__ as
526 marking the position right past the _GLOBAL_OFFSET_TABLE_ value.
527 (_frvfdpic_assign_plt_entries): Shrink constant TLS PLT entries
528 if we can guarantee the use of 16-bit constants.
529 2004-11-10 Alexandre Oliva <aoliva@redhat.com>
530 Introduce TLS support for FR-V FDPIC.
531 * reloc.c: Add TLS relocations.
532 * elf32-frv.c (elf32_frv_howto_table): Add TLS relocations.
533 (elf32_frv_rel_tlsdesc_value_howto): New.
534 (elf32_frv_rel_tlsoff_howto): New.
535 (frv_reloc_map): Add new mappings.
536 (struct frvfdpic_elf_link_hash_table): Add pointer to summary
537 reloc information.
538 (frvfdpic_dynamic_got_plt_info): New.
539 (frvfdpic_plt_tls_ret_offset): New.
540 (ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE): Move earlier.
541 (struct _frvfdpic_dynamic_got_info): Likewise. Add TLS members.
542 (struct _frvfdpic_dynamic_got_plt_info): Likewise.
543 (FRVFDPIC_SYM_LOCAL): Regard symbols defined in the absolute
544 section as local.
545 (struct frvfdpic_relocs_info): Add TLS fields.
546 (frvfdpic_relocs_info_hash): Warning clean up.
547 (frvfdpic_relocs_info_find): Initialize tlsplt_entry.
548 (frvfdpic_pic_merge_early_relocs_info): Merge TLS fields.
549 (FRVFDPIC_TLS_BIAS): Define.
550 (tls_biased_base): New.
551 (_frvfdpic_emit_got_relocs_plt_entries): Deal with TLS
552 relocations.
553 (frv_reloc_type_lookup): Likewise.
554 (frvfdpic_info_to_howto_rel): Likewise.
555 (elf32_frv_relocate_section): Likewise.
556 (_frv_create_got_section): Create the PLT section here.
557 (elf32_frvfdpic_create_dynamic_sections): Not here.
558 (_frvfdpic_count_nontls_entries): Move out of...
559 (_frvfdpic_count_got_plt_entries): ... here.
560 (_frvfdpic_count_tls_entries): Likewise. Add TLS support.
561 (_frvfdpic_count_relocs_fixups): Likewise. Add relaxation
562 support.
563 (_frvfdpic_relax_tls_entries): New.
564 (_frvfdpic_compute_got_alloc_data): Add TLS support.
565 (_frvfdpic_get_tlsdesc_entry): New.
566 (_frvfdpic_assign_got_entries): Add TLS support.
567 (_frvfdpic_assign_plt_entries): Likewise.
568 (_frvfdpic_reset_got_plt_entries): New.
569 (_frvfdpic_size_got_plt): Move out of...
570 (elf32_frvfdpic_size_dynamic_sections): ... here.
571 (_frvfdpic_relax_got_plt_entries): New.
572 (elf32_frvfdpic_relax_section): New.
573 (elf32_frvfdpic_finish_dynamic_sections): Add TLS sanity check.
574 (elf32_frv_check_relocs): Add TLS support.
575 (bfd_elf32_bfd_relax_section): Define for FDPIC.
576 * libbfd.h, bfd-in2.h: Rebuilt.
577
8615f3f2
AM
5782005-01-25 Alan Modra <amodra@bigpond.net.au>
579
580 * elf.c (_bfd_elf_get_dynamic_reloc_upper_bound): Only include
581 loadable reloc sections.
582 (_bfd_elf_canonicalize_dynamic_reloc): Likewise.
583 (_bfd_elf_get_synthetic_symtab): Return 0 if no dynamic syms.
584
7e9f0867
AM
5852005-01-25 Alan Modra <amodra@bigpond.net.au>
586
587 * elflink.c (elf_link_add_object_symbols): Don't create link dynamic
588 sections immediately when linking shared libs. Instead, wait until
589 we know a lib is needed.
590 (_bfd_elf_link_create_dynstrtab): Extract from..
591 (_bfd_elf_link_create_dynamic_sections_): ..here.
592 (elf_add_dt_needed_tag): Call _bfd_elf_link_create_dynstrtab and
593 _bfd_elf_link_create_dynamic_sections. Add abfd param. Allow
594 for non-existent .dynamic.
595 (elf_link_output_extsym): Don't complain about undefined symbols
596 in as-needed dynamic libs that aren't actually linked.
597
45181ed1
AC
5982005-01-24 Andrew Cagney <cagney@gnu.org>
599
600 * configure: Regenerate, ../gettext.m4 was updated.
601
753e3eb6
BE
6022005-01-21 Ben Elliston <bje@au.ibm.com>
603
604 * aout-encap.c: Remove unused file.
605
1c16dfa5
L
6062005-01-19 H.J. Lu <hongjiu.lu@intel.com>
607
608 PR 679
609 * elflink.c (_bfd_elf_dynamic_symbol_p): Only protected
610 non-function symbols are local.
611 (_bfd_elf_symbol_refs_local_p): Likewise.
612
1449d79b
AM
6132005-01-18 Alan Modra <amodra@bigpond.net.au>
614
615 * bfd.c (bfd_link_just_syms): Add abfd param.
616 * bfd-in2.h: Regenerate.
617
dcf507a6
RS
6182005-01-17 Richard Sandiford <rsandifo@redhat.com>
619
620 * elf-eh-frame.c (skip_cfa_op, skip_non_nops): New functions.
621 (_bfd_elf_discard_section_eh_frame): Use them to interpret the CFA
622 instructions. If the amount of padding is known, reduce the size
623 of the CIE or FDE by that amount.
624
2c42be65
RS
6252005-01-17 Richard Sandiford <rsandifo@redhat.com>
626
627 * elf-bfd.h (struct cie): Use bfd_vmas for code_align, ra_column and
628 augmentation_size. Use bfd_signed_vmas for data_align.
629 * elf-eh-frame.c (read_uleb128, read_sleb128): Delete in favor of...
630 (read_byte, skip_leb128, read_uleb128, read_sleb128): ...these new
631 functions. Don't read past the end of the enclosing CIE or FDE.
632 (skip_bytes): New utility function.
633 (_bfd_elf_discard_section_eh_frame): Use new functions, adding more
634 sanity checking.
635 (_bfd_elf_write_section_eh_frame): Use new functions.
636
acfe5567
RS
6372005-01-17 Richard Sandiford <rsandifo@redhat.com>
638
639 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use an
640 assert-style REQUIRE() macro to handle sanity checks.
641
c0c28ab8
L
6422005-01-17 H.J. Lu <hongjiu.lu@intel.com>
643
644 * dwarf2.c (dwarf2_debug): Move info_ptr_unit to ...
645 (comp_unit): Here.
646 (read_unsigned_leb128): Removed.
647 (read_signed_leb128): Removed.
648 (find_abstract_instance_name): Updated.
649 (parse_comp_unit): Accept info_ptr_unit.
650 (_bfd_dwarf2_find_nearest_line): Set info_ptr_unit for each
651 comp unit and pass it to parse_comp_unit.
652
653 * elf-eh-frame.c (read_unsigned_leb128): Moved to ...
654 (read_signed_leb128): Moved to ...
655 * libbfd.c: Here.
656
657 * libbfd-in.h (read_unsigned_leb128): New prototype.
658 (read_signed_leb128): Likewise.
659 * libbfd.h: Regenerated.
660
e38bc3b5
NC
6612005-01-17 Andrew Stubbs <andrew.stubbs@st.com>
662 Nick Clifton <nickc@redhat.com>
663
664 * cpu-sh.c (bfd_to_arch_table): Change arch_sh1_up to arch_sh_up,
665 arch__sh4_nofp_up to arch_sh4_nofpu_up and arch_sh4a_nofp_up to
666 arch_sh4a_nofpu_up in order to match the external names and make the
667 testsuite's job easier.
668 * archuires.c: Rename bfd_mach_sh2a_fake? to more meaningful
669 names.
670 * bfd-in2.h: Regenerate.
671
8fb84ecc
AC
6722005-01-15 Andrew Cagney <cagney@gnu.org>
673
674 * bfd.m4: New file.
675 * acinclude.m4: Move BFD_NEED_DECLARATION,
676 BFD_HAVE_SYS_PROCFS_TYPE and BFD_HAVE_SYS_PROCFS_TYPE_MEMBER to
677 the new file bfd.m4. Include ../bfd/bfd.m4.
678 * configure: Re-generate.
8615f3f2 679
b4a38de6
AM
6802005-01-12 Alan Modra <amodra@bigpond.net.au>
681
682 * elf32-ppc.c (ppc_elf_howto_raw): Delete RELAX32* entries.
683 (ppc_elf_relax_section): Use PLT variants of RELAX32 relocs for
684 reaching PLT.
685 (ppc_elf_relocate_section): Handle R_PPC_RELAX32_PLT and
686 R_PPC_RELAX32PC_PLT.
687
3eb128b2
AM
6882005-01-11 Alan Modra <amodra@bigpond.net.au>
689
690 * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Follow indirect and warning
691 symbols.
692 * elf32-arm.c (elf32_arm_gc_sweep_hook): Likewise.
693 * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise.
694 * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise.
695 * elf32-i386.c (elf_i386_gc_sweep_hook): Likewise.
696 * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise.
697 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise.
698 * elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise.
699 * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
700 * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
701 * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise.
702 * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
703 * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise.
704 * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
705 * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
706
264a1fe0
AM
7072005-01-11 Alan Modra <amodra@bigpond.net.au>
708
709 * elf32-ppc.c (ppc_elf_create_dynamic_sections): Correct
710 .dynsbss flags.
711
5c4504f7
NC
7122005-01-10 Inderpreet Singh <inderpreetb@noida.hcltech.com>
713
714 * archures.c: Define bfd_mach_maxq10 and bfd_mach_maxq20.
715 * bfd-in2.h: Regenerate.
716 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Add code
717 to support these new machine values.
718 * cpu-maxq.c (bfd_maxq10_arch): New architecture definition for
719 the maxq10.
720 (bfd_maxq_arch): Update values for the maxq20.
721
669460c7
EB
7222005-01-10 Eric Botcazou <ebotcazou@libertysurf.fr>
723
724 * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): When linking a
725 non-shared object, do not reserve space in .plt and .rela.plt for
726 regular symbols neither defined nor referenced in shared objects.
727
a51a7930
EB
7282005-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
729
01aac484
EB
730 * elf32-sparc.c (elf32_sparc_link_hash_table_create): Use bfd_zmalloc
731 to zero the structure.
732 (create_got_section): Use BFD_ASSERT instead of abort.
a51a7930
EB
733 * elf64-sparc.c (struct sparc64_elf_link_hash_table): New 'sgot' and
734 'srelgot' fields.
735 (create_got_section): New function.
736 (sparc64_elf_create_dynamic_sections): Likewise.
737 (sparc64_elf_check_relocs): Invoke create_got_section instead of
738 _bfd_elf_create_got_section. Use the sgot and srelgot shortcuts.
739 (sparc64_elf_size_dynamic_sections): Use the srelgot shortcut.
740 (sparc64_elf_relocate_section): Use the sgot and srelgot shortcuts.
741 (sparc64_elf_finish_dynamic_symbol): Likewise.
742 (sparc64_elf_finish_dynamic_sections): Use the sgot shortcut.
743 (elf_backend_create_dynamic_sections): Define to
744 sparc64_elf_create_dynamic_sections.
745
151e5294
EB
7462005-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
747
748 * elf32-sparc.c (elf32_sparc_omit_section_dynsym): New function.
749 (elf_backend_omit_section_dynsym): Define to it.
750 * elf64-sparc.c (sparc64_elf_omit_section_dynsym): New function.
751 (elf_backend_omit_section_dynsym): Define to it.
752
6f79b219
JJ
7532005-01-07 Jakub Jelinek <jakub@redhat.com>
754
755 * bfd/elf.c (INCLUDE_SECTION_IN_SEGMENT): Don't put empty sections into
756 PT_DYNAMIC segment, unless .dynamic.
757
4e7fd91e
PB
7582005-01-06 Paul Brook <paul@codesourcery.com>
759
760 * config.bfd: Add entry for arm-*-vxworks and arm-*-windiss.
761 * configure.in: Add bfd_elf32_{big,little}arm_vxworks_vec.
762 * configure: Regenerate.
763 * elf32-arm.c: Add VxWorks target bfd.
764 (USE_REL): Remove.
765 (elf32_arm_link_hash_table): Add use_rel.
766 (elf32_arm_link_hash_table_create, elf32_arm_final_link_relocate,
767 elf32_arm_relocate_section): Replace USE_REL with runtime check.
768 Correct offset calculation for RELA case.
769 (elf_backend_may_use_rel_p, elf_backend_may_use_rela_p,
770 elf_backend_default_use_rela_p, elf_backend_rela_normal): Define.
771 (elf32_arm_vxworks_link_hash_table_create): New function.
772 * targets.c (bfd_elf32_bigarm_vxworks_vec): Add declaration.
773 (bfd_elf32_littlearm_vxworks_vec): Ditto.
774 (_bfd_target_vector): Add bfd_elf32_{big,little}arm_vxworks_vec.
775
4c52953f
AM
7762005-01-06 Alan Modra <amodra@bigpond.net.au>
777
778 * elf64-ppc.c (struct ppc_link_hash_table): Add no_multi_toc and
779 multi_toc_needed.
780 (has_toc_reloc, makes_toc_func_call, call_check_in_progress): Define.
781 (ppc64_elf_check_relocs): Update references to has_gp_reloc.
782 (ppc64_elf_setup_section_lists): Add no_multi_toc parm, set htab bit.
783 (ppc64_elf_next_toc_section): Heed no_multi_toc.
784 (ppc64_elf_reinit_toc): Set multi_toc_needed.
785 (toc_adjusting_stub_needed): Rewrite.
786 (ppc64_elf_next_input_section): Use multi_toc_needed to shortcut
787 toc tests. Adjust for toc_adjusting_stub_needed changes.
788 (ppc64_elf_size_stubs): Update references to has_gp_reloc.
789 * elf64-ppc.h (ppc64_elf_setup_section_lists): Update prototype.
790 * section.c: Expand comment on backend bits.
791 * bfd-in2.h: Regenerate.
792 * libbfd.h: Regenerate.
793
f03d65b4
AM
7942005-01-06 Alan Modra <amodra@bigpond.net.au>
795
796 * elf64-ppc.c (ppc64_elf_size_stubs): When determining need for
797 toc adjusting stub, do not test source section flags.
798
8af139b3
EB
7992005-01-05 Eric Botcazou <ebotcazou@libertysurf.fr>
800
801 * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows
802 from STABS debugging sections again.
803
06f22d7e
FF
8042005-01-05 Fred Fish <fnf@specifixinc.com>
805
806 * dwarf2.c (struct dwarf2_debug): Add info_ptr_unit member.
807 (find_abstract_instance_name): New function.
808 (scan_unit_for_functions): Handle DW_TAG_inlined_subroutine.
809 (scan_unit_for_functions): Handle DW_AT_abstract_origin.
810 (_bfd_dwarf2_find_nearest_line): Initialize info_ptr_unit.
811
83a358aa
PB
8122004-12-31 Paul Brook <paul@copdesourcery.com>
813
814 * elf32-arm.c (elf32_arm_symbian_plt_entry): Fix comment typo.
815
b996922c
AM
8162004-12-31 Alan Modra <amodra@bigpond.net.au>
817
818 * reloc.c (BFD_RELOC_AVR_LDI, BFD_RELOC_AVR_6, BFD_RELOC_AVR_6_ADIW):
819 Commit missing changes from 2004-12-22.
820 * bfd-in2.h: Regenerate.
821
17a83432
TL
8222004-12-23 Tomer Levi <Tomer.Levi@nsc.com>
823
824 * elf32-crx.c (elf32_crx_relax_section): Support 'bcop' relaxation.
825
d69f560c
KW
8262004-12-21 Kris Warkentin <kewarken@qnx.com>
827
828 * elf.c (elfcore_grok_nto_gregs): Change name to elfcore_grok_nto_regs.
829 Add 'base' argument for constructing register sections. Reformat.
830 (elfcore_grok_nto_note): Call elfcore_grok_nto_regs for both
831 gp and fp regs. Reformat.
4c52953f 832
750bce0e
NC
8332004-12-22 Klaus Rudolph <lts-rudolph@gmx.de>
834
835 * reloc.c: Add new relocs R_AVR_LDI, R_AVR_6, R_AVR_6_ADIW.
836 * bfd-in2.h: Regenerate.
837 * elf32-avr.c (elf_avr_nowto_table): Add the new relocs.
838 (avr_reloc_map): Likewise.
839 (avr_final_link_relocate): Likewise.
840
a5db907e
AM
8412004-12-22 Alan Modra <amodra@bigpond.net.au>
842
843 * elflink.c (_bfd_elf_merge_symbol): Treat old definitions from
844 as-needed dynamic libs as undefined.
845 (elf_link_add_object_symbols): Remove DYN_AS_NEEDED from as-needed
846 libs when finding they are needed.
847
8860955f
AM
8482004-12-20 Alan Modra <amodra@bigpond.net.au>
849
850 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add opd_relocs.
851 (opd_entry_value): Use opd_relocs if available.
852 (ppc64_elf_relocate_section): Don't set reloc_done. Instead
853 copy .opd relocations to opd_relocs.
854 (ppc64_elf_edit_toc): Set rel_hdr.sh_size after editing relocs.
855
1e50d24d
RS
8562004-12-16 Richard Sandiford <rsandifo@redhat.com>
857
858 * reloc.c (BFD_RELOC_V850_LO16_SPLIT_OFFSET): New bfd_reloc_code_type.
859 * elf32-v850.c (v850_elf_howto_table): Add entry for
860 R_V850_LO16_SPLIT_OFFSET.
861 (v850_elf_reloc_map): Map it to BFD_RELOC_V850_LO16_SPLIT_OFFSET.
862 (v850_elf_perform_lo16_relocation): New function, extracted from...
863 (v850_elf_perform_relocation): ...here. Use it to handle
864 R_V850_LO16_SPLIT_OFFSET.
865 (v850_elf_check_relocs, v850_elf_final_link_relocate): Handle
866 R_V850_LO16_SPLIT_OFFSET.
867 * libbfd.h, bfd-in2.h: Regenerate.
868
2fbd2a87
NC
8692004-12-14 P.J. Darcy <darcypj@us.ibm.com>
870
871 * config.bfd: Add s390x-ibm-tpf support.
872
06302770
TL
8732004-12-14 Tomer Levi <Tomer.Levi@nsc.com>
874
8860955f 875 * elf32-crx.c (elf32_crx_relax_delete_bytes): Add 'struct bfd_link_info *'
06302770
TL
876 to prototype, to make hash info available.
877 Prevent wrapped symbols from being adjusted twice.
878
c314987d
RS
8792004-12-14 Richard Sandiford <rsandifo@redhat.com>
880
881 * elfxx-mips.c (mips_elf_calculate_relocation): Don't report an
882 overflow for calls to undefined weak symbols.
883
5c799c07
AM
8842004-12-11 Alan Modra <amodra@bigpond.net.au>
885
886 * elfcode.h (elf_slurp_symbol_table): Use bfd_elf_sym_name so that
887 canonical sections syms have a name.
888
645ea6a9
AM
8892004-12-11 Alan Modra <amodra@bigpond.net.au>
890
891 * elf64-ppc.c (opd_entry_value): Don't use cached relocs if they
892 have been adjusted for output.
893 (ppc64_elf_relocate_section): Mark sections with reloc_done.
894
0e2cfdce
AM
8952004-12-10 Alan Modra <amodra@bigpond.net.au>
896
be8dd2ca
AM
897 * elf.c (bfd_elf_sym_name): Rename from bfd_elf_local_sym_name and
898 add symtab_hdr param.
0e2cfdce
AM
899 (group_signature): Update calls.
900 * elf-bfd.h (bfd_elf_sym_name): Update.
901 * elf32-ppc.c (ppc_elf_relocate_section): Update.
8860955f
AM
902 * elf64-ppc.c (ppc64_elf_edit_opd, ppc64_elf_edit_toc): Update.
903 (ppc64_elf_relocate_section): Update.
0e2cfdce
AM
904 * elflink.c (elf_link_input_bfd): Update.
905
138f35cc
JJ
9062004-12-10 Jakub Jelinek <jakub@redhat.com>
907
908 * elf.c (bfd_elf_local_sym_name): Avoid crashes with invalid
909 st_shndx on STT_SECTION sections.
910
f9cfae62
DJ
9112004-12-09 Daniel Jacobowitz <dan@codesourcery.com>
912
913 * elfcode.h (elf_slurp_reloc_table_from_section): Don't canonicalize
914 ELF section symbols.
915
0d2e43ed
ILT
9162004-12-09 Ian Lance Taylor <ian@wasabisystems.com>
917
1367d393
ILT
918 * elfxx-mips.c (mips_elf_calculate_relocation): For R_MIPS_JALR,
919 return a real value, unless it is a PLT symbol.
920 (mips_elf_perform_relocation): On the RM9000, turn a jal into a
921 bal if possible.
922
74f79d8d
ILT
923 * elfn32-mips.c (elf_mips_howto_table_rela): Change dst_mask of
924 R_MIPS_JALR entry to 0.
925
0d2e43ed
ILT
926 * archures.c: Define bfd_mach_mips9000.
927 * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_9000.
928 (mips_set_isa_flags): Handle bfd_mach_mips9000.
929 * cpu-mips.c (I_mips9000): Define.
930 (arch_info_struct): Add case for bfd_mach_mips9000.
931 * aoutx.h (NAME(aout,machine_type)): Handle bfd_mach_mips9000.
932 * bfd-in2.h: Regenerate.
933
728b2f21
ILT
9342004-12-08 Ian Lance Taylor <ian@wasabisystems.com>
935
936 * elfxx-mips.c (mips_elf_calculate_relocation): Test for R_MIPS_26
937 overflow.
938
45ab555d
BE
9392004-12-07 Ben Elliston <bje@gnu.org>
940
941 * netbsd-core.c (netbsd_core_file_p): Make `i' unsigned.
942
1511ddaf
DJ
9432004-12-06 Daniel Jacobowitz <dan@debian.org>
944
945 Suggested by Fergal Daly <fergal@esatclear.ie>:
946 * simple.c (simple_dummy_multiple_definition): New function.
947 (bfd_simple_get_relocated_section_contents): Use it.
948
9492004-12-03 Jan Beulich <jbeulich@novell.com>
57426232
JB
950
951 * elf.c (elf_find_function): Don't use the last file symbol ever,
952 seen, but the last one seen prior to the symbol being reported.
953 Don't report a filename at all for global symbols when that might
954 be ambiguous/wrong.
955
94a3258f
PB
9562004-12-01 Paul Brook <paul@codesourcery.com>
957
958 * elf32-arm.c (elf32_arm_copy_private_bfd_data): Set EI_OSABI.
959 (elf32_arm_post_process_headers): Set EI_OSABI depending on ABI
960 version.
961
529fcb95
PB
9622004-12-01 Paul Brook <paul@codesourcery.com>
963
964 * elflink.c (elf_link_add_object_symbols): Make symbols from discarded
965 sections undefined.
966
dea514f5
PB
9672004-11-30 Paul Brook <paul@codesourcery.com>
968
969 * elf32-arm.c (struct elf32_arm_link_hash_table): Remove
970 no_pipeline_knowledge
971 (elf32_arm_link_hash_table_create): Ditto.
972 (bfd_elf32_arm_process_before_allocation): Ditto.
973 (elf32_arm_final_link_relocate): Ditto. Remove oabi relocation
974 handling.
975 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
976 prototype.
977 * bfd-in2.h: Regenerate.
978
edfc032f
AM
9792004-11-30 Randolph Chung <tausq@debian.org>
980
981 * elf32-hppa.c (elf32_hppa_grok_prstatus): New function.
982 (elf32_hppa_grok_psinfo): New function.
983 (elf_backend_grok_prstatus): Define.
984 (elf_backend_grok_psinfo): Define.
985
0be9069d
L
9862004-11-24 H.J. Lu <hongjiu.lu@intel.com>
987
988 PR 574:
989 * elfcode.h (elf_slurp_symbol_table): Handle STT_TLS.
990
47cc2cf5
PB
9912004-11-24 Paul Brook <paul@codesourcery.com>
992
993 * elf.c (assign_section_numbers): Number SHT_GROUP sections first.
994
0beaef2b
PB
9952004-11-24 Paul Brook <paul@codesourcery.com>
996
997 * elf32-arm.c (elf32_arm_swap_symbol_in): New function.
998 (elf32_arm_swap_symbol_out): New function.
999 (elf32_arm_size_info): Add.
1000 (elf_backend_size_info): Define.
1001
3dd2fcf0
DA
10022004-11-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1003
1004 * hpux-core.c (hpux_core_core_file_p): Use offsetof macro in calls to
1005 make_bfd_asection.
1006
de52dba4
AM
10072004-11-19 Alan Modra <amodra@bigpond.net.au>
1008
1009 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Warning fix.
1010 * elf32-iq2000.c (iq2000_reloc_type_lookup): C90 function decl.
1011 * nlmcode.h (nlm_write_object_contents): Warning fix.
1012
288f74fa
BW
10132004-11-18 Bob Wilson <bob.wilson@acm.org>
1014
1015 * elf32-xtensa.c (ebb_propose_action): Fix argument order.
1016
b7693d02
DJ
10172004-11-17 Daniel Jacobowitz <dan@codesourcery.com>
1018
1019 * elf32-arm.c (PLT_THUMB_STUB_SIZE): Define.
1020 (elf32_arm_plt_thumb_stub): New.
1021 (struct elf32_arm_link_hash_entry): Add plt_thumb_refcount
1022 and plt_got_offset.
1023 (elf32_arm_link_hash_traverse): Fix typo.
1024 (elf32_arm_link_hash_table): Add obfd.
1025 (elf32_arm_link_hash_newfunc): Initialize new fields.
1026 (elf32_arm_copy_indirect_symbol): Copy plt_thumb_refcount.
1027 (elf32_arm_link_hash_table_create): Initialize obfd.
1028 (record_arm_to_thumb_glue): Mark the glue as a local ARM function.
1029 (record_thumb_to_arm_glue): Mark the glue as a local Thumb function.
1030 (bfd_elf32_arm_get_bfd_for_interworking): Verify that the
1031 interworking BFD is not dynamic.
1032 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_PLT32. Do
1033 not emit glue for PLT references.
1034 (elf32_arm_final_link_relocate): Handle Thumb functions. Do not
1035 emit glue for PLT references. Support the Thumb PLT prefix.
1036 (elf32_arm_gc_sweep_hook): Handle R_ARM_THM_PC22 and
1037 plt_thumb_refcount.
1038 (elf32_arm_check_relocs): Likewise.
1039 (elf32_arm_adjust_dynamic_symbol): Handle Thumb functions and
1040 plt_thumb_refcount.
1041 (allocate_dynrelocs): Handle Thumb PLT references.
1042 (elf32_arm_finish_dynamic_symbol): Likewise.
1043 (elf32_arm_symbol_processing): New function.
1044 (elf_backend_symbol_processing): Define.
1045
353057a5
RS
10462004-11-16 Richard Sandiford <rsandifo@redhat.com>
1047
1048 * elf-bfd.h (eh_cie_fde): Add new fields: add_augmentation_size and
1049 add_fde_encoding. Remove need_relative.
1050 * elf-eh-frame.c (extra_augmentation_string_bytes)
1051 (extra_augmentation_data_bytes, size_of_output_cie_fde): New functions.
1052 (_bfd_elf_discard_section_eh_frame): Consider changing the FDE encoding
1053 in cases where the CIE has no existing 'R' augmentation. Use
1054 size_of_output_cie_fde when assigning offsets. Use the final offset
1055 as the new section size.
1056 (_bfd_elf_eh_frame_section_offset): Remove need_relative handling.
1057 Account for any extra augmentation bytes in the returned offset.
1058 (_bfd_elf_write_section_eh_frame): Rework so that the entries are
1059 moved before being modified. Pad growing entries with DW_CFA_nops.
1060 Add 'z' and 'R' augmentations as directed by add_augmentation_size
1061 and add_fde_encoding.
1062
b32d3aa2
MM
10632004-11-15 Mark Mitchell <mark@codesourcery.com>
1064
1065 * elf32-arm.c (elf32_arm_relocate_section): Use
1066 arm_real_reloc_type.
1067
5d41f0b6
RS
10682004-11-16 Richard Sandiford <rsandifo@redhat.com>
1069
1070 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Return early
1071 for discard relocations; don't add an R_MIPS_NONE to the main body
1072 of .rel.dyn.
1073
fc0e6df6
PB
10742004-11-04 Paul Brook <paul@codesourcery.com>
1075
1076 * elf-bfd.h (_bfd_elf_slurp_version_tables): Update prototype.
1077 * elf.c (_bfd_elf_print_private_bfd_data): Pass extra argument.
1078 (_bfd_elf_slurp_version_tables): Add extra argument. Create extra
1079 default version definition for unversioned symbols.
1080 * elfcode.h (elf_slurp_symbol_table): Pass extra argument.
1081 * elflink.c (elf_link_add_object_symbols): Pass extra argument to
1082 _bfd_elf_slurp_version_tables. Set default version for unversioned
1083 imported symbols.
1084
b23e50e2
PB
10852004-11-15 Paul Brook <paul@codesourcery.com>
1086
1087 * elflink.c (elf_link_add_object_symbols): Don't assume version
1088 indices are consecutive.
1089
f4a6705c
RS
10902004-11-14 Richard Sandiford <rsandifo@redhat.com>
1091
1092 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Deal with
1093 composite relocations against the personality data.
1094
ee06dc07
PB
10952004-11-13 Paul Brook <paul@codesourcery.com>
1096
1097 * bfd/elf32-arm.c (elf32_arm_final_link_relocate): Resolve
1098 R_ARM_PREL31 relocations to PLT entries.
1099 (elf32_arm_relocate_section, elf32_arm_gc_sweep_hook): Ditto.
1100 (elf32_arm_check_relocs): Ditto.
1101
a1ace8d8
BW
11022004-11-12 Bob Wilson <bob.wilson@acm.org>
1103
1104 * xtensa-isa.c (xtensa_interface_class_id): New.
1105
e4115460
BW
11062004-11-11 Bob Wilson <bob.wilson@acm.org>
1107
1108 * elf32-xtensa.c (property_table_compare): Remove assertion about
1109 entries with the same address and non-zero size.
1110 (xtensa_read_table_entries): Report such entries as errors.
1111
6366ff1e
MM
11122004-11-11 Mark Mitchell <mark@codesourcery.com>
1113
1114 * elf32-arm.c (elf32_arm_final_link_relocate): Correct logic for
1115 R_ARM_RELATIVE on Symbian OS.
1116
b34af79c
MM
11172004-11-09 Mark Mitchell <mark@codesourcery.com>
1118
e6dc21b6
MM
1119 * som.c (som_bfd_print_private_bfd_data): New function.
1120 (som_object_setup): Save the auxiliary header. Don't assume that
1121 zero is an invalid entry point for a shared library.
1122 (som_object_p): Allocate the auxiliary header on the heap.
1123
b34af79c
MM
1124 * elf32-arm.c (elf32_arm_begin_write_processing): Do not use a K&R
1125 declaration.
1126 (elf32_arm_symbian_modify_segment_map): Likewise.
1127
08d1f311
DJ
11282004-11-09 Daniel Jacobowitz <dan@debian.org>
1129
1130 From David Poole <daveml@mbuf.com>:
1131 * elf32-arm.c (elf32_arm_readonly_dynrelocs): New function.
1132 (elf32_arm_size_dynamic_sections): Call it.
1133
0306b3bf
AM
11342004-11-09 Alan Modra <amodra@bigpond.net.au>
1135
1136 * Makefile.am (SOURCE_HFILES): Remove elf32-arm.h.
1137 (ALL_MACHINES_CFILES): Fix typo.
1138 * Makefile.in: Regenerate.
1139 * po/SRC-POTFILES.in: Regenerate.
1140
a16385dc
MM
11412004-11-08 Mark Mitchell <mark@codesourcery.com>
1142
1143 * elf32-arm.c (elf32_arm_final_link_relocate): When generating an
1144 R_ARM_RELATIVE relocation for Symbian OS, mention the section
1145 symbol in the relocation.
1146
0306b3bf
AM
11472004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
1148 Vineet Sharma <vineets@noida.hcltech.com>
7499d566
NC
1149
1150 * coff-maxq.c: New File.
0306b3bf
AM
1151 * cpu-maxq.c: New File.
1152 * coffcode.h: Likewise.
1153 * config.bfd: Likewise.
1154 * configure.in (maxqcoff_vec): New target vector.
7499d566
NC
1155 * Makefile.am: Add support for maxq target.
1156 * configure.in: Likewise.
0306b3bf
AM
1157 * archures.c:. Likewise.
1158 * targets.c: Likewise.
1159 * bfd_in2.h : Regenerated.
7499d566
NC
1160 * Makefile.in: Regenerated.
1161 * configure: Regenerated.
1162 * doc/Makefile.in: Regenerated.
1163
977cdf5a
NC
11642004-11-08 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1165
1166 * coff-i386.c (coff_i386_reloc): Fix weak symbols.
1167 * cofflink.c (_bfd_coff_link_input_bfd): Don't process
1168 C_NT_WEAK aux entries.
1169 (_bfd_coff_generic_relocate_section): Handle undefined
1170 aliases.
1171
9dfe8738
AS
11722004-11-07 Andreas Schwab <schwab@suse.de>
1173
1174 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Use
1175 SYMBOL_CALLS_LOCAL and check for undefweak symbols with
1176 non-default visibility.
1177
c3c76620
MM
11782004-11-01 Mark Mitchell <mark@codesourcery.com>
1179
1180 * elf32-arm.c (elf32_arm_symbian_begin_write_processing): Clear
0306b3bf 1181 D_PAGED.
c3c76620
MM
1182 (elf32_arm_symbian_modify_segment_map): Don't
1183 reset includes_filehdr and includes_phdrs here.
1184
7f266840
DJ
11852004-11-04 Daniel Jacobowitz <dan@debian.org>
1186
1187 * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Replace
1188 elfarm-nabi with elf32-arm. Remove elfarm-oabi.
1189 (elf32-arm.lo): Replace elfarm-nabi.lo rule. Remove elf32-arm.h
1190 dependency.
1191 * config.bfd: Move arm-*-oabi* and thumb-*-oabi* from obsolete list
1192 to a new removed list. Remove normal configuration stanzas.
1193 * configure.in: (bfd_elf32_bigarm_vec, bfd_elf32_bigarm_symbian_vec)
1194 (bfd_elf32_littlearm_symbian_vec, bfd_elf32_littlearm_vec): Replace
1195 elfarm-nabi.lo with elf32-arm.lo.
1196 (bfd_elf32_bigarm_oabi_vec, bfd_elf32_littlearm_oabi_vec): Remove.
1197 * elf32-arm.c: Renamed from elfarm-nabi.c. Inline elf32-arm.h.
1198 * elf32-arm.h: Remove.
1199 * elfarm-oabi.c: Remove.
1200 * targets.c (_bfd_target_vector): Remove bfd_elf32_bigarm_oabi_vec
1201 and bfd_elf32_littlearm_oabi_vec.
1202 * aclocal.m4, Makefile.in, configure, doc/Makefile.in: Regenerated.
1203
bac23f82
HPN
12042004-11-04 Hans-Peter Nilsson <hp@axis.com>
1205
1206 * config.bfd: Support crisv32-*-* like cris-*-*.
1207 * archures.c (bfd_mach_cris_v0_v10, bfd_mach_cris_v32)
1208 (bfd_mach_cris_v10_v32): New macros.
1209 * cpu-cris.c: Tweak formatting.
1210 (get_compatible): New function.
1211 (N): New macro.
1212 (bfd_cris_arch_compat_v10_v32, bfd_cris_arch_v32): New
1213 bfd_arch_info_type:s.
1214 (bfd_cris_arch): Use bfd_mach_cris_v0_v10 for member mach,
1215 get_compatible for member compatible and link bfd_cris_arch_v32 as
1216 next.
1217 * elf32-cris.c (cris_elf_pcrel_reloc)
1218 (cris_elf_set_mach_from_flags): New functions.
1219 (cris_elf_howto_table) <R_CRIS_8_PCREL, R_CRIS_16_PCREL>
1220 <R_CRIS_32_PCREL>: Use cris_elf_pcrel_reloc.
1221 (cris_elf_grok_prstatus, cris_elf_grok_psinfo): Give correct
1222 numbers for bfd_mach_cris_v32.
1223 (PLT_ENTRY_SIZE_V32): New macro.
1224 (elf_cris_plt0_entry): Drop last comma in initializer.
1225 (elf_cris_plt0_entry_v32, elf_cris_plt_entry_v32)
1226 (elf_cris_pic_plt0_entry_v32, elf_cris_pic_plt_entry_v32): New
1227 PLT initializers.
1228 (cris_elf_relocate_section): Change all "%B(%A)" messages to
1229 "%B, section %A".
1230 (elf_cris_finish_dynamic_symbol): Do V32-specific PLT entries.
1231 (elf_cris_finish_dynamic_sections): Similar.
1232 (elf_cris_adjust_dynamic_symbol): Similar.
1233 (cris_elf_check_relocs): Change all "%B(%A)" messages to "%B,
1234 section %A".
1235 <switch with PIC relocs>: Emit error and return FALSE for
1236 bfd_mach_cris_v10_v32.
1237 <case R_CRIS_8_PCREL, case R_CRIS_16_PCREL, case R_CRIS_32_PCREL>:
1238 Emit warning when generating textrel reloc.
1239 (cris_elf_object_p): Call cris_elf_set_mach_from_flags.
1240 (cris_elf_final_write_processing): Set flags according to mach.
1241 (cris_elf_print_private_bfd_data): Display
1242 EF_CRIS_VARIANT_COMMON_V10_V32 and EF_CRIS_VARIANT_V32.
1243 (cris_elf_merge_private_bfd_data): Drop variables old_flags,
1244 new_flags. Don't call cris_elf_final_write_processing. Don't
1245 look at the actual elf header flags at all; use
1246 bfd_get_symbol_leading_char to check ibfd, obfd. Trap difference
1247 in bfd_get_mach for ibfd and obfd and handle merging of compatible
1248 objects.
1249 (bfd_elf32_bfd_copy_private_bfd_data): Define.
1250 * reloc.c (BFD_RELOC_CRIS_SIGNED_8, BFD_RELOC_CRIS_UNSIGNED_8)
1251 (BFD_RELOC_CRIS_SIGNED_16, BFD_RELOC_CRIS_UNSIGNED_16)
1252 (BFD_RELOC_CRIS_LAPCQ_OFFSET): New relocs.
1253 * bfd-in2.h, libbfd.h: Regenerate.
1254
c5614fa4
AM
12552004-11-04 Alan Modra <amodra@bigpond.net.au>
1256
1257 * elf64-ppc.h (ppc64_elf_edit_toc): Declare.
1258 * elf64-ppc.c (struct ppc_link_hash_entry <adjust_done>): Update
1259 comment.
1260 (struct adjust_toc_info): New.
1261 (adjust_toc_syms, ppc64_elf_edit_toc): New functions.
1262
0ebdbb83
BW
12632004-11-03 Bob Wilson <bob.wilson@acm.org>
1264
1265 * elf.c (assign_file_positions_for_segments): Set next_file_pos even
1266 if there are no segments.
1267
675b2ace
DJ
12682004-11-02 Daniel Jacobowitz <dan@debian.org>
1269
1270 * config.bfd: Mark arm-*-oabi and thumb-*-oabi as obsolete.
1271
58852c27
NC
12722004-11-02 Nick Clifton <nickc@redhat.com>
1273
1274 * elf32-iq2000.c: Convert to ISO C90 formatting.
1275
e6857c0c
HPN
12762004-11-02 Hans-Peter Nilsson <hp@axis.com>
1277
20288ed6 1278 * elflink.c (_bfd_elf_create_got_section): Hide _GLOBAL_OFFSET_TABLE_.
e6857c0c 1279
bf718458
L
12802004-10-28 H.J. Lu <hongjiu.lu@intel.com>
1281
1282 * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle weak
1283 undefined symbols for R_IA64_SECREL32MSB, R_IA64_SECREL32LSB,
1284 R_IA64_SECREL64MSB and R_IA64_SECREL64LSB.
1285
044ad7e3
KK
12862004-10-28 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1287
1288 * elf32-sh.c (tpoff): Take alignment into account.
1289
d5cb4bb8
NC
12902004-10-28 Nick Clifton <nickc@redhat.com>
1291
1292 * elf32-iq2000.c (iq2000_elf_relocate_section): Do nothing when
0d48eab6 1293 performing a relocatable link.
d5cb4bb8
NC
1294 (iq2000_elf_object_p): Do not set elf_bad_symtab. This is only
1295 for MIPS ports under Irix.
1296
5b5bb741
PB
12972004-10-27 Richard Earnshaw <rearnsha@arm.com>
1298
1299 * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Handle
1300 R_ARM_CALL and R_ARM_JUMP24 as aliases of R_ARM_PC24.
1301 (elf32_arm_final_link_relocate): Ditto.
1302 (arm_add_to_rel, elf32_arm_relocate_section): Ditto.
1303 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto
1304 (elf32_arm_adjust_dynamic_symbol): Ditto.
1305 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_CALL and
1306 R_ARM_JUMP32. Move R_ARM_R{REL32,ABS32,PC24,BASE}...
1307 (elf32_arm_r_howto): ... To here.
1308 (elf32_arm_howto_from_type): Use elf32_arm_r_howto.
1309
97ecf322
L
13102004-10-26 H.J. Lu <hongjiu.lu@intel.com>
1311
1312 PR 475
1313 * elfxx-ia64.c (elfNN_ia64_relocate_section): Correct
1314 R_IA64_SECREL32MSB, R_IA64_SECREL32LSB, R_IA64_SECREL64MSB
1315 and R_IA64_SECREL64LSB.
1316
3e3b46e5
PB
13172004-10-26 Paul Brook <paul@codesourcery.com>
1318
1319 * elflink.c (elf_finalize_dynstr): Skip shared aux structure.
1320 (bfd_elf_size_dynamic_sections): Create default version definition.
1321 (elf_link_output_extsym): Adjust for default symbol version.
1322
aa69fe43
HPN
13232004-10-24 Hans-Peter Nilsson <hp@bitrange.com>
1324
278b4623
HPN
1325 * mmo.c: Adjust to ISO C.
1326
aa69fe43
HPN
1327 * mmo.c (mmo_write_section_description): New function broken out
1328 of mmo_internal_write_section.
1329 (mmo_internal_write_section): For each of .text and .data, call
1330 mmo_write_section_description before outputting contents if it has
1331 nontrivially deducible vma or contents.
1332 (mmo_has_leading_or_trailing_zero_tetra_p): New function.
1333 (mmo_canonicalize_symtab): Adjust absolute symbols to .data
1334 symbols if found within the .data address range.
1335
ed040321
DJ
13362004-10-24 Daniel Jacobowitz <dan@debian.org>
1337
1338 * opncls.c (bfd_close): Return TRUE for BFD_IN_MEMORY.
1339
830866af
HPN
13402004-10-24 Hans-Peter Nilsson <hp@bitrange.com>
1341
1342 * mmo.c (File Layout): Correct place of misplaced blurb about
1343 special data.
1344
5f417ca3
MK
13452004-10-22 Mark Kettenis <kettenis@gnu.org>
1346
1347 * config.bfd: Add mips64*-*-openbsd.
1348
823fc61f
BW
13492004-10-21 Bob Wilson <bob.wilson@acm.org>
1350
1351 * elf32-xtensa.c (ebb_propose_action): Put declarations before
1352 statements.
1353
8697aafb
L
13542004-10-21 H.J. Lu <hongjiu.lu@intel.com>
1355
1356 * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.94.
1357 * configure: Regenerate.
1358
dfeffb9f
L
13592004-10-21 H.J. Lu <hongjiu.lu@intel.com>
1360
1361 PR 463
1362 * aoutx.h (aout_link_input_section_std): Pass proper hash entry
1363 to linker reloc_overflow callback.
1364 (aout_link_input_section_ext): Likewise.
1365 (aout_link_reloc_link_order): Likewise.
1366 * coff-a29k.c (coff_a29k_relocate_section): Likewise.
1367 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
1368 Likewise.
1369 (alpha_relocate_section): Likewise.
1370 * coff-arm.c (coff_arm_relocate_section): Likewise.
1371 * coff-h8300.c (h8300_reloc16_extra_cases): Likewise.
1372 * coff-h8500.c (extra_case): Likewise.
1373 * coff-i960.c (coff_i960_relocate_section): Likewise.
1374 * coff-mcore.c (coff_mcore_relocate_section): Likewise.
1375 * coff-mips.c (mips_relocate_section): Likewise.
1376 * coff-or32.c (coff_or32_relocate_section): Likewise.
1377 * coff-ppc.c (coff_ppc_relocate_section): Likewise.
1378 * coff-rs6000.c (xcoff_ppc_relocate_section): Likewise.
1379 * coff-sh.c (sh_relocate_section): Likewise.
1380 * coff-tic80.c (coff_tic80_relocate_section): Likewise.
1381 * coff-w65.c (w65_reloc16_extra_cases): Likewise.
1382 * coff-z8k.c (extra_case): Likewise.
1383 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
1384 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
1385 (_bfd_coff_generic_relocate_section): Likewise.
1386 * ecoff.c (ecoff_reloc_link_order): Likewise.
1387 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
1388 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
1389 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1390 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
1391 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1392 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1393 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1394 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1395 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1396 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1397 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1398 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1399 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1400 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1401 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1402 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1403 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1404 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1405 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1406 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1407 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1408 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1409 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1410 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1411 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1412 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1413 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1414 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1415 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1416 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1417 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1418 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1419 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1420 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1421 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1422 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1423 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1424 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1425 * elflink.c (elf_reloc_link_order): Likewise.
1426 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
1427 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1428 (_bfd_elf_mips_get_relocated_section_contents): Likewise.
1429 * linker.c (_bfd_generic_reloc_link_order): Likewise.
1430 * pdp11.c (pdp11_aout_link_input_section): Likewise.
1431 (aout_link_reloc_link_order): Likewise.
1432 * reloc.c (bfd_generic_get_relocated_section_contents):
1433 Likewise.
1434 * xcofflink.c (xcoff_reloc_link_order): Likewise.
1435 * simple.c (simple_dummy_reloc_overflow): Updated.
1436
1715e0e3
AS
14372004-10-20 Andreas Schwab <schwab@suse.de>
1438
1439 * elf32-m68k.c (elf_m68k_plt_sym_val): New function.
1440 (elf_backend_plt_sym_val): Define.
1441
db3d41a8
DS
14422004-10-19 Danny Smith <dannysmith@users.sourceforege.net>
1443
1444 * config.bfd: Set targ_underscore=yes for PE COFF targets
1445
4b85d634
AM
14462004-10-19 Alan Modra <amodra@bigpond.net.au>
1447
1448 * elf64-ppc.c (opd_entry_value): Handle --just-symbols objects.
1449 (ppc64_elf_edit_opd): Likewise.
1450
6df4d94c
MM
14512004-10-18 Mark Mitchell <mark@codesourcery.com>
1452
1453 * elfarm-nabi.c (ELF_DYNAMIC_SEC_FLAGS): Add comment.
1454 * elflink.c (_bfd_elf_create_dynamic_sections): For a loaded PLT,
1455 set SEC_ALLOC and SEC_LOAD.
1456
00d962d1
NC
14572004-10-18 Nick Clifton <nickc@redhat.com>
1458
1459 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Compute
1460 'name' for relocs against both local and global symbols.
1461
b58f81ae
DJ
14622004-10-16 Daniel Jacobowitz <dan@debian.org>
1463
1464 * bfd-in2.h: Regenerate.
1465 * bfd.c (struct bfd): Add no_export.
1466 * elflink.c (elf_link_add_object_symbols): Handle no_export.
1467
7d3f158f
AM
14682004-10-15 Alan Modra <amodra@bigpond.net.au>
1469
1470 * config.bfd: Whitespace cleanup.
1471 * Makefile.am: Run "make dep-am"
1472 * Makefile.in: Regenerate.
1473
6d2cd210
JJ
14742004-10-15 Jakub Jelinek <jakub@redhat.com>
1475
1476 * elflink.c (struct already_linked_section): Removed.
1477 (try_match_symbols_in_sections, already_linked): Removed.
1478 (_bfd_elf_section_already_linked): Skip ^\.gnu\.linkonce\.[^.]*\.
1479 prefix of section names when finding already_linked_table
1480 chain. Compare section names. Instead of calling already_linked,
1481 do it inline and only for sections in the same already_linked_list.
1482
92e4ec35
AM
14832004-10-15 Alan Modra <amodra@bigpond.net.au>
1484
1485 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Add "info"
1486 parameter. If called after _bfd_elf_write_section_eh_frame,
1487 don't allow a -2 return unless need_* bit is already set, and
1488 handle offsets adjusted for output_offset.
1489 * elf-bfd.h (_bfd_elf_eh_frame_section_offset): Update prototype.
1490 * elf.c (_bfd_elf_section_offset): Update call.
1491
7bf6dede
L
14922004-10-13 H.J. Lu <hongjiu.lu@intel.com>
1493
1494 PR 440
1495 * coffcode.h (coff_compute_section_file_positions): Cast to
1496 bfd_vma when computing page alignment.
1497
c0042f5d
MM
14982004-10-13 Mark Mitchell <mark@codesourcery.com>
1499
1500 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
1501 offsets, not VMAs, for DT_VERSYM, DT_VERDEF, DT_VERNEED.
1502
2a1b9a48
MM
15032004-10-12 Mark Mitchell <mark@codesourcery.com>
1504
1505 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Make .rel.plt
1506 relocations use a virtual address, not a section offset.
1507
b08b5071
BW
15082004-10-12 Bob Wilson <bob.wilson@acm.org>
1509
1510 * elf32-xtensa.c (elf_xtensa_get_private_bfd_flags): Delete.
1511 (narrow_instruction, widen_instruction): Remove unnecessary calls to
1512 xtensa_format_encode.
1513 (ebb_propose_action): Inline call to ebb_add_proposed_action.
1514 (ebb_add_proposed_action): Delete.
1515
7fa3d080
BW
15162004-10-12 Bob Wilson <bob.wilson@acm.org>
1517
1518 * elf32-xtensa.c: Use ISO C90 formatting.
1519
3656d5e3
PB
15202004-10-12 Paul Brook <paul@codesourcery.com>
1521
1522 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Rephrase error
1523 message.
1524
8cb51566
PB
15252004-10-12 Paul Brook <paul@codesourcery.com>
1526
1527 * elf32-arm.h: Support EABI version 4 objects.
1528
1abc8597
AM
15292004-10-12 Alan Modra <amodra@bigpond.net.au>
1530
1531 PR 325
1532 * cpu-i386.c (bfd_x86_64_arch_intel_syntax): Place last in chain.
1533 Don't mark as default.
1534 (bfd_x86_64_arch): Don't mark as default.
1535
9e66c942
AM
15362004-10-12 Alan Modra <amodra@bigpond.net.au>
1537
1538 * elflink.c (enum action_discarded): New.
1539 (elf_section_complain_discarded): Delete.
1540 (elf_action_discarded): New function subsuming the above and also
1541 controlling reloc behaviour.
1abc8597 1542 (elf_link_input_bfd): Use it.
9e66c942 1543
7f1204bb
JJ
15442004-10-11 Jakub Jelinek <jakub@redhat.com>
1545
1546 * elf.c (bfd_section_from_shdr): Handle SHT_GNU_LIBLIST.
1547 (special_sections): Add .gnu.liblist and .gnu.conflict.
1548 (assign_section_numbers): Handle SHT_GNU_LIBLIST.
1549
87e5235d
AM
15502004-10-11 Alan Modra <amodra@bigpond.net.au>
1551
1552 PR 233
1553 * elflink.c (elf_link_input_bfd): Try harder to support
1554 relocations against symbols in removed linkonce sections.
1555
2ad770c3
AM
15562004-10-11 Alan Modra <amodra@bigpond.net.au>
1557
029446c4
AM
1558 * elflink.c (elf_link_input_bfd): Revert PR 354 change.
1559
2ad770c3
AM
1560 PR 354
1561 * elflink.c (elf_link_input_bfd): Check that relocs in SEC_ALLOC
1562 sections do not reference symbols in non-SEC_ALLOC sections.
1563
1da212d6
AM
15642004-10-11 Alan Modra <amodra@bigpond.net.au>
1565
1566 PR 437
1567 * elflink.c (elf_link_sort_relocs): Don't bomb on unusual sections.
1568 (_bfd_elf_link_omit_section_dynsym): Formatting.
1569
f12123c0
AM
15702004-10-10 Alan Modra <amodra@bigpond.net.au>
1571
1572 * libbfd-in.h (BFD_ASSERT, BFD_FAIL): Wrap macro body in do while.
1573 * libbfd.h: Regnerate.
1574 * elf32-cris.c: Add missing semicolon to BFD_ASSERTs.
1575 * elf32-frv.c: Likewise.
1576 * elf32-m32r.c: Likewise.
1577 * elf32-ppc.c: Likewise.
1578 * elf64-hppa.c: Likewise.
1579 * elfxx-ia64.c: Likewise.
1580 * opncls.c: Likewise.
1581
fda3ecf2
AM
15822004-10-10 Alan Modra <amodra@bigpond.net.au>
1583
3472e2e9
AM
1584 * elf-bfd.h (struct eh_frame_hdr_info): Add offsets_adjusted.
1585 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Adjust
1586 offsets stored in struct eh_cie_fde entries before doing other
1587 work.
1588
fda3ecf2
AM
1589 * elf-bfd.h (struct eh_cie_fde): Add cie_inf, remove sec.
1590 (struct eh_frame_hdr_info): Add last_cie_inf, remove last_cie_offset.
1591 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete code
1592 setting offsets for removed CIEs. Don't set "sec", instead set
1593 cie_inf for FDEs. Keep a pointer to last struct eh_cie_fde for a
1594 CIE in hdr_info. Only set make_relative and make_lsda_relative
1595 for CIEs. Use pointers rather than array indices.
1596 (_bfd_elf_eh_frame_section_offset): Test/set make_relative,
1597 make_lsda_relative, need_* on cie_inf for FDEs.
1598 (_bfd_elf_write_section_eh_frame): Adjust offset and new_offset for
1599 section output_offset. Delete cie_offset, instead use cie_inf
1600 pointer to CIE entry. Use need_relative and need_lsda_relative on
1601 CIE entry for FDEs. Use pointers rather than array indices.
1602
7db6994f
AM
16032004-10-09 Alan Modra <amodra@bigpond.net.au>
1604
1605 * coff-rs6000.c (rs6000coff_vec): Add initializer for
1606 bfd_is_target_special_symbol.
1607 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
1608 * som.c (som_bfd_is_target_special_symbol): Define.
1609
3c9458e9
NC
16102004-10-08 Nick Clifton <nickc@redhat.com>
1611
1612 * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.93.
1613 * configure: Regenerate.
1614 * bfd-in2.h: Regenerate.
1615 * syms.c (bfd_is_target_special_symbol): New interface function.
1616 Returns true when a symbol should be considered to be special.
7db6994f 1617 * targets.c (bfd_target): Include bfd_is_target_special_symbol in
3c9458e9
NC
1618 the symbol jump table.
1619 * elf32-arm.h (elf32_arm_is_target_special_symbol): New function.
1620 Return true iff the symbol is a mapping symbol.
1621 (bfd_elf32_bfd_is_target_special_symbol): Define.
1622 * elfxx-target.h: Provide a default definition for
1623 bfd_is_target_special_symbol.
1624 * aout-target.h: Likewise.
1625 * aout-tic30.c: Likewise.
873d03ee 1626 * binary.c: Likewise.
3c9458e9
NC
1627 * coffcode.h: Likewise.
1628 * i386msdos.c: Likewise.
1629 * ieee.c: Likewise.
873d03ee 1630 * ihex.c: Likewise.
3c9458e9
NC
1631 * libaout.h: Likewise.
1632 * libbfd-in.h: Likewise
1633 * libecoff.h: Likewise.
1634 * mach-o.c: Likewise.
1635 * mmo.c: Likewise.
1636 * nlm-target.h: Likewise.
1637 * oasys.c: Likewise.
1638 * pef.c: Likewise.
1639 * ppcboot.c: Likewise.
1640 * srec.c: Likewise.
1641 * tekhex.c: Likewise.
1642 * versados.c: Likewise.
1643 * vms.c: Likewise.
1644 * xcoff-target.h: Likewise.
1645 * xsym.c: Likewise.
1646 * libbfd.h: Regenerate.
1647
d2b2c203
DJ
16482004-10-08 Daniel Jacobowitz <dan@debian.org>
1649
1650 * config.bfd: Include 64-bit support for i[3-7]86-*-solaris2*.
1651 * elf64-x86-64.c (elf64_x86_64_section_from_shdr): New function.
1652 (elf_backend_section_from_shdr): Define.
1653
864274b0
AM
16542004-10-08 Alan Modra <amodra@bigpond.net.au>
1655
1656 * syms.c (bfd_is_local_label): Return false for file symbols.
1657
43cd72b9 16582004-10-07 Bob Wilson <bob.wilson@acm.org>
85a5ac80 1659 David Heine <dlheine@tensilica.com>
43cd72b9
BW
1660
1661 * elf32-xtensa.c (elf32xtensa_size_opt): New global variable.
1662 (xtensa_default_isa): Global variable moved here from xtensa-isa.c.
1663 (elf32xtensa_no_literal_movement): New global variable.
1664 (elf_howto_table): Add entries for new relocations.
1665 (elf_xtensa_reloc_type_lookup): Handle new relocations.
1666 (property_table_compare): When addresses are equal, compare sizes and
1667 various property flags.
1668 (property_table_matches): New.
1669 (xtensa_read_table_entries): Extend to read new property tables. Add
1670 output_addr parameter to indicate that output addresses should be used.
1671 Use bfd_get_section_limit.
1672 (elf_xtensa_find_property_entry): New.
1673 (elf_xtensa_in_literal_pool): Use elf_xtensa_find_property_entry.
1674 (elf_xtensa_check_relocs): Handle new relocations.
1675 (elf_xtensa_do_reloc): Use bfd_get_section_limit. Handle new
1676 relocations. Use new xtensa-isa.h functions.
1677 (build_encoding_error_message): Remove encode_result parameter. Add
1678 new target_address parameter used to detect alignment errors.
1679 (elf_xtensa_relocate_section): Use bfd_get_section_limit. Clean up
1680 error handling. Use new is_operand_relocation function.
1681 (elf_xtensa_combine_prop_entries, elf_xtensa_merge_private_bfd_data):
1682 Use underbar macro for error messages. Formatting.
1683 (get_const16_opcode): New.
1684 (get_l32r_opcode): Add a separate flag for initialization.
1685 (get_relocation_opnd): Operand number is no longer explicit in the
1686 relocation. Change to decode the opcode and analyze its operands.
1687 (get_relocation_slot): New.
1688 (get_relocation_opcode): Add bfd parameter. Use bfd_get_section_limit.
1689 Use new xtensa-isa.h functions to handle multislot instructions.
1690 (is_l32r_relocation): Add bfd parameter. Use is_operand_relocation.
1691 (get_asm_simplify_size, is_alt_relocation, is_operand_relocation,
1692 insn_decode_len, insn_decode_opcode, check_branch_target_aligned,
1693 check_loop_aligned, check_branch_target_aligned_address, narrowable,
1694 widenable, narrow_instruction, widen_instruction, op_single_fmt_table,
1695 get_single_format, init_op_single_format_table): New.
1696 (elf_xtensa_do_asm_simplify): Add error_message parameter and use it
1697 instead of calling _bfd_error_handler. Use new xtensa-isa.h functions.
1698 (contract_asm_expansion): Add error_message parameter and pass it to
1699 elf_xtensa_do_asm_simplify. Replace use of R_XTENSA_OP0 relocation
1700 with R_XTENSA_SLOT0_OP.
1701 (get_expanded_call_opcode): Extend to handle either L32R or CONST16
1702 instructions. Use new xtensa-isa.h functions.
1703 (r_reloc struct): Add new virtual_offset field.
1704 (r_reloc_init): Add contents and content_length parameters. Set
1705 virtual_offset field to zero. Add contents to target_offset field for
1706 partial_inplace relocations.
1707 (r_reloc_is_defined): Check for null.
1708 (print_r_reloc): New debug function.
1709 (source_reloc struct): Replace xtensa_operand field with pair of the
1710 opcode and the operand position. Add is_abs_literal field.
1711 (init_source_reloc): Specify operand by opcode/position pair. Set
1712 is_abs_literal field.
1713 (source_reloc_compare): When target_offsets are equal, compare other
1714 fields to make sorting predictable.
1715 (literal_value struct): Add is_abs_literal field.
1716 (value_map_hash_table struct): Add has_last_loc and last_loc fields.
1717 (init_literal_value): New.
1718 (is_same_value): Replace with ...
1719 (literal_value_equal): ... this function. Add comparisons of
1720 virtual_offset and is_abs_literal fields.
1721 (value_map_hash_table_init): Use bfd_zmalloc. Check for allocation
1722 failure. Initialize has_last_loc field.
1723 (value_map_hash_table_delete): New.
1724 (hash_literal_value): Rename to ...
1725 (literal_value_hash): ... this. Include is_abs_literal flag and
1726 virtual_offset field in the hash value.
1727 (get_cached_value): Rename to ...
1728 (value_map_get_cached_value): ... this. Update calls to
1729 literal_value_hash and literal_value_equal.
1730 (add_value_map): Check for allocation failure. Update calls to
1731 value_map_get_cached_value and literal_value_hash.
1732 (text_action, text_action_list, text_action_t): New types.
1733 (find_fill_action, compute_removed_action_diff, adjust_fill_action,
1734 text_action_add, text_action_add_literal, offset_with_removed_text,
1735 offset_with_removed_text_before_fill, find_insn_action,
1736 print_action_list, print_removed_literals): New.
1737 (offset_with_removed_literals): Delete.
1738 (xtensa_relax_info struct): Add is_relaxable_asm_section, action_list,
1739 fix_array, fix_array_count, allocated_relocs, relocs_count, and
1740 allocated_relocs_count fields.
1741 (init_xtensa_relax_info): Initialize new fields.
1742 (reloc_bfd_fix struct): Add new translated field.
1743 (reloc_bfd_fix_init): Add translated parameter and use it to set the
1744 translated field.
1745 (fix_compare, cache_fix_array): New.
1746 (get_bfd_fix): Remove fix_list parameter and get all relax_info for the
1747 section via get_xtensa_relax_info. Use cache_fix_array to set up
1748 sorted fix_array and use bsearch instead of linear search.
1749 (section_cache_t): New struct.
1750 (init_section_cache, section_cache_section, clear_section_cache): New.
1751 (ebb_t, ebb_target_enum, proposed_action, ebb_constraint): New types.
1752 (init_ebb_constraint, free_ebb_constraint, init_ebb, extend_ebb_bounds,
1753 extend_ebb_bounds_forward, extend_ebb_bounds_backward,
1754 insn_block_decodable_len, ebb_propose_action, ebb_add_proposed_action):
1755 New.
1756 (retrieve_contents): Use bfd_get_section_limit.
1757 (elf_xtensa_relax_section): Add relocations_analyzed flag. Update call
1758 to compute_removed_literals. Free value_map_hash_table when no longer
1759 needed.
1760 (analyze_relocations): Check is_relaxable_asm_section flag. Call
1761 compute_text_actions for all sections.
1762 (find_relaxable_sections): Mark sections as relaxable if they contain
1763 ASM_EXPAND relocations that can be optimized. Adjust r_reloc_init
1764 call. Increment relax_info src_count field only for appropriate
1765 relocation types. Remove is_literal_section check.
1766 (collect_source_relocs): Use bfd_get_section_limit. Adjust calls to
1767 r_reloc_init and find_associated_l32r_irel. Check
1768 is_relaxable_asm_section flag. Handle L32R instructions with absolute
1769 literals. Pass is_abs_literal flag to init_source_reloc.
1770 (is_resolvable_asm_expansion): Use bfd_get_section_limit. Check for
1771 CONST16 instructions. Adjust calls to r_reloc_init and
fda3ecf2 1772 pcrel_reloc_fits. Handle weak symbols conservatively.
43cd72b9
BW
1773 (find_associated_l32r_irel): Add bfd parameter and pass it to
1774 is_l32r_relocation.
1775 (compute_text_actions, compute_ebb_proposed_actions,
1776 compute_ebb_actions, check_section_ebb_pcrels_fit,
1777 check_section_ebb_reduces, text_action_add_proposed,
1778 compute_fill_extra_space): New.
1779 (remove_literals): Replace with ...
1780 (compute_removed_literals): ... this function. Call
1781 init_section_cache. Use bfd_get_section_limit. Sort internal_relocs.
1782 Call xtensa_read_table_entries to get the property table. Skip
1783 relocations other than R_XTENSA_32 and R_XTENSA_PLT. Use new
1784 is_removable_literal, remove_dead_literal, and
fda3ecf2 1785 identify_literal_placement functions.
43cd72b9
BW
1786 (get_irel_at_offset): Rewrite to use bsearch on sorted relocations
1787 instead of linear search.
1788 (is_removable_literal, remove_dead_literal,
1789 identify_literal_placement): New.
1790 (relocations_reach): Update check for literal not referenced by any
1791 PC-relative relocations. Adjust call to pcrel_reloc_fits.
1792 (coalesce_shared_literal, move_shared_literal): New.
1793 (relax_section): Use bfd_get_section_limit. Call
1794 translate_section_fixes. Update calls to r_reloc_init and
1795 offset_with_removed_text. Check new is_relaxable_asm_section flag.
1796 Add call to pin_internal_relocs. Add special handling for
1797 R_XTENSA_ASM_SIMPLIFY and R_XTENSA_DIFF* relocs. Use virtual_offset
1798 info to calculate new addend_displacement variable. Replace code for
1799 deleting literals with more general code to perform the actions
1800 determined by the action_list for the section.
1801 (translate_section_fixes, translate_reloc_bfd_fix): New.
1802 (translate_reloc): Check new is_relaxable_asm_section flag. Call
1803 find_removed_literal only if is_operand_relocation. Update call to
1804 offset_with_removed_text. Use new target_offset and removed_bytes
1805 variables.
1806 (move_literal): New.
1807 (relax_property_section): Use bfd_get_section_limit. Set new
1808 is_full_prop_section flag and handle new property tables. Update calls
1809 to r_reloc_init and offset_with_removed_text. Check
1810 is_relaxable_asm_section flag. Handle expansion of zero-sized
1811 unreachable entries, with use of offset_with_removed_text_before_fill.
1812 For relocatable links, combine entries only for literal tables.
1813 (relax_section_symbols): Check is_relaxable_asm_section flag. Update
1814 calls to offset_with_removed_text. Translate st_size field for
1815 function symbols.
1816 (do_fix_for_relocatable_link): Change to return bfd_boolean to indicate
1817 failure. Add contents parameter. Update call to get_bfd_fix. Update
1818 call to r_reloc_init. Call _bfd_error_handler and return FALSE for
1819 R_XTENSA_ASM_EXPAND relocs.
1820 (do_fix_for_final_link): Add input_bfd and contents parameters. Update
1821 call to get_bfd_fix. Include offset from contents for partial_inplace
1822 relocations.
1823 (is_reloc_sym_weak): New.
1824 (pcrel_reloc_fits): Use new xtensa-isa.h functions.
1825 (prop_sec_len): New.
1826 (xtensa_is_property_section): Handle new property sections.
1827 (is_literal_section): Delete.
1828 (internal_reloc_compare): When r_offset matches, compare r_info and
1829 r_addend to make sorting predictable.
1830 (internal_reloc_matches): New.
1831 (xtensa_get_property_section_name): Handle new property sections.
1832 (xtensa_get_property_predef_flags): New.
1833 (xtensa_callback_required_dependence): Use bfd_get_section_limit.
1834 Update calls to xtensa_isa_init, is_l32r_relocation, and r_reloc_init.
1835 * xtensa-isa.c (xtensa_default_isa): Moved to elf32-xtensa.c.
1836 (xtisa_errno, xtisa_error_msg): New variables.
1837 (xtensa_isa_errno, xtensa_isa_error_msg): New.
1838 (xtensa_insnbuf_alloc): Add error handling.
1839 (xtensa_insnbuf_to_chars): Add num_chars parameter. Update to
1840 use xtensa_format_decode. Add error handling.
1841 (xtensa_insnbuf_from_chars): Add num_chars parameter. Decode the
1842 instruction length to find the number of bytes to copy.
1843 (xtensa_isa_init): Add error handling. Replace calls to
1844 xtensa_load_isa and xtensa_extend_isa with code to initialize lookup
1845 tables in the xtensa_modules structure.
1846 (xtensa_check_isa_config, xtensa_add_isa, xtensa_load_isa,
1847 xtensa_extend_isa): Delete.
1848 (xtensa_isa_free): Change to only free lookup tables.
1849 (opname_lookup_compare): Replace with ...
1850 (xtensa_isa_name_compare): ... this function. Use strcasecmp.
1851 (xtensa_insn_maxlength): Rename to ...
1852 (xtensa_isa_maxlength): ... this.
1853 (xtensa_insn_length): Delete.
1854 (xtensa_insn_length_from_first_byte): Replace with ...
1855 (xtensa_isa_length_from_chars): ... this function.
1856 (xtensa_num_opcodes): Rename to ...
1857 (xtensa_isa_num_opcodes): ... this.
1858 (xtensa_isa_num_pipe_stages, xtensa_isa_num_formats,
1859 xtensa_isa_num_regfiles, xtensa_isa_num_stages,
1860 xtensa_isa_num_sysregs, xtensa_isa_num_interfaces,
1861 xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup,
1862 xtensa_format_decode, xtensa_format_encode, xtensa_format_length,
1863 xtensa_format_num_slots, xtensa_format_slot_nop_opcode,
1864 xtensa_format_get_slot, xtensa_format_set_slot): New functions.
1865 (xtensa_opcode_lookup): Add error handling.
1866 (xtensa_decode_insn): Replace with ...
1867 (xtensa_opcode_decode): ... this function, with new format and
1868 slot parameters. Add error handling.
1869 (xtensa_encode_insn): Replace with ...
1870 (xtensa_opcode_encode): ... this function, which does the encoding via
1871 one of the entries in the "encode_fns" array. Add error handling.
1872 (xtensa_opcode_name): Add error handling.
1873 (xtensa_opcode_is_branch, xtensa_opcode_is_jump, xtensa_opcode_is_loop,
1874 xtensa_opcode_is_call): New.
1875 (xtensa_num_operands): Replace with ...
1876 (xtensa_opcode_num_operands): ... this function. Add error handling.
1877 (xtensa_opcode_num_stateOperands,
1878 xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses,
1879 xtensa_opcode_funcUnit_use, xtensa_operand_name,
1880 xtensa_operand_is_visible): New.
1881 (xtensa_get_operand, xtensa_operand_kind): Delete.
1882 (xtensa_operand_inout): Add error handling and special-case for
1883 "sout" operands.
1884 (xtensa_operand_get_field, xtensa_operand_set_field): Rewritten to
1885 operate on one slot of an instruction. Added error handling.
1886 (xtensa_operand_encode): Handle default operands with no encoding
1887 functions. Check for success by comparing against decoded value.
1888 Add error handling.
1889 (xtensa_operand_decode): Handle default operands. Return decoded value
1890 through argument pointer. Add error handling.
1891 (xtensa_operand_is_register, xtensa_operand_regfile,
1892 xtensa_operand_num_regs, xtensa_operand_is_known_reg): New.
1893 (xtensa_operand_isPCRelative): Rename to ...
1894 (xtensa_operand_is_PCrelative): ... this. Add error handling.
1895 (xtensa_operand_do_reloc, xtensa_operand_undo_reloc): Return value
1896 through argument pointer. Add error handling.
1897 (xtensa_stateOperand_state, xtensa_stateOperand_inout,
1898 xtensa_interfaceOperand_interface, xtensa_regfile_lookup,
1899 xtensa_regfile_lookup_shortname, xtensa_regfile_name,
1900 xtensa_regfile_shortname, xtensa_regfile_view_parent,
1901 xtensa_regfile_num_bits, xtensa_regfile_num_entries,
1902 xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits,
1903 xtensa_state_is_exported, xtensa_sysreg_lookup,
1904 xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number,
1905 xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name,
1906 xtensa_interface_num_bits, xtensa_interface_inout,
1907 xtensa_interface_has_side_effect, xtensa_funcUnit_lookup,
1908 xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New.
1909 * xtensa-modules.c: Rewrite to use new data structures.
1910 * reloc.c (BFD_RELOC_XTENSA_DIFF8, BFD_RELOC_XTENSA_DIFF16,
1911 BFD_RELOC_XTENSA_DIFF32, BFD_RELOC_XTENSA_SLOT0_OP,
1912 BFD_RELOC_XTENSA_SLOT1_OP, BFD_RELOC_XTENSA_SLOT2_OP,
1913 BFD_RELOC_XTENSA_SLOT3_OP, BFD_RELOC_XTENSA_SLOT4_OP,
1914 BFD_RELOC_XTENSA_SLOT5_OP, BFD_RELOC_XTENSA_SLOT6_OP,
1915 BFD_RELOC_XTENSA_SLOT7_OP, BFD_RELOC_XTENSA_SLOT8_OP,
1916 BFD_RELOC_XTENSA_SLOT9_OP, BFD_RELOC_XTENSA_SLOT10_OP,
1917 BFD_RELOC_XTENSA_SLOT11_OP, BFD_RELOC_XTENSA_SLOT12_OP,
1918 BFD_RELOC_XTENSA_SLOT13_OP, BFD_RELOC_XTENSA_SLOT14_OP,
1919 BFD_RELOC_XTENSA_SLOT0_ALT, BFD_RELOC_XTENSA_SLOT1_ALT,
1920 BFD_RELOC_XTENSA_SLOT2_ALT, BFD_RELOC_XTENSA_SLOT3_ALT,
1921 BFD_RELOC_XTENSA_SLOT4_ALT, BFD_RELOC_XTENSA_SLOT5_ALT,
1922 BFD_RELOC_XTENSA_SLOT6_ALT, BFD_RELOC_XTENSA_SLOT7_ALT,
1923 BFD_RELOC_XTENSA_SLOT8_ALT, BFD_RELOC_XTENSA_SLOT9_ALT,
1924 BFD_RELOC_XTENSA_SLOT10_ALT, BFD_RELOC_XTENSA_SLOT11_ALT,
1925 BFD_RELOC_XTENSA_SLOT12_ALT, BFD_RELOC_XTENSA_SLOT13_ALT,
1926 BFD_RELOC_XTENSA_SLOT14_ALT): Add new relocations.
1927 * Makefile.am (xtensa-isa.lo, xtensa-modules.lo): Update dependencies.
1928 * Makefile.in: Regenerate.
1929 * bfd-in2.h: Likewise.
1930 * libbfd.h: Likewise.
1931
99022dfb
RS
19322004-10-07 Richard Sandiford <rsandifo@redhat.com>
1933
1934 * elf64-mips.c (mips_elf64_write_rel): Use STN_UNDEF for relocs
1935 against the absolute section.
1936 (mips_elf64_write_rela): Likewise.
1937
b67ae299
NC
19382004-10-07 Jan Beulich <jbeulich@novell.com>
1939
1940 * elf.c (elf_find_function): Don't generally check for matching
1941 section, just for non-file symbols. Remove redunant comparison
1942 for the latter.
1943 * elf32-arm.h (arm_elf_find_function): Likewise.
1944
8fdd7217
NC
19452004-10-07 Jeff Baker <jbaker@qnx.com>
1946
1947 * elflink.c (_bfd_elf_add_dynamic_entry): Add code to warn if
1948 adding a DT_TEXTREL to a shared object and --warn-shared-textrel
1949 was specified.
1950
073a2dc3
RM
19512004-10-04 Roland McGrath <roland@redhat.com>
1952
1953 * hash.c (bfd_hash_set_default_size): Use const for table.
1954 Use size_t instead of int for variable compared to sizeof results.
1955
7785be14
AM
19562004-10-05 Alan Modra <amodra@bigpond.net.au>
1957
1958 PR 425
1959 * syms.c (_bfd_stab_section_find_nearest_line): Ignore R_*_NONE relocs.
1960
40a18ebd
NC
19612004-10-01 Paul Brook <paul@codesourcery.com>
1962
1963 * elf32-arm.h (elf32_arm_fake_sections,
1964 is_arm_elf_unwind_section_name, elf32_arm_section_from_shdr): New
1965 functions.
1966 (elf_backend_fake_sections, elf_backend_section_from_shdr): Define.
1967
8935b81f
AM
19682004-10-01 Alan Modra <amodra@bigpond.net.au>
1969
1970 * elf-bfd.h (struct eh_cie_fde): Add need_relative and
1971 need_lsda_relative.
1972 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Set
1973 need_relative or need_lsda_relative if we are processing an
1974 offset for a reloc on a FDE initial loc or LSDA field
1975 respectively.
1976 (_bfd_elf_write_section_eh_frame): Test need_relative and
1977 need_lsda_relative in place of corresponding make_* field
1978 when deciding to use pc-relative encodings.
1979
eeac373a
PB
19802004-09-30 Paul Brook <paul@codesourcery.com>
1981
1982 * elf32-arm.h (bfd_elf32_arm_set_target_relocs): Handle "abs"
1983 target2 relocation type.
1984
7479dfd4
L
19852004-09-30 H.J. Lu <hongjiu.lu@intel.com>
1986
1987 PR 414
1988 * elflink.c (_bfd_elf_merge_symbol): Check TLS symbol.
1989
0dd132b6
NC
19902004-09-30 Paul Brook <paul@codesourcery.com>
1991
1992 * reloc.c: Add BFD_RELOC_ARM_SMI.
1993 * bfd-in2.h: Regenerate.
1994 * libbfd.h: Ditto.
1995
1ba54ee0
AM
19962004-09-24 Alan Modra <amodra@bigpond.net.au>
1997
1998 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add output section
1999 vma and output offset to address.
2000 * simple.c (simple_save_output_info): Only set output section
2001 and offset for debug sections, or those not already set up by
2002 the linker.
2003 (bfd_simple_get_relocated_section_contents): Update comment.
2004
5efb6261
AM
20052004-09-24 Alan Modra <amodra@bigpond.net.au>
2006
2007 * elf.c (IS_LOADED): Delete.
2008 (assign_file_positions_for_segments): Just test SEC_LOAD instead.
2009 Restore SEC_HAS_CONTENTS test to the one place it was used prior
2010 to 2004-09-22.
2011
fca870e4
AM
20122004-09-23 Alan Modra <amodra@bigpond.net.au>
2013
2014 PR gas/396
2015 * elf32-sparc.c (elf32_sparc_final_write_processing): Handle
2016 bfd_mach_sparc_sparclet and bfd_mach_sparc_sparclite. Remove
2017 redundant assignment of EM_SPARC.
2018
c86696a3
BF
20192004-09-22 Brian Ford <ford@vss.fsi.com>
2020
2021 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
2022 alignment for .rdata sections so sse[2] code works with gcc >= 3.3.3
2023 constants.
2024 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
2025
73adb214
AM
20262004-09-22 Alan Modra <amodra@bigpond.net.au>
2027
2028 * elf32-ppc.c (ppc_elf_modify_segment_map): Delete.
2029 (elf_backend_modify_segment_map): Don't define.
2030
b301b248
AM
20312004-09-22 Alan Modra <amodra@bigpond.net.au>
2032
2033 * elf.c (IS_LOADED): Define.
2034 (assign_file_positions_for_segments): Don't round up file offset of
2035 PT_LOAD segments containing no SEC_LOAD sections, instead round down.
2036 Delete code handling link script adjustment of lma. Do the adjust
2037 in later code handling similar ajustments. Remove dead code error
2038 check. Warn if section lma would require a negative offset
2039 adjustment. Tweak lma adjustment to use p_filesz rather than p_memsz.
2040 Use p_vaddr + p_memsz inside section loop in place of voff. Don't
2041 update voff in section loop. Change voff in segment loop to be an
2042 adjustment on top of "off". Set sec->filepos and update "off" later.
2043 Test for loadable sections consistently using IS_LOADED. Similarly,
073a2dc3 2044 test for alloc-only sections other than .tbss consistently.
b301b248
AM
2045 Don't bother checking SEC_ALLOC in PT_LOAD segments. Remove FIXME.
2046 Tidy PT_NOTE handling. Use %B and %A in error messages.
2047 (assign_file_positions_except_relocs): Use %B in error message.
2048
3f85e526
L
20492004-09-17 H.J. Lu <hongjiu.lu@intel.com>
2050
2051 * Makefile.am (AUTOMAKE_OPTIONS): Require 1.9.
2052 (CONFIG_STATUS_DEPENDENCIES): New.
2053 (Makefile): Removed.
2054 (config.status): Likewise.
2055 * Makefile.in: Regenerated.
2056
eb043451
PB
20572004-09-17 Paul Brook <paul@codesourcery.com>
2058
2059 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add prototype.
2060 (bfd_elf32_arm_process_before_allocation): Update prototype.
2061 * bfd-in2.h: Regenerate.
2062 * bfd/elf32-arm.h (elf32_arm_link_hash_table): Add target2_reloc.
2063 (elf32_arm_link_hash_table_create): Set it.
2064 (bfd_elf32_arm_process_before_allocation): Remove target1_is_rel.
2065 (bfd_elf32_arm_set_target_relocs): New function.
2066 (arm_real_reloc_type): New function.
2067 (elf32_arm_final_link_relocate): Use it. Handle R_ARM_PREL31 and
2068 R_ARM_GOT_PREL. Remove R_ARM_TARGET1.
2069 (elf32_arm_gc_sweep_hook): Ditto.
2070 (elf32_arm_check_relocs): Ditto.
2071 (elf32_arm_relocate_section): Handle R_ARM_GOT_PREL.
2072 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_PREL31 and
2073 R_ARM_GOT_TARGET2.
2074 (elf32_arm_got_prel): New variable.
2075 (elf32_arm_howto_from_type): New function.
2076 (elf32_arm_info_to_howto): Use it.
2077 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PREL31 and
2078 BFD_RELOC_ARM_TARGET2.
2079 * libbfd.h: Regenerate.
2080 * reloc.c: Add BFD_RELOC_ARM_TARGET2 and BFD_RELOC_ARM_PREL31.
2081
f6e332e6
AM
20822004-09-17 Alan Modra <amodra@bigpond.net.au>
2083
2084 * ecoff.c: Update u.undef.next refs.
2085 * elf64-ppc.c: Likewise.
2086 * elflink.c: Likewise.
2087 * linker.c: Likewise.
2088 * xcofflink.c: Likewise.
2089
2090 * elf-bfd.h (struct elf_link_hash_entry): Rearrange. Add FIXME to
2091 dynamic_def. Combine weakdef and elf_hash_value. Move vtable
2092 fields to indirect struct.
2093 * elf-m10300.c: Update u.weakdef refs.
2094 * elf32-arm.h: Likewise.
2095 * elf32-cris.c: Likewise.
2096 * elf32-frv.c: Likewise.
2097 * elf32-hppa.c: Likewise.
2098 * elf32-i370.c: Likewise.
2099 * elf32-i386.c: Likewise.
2100 * elf32-m32r.c: Likewise.
2101 * elf32-m68k.c: Likewise.
2102 * elf32-ppc.c: Likewise.
2103 * elf32-s390.c: Likewise.
2104 * elf32-sh.c: Likewise.
2105 * elf32-sparc.c: Likewise.
2106 * elf32-vax.c: Likewise.
2107 * elf32-xtensa.c: Likewise.
2108 * elf64-alpha.c: Likewise.
2109 * elf64-hppa.c: Likewise.
2110 * elf64-ppc.c: Likewise.
2111 * elf64-s390.c: Likewise.
2112 * elf64-sh64.c: Likewise.
2113 * elf64-sparc.c: Likewise.
2114 * elf64-x86-64.c: Likewise.
2115 * elfxx-ia64.c: Likewise.
2116 * elfxx-mips.c: Likewise.
2117 * elflink.c: Likewise. Also u.elf_hash_value.
2118 (elf_gc_propagate_vtable_entries_used): Update for h->vtable
2119 indirection.
2120 (elf_gc_smash_unused_vtentry_relocs): Likewise.
2121 (bfd_elf_gc_record_vtinherit): Alloc vtable.
2122 (bfd_elf_gc_record_vtentry): Likewise.
2123 * elf.c (_bfd_elf_link_hash_newfunc): Use memset.
2124
90c0a373
AM
21252004-09-17 Alan Modra <amodra@bigpond.net.au>
2126
2127 * Makefile.am: Run "make dep-am".
2128 * Makefile.in: Regenerate.
2129 * bfd-in2.h: Regenerate.
2130 * po/SRC-POTFILES.in: Regenerate.
2131 * po/bfd.pot: Regenerate.
2132
f5385ebf
AM
21332004-09-16 Alan Modra <amodra@bigpond.net.au>
2134
2135 * elf-bfd.h (struct elf_link_hash_entry): Replace elf_link_hash_flags
2136 with bitfields. Make "type" and "other" bitfields too.
2137 (ELF_LINK_HASH_REF_REGULAR, ELF_LINK_HASH_DEF_REGULAR,
2138 ELF_LINK_HASH_REF_DYNAMIC, ELF_LINK_HASH_DEF_DYNAMIC,
2139 ELF_LINK_HASH_REF_REGULAR_NONWEAK, ELF_LINK_HASH_DYNAMIC_ADJUSTED,
2140 ELF_LINK_HASH_NEEDS_COPY, ELF_LINK_HASH_NEEDS_PLT, ELF_LINK_NON_ELF,
2141 ELF_LINK_HIDDEN, ELF_LINK_FORCED_LOCAL, ELF_LINK_HASH_MARK,
2142 ELF_LINK_NON_GOT_REF, ELF_LINK_DYNAMIC_DEF, ELF_LINK_DYNAMIC_WEAK,
2143 ELF_LINK_POINTER_EQUALITY_NEEDED): Delete.
2144 (ELF_COMMON_DEF_P, WILL_CALL_FINISH_DYNAMIC_SYMBOL): Update.
2145 * elf-hppa.h: Update all uses of elf_link_hash_flags.
2146 * elf-m10300.c: Likewise.
2147 * elf.c: Likewise.
2148 * elf32-arm.h: Likewise.
2149 * elf32-cris.c: Likewise.
2150 * elf32-frv.c: Likewise.
2151 * elf32-hppa.c: Likewise.
2152 * elf32-i370.c: Likewise.
2153 * elf32-i386.c: Likewise.
2154 * elf32-m32r.c: Likewise.
2155 * elf32-m68k.c: Likewise.
2156 * elf32-ppc.c: Likewise.
2157 * elf32-s390.c: Likewise.
2158 * elf32-sh-symbian.c: Likewise.
2159 * elf32-sh.c: Likewise.
2160 * elf32-sh64.c: Likewise.
2161 * elf32-sparc.c: Likewise.
2162 * elf32-vax.c: Likewise.
2163 * elf32-xtensa.c: Likewise.
2164 * elf64-alpha.c: Likewise.
2165 * elf64-hppa.c: Likewise.
2166 * elf64-ppc.c: Likewise.
2167 * elf64-s390.c: Likewise.
2168 * elf64-sh64.c: Likewise.
2169 * elf64-sparc.c: Likewise.
2170 * elf64-x86-64.c: Likewise.
2171 * elflink.c: Likewise.
2172 * elfxx-ia64.c: Likewise.
2173 * elfxx-mips.c: Likewise.
2174 * configure.in (AM_INIT_AUTOMAKE): Set version to 2.15.92.
2175 * configure: Regenerate.
2176 * aclocal.m4: Regenerate.
2177
b6ee372a
AM
21782004-09-16 Alan Modra <amodra@bigpond.net.au>
2179
2180 * elf32-arm.h (elf32_arm_gc_sweep_hook): Add #ifndef OLD_ARM_ABI
2181 around uses of R_ARM_TARGET1.
2182 (elf32_arm_check_relocs): Likewise.
2183
9c504268
PB
21842004-09-13 Paul Brook <paul@codesourcery.com>
2185
2186 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
2187 prototype.
2188 * bfd-in2.h: Regenerate.
2189 * libbfd.h: Regenerate.
2190 * elf32-arm.h (elf32_arm_link_hash_table): Add target1_is_rel.
2191 (elf32_arm_link_hash_table_create): Set target1_is_rel.
2192 (bfd_elf32_arm_process_before_allocation): Ditto.
2193 (elf32_arm_final_link_relocate): Handle R_ARM_TARGET1.
2194 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto.
2195 * elfarm-nabi.c (elf32_arm_howto_table): Rename RELABS to TARGET1.
2196 * reloc.c: Ditto.
2197
94ea025a
JB
21982004-09-10 Joel Brobecker <brobecker@gnat.com>
2199
2200 * hpux-core.c (thread_section_p): New function.
2201 (hpux_core_core_file_p): Fix computation of offset in call
2202 to bfd_seek. Create a ".reg" section from an arbitrary
2203 ".reg/<id>" section if none was created after having read
2204 all sections.
2205
24443139
AS
22062004-09-11 Andreas Schwab <schwab@suse.de>
2207
2208 * acinclude.m4: Fix spelling of ACX_NONCANONICAL_*.
2209 * aclocal.m4: Rebuild.
2210 * configure: Rebuild.
2211
f4eae89c
JB
22122004-09-10 Joel Brobecker <brobecker@gnat.com>
2213
2214 * section.c (bfd_sections_find_if): Fix parameter name in
2215 comment to match code.
2216
e0638f70
AM
22172004-09-10 Alan Modra <amodra@bigpond.net.au>
2218
2219 * elf.c (assign_file_positions_except_relocs): Assign relocs
2220 stored in a bfd section.
2221
5e0f5ae3
HPN
22222004-09-08 Hans-Peter Nilsson <hp@axis.com>
2223
2224 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Reset
2225 h->gotplt_refcount to 0, not -1.
2226
ada1953e
HPN
22272004-09-07 Hans-Peter Nilsson <hp@axis.com>
2228
2229 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT,
2230 case R_CRIS_32_GOTPLT>: For internal error message, handle NULL
2231 symname.
2232 (cris_elf_check_relocs) <case R_CRIS_32_PLT_PCREL>: Don't try to
2233 handle symbol visibility here.
2234
ee75fd95
AM
22352004-09-07 Alan Modra <amodra@bigpond.net.au>
2236
2237 * elf64-ppc.c (struct ppc_link_hash_table): Add stub_globals.
2238 (is_ppc64_elf_target): Rename from is_ppc64_target. Update all
2239 callers.
2240 (ppc_stub_name): Remove trailing "+0" on stub name.
2241 (create_linkage_sections): Create relocations for
2242 branch lookup table when --emit-relocs as well as when --shared.
2243 (ppc_build_one_stub): Emit relocs for long branch stubs. Adjust
2244 relbrlt test. For --emit-stub-syms, always output a sym even when
2245 one already exists on a plt call stub. Put stub type in the stub
2246 symbol name.
2247 (ppc_size_one_stub): Size long branch stub relocs. Adjust relbrlt
2248 test.
2249 (ppc64_elf_size_stubs): Count global sym stubs added. Zero
2250 reloc_count in stub sections. Adjust relbrlt test.
2251 (ppc64_elf_build_stubs): Adjust relbrlt test. Tweak stats output.
2252 * elflink.c (bfd_elf_size_dynamic_sections): Fix comment typo.
2253 (elf_link_input_bfd): Ignore symbol index zero relocs when checking
2254 for relocs against discarded symbols. Fix comments.
2255
229fcec5
MM
22562004-09-06 Mark Mitchell <mark@codesourcery.com>
2257
2258 * elf-bfd.h (_bfd_elf_make_dynamic_segment): Declare it.
2259 * elf.c (_bfd_elf_make_dynamic_segment): New function, split out
2260 from ...
2261 (map_sections_to_segments): ... here. Use it. Assign a file
2262 position to the .dynamic section if it is not loadable, but part
2263 of the PT_DYNAMIC segment.
2264 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
2265 offsets, not VMAs, for the BPABI. Do not fill in the header in
2266 the .got.plt section for the BPABI.
2267 * elfarm-nabi.c (elf32_arm_symbian_modify_segment_map): Add a
2268 PT_DYNAMIC segment.
2269 (elf_backend_want_got_plt): Define to zero for Symbian OS.
073a2dc3 2270
9a0789ec
NC
22712004-09-06 Nick Clifton <nickc@redhat.com>
2272
2273 * elflink.c (elf_link_add_object_symbols): Set the error code to
2274 bfd_error_wrong_format when the input format does not match the
2275 output format.
2276
7b53ace3
AM
22772004-09-06 Alan Modra <amodra@bigpond.net.au>
2278
2279 * elf64-ppc.c (is_ppc64_target): New function, extracted from..
2280 (ppc64_elf_check_directives): ..here.
2281 (ppc64_elf_size_dynamic_sections): Use it here to check bfd type
2282 before accessing ppc64_elf_tdata.
2283 (ppc64_elf_finish_dynamic_sections): And here too.
2284
3e540f25
AM
22852004-09-04 Alan Modra <amodra@bigpond.net.au>
2286
2287 * bfd.c (_bfd_default_error_handler): Correct loop exit.
2288
e5a52504
MM
22892004-09-03 Mark Mitchell <mark@codesourcery.com>
2290
2291 * config.bfd (arm*-*-symbianelf*): Use OS-specific target vectors.
2292 * configure.in (bfd_elf32_bigarm_symbian_vec): Add it.
2293 (bfd_elf32_littlearm_symbian_vec): Likewise.
2294 * configure: Regenerated.
2295 * elf-bfd.h (elf_backend_data): Add dynamic_sec_flags.
2296 * elf32-arm.h (PLT_HEADER_SIZE): Do not define.
2297 (PLT_ENTRY_SIZE): Likewise.
2298 (bfd_vma_elf32_arm_symbian_plt_entry): New
2299 variable.
2300 (elf32_arm_link_hash_table): Add plt_header_size, plt_entry_size,
2301 and symbian_p.
2302 (create_got_section): Don't create sections when generating BPABI
2303 objects.
2304 (elf32_arm_create_dynamic_sections): Tidy.
2305 (elf32_arm_link_hash_table_create): Set plt_header_size,
2306 plt_entry_size, and symbian_p.
2307 (elf32_arm_check_relocs): Do not mark .rel.dyn as loadable when
2308 generating BPABI objects.
2309 (allocate_dynrelocs): Use htab->plt_header_size, not
2310 PLT_HEADER_SIZE. Do not add to .got.plt when
2311 generating BPABI objects.
2312 (elf32_arm_finish_dynamic_symbol): Generate Symbian OS PLTs.
2313 * elfarm-nabi.c: Add SymbianOS target vectors.
2314 * elflink.c (_bfd_elf_create_got_section): Use dynamic_sec_flags.
2315 (_bfd_elf_link_create_dynamic_sections): Likewise.
2316 * elfxx-target.h (ELF_DYNAMIC_SEC_FLAGS): New macro.
2317 (elfNN_bed): Use it.
2318 * targets.c (bfd_elf32_bigarm_symbian_vec): New variable.
2319 (bfd_elf32_littlearm_symbian_vec): Likewise.
2320 (_bfd_target_vector): Add them.
2321
6e3b6835
NC
23222004-09-03 Nick Clifton <nickc@redhat.com>
2323
2324 PR 360
2325 * coffcode.h (handle_COMDAT): Replace abort with an warning
2326 message and allow the scan to continue.
2327
595da8c5
AM
23282004-09-02 Alan Modra <amodra@bigpond.net.au>
2329
2330 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Use static_syms passed
2331 in when reading relocs, not our sorted syms. Remove unnecessary
2332 var.
2333
6723a9f4
EB
23342004-08-31 Eric Botcazou <ebotcazou@libertysurf.fr>
2335
2336 * elf.c (special_sections): Add .gnu.linkonce.b modelled on .bss.
2337
5464f5a1
NN
23382004-08-30 Nathanael Nerode <neroden@gcc.gnu.org>
2339
2340 * acinclude.m4: Require AC_CANONICAL_TARGET, not AC_CANONICAL_SYSTEM.
2341 Include ../config/acx.m4 and use ACX_NONCANONICAL_* where appropriate;
2342 replace uses of *_alias with *_noncanonical.
2343 * aclocal.m4: Rebuild with aclocal 1.4p6.
2344 * Makefile.in: Rebuild with automake 1.4p6.
2345 * doc/Makefile.in: Rebuild with automake 1.4p6.
2346 * configure.in: Autoupdate with autoupdate 2.59.
2347 * config.in: Regenerate with autoheader 2.59.
2348 * configure: Regnerate with autoconf 2.59.
2349
a7535cf3
AM
23502004-08-28 Alan Modra <amodra@bigpond.net.au>
2351
2352 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Copy input
2353 symbol pointer arrays before modifying.
2354
c9727e01
AM
23552004-08-28 Alan Modra <amodra@bigpond.net.au>
2356
b91e2ae2 2357 * bfd.c (bfd_get_synthetic_symtab): Pass counts and both symbol tables.
c9727e01
AM
2358 * elf-bfd.h (_bfd_elf_get_synthetic_symtab): Adjust.
2359 * elf.c (_bfd_elf_get_synthetic_symtab): Adjust.
2360 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Adjust.
b91e2ae2
AM
2361 * targets.c (struct bfd_target <_bfd_get_synthetic_symtab>): Adjust.
2362 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't read symbols.
2363 Use both symbol tables on non-relocatable objects. Use a common
2364 error exit. Fix "mid" warning.
c9727e01
AM
2365 * libbfd.h: Regenerate.
2366 * bfd-in2.h: Regenerate.
2367
699733f6
AM
23682004-08-28 Alan Modra <amodra@bigpond.net.au>
2369
2370 * elf64-ppc.c (ppc64_elf_branch_reloc): Check .opd is in a regular
2371 object file.
2372 (struct sfpr_def_parms): Save some space.
2373 (sfpr_define): Here too.
2374
2375 * elf64-ppc.c (compare_symbols): Put section syms first.
2376 (sym_exists_at): New function.
2377 (ppc64_elf_get_synthetic_symtab): Use relocs to find code entry
2378 points only for relocatable files. Use .opd section contents
2379 otherwise. Generally clean up the code.
2380
deb0e272
AM
23812004-08-27 Alan Modra <amodra@bigpond.net.au>
2382
2383 * elf64-ppc.c (STD_R0_0R1, STD_R0_0R12, LD_R0_0R1, LD_R0_0R12,
2384 LI_R12_0, STVX_VR0_R12_R0, LVX_VR0_R12_R0, MTLR_R0, SFPR_MAX): Define.
2385 (struct sfpr_def_parms): New.
2386 (sfpr_define): New function.
2387 (savegpr0, savegpr0_tail, restgpr0, restgpr0_tail): New functions.
2388 (savegpr1, savegpr1_tail, restgpr1, restgpr1_tail): New functions.
2389 (savefpr, savefpr0_tail, restfpr, restfpr0_tail): New functions.
2390 (savefpr1_tail, restfpr1_tail): New functions.
2391 (savevr, savevr_tail, restvr, restvr_tail): New functions.
2392 (MIN_SAVE_FPR, MAX_SAVE_FPR): Don't define.
2393 (ppc64_elf_func_desc_adjust): Use sfpr_define in place of existing
2394 code. Define all ABI mandated _save and _rest functions.
2395
85a84e7a
PB
23962004-08-26 Paul Brook <paul@codesourcery.com>
2397
deb0e272 2398 * elf32-arm.h (INTERWORK_FLAG): Return true for EABIv3 objects.
85a84e7a 2399
688c58f3
AM
24002004-08-26 Alan Modra <amodra@bigpond.net.au>
2401
2402 * elf32-m32r.c (m32r_elf_relocate_section): Don't compare with
2403 TRUE or FALSE.
2404
3e95eabc
AM
24052004-08-26 Alan Modra <amodra@bigpond.net.au>
2406
2407 * elf32-i386.c (elf_i386_relocate_section): Tweak last change so
2408 that pcrel correction is applied for R_386_PC32.
2409
f855931b
AM
24102004-08-25 Alan Modra <amodra@bigpond.net.au>
2411
2412 * elf32-i386.c (elf_i386_relocate_section): Zero section contents
2413 for R_386_32 and R_386_PC32 relocs against symbols defined in
2414 discarded sections.
2415
b18c562e
NC
24162004-08-25 Dmitry Diky <diwil@spec.ru>
2417
2418 * reloc.c (BFD_RELOC_MSP430_2X_PCREL,BFD_RELOC_MSP430_RL_PCREL):
2419 Add new relocations.
2420 * bfd-in2.h: Regenerate.
f855931b 2421 * libbfd.h: Regenerate.
b18c562e
NC
2422 * elf32-msp430.c: Clean-up code.
2423 (elf_msp430_howto_table): Add new relocation entries.
2424 (bfd_elf32_bfd_reloc_type_lookup): New relocation handlers.
2425 (msp430_elf_relax_section): New function.
2426 (msp430_elf_relax_delete_bytes): New function.
2427 (msp430_elf_symbol_address_p): New function.
2428
af705ba8
NC
24292004-08-24 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
2430
2431 * elf32-m32r.c (m32r_elf_relocate_section): Handle
2432 R_M32R_SDA16_RELA in the same way as R_M32R_SDA16.
2433
ea5158d8
DJ
24342004-08-20 Daniel Jacobowitz <dan@debian.org>
2435
2436 * elflink.c (_bfd_elf_section_already_linked): Handle
2437 SEC_LINK_DUPLICATES_SAME_CONTENTS.
2438
49d934f1
MM
24392004-08-19 Mark Mitchell <mark@codesourcery.com>
2440
2441 * config.bfd (arm*-*-symbianelf*): New target.
2442 (arm*-*-eabi*): Likewise.
2443
039b3fef
AM
24442004-08-19 Alan Modra <amodra@bigpond.net.au>
2445
2446 * elf64-ppc.c (ppc_get_stub_entry): Change third param to a
2447 "struct ppc_link_hash_entry *".
2448 (ppc64_elf_relocate_section): Ditto for type of h. Introduce h_elf
2449 to satisfy RELOC_FOR_GLOBAL_SYMBOL.
2450
3f764659
JJ
24512004-08-19 Jakub Jelinek <jakub@redhat.com>
2452
2453 * elf64-ppc.c (ppc64_elf_edit_opd): Support 16 byte long .opd
2454 entries (where fd_aux overlaps next entry's fd_func).
2455 Add non_overlapping argument, use it.
2456 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, adjust_opd_syms,
2457 ppc64_elf_size_stubs, ppc64_elf_relocate_section,
2458 ppc64_elf_output_symbol_hook): Use address / 8 instead of address / 24
2459 as indexes into opd_sym_map/opd_adjust array.
2460 * elf64-ppc.h (ppc64_elf_edit_opd): Adjust prototype.
2461
c09bdfe5
AM
24622004-08-18 Alan Modra <amodra@bigpond.net.au>
2463
2464 * elf64-ppc.c (func_desc_adjust): Give undefined dot-symbols a value
2465 if we can look up their function descriptor in a regular file.
2466
271d0fc3
NC
24672004-08-18 Nick Clifton <nickc@redhat.com>
2468
2469 PR 324
2470 * cofflink.c (coff_link_add_symbols): Check that the comdat
2471 pointer in the coff_section_data structure has been initialised
2472 before using it.
2473
a010d60f
AM
24742004-08-18 Alan Modra <amodra@bigpond.net.au>
2475
2476 PR 338
2477 * elflink.c (bfd_elf_record_link_assignment): Add comment about
2478 changing bfd_link_hash_undefined to bfd_link_hash_new.
2479
90e3cdf2
JJ
24802004-08-17 Jakub Jelinek <jakub@redhat.com>
2481
2482 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Only define
2483 if not yet defined.
2484 * elf64-ppc.c (bfd_elf64_get_synthetic_symtab): Define.
2485 (synthetic_opd, synthetic_relocatable): New variables.
2486 (compare_symbols, compare_relocs): New helper routines.
2487 (ppc64_elf_get_synthetic_symtab): New function.
2488 * bfd.c (bfd_get_synthetic_symtab): Rename dynsyms argument
2489 to relsyms.
2490 * bfd-in2.h: Regenerated.
2491 * elf.c (_bfd_elf_get_synthetic_symtab): Rename dynsyms argument
2492 to relsyms. Return 0 if abfd is relocatable.
2493
7c2c8505
AM
24942004-08-17 Alan Modra <amodra@bigpond.net.au>
2495
2496 * elflink.h (elf_gc_sweep): Keep non-alloc, non-load sections.
2497
0367ecfb
NC
24982004-08-17 Nick Clifton <nickc@redhat.com>
2499
2500 * (is_arm_mapping_symbol_name): New function - return true
2501 when a symbol name matches the requirements for an ARM mapping
2502 symbol name.
2503 (arm_elf_find_function): New function based on
2504 elf_find_function in elf.c but skipping ARM mapping symbols
2505 and including thumb function symbols.
2506 (elf32_arm_find_nearest_line): Use arm_elf_find_function.
2507 (elf32_arm_output_symbol_hook): Use is_arm_mapping_symbol_name.
2508
2441e016
AM
25092004-08-17 Alan Modra <amodra@bigpond.net.au>
2510
2511 * elf64-ppc.c (ppc64_elf_branch_reloc): New function.
2512 (ppc64_elf_howto_raw): Use ppc64_elf_branch_reloc.
2513 (ppc64_elf_brtaken_reloc): Here too.
2514
35b0ce59
AM
25152004-08-17 Alan Modra <amodra@bigpond.net.au>
2516
2517 * elf64-ppc.c (add_symbol_adjust): Correct mismatched function
2518 symbol visibility.
2519 (ppc64_elf_check_directives): Check that we have the right hash
2520 table before proceeding.
2521
81688140
AM
25222004-08-17 Alan Modra <amodra@bigpond.net.au>
2523
2524 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add "deleted_section".
2525 (adjust_opd_syms): Attach opd syms for deleted entries to one of
2526 the sections that will be discarded.
2527
327c1315
AM
25282004-08-16 Alan Modra <amodra@bigpond.net.au>
2529
2530 * elflink.c (elf_section_complain_discarded): Ignore .fixup.
2531
45fc9e4a
AM
25322004-08-16 Alan Modra <amodra@bigpond.net.au>
2533
2534 * bfd.c (_bfd_default_error_handler): Account for doubled '%' in
2535 free space available.
2536
9dadfa79
AM
25372004-08-16 Alan Modra <amodra@bigpond.net.au>
2538
2539 * pdp11.c (struct pdp11_aout_reloc_external): Delete. Replace
f89c4dec 2540 occurrences with bfd_byte * thoughout file.
9dadfa79
AM
2541
2542 * coff-rs6000.c (do_shared_object_padding): Warning fix.
2543 (xcoff_write_armap_big): Likewise.
2544 (xcoff_write_archive_contents_old): Likewise.
2545 (xcoff_write_archive_contents_big): Likewise.
2546
2547 * elf64-mmix.c (mmix_elf_get_section_contents): Delete declaration.
2548
57e8b36a
NC
25492004-08-13 Nick Clifton <nickc@redhat.com>
2550
2551 * elf32-arm.h: Convert to ISO C90.
2552
a005f94e
AM
25532004-08-13 Alan Modra <amodra@bigpond.net.au>
2554
2555 PR 293
2556 * elf32-hppa.c (elf32_hppa_hide_symbol): Use init_refcount to
2557 zero the plt field.
2558
d003868e
AM
25592004-08-13 Alan Modra <amodra@bigpond.net.au>
2560
2561 * bfd.c (_bfd_default_error_handler): Handle %A and %B.
2562 (bfd_archive_filename, bfd_get_section_ident): Delete.
2563 * ecofflink.c (bfd_ecoff_debug_accumulate_other): Don't call
2564 bfd_archive_filename.
2565 * elflink.c (elf_link_input_bfd): Don't use callbacks->error_handler
2566 to warn about symbols in discarded sections. Use _bfd_error_handler.
2567 * aout-adobe.c (aout_adobe_callback): See below.
2568 * aout-cris.c (swap_ext_reloc_in): ..
2569 * coff-arm.c (find_thumb_glue, find_arm_glue,
2570 coff_arm_relocate_section, bfd_arm_process_before_allocation,
2571 coff_arm_merge_private_bfd_data, _bfd_coff_arm_set_private_flags,
2572 coff_arm_copy_private_bfd_data): ..
2573 * coff-i860.c (i860_reloc_processing): ..
2574 * coff-mcore.c (mcore_coff_unsupported_reloc,
2575 coff_mcore_relocate_section): ..
2576 * coff-ppc.c (coff_ppc_relocate_section): ..
2577 * coff-rs6000.c (xcoff_create_csect_from_smclas
2578 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
2579 sh_swap_insns, sh_relocate_section): ..
2580 * coff-tic54x.c (tic54x_reloc_processing): ..
2581 * coff-tic80.c (coff_tic80_relocate_section): ..
2582 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): ..
2583 * coffcode.h (styp_to_sec_flags, coff_slurp_line_table,
2584 coff_slurp_symbol_table, coff_classify_symbol,
2585 coff_slurp_reloc_table): ..
2586 * coffgen.c (_bfd_coff_read_string_table): ..
2587 * cofflink.c (coff_link_add_symbols, _bfd_coff_link_input_bfd,
2588 _bfd_coff_generic_relocate_section): ..
2589 * cpu-arm.c (bfd_arm_merge_machines): ..
2590 * cpu-sh.c (sh_merge_bfd_arch): ..
2591 * elf-hppa.h (elf_hppa_relocate_section): ..
2592 * elf.c (bfd_elf_string_from_elf_section, setup_group,
2593 _bfd_elf_setup_group_pointers, bfd_section_from_shdr,
2594 assign_section_numbers, _bfd_elf_symbol_from_bfd_symbol,
2595 copy_private_bfd_data, _bfd_elf_validate_reloc): ..
2596 * elf32-arm.h (find_thumb_glue, find_arm_glue,
2597 bfd_elf32_arm_process_before_allocation, elf32_thumb_to_arm_stub,
2598 elf32_arm_to_thumb_stub, elf32_arm_final_link_relocate,
2599 elf32_arm_relocate_section, elf32_arm_set_private_flags,
2600 elf32_arm_copy_private_bfd_data, elf32_arm_merge_private_bfd_data): ..
2601 * elf32-cris.c (cris_elf_relocate_section, cris_elf_check_relocs,
2602 cris_elf_merge_private_bfd_data
2603 * elf32-frv.c (elf32_frv_relocate_section, elf32_frv_check_relocs): ..
2604 * elf32-gen.c (elf32_generic_link_add_symbols): ..
2605 * elf32-hppa.c (hppa_add_stub, hppa_build_one_stub,
2606 elf32_hppa_check_relocs, get_local_syms, final_link_relocate,
2607 elf32_hppa_relocate_section): ..
2608 * elf32-i370.c (i370_elf_merge_private_bfd_data,
2609 i370_elf_check_relocs, i370_elf_relocate_section): ..
2610 * elf32-i386.c (elf_i386_info_to_howto_rel, elf_i386_check_relocs,
2611 elf_i386_relocate_section): ..
2612 * elf32-m32r.c (m32r_elf_relocate_section,
2613 m32r_elf_merge_private_bfd_data): ..
2614 * elf32-m68hc1x.c (m68hc12_add_stub,
2615 _bfd_m68hc11_elf_merge_private_bfd_data): ..
2616 * elf32-m68k.c (elf_m68k_relocate_section): ..
2617 * elf32-mcore.c (mcore_elf_unsupported_reloc,
2618 mcore_elf_relocate_section): ..
2619 * elf32-ppc.c (ppc_elf_merge_private_bfd_data, bad_shared_reloc,
2620 ppc_elf_check_relocs, ppc_elf_relocate_section,
2621 ppc_elf_begin_write_processing): ..
2622 * elf32-s390.c (elf_s390_check_relocs, invalid_tls_insn,
2623 elf_s390_relocate_section): ..
2624 * elf32-sh-symbian.c (sh_symbian_import_as,
2625 sh_symbian_process_embedded_commands,
2626 sh_symbian_relocate_section): ..
2627 * elf32-sh.c (sh_elf_relax_section, sh_elf_relax_delete_bytes,
2628 sh_elf_swap_insns, sh_elf_relocate_section, sh_elf_check_relocs,
2629 sh_elf_merge_private_data): ..
2630 * elf32-sparc.c (elf32_sparc_check_relocs,
2631 elf32_sparc_relocate_section,
2632 elf32_sparc_merge_private_bfd_data): ..
2633 * elf32-v850.c (v850_elf_check_relocs,
2634 v850_elf_merge_private_bfd_data): ..
2635 * elf32-xtensa.c (elf_xtensa_check_relocs,
2636 elf_xtensa_relocate_section, elf_xtensa_merge_private_bfd_data): ..
2637 * elf64-alpha.c (elf64_alpha_relax_with_lituse,
2638 elf64_alpha_relax_got_load, elf64_alpha_size_got_sections,
2639 elf64_alpha_relocate_section_r, elf64_alpha_relocate_section): ..
2640 * elf64-gen.c (elf64_generic_link_add_symbols): ..
2641 * elf64-ppc.c (ppc64_elf_merge_private_bfd_data, ppc_add_stub,
2642 ppc64_elf_check_relocs, ppc64_elf_edit_opd,
2643 ppc64_elf_relocate_section): ..
2644 * elf64-s390.c (elf_s390_check_relocs, invalid_tls_insn,
2645 elf_s390_relocate_section): ..
2646 * elf64-sh64.c (sh_elf64_relocate_section): ..
2647 * elf64-sparc.c (sparc64_elf_check_relocs,
2648 sparc64_elf_add_symbol_hook, sparc64_elf_relocate_section,
2649 sparc64_elf_merge_private_bfd_data): ..
2650 * elf64-x86-64.c (elf64_x86_64_check_relocs,
2651 elf64_x86_64_relocate_section): ..
2652 * elflink.c (_bfd_elf_add_default_symbol,
2653 _bfd_elf_link_assign_sym_version, elf_link_read_relocs_from_section,
2654 _bfd_elf_link_output_relocs, elf_link_add_object_symbols,
2655 bfd_elf_size_dynamic_sections, elf_link_output_extsym,
2656 elf_get_linked_section_vma, elf_fixup_link_order,
2657 bfd_elf_final_link, bfd_elf_gc_record_vtinherit,
2658 bfd_elf_gc_record_vtinherit, _bfd_elf_section_already_linked): ..
2659 * elfxx-ia64.c (elfNN_ia64_relax_section,
2660 elfNN_ia64_relocate_section, elfNN_ia64_merge_private_bfd_data): ..
2661 * elfxx-mips.c (mips_elf_perform_relocation,
2662 _bfd_mips_elf_check_relocs,
2663 _bfd_mips_elf_merge_private_bfd_data): ..
2664 * ieee.c (ieee_slurp_external_symbols): ..
2665 * ihex.c (ihex_bad_byte, ihex_scan, ihex_read_section): ..
2666 * libbfd.c (_bfd_generic_verify_endian_match): ..
2667 * linker.c (_bfd_generic_link_add_one_symbol,
2668 _bfd_generic_section_already_linked): ..
2669 * pdp11.c (translate_to_native_sym_flags): ..
2670 * pe-mips.c (coff_pe_mips_relocate_section): ..
2671 * peicode.h (pe_ILF_build_a_bfd): ..
2672 * srec.c (srec_bad_byte): ..
2673 * stabs.c (_bfd_link_section_stabs): ..
2674 * xcofflink.c (xcoff_link_add_symbols, xcoff_link_input_bfd): ..
2675 Replace all uses of bfd_archive_filename and bfd_get_section_ident
2676 with corresponding %B and %A in _bfd_error_handler format string.
2677 Replace occurrences of "fprintf (stderr," with _bfd_error_handler
2678 calls to use %A and %B. Fix "against symbol .. from section" and
2679 similar error messages. Combine multiple _bfd_error_handler calls
2680 where they were separated due to bfd_archive_filename deficiencies.
2681 * bfd-in2.h: Regenerate.
2682
6ba842b6
L
26832004-08-12 H.J. Lu <hongjiu.lu@intel.com>
2684
2685 * elf32-i386.c (elf_i386_relocate_section): Report unrecognized
2686 relocation.
2687
99877b66
AM
26882004-08-10 Alan Modra <amodra@bigpond.net.au>
2689
2690 * elf64-ppc.c (struct ppc_link_hash_entry): Add was_undefined.
2691 (struct ppc_link_hash_table): Remove no_multi_toc, multi_toc_needed.
2692 Make emit_stub_syms, stub_error and has_14bit_branch bit-fields.
2693 Add twiddled_syms.
2694 (link_hash_newfunc): Init was_undefined.
2695 (add_symbol_adjust): Don't set undefined dot symbols to defweak;
2696 Use undefweak instead.
2697 (ppc64_elf_check_directives): Fix undefs chain.
2698 (ppc64_elf_next_toc_section): Remove no_multi_toc and multi_toc_needed
2699 references.
2700 (ppc64_elf_size_stubs): Adjust for add_symbol_adjust change.
2701 (undo_symbol_twiddle, ppc64_elf_restore_symbols): New functions.
2702 * elf64-ppc.h (ppc64_elf_restore_symbols): Declare.
2703
ba3bee0b
JJ
27042004-08-09 Jakub Jelinek <jakub@redhat.com>
2705
2706 * elf64-x86-64.c (elf64_x86_64_relocate_section): For -fno-pic
2707 error, test input_section flags rather than sec.
2708
8387904d
AM
27092004-08-09 Alan Modra <amodra@bigpond.net.au>
2710
2711 * elf-bfd.h (struct elf_backend_data): Add
2712 elf_backend_archive_symbol_lookup.
2713 (_bfd_elf_archive_symbol_lookup): Declare.
2714 * elflink.c (_bfd_elf_archive_symbol_lookup): New function..
2715 (elf_link_add_archive_symbols): ..extracted from here. Call the
2716 backend version.
2717 * elfxx-target.h (elf_backend_archive_symbol_lookup): Provide default.
2718 (elfNN_bed): Init new field.
2719 * elf64-ppc.c (elf_backend_check_directives): Define.
2720 (elf_backend_archive_symbol_lookup): Define.
2721 (struct ppc_link_hash_table): Add tls_get_add_fd. Make tls_get_add
2722 a ppc_link_hash_entry pointer.
2723 (get_fdh): Move.
2724 (ppc64_elf_archive_symbol_lookup, opd_entry_value): New functions.
2725 (add_symbol_adjust, ppc64_elf_check_directives): New functions.
2726 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, func_desc_adjust,
2727 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup,
2728 ppc64_elf_tls_optimize, allocate_dynrelocs, ppc_type_of_stub,
2729 ppc_build_one_stub, ppc64_elf_size_stubs, ppc64_elf_relocate_section,
2730 ppc64_elf_finish_dynamic_symbol): Handle branch relocs to function
2731 descriptor symbols.
2732
b25116a9
AM
27332004-08-09 Alan Modra <amodra@bigpond.net.au>
2734
8843416a
AM
2735 * elf64-ppc.c (struct ppc_link_hash_entry): Expand adjust_done comment.
2736 (ppc64_elf_add_symbol_hook): Test for NULL section.
2737 (get_sym_h): Formatting.
2738 (ppc64_elf_size_stubs): Include reloc addend in value stored as
2739 stub target_value.
2740
b25116a9
AM
2741 * elf64-ppc.c (ppc64_elf_relocate_section): Combine handling of
2742 long branch stubs with code handling plt and r2off branch stubs.
2743
ccfa59ea
AM
27442004-08-09 Alan Modra <amodra@bigpond.net.au>
2745
2746 * elf-bfd.h (_bfd_elf_gc_mark): Declare.
2747 * elflink.c (elf_link_input_bfd): Formatting.
2748 (_bfd_elf_gc_mark): Rename from elf_gc_mark and make global. Adjust
2749 all callers.
2750 * elf64-ppc.c (struct ppc_link_hash_entry): Remove is_entry.
2751 (link_hash_newfunc): Don't set it.
2752 (ppc64_elf_copy_indirect_symbol): Nor copy it.
2753 (ppc64_elf_mark_entry_syms): Delete.
2754 (ppc64_elf_gc_mark_hook): Mark entry syms here. Also mark opd
2755 sections. Use get_opd_info.
2756 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Delete.
2757
4025353c
AM
27582004-08-09 Alan Modra <amodra@bigpond.net.au>
2759
4f800a42
AM
2760 * elf64-ppc.c (adjust_opd_syms): Fix merge error.
2761
06da1e8e
AM
2762 * elf64-ppc.c (struct ppc_link_hash_table): Remove have_undefweak.
2763 (func_desc_adjust): Don't set have_undefweak.
2764 (ppc64_elf_func_desc_adjust): Don't add an extr nop to sfpr.
2765 (ppc64_elf_relocate_section): NOP out calls to undefweak functions.
2766
34814b9f
AM
2767 * elf64-ppc.c (struct ppc_link_hash_entry): Make "oh" a
2768 "struct ppc_link_hash_entry *". Adjust all references.
2769 (ppc64_elf_hide_symbol): Correct a comment.
2770
4025353c
AM
2771 * elf64-ppc.c (get_opd_info): New function.
2772 (adjust_opd_syms): Use get_opd_info. Define removed symbols as zero.
2773 (ppc64_elf_edit_opd): Use get_opd_info. Check that sym has a dot
2774 before calling get_fdh. Test fdh rather than h before dereferencing
2775 fdh. Mark removed symbols in opd_adjust.
2776 (ppc64_elf_tls_optimize): Don't bother with opd adjustment here.
2777 (ppc64_elf_relocate_section): Use get_opd_info, and handle removed
2778 opd symbols.
2779 (ppc64_elf_output_symbol_hook): Likewise.
2780
db6579d4
PB
27812004-08-06 Paul Brook <paul@codesourcery.com>
2782
2783 * elfarm-nabi.c (elf32_arm_howto_table): Add new EABI relocations.
2784 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_RELABS32,
2785 BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32.
2786 * reloc.c: Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32
2787 and BFD_RELOC_ARM_SBREL32.
2788 * bfd-in2.h, bbfd.h: Regenerate.
2789
a4d0f181
TS
27902004-08-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2791
2792 * elfxx-mips.c (mips_elf_calculate_relocation): Test only for
2793 the dynamic link symbol actually in use.
2794
83774818
SC
27952004-08-01 Stephane Carrez <stcarrez@nerim.fr>
2796
2797 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Handle bfd_link_hash_new
2798
a4d0f181 27992004-07-31 Joel Brobecker <brobecker@gnat.com>
00b4930b
TS
2800 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2801
2802 * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Handle
2803 SHN_MIPS_TEXT and SHN_MIPS_DATA.
2804
185d09ad
L
28052004-07-30 H.J. Lu <hongjiu.lu@intel.com>
2806 Nick Clifton <nickc@redhat.com>
2807
2808 PR 290
2809 * bfd.c (_bfd_default_error_handler): Make it global.
2810
2811 * elf-bfd.h (elf_backend_data): Add link_order_error_handler.
2812
2813 * elf.c (assign_section_numbers): Cope gracefully with sections
2814 which have SHF_LINK_ORDER set but no sh_link set up.
2815 * elflink.c (elf_get_linked_section_vma): Likewise.
2816
2817 * elfxx-ia64.c (elf_backend_link_order_error_handler): New. Set
2818 it to NULL.
2819
2820 * elfxx-target.h (elf_backend_link_order_error_handler): New.
2821 Set it to _bfd_default_error_handler.
2822 (elfNN_bed): Add elf_backend_link_order_error_handler.
2823
2824 * libbfd-in.h (_bfd_default_error_handler): New.
2825
2826 * libbfd.h: Regenerated.
2827
7946e94a
JJ
28282004-07-30 Jakub Jelinek <jakub@redhat.com>
2829
2830 * archures.c (bfd_mach_sparc_64bit_p): Define.
2831 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Use it.
2832 * bfd-in2.h: Rebuilt.
2833
1d70c7fb
AO
28342004-07-29 Alexandre Oliva <aoliva@redhat.com>
2835
2836 Introduce SH2a support.
2837 2004-02-18 Corinna Vinschen <vinschen@redhat.com>
2838 * archures.c (bfd_mach_sh2a_nofpu): New.
2839 * bfd-in2.h: Rebuilt.
2840 * cpu-sh.c (SH2A_NOFPU_NEXT): New.
2841 (arch_info_struct): Add sh2a_nofpu.
2842 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu.
2843 2003-12-29 DJ Delorie <dj@redhat.com>
2844 * reloc.c: Add relocs for sh2a.
2845 * bfd-in2.h: Regenerate.
2846 * libbfd.hh: Regenerate.
2847 2003-12-01 Michael Snyder <msnyder@redhat.com>
2848 * archures.c (bfd_mach_sh2a): New.
2849 * bfd-in2.h: Rebuilt.
2850 * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums.
2851 (SH2A_NEXT): New.
2852 (arch_info_struct): Add sh2a.
2853 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a.
2854
404ed0cf
DA
28552004-07-28 Nick Clifton <nickc@redhat.com>
2856 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2857
2858 PR 273
2859 * som.c (setup_sections): Improve estimation of space sizes in
2860 relocatable objects.
2861
225247f0
JT
28622004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
2863 * config.bfd (hppa*-*-netbsd*): Set targ_defvec to
2864 bfd_elf32_hppa_nbsd_vec. Add bfd_elf32_hppa_linux_vec
2865 to targ_selvecs.
2866 * configure.in (bfd_elf32_hppa_nbsd_vec): Add case.
2867 * configure: Regenerate.
2868 * elf32-hppa.c (elf32_hppa_object_p): Add "elf32-hppa-netbsd"
2869 case that accepts OSABI=NetBSD and OSABI=SysV.
2870 (elf32_hppa_set_gp): For "elf32-hppa-netbsd", set the GP to
2871 the base of .got or .data (if .got does not exist).
2872 (elf32_hppa_post_process_headers): For elf32-hppa-netbsd,
2873 set OSABI=NetBSD.
2874 (TARGET_BIG_SYM): Add bfd_elf32_hppa_nbsd_vec case.
2875 (TARGET_BIG_NAME): Add "elf32-hppa-netbsd" case.
2876 * targets.c (bfd_elf32_hppa_nbsd_vec): Add extern declaration.
2877 (_bfd_target_vector): Add bfd_elf32_hppa_nbsd_vec.
2878
3d7f7666
L
28792004-07-27 H.J. Lu <hongjiu.lu@intel.com>
2880
2881 PR 161/251
2882 * elf-bfd.h (bfd_elf_section_data): Add sec_group.
2883 (elf_sec_group): Defined.
2884 (bfd_elf_match_symbols_in_sections): New prototype.
2885 (_bfd_elf_setup_group_pointers): Likewise.
2886
2887 * elf.c (bfd_elf_discard_group): Abort.
2888 (bfd_elf_set_group_contents): Also include relocation sections.
2889 Remove zero-fill for ld -r.
2890 (_bfd_elf_setup_group_pointers): New function.
2891 (elf_sort_elf_symbol): Likewise.
2892 (elf_sym_name_compare): Likewise.
2893 (bfd_elf_match_symbols_in_sections): Likewise.
2894
2895 * elfcode.h (elf_object_p): Call _bfd_elf_setup_group_pointers.
2896
2897 * elflink.c (match_group_member): New.
2898 (elf_link_input_bfd): Check group member for discarded section.
2899 (try_match_symbols_in_sections): New function.
2900 (already_linked): Likewise.
2901 (_bfd_elf_section_already_linked): Support mixing comdat group
2902 and linkonce section.
2903
2904 * libbfd-in.h (bfd_section_already_linked_table_traverse): New.
2905 * linker.c (bfd_section_already_linked_table_traverse): New.
2906
2907 * libbfd.h: Regenerated.
2908
670ec21d
NC
29092004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
2910
2911 * reloc.c: Add BFD_RELOC_CRX_SWITCH8, BFD_RELOC_CRX_SWITCH16,
2912 BFD_RELOC_CRX_SWITCH32.
2913 * bfd-in2.h: Regenerate.
6cd7f07e 2914 * libbfd.h: Regenerate.
670ec21d
NC
2915 * elf32-crx.c: Support relocation/relaxation of
2916 BFD_RELOC_CRX_SWITCH* types.
2917
2c66dc6c
AM
29182004-07-27 Alan Modra <amodra@bigpond.net.au>
2919
2920 * elf64-ppc.c: Correct "Linker stubs" comment.
2921
38ce5b11
L
29222004-07-26 H.J. Lu <hongjiu.lu@intel.com>
2923
2924 * elf-bfd.h (bfd_elf_section_data): Add a pointer for the
2925 linked-to section.
2926 (elf_linked_to_section): New.
2927
2928 * elf.c (assign_section_numbers): Set up sh_link for
2929 SHF_LINK_ORDER.
2930
2931 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set sh_info
2932 to sh_link for SHT_IA_64_UNWIND sections.
2933
65da361f
L
29342004-07-22 H.J. Lu <hongjiu.lu@intel.com>
2935
2936 * elflink.c (elf_fixup_link_order): Add _() to error message.
2937
08ccf96b
L
29382004-07-22 H.J. Lu <hongjiu.lu@intel.com>
2939
2940 * elflink.c (elf_fixup_link_order): Issue a warning and flag
2941 an error if failed.
2942
082b7297
L
29432004-07-21 H.J. Lu <hongjiu.lu@intel.com>
2944
2945 * aout-adobe.c (aout_32_section_already_linked): Defined.
2946 * aout-target.h (MY_section_already_linked): Likewise.
2947 * aout-tic30.c (MY_section_already_linked): Likewise.
2948 * binary.c (binary_section_already_linked): Likewise.
2949 * bout.c (b_out_section_already_linked): Likewise.
2950 * coff-alpha.c (_bfd_ecoff_section_already_linked): Likewise.
2951 * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
2952 * coffcode.h (coff_section_already_linked): Likewise.
2953 * i386msdos.c (msdos_section_already_linked): Likewise.
2954 * i386os9k.c (os9k_section_already_linked): Likewise.
2955 * ieee.c (ieee_section_already_linked): Likewise.
2956 * ihex.c (ihex_section_already_linked): Likewise.
2957 * mach-o.c (bfd_mach_o_section_already_linked): Likewise.
2958 * mmo.c (mmo_section_already_linked): Likewise.
2959 * nlm-target.h (nlm_section_already_linked): Likewise.
2960 * oasys.c (oasys_section_already_linked): Likewise.
2961 * pef.c (bfd_pef_section_already_linked): Likewise.
2962 * ppcboot.c (ppcboot_section_already_linked): Likewise.
2963 * som.c (som_bfd_discard_group): Likewise.
2964 * srec.c (srec_section_already_linked): Likewise.
2965 * tekhex.c (tekhex_section_already_linked): Likewise.
2966 * versados.c (versados_section_already_linked): Likewise.
2967 * vms.c (vms_section_already_linked): Likewise.
2968 * coff-target.h (_bfd_xcoff_section_already_linked): Likewise.
2969 * xsym.c (bfd_sym_section_already_linked): Likewise.
2970
2971 * bfd-in.h (bfd_section_already_linked_table_init): New.
2972 (bfd_section_already_linked_table_free): Likewise.
2973
2974 * coff-rs6000.c (rs6000coff_vec): Add
2975 _bfd_generic_section_already_linked.
2976 (pmac_xcoff_vec): Likewise.
2977 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
2978 (aix5coff64_vec): Likewise.
2979
2980 * elf-bfd.h (_bfd_elf_section_already_linked): New prototype.
2981 * elflink.c (_bfd_elf_section_already_linked): New function.
2982
2983 * elfxx-target.h (bfd_elfNN_section_already_linked): Defined.
2984
2985 * libbfd-in.h (_bfd_nolink_section_already_linked): Defined.
2986 (_bfd_generic_section_already_linked): New.
2987 (bfd_section_already_linked_hash_entry): Likewise.
2988 (bfd_section_already_linked): Likewise.
2989 (bfd_section_already_linked_table_lookup): Likewise.
2990 (bfd_section_already_linked_table_insert): Likewise.
2991
2992 * linker.c (bfd_section_already_linked): New.
2993 (_bfd_section_already_linked_table): Likewise.
2994 (bfd_section_already_linked_table_lookup): Likewise.
2995 (bfd_section_already_linked_table_insert): Likewise.
2996 (already_linked_newfunc): Likewise.
2997 (bfd_section_already_linked_table_init): Likewise.
2998 (bfd_section_already_linked_table_free): Likewise.
2999 (_bfd_generic_section_already_linked): Likewise.
3000
3001 * section.c (bfd_section): Remove comdat.
3002 (bfd_comdat_info): Moved to ...
3003 * bfd-in.h (coff_comdat_info): Here.
3004 (bfd_coff_get_comdat_section): New.
3005 * coffgen.c (bfd_coff_get_comdat_section): Likewise.
3006 * libcoff-in.h (coff_section_tdata): Add comdat.
3007 * coffcode.h (handle_COMDAT): Updated.
3008 * cofflink.c (coff_link_add_symbols): Likewise.
3009 * ecoff.c (bfd_debug_section): Likewise.
3010
3011 * targets.c (bfd_target): Add _section_already_linked.
3012 (BFD_JUMP_TABLE_LINK): Updated.
3013
3014 * bfd-in2.h: Regenerated.
3015 * libbfd.h: Likewise.
3016 * libcoff.h: Likewise.
3017
0b52efa6
PB
30182003-07-21 Paul Brook <paul@codesourcery.com>
3019
3020 * elflink.c (elf_get_linked_section_vma, compare_link_order,
3021 elf_fixup_link_order): New functions.
3022 (bfd_elf_final_link): Call elf_fixup_link_order.
3023
7e2294f9
AO
30242004-07-21 Alexandre Oliva <aoliva@redhat.com>
3025
3026 * elf-bfd.h (ELF_COMMON_DEF_P): New.
3027 * elflink.c (_bfd_elf_symbol_refs_local_p): Use it to handle
3028 common definitions.
3029 * elf-m10300.c: Use SYMBOL_REFERENCES_LOCAL instead of
3030 _bfd_elf_symbol_refs_local_p.
3031 * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove hack for common
3032 symbols.
3033
e56f61be
L
30342004-07-19 H.J. Lu <hongjiu.lu@intel.com>
3035
3036 * bfd-in.h (dynamic_lib_link_class): Add DYN_NO_ADD_NEEDED and
3037 DYN_NO_NEEDED.
3038 (bfd_elf_get_dyn_lib_class): New prototype.
3039 * elf.c (bfd_elf_get_dyn_lib_class): New function.
3040
3041 * elflink.c (elf_link_add_object_symbols): Check DYN_AS_NEEDED,
3042 DYN_DT_NEEDED and DYN_NO_NEEDED bits to see if a DT_NEEDED
3043 entry is needed. Issue an error if a DT_NEEDED entry is needed
3044 for a file marked DYN_NO_NEEDED.
3045 (elf_link_check_versioned_symbol): Check the DYN_DT_NEEDED bit
3046 for DT_NEEDED tags.
3047
3048 * bfd-in2.h: Regenerated.
3049
27b56da8
DA
30502004-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3051
3052 * elflink.c (elf_section_complain_discarded): Don't complain in
3053 .PARISC.unwind.
3054
bbb268c3
JW
30552004-07-10 James E Wilson <wilson@specifixinc.com>
3056
3057 * elfxx-ia64.c (elfNN_ia64_relax_ldxmov): Remove abfd parameter.
3058 (elfNN_ia64_install_value, elfNN_ia64_relax_brl): Likewise.
3059 (elfNN_ia64_relax_section, elfNN_ia64_relocate_section,
3060 elfNN_ia64_finish_dynamic_symbol, elfNN_ia64_finish_dynamic_sections):
3061 Fix callers.
3062 (elfNN_ia64_relax_brl): Change bfd_get_64 to bfd_getl64. Change
3063 bfd_put_64 to bfd_putl64.
3064 (elfNN_ia64_relax_ldxmov, elfNN_ia64_install_value): Likewise.
2c66dc6c 3065
e525914f
L
30662004-07-09 H.J. Lu <hongjiu.lu@intel.com>
3067
3068 PR 240
3069 * elfxx-ia64.c (elfNN_ia64_relax_section): Only warn br in
3070 .init/.fini sections when trying to relax it.
3071
b1a6d0b1
NC
30722004-07-09 Jie Zhang <zhangjie@magima.com.cn>
3073
3074 * elf.c (assign_file_positions_for_segments): Make sure the
3075 .dynamic section is the first section in the PT_DYNAMIC segment.
3076
1a320fbb
NC
30772004-07-09 Nick Clifton <nickc@redhat.com>
3078
3079 * config.bfd: Change sh-sybmian-elf to sh-*-symbianelf.
3080 * elf32-sh-symbian.c: Rename the sh_find_elf_flags and
3081 sh_elf_get_flags_from_mach functions so that they do not conflict
3082 when this target is built with other sh-elf targets.
3083 * elf32-sh.c (sh_elf_get_flags_from_mach): Remove bogus
3084 suppression of this function.
3085 (sh_elf_find_flags): Likewise.
3086
1fe1f39c
NC
30872004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
3088
3089 * Makefile.am (ALL_MACHINES): Add cpu-crx.lo.
3090 (ALL_MACHINES_CFILES): Add cpu-crx.c.
3091 (BFD32_BACKENDS): Add elf32-crx.lo.
3092 (BFD32_BACKENDS_CFILES): Add elf32-crx.c.
3093 (cpu-crx.lo): New target.
3094 (elf32-crx.lo): New target.
3095 * Makefile.in: Regenerate.
3096 * archures.c (bfd_architecture): Add bfd_{arch,mach}_crx.
3097 (bfd_archures_list): Add bfd_crx_arch.
3098 * bfd-in2.h: Regenerate.
3099 * config.bfd: Handle crx-*-elf*, crx*.
3100 * configure.in: Handle bfd_elf32_crx_vec.
3101 * configure: Regenerate.
3102 * cpu-crx.c: New file.
3103 * elf32-crx.c: Likewise.
3104 * libbfd.h: Regenerate.
3105 * reloc.c: Add BFD_RELOC_CRX_REL4, BFD_RELOC_CRX_REL8,
3106 BFD_RELOC_CRX_REL8_CMP, BFD_RELOC_CRX_REL16, BFD_RELOC_CRX_REL24,
3107 BFD_RELOC_CRX_REL32, BFD_RELOC_CRX_REGREL12, BFD_RELOC_CRX_REGREL22,
3108 BFD_RELOC_CRX_REGREL28, BFD_RELOC_CRX_REGREL32, BFD_RELOC_CRX_ABS16,
3109 BFD_RELOC_CRX_ABS32, BFD_RELOC_CRX_NUM8, BFD_RELOC_CRX_NUM16,
3110 BFD_RELOC_CRX_NUM32, BFD_RELOC_CRX_IMM16 and BFD_RELOC_CRX_IMM32
3111 * targets.c (bfd_elf32_crx_vec): Declare.
3112 (bfd_target_vector): Add bfd_elf32_crx_vec.
3113
85fbca6a
NC
31142004-07-06 Nick Clifton <nickc@redhat.com>
3115
3116 * config.bfd: Add sh-symbian-elf target.
3117 * configure.in: Add bfd_elf32_shl_symbian_vec.
3118 * configure: Regenerate.
3119 * elf-bfd.h (struct elf_backend_data): Add new field
3120 'check_directives'.
1fe1f39c 3121 * elflink.c (elf_link_add_object_symbols): Invoke the
85fbca6a 3122 check_directives function, if defined.
1fe1f39c 3123 * elfxx-target.h: Provide a default, NULL definition for
85fbca6a 3124 check_directives.
1fe1f39c
NC
3125 * targets.c: Add bfd_elf32_shl_symbian_vec.
3126 * elf32-sh.c (sh_elf_swap_insns): Protect against unnecessary
85fbca6a 3127 definition.
1fe1f39c 3128 (elf32_shlin_grok_prstatus, elf32_shlib_grok_psinfo,
85fbca6a 3129 * sh_elf_get_flags_from_mach, sh_elf_find_flags): Likewise.
1fe1f39c 3130 (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Only define if they have
85fbca6a 3131 not already been defined.
1fe1f39c
NC
3132 * elf32-sh64.c: Use SH_TARGET_ALREADY_DEFINED.
3133 * sh-symbian.c: New file. Provide functions to support the
85fbca6a
NC
3134 * sh-symbian-elf target.
3135 * Makefile.am: Add elf32-sh-symbian.c
3136 * Makefile.in: Regenerate.
1fe1f39c 3137
871ec896
JR
31382004-07-05 Andrew Stubbs <andrew.stubbs@superh.com>
3139
1fe1f39c
NC
3140 * elf32-sh.c: Include ../opcodes/sh-opc.h.
3141 * Makefile.am: Ran make dep-am.
3142 * Makefile.in: Ran make dep-in.
871ec896 3143
c87db184
CF
31442004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
3145
3146 * cofflink.c (_bfd_coff_generic_relocate_section): Resolve PE weak
3147 externals properly.
3148
06f2f6af
MS
31492004-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
3150
3151 * config.bfd: Add want64 to configuration target s390-*-linux*.
3152
b602c853
L
31532004-07-01 H.J. Lu <hongjiu.lu@intel.com>
3154
3155 * bfd.c (bfd_get_section_ident): New.
3156
3157 * elflink.c (elf_link_read_relocs_from_section): Call
3158 bfd_get_section_ident to identify the section when reporting
3159 error.
3160 (_bfd_elf_link_output_relocs): Likewise.
3161 (elf_link_output_extsym): Likewise.
3162 (elf_link_input_bfd): Likewise.
3163 (bfd_elf_gc_record_vtinherit): Likewise.
3164
3165 * bfd-in2.h: Regenerated.
3166
7a2a6943
NC
31672004-07-01 Jie Zhang <zhangjie@magima.com.cn>
3168 Nick Clifton <nickc@redhat.com>
3169
3170 PR 204
3171 * elfxx-mips.c (_bfd_mips_elf_final_link): Pass the correct number
3172 of section symbols to mips_elf_sort_hash_table ().
3173
cdd3575c
AM
31742004-07-01 Alan Modra <amodra@bigpond.net.au>
3175
3176 * elflink.c (elf_section_ignore_discarded_relocs): Revert last
3177 change. Comment.
3178 (elf_section_complain_discarded): New function. Handle
3179 .gcc_except_table too.
3180 (elf_link_input_bfd): Rewrite handling of relocs against symbols
3181 in discarded sections.
3182 * elf-bfd.h (elf_discarded_section): Protect macro arg.
3183
21a8f7fa
JW
31842004-06-30 James E Wilson <wilson@specifixinc.com>
3185
3186 * elfxx-ia64.c (elfNN_ia64_check_relocs): New local pltoff. Initialize
3187 to NULL. Call get_pltoff if NULL and NEED_PLTOFF is true.
3188
2de26f35
L
31892004-06-30 H.J. Lu <hongjiu.lu@intel.com>
3190
3191 PR 233
3192 * elflink.c (elf_link_input_bfd): Issue an error for non-debug
3193 local references to discarded sections and report their
3194 locations.
3195
72d7a15c
AM
31962004-06-30 Alan Modra <amodra@bigpond.net.au>
3197
3198 * elflink.c (elf_section_ignore_discarded_relocs): Don't test
3199 sec_info_type, test section name instead.
3200
e7f0a167
L
32012004-06-29 H.J. Lu <hongjiu.lu@intel.com>
3202
3203 PR 240
3204 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't relax branch
3205 in .init/.fini sections.
3206
bff5f93a
BW
32072004-06-29 Bob Wilson <bob.wilson@acm.org>
3208
3209 * elf32-xtensa.c (elf_xtensa_relocate_section): Use
3210 bfd_get_section_limit.
3211
b54d4b07
BW
32122004-06-29 Bob Wilson <bob.wilson@acm.org>
3213
3214 * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Don't change the
3215 output section size.
3216
e87a64e1
AM
32172004-06-29 Alan Modra <amodra@bigpond.net.au>
3218
1a23a9e6
AM
3219 * elf64-mmix.c (mmix_set_relaxable_size): Save original size in
3220 rawsize.
3221 (mmix_elf_perform_relocation): Adjust for above change.
3222 (mmix_elf_relocate_section): Likewise.
3223 (mmix_elf_relax_section): Likewise. Use output_section->rawsize.
3224 (mmix_elf_get_section_contents): Delete.
3225 (bfd_elf64_get_section_contents): Delete.
3226 (mmix_elf_relocate_section): Zero stub area.
3227 * linker.c (default_indirect_link_order): Alloc max of section size
3228 and rawsize.
3229 * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
3230 * section.c (bfd_malloc_and_get_section): Likewise.
3231 (struct bfd_section): Update rawsize comment.
3232 * bfd-in2.h: Regenerate.
3233
e87a64e1
AM
3234 * reloc16.c (bfd_coff_reloc16_relax_section): Set rawsize.
3235
07515404
AM
32362004-06-29 Alan Modra <amodra@bigpond.net.au>
3237
3238 * bfd-in.h (bfd_get_section_limit): Define.
1fe1f39c 3239 * reloc.c (bfd_perform_relocation, bfd_install_relocation)
07515404
AM
3240 (_bfd_final_link_relocate): Use bfd_get_section_limit.
3241 * aout-tic30.c (tic30_aout_final_link_relocate): Likewise.
3242 * coff-arm.c (coff_arm_relocate_section): Likewise.
3243 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): Likewise.
3244 * cpu-ns32k.c (do_ns32k_reloc): Likewise.
3245 (bfd_ns32k_final_link_relocate): Likewise.
3246 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): Likwise.
3247 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): Likewise.
1fe1f39c 3248 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc)
07515404 3249 (i860_howto_highadj_reloc, i860_howto_splitn_reloc): Likewise.
1fe1f39c 3250 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc)
07515404
AM
3251 (m32r_elf_generic_reloc, m32r_elf_relocate_section): Likewise.
3252 * elf32-m68hc1x.c (m68hc11_elf_special_reloc): Likewise.
3253 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
3254 * elf32-or32.c (or32_elf_consth_reloc): Likewise.
3255 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Likewise.
3256 * elf32-s390.c (s390_elf_ldisp_reloc): Likewise.
3257 * elf32-sh.c (sh_elf_reloc_loop): Likewise.
3258 * elf32-sparc.c (sparc_elf_wdisp16_reloc): Likewise.
3259 (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc): Likwise.
3260 * elf32-v850.c (v850_elf_reloc): Likewise.
3261 * elf32-xstormy16.c (xstormy16_elf_24_reloc): Likewise.
3262 * elf32-xtensa.c (bfd_elf_xtensa_reloc): Likewise.
3263 * elf64-alpha.c (elf64_alpha_reloc_gpdisp): Likewise.
3264 * elf64-mips.c (mips_elf64_gprel32_reloc)
3265 (mips16_gprel_reloc): Likewise.
3266 * elf64-mmix.c (mmix_elf_reloc): Likewise.
3267 * elf64-s390.c (s390_elf_ldisp_reloc): Likewise.
3268 * elf64-sparc.c (init_insn_reloc): Likewise.
3269 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1fe1f39c
NC
3270 * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp)
3271 (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_lo16_reloc)
07515404
AM
3272 (_bfd_mips_elf_generic_reloc): Likewise.
3273 * bfd-in2.h: Regenerate.
3274
3722b82f
AM
32752004-06-28 Alan Modra <amodra@bigpond.net.au>
3276
3277 * bfd-in.h (struct stab_info): Move from stabs.c.
3278 * stabs.c (struct stab_link_includes_table): Delete.
3279 (stab_link_includes_lookup): Delete.
3280 (_bfd_write_section_stabs, _bfd_write_stab_strings): Remove one
3281 level of indirection from sinfo parm.
3282 (_bfd_link_section_stabs): Likewise. Set SEC_LINKER_CREATED on
3283 stabstr section. Adjust hash table accesses.
3284 * coff-ppc.c (ppc_bfd_coff_final_link): Do include rawsize in contents
3285 alloc. Adjust stab_info test.
3286 * cofflink.c (_bfd_coff_link_hash_table_init): Clear stab_info.
3287 (_bfd_coff_final_link): Adjust stab_info test.
3288 (_bfd_coff_link_input_bfd): Ignore SEC_LINKER_CREATED sections.
3289 * elf-bfd.h (struct elf_link_hash_table): Include struct stab_info
3290 in place.
3291 * libcoff-in.h (struct coff_link_hash_table): Likewise.
3292 * elf.c (_bfd_elf_link_hash_table_init): Clear stab_info.
3293 * elflink.c (bfd_elf_final_link): Don't attempt to link linker created
3294 stabstr section. Adjust stab_info test.
3295 * libbfd-in.h (_bfd_link_section_stabs, _bfd_write_section_stabs)
3296 (_bfd_write_stab_strings): Adjust prototypes.
3297 * libbfd.h: Regenerate.
3298 * libcoff.h: Regenerate.
3299 * bfd-in2.h: Regenerate.
3300
727e493d
MK
33012004-06-27 Mark Kettenis <kettenis@gnu.org>
3302
3303 From Miod Vallat <miod@online.fr>:
3304 * aoutx.h (NAME(aout,machine_type)): Handle bfd_arch_m88k.
3305
146ccdbb
AO
33062004-06-26 Alexandre Oliva <aoliva@redhat.com>
3307
3308 * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): Delete.
3309 (struct elf32_mn10300_link_hash_entry): Remove
3310 pcrel_relocs_copied.
3311 (mn10300_elf_check_relocs): Only reserve dynamic relocations for
3312 R_MN10300_32. Don't adjust pcrel_relocs_copied.
3313 (mn10300_elf_final_link_relocate): Fail for direct, pc-relative
3314 and gotoff relocations if the symbol doesn't bind locally. Use
3315 _bfd_elf_symbol_refs_local_p to test. Don't create dynamic
3316 relocation for PCREL32.
3317 (mn10300_elf_relocate_section): Use _bfd_elf_symbol_refs_local_p
3318 to test whether a symbol binds locally.
3319 (elf32_mn10300_link_hash_newfunc): Don't initialize
3320 pcrel_relocs_copied.
3321 (_bfd_mn10300_elf_discard_copies): Delete.
3322 (_bfd_mn10300_elf_size_dynamic_sections): Don't call it.
3323
a5fd0812
MK
33242004-06-26 Mark Kettenis <kettenis@gnu.org>
3325
3326 * config.bfd: Replace m88k-*-openbsd* with m88*-*-openbsd*.
3327
22bfad37
JB
33282004-06-25 Joel Brobecker <brobecker@gnat.com>
3329
3330 * som.c (som_set_reloc_info): Correct small typo.
3331
097f809a
NC
33322004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
3333
3334 * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_GOTOFF.
3335 (m32r_elf_relocate_section): Changed for R_M32R_GOTOFF.
3336 (m32r_elf_gcsweep_hook): Likewise.
3337 (m32r_elf_check_relocs): Likewise.
3338 (m32r_elf_howto_table): Added R_M32R_GOTOFF_HI_ULO,
3339 R_M32R_GOTOFF_HI_SLO and R_M32R_GOTOFF_LO.
3340 * reloc.c: Added BFD_RELOC_M32R_GOTOFF_HI_ULO,
3341 BFD_RELOC_M32R_GOTOFF_HI_SLO and BFD_RELOC_M32R_GOTOFF_LO.
f9f2cf5d
NC
3342 * bfd-in2.h: Regenerated.
3343 * libbfd.h: Regenerated.
097f809a 3344
6610a52d
L
33452004-06-24 H.J. Lu <hongjiu.lu@intel.com>
3346
3347 * elf64-x86-64.c (elf64_x86_64_check_relocs): Warn overflow
3348 relocation symbol.
3349 (elf64_x86_64_relocate_section): Issue an error for
3350 R_X86_64_PC8, R_X86_64_PC16 and R_X86_64_PC32 relocations
3351 against global symbols when building shared library.
3352
eea6121a
AM
33532004-06-24 Alan Modra <amodra@bigpond.net.au>
3354
3355 * section.c (struct sec): Rename "_cooked_size" to "size".
3356 Rename "_raw_size" to "rawsize".
3357 (STD_SECTION): Adjust comments.
3358 (bfd_set_section_size, bfd_get_section_contents): Use size.
3359 (bfd_malloc_and_get_section): New function.
3360 * bfd-in.h (bfd_section_size, bfd_get_section_size): Use size.
3361 * coff-sh.c (sh_relax_section): Alloc coff_section_data struct early.
3362 Correctly free reloc and contents memory.
3363 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete FIXME
3364 and fake CIE now that we can shink section size to zero.
3365 (_bfd_elf_write_section_eh_frame): Likewise..
3366 * elf32-ppc.c (ppc_elf_relax_section): Delay reading section contents.
3367 * elf-m10300.c (mn10300_elf_final_link_relocate): Don't use
3368 _bfd_stab_section_offset. Use _bfd_elf_section_offset.
3369 * stabs.c (_bfd_stab_section_offset_): Remove unused args and
3370 unneeded indirection.
3371 * elf.c (_bfd_elf_section_offset): .. and update call.
3372 * libbfd-in.h (_bfd_stab_section_offset): Update prototype.
3373 * libbfd.h: Regenerate.
3374 * bfd-in2.h: Regenerate.
3375
3376 Replace occurrences of "_raw_size" and "_cooked_size" in most places
3377 with "size". Set new "rawsize" for stabs, eh_frame, and SEC_MERGE
3378 sections. Use "rawsize", if non-zero, for bfd_get_section_contents
3379 calls if the section might be a stabs, eh_frame, or SEC_MERGE section.
3380 Similarly use "rawsize", if non-zero, in reloc functions to validate
3381 reloc addresses. Use new bfd_malloc_and_get_section in most places
3382 where bfd_get_section_contents was called. Expand all occurrences of
3383 bfd_section_size and bfd_get_section_size. Rename "raw_size" var in
3384 grok_prstatus and similar functions to "size".
3385 * aix386-core.c (aix386_core_file_p): ..
3386 * aix5ppc-core.c (xcoff64_core_p): ..
3387 * aout-adobe.c (aout_adobe_callback, aout_adobe_write_object_contents,
3388 aout_adobe_set_section_contents): ..
3389 * aout-target.h (callback): ..
3390 * aout-tic30.c (tic30_aout_callback, tic30_aout_final_link_relocate,
3391 MY_bfd_final_link): ..
3392 * aoutf1.h (sunos4_core_file_p): ..
3393 * aoutx.h (some_aout_object_p, adjust_o_magic, adjust_z_magic,
3394 adjust_n_magic, adjust_sizes_and_vmas, translate_from_native_sym_flags,
3395 final_link, aout_link_input_section): ..
3396 * binary.c (binary_object_p, binary_canonicalize_symtab,
3397 binary_set_section_contents): ..
3398 * bout.c (b_out_callback, b_out_write_object_contents,
3399 b_out_set_section_contents, b_out_bfd_relax_section,
3400 b_out_bfd_get_relocated_section_contents): ..
3401 * cisco-core.c (cisco_core_file_validate): ..
3402 * coff-alpha.c (alpha_ecoff_object_p,
3403 alpha_ecoff_get_relocated_section_conten, alpha_relocate_section): ..
3404 * coff-arm.c (coff_arm_relocate_section,
3405 bfd_arm_allocate_interworking_sections): ..
3406 * coff-h8300.c (h8300_reloc16_extra_cases,
3407 h8300_bfd_link_add_symbols): ..
3408 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): ..
3409 * coff-ppc.c (coff_ppc_relocate_section, ppc_allocate_toc_section,
3410 ppc_bfd_coff_final_link): ..
3411 * coff-rs6000.c (xcoff_reloc_type_br, xcoff_ppc_relocate_section): ..
3412 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
3413 sh_align_loads, sh_coff_get_relocated_section_contents): ..
3414 * coff64-rs6000.c (xcoff64_write_object_contents,
3415 xcoff64_reloc_type_br, xcoff64_ppc_relocate_section): ..
3416 * coffcode.h (coff_compute_section_file_positions,
3417 coff_write_object_contents): ..
3418 * coffgen.c (make_a_section_from_file, coff_write_symbols,
3419 coff_section_symbol, build_debug_section): ..
3420 * cofflink.c (coff_link_add_symbols, _bfd_coff_final_link,
3421 process_embedded_commands, _bfd_coff_link_input_bfd,
3422 _bfd_coff_write_global_sym): ..
3423 * cpu-arm.c (bfd_arm_update_notes, bfd_arm_get_mach_from_notes): ..
3424 * cpu-ns32k.c (do_ns32k_reloc, _bfd_ns32k_final_link_relocate): ..
3425 * dwarf1.c (parse_line_table, _bfd_dwarf1_find_nearest_line): ..
3426 * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
3427 _bfd_dwarf2_find_nearest_line): ..
3428 * ecoff.c (bfd_debug_section, ecoff_set_symbol_info,
3429 ecoff_compute_section_file_positions,
3430 _bfd_ecoff_write_object_contents, ecoff_indirect_link_order): ..
3431 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame,
3432 _bfd_elf_discard_section_eh_frame_hdr,
3433 _bfd_elf_maybe_strip_eh_frame_hdr, _bfd_elf_eh_frame_section_offset,
3434 _bfd_elf_write_section_eh_frame,
3435 _bfd_elf_write_section_eh_frame_hdr): ..
3436 * elf-hppa.h (elf_hppa_sort_unwind): ..
3437 * elf-m10200.c (mn10200_elf_relax_section,
3438 mn10200_elf_relax_delete_bytes,
3439 mn10200_elf_get_relocated_section_contents): ..
3440 * elf-m10300.c (_bfd_mn10300_elf_create_got_section,
3441 mn10300_elf_check_relocs, mn10300_elf_relax_section,
3442 mn10300_elf_relax_delete_bytes,
3443 mn10300_elf_get_relocated_section_contents,
3444 _bfd_mn10300_elf_adjust_dynamic_symbol,
3445 _bfd_mn10300_elf_discard_copies,
3446 _bfd_mn10300_elf_size_dynamic_sections,
3447 _bfd_mn10300_elf_finish_dynamic_sections): ..
3448 * elf.c (_bfd_elf_print_private_bfd_data, bfd_elf_get_bfd_needed_list,
3449 _bfd_elf_make_section_from_phdr, elf_fake_sections,
3450 bfd_elf_set_group_contents, map_sections_to_segments,
3451 elf_sort_sections, assign_file_positions_for_segments,
3452 SECTION_SIZE, copy_private_bfd_data,
3453 _bfd_elf_get_dynamic_reloc_upper_bound,
3454 _bfd_elf_canonicalize_dynamic_reloc, elfcore_maybe_make_sect,
3455 _bfd_elfcore_make_pseudosection, elfcore_grok_prstatus,
3456 elfcore_grok_lwpstatus, elfcore_grok_win32pstatus,
3457 elfcore_grok_note, elfcore_grok_nto_status, elfcore_grok_nto_gregs,
3458 _bfd_elf_rel_local_sym, _bfd_elf_get_synthetic_symtab): ..
3459 * elf32-arm.h (bfd_elf32_arm_allocate_interworking_sect,
3460 bfd_elf32_arm_process_before_allocation,
3461 elf32_arm_adjust_dynamic_symbol, allocate_dynrelocs,
3462 elf32_arm_size_dynamic_sections, elf32_arm_finish_dynamic_sections,
3463 elf32_arm_write_section): ..
3464 * elf32-cris.c (cris_elf_grok_prstatus,
3465 elf_cris_finish_dynamic_sections, cris_elf_gc_sweep_hook,
3466 elf_cris_adjust_gotplt_to_got, elf_cris_adjust_dynamic_symbol,
3467 cris_elf_check_relocs, elf_cris_size_dynamic_sections,
3468 elf_cris_discard_excess_dso_dynamics,
3469 elf_cris_discard_excess_program_dynamics): ..
3470 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): ..
3471 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): ..
3472 * elf32-frv.c (_frvfdpic_add_dyn_reloc, _frvfdpic_add_rofixup,
3473 _frv_create_got_section, _frvfdpic_assign_plt_entries,
3474 elf32_frvfdpic_size_dynamic_sections,
3475 elf32_frvfdpic_modify_segment_map,
3476 elf32_frvfdpic_finish_dynamic_sections): ..
3477 * elf32-h8300.c (elf32_h8_relax_section, elf32_h8_relax_delete_bytes,
3478 elf32_h8_get_relocated_section_contents): ..
3479 * elf32-hppa.c (hppa_build_one_stub, hppa_size_one_stub,
3480 elf32_hppa_adjust_dynamic_symbol, allocate_plt_static,
3481 allocate_dynrelocs, elf32_hppa_size_dynamic_sections, group_sections,
3482 elf32_hppa_size_stubs, elf32_hppa_set_gp, elf32_hppa_build_stubs,
3483 elf32_hppa_finish_dynamic_sections): ..
3484 * elf32-i370.c (i370_elf_adjust_dynamic_symbol,
3485 i370_elf_size_dynamic_sections, i370_elf_check_relocs,
3486 i370_elf_finish_dynamic_sections): ..
3487 * elf32-i386.c (elf_i386_grok_prstatus, elf_i386_adjust_dynamic_symbol,
3488 allocate_dynrelocs, elf_i386_size_dynamic_sections,
3489 elf_i386_relocate_section, elf_i386_finish_dynamic_sections): ..
3490 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc,
3491 i860_howto_highadj_reloc, i860_howto_splitn_reloc): ..
3492 * elf32-ip2k.c (ip2k_is_switch_table_128,
3493 ip2k_relax_switch_table_128, ip2k_is_switch_table_256,
3494 ip2k_relax_switch_table_256, ip2k_elf_relax_section,
3495 adjust_all_relocations, ip2k_elf_relax_delete_bytes): ..
3496 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc,
3497 m32r_elf_generic_reloc, m32r_elf_adjust_dynamic_symbol,
3498 allocate_dynrelocs, m32r_elf_size_dynamic_sections,
3499 m32r_elf_relocate_section, m32r_elf_finish_dynamic_sections,
3500 m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
3501 m32r_elf_get_relocated_section_contents): ..
3502 * elf32-m68hc11.c (m68hc11_elf_build_one_stub,
3503 m68hc11_elf_size_one_stub, m68hc11_elf_relax_section,
3504 m68hc11_elf_relax_delete_bytes): ..
3505 * elf32-m68hc12.c (m68hc12_elf_build_one_stub,
3506 m68hc12_elf_size_one_stub): ..
3507 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs,
3508 elf32_m68hc11_build_stubs, m68hc11_elf_special_reloc): ..
3509 * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_gc_sweep_hook,
3510 elf_m68k_adjust_dynamic_symbol, elf_m68k_size_dynamic_sections,
3511 elf_m68k_discard_copies, elf_m68k_finish_dynamic_sections): ..
3512 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
3513 elf32_mips_grok_prstatus): ..
3514 * elf32-or32.c (or32_elf_consth_reloc): ..
3515 * elf32-ppc.c (ppc_elf_relax_section, ppc_elf_addr16_ha_reloc,
3516 elf_create_pointer_linker_section, ppc_elf_create_linker_section,
3517 ppc_elf_additional_program_headers, ppc_elf_adjust_dynamic_symbol,
3518 allocate_dynrelocs, ppc_elf_size_dynamic_sections,
3519 ppc_elf_finish_dynamic_sections, ppc_elf_grok_prstatus,
3520 ppc_elf_final_write_processing): ..
3521 * elf32-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
3522 allocate_dynrelocs, elf_s390_size_dynamic_sections,
3523 elf_s390_finish_dynamic_sections, elf_s390_grok_prstatus): ..
3524 * elf32-sh.c (sh_elf_reloc_loop, sh_elf_relax_section,
3525 sh_elf_relax_delete_bytes, sh_elf_align_loads,
3526 sh_elf_adjust_dynamic_symbol, allocate_dynrelocs,
3527 sh_elf_size_dynamic_sections, sh_elf_get_relocated_section_contents,
3528 sh_elf_finish_dynamic_sections, elf32_shlin_grok_prstatus): ..
3529 * elf32-sh64-com.c (sh64_address_in_cranges,
3530 sh64_get_contents_type): ..
3531 * elf32-sh64.c (sh64_find_section_for_address,
3532 sh64_elf_final_write_processing): ..
3533 * elf32-sparc.c (sparc_elf_wdisp16_reloc, sparc_elf_hix22_reloc,
3534 sparc_elf_lox10_reloc, elf32_sparc_adjust_dynamic_symbol,
3535 allocate_dynrelocs, elf32_sparc_size_dynamic_sections,
3536 elf32_sparc_relocate_section, elf32_sparc_finish_dynamic_sections): ..
3537 * elf32-v850.c (v850_elf_reloc, v850_elf_relax_section): ..
3538 * elf32-vax.c (elf_vax_check_relocs, elf_vax_adjust_dynamic_symbol,
3539 elf_vax_size_dynamic_sections, elf_vax_discard_copies,
3540 elf_vax_instantiate_got_entries, elf_vax_relocate_section,
3541 elf_vax_finish_dynamic_sections): ..
3542 * elf32-xstormy16.c (xstormy16_elf_24_reloc,
3543 xstormy16_elf_check_relocs, xstormy16_relax_plt_check,
3544 xstormy16_elf_relax_section, xstormy16_elf_always_size_sections,
3545 xstormy16_elf_finish_dynamic_sections): ..
3546 * elf32-xtensa.c (xtensa_read_table_entries,
3547 elf_xtensa_allocate_got_size, elf_xtensa_allocate_local_got_size,
3548 elf_xtensa_size_dynamic_sections, elf_xtensa_do_reloc,
3549 bfd_elf_xtensa_reloc, elf_xtensa_relocate_section,
3550 elf_xtensa_combine_prop_entries, elf_xtensa_finish_dynamic_sections,
3551 elf_xtensa_discard_info_for_section, elf_xtensa_grok_prstatus,
3552 get_relocation_opcode, retrieve_contents, find_relaxable_sections,
3553 collect_source_relocs, is_resolvable_asm_expansion, remove_literals,
3554 relax_section, shrink_dynamic_reloc_sections, relax_property_section,
3555 xtensa_callback_required_dependence): ..
3556 * elf64-alpha.c (elf64_alpha_reloc_gpdisp, elf64_alpha_relax_section,
3557 elf64_alpha_check_relocs, elf64_alpha_adjust_dynamic_symbol,
3558 elf64_alpha_calc_got_offsets_for_symbol, elf64_alpha_calc_got_offsets,
3559 elf64_alpha_size_plt_section, elf64_alpha_size_plt_section_1,
3560 elf64_alpha_always_size_sections, elf64_alpha_calc_dynrel_sizes,
3561 elf64_alpha_size_rela_got_section, elf64_alpha_size_rela_got_1,
3562 elf64_alpha_size_dynamic_sections, elf64_alpha_emit_dynrel,
3563 elf64_alpha_finish_dynamic_sections, elf64_alpha_final_link): ..
3564 * elf64-hppa.c (allocate_dynrel_entries,
3565 elf64_hppa_size_dynamic_sections,
3566 elf64_hppa_finish_dynamic_sections): ..
3567 * elf64-mips.c (mips_elf64_gprel32_reloc, mips16_gprel_reloc,
3568 mips_elf64_canonicalize_dynamic_reloc, mips_elf64_slurp_reloc_table,
3569 elf64_mips_grok_prstatus): ..
3570 * elf64-mmix.c (mmix_elf_perform_relocation, mmix_elf_reloc,
3571 mmix_elf_relocate_section, mmix_elf_final_link,
3572 mmix_set_relaxable_size, _bfd_mmix_after_linker_allocation,
3573 mmix_elf_relax_section, mmix_elf_get_section_contents): ..
3574 * elf64-ppc.c (ppc64_elf_object_p, ppc64_elf_grok_prstatus,
3575 ppc64_elf_check_relocs, ppc64_elf_func_desc_adjust,
3576 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_edit_opd,
3577 allocate_dynrelocs, ppc64_elf_size_dynamic_sections,
3578 ppc_build_one_stub, ppc_size_one_stub, ppc64_elf_next_toc_section,
3579 toc_adjusting_stub_needed, group_sections, ppc64_elf_size_stubs,
3580 ppc64_elf_build_stubs, ppc64_elf_relocate_section,
3581 ppc64_elf_finish_dynamic_sections): ..
3582 * elf64-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
3583 allocate_dynrelocs, elf_s390_size_dynamic_sections,
3584 elf_s390_finish_dynamic_sections): ..
3585 * elf64-sh64.c (sh_elf64_get_relocated_section_contents,
3586 sh_elf64_check_relocs, sh64_elf64_adjust_dynamic_symbol,
3587 sh64_elf64_discard_copies, sh64_elf64_size_dynamic_sections,
3588 sh64_elf64_finish_dynamic_sections): ..
3589 * elf64-sparc.c (sparc64_elf_slurp_reloc_table, init_insn_reloc,
3590 sparc64_elf_check_relocs, sparc64_elf_adjust_dynamic_symbol,
3591 sparc64_elf_size_dynamic_sections, sparc64_elf_relocate_section,
3592 sparc64_elf_finish_dynamic_symbol,
3593 sparc64_elf_finish_dynamic_sections): ..
3594 * elf64-x86-64.c (elf64_x86_64_grok_prstatus,
3595 elf64_x86_64_adjust_dynamic_symbol, allocate_dynrelocs,
3596 elf64_x86_64_size_dynamic_sections, elf64_x86_64_relocate_section,
3597 elf64_x86_64_finish_dynamic_sections): ..
3598 * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): ..
3599 * elfcode.h (elf_slurp_reloc_table): ..
3600 * elflink.c (_bfd_elf_create_got_section, elf_add_dt_needed_tag,
3601 elf_finalize_dynstr, elf_link_add_object_symbols,
3602 bfd_elf_size_dynamic_sections, elf_link_sort_relocs,
3603 elf_link_input_bfd, bfd_elf_final_link, bfd_elf_discard_info): ..
3604 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
3605 elf32_mips_grok_prstatus): ..
3606 * elfxx-ia64.c (elfNN_ia64_relax_section, allocate_dynrel_entries,
3607 elfNN_ia64_size_dynamic_sections, elfNN_ia64_install_dyn_reloc,
3608 elfNN_ia64_choose_gp, elfNN_ia64_final_link,
3609 elfNN_ia64_finish_dynamic_sections): ..
3610 * elfxx-mips.c (mips_elf_create_procedure_table,
3611 mips_elf_check_mips16_stubs, _bfd_mips_elf_gprel16_with_gp,
3612 _bfd_mips_elf_hi16_reloc, _bfd_mips_elf_generic_reloc,
3613 mips_elf_global_got_index, mips_elf_multi_got,
3614 mips_elf_create_compact_rel_section, mips_elf_calculate_relocation,
3615 mips_elf_allocate_dynamic_relocations,
3616 mips_elf_create_dynamic_relocation, _bfd_mips_elf_fake_sections,
3617 _bfd_mips_relax_section, _bfd_mips_elf_adjust_dynamic_symbol,
3618 _bfd_mips_elf_always_size_sections,
3619 _bfd_mips_elf_size_dynamic_sections,
3620 _bfd_mips_elf_finish_dynamic_symbol,
3621 _bfd_mips_elf_finish_dynamic_sections,
3622 _bfd_mips_elf_modify_segment_map, _bfd_mips_elf_discard_info,
3623 _bfd_mips_elf_write_section, _bfd_mips_elf_set_section_contents,
3624 _bfd_elf_mips_get_relocated_section_contents,
3625 _bfd_mips_elf_final_link, _bfd_mips_elf_merge_private_bfd_data): ..
3626 * hp300hpux.c (callback): ..
3627 * hppabsd-core.c (make_bfd_asection): ..
3628 * hpux-core.c (make_bfd_asection): ..
3629 * i386linux.c (linux_link_create_dynamic_sections,
3630 bfd_i386linux_size_dynamic_sections, linux_finish_dynamic_link): ..
3631 * i386msdos.c (msdos_write_object_contents): ..
3632 * i386os9k.c (os9k_callback, os9k_write_object_contents,
3633 os9k_set_section_contents): ..
3634 * ieee.c (parse_expression, ieee_slurp_external_symbols,
3635 ieee_slurp_sections, ieee_slurp_debug, ieee_slurp_section_data,
3636 ieee_write_section_part, do_with_relocs, do_as_repeat,
3637 do_without_relocs, ieee_write_debug_part, init_for_output,
3638 ieee_set_section_contents): ..
3639 * ihex.c (ihex_scan, ihex_read_section, ihex_get_section_contents): ..
3640 * irix-core.c (do_sections, make_bfd_asection): ..
3641 * libaout.h (aout_section_merge_with_text_p): ..
3642 * libbfd.c (_bfd_generic_get_section_contents,
3643 _bfd_generic_get_section_contents_in_window): ..
3644 * linker.c (default_indirect_link_order): ..
3645 * lynx-core.c (make_bfd_asection): ..
3646 * m68klinux.c (linux_link_create_dynamic_sections,
3647 bfd_m68klinux_size_dynamic_sections, linux_finish_dynamic_link): ..
3648 * mach-o.c (bfd_mach_o_make_bfd_section,
3649 bfd_mach_o_scan_read_dylinker, bfd_mach_o_scan_read_dylib,
3650 bfd_mach_o_scan_read_thread, bfd_mach_o_scan_read_symtab,
3651 bfd_mach_o_scan_read_segment): ..
3652 * merge.c (_bfd_add_merge_section, record_section, merge_strings,
3653 _bfd_merge_sections): ..
3654 * mmo.c (mmo_find_sec_w_addr, mmo_get_spec_section, mmo_get_loc,
3655 mmo_map_set_sizes, mmo_canonicalize_symtab,
3656 mmo_internal_write_section, mmo_write_object_contents): ..
3657 * netbsd-core.c (netbsd_core_file_p): ..
3658 * nlm32-alpha.c (nlm_alpha_read_reloc, nlm_alpha_write_import,
3659 nlm_alpha_set_public_section): ..
3660 * nlm32-ppc.c (nlm_powerpc_read_reloc, nlm_powerpc_write_reloc): ..
3661 * nlm32-sparc.c (nlm_sparc_write_import): ..
3662 * nlmcode.h (add_bfd_section, nlm_swap_auxiliary_headers_in,
3663 nlm_compute_section_file_positions): ..
3664 * oasys.c (oasys_object_p, oasys_slurp_section_data,
3665 oasys_write_sections, oasys_write_data, oasys_set_section_contents): ..
3666 * opncls.c (get_debug_link_info): ..
3667 * osf-core.c (make_bfd_asection): ..
3668 * pdp11.c (some_aout_object_p, adjust_o_magic, adjust_z_magic,
3669 adjust_n_magic, adjust_sizes_and_vmas, squirt_out_relocs,
3670 final_link, aout_link_input_section): ..
3671 * peXXigen.c (_bfd_XXi_swap_sym_in, _bfd_XXi_swap_aouthdr_out,
3672 pe_print_idata, pe_print_edata, pe_print_pdata, pe_print_reloc): ..
3673 * pef.c (bfd_pef_make_bfd_section, bfd_pef_print_loader_section,
3674 bfd_pef_scan_start_address, bfd_pef_parse_symbols): ..
3675 * ppcboot.c (ppcboot_object_p, ppcboot_canonicalize_symtab): ..
3676 * ptrace-core.c (ptrace_unix_core_file_p): ..
3677 * reloc.c (bfd_perform_relocation, bfd_install_relocation,
3678 _bfd_final_link_relocate, bfd_generic_relax_section,
3679 bfd_generic_get_relocated_section_contents): ..
3680 * reloc16.c (bfd_coff_reloc16_relax_section,
3681 bfd_coff_reloc16_get_relocated_section_c): ..
3682 * riscix.c (riscix_some_aout_object_p): ..
3683 * rs6000-core.c (read_hdr, make_bfd_asection): ..
3684 * sco5-core.c (make_bfd_asection): ..
3685 * simple.c (bfd_simple_get_relocated_section_contents): ..
3686 * som.c (som_object_setup, setup_sections, som_prep_headers,
3687 som_write_fixups, som_begin_writing, bfd_section_from_som_symbol,
3688 som_set_reloc_info, som_get_section_contents,
3689 som_bfd_link_split_section): ..
3690 * sparclinux.c (linux_link_create_dynamic_sections,
3691 bfd_sparclinux_size_dynamic_sections, linux_finish_dynamic_link): ..
3692 * srec.c (srec_scan, srec_read_section, srec_get_section_contents): ..
3693 * stabs.c (_bfd_link_section_stabs, _bfd_discard_section_stabs,
3694 _bfd_write_stab_strings, _bfd_stab_section_offset): ..
3695 * sunos.c (sunos_read_dynamic_info, sunos_create_dynamic_sections,
3696 bfd_sunos_size_dynamic_sections, sunos_scan_std_relocs,
3697 sunos_scan_ext_relocs, sunos_scan_dynamic_symbol,
3698 sunos_write_dynamic_symbol, sunos_check_dynamic_reloc,
3699 sunos_finish_dynamic_link): ..
3700 * syms.c (_bfd_stab_section_find_nearest_line): ..
3701 * tekhex.c (first_phase, tekhex_set_section_contents,
3702 tekhex_write_object_contents): ..
3703 * trad-core.c (trad_unix_core_file_p): ..
3704 * versados.c (process_esd, process_otr, process_otr): ..
3705 * vms-gsd.c (_bfd_vms_slurp_gsd, _bfd_vms_write_gsd): ..
3706 * vms-misc.c (add_new_contents): ..
3707 * vms-tir.c (check_section, new_section, _bfd_vms_write_tir): ..
3708 * vms.c (vms_set_section_contents): ..
3709 * xcofflink.c (xcoff_get_section_contents, xcoff_link_add_symbols,
3710 xcoff_sweep, bfd_xcoff_size_dynamic_sections, xcoff_build_ldsyms,
3711 _bfd_xcoff_bfd_final_link, xcoff_link_input_bfd): ..
3712 * xsym.c (bfd_sym_scan): .. See above.
3713
bf8b15af
L
37142004-06-21 H.J. Lu <hongjiu.lu@intel.com>
3715
3716 * elfxx-ia64.c (elfNN_ia64_relax_section): Add addend when
3717 calling _bfd_merged_section_offset only for section symbols.
3718
d1c6de6f
AM
37192004-06-22 Alan Modra <amodra@bigpond.net.au>
3720
3721 * elf32-ppc.c (ppc_elf_relax_section): Implement reference code
3722 for handling SEC_MERGE symbols in relax_section.
3723
aa02cc63
AO
37242004-06-21 Alexandre Oliva <aoliva@redhat.com>
3725
3726 2003-05-15 Richard Sandiford <rsandifo@redhat.com>
3727 * cpu-h8300.c (compatible): Allow h8300s and h8300sx code to be
3728 linked together. Mark the result as h8300sx code.
3729
aee6f5b4
AO
37302004-06-21 Alexandre Oliva <aoliva@redhat.com>
3731
3732 * elf-bfd.h (struct elf_backend_data): Added
3733 elf_backend_omit_section_dynsym.
3734 (_bfd_elf_link_omit_section_dynsym): Declare.
3735 * elf32-frv.c (_frvfdpic_link_omit_section_dynsym): New.
3736 (elf_backend_omit_section_dynsym): Use it for frvfdpic.
3737 * elflink.c (_bfd_elf_link_omit_section_dynsym): Split out of...
3738 (_bfd_elf_link_renumber_dynsyms): ... this function.
3739 * elfxx-target.h (elf_backend_omit_section_dynsym): Default to
3740 _bfd_elf_link_omit_section_dynsym).
3741 (elfNN_bed): Added elf_backend_omit_section_dynsym.
3742
05576f10
NC
37432004-06-21 Nick Clifton <nickc@redhat.com>
3744
3745 * coffcode.h (styp_to_sec_flags): Ignore IMAGE_SCN_MEM_NOT_PAGED
3746 flags.
3747
02d5a37b
JG
37482004-06-17 Jerome Guitton <guitton@gnat.com>
3749
3750 * bfd-in.h (bfd_cache_close_all): New function declaration.
3751 * bfd-in2.h: Regenerate.
3752 * cache.c (bfd_cache_close_all): New function definition.
3753
d2bef492
MK
37542004-06-16 Mark Kettenis <kettenis@gnu.org>
3755
3756 * configure.in: Don't set COREFILE to trad-core.lo for FreeBSD
3757 4.10 and beyond.
3758 * configure: Regenerate.
3759
8528d62e
DJ
37602004-06-16 Daniel Jacobowitz <dan@debian.org>
3761
3762 * elf32-ppc.c (ppc_elf_create_linker_section): Create symbols in
3763 the pre-existing section.
3764
911d08a7
AM
37652004-06-15 Alan Modra <amodra@bigpond.net.au>
3766
3767 * section.c (struct sec): Remove usused flags. Reorganize a little.
3768 (bfd_get_section_size_before_reloc): Delete.
3769 (bfd_get_section_size_after_reloc): Delete.
3770 (STD_SECTION): Update.
3771 (bfd_get_section_size_now): Delete.
3772 (bfd_set_section_contents): Don't referece reloc_done.
3773 (bfd_get_section_contents): Remove reloc_done comment.
3774 * bout.c (b_out_bfd_get_relocated_section_contents): Don't set
3775 reloc_done.
3776 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Likewise.
3777 * ecoff.c (bfd_debug_section): Update initializer.
3778 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Ditto.
3779 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
3780 * bfd-in.h (bfd_section_size): Expand.
3781 (bfd_get_section_size): New macro.
3782 * bfd-in2.h: Regenerate.
3783 * coff64-rs6000.c (xcoff64_write_object_contents): Replace
3784 bfd_get_section_size_before_reloc with bfd_get_section_size.
3785 * coffcode.h (coff_write_object_contents): Likewise.
3786 * coffgen.c (build_debug_section): Likewise.
3787 * dwarf1.c (parse_line_table): Likewise.
3788 (_bfd_dwarf1_find_nearest_line): Likewise.
3789 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
3790 * i386msdos.c (msdos_write_object_contents): Likewise.
3791 * pdp11.c (squirt_out_relocs): Likewise.
3792 * elf32-sh64.c (sh64_find_section_for_address): Remove comment.
3793 * elf64-mmix.c (mmix_elf_final_link): Update comment.
3794
092dcd75
CD
37952004-06-14 Chris Demetriou <cgd@broadcom.com>
3796
3797 * elf32-mips.c (elf_mips_gnu_pcrel32): Add (undoing 2004-04-24
3798 removal) with updated comment.
3799 (bfd_elf32_bfd_reloc_type_lookup): Add back case for
3800 BFD_RELOC_32_PCREL.
3801 (mips_elf32_rtype_to_howto): Add back case for R_MIPS_PC32.
3802 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
3803
3ffa5234
AM
38042004-06-12 Alan Modra <amodra@bigpond.net.au>
3805
3806 * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc
3807 overflow on branches to undefweaks.
3808
e9edc808
MR
38092004-06-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3810
3811 * coff-alpha.c (alpha_relocate_section): Set used_by_bfd directly
3812 as ecoff_section_data() does not return a valid lvalue.
3813
a873f25a
AO
38142004-06-09 Alexandre Oliva <aoliva@redhat.com>
3815
a9b881be
AO
3816 * elflink.c (elf_sort_symbol): Compare section id, not pointers.
3817 (elf_link_add_object_symbols): Likewise.
3818
a873f25a
AO
3819 * elf-m10300.c (_bfd_mn10300_elf_reloc_type_class): New.
3820 (elf_backend_reloc_type_class): New.
3821
eef0f186
MK
38222004-06-08 Mark Kettenis <kettenis@gnu.org>
3823
3824 * configure.in (hppa*-*-netbsd*, hppa*-*-openbsd): Set COREFILE to
3825 netbsd-core.lo.
3826 * configure: Regenerate.
3827
822392ce
DJ
38282004-06-07 Daniel Jacobowitz <dan@debian.org>
3829
3830 From: Albert Chin-A-Young <china@thewrittenword.com>
3831 * bfd/elf-bfd.h (struct eh_cie_fde): Convert unsigned char bitfields
3832 to unsigned int.
3833
9f2e92c5
L
38342004-05-29 H.J. Lu <hongjiu.lu@intel.com>
3835
3836 * elfxx-ia64.c (elfNN_ia64_relax_section): Undo the last
3837 change.
3838
dd90f1b2
DD
38392004-05-28 DJ Delorie <dj@redhat.com>
3840
3841 * elf-m10300.c (mn10300_elf_relax_section): Preserve reloc addend
3842 for linking, but otherwise adjust reloc for merged sections.
3843
5dd23ec1
L
38442004-05-28 H.J. Lu <hongjiu.lu@intel.com>
3845
3846 * elfxx-ia64.c (elfNN_ia64_relax_section): Properly call
3847 _bfd_merged_section_offset for local symbols.
3848
f6f9408f
JR
38492004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
3850
3851 * Makefile.am: Regenerate dependencies.
3852 * Makefile.in: Regenerate.
3853 * archures.c: Add bfd_mach_sh3_nommu .
3854 * bfd-in2.h: Regenerate.
3855 * cpu-sh.c: Add sh3-nommu architecture.
3856 (bfd_to_arch_table): Create new table.
3857 (sh_get_arch_from_bfd_mach): Create new function.
3858 (sh_get_arch_up_from_bfd_mach): Create new function.
3859 (sh_merge_bfd_arch): Create new function.
3860 * elf32-sh.c (sh_ef_bfd_table): Add table.
3861 (sh_elf_check_relocs): Replace switch statement with
3862 use of sh_ef_bfd_table .
3863 (sh_elf_get_flags_from_mach): Add new function.
3864 (sh_find_elf_flags): Likewise.
3865 (sh_elf_copy_private_data): Replace most of non-elf contents
3866 with a call to sh_merge_bfd_arch() .
3867
d866f350
MC
38682004-05-27 Michael Chastain <mec.gnu@mindspring.com>
3869
3870 * Makefile.am (bfdver.h): Use explicit filename, not $< .
3871 * Makefile.in: Regenerate.
3872
1055df0f
AO
38732004-05-27 Alexandre Oliva <aoliva@redhat.com>
3874
3875 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Avoid
3876 custom calling conventions for dynamic symbols.
3877 (mn10300_elf_relax_section): Avoid relaxing a function as a local
3878 symbol if it's an alias to a global one.
3879
b3096250
L
38802004-05-26 H.J. Lu <hongjiu.lu@intel.com>
3881
3882 * elf.c (_bfd_elf_make_section_from_shdr): Undo the last
3883 change.
3884
9bb351fd
AO
38852004-05-27 Alexandre Oliva <aoliva@redhat.com>
3886
3887 * elf-m10300.c (mn10300_elf_relax_section): Don't test isym within
3888 loop over hashes.
3889
e49f5022
AM
38902004-05-26 Alan Modra <amodra@bigpond.net.au>
3891
3892 * elf.c (_bfd_elf_make_section_from_shdr): Don't set SEC_EXCLUDE
3893 for SHT_GROUP sections.
3894
57ceae94
AM
38952004-05-25 Alan Modra <amodra@bigpond.net.au>
3896
3897 * elflink.c (elf_link_add_object_symbols): Don't set up merge
3898 section data here..
3899 * elf.c (_bfd_elf_merge_sections): .. Do it here instead.
3900 * merge.c: Formatting. Remove unnecessary casts. Expand
3901 bfd_get_section_alignment macro.
3902 (struct sec_merge_sec_info): Rename "first" to "first_str". Update
3903 use throughout file.
3904 (_bfd_add_merge_section): Rename from _bfd_merge_section. Update
3905 comment. Abort on dynamic or non-SEC_MERGE input. Don't test
3906 section name to determine sinfo group, instead test output section
3907 and alignment.
3908 (_bfd_merge_sections): Add struct bfd_link_info param. Call
3909 _bfd_strip_section_from_output rather than just twiddling flags.
3910 * libbfd-in.h (_bfd_add_merge_section): Rename, update comment.
3911 (_bfd_merge_sections): Update prototype.
3912 * libbfd.h: Regenerate.
3913
c6f8758f 39142004-05-24 Mark Kettenis <kettenis@gnu.org>
d34436e8
MK
3915
3916 * netbsd-core.c: Correctly indent section that sets architecture
3917 from machine ID.
3918
c6f8758f
NC
3919 From Miod Vallat <miod@online.fr>:
3920 * m88kopenbsd.c: New file.
3921 * targets.c (m88k_openbsd_vec): New.
3922 * config.bfd: Add m88k-*-openbsd*.
3923 * configure.in (m88k-*-openbsd*): Set COREFILE to netbsd-core.lo.
3924 (m88kopenbsd_vec): New.
3925 * configure: Regenerate.
3926 * Makefile.am (BFD32_BACKENDS): Add m88kopenbsd.lo.
3927 (BFD32_BACKENDS_CFILES): Add m88kopenbsd.c.
3928 Run "make dep-am".
3929 * Makefile.in: Regenerate.
3930 * po/SRC-POTFILES.in: Regenerate.
3931
7d7e6bc4
NC
39322004-05-24 Nick Clifton <nickc@redhat.com>
3933
3934 * hash.c: Remove bogus node "Changing the default Hash Table Size"
3935 introduced by hash table size patch.
3936
bc286f95
BE
39372004-05-22 Ben Elliston <bje@au.ibm.com>
3938
3939 * configure.in (is_release): Remove.
3940 (bfd_version_date, bfd_version, bfd_version_string): Likewise.
3941 (AC_OUTPUT): Don't output bfdver.h from version.h.
3942 * configure: Regenerate.
3943 * Makefile.am (RELEASE): New variable.
3944 (bfdver.h): New target.
3945 * Makefile.in: Regenerate.
3946 * doc/Makefile.in: Likewise.
3947
8b89a4eb
BE
39482004-05-22 Ben Elliston <bje@au.ibm.com>
3949
3950 * Makefile.am (config.status): Don't depend on version.h.
3951 * Makefile.in: Regenerate.
3952
753731ee
AM
39532004-05-22 Alan Modra <amodra@bigpond.net.au>
3954
3955 * merge.c (_bfd_merged_section_offset): Remove "addend" param.
3956 * libbfd-in.h (_bfd_merged_section_offset): Adjust prototype.
3957 * libbfd.h: Regenerate.
3958 * elf.c (_bfd_elf_rela_local_sym): Adjust call.
3959 (_bfd_elf_rel_local_sym): Likewise.
3960 * elflink.c (_bfd_elf_link_sec_merge_syms): Likewise.
3961 (elf_link_input_bfd): Likewise.
3962 * elf32-ppc.c (ppc_elf_relax_section): Likewise.
3963 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
3964 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
3965 (elfNN_ia64_relocate_section): Likewise.
3966
2d643429
NC
39672004-05-21 Andy Chittenden <achittenden@bluearc.com>
3968
3969 * hash.c (bfd_default_hash_table_size): New variable.
3970 (bfd_hash_table_init): Use new variable instead of DEFAULT_SIZE.
3971 (bfd_hash_set_default_size): New function. Set the default size
3972 to a selected prime number close to the argument. Document new
3973 function.
3974 * bfd-in.h: Add prototype for bfd_hash_set_default_size.
3975 * bfd-in2.h: Regenerate.
3976 * Makefile.am (hash.lo): Add dependency upon libiberty.h.
3977 * Makefile.in: Regenerate.
3978
8377c19c
MK
39792004-05-21 Mark Kettenis <kettenis@gnu.org>
3980
3981 * libaout.h (machine_type): Add M_88K_OPENBSD and M_HPPA_OPENBSD.
3982 * netbsd-core.c (netbsd_core_file_p): Set architecture for alpha,
3983 arm, m68k, m88k and hppa core files.
3984
69fd4758
NC
39852004-05-21 Nick Clifton <nickc@redhat.com>
3986
3987 * bfdio.c (bfd_bread): Do not use iovec if it is NULL.
3988 (bfd_bwrite): Likewise.
3989 (bfd_tell): Likewise.
3990 (bfd_flush): Likewise.
3991 (bfd_stat): Likewise.
3992 (bfd_seek): Likewise.
3993 (bfd_get_mtime): Likewise.
3994 (bfd_get_size): Likewise.
3995
cd917290
BE
39962004-05-19 Ben Elliston <bje@au.ibm.com>
3997
3998 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Comment correction.
3999
1b09e940
NC
40002004-05-19 Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
4001
4002 * archive.c (_bfd_get_elt_at_filepos): Cope with a nested archives.
4003 (bfd_generic_openr_next_archived_file): Likewise.
4004
096c35a7
BW
40052004-05-17 Bob Wilson <bob.wilson@acm.org>
4006
4007 * elf32-xtensa.c (xtensa_get_property_section_name): Determine linkonce
4008 section names by inserting a new substring after .gnu.linkonce, except
4009 for .gnu.linkonce.t.* where the "t." is replaced.
4010
eea6121a 40112004-05-17 Adam Nemet <anemet@lnxw.com>
b2d65c0b
NC
4012
4013 * config.bfd (sparc-*-lynxos* case): Add to obsolete list.
4014 (m68-*-lynxos* case): Likewise.
4015 (powerpc-*-lyxnos* case): New case.
4016 (i[3-7]86-*-lynxos* case): Update to LynxOS 4.0 ELF.
4017
80fccad2
BW
40182004-05-17 David Heine <dlheine@tensilica.com>
4019
4020 * aout-target.h (MY_bfd_copy_private_header_data): Define.
4021 * aout-tic30.c (MY_bfd_copy_private_header_data): Define.
4022 * bfd.c (bfd_copy_private_header_data): Define.
4023 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Add entries for new
4024 interface.
4025 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
4026 * coffcode.h (coff_bfd_copy_private_header_data): Define.
4027 * elf-bfd.h (_bfd_elf_copy_private_header_data): Declare.
4028 * elf.c (_bfd_elf_copy_private_section_data): Remove code to set up
4029 segments by calling copy_private_bfd_data.
4030 (_bfd_elf_copy_private_header_data): Define.
4031 * elfxx-target.h (bfd_elfNN_bfd_copy_private_header_data): Define.
4032 * libbfd-in.h (_bfd_generic_bfd_copy_private_header_data): Define.
4033 * libecoff.h (_bfd_ecoff_bfd_copy_private_header_data): Define.
4034 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Define.
4035 * mmo.c (mmo_bfd_copy_private_header_data): Define.
4036 * ppcboot.c (ppcboot_bfd_copy_private_header_data): Define.
4037 * som.c (som_bfd_copy_private_header_data): Define.
4038 * targets.c (BFD_JUMP_TABLE_COPY): Add _bfd_copy_private_header_data.
4039 * vms.c (vms_bfd_copy_private_header_data): Define.
4040 * bfd-in2.h: Regenerate.
4041 * libbfd.h: Regenerate.
4042
c5ae1840
TS
40432004-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4044
4045 * elfxx-mips.c (MINUS_TWO): Define.
4046 (mips_elf_higher, mips_elf_highest,
4047 mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for
4048 some bfd_vma values.
4049 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup.
4050
a99cf92b
DA
40512004-05-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4052
4053 * som.c (log2): Rename to exact_log2. Adjust all callers.
4054
0da76f83
NC
40552004-05-13 Paul Brook <paul@codesourcery.com>
4056
c273895f 4057 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle
336b9722
NC
4058 dwarf3 format CIE entries. Remove comment about the size of the
4059 ra_column field. It is now correctly deduced.
0da76f83 4060
4b363073
NC
40612004-05-13 Joel Sherrill <joel@oarcorp.com>
4062
4063 * config.bfd (or32-*-rtems*): Switch to elf.
4064
9598fbe5
NC
40652004-05-13 Nick Clifton <nickc@redhat.com>
4066
4067 * po/fr.po: Updated French translation.
4068
8c37241b
JJ
40692004-05-11 Jakub Jelinek <jakub@redhat.com>
4070
0306b3bf 4071 * elflink.c (bfd_elf_final_link): Don't output STT_SECTION symbol
8c37241b
JJ
4072 into .dynsym if elf_section_data (sec)->dynindx <= 0.
4073 Adjust counting of last_local.
4074 (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
4075 other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
4076 created by the linker nor !SHF_ALLOC.
4077
4078 * elf32-i386.c (elf_i386_finish_dynamic_sections): Point
4079 DT_PLTGOT to the start of the .got.plt section instead of the
4080 .got output section. Set sh_entsize for .got section in addition
4081 to .got.plt.
4082 (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
4083 is at sgot->output_section->vma.
4084 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
4085 DT_PLTGOT to the start of the .got.plt section instead of the
4086 .got output section.
4087 (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
4088 is at sgot->output_section->vma. Set sh_entsize for .got section
4089 in addition to .got.plt.
4090 * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
4091 (bfd_section_from_phdr): Likewise.
4092 (map_sections_to_segments): Likewise.
4093 (assign_file_positions_for_segments): Likewise.
4094 (get_program_header_size): Likewise.
4095 * elflink.c (bfd_elf_size_dynamic_sections): Set
4096 elf_tdata (output_bfd)->relro from info->relro.
4097 * elf-bfd.h (struct elf_obj_tdata): Add relro field.
4098
3f980e41
AO
40992004-05-08 Alexandre Oliva <aoliva@redhat.com>
4100
4101 * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get
4102 a zero symndx for which we hadn't accounted a dynamic relocation.
4103 (_frvfdpic_add_rofixup): Likewise.
4104
d70270c5 41052004-05-07 Brian Ford <ford@vss.fsi.com>
eea6121a 4106 DJ Delorie <dj@redhat.com>
d70270c5
BF
4107
4108 * coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]:
4109 Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE.
4110 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize
4111 IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines.
4112
7e9f3bd6
AO
41132004-05-07 Alexandre Oliva <aoliva@redhat.com>
4114
4115 * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Return
4116 immediately if there's no link info.
4117 (elf32_frvfdpic_copy_private_bfd_data): New.
4118 (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic.
4119
eb61d2d6
ZW
41202004-05-06 Zack Weinberg <zack@codesourcery.com>
4121
4122 * dwarf2.c (add_line_info): Also set info->filename to NULL if
4123 filename argument is null; do not call strlen on a null pointer.
4124
ecb2d096
DJ
41252004-05-06 Daniel Jacobowitz <drow@mvista.com>
4126
4127 * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32
4128 special case.
4129
43850d5b
AO
41302004-05-05 Alexandre Oliva <aoliva@redhat.com>
4131
4132 * configure.in (bfd_elf32_frvfdpic_vec): New.
4133 * configure: Rebuilt.
4134 * targets.c (bfd_elf32_frvfdpic_vec): New.
4135 * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default
4136 on the latter.
4137 * elf32-frv.c: Prefix all identifiers added for FDPIC support with
4138 frvfdpic instead of frv. Rearrange elf-target macros such that
4139 the FDPIC-specific ones are only defined for this new target
4140 vector.
4141 (bfd_elf32_frvfdpic_vec): Declare.
4142 (IS_FDPIC): New.
4143 (elf32_frv_relocate_section): Use it to enable segment checking
4144 and to control rofixup emission. Add output section vma to
4145 applied relocation in non-LOAD non-ALLOC sections. Use
4146 _bfd_error_handler for errors.
4147 (_frv_create_got_section): Create .rel.got and .rofixup only in
4148 FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the
4149 linker script.
4150 (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC.
4151 (elf32_frvfdpic_modify_segment_map): Likewise.
4152 (elf32_frv_finish_dynamic_sections): New, do-nothing.
4153 (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve
4154 error message if we miscompute the rofixup size.
4155 (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC.
4156 (frvfdpic_elf_encode_eh_address): Likewise.
4157 (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC.
4158 Record relocs only in FDPIC. Make sure _gp is defined for GPREL
4159 relocs. Reject unknown relocation types.
4160 (elf32_frv_object_p): Make sure target vector matches FDPIC bits.
4161 (frv_elf_merge_private_bfd_data): Likewise.
4162 (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as
4163 0x4000 for newly-added elf32-frvfdpic.
4164
06fc8a8c
NC
41652004-05-05 Nick Clifton <nickc@redhat.com>
4166
4167 PR/136
4168 * cache.c (bfd_cache_lookup_worker): Call abort() rather than
4169 returning NULL as most users of this function do not check its
4170 return value.
33216455
NC
4171 * hppabsd-core.c (hppabsd_core_core_file_p): Do not check result
4172 of bfd_cache_lookup().
4173 * sco5-core.c (sco5_core_file_p): Likewise.
4174 * trad-core.c (trad_unix_core_file_p): Likewise.
06fc8a8c
NC
4175
41762004-05-05 Nick Clifton <nickc@redhat.com>
4177
4178 * cache.c (bfd_cache_lookup): Improve formatting.
4179 * archive.c: Fix formatting.
4180
6b6e92f4
NC
41812004-05-05 Peter Barada <peter@the-baradas.com>
4182
4183 * bfd_archures.c(bfd_architecture): Add 521x,5249,547x,548x.
4184 * cpu-m68k.c(bfd_m68k_arch): Likewise.
4185 * bfd-in2.h(bfd_architecture): Regenerate.
4186
6a8d1586
AM
41872004-05-03 Alan Modra <amodra@bigpond.net.au>
4188
4189 * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excluded
4190 SEC_MERGE sections.
4191 * elflink.c (elf_link_input_bfd): Adjust output reloc index for
4192 those against discarded link-once and SEC_MERGE section symbols.
4193
fafe6678
L
41942004-05-02 H.J. Lu <hongjiu.lu@intel.com>
4195
4196 * section.c (bfd_get_section_by_name_if): New.
4197 * bfd-in2.h: Regenerated.
4198
ad7b9a36
AM
41992004-05-02 Alan Modra <amodra@bigpond.net.au>
4200
4201 * som.c (som_bfd_is_group_section): Define.
4202
73499ab8
AM
42032004-05-01 Alan Modra <amodra@bigpond.net.au>
4204
4205 * section.c (bfd_make_section_anyway): Copy the whole
4206 bfd_hash_entry, not just "next" from existing entry.
4207
45c5e9ed
L
42082004-04-30 H.J. Lu <hongjiu.lu@intel.com>
4209
4210 * elf.c (bfd_section_from_shdr): Maintain the section order in
4211 a section group.
4212 (special_sections): Add ".note.GNU-stack".
4213 (elf_fake_sections): Handle section group for relocatable
4214 link..
4215
bc87dd2e
L
42162004-04-30 H.J. Lu <hongjiu.lu@intel.com>
4217
4218 * section.c (bfd_sections_find_if): New.
4219 * bfd-in2.h: Regenerated.
4220
72adc230
AM
42212004-04-30 Alan Modra <amodra@bigpond.net.au>
4222
4223 * section.c (bfd_make_section_anyway): Add all sections to hash tab.
4224
4225 * elf-bfd.h (bfd_elf_is_group_section): Declare.
4226 * elf.c (bfd_elf_is_group_section): New function.
4227 * elfxx-target.h (bfd_elfNN_bfd_is_group_section
4228 * section.c (bfd_generic_is_group_section): New function.
4229 * targets.c (struct bfd_target): Add _bfd_is_group_section field.
4230 (BFD_JUMP_TABLE_LINK): Adjust.
4231 * aout-adobe.c (aout_32_bfd_is_group_section): Define.
4232 * aout-target.h (MY_bfd_is_group_section): Define.
4233 * aout-tic30.c (MY_bfd_is_group_section): Define.
4234 * bfd.c (bfd_is_group_section): Define.
4235 * binary.c (binary_bfd_is_group_section): Define.
4236 * bout.c (b_out_bfd_is_group_section): Define.
4237 * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define.
4238 * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define.
4239 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust.
4240 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust.
4241 * coffcode.h (coff_bfd_is_group_section): Define.
4242 * i386msdos.c (msdos_bfd_is_group_section): Define.
4243 * i386os9k.c (os9k_bfd_is_group_section): Define.
4244 * ieee.c (ieee_bfd_is_group_section): Define.
4245 * ihex.c (ihex_bfd_is_group_section): Define.
4246 * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define.
4247 * mach-o.c (bfd_mach_o_bfd_is_group_section): Define.
4248 * mmo.c (mmo_bfd_is_group_section): Define.
4249 * nlm-target.h (nlm_bfd_is_group_section): Define.
4250 * oasys.c (oasys_bfd_is_group_section): Define.
4251 * pef.c (bfd_pef_bfd_is_group_section): Define.
4252 * ppcboot.c (ppcboot_bfd_is_group_section): Define.
4253 * srec.c (srec_bfd_is_group_section): Define.
4254 * tekhex.c (tekhex_bfd_is_group_section): Define.
4255 * versados.c (versados_bfd_is_group_section): Define.
4256 * vms.c (vms_bfd_is_group_section): Define.
4257 * xsym.c (bfd_sym_bfd_is_group_section): Define.
4258 * bfd-in2.h: Regenerate.
4259 * libbfd.h: Regenerate.
4260
20f0a1ad
AM
42612004-04-30 Alan Modra <amodra@bigpond.net.au>
4262
4263 * elflink.c (elf_gc_mark): Follow indirect and warning syms.
4264
f7458fc9 42652004-04-30 Hans-Peter Nilsson <hp@axis.com>
7dfb3b6b
HPN
4266
4267 * configure.in: Update version to 2.15.91.
4268 * configure: Regenerate.
4269
8a7140c3
NC
42702004-04-29 Brian Ford <ford@vss.fsi.com>
4271
4272 * bfd.c (bfd_get_sign_extend_vma): Add pe[i]-i386 case to DJGPP hack.
4273 * coffcode.h (DOT_DEBUG, GNU_LINKONCE_WI): Define.
4274 [!COFF_WITH_PE] (sec_to_styp_flags, styp_to_sec_flags): Use them.
4275 (coff_compute_section_file_positions) [RS6000COFF_C]: Likewise.
4276 [COFF_WITH_PE] (sec_to_styp_flags): Handle DWARF 2/3 .debug* and
4277 .gnu.linkonce.wi. sections.
4278 * pe-i386.c (COFF_SUPPORT_GNU_LINKONCE): Define.
4279 (COFF_SECTION_ALIGNMENT_ENTRIES): Add entries for .debug and
4280 .gnu.linkonce.wi..
4281 * pei-i386.c (COFF_SUPPORT_GNU_LINKONCE): Likewise.
4282 (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
4283
3e722fb5
CD
42842004-04-28 Chris Demetriou <cgd@broadcom.com>
4285
4286 * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
4287 * bfd-in2.h: Regenerate.
4288 * libbfd.h: Likewise.
4289
351e2b5a
DA
42902004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4291
4292 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and
4293 dup_common fields.
4294 (setup_sections): Use som_subspace_dictionary_record struct instead
4295 subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is
4296 is_comdat, is_common or dup_common.
4297 (som_prep_headers): Use som_subspace_dictionary_record struct. Set
4298 is_comdat, is_common and dup_common in section subspace_dict from
4299 copy_data.
4300 (som_begin_writing): Use som_subspace_dictionary_record struct.
4301 (som_finish_writing): Likewise.
4302 (som_bfd_derive_misc_symbol_info): Add support to set is_comdat,
4303 is_common and dup_common flags in info for symbol. Add comment
4304 regarding linker support for these fields. Slightly reorganize
4305 function.
4306 (som_build_and_write_symbol_table): Set is_comdat, is_common and
4307 dup_common fields in symbol table from symbol info.
4308 (bfd_som_set_subsection_attributes): Add comdat, common and dup_common
4309 arguments. Set corresponding fields in copy_data. Change all callers.
4310 (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library
4311 symbol table.
4312 (som_vec): Add SEC_LINK_ONCE to applicable section flags.
4313 * som.h (som_subspace_dictionary_record): Define.
4314 (som_copyable_section_data_struct): Add is_comdat, is_common and
4315 dup_common fields.
4316 (som_section_data_struct): Use som_subspace_dictionary_record struct
4317 instead of subspace_dictionary_record.
4318 (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype.
4319
3ba3bc8c
BW
43202004-04-27 Bob Wilson <bob.wilson@acm.org>
4321
4322 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size
4323 if set. Check reloc_done flag before applying relocations. Use
4324 output addresses, both when applying relocations and when comparing
4325 against the specified section.
4326 (elf_xtensa_relocate_section): Use output address to check if dynamic
4327 reloc is in a literal pool. Set section's reloc_done flag.
4328
beb8df56
L
43292004-04-27 H.J. Lu <hongjiu.lu@intel.com>
4330
4331 * elf32-sh64.c (elf_backend_section_flags): New. Defined.
4332 (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges
4333 section.
4334 (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges
4335 section.
4336
1829f4b2
AM
43372004-04-27 Alan Modra <amodra@bigpond.net.au>
4338
4339 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign
4340 structure field removed in 2004-04-24 patch.
4341 * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix.
4342
4343 * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>):
4344 Constify hdr arg.
4345 * elf32-arm.h (elf32_arm_section_flags): Likewise.
4346 * elf64-alpha.c (elf64_alpha_section_flags): Likewise.
4347 * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise.
4348 * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section
4349 field before calling elf_backend_section_flags.
4350
4030e8f6
CD
43512004-04-24 Chris Demetriou <cgd@broadcom.com>
4352
4353 * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16)
4354 (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove.
4355 (bfd_elf32_bfd_reloc_type_lookup): Remove cases for
4356 BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL,
4357 and BFD_RELOC_32_PCREL.
4358 (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16,
4359 R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32.
4360 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
4361 (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16.
4362 (mips_elf_next_relocation): Move comment about matching HI/LO
4363 relocations to...
4364 (_bfd_mips_elf_relocate_section): Here. Remove handling for
4365 R_MIPS_GNU_REL_HI16.
4366
3e27568f
CD
43672004-04-23 Chris Demetriou <cgd@broadcom.com>
4368
4369 * coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
4370 (mips_switch_reloc, mips_read_relocs, mips_relax_section)
4371 (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
4372 (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
4373 and update comments to reflect current usage.
4374 (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
4375 and MIPS_R_SWITCH, as well as several empty entries. Update comment
4376 for MIPS_R_PCREL16.
4377 (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
4378 (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
4379 for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
4380 (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
4381 type number to be MIPS_R_PCREL16.
4382 (mips_relocate_section): Remove support for link-time relaxation
4383 of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
4384 MIPS_R_RELLO, and MIPS_R_RELHI relocations.
4385 (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
4386 * ecoff.c (ecoff_indirect_link_order): Remove support for link-time
4387 relaxation of branches used by embedded-PIC.
4388 * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
4389 * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
4390 related members, update comment.
4391 * pe-mips.c: Remove disabled (commented-out and #if 0'd)
4392 code related to embedded-PIC.
4393 * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
4394 initialization of now-removed 'adjust' member of
4395 'struct ecoff_debug_info'.
4396
b32de0bc 43972004-04-23 Chris Demetriou <cgd@broadcom.com>
8472310d
CD
4398
4399 * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove.
4400
955af222
PB
44012004-04-21 Philip Blundell <pb@nexus.co.uk>
4402
4403 * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32
4404 relocs for locally defined symbols during -shared final link.
4405 (elf32_arm_final_link_relocate): Likewise.
4406
47a9f7b3
JJ
44072004-04-22 Jakub Jelinek <jakub@redhat.com>
4408
4409 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also
4410 ELF_LINK_POINTER_EQUALITY_NEEDED.
4411 (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED
4412 if r_type is not R_X86_64_PC32.
4413 (elf64_x86_64_finish_dynamic_symbol): If
4414 ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of
4415 SHN_UNDEF symbols.
4416
1f1799d5
KK
44172004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
4418
4419 * elf32-sh.c (sh_elf_plt_sym_val): New function.
4420 (elf_backend_plt_sym_val): Define.
4421
0fdea5ce
AC
44222004-04-22 Andrew Cagney <cagney@redhat.com>
4423
4424 * opncls.c (bfd_alloc): Fix type of "wanted" in doco.
4425
5198ba8b
DA
44262004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4427
eb61d2d6 4428 * hpux-core.c (hpux_core_core_file_p): Add cast in call to
5198ba8b
DA
4429 make_bfd_asection.
4430 * som.c (som_set_section_contents): Constantify second argument.
4431 (hppa_som_gen_reloc_type): Abort for unsupported selectors.
4432 (som_object_setup): Rework to avoid warning.
4433 (setup_sections, som_write_fixups, bfd_section_from_som_symbol):
4434 Likewise.
4435
fe2e161a
AC
44362004-04-22 Andrew Cagney <cagney@redhat.com>
4437
4438 * cache.c (bfd_cache_close): Check for a previously closed file.
4439
4c45e5c9
JJ
44402004-04-22 Jakub Jelinek <jakub@redhat.com>
4441
4442 * bfd.c (bfd_get_synthetic_symtab): Define.
4443 * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
4444 NAME##_get_synthetic_symtab.
4445 (struct bfd_target): Add _bfd_get_synthetic_symtab.
4446 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
4447 * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
4448 relplt_name fields.
4449 (_bfd_elf_get_synthetic_symtab): New prototype.
4450 * elfcode.h (elf_get_synthetic_symtab): Define.
4451 * elf.c (_bfd_elf_get_synthetic_symtab): New function.
4452 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
4453 (elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
4454 (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
4455 * bfd-in2.h: Rebuilt.
4456 * libbfd.h: Rebuilt.
4457 * elf32-i386.c (elf_i386_plt_sym_val): New function.
4458 (elf_backend_plt_sym_val): Define.
4459 * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
4460 (elf_backend_plt_sym_val): Define.
4461 * elf32-s390.c (elf_s390_plt_sym_val): New function.
4462 (elf_backend_plt_sym_val): Define.
4463 * elf64-s390.c (elf_s390_plt_sym_val): New function.
4464 (elf_backend_plt_sym_val): Define.
4465 * elf32-sparc (elf32_sparc_plt_sym_val): New function.
4466 (elf_backend_plt_sym_val): Define.
4467 * elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
4468 (elf_backend_plt_sym_val): Define.
4469 * elf32-ppc.c (ppc_elf_plt_sym_val): New function.
4470 (elf_backend_plt_sym_val): Define.
4471 * aout-target.h (MY_get_synthetic_symtab): Define.
4472 * aout-tic30.c (MY_get_synthetic_symtab): Define.
4473 * coff-rs6000.c (rs6000coff_vec): Add
4474 _bfd_nodynamic_get_synthetic_symtab.
4475 (pmac_xcoff_vec): Likewise.
4476 * coff64-rs6000.c (rs6000coff64_vec): Add
4477 _bfd_nodynamic_get_synthetic_symtab.
4478 (aix5coff64_vec): Likewise.
4479 * sunos.c (MY_get_synthetic_symtab): Define.
4480 * vms.c (vms_get_synthetic_symtab): Define.
4481
d2f7ecac
NC
44822004-04-22 Nick Clifton <nickc@redhat.com>
4483
4484 * bfd.c (bfd_archive_filename): Return NULL on NULL input.
4485
fd99574b
NC
44862004-04-22 Peter Barada <peter@the-baradas.com>
4487
4488 * archures.c: Add bfd_mach_mcfv4e to bfd_architecture.
4489 * bfd2-in.h: Regenerate.
4490 * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[].
4491
23867d67
CD
44922004-04-21 Chris Demetriou <cgd@broadcom.com>
4493
4494 * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove.
4495 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove.
4496 * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs)
4497 (bfd_mips_elf32_create_embedded_relocs): Remove prototypes
4498 * bfd-in2.h: Regenerate.
4499
2c8c90bc
BW
45002004-04-21 Bob Wilson <bob.wilson@acm.org>
4501
4502 * elf32-xtensa.c (is_same_value): Add final_static_link argument and
4503 require relocations against a weak symbol to reference the same
4504 symbol hash entry if not a final, static link.
4505 (get_cached_value, add_value_map): Add final_static_link argument.
4506 (remove_literals): Pass final_static_link argument as needed.
4507
40838a72
AC
45082004-04-21 Andrew Cagney <cagney@redhat.com>
4509
4510 * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
4511 (struct opncls, opncls_btell, opncls_bseek, opncls_bread)
4512 (opncls_bwrite, opncls_bclose, opncls_bflush)
4513 (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
4514 bfd iovec that uses function callbacks.
4515 (bfd_close): Use the iovec's bclose.
4516 * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
4517 (cache_bclose, cache_bflush, cache_bstat)
4518 (cache_iovec): New functions and global variable, implement a
4519 cache "iovec", where applicable set bfd_error.
4520 (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
4521 * bfdio.c (struct bfd_iovec): Define.
4522 (real_read): Delete function.
4523 (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
4524 (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
4525 assume that bread and bwrite set bfd_error.
4526 * bfd.c (struct bfd): Add "iovec", update comments.
4527 * bfd-in2.h, libbfd.h: Re-generate.
4528
7f919c84
AC
45292004-04-21 Andrew Cagney <cagney@redhat.com>
4530
4531 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
4532
715df9b8
EB
45332004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
4534
4535 * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function.
4536 (bfd_elf_gc_sections): Fail if a shared object is being created.
4537 Do not fail if dynamic sections have been created. Instead call
4538 elf_gc_mark_dynamic_ref_symbol to mark sections that contain
4539 dynamically referenced symbols. Do not mark the whole graph
4540 rooted at .eh_frame, only the section proper.
4541
6482c264
NC
45422004-04-20 DJ Delorie <dj@redhat.com>
4543
4544 * reloc.c: Add BFD_RELOC_32_SECREL.
4545 * bfd-in2.h: Regenerate.
4546 * libbfd.h: Likewise.
4547 * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32.
4548 (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it.
4549 (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise.
4550
4dc570c2
JJ
45512004-04-19 Jakub Jelinek <jakub@redhat.com>
4552
4553 * elf32-sparc.c (elf32_sparc_relocate_section): Handle
4554 relocs against hidden/protected undefweak symbols properly.
4555 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
4556
0b60d5d3
MK
45572004-04-18 Mark Kettenis <kettenis@gnu.org>
4558
4559 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
4560 * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC
4561 core files.
4562
d48bdb99
AM
45632004-04-17 Brian Ford <ford@vss.fsi.com>
4564
4565 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero
4566 filepos for the SizeOfHeaders field.
4567 (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc
4568 overflow.
4569 (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment.
4570
57a1784e
AM
45712004-04-16 Alan Modra <amodra@bigpond.net.au>
4572
4573 * simple.c (bfd_simple_get_relocated_section_contents): Don't
4574 change reloc_done. Set and restore _cooked_size.
4575 (RETURN): Delete.
4576
d1ad3f6f
MK
45772004-04-15 Mark Kettenis <kettenis@gnu.org>
4578
4579 * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX
4580 core files.
4581
3d1bca9d
NC
45822004-04-15 Nick Clifton <nickc@redhat.com>
4583
4584 * bfd.c (bfd_archive_filename): Catch NULL bfd pointers.
4585
019b892f
AM
45862004-04-15 Alan Modra <amodra@bigpond.net.au>
4587
4588 * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change.
4589
15b43f48
AM
45902004-04-15 H.J. Lu <hongjiu.lu@intel.com>
4591
4592 * elflink.c (_bfd_elf_merge_symbol): Treat weak as strong only
4593 when it is a definition.
4594
6de00a78
AM
45952004-04-14 Alan Modra <amodra@bigpond.net.au>
4596
4597 * elf32-sparc.c (elf32_sparc_relocate_section): Don't abort
4598 when statically linking PIC code.
4599 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
4600
279500de
TS
46012004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4602
4603 * config.bfd: Remove mips*-*-mach3* and mips*-dec-mach3* targets.
4604 * configure.in: Remove mips-dec-bsd*, mips-dec-mach3*, mips-*-mach3*
4605 targets amd aout_mips_big_vec, aout_mips_little_vec target vectors.
4606 * configure: Regenerate.
4607
ccf2f652
RS
46082004-04-08 Richard Sandiford <rsandifo@redhat.com>
4609
4610 * elflink.c: Include libiberty.h.
4611 * Makefile.am (elflink.lo): Depend on libiberty.h.
4612 * Makefile.in: Regenerate.
4613
ca07892d
DJ
46142004-04-06 Daniel Jacobowitz <drow@mvista.com>
4615
4616 * elfxx-mips.c (MIPS_ELF_STUB_SECTION_NAME): Always use
4617 ".MIPS.stubs".
4618
a5a58ba4
L
46192004-04-05 H.J. Lu <hongjiu.lu@intel.com>
4620
4621 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Always
4622 reserve the memory for dynamic linker
4623
24d18d30
MK
46242004-04-05 Mark Kettenis <kettenis@gnu.org>
4625
4626 * netbsd-core.c (CORE_WCOOKIE_OFFSET): New define.
4627 (netbsd_core_file_p): Create a .wcookie section for OpenBSD/sparc.
4628
a4d7b4b5
L
46292004-04-02 H.J. Lu <hongjiu.lu@intel.com>
4630
4631 * elf32-cr16c.c (elf32_cr16c_relocate_section): Use
4632 RELOC_FOR_GLOBAL_SYMBOL.
4633 (elf32_cr16c_add_symbol_hook): Remove const from Elf_Internal_Sym.
4634
1f433d93
L
46352004-04-02 H.J. Lu <hongjiu.lu@intel.com>
4636
4637 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
4638 R_ARM_ALU* only if OLD_ARM_ABI is not defined.
4639
e489d0ae
PB
46402004-04-01 Paul Brook <paul@codesourcery.com>
4641
4642 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.
4643 * elf32-arm.h (struct elf32_elf_section_map): New.
4644 (struct _arm_elf_section_data): New.
4645 (elf32_arm_section_data): Define.
4646 (struct elf32_arm_link_hash_table): Add byteswap_code.
4647 (elf32_arm_link_hash_table_create): Initialize byteswap_code.
4648 (bfd_elf32_arm_process_before_allocation): Add byteswap_code.
4649 (elf32_arm_post_process_headers): Set EF_ARM_BE8.
4650 (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook,
4651 elf32_arm_compare_mapping, elf32_arm_write_section): New functions.
4652 (bfd_elf32_new_section_hook, elf_backend_write_section,
4653 elf_backend_link_output_symbol_hook): Define.
4654
66a695f0
NC
46552004-04-01 Andy Chittenden <achittenden@bluearc.com>
4656
4657 * stabs.c (struct stab_link_includes_totals): Add field 'symb'
4658 that keeps the characters in a B_INCL..B_EINCL range.
4659 (_bfd_link_section_stabs): When computing the sum of the
4660 characters in a B_INCL..B_EINCL range also keep a copy of those
4661 characters. Use this information to distinguish between
4662 include sections that have the same sum and the same length
4663 but which are nevertheless unique.
4664
8375c36b
PB
46652004-03-31 Paul Brook <paul@codesourcery.com>
4666
4667 * elf32-arm.h (elf32_arm_final_link_relocate): Add R_ARM_ALU*.
4668 * elfarm-nabi.c (elf32_arm_howto_table): Ditto.
4669
a56b48eb
NC
46702004-03-31 Andy Chittenden <achittenden@bluearc.com>
4671
4672 * stabs.c (struct stab_link_includes_totals): Rename field 'total'
4673 to 'sum_chars' and add field 'num_chars'.
4674 (_bfd_link_section_stabs): When computing the sum of the
4675 characters in a B_INCL..B_EINCL range also keep a count of the
4676 number of characters. Use this information to help distinguish
4677 between include sections when have the same sum but which
4678 nevertheless are still unique.
4679
3d456464
NC
4680