2007-11-12 H.J. Lu <hongjiu.lu@intel.com>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
fa4dfc15
L
12007-11-12 H.J. Lu <hongjiu.lu@intel.com>
2
3 PR binutils/5299
4 * peicode.h (pe_bfd_object_p): Save and restore previous bfd
5 state when calling coff_object_p.
6
8f39ba8e
AM
72007-11-12 Alan Modra <amodra@bigpond.net.au>
8
9 * elf.c (_bfd_elf_get_synthetic_symtab): Only bump the symbol
fa4dfc15 10 pointer when we have a valid symbol. Init udata.p to NULL.
8f39ba8e 11
6b60be10
NS
122007-11-09 Nathan Sidwell <nathan@codesourcery.com>
13
14 * elf-vxworks.c (elf_vxworks_emit_relocs): Don't clobber
15 rel_hash. Move loop inside if test.
16
7a2b07ff
NS
172007-11-08 Nathan Sidwell <nathan@codesourcery.com>
18
19 * elf-vxworks.h (elf_vxworks_add_dynamic_entries): Declare.
20 (elf_vxworks_finish_dynamic_entry): Declare.
21 * elf-vxworks.c: Include elf/vxworks.h.
22 (elf_vxworks_add_dynamic_entries): New.
23 (elf_vxworks_finish_dynamic_entry): New.
24 * Makefile.am (elf-vxworks.lo): Add dependency.
25 * Makefile.in (elf-vxworks.lo): Add dependency.
26 * elf32-i386.c (elf_i386_size_dynamic_sections,
27 elf_i386_finish_dynamic_sections): Call
28 elf_vxworks_add_dynamic_entries and
29 elf_vxworks_finish_dynamic_entry.
30 * elf32-ppc.c (ppc_elf_size_dynamic_sections,
31 ppc_elf_finish_dynamic_sections): Likewise.
32 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections,
33 sparc_finish_dyn): Likewise.
34 * elf32-sh.c (sh_elf_size_dynamic_sections,
35 sh_elf_finish_dynamic_sections): Likewise.
36 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections,
37 _bfd_mips_elf_finish_dynamic_sections): Likewise.
38 * elf32-arm.c (elf32_arm_size_dynamic_sections,
39 elf32_arm_finish_dynamic_sections): Likewise.
40
b5482f21
NC
412007-11-07 Olivier Hainque <hainque@adacore.com>
42
43 * bfd/elfxx-mips.c (_bfd_mips_elf_fake_sections): Force
44 SHF_MIPS_NOSTRIP on .debug_frame for Irix.
45
b7fcf6f6
AM
462007-11-06 Alan Modra <amodra@bigpond.net.au>
47
102890f0
AM
48 * elf64-ppc.c (ppc64_elf_check_relocs): Don't refcount tlsld_got here..
49 (ppc64_elf_gc_sweep_hook): ..or here..
50 (ppc64_elf_tls_optimize): ..or here. Make two passes through the
51 relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
52 (allocate_dynrelocs): Refcount tlsld_got here.
53 (ppc64_elf_size_dynamic_sections): Allocate local got and call
54 allocate_dynrelocs before allocating tlsld_got.
55 (ppc64_elf_relocate_section): Remove check that a tls_get_addr
56 call follows gd and ld relocs.
57
b7fcf6f6
AM
58 * elf32-ppc.c (ppc_elf_check_relocs): Don't refcount tlsld_got here..
59 (ppc_elf_gc_sweep_hook): ..or here..
60 (ppc_elf_tls_optimize): ..or here. Make two passes through the
61 relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
62 (allocate_dynrelocs): Refcount tlsld_got here.
63 (ppc_elf_size_dynamic_sections): Call allocate_dynrelocs before
64 allocating tlsld_got.
65 (ppc_elf_relocate_section): Remove check that a tls_get_addr
66 call follows gd and ld relocs.
67
9ca98086
AM
682007-11-05 Alan Modra <amodra@bigpond.net.au>
69
70 * merge.c (sec_merge_hash_lookup): Revert last change.
71 (record_section): Likewise.
72 (_bfd_merge_sections): Likewise.
73 (_bfd_merged_section_offset): Properly handle NULL secinfo.
74 (_bfd_add_merge_section): Allocate extra space for a zero
75 terminator on SEC_STRINGS sections.
76
11ec4ba9
DS
772007-11-05 Danny Smith <dannysmith@users.sourceforge.net>
78
79 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Let .data, .text
80 and .bss section use the default.
81 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
82
e6c6c8f3
JM
832007-11-01 Joseph Myers <joseph@codesourcery.com>
84
85 * merge.c (sec_merge_hash_lookup): Add parameter sec_end. Check
86 for unterminated strings. All callers changed.
87 (record_section): Add parameter abfd. Give error message for
88 unterminated strings.
89 (_bfd_merge_sections): Update call to record_section.
90 (_bfd_write_merged_section, _bfd_merged_section_offset): Handle
91 NULL secinfo from merge failures.
92
cf4a529b
NC
932007-10-31 Nick Clifton <nickc@redhat.com>
94
95 * elf-m10300.c (mn10300_elf_relax_delete_bytes): Do not look for
96 align relocs when there are no relocs attached to the section.
97
8f317e31
AM
982007-10-31 Alan Modra <amodra@bigpond.net.au>
99
100 * elf-bfd.h (bfd_elf_match_symbols_in_sections): Don't declare.
101 * elflink.c (bfd_elf_match_symbols_in_sections): Make static.
102 Remove section name comparisons.
103
569006e5
NC
1042007-10-30 Nick Clifton <nickc@redhat.com>
105
106 * reloc.c (BFD_RELOC_MN10300_ALIGN): Add.
107 * bfd-in2.h: Regenerate.
108 * libbfd.h: Regnerate.
109 * elf-m10300.h: Handle R_MN10300_ALIGN relocs.
110 (mn10300_elf_relax_delete_bytes): Honour R_MN10300_ALIGN relocs.
111 Re-fix off by one error in comparisons.
112
db86b2dc
PA
1132007-10-25 Pedro Alves <pedro_alves@portugalmail.pt>
114
115 * bfd-in.h (STRING_COMMA_LEN): Don't handle NULL STR case.
116 * bfd-in2.h: Regenerate.
117
c6e65352
DJ
1182007-10-25 Daniel Jacobowitz <dan@codesourcery.com>
119
120 * elf32-ppc.c (ppc_elf_merge_obj_attributes): Add support for
121 Tag_GNU_Power_ABI_Vector.
122
7c8b76cc
JM
1232007-10-25 Joseph Myers <joseph@codesourcery.com>
124
125 * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Do not add
126 PT_NULL header when not linking.
127
97753bd5
AM
1282007-10-25 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
129
130 * elf.c (elfcore_grok_ppc_vmx): New function.
131 (elfcore_grok_note): Handle NT_PPC_VMX.
132 (elfcore_write_ppc_vmx): New function.
133 * elf-bfd.h (elfcore_write_ppc_vmx): Declare.
134
dd323078
AM
1352007-10-24 Alan Modra <amodra@bigpond.net.au>
136
137 * Makefile.am: Run "make dep-am".
138 * Makefile.in: Regenerate.
139 * po/SRC-POTFILES.in: Regenerate.
140
f94498ff
AM
1412007-10-23 Alan Modra <amodra@bigpond.net.au>
142
143 * elf64-ppc.c (ppc_build_one_stub): Don't duplicate relocs
144 emitted for ".brlt" entries.
145 (toc_adjusting_stub_needed): Don't treat ".fixup" specially here..
146 (ppc64_elf_next_input_section): ..instead do so here.
147
bfff1642
NC
1482007-10-19 Nick Clifton <nickc@redhat.com>
149
150 * config.bfd: Recognise am34-linux-gnu target.
151 * reloc.c: Add BFD_RELOC_MN10300_SYM_DIFF relocation.
152 * bfd-in2.h: Regenerate.
153 * libbfd.h: Regenerate.
154 * elf-m10300.c (elf_mn10300_howto): Add R_MN10300_SYM_DIFF.
155 (mn10300_reloc_map): Likewise.
156 (mn10300_elf_check_relocs): Do not create dynamic relocs for
157 symbol differences or relocations against absolute symbols.
158 (mn10300_elf_final_link_relocate): Likewise.
159 Handle R_MN10300_SYM_DIFF relocs.
160 (mn10300_elf_relocate_section): Fix for creating local copys of
161 dynamic relocs.
162 (mn10300_elf_relax_delete_bytes): Adjust symbols at the end of the
163 region. Adjust the size of function symbols.
164 (mn10300_elf_relax_section): Ignore symbols that are in discarded
165 sections.
166
603b7257
NC
1672007-10-19 Nick Clifton <nickc@redhat.com>
168
169 * elf-m10300.c: Convert to ISO C.
170
13285a1b
AM
1712007-10-18 H.J. Lu <hongjiu.lu@intel.com>
172 Alan Modra <amodra@bigpond.net.au>
173
174 PR ld/4424
175 * config.bfd (targ_selvecs): Add bfd_elf64_alpha_vec for
176 alpha/FreeBSD. Add bfd_elf64_sparc_vec for sparc64/FreeBSD.
177 Add bfd_elf32_i386_vec and bfd_efi_app_ia32_vec for i386/FreeBSD.
178 (targ64_selvecs): Set for i386/FreeBSD.
179 * elf-bfd.h (elf_backend_data): Add relocs_compatible.
180 (_bfd_elf_default_relocs_compatible): Declare.
181 (_bfd_elf_relocs_compatible): Declare.
182 * elfxx-target.h (elf_backend_relocs_compatible): Define.
183 (elfNN_bed): Init new relocs_compatible field.
184 * elflink.c (_bfd_elf_default_relocs_compatible): New function.
185 (_bfd_elf_relocs_compatible): New function.
186 (elf_link_add_object_symbols): Call bed->relocs_compatible.
187 * elf32-i386.c (elf_backend_relocs_compatible): Define.
188 * elf64-alpha.c: Likewise.
189 * elf64-sparc.c: Likewise.
190 * elf64-x86-64.c: Likewise.
191
ae326da8
BW
1922007-10-16 Bob Wilson <bob.wilson@acm.org>
193
194 * elf32-xtensa.c (relax_section): Check for a reference to a discarded
195 DWARF section and anticipate its replacement with the kept section.
196
a3ef2d63
BW
1972007-10-16 Bob Wilson <bob.wilson@acm.org>
198
199 * elf32-xtensa.c (elf_xtensa_discard_info_for_section): Remove
200 unnecessary size variables. Set sec->rawsize.
201 (relax_section, relax_property_section): Likewise.
202
73c5c7a8
BW
2032007-10-16 Bob Wilson <bob.wilson@acm.org>
204
205 * section.c (struct bfd_section): Clarify comment for rawsize field.
206 * bfd-in2.h: Regenerate.
207
1dd2625f
BW
2082007-10-16 Bob Wilson <bob.wilson@acm.org>
209
210 * elflink.c (_bfd_elf_check_kept_section): Use the section rawsize
211 values if they are set.
212
8bc9c892
NC
2132007-10-16 Nick Clifton <nickc@redhat.com>
214
215 PR 5146
216 * configure.in (AC_CHECK_HEADERS): Add alloca.h
217 * configure: Regenerate.
218 * config.in: Regenerate.
219 * som.c: Replace alloca-conf.h inclusion with code recommended in
220 autoconf documentation.
221 * elf64-hppa.c: Likewise.
222
504b7d20
NC
2232007-10-16 Nick Clifton <nickc@redhat.com>
224
225 * configure.in (--enable-elf-stt-common): New configure
226 option. If enabled then the tools can generate symbols with
227 the ELF STT_COMMON type.
228 * config.in: Regenerate.
229 * configure: Regenerate.
230 * elf.c (swap_out_syms): If USE_STT_COMMON is defined then set
231 the type of emitted common symbols to STT_COMMON.
232 * elfcode.h (elf_slurp_symbol_table): Accept STT_COMMON symbol
233 types.
234
b1657152
AM
2352007-10-15 Alan Modra <amodra@bigpond.net.au>
236
237 * coff-arm.c (arm_emit_base_file_entry): Check fwrite return value.
238 Return status. Adjust callers.
239 * coff-mcore.c (mcore_emit_base_file_entry): Likewise.
240 * coff-ppc.c (write_base_file_entry): New function.
241 (coff_ppc_relocate_section): Use it.
242 * elf32-arm.c (find_thumb_glue): Check asprintf return status.
243 (find_arm_glue): Likewise.
244 * vms-misc.c (_bfd_vms_output_flush): Check fwrite return value.
245
4b93929b
NC
2462007-10-12 Nick Clifton <nickc@redhat.com>
247
248 PR 5160
249 * elflink.c (eval_symbol): Remove bufsz variable and use
250 sizeof(symbuf) where necessary.
251
e9deb29d
NC
2522007-10-12 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
253
254 * elf32-cr16.c (elf32_cr16_relax_section): Fix condition check typo.
255
720199d6
DJ
2562007-10-12 Daniel Jacobowitz <dan@codesourcery.com>
257
258 * elfxx-mips.c (mips_elf_sort_hash_table_f): Handle forced
259 local symbols specially.
260 (mips_elf_set_global_got_offset): Skip forced local symbols.
261
971d4640
AM
2622007-10-12 Alan Modra <amodra@bigpond.net.au>
263
264 * elf.c (elfcore_grok_prxfpreg): Fix comment typo.
265
f210dcff
L
2662007-10-10 H.J. Lu <hongjiu.lu@intel.com>
267
268 * elf.c (get_program_header_size): Always add a PT_GNU_RELRO
269 segment for -z relro.
270 (_bfd_elf_map_sections_to_segments): Make a PT_GNU_RELRO
271 segment only when needed.
272
9b7f5d20
BW
2732007-10-05 Bob Wilson <bob.wilson@acm.org>
274
275 * elf32-xtensa.c (relax_section): Call pin_internal_relocs when
276 changing a relocation's offset. Adjust call to translate_reloc. Do
277 not add a fix record for a DIFF reloc. For other relocs, only add a
278 fix record if the translated target is in a different object file;
279 otherwise, just update the relocation. Call pin_internal_relocs when
280 updating a reloc but not when adding a fix record.
281 (translate_reloc): Get the target section from a new argument, not
282 from the relocation. Change check for relaxable sections to an
283 assertion. Compute separate offset adjustments for the base symbol
284 and the addend, and set the new relocation's addend correctly. Return
285 the new target section.
286
768a5a74
BW
2872007-10-05 Bob Wilson <bob.wilson@acm.org>
288
289 * elf32-xtensa.c (elf_xtensa_relocate_section): Remove updates of
290 r_type and howto after calling do_fix_for_relocateable_link and
291 do_fix_for_final_link.
292
03669f1c
BW
2932007-10-05 Bob Wilson <bob.wilson@acm.org>
294
295 * elf32-xtensa.c (removed_by_actions): New.
296 (offset_with_removed_text): Reimplement using removed_by_actions.
297 (offset_with_removed_text_before_fill): Delete.
298 (relax_property_section): Use removed_by_actions. Rearrange logic.
299 (relax_section_symbols): Likewise.
300
0f5f1638
BW
3012007-10-04 Bob Wilson <bob.wilson@acm.org>
302
303 * elf32-xtensa.c (reloc_bfd_fix_struct): Delete target_abfd field.
304 (reloc_bfd_fix_init): Remove target_abfd argument.
305 (relax_section, move_literal): Adjust calls to reloc_bfd_fix_init.
306
1f7a4e42
NC
3072007-10-04 Nick Clifton <nickc@redhat.com>
308
309 PR linker/5099
310 * elf64-x86-64.c (elf64_x86_64_check_relocs): Add missing
311 apostrophe to error message.
312
7fac7ff4
NC
3132007-10-01 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
314
315 * elf32-cr16.c: Fixed DISP8, DISP20 and IMM20 relocations at
316 final relocation phase.
317 Added the below relaxations: IMM32 -> IMM20/IM16 -> IMM4.
318 * reloc.c: Added 3 new relocations: R_CR16_SWITCH8,
319 R_CR16_SWITCH16, R_CR16_SWITCH32.
320 * libbfd.h: Regenerate.
321 * bfd-in2.h: Regenerate.
322
a0c8462f
AM
3232007-09-30 Alan Modra <amodra@bigpond.net.au>
324
325 * elflink.c: Formatting.
326
0f02bbd9
AM
3272007-09-29 Alan Modra <amodra@bigpond.net.au>
328
329 * elflink.c (resolve_symbol): Handle symbols in SEC_MERGE
330 sections. Don't test symbol st_shndx. Don't bother with
331 bfd_link_hash_common symbols. Print longs rather than ints
332 in debug messages.
333 (eval_symbol): Replace "sym" and "advanced" params with "symp".
334 Replace "addr" and "section_offset" params with "dot". Don't
335 cast bfd_vma values to signed, cast them to bfd_signed_vma.
336 (bfd_elf_perform_complex_relocation): Delete "output_bfd", "info",
337 "local_syms" and "local_sections" params. Add "relocation".
338 Delete code calculating relocation value.
339 (evaluate_complex_relocation_symbols): Delete function. Fold into..
340 (elf_link_input_bfd): ..existing code examining relocs.
341 * elf-bfd.h (bfd_elf_perform_complex_relocation): Update prototype.
342 * elf32-mep.c (mep_elf_check_relocs): Delete function.
343 (mep_elf_gc_sweep_hook, mep_elf_gc_mark_hook): Likewise.
344 (mep_elf_object_p): Don't set elf_bad_symtab.
345 (elf_backend_check_relocs): Don't define.
346 (elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook): Likewise.
347 (elf_backend_can_gc_sections, USE_RELA): Likwise.
348 (mep_elf_relocate_section): Move bfd_elf_perform_complex_relocation
349 call after we have calculated reloc value. Delete local sym
350 debug code. Use RELOC_FOR_GLOBAL_SYMBOL. Delete addend
351 adjusting code..
352 (elf_backend_rela_normal): ..instead define this.
353
5582a088
AM
3542007-09-28 Alan Modra <amodra@bigpond.net.au>
355
356 * elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
357 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
358 * elf32-avr.c (elf32_avr_check_relocs): Likewise.
359 * elf32-bfin.c (bfinfdpic_check_relocs): Likewise.
360 * elf32-cris.c (cris_elf_check_relocs): Likewise.
361 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
362 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
363 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
364 * elf32-frv.c (_frvfdpic_check_discarded_relocs): Likewise.
365 (elf32_frv_check_relocs): Likewise.
366 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
367 * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
368 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
369 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
370 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
371 * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
372 * elf32-mt.c (mt_elf_check_relocs): Likewise.
373 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
374 * elf32-sh.c (sh_elf_check_relocs): Likewise.
375 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
376 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
377 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
378 (score_elf_local_relocation_p): Likewise.
379 (_bfd_score_elf_relocate_section): Likewise.
380 (score_elf_final_link_relocate): Likewise.
381
d17e0c6e
JB
3822007-09-26 Jan Beulich <jbeulich@novell.com>
383
384 * elf32-i386.c (elf_i386_check_relocs): Revert NULL pointer
385 check for R_386_GNU_VTINHERIT.
386 * elf-m10300.c (mn10300_elf_check_relocs): Check for NULL
387 pointer for R_xxx_GNU_VTENTRY.
388 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
389 * elf32-bfin.c (bfin_check_relocs): Likewise.
390 (bfinfdpic_check_relocs): Likewise.
391 * elf32-cris.c (cris_elf_check_relocs): Likewise.
392 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
393 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
394 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
395 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
396 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
397 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
398 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
399 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
400 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
401 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
402 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
403 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
404 * elf32-s390.c (elf_s390_check_relocs): Likewise.
405 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
406 * elf32-sh.c (sh_elf_check_relocs): Likewise.
407 * elf32-v850.c (v850_elf_check_relocs): Likewise.
408 * elf32-vax.c (elf_vax_check_relocs): Likewise.
409 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
410 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
411 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
412 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
413 * elf64-s390.c (elf_s390_check_relocs): Likewise.
414 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
415 * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
416 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
417 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
418
8977835c
AM
4192007-09-26 Alan Modra <amodra@bigpond.net.au>
420
421 * elflink.c (set_symbol_value): Add isymbuf and locsymcount
422 params. Change symidx to a size_t. Don't access past end
423 of symbol buffer.
424 (resolve_symbol): Add isymbuf param and use instead of
425 finfo->internal_syms.
426 (eval_symbol, evaluate_complex_relocation_symbols): Likewise.
427 (elf_link_input_bfd): Don't read symbols specially for
428 evaluate_complex_relocation_symbols.
429
06dcabb0
NC
4302007-09-26 Tristan Gingold <gingold@adacore.com>
431
432 * som.c (som_get_reloc_upper_bound): If there are no relocs return
433 enough space to hold a NULL pointer.
434
2e5b2d74
AM
4352007-09-26 Alan Modra <amodra@bigpond.net.au>
436
437 * elf64-ppc.c (ppc_build_one_stub): Correct rel_hdr.sh_size.
438
98e89a7d
AM
4392007-09-25 Alan Modra <amodra@bigpond.net.au>
440
2cb5950e
AM
441 * elf32-spu.c (struct spu_link_hash_table): Add ovly_load_r_symndx.
442 (spu_elf_size_stubs): Count stub relocs.
443 (write_one_stub): Emit relocs on overlay call stubs.
444
98e89a7d
AM
445 * elf32-spu.c (struct spu_link_hash_table): Add "stubs".
446 (spu_elf_link_hash_table_create): Init new field.
447 (spu_elf_size_stubs): Store sorted stub syms in new htab field
448 rather than local var.
449 (spu_elf_build_stubs): Iterate over htab stubs rather than
450 hash traversal.
451 (struct stubarr): Delete.
452 (allocate_spuear_stubs, populate_stubs, write_one_stub): Adjust.
453
e970b90a
DJ
4542007-09-24 Daniel Jacobowitz <dan@codesourcery.com>
455
456 * elf.c (assign_file_positions_for_load_sections): Trust
457 p_align_valid.
458 (copy_elf_program_header): Copy PT_NULL segments.
459
fad9eaf0
AM
4602007-09-24 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
461
462 * elf32-spu.c (is_indirect_branch): New function.
463 (find_function_stack_adjust): End scan on hitting indirect branch.
464 (sum_stack): Cast %v arg to correct type.
465
10569aeb
L
4662007-09-21 H.J. Lu <hongjiu.lu@intel.com>
467
468 * Makefile.am: Run "make dep-am".
469 * Makefile.in: Regenerated.
470
4ab20029
NC
4712007-09-21 Doug Kwan <dougkwan@google.com>
472
473 * Makefile.am (BFD32_LIBS): Add arange-set.lo.
474 (BFD32_LIBS_CFILES): Add arange-set.c.
475 (SOURCE_HFILES): Add arange-set.h
476 (dwarf2.lo): Add dependency upon arange-set.h.
477 (arange-set.lo): New target.
478 * Makefile.in: Regenerate.
479 * arange-set.c: New file.
480 * arange-set.h: New file.
481 * dwarf2.c: Include arange-set.h.
482 (struct dwarf2_debug) Add new fields comp_unit_count and
483 comp_unit_arange_set.
484 (struct comp_unit) Replace field arange with a new field arange_set.
485 (dwarf2_arange_set_allocate, dwarf2_arange_set_deallocate,
486 dwarf2_combine_arange_value, dwarf2_arange_set_new,
487 dwarf2_arange_set_with_value_new, dwarf2_comp_unit_arange_add): New
488 functions to utilize arange set in dwarf2.c.
489 (arange_add): Formatting change for a line longer than 80 characters.
490 (decode_line_info): Replace call target arange_add with
491 dwarf2_comp_unit_arange_add.
492 (read_rangelist_insert_arange_list,
493 read_rangelist_comp_unit_arange_add): New functions used as callbacks
494 for read_rangelist.
495 (read_rangelist): Change interface to accept a callback and data to
496 allow caller to select the action peformed on a new range list read.
497 (scan_unit_for_symbols): Use new interface of read_rangelist.
498 (parse_comp_unit): Create an arange set for each new comp unit. Use new
499 interface of read_rangelist. Replace call to arange_add with that to
500 dwarf2_comp_unit_arange_add.
501 (comp_unit_contains_address): Replace sequential search with a call to
502 arange_set_lookup_address, which can handles large set efficiently.
503 (stash_copy_local_aranges, stash_maybe_enable_arange_set,
504 stash_find_nearest_line_fast): New functions maintaining and using a
505 valued global arange set for all compilation units to speed up
506 bfd_dwarf2_find_nearest_line.
507 (find_line): Use global arange set. Replace sequential search over all
508 compilation units with a call to stash_find_nearest_line_fast. Add
509 book keeping to count number of compilation units. Replace empty
510 arange list test with a call to arange_set_empty_p.
511
6119d252
NC
5122007-09-21 Olivier Hainque <hainque@adacore.com>
513 Tristan Gingold <gingold@adacore.com>
514
515 * syms.c (_bfd_stab_section_find_nearest_line): Look at the
516 specific SOM sections for stabs if the regular ones are not found.
517 * som.h (struct somdata): Add a line_info field, to be used by
518 som_find_nearest_line.
519 * som.c (som_find_nearest_line): Implement using the bfd stabs
520 function above.
521
b55fd4d4
DJ
5222007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
523
524 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make sure .got
525 will be output.
526
a69898aa
AM
5272007-09-19 Alan Modra <amodra@bigpond.net.au>
528 Doug Kwan <dougkwan@google.com>
529
530 * bfd-in.h (bfd_hash_insert): Declare.
531 * bfd-in2.h: Regenerate.
532 * hash.c (bfd_hash_insert): New function. Split out from..
533 (bfd_hash_lookup): ..here.
534 * merge.c (sec_merge_hash_lookup): Use bfd_hash_insert.
535
14b1c01e
AM
5362007-09-18 Alan Modra <amodra@bigpond.net.au>
537
538 * elf.c (bfd_section_from_shdr): Check bfd_alloc return.
539 (elfcore_write_note): Check realloc return.
540 * elflink.c (_bfd_elf_link_find_version_dependencies): Check
541 bfd_zalloc return.
542 (_bfd_elf_link_assign_sym_version): Check bfd_malloc return.
543 (elf_link_add_object_symbols): Likewise.
544 (struct hash_codes_info): New.
545 (elf_collect_hash_codes): Return bfd_malloc error.
546 (struct collect_gnu_hash_codes): Add "error".
547 (elf_collect_gnu_hash_codes): Return bfd_malloc error.
548 (bfd_elf_size_dynamic_sections): Check return status of
549 _bfd_elf_link_find_version_dependencies.
550 (bfd_elf_size_dynsym_hash_dynstr): Adjust for elf_collect_hash_codes
551 and elf_collect_gnu_hash_codes changes.
552 (elf_sym_name_compare): Formatting.
553 (elf_fixup_link_order): Use bfd_malloc, not xmalloc.
554
b10a8ae0
L
5552007-09-17 H.J. Lu <hongjiu.lu@intel.com>
556
557 PR binutils/3281
558 PR binutils/5037
559 * elf-bfd.h (elf_obj_tdata): Remove relro.
560
561 * elf.c (get_program_header_size): Check info->relro instead
562 of elf_tdata (abfd)->relro.
563 (_bfd_elf_map_sections_to_segments): Likewise.
564 (assign_file_positions_for_load_sections): Don't set
565 PT_GNU_RELRO segment alignment here.
566 (assign_file_positions_for_non_load_sections): Properly set up
567 PT_GNU_RELRO segment for copying executable/shared library.
568 (rewrite_elf_program_header): Remove PT_GNU_RELRO segment.
569 (copy_elf_program_header): Set p_size and p_size_valid fields for
570 PT_GNU_RELRO segment.
571
041a1845
NC
5722007-09-17 Nick Clifton <nickc@redhat.com>
573
574 * po/fi.po: New Finnish translation.
575 * po/es.po: Updated Spanish translation.
576 * configure.in (ALL_LINGUAS): Add fi.
577 * configure: Regenerate.
578 * po/bfd.pot: Regenerate.
579
0bc43230
AM
5802007-09-15 Nick Clifton <nickc@redhat.com>
581
582 * bfd.c (_bfd_default_error_handler): fflush stdout.
583
3ea6b9a5
AM
5842007-09-14 Alan Modra <amodra@bigpond.net.au>
585
586 * opncls.c (find_separate_debug_file): Ensure bfd_set_error has
587 been called on all error return paths.
588 (bfd_fill_in_gnu_debuglink_section): Use bfd_malloc, not malloc.
589 Clear padding after filename
590
5a1dcb7e
AM
5912007-09-14 Alan Modra <amodra@bigpond.net.au>
592
593 * format.c (bfd_check_format_matches): Record matching targets even
594 when "matching" is NULL to allow bfd_associated_vector matches.
595 Consolidate error return code. Consolidate ok return code. Always
596 restore original target and format on error.
597
bce5e5c9
AM
5982007-09-14 Alan Modra <amodra@bigpond.net.au>
599
600 * configure.in: Delete BFD_HOST_LONG_LONG and bfd checks for
601 long long. Partly revert 2007-07-12 change, so that
602 BFD_HOST_64BIT_LONG and BFD_HOST_64BIT_LONG_LONG are set
603 independent of "void *" size.
604 * configure: Regenerate.
605 * config.in: Regenerate.
606 * Makefile.in: Regenerate.
607
01a3c213
AM
6082007-09-12 Alan Modra <amodra@bigpond.net.au>
609
610 * elf-bfd.h (struct elf_backend_data): Delete elf_backend_sprintf_vma
611 and elf_backend_fprintf_vma.
612 (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
613 * elf.c (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
614 * elfxx-target.h (elf_backend_sprintf_vma): Don't define.
615 (elf_backend_fprintf_vma): Likewise.
616 (elfNN_bed): Don't init removed fields.
617 * bfd.c (is32bit): New function.
618 (bfd_sprintf_vma, bfd_fprintf_vma): Use the above.
619
8d100c32
KH
6202007-09-11 Nathan Sidwell <nathan@codesourcery.com>
621
622 * archures.c: Add bfd_mach_mcf_isa_c_nodiv,
623 bfd_mach_mcf_isa_c_nodiv_mac & bfd_mach_mcf_isa_c_nodiv_emac.
624 * ieee.c (ieee_write_processor): Update coldfire architecture
625 list.
626 * bfd-in2.h: Rebuilt.
627 * cpu-m68k.c (arch_info_struct): Add isa_c nodiv architectures.
628 (m68k_arch_features): Likewise.
629 * elf32-m68k.c (elf32_m68k_object_p): Add EF_M68K_CF_ISA_C_NODIV.
630 (elf32_m68k_print_private_bfd_data): Likewise.
631
2f629d23
JB
6322007-09-11 Jan Beulich <jbeulich@novell.com>
633
634 * elf64-i386.c (elf64_i386_tls_transition): Remove redundant 'const'.
635 * elf64-x86_64.c (elf64_x86_64_tls_transition): Likewise.
636
2b953679
AM
6372007-09-08 Alan Modra <amodra@bigpond.net.au>
638
639 * elf64-ppc.c (func_desc_adjust): When resolving undefined
640 references to dot-symbols, transfer def_regular and
641 def_dynamic from the descriptor symbol.
642
78b8434d
AM
6432007-09-08 Alan Modra <amodra@bigpond.net.au>
644
645 * config.bfd: Set want64 for spu-*-elf.
646
98ece1b3
AM
6472007-09-08 Alan Modra <amodra@bigpond.net.au>
648
649 PR ld/2864, ld/5006
650 * elf.c (special_sections): Comment typo.
651 (elf_fake_sections): Force SHT_PROGBITS for sections that are
652 SHT_NOBITS if BFD section flags say they have contents.
653
5dff4664
MS
6542007-09-04 Michael Snyder <msnyder@access-company.com>
655
656 * elf32-bfin.c (howto_table): Cut and paste error?
657 Name field of reloc is wrong.
658
b427ea91
AM
6592007-09-04 Alan Modra <amodra@bigpond.net.au>
660
661 * elf32-spu.c (elf_howto_table): Formatting.
662
aff90a5f
L
6632007-09-02 H.J. Lu <hongjiu.lu@intel.com>
664
665 PR ld/4986
666 * dwarf2.c (new_line_sorts_after): Undo the last change.
667 (add_line_info): Only keep the last entry with the same address
668 and end sequence.
669
39934745
L
6702007-08-31 H.J. Lu <hongjiu.lu@intel.com>
671
672 PR ld/4986
673 * dwarf2.c (new_line_sorts_after): Also compare line number.
674
3a4743fe
NC
6752007-08-31 Jesse Michael <jmichael@suse.de>
676
677 * mach-o.c (bfd_mach_o_make_bfd_section): Fix test for non
678 zerofill sections.
679
5c5d6806
BW
6802007-08-28 David Heine <dlheine@tensilica.com>
681
682 * elf32-xtensa.c (compute_ebb_actions): Update removed_bytes when
683 narrowing instructions.
684
7f6a71ff 6852007-08-28 Mark Shinwell <shinwell@codesourcery.com>
39934745 686 Joseph Myers <joseph@codesourcery.com>
7f6a71ff
JM
687
688 * elf32-arm.c (elf32_arm_compare_mapping): Compare first on vma,
689 then on type.
690
0b3e17e9
NC
6912007-08-28 Robert Sebastian Gerus <arachnist@gmail.com>
692
693 * config.bfd: Add support for i[3-7]86-*-dragonfly*.
694 * configure.in: Likewise.
695 * configure: Regenerate.
696
b15fa79e
AM
6972007-08-25 Ulrich Weigand <uweigand@de.ibm.com>
698 Alan Modra <amodra@bigpond.net.au>
699
700 * elf.c (elfcore_grok_spu_note): New function.
701 (elf_parse_notes): Call it.
702
534a31f6
L
7032007-08-24 H.J. Lu <hongjiu.lu@intel.com>
704
705 * elf64-x86-64.c (elf64_x86_64_relocate_section): Adjust
706 indentation.
707
4a6636fb
PA
7082007-08-24 Pedro Alves <pedro_alves@portugalmail.pt>
709
710 * elf.c (elfcore_grok_win32pstatus): Remove HAVE_WIN32_PSTATUS_T
711 guard. Make it host independent.
712 (elfcore_grok_note): Remove HAVE_WIN32_PSTATUS_T guard around
713 NT_WIN32PSTATUS.
714
718175fa
JK
7152007-08-24 Jan Kratochvil <jan.kratochvil@redhat.com>
716
82fc7765
JK
717 * elf-bfd.h (struct elf_obj_tdata): New BUILD_ID_SIZE, BUILD_ID.
718 * elf.c (elfcore_read_notes): Split to ...
718175fa
JK
719 (elf_read_notes) ... here ...
720 (elf_parse_notes): ... and here. Check `bfd_get_format (abfd)' with
721 the former subfunctions called only for BFD_CORE.
722 Call ELFOBJ_GROK_GNU_NOTE for BFD_OBJECT files with the owner "GNU".
723 (_bfd_elf_make_section_from_shdr): Call ELF_PARSE_NOTES for SHT_NOTEs.
724 (bfd_section_from_phdr): Update the call for renamed ELFCORE_READ_NOTES.
725 (elfobj_grok_gnu_build_id, elfobj_grok_gnu_note): New functions.
726 Code advisory: Roland McGrath
727
f1187097
DJ
7282007-08-24 Daniel Jacobowitz <dan@codesourcery.com>
729
730 * elf64-mips.c (elf_backend_sign_extend_vma): Define.
731
a30e5f5f
AM
7322007-08-24 Alan Modra <amodra@bigpond.net.au>
733
734 * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Warning fix.
735
a351bca6
L
7362007-08-23 H.J. Lu <hongjiu.lu@intel.com>
737
738 * Makefile.am: Run "make dep-am".
739 * Makefile.in: Regenerated.
740
142411ca
L
7412007-08-23 H.J. Lu <hongjiu.lu@intel.com>
742
743 * elf32-i386.c: Include "bfd_stdint.h".
744 (elf_i386_rtype_to_howto): New function.
745 (elf_i386_info_to_howto_rel): Use it.
746 (x86_64_opcode16): New union type.
747 (elf_i386_check_tls_transition): New function.
748 (elf_i386_tls_transition): Updated to check transition and
749 issue an error if a transition isn't supported.
750 (elf_i386_check_relocs): Return FALSE if
751 elf_i386_tls_transition returns FALSE.
752 (elf_i386_gc_sweep_hook): Likewise.
753 (elf_i386_relocate_section): Likewise. Remove BFD_ASSERT
754 on TLS transitions.
755
756 * elf64-x86-64.c: Include "bfd_stdint.h".
757 (x86_64_opcode16): New union type.
758 (x86_64_opcode32): Likewise.
759 (elf64_x86_64_check_tls_transition): New function.
760 (elf64_x86_64_tls_transition): Updated to check transition and
761 issue an error if a transition isn't supported.
762 (elf64_x86_64_check_relocs): Return FALSE if
763 elf64_x86_64_tls_transition returns FALSE.
764 (elf64_x86_64_gc_sweep_hook): Likewise.
765 (elf64_x86_64_relocate_section): Likewise. Remove BFD_ASSERT
766 on TLS transitions.
767
eae50df2
L
7682007-08-22 H.J. Lu <hongjiu.lu@intel.com>
769
770 * elfxx-ia64.c: Convert to ISO C90 prototypes.
771 (elfNN_hpux_backend_section_from_bfd_section): Make it static.
772
9a2e389a
L
7732007-08-22 H.J. Lu <hongjiu.lu@intel.com>
774
775 * elf64-x86-64.c: Remove trailing whitespace.
776 * elfxx-ia64.c: Likewise.
777
2f3bf80a
L
7782007-08-21 H.J. Lu <hongjiu.lu@intel.com>
779
780 * elf32-i386.c (elf_i386_tls_transition): Accept a pointer
781 to ELF hash entry instead of an integer for local test.
782 (elf_i386_check_relocs): Updated.
783 (elf_i386_gc_sweep_hook): Likewise.
784 (elf_i386_relocate_section): Likewise.
785
786 * elf64-x86-64.c (elf64_x86_64_tls_transition): Accept a
787 pointer to ELF hash entry instead of an integer for local
788 test.
789 (elf64_x86_64_check_relocs): Updated.
790 (elf64_x86_64_gc_sweep_hook): Likewise.
791 (elf64_x86_64_relocate_section): Likewise.
792
3bfa9139
L
7932007-08-20 H.J. Lu <hongjiu.lu@intel.com>
794
795 * elf32-i386.c (elf_i386_tls_transition): Break long line.
796 * elf64-x86-64.c (elf64_x86_64_tls_transition): Likewise.
797
19ec0de7
JK
7982007-08-20 Jan Kratochvil <jan.kratochvil@redhat.com>
799
800 * elfxx-target.h [ELF_COMMONPAGESIZE && ELF_MAXPAGESIZE]
801 (ELF_MINPAGESIZE): Fixed its size guess. Sanity checked its size.
802 (ELF_COMMONPAGESIZE, ELF_MAXPAGESIZE): Sanity checked their size.
803
75ea2736
NC
8042007-08-20 Nick Clifton <nickc@redhat.com>
805
806 * elflink.c (elf_fixup_link_order): Rewrite conversion of
807 s->alignment_power into an offset mask in order to avoid a gcc
808 error message.
809
7e976ae4
JJ
8102007-08-17 Jakub Jelinek <jakub@redhat.com>
811
812 * config.bfd: Handle sparcv*-*-linux-* the same as sparc-*-linux-*.
813 Change sparc64-*-linux-* to sparc64*-*-linux-*.
814
e9f27433
AM
8152007-08-17 Alan Modra <amodra@bigpond.net.au>
816
817 * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
818
2b05f1b7
L
8192007-08-16 H.J. Lu <hongjiu.lu@intel.com>
820
821 * elf.c: Revert last change.
822
94b11780
L
8232007-08-16 H.J. Lu <hongjiu.lu@intel.com>
824
825 * elf.c (get_segment_type): Change PT_GNU_STACK to PT_GNU_ATTR.
826 (bfd_section_from_phdr): Likewise.
827 (get_program_header_size): Likewise. Add a PT_GNU_ATTR segment
828 if there is an attribute section.
829 (_bfd_elf_map_sections_to_segments): Likewise.
830 (IS_SECTION_IN_INPUT_SEGMENT): Likewise.
831
a3fadc9a
L
8322007-08-14 H.J. Lu <hongjiu.lu@intel.com>
833
834 PR ld/4918
835 * elf32-i386.c (elf_i386_relocate_section): Allow R_386_PC32
836 on ___tls_get_addr for GD->LE/LD->LE transitions when not
837 building shared library.
838
839 * elf64-x86-64.c (elf64_x86_64_relocate_section): Allow
840 R_X86_64_PC32 on __tls_get_addr for GD->LE/LD->LE transitions
841 when not building shared library.
842
3fec76aa
JK
8432007-08-14 Jan Kratochvil <jan.kratochvil@redhat.com>
844
845 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): LOADBASE is now
846 initialized only on the first PT_LOAD. New variable LOADBASE_SET.
847 Removed PF_R checking for IA-64 vDSOs as redundant now.
848 Code advisory: Roland McGrath
849
8275b357
RS
8502007-08-13 Richard Sandiford <richard@codesourcery.com>
851
852 * elfxx-mips.c (mips_elf_link_hash_table): Add computed_got_sizes.
853 (mips_elf_record_global_got_symbol): Increment local_gotno for
854 each forced-local symbol.
855 (_bfd_mips_elf_check_relocs): Pass forced-local call symbols to
856 mips_elf_record_global_got_symbol for VxWorks too.
857 (_bfd_mips_elf_always_size_sections): Set computed_got_sizes
858 to true after computing the GOT size.
859 (_bfd_mips_elf_hide_symbol): Increase local_gotno whenever
860 got.offset == 1. Only adjust global_gotno if computed_got_sizes.
861 For VxWorks, add a local entry when hiding a symbol that needs a
862 plt but has not been marked as needing a global got entry.
863 (_bfd_mips_elf_link_hash_table_create): Set computed_got_sizes to
864 false.
865
649aeae3
DJ
8662007-08-12 Daniel Jacobowitz <dan@codesourcery.com>
867
868 * coffgen.c (coff_get_normalized_symtab): Correct cast.
869
3dea8fca
AM
8702007-08-13 Alan Modra <amodra@bigpond.net.au>
871
872 * elf.c (elf_modify_segment_map): Add remove_empty_load param.
873 Don't remove empty PT_LOAD header if false.
874 (_bfd_elf_map_sections_to_segments): If user phdrs, pass false
875 to elf_modify_segment_map.
876 (assign_file_positions_for_load_sections): Pass false to
877 elf_modify_segment_map.
878
ac2df442
AM
8792007-08-13 Alan Modra <amodra@bigpond.net.au>
880
881 * elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define.
882 Update stub comments.
883 (build_plt_stub): Build two variants, one without "addis".
884 (ppc_build_one_stub): Build stubs without "addis" if possible.
885 (ppc_size_one_stub): Size new stubs.
886
2f964f43
RS
8872007-08-11 Richard Sandiford <richard@codesourcery.com>
888
889 * config.bfd (sh-*-vxworks): Define targ_underscore to "yes".
890
6b8f0fd5
MS
8912007-08-09 Michael Snyder <msnyder@access-company.com>
892
893 * aoutx.h (aout_get_external_symbols): Return if count is zero.
894
6d33f217
L
8952007-08-09 H.J. Lu <hongjiu.lu@intel.com>
896
897 PR ld/4909
898 * elf.c (print_segment_map): New function.
899 (assign_file_positions_for_load_sections): Call print_segment_map
900 when a section can't be allocated in segment.
901
c309eac2
JK
9022007-08-09 Jan Kratochvil <jan.kratochvil@redhat.com>
903
904 * opncls.c (bfd_openr_iovec): Fix the OPEN parameter macro expansion.
905
e6902efc
NC
9062007-08-07 Nick Clifton <nickc@redhat.com>
907
908 * po/bfd.pot: Updated template.
909 * po/BLD-POTFILES.in: Regenerate.
910
d5191d0c
AM
9112007-08-07 Alan Modra <amodra@bigpond.net.au>
912
913 * elf.c: (_bfd_elf_make_section_from_phdr): Properly handle
914 bss segments.
915
5eda1c47
DJ
9162007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
917
918 * Makefile.am (BUILD_HFILES): Clean bfd_stdint.h.
919 * Makefile.in: Regenerated.
920
be118e79
DJ
9212007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
922
923 * configure.in: Update version to 2.18.50.
924 * configure: Regenerated.
925
bd97cb95
DJ
9262007-08-06 Paul Brook <paul@codesourcery.com>
927
928 * elf32-arm.c (elf32_arm_link_hash_entry): Add
929 plt_maybe_thumb_refcount.
930 (elf32_arm_link_hash_newfunc): Set plt_maybe_thumb_refcount.
931 (elf32_arm_copy_indirect_symbol): Ditto.
932 (elf32_arm_adjust_dynamic_symbol): Ditto.
933 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_THM_JUMP24.
934 (arm_add_to_rel): Ditto.
935 (elf32_arm_final_link_relocate): Merge R_ARM_THM_JUMP24 with
936 R_ARM_THM_CALL. Handle R_ARM_THM_JUMP19 against a PLT stub.
937 (elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
938 for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
939 (elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
940 and R_ARM_THM_JUMP19.
941 (allocate_dynrelocs): Use plt_maybe_thumb_refcount.
942 (elf32_arm_finish_dynamic_symbol): Ditto.
943 (elf32_arm_output_plt_map): Ditto.
944
c981028a
DJ
9452007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
946
947 * elf.c (rewrite_elf_program_header): Handle sections not sorted
948 by address.
949 (copy_elf_program_header): Likewise.
950
f7231afc
L
9512007-08-04 H.J. Lu <hongjiu.lu@intel.com>
952
953 * elf-bfd.h (xvec_get_elf_backend_data): Add const.
954
955 * elfcode.h (elf_object_p): Use xvec_get_elf_backend_data.
956 * elfcore.h (elf_core_file_p): Likewise.
957
bd33be6e
L
9582007-08-02 H.J. Lu <hongjiu.lu@intel.com>
959
960 * coffcode.h (ALIGN_SET): Removed.
961 (ELIFALIGN_SET): Likewise.
962 (coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES,
963 IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES,
964 IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES,
965 IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES.
966
dcf6c779
MS
9672007-08-01 Michael Snyder <msnyder@access-company.com>
968
9b0ec667
MS
969 * vms-tir.c (new_section): Fix cut and paste error.
970
20c6e70e
MS
971 * aoutx.h (aout_link_add_symbols): Return if count is zero.
972
dcf6c779
MS
973 * elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
974 pointer must be non-null.
975
e708816d
NC
9762007-08-01 Tristan Gingold <gingold@adacore.com>
977
978 * coffcode.h (coff_sort_func_alent): New function.
979 (coff_slurp_line_table): Sort line table if not already sorted.
980
55b581a6
JJ
9812007-08-01 Jakub Jelinek <jakub@redhat.com>
982
983 * elf.c (_bfd_elf_map_sections_to_segments): Work around buggy
984 GCC 3.4.x warning.
985
ad756e3f
AM
9862007-08-01 Alan Modra <amodra@bigpond.net.au>
987
988 * aoutx.h (swap_ext_reloc_in): Set howto to NULL for unknown
989 r_type.
990 (swap_std_reloc_in): Likewise.
991 (aout_link_input_section_std): Likewise. Return with an error
992 on unexpected relocation type.
993 (aout_link_input_section_ext): Likewise.
994
f6e688f7
AM
9952007-08-01 Alan Modra <amodra@bigpond.net.au>
996
997 PR4694
998 * aoutx.h (final_link): Write a zero in first word of
999 stringtab if no symbols rather than corrupting last byte
1000 of text/data.
1001
1c5265b5
JJ
10022007-07-31 Jakub Jelinek <jakub@redhat.com>
1003
1004 * elf.c (get_program_header_size): Adjacent loadable .note*
1005 sections need just one PT_NOTE segment.
1006 (_bfd_elf_map_sections_to_segments): Likewise.
1007
9ee2139f
MS
10082007-07-30 Michael Snyder <msnyder@access-company.com>
1009
1010 * coffgen.c (_bfd_coff_read_internal_relocs): Revert change of
1011 2007-07-26. Buffer still in use, can't be freed.
1012
c6aa130f
MS
10132007-07-27 Michael Snyder <msnyder@access-company.com>
1014
d63388ff
MS
1015 * cofflink.c (coff_link_add_symbols): Return if count is zero.
1016
50a39e97
MS
1017 * coff-i386.c (coff_i386_rtype_to_howto): Off by one error.
1018
87b32780
MS
1019 * aoutx.h (slurp_symbol_table): Return if count == 0.
1020
9d7038d3
MS
1021 * coffgen.c (_bfd_coff_read_internal_relocs): Return if count is zero.
1022
c6aa130f
MS
1023 * elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
1024
170bfeb9
L
10252007-07-27 H.J. Lu <hongjiu.lu@intel.com>
1026
1027 * config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
1028
507f5898
MS
10292007-07-26 Michael Snyder <msnyder@access-company.com>
1030
1031 * coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
a6626e8c
MS
1032
1033 * linker.c (bfd_section_already_linked_table_insert): Change
1034 return type from void to boolean. Return FALSE on failure.
1035 (_bfd_generic_section_already_linked): Test return value of
1036 bfd_section_already_linked_table_insert, call fatal on error.
1037
1038 * elflink.c (_bfd_elf_section_already_linked): Test return value
1039 of bfd_section_already_linked_table_insert, call fatal on error.
1040
1041 * libbfd-in.h (bfd_section_already_linked_table_insert): Update
1042 return type to bfd_boolean.
1043
1044 * libbfd.h: Regenerate.
1045
36e44abd
AN
10462007-07-26 Adam Nemet <anemet@caviumnetworks.com>
1047
1048 * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
1049 bfd_slurp_armap): Improve function comment.
1050
b7fd5ce1
MS
10512007-07-26 Michael Snyder <msnyder@access-company.com>
1052
2d4f3e92
MS
1053 * linker.c (already_linked_newfunc): Check for NULL return from
1054 bfd_hash_allocate.
1055
ac38308c
MS
1056 * coffgen.c (fixup_symbol_value): Guard against null;
1057 bfd_is_com_section will dereference the section pointer.
1058
c82a7c57
MS
1059 * syms.c (bfd_decode_symclass): Guard against NULL, since
1060 bfd_is_com_section dereferences the pointer.
1061
3d7b34d8
MS
1062 * srec.c (srec_scan): Check for EOF (critical because return value
1063 will be used as array index).
1064
44c62d9e
MS
1065 * coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
1066 are not to be cached, free the temporary buffer.
1067
078c4bfc
MS
1068 * aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
1069 or count == zero.
1070
814b5378
MS
1071 * tekhex.c (first_phase): Check return value for null.
1072
b7fd5ce1
MS
1073 * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
1074 pointer increment.
1075
b9da616a
AM
10762007-07-26 Alan Modra <amodra@bigpond.net.au>
1077
33774f08
AM
1078 * elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
1079 check on dynobj. Remove bed shadow.
1080
e62071b6
AM
1081 * srec.c (srec_get_section_contents): Return immediately on
1082 count zero. Check that offset and count are within section.
1083 * libbfd.c (_bfd_generic_get_section_contents): Check that
1084 offset + count does not overflow.
1085
b9da616a
AM
1086 * srec.c (srec_canonicalize_symtab): Don't alloc when symcount
1087 is zero. Correct return value on error.
1088 * mmo.c (mmo_canonicalize_symtab): Likewise.
1089 * binary.c (binary_canonicalize_symtab) Correct return on error.
1090
c2c96631
TS
10912007-07-26 Thiemo Seufer <ths@mips.com>
1092
1093 * bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
1094
d4947150
AM
10952007-07-26 Alan Modra <amodra@bigpond.net.au>
1096
1097 * reloc.c (bfd_generic_get_relocated_section_contents): Avoid
1098 bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
1099 says there are no relocs.
1100
bd210d54 11012007-07-26 Doug Kwan <dougkwan@google.com>
d4947150 1102
bd210d54
NC
1103 Speed up bfd_dwarf2_find_line.
1104 * dwarf2.c (struct dwarf2_debug): Add new fields to support function
1105 and variable info hash tables. Add last_comp_unit, info_hash_count,
1106 funcinfo_hash_table, varinfo_hash_table, hash_units_head.
1107 (struct comp_unit): Add prev_unit, cached.
1108 (struct info_list_node, struct info_hash_entry,
1109 struct info_hash_table): New.
1110 (info_hash_table_newfunc, create_info_hash_table,
1111 insert_info_hash_table, lookup_info_hash_table): New functions
1112 implementing function and variable info hash tables.
1113 (scan_unit_for_symbols): Add checks to make sure hash tables are
1114 consistent with compilation units.
1115 (comp_unit_maybe_decode_line_info): New function.
1116 (comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
1117 (reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info,
1118 info_hash_lookup_funcinfo, info_hash_lookup_varinfo,
1119 stash_maybe_update_info_hash_table, stash_verify_info_hash_table,
1120 stash_maybe_enable_info_hash_tables, stash_find_line_fast): New
1121 functions. Make use of info hash tables to speed up
1122 bfd_dwarf2_find_line.
1123 (find_line): Use hash table for faster lookup if it is turned on.
1124 Also add code to maintain bi-directional link in comp units.
1125
353c5574
MS
11262007-07-25 Michael Snyder <msnyder@access-company.com>
1127
1128 * coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
1129 if size == 0; return and avoid possible null pointer issues.
1130
f08c429c
AM
11312007-07-25 Alan Modra <amodra@bigpond.net.au>
1132
1133 * linker.c (generic_link_add_symbol_list): Warning fix.
1134
d0f16d5e
MS
11352007-07-24 Michael Snyder <msnyder@access-company.com>
1136
f6eea5ae
MS
1137 * opncls.c (bfd_make_writable): Check return from bfd_malloc.
1138
d0f16d5e
MS
1139 * elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
1140 on bfd_malloc error rather than goto error_return.
1141
4d269e42
AM
11422007-07-24 Alan Modra <amodra@bigpond.net.au>
1143
1144 * elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
1145 _bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
1146 _bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
1147 _bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
1148 bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
1149 bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
1150 bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
1151 bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
1152 struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
1153 elf_sym_name_compare, elf_create_symbuf,
1154 bfd_elf_match_symbols_in_sections,
1155 _bfd_elf_match_sections_by_type): Move to here..
1156 * elf.c: ..from here.
1157
a26587ba
RS
11582007-07-23 Richard Sandiford <richard@codesourcery.com>
1159
1160 * elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
1161 of weakdef->root.type if weakdef has no regular definition.
1162
0e53d9da
AN
11632007-07-22 Adam Nemet <anemet@caviumnetworks.com>
1164
1165 * elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
1166 small_data_overflow_reported.
1167 (_bfd_mips_elf_link_hash_table_create): Initialize it.
1168 (_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
1169 small-data section overflow.
1170
6b33789f
NC
11712007-07-19 Doug Kwan <dougkwan@google.com>
1172
4d269e42
AM
1173 PR binutils/4797
1174 * dwarf2.c: (find_line) Do not dereference functionname_ptr if
1175 do_line is true.
6b33789f 1176
13161072 11772007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 1178
13161072
BW
1179 * elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
1180 non-ELF sections.
4d269e42 1181
e29297b7 11822007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 1183
e29297b7
BW
1184 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
1185 vma and size for dynamic tags from the output sections.
4d269e42 1186
a5d1b3b5
AM
11872007-07-18 Alan Modra <amodra@bigpond.net.au>
1188
1189 * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
1190 * elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
1191 symbol. Instead cache ELF section index. Remove redundant
1192 checks of st_shndx.
1193
d955dada
MF
11942007-07-15 Mike Frysinger <vapier@gentoo.org>
1195
1196 * trad-core.c (NBPG): If not defined, set to getpagesize().
1197
979dc3bc
RM
11982007-07-13 Roland McGrath <roland@redhat.com>
1199
1200 * elf-bfd.h (struct elf_obj_tdata): Revert last change.
1201 Add after_write_object_contents, after_write_object_contents_info.
1202 * elf.c (_bfd_elf_write_object_contents): Revert last change.
1203 Instead, call after_write_object_contents if set.
1204
d2df793a
NC
12052007-07-12 Kai Tietz <kai.tietz@onevision.com>
1206
1207 * bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New.
1208 (BFD_HOSTPTR_T): Host pointer type for casting a
1209 pointer to an integer type.
1210 (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
1211 (sprintf_vma, fprintf_vma): Add support for long long prints.
1212 * bfd-in2.h: Regenerate.
1213 * configure.in: (BFD_HOST_64BIT_LONG_LONG): New.
1214 (BFD_HOSTPTR_T): Host pointer type for casting a
1215 pointer to an integer type. Default is "unsigned long".
1216 (AC_CHECK_SIZEOF(void *)): New.
1217 (host64): Set it if the pointer size is 8.
1218 * configure: Regenerate.
1219 * config.in: Add macro SIZEOF_VOID_P.
1220 * coffcode.h: Replace host ptr type assuming "long" with
1221 bfd_hostptr_t type.
1222 * coffgen.c: Likewise.
1223 * elf-eh-frame.c: Likewise.
1224 * peicode.h: Likewise.
1225
a3a4ddad
L
12262007-07-10 H.J. Lu <hongjiu.lu@intel.com>
1227
1228 * Makefile.in: Regenerated.
1229
329b43c4
L
12302007-07-10 H.J. Lu <hongjiu.lu@intel.com>
1231
1232 PR binutils/4756
1233 * simple.c (bfd_simple_get_relocated_section_content): Don't
1234 apply relocation on executable and shared library.
1235
cfd2c773
NS
12362007-07-10 Nathan Sidwell <nathan@codesourcery.com>
1237
1238 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
1239 copy relocs on vxworks.
1240
1489a3a0
AM
12412007-07-10 Alan Modra <amodra@bigpond.net.au>
1242
1243 * elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
1244 * elf64-alpha.c (alpha_elf_size_info): Likewise.
1245 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
1246 * elf64-mips.c (mips_elf64_size_info): Likewise.
1247 * elf64-s390.c (s390_elf64_size_info): Likewise.
1248 * elf64-sparc.c (elf64_sparc_size_info): Likewise.
1249
00cbee0a
L
12502007-07-09 H.J. Lu <hongjiu.lu@intel.com>
1251
1252 * elflink.c (bfd_elf_record_link_assignment): Handle indirect
1253 symbol.
1254 (_bfd_elf_merge_symbol): Properly update normal symbol when
1255 overriding the versioned symbol from a dynamic library.
1256
fd2f25da
RM
12572007-07-09 Roland McGrath <roland@redhat.com>
1258
1259 * elf-bfd.h (struct elf_obj_tdata): Add members
1260 emit_note_gnu_build_id and note_gnu_build_id_sec.
1261 * elf.c (_bfd_id_note_section_size): New global function.
1262 (read_hex, _bfd_elf_write_build_id_section): New static functions.
1263 (_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
1264 if emit_note_gnu_build_id is set.
1265 * Makefile.am (elf.lo): Update dependencies.
1266
1267 * elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
1268 (bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
1269 * elfcode.h (elf_checksum_contents): New macro and function.
1270 (NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
1271
9af2a943
AM
12722007-07-06 Michael Snyder <msnyder@access-company.com>
1273
1274 * elflink.c (elf_link_add_object_symbols): Return via
1275 error_free_vers on "notice" failure.
1276
a93221e5
L
12772007-07-04 H.J. Lu <hongjiu.lu@intel.com>
1278
1279 * peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
1280 if arch is unknown.
1281
b4928193
NC
12822007-07-04 Nick Clifton <nickc@redhat.com>
1283
1284 Import this patch from an internal tree:
9af2a943 1285
b4928193
NC
1286 2001-07-17 Richard Henderson <rth@redhat.com>
1287
1288 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
1289 compensate for high bit set in R_MEP_LOW16.
1290
3cfad14c
JM
12912007-07-03 Joseph Myers <joseph@codesourcery.com>
1292
1293 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
1294 input attributes if value has been copied.
1295
cd123cb7
NC
12962007-07-03 Nick Clifton <nickc@redhat.com>
1297
1298 * COPYING: Replace with GPLv3 text.
1299 * aix386-core.c: Update copyright notice to refer to GPLv3.
1300 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
1301 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
1302 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
1303 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
1304 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
1305 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
1306 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
1307 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
1308 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
1309 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
1310 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
1311 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
1312 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
1313 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
1314 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
1315 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
1316 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
1317 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
1318 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
1319 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
1320 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
1321 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
1322 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
1323 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
1324 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
1325 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
1326 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
1327 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
1328 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
1329 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
1330 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
1331 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
1332 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
1333 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
1334 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
1335 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
1336 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
1337 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
1338 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
1339 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
1340 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
1341 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
1342 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
1343 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
1344 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
1345 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
1346 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
1347 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
1348 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
1349 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
1350 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
1351 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
1352 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
1353 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
1354 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
1355 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
1356 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
1357 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
1358 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
1359 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
1360 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
1361 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
1362 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
1363 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
1364 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
1365 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
1366 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
1367 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
1368 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
1369 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
1370 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
1371 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
1372 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
1373 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
1374 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
1375 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
1376 xtensa-modules.c: Likewise.
1377 * elf32-sh-relocs.h: Add copyright notice.
1378 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
1379 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
1380 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
1381 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
1382 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
1383 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
1384 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
1385 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
1386 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
1387
741d6ea8
JM
13882007-07-02 Joseph Myers <joseph@codesourcery.com>
1389
1390 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
1391 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
1392 * elf64-mips.c (mips_elf64_howto_table_rela): Support
1393 R_MIPS_TLS_DTPREL64.
1394
ae351704
AM
13952007-07-02 Alan Modra <amodra@bigpond.net.au>
1396
1397 * Makefile.am: Run "make dep-am".
1398 * Makefile.in: Regenerate.
1399 * aclocal.m4: Regenerate.
1400 * config.in: Regenerate.
1401 * po/SRC-POTFILES.in: Regenerate.
1402 * po/bfd.pot: Regenerate.
1403
3e5484db
AM
14042007-07-02 Alan Modra <amodra@bigpond.net.au>
1405
1406 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
1407 symsec != NULL tests.
1408
08a40648
AM
14092007-07-02 Alan Modra <amodra@bigpond.net.au>
1410
1411 PR 4712
1412 * elf.c (assign_file_positions_for_load_sections): Adjust lma
1413 by p_vaddr_offset.
1414
86b57e31
L
14152007-06-30 H.J. Lu <hongjiu.lu@intel.com>
1416
1417 * aclocal.m4: Regenerated.
1418 * Makefile.in: Likewise.
1419
34c8bcba
JM
14202007-06-29 Joseph Myers <joseph@codesourcery.com>
1421
1422 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
1423 (ppc_elf_merge_private_bfd_data): Call it.
1424
2cf19d5c
JM
14252007-06-29 Joseph Myers <joseph@codesourcery.com>
1426
1427 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
1428 (_bfd_mips_elf_merge_private_bfd_data): Call it.
1429
104d59d1
JM
14302007-06-29 Joseph Myers <joseph@codesourcery.com>
1431
1432 * elf-attrs.c: New.
1433 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
1434 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
1435 (elf-attrs.lo): Generate dependencies.
1436 * Makefile.in: Regenerate.
1437 * configure.in (elf): Add elf-attrs.lo.
1438 * configure: Regenerate.
1439 * elf-bfd.h (struct elf_backend_data): Add entries for object
1440 attributes.
1441 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
1442 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
1443 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
1444 New.
1445 (struct elf_obj_tdata): Add entries for object attributes.
1446 (elf_known_obj_attributes, elf_other_obj_attributes,
1447 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
1448 New.
1449 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
1450 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
1451 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
1452 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
1453 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
1454 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
1455 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
1456 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
1457 (bfd_section_from_shdr): Handle attributes sections.
1458 * elflink.c (bfd_elf_final_link): Handle attributes sections.
1459 * elfxx-target.h (elf_backend_obj_attrs_vendor,
1460 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
1461 elf_backend_obj_attrs_section_type): New.
1462 (elfNN_bed): Update.
1463 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
1464 aeabi_attribute_list): Remove.
1465 (struct elf32_arm_obj_tdata): Remove object attributes fields.
1466 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
1467 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
1468 Update for new object attributes interfaces.
1469 (uleb128_size, is_default_attr, eabi_attr_size,
1470 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
1471 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
1472 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
1473 elf32_arm_add_eabi_attr_int, attr_strdup,
1474 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
1475 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
1476 to generic code in elf-attrs.c.
1477 (elf32_arm_obj_attrs_arg_type): New.
1478 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
1479 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
1480 (bfd_elf32_bfd_final_link): Remove.
1481 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
1482 elf_backend_obj_attrs_arg_type,
1483 elf_backend_obj_attrs_section_type): New.
1484 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
1485 attributes.
1486 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
1487 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
1488 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
1489 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
1490 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
1491 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
1492
5ab79981
PB
14932007-06-29 Paul Brook <paul@codesourcery.com>
1494
1495 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
1496 call veneers for call relocations against undefined symbols.
1497 (elf32_arm_final_link_relocate): Turn call to undefined symbol
1498 into a jump to the next instruction.
1499
c6aa130f 15002007-06-29 Michael Snyder <msnyder@access-company.com>
32e8a950
NC
1501
1502 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
1503
3d3d428f
NC
15042007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
1505
1506 * Makefile.am: Add cr16 related entry
1507 * Makefile.in: Regenerate
1508 * archures.c: Add bfd_cr16_arch
1509 * bfd-in2.h: Regenerate
1510 * config.bfd: Add cr16-elf
1511 * configure.in: Add bfd_elf32_cr16_vec
1512 * configure: Regenerate.
1513 * targets.c: Added cr16 related information
1514 * cpu-cr16.c: New file.
1515 * elf32-cr16.c: New file.
1516 * reloc.c: Added cr16 relocs.
1517
c55fe096
AM
15182007-06-29 Alan Modra <amodra@bigpond.net.au>
1519
1520 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
1521 message for undefined version nodes.
1522 (elf_gc_sweep): Don't warn when zero size sections are
1523 removed.
1524
375de94a
AM
15252007-06-29 Nathan Froyd <froydnj@codesourcery.com>
1526
1527 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
1528 types.
1529
7d3287cb
AM
15302007-06-29 Alan Modra <amodra@bigpond.net.au>
1531
1532 * elf32-spu.c (spu_elf_fake_sections): New function.
1533 (elf_backend_fake_sections): Define.
1534
6a3cd2b4
AM
15352007-06-29 Alan Modra <amodra@bigpond.net.au>
1536
1537 * elf.c (assign_file_positions_for_load_sections): Use elf
1538 section header sh_size rather than bfd section size, simplifying
1539 .tbss handling.
1540
bf988460
AM
15412007-06-29 Alan Modra <amodra@bigpond.net.au>
1542
36fc76ae 1543 PR ld/4701
bf988460
AM
1544 * elf.c (assign_file_positions_for_load_sections): Ensure bss
1545 segments meet gABI alignment requirements. Don't allocate
1546 file space for bss sections in a segment also containing file
1547 or program headers.
1548
60b31e8d
AM
15492007-06-27 Alan Modra <amodra@bigpond.net.au>
1550
cc481421
AM
1551 * bfd.c (struct bfd): Rename "next" to "archive_next".
1552 * archive.c: Rename uses throughout file.
1553 * archive64.c: Likewise.
1554 * coff-rs6000.c: Likewise.
1555 * ecoff.c: Likewise.
1556 * som.c: Likewise.
1557 * bfd-in2.h: Regenerate.
1558
60b31e8d
AM
1559 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
1560 input bfds.
58eb693e 1561 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 1562
bec42b15
NC
15632007-06-26 H.J. Lu <hongjiu.lu@intel.com>
1564
1565 * dwarf2.c (find_line): New. Contains the duplicated code from:
1566 (_bfd_dwarf2_find_nearest_line): Use it.
1567 (_bfd_dwarf2_find_line): Use it.
1568
3d3e6f9a
JM
15692007-06-26 Joseph Myers <joseph@codesourcery.com>
1570
1571 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
1572
b314ec0e
RS
15732007-06-25 Richard Sandiford <richard@codesourcery.com>
1574
1575 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
1576 to be used for calls from MIPS16 code.
1577
0d4a1476
AS
15782007-06-23 Andreas Schwab <schwab@suse.de>
1579
1580 * configure.in (--with-separate-debug-dir): New option.
1581 * configure: Regenerate.
1582 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
1583 * Makefile.in: Regenerate.
1584 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
1585 bfd_follow_gnu_debuglink.
1586 (_bfd_dwarf2_find_line): Likewise.
1587
0d161102
NC
15882007-06-22 Nick Clifton <nickc@redhat.com>
1589
1590 * dwarf2.c: Add support for reading in debug information via a
1591 .gnu_debuglink section:
1592 (struct dwarf2_debug): Add bfd field to record the bfd containing
1593 the debug info.
1594 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
1595 field in the dwarf2_debug structure.
1596 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
1597 be found in the current bfd call bfd_follow_gnu_debuglink to see
1598 if another file contains the debug information. If it does, open
1599 it and continue.
1600 (_bfd_dwarf2_find_line): Likewise.
1601
293a0124
L
16022007-06-19 H.J. Lu <hongjiu.lu@intel.com>
1603
1604 PR ld/4590
1605 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
1606 when removing duplicated entries.
1607 (get_dyn_sym_info): Initialize the got_offset field to -1.
1608 Update call to sort_dyn_sym_info.
1609 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
1610 array of addend and remove duplicates.
1611
dc1f3d8a
L
16122007-06-18 H.J. Lu <hongjiu.lu@intel.com>
1613
1614 * libpei.h (_bfd_XXi_final_link_postscript): Remove
1615 duplication.
1616 (bfd_target_pei_p): New.
1617 (bfd_target_pei_arch): New
1618 (bfd_target_efi_p): Likewise.
1619 (bfd_target_efi_arch): New
1620 (bfd_pe_executable_p): Use bfd_target_pei_p and
1621 bfd_target_efi_p.
1622
1623 * peicode.h (arch_type): New enum.
1624 (pe_arch): New function.
1625 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
1626 if there is an EFI/PE target.
1627
79887925
L
16282007-06-14 H.J. Lu <hongjiu.lu@intel.com>
1629
1630 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
1631
1632 * acinclude.m4: Don't include m4 files. Remove libtool
1633 kludge.
1634
1635 * Makefile.in: Regenerated.
79887925
L
1636 * aclocal.m4: Likewise.
1637 * configure: Likewise.
1638
99ded152
BW
16392007-06-11 Sterling Augustine <sterling@tensilica.com>
1640 Bob Wilson <bob.wilson@acm.org>
bf988460 1641
99ded152
BW
1642 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
1643 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
1644 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
1645 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
1646 (xtensa_get_property_predef_flags): Likewise.
1647 (compute_removed_literals): Pass new arguments to is_removable_literal.
1648 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
1649 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 1650
cbf2cba4
RS
16512007-05-31 Richard Sandiford <rsandifo@nildram.co.uk>
1652
1653 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
1654 type (3) single-GOT entry, read tls_type from the hash table entry
1655 rather than the GOT entry.
1656
a9a4c53e
AM
16572007-06-01 Alan Modra <amodra@bigpond.net.au>
1658
1659 * simple.c (bfd_simple_get_relocated_section_contents): Init
1660 input_bfds_tail.
1661
02bf8d82
AM
16622007-05-30 Alan Modra <amodra@bigpond.net.au>
1663
42bb2e33
AM
1664 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
1665 created by objcopy --only-keep-debug.
1666 (_bfd_elf_init_private_section_data): Only change elf_section_type
1667 if it is SHT_NULL.
1668
02bf8d82
AM
1669 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
1670 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
1671 and sh_flags instead of bfd section flags. Delete voff and code
1672 keeping nobits segments aligned.
1673
4e591bc1
EC
16742007-05-25 Eric Christopher <echristo@apple.com>
1675
1676 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
1677 Check that sym_sec isn't NULL before accessing.
1678
37ad9514
SE
16792007-05-24 Steve Ellcey <sje@cup.hp.com>
1680
1681 * Makefile.in: Regnerate.
1682 * configure: Regenerate.
1683 * aclocal.m4: Regenerate.
1684 * doc/Makefile.in: Regenerate.
1685
91a5743d
PB
16862007-05-22 Paul Brook <paul@codesourcery.com>
1687
1688 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
1689 with sec and sec_shndx.
1690 (elf32_arm_ouput_plt_map_sym): Use them.
1691 (elf32_arm_output_arch_local_syms): Output mapping symbols for
1692 interworking glue.
1693
26079076
PB
16942007-05-18 Paul Brook <paul@codesourcery.com>
1695
1696 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
1697 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
1698 (record_arm_to_thumb_glue): Add v5t non-pic glue.
1699 (elf32_arm_create_thumb_stub): Ditto.
1700
91ac5911
L
17012007-05-16 H.J. Lu <hongjiu.lu@intel.com>
1702 Alan Modra <amodra@bigpond.net.au>
1703
1704 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
1705 section to the minimum alignment.
1706
027297b7
L
17072007-05-15 H.J. Lu <hongjiu.lu@intel.com>
1708 Alan Modra <amodra@bigpond.net.au>
1709
1710 PR ld/4504
1711 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
1712 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
1713
1714 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
1715 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
1716 bss section.
1717 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
1718 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
1719 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
1720 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
1721 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
1722 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
1723 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1724 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1725 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1726 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
1727 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
1728 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1729 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1730 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
1731 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
1732 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
1733 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1734
5c18022e
RS
17352007-05-15 Richard Sandiford <richard@codesourcery.com>
1736
1737 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
1738 input_section argument. Create .rela.dyn relocations against
1739 symbol 0 rather than the section symbol.
1740 (mips_elf_local_got_index): Remove input_section argument.
1741 Update call to mips_elf_create_local_got_entry.
1742 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
1743 (mips_elf_calculate_relocation): Update calls to
1744 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
1745
a00a1f35
MS
17462007-05-15 Mark Shinwell <shinwell@codesourcery.com>
1747
1748 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
1749 handle the Thumb-2 JUMP19 relocation.
1750
0414f35b
AM
17512007-05-15 Alan Modra <amodra@bigpond.net.au>
1752
1753 PR 4479
1754 * elf.c (elf_fake_sections): Don't allow backend to change
1755 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
1756 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
1757 fix from here.
1758
74f2e02b
AM
17592007-05-14 Alan Modra <amodra@bigpond.net.au>
1760
1761 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
1762 invalid shstrndx.
1763 (bfd_elf_get_str_section): Likewise.
1764
f137a54e
AM
17652007-05-12 Alan Modra <amodra@bigpond.net.au>
1766
1767 PR 4497
1768 * elf-eh-frame.c (struct cie): Add "local_personality". Make
1769 "personality" a union.
1770 (cie_eq): Compare local_personality too. Adjust personality
1771 comparison.
1772 (_bfd_elf_discard_section_eh_frame): Check binding on personality
1773 reloc sym to allow for bad symtab. Use stashed local syms rather
1774 than reading personality local sym. Handle discarded sections.
1775
4f4416b5
AM
17762007-05-12 Alan Modra <amodra@bigpond.net.au>
1777
1778 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
1779
016687f8
AM
17802007-05-11 Alan Modra <amodra@bigpond.net.au>
1781
1782 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
1783 (enum ppc_elf_plt_type): Move from..
1784 * elf32-ppc.c: ..here.
1785 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
1786 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
1787 can_use_new_plt. Make is_vxworks a bitfield.
1788 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
1789 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
1790 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
1791 flags to better detect object files needing old bss-style plt.
1792 Allow secure plt to be used without rel16 relocs being detected.
1793 Warn if secure plt request cannot be allowed.
1794
ece5ef60
AM
17952007-05-11 Alan Modra <amodra@bigpond.net.au>
1796
1797 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
1798 * elf-bfd.h (struct elf_backend_data): Change return type of
1799 elf_backend_relocate_section to int.
1800 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
1801 R_SPU_PPU64.
1802 (spu_elf_bfd_to_reloc_type): Convert new relocs.
1803 (spu_elf_count_relocs): New function.
1804 (elf_backend_count_relocs): Define.
1805 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
1806 R_SPU_PPU64 relocs.
1807 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
1808 returns 2.
1809 * bfd-in2.h: Regenerate.
1810 * libbfd.h: Regenerate.
1811
d3753b85
RS
18122007-05-10 Richard Sandiford <richard@codesourcery.com>
1813
1814 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
1815 for R_ARM_ABS12 relocs.
1816 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
1817 non-shared VxWorks PLT entries.
1818
ef8c95ad
AM
18192007-05-11 Alan Modra <amodra@bigpond.net.au>
1820
1821 PR 4454
1822 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
1823 (_bfd_elf_discard_section_eh_frame): Handle local syms on
1824 personality relocation.
1825
8c252fd9
RS
18262007-05-10 Richard Sandiford <richard@codesourcery.com>
1827
1828 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
1829 rather than p_filesz to calculate the LMA of the end of a segment.
1830
b186458a
JJ
18312007-05-10 Jakub Jelinek <jakub@redhat.com>
1832
1833 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
1834 processing if symbol is defined in the executable.
1835
88571279
AO
18362007-05-10 Alexandre Oliva <aoliva@redhat.com>
1837
1838 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
1839 (frvfdpic_elf_discard_info): New.
1840 (elf_backend_discard_info): Define for FDPIC.
1841
2e6030b9
MS
18422007-05-09 Mark Shinwell <shinwell@codesourcery.com>
1843
1844 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
1845 attempt to scan if the bfd doesn't correspond to an ELF image.
1846 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
1847
0d4cc892
AO
18482007-05-08 Alexandre Oliva <aoliva@redhat.com>
1849
1850 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
1851 for which _bfd_elf_section_offset returns -1.
1852
d0249648
AM
18532007-05-08 Alan Modra <amodra@bigpond.net.au>
1854
1855 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
1856 (mark_functions_via_relocs): Likewise.
1857
1182cb93
AM
18582007-05-07 Alan Modra <amodra@bigpond.net.au>
1859
1860 * elflink.c (bfd_elf_final_link): Correct reloc handling for
1861 elf_backend_count_relocs.
1862 (bfd_elf_discard_info): Print an error if we can't read syms.
1863
b16f296e
AM
18642007-05-07 Alan Modra <amodra@bigpond.net.au>
1865
1866 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
1867 invalid reloc code.
1868 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
1869 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
1870 define.
1871
7c928300
AM
18722007-05-07 Alan Modra <amodra@bigpond.net.au>
1873
1874 * elf.c (assign_file_positions_for_load_sections): Don't check
1875 core segment.
1876
fc66a176
L
18772007-05-04 H.J. Lu <hongjiu.lu@intel.com>
1878
1879 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
1880 and .rel.dyn aren't present.
1881
3410fea8
NC
18822007-05-04 Nick Clifton <nickc@redhat.com>
1883
1884 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
1885 sections are present examine the indirect sections in an attempt
1886 to compute the correct relocation size. If there is any
1887 ambiguity, produce an error and refuse to sort.
1888
7bdca076
SL
18892007-05-03 Sandra Loosemore <sandra@codesourcery.com>
1890
1891 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
1892
22184a77
NC
18932007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
1894 Nick Clifton <nickc@redhat.com>
1895
1896 PR gas/3041
1897 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
1898 in the same way as relocs against external symbols.
1899
627b32bc
AM
19002007-05-02 Alan Modra <amodra@bigpond.net.au>
1901
1902 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
1903 here. Set sh_type to SHT_NOBITS if we won't be allocating
1904 file space. Don't bump p_memsz for non-alloc sections. Adjust
1905 section-in-segment check.
1906 (assign_file_positions_for_non_load_sections): Don't set sh_offset
1907 here for sections that have already been handled above.
1908
49fa1e15
AM
19092007-04-30 Alan Modra <amodra@bigpond.net.au>
1910
1911 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
1912 and emit_stack_syms bitfields.
1913 (get_sym_h): Read all symbols if stack analysis will be done.
1914 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
1915 params, and stash in hash table.
1916 (is_hint): Split off from..
1917 (is_branch): ..here. Adjust callers.
1918 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
1919 and keep all syms.
1920 (write_one_stub): Fix mem leak.
1921 (find_function_stack_adjust): New function.
1922 (sort_syms_syms, sort_syms_psecs): New vars.
1923 (sort_syms): New function.
1924 (struct call_info, struct function_info): New.
1925 (struct spu_elf_stack_info): New.
1926 (alloc_stack_info, maybe_insert_function, func_name): New functions.
1927 (is_nop, insns_at_end, check_function_ranges): Likewise.
1928 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
1929 (pasted_function, interesting_section, discover_functions): Likewise.
1930 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
1931 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
1932 (bfd_elf32_bfd_final_link): Define.
1933 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
1934 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
1935
9ddf8309
TS
19362007-04-28 Sergey Rogozhkin <rogozhkin@niisi.msk.ru>
1937
1938 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
1939 memory which we might not own.
1940
95147441
BW
19412007-04-27 Bob Wilson <bob.wilson@acm.org>
1942
1943 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
1944 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
1945 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
1946
bcc2cc8e
BW
19472007-04-27 Bob Wilson <bob.wilson@acm.org>
1948
1949 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
1950 contents and relocs in parallel.
4e591bc1 1951
f29f96b6
BW
19522007-04-27 Bob Wilson <bob.wilson@acm.org>
1953
1954 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
1955
2ce18a16
AM
19562007-04-27 Alan Modra <amodra@bigpond.net.au>
1957
1958 * cpu-rs6000.c: Write Mimi's name in ASCII.
1959 * coff-rs6000.c: Likewise.
1960 * rs6000-core.c: Likewise.
1961
eddc20ad
AM
19622007-04-27 Alan Modra <amodra@bigpond.net.au>
1963
1964 * sysdep.h: Include config.h first.
1965 Many files: Include sysdep.h before bfd.h.
1966 * Makefile.am: Run "make dep-am".
1967 * Makefile.in: Regenerate.
1968
495443d4
AM
19692007-04-25 Alan Modra <amodra@bigpond.net.au>
1970
1971 * sysdep.h: Revert last change.
1972
40b1c6c5
NC
19732007-04-24 Nick Clifton <nickc@redhat.com>
1974
1975 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
1976 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
1977
64be1553
AM
19782007-04-24 Alan Modra <amodra@bigpond.net.au>
1979
1980 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
1981 eh_frame_hdr table won't be created.
1982
d5efd9fc
AM
19832007-04-24 Alan Modra <amodra@bigpond.net.au>
1984
1985 * acinclude.m4: Include config/stdint.m4.
1986 * configure.in: Invoke GCC_HEADER_STDINT.
1987 * sysdep.h: Don't include ansidecl.h here.
1988 * configure: Regenerate.
1989 * config.in: Regenerate.
1990 * Makefile.in: Regenerate.
1991
9a2e615a
NS
19922007-04-23 Nathan Sidwell <nathan@codesourcery.com>
1993
1994 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
1995 bfd_mach_mcf_isa_c_emac): New.
1996 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
1997 elf_isac_plt_entry, elf_isac_plt_info): New.
1998 (elf32_m68k_object_p): Add ISA_C.
1999 (elf32_m68k_print_private_bfd_data): Print ISA_C.
2000 (elf32_m68k_get_plt_info): Detect ISA_C.
2001 * cpu-m68k.c (arch_info): Add ISAC.
2002 (m68k_arch_features): Likewise,
2003 (bfd_m68k_compatible): ISAs B & C are not compatible.
2004
1b0b5b1b
NC
20052007-04-21 Nick Clifton <nickc@redhat.com>
2006
2007 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
2008 (ecoff_link_add_archive_symbols): Likewise.
2009 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
2010 relent.howto.
2011 * ieee.c (parse_int): Initialise x.
2012 (must_parse_int): Initialise result.
2013 (ieee_slurp_external_symbols): Initialise value.
2014
bd7803a9
AM
20152007-04-21 Alan Modra <amodra@bigpond.net.au>
2016
2017 * config.bfd (spu-*-elf): Delete targ_selvecs.
2018
964597d0
NC
20192007-04-19 Nick Clifton <nickc@redhat.com>
2020
2021 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
2022
01e76792
AM
20232007-04-19 Alan Modra <amodra@bigpond.net.au>
2024
2025 * bfd.c (bfd_demangle): New function.
2026 * Makefile.am: Run "make dep-am".
2027 * Makefile.in: Regenerate.
2028 * bfd-in2.h: Regenerate.
2029
ee5c21a0
DJ
20302007-04-18 Matthias Klose <doko@ubuntu.com>
2031
2032 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
2033 (bfdver.h): Use the date in non-release builds for the soversion.
2034 * Makefile.in: Regenerate.
2035
fcb93ecf
PB
20362007-04-17 Paul Brook <paul@codesourcery.com>
2037
2038 * elf.c (_bfd_elf_is_function_type): New function.
2039 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
2040 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
2041 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
2042 * elf-bfd.h (elf_backend_data): Add is_function_type.
2043 (_bfd_elf_is_function_type): Add prototype.
2044 * elfxx-target.h (elf_backend_is_function_type): Add default
2045 definition.
2046 (elfNN_bed): Add elf_backend_is_function_type.
2047 * elf32-arm.c (elf32_arm_is_function_type): New function.
2048 (elf_backend_is_function_type): Define.
2049
5750dcec
DJ
20502007-04-17 Daniel Jacobowitz <dan@codesourcery.com>
2051
2052 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
2053 DT_MIPS_RLD_MAP before DT_DEBUG again.
2054
cfbc9945
SE
20552007-04-14 Steve Ellcey <sje@cup.hp.com>
2056
2057 * Makefile.am: Add ACLOCAL_AMFLAGS.
2058 * configure.in: Change macro call order.
2059 * Makefile.in: Regnerate.
2060 * doc/Makefile.in: Regenerate.
2061 * configure: Regenerate.
2062
3fcd97f1
JJ
20632007-04-14 Jakub Jelinek <jakub@redhat.com>
2064
2065 * elflink.c (bfd_elf_final_link): Don't free symbuf for
2066 non-elf input bfds.
2067 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
2068 for non-elf input bfds.
2069
af5978fb
RS
20702007-04-12 Richard Sandiford <richard@codesourcery.com>
2071
2072 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
2073 DT_MIPS_RTLD_MAP for PIEs.
2074
9e3313ae
RS
20752007-04-12 Richard Sandiford <richard@codesourcery.com>
2076
2077 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
2078 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
2079 in a read-only section.
2080 (_bfd_mips_elf_check_relocs): Likewise.
2081
1d25768e
BW
20822007-04-12 Bob Wilson <bob.wilson@acm.org>
2083
2084 * elf32-xtensa.c (xtensa_is_insntable_section): New.
2085 (xtensa_is_proptable_section): New.
2086 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
2087 tables with 12-byte entries, as well as tables with 8-byte entries.
2088 Sort the relocations before examining them.
2089 (relax_property_section): Use xtensa_is_proptable_section and
2090 xtensa_is_littable_section. Rewrite code for combining table entries
2091 to be more robust in case of unexpected relocations. Do not set offset
2092 of unused relocations to less than zero.
2093 (xtensa_is_property_section): Use other functions instead of
2094 duplicating section name comparisons.
2095 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
2096 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 2097
e1e5c0b5 20982007-04-12 Bob Wilson <bob.wilson@acm.org>
4e591bc1 2099
e1e5c0b5
BW
2100 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
2101 from Xtensa property sections.
4e591bc1 2102
2c67c5f3
AM
21032007-04-12 Alan Modra <amodra@bigpond.net.au>
2104
2105 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
2106 is non-NULL before dereferencing.
2107
8776bb8a
NS
21082007-04-11 Nathan Sidwell <nathan@codesourcery.com>
2109
2110 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
2111 relocs too.
2112
4a828aab
RH
21132007-04-10 Richard Henderson <rth@redhat.com>
2114
2115 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
2116 (elf64_alpha_size_got_sections): Remove unused something_changed local.
2117 (elf64_alpha_size_plt_section): Return void.
2118 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 2119 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
2120 relax_trip counter has changed.
2121
91506736
DJ
21222007-04-09 Daniel Jacobowitz <dan@codesourcery.com>
2123
2124 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
2125 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
2126 (bfdver.texi): New rule.
2127 * Makefile.in, doc/Makefile.in: Regenerated.
2128
da6bcfca
MT
21292007-04-03 Matt Thomas <matt@netbsd.org>
2130
4e591bc1 2131 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
2132 in a shared object if it is not in a CODE section or if it is against
2133 a section symbol. This allows DWARF2 to use pcrel format.
2134
9267588c
L
21352007-04-05 H.J. Lu <hongjiu.lu@intel.com>
2136
2137 PR ld/4304
2138 * elflink.c (bfd_elf_final_link): Call einfo callback in
2139 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
2140 warning.
2141
c1b2796f
AM
21422007-04-05 Alan Modra <amodra@bigpond.net.au>
2143
2144 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
2145 (elf_backend_link_output_symbol_hook): Define.
2146
970ccc77
NC
21472007-04-02 Nick Clifton <nickc@redhat.com>
2148
2149 PR binutils/4292
2150 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
2151 targets as 64-bit values, even if running on a 64-bit host.
2152 * coffgen.c (coff_print_symbol): Likewise.
2153
1783205a
NC
21542007-03-29 Nick Clifton <nickc@redhat.com>
2155
2156 PR binutils/4110
2157 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
2158 (setup_group): Use it. Report corrupt group section headers.
2159 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
2160 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
2161 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
2162
2ce859a1
AM
21632007-03-29 Alan Modra <amodra@bigpond.net.au>
2164
2165 PR ld/4267
947844a3
AM
2166 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
2167 for rel->r_info values.
2168 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
2169 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
2170 unused entries. Don't clear plt.plist in loop.
2171
39817122
RS
21722007-03-28 Richard Sandiford <richard@codesourcery.com>
2173
2174 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
2175 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
2176 Merge into...
2177 (sparc_elf_append_rela): ...this new function.
2178 (SPARC_ELF_APPEND_RELA): Delete.
2179 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
2180 the deleted append_rela field.
2181 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
2182 instead of SPARC_ELF_APPEND_RELA.
2183 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
2184 elf_size_info structure to find the size of a RELA entry and
2185 the associated swap-out function.
2186 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
2187 (sparc_finish_dyn): ...this new function.
2188 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
2189
4ecceb71
RS
21902007-03-28 Richard Sandiford <richard@codesourcery.com>
2191 Phil Edwards <phil@codesourcery.com>
2192
2193 * doc/bfd.texinfo: Put the contents after the title page rather
2194 than at the end of the document.
2195
d4d2b80b
AS
21962007-03-27 Andreas Schwab <schwab@suse.de>
2197
2198 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
2199
831480e9 22002007-03-26 H.J. Lu <hongjiu.lu@intel.com>
5bd8253d
L
2201
2202 * configure: Regenerated.
2203
f4b39977
AM
22042007-03-26 Alan Modra <amodra@bigpond.net.au>
2205
2206 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
2207 (allocate_spuear_stubs): New function.
2208 (spu_elf_size_stubs): Call allocate_spuear_stubs.
2209
157090f7
AM
22102007-03-26 Alan Modra <amodra@bigpond.net.au>
2211
2212 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
2213 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
2214 (MY (bfd_reloc_name_lookup)): New function.
2215 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
2216 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
2217 (MY_bfd_reloc_name_lookup): Define.
2218 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
2219 (MY_bfd_reloc_name_lookup): Define.
2220 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
2221 (NAME (aout, reloc_name_lookup)): New function.
2222 * bout.c (b_out_bfd_reloc_name_lookup): New function.
2223 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
2224 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
2225 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
2226 (coff_bfd_reloc_name_lookup): Define.
2227 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
2228 (coff_i386_reloc_name_lookup): New function.
2229 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
2230 (coff_bfd_reloc_name_lookup): Define.
2231 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
2232 (coff_bfd_reloc_name_lookup): Define.
2233 * coff-m68k.c (m68k_reloc_name_lookup): New function.
2234 (coff_bfd_reloc_name_lookup): Define.
2235 * coff-maxq.c (maxq_reloc_name_lookup): New function.
2236 (coff_bfd_reloc_name_lookup): Define.
2237 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
2238 (coff_bfd_reloc_name_lookup): Define.
2239 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
2240 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
2241 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
2242 (coff_bfd_reloc_name_lookup): Define.
2243 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
2244 (_bfd_xcoff_reloc_name_lookup): New function.
2245 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
2246 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
2247 (sh_coff_reloc_name_lookup): New function.
2248 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
2249 (coff_bfd_reloc_name_lookup): Define.
2250 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
2251 (tic30_coff_reloc_name_lookup): New function.
2252 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
2253 (tic4x_coff_reloc_name_lookup): New function.
2254 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
2255 (tic54x_coff_reloc_name_lookup): New function.
2256 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
2257 (coff_amd64_reloc_name_lookup): New function.
2258 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
2259 (coff_bfd_reloc_name_lookup): Define.
2260 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
2261 (coff_bfd_reloc_name_lookup): Define.
2262 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
2263 (xcoff64_reloc_name_lookup): New function.
2264 (rs6000coff64_vec, aix5coff64_vec): Init new field.
2265 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
2266 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
2267 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2268 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2269 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2270 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
2271 (bfd_elf32_bfd_reloc_name_lookup): Define.
2272 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2273 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
2274 (bfd_elf32_bfd_reloc_name_lookup): Define.
2275 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
2276 (bfd_elf32_bfd_reloc_name_lookup): Define.
2277 * elf32-cris.c (cris_reloc_name_lookup): New function.
2278 (bfd_elf32_bfd_reloc_name_lookup): Define.
2279 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
2280 (bfd_elf32_bfd_reloc_name_lookup): Define.
2281 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2282 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2283 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
2284 (bfd_elf32_bfd_reloc_name_lookup): Define.
2285 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
2286 (bfd_elf32_bfd_reloc_name_lookup): Define.
2287 * elf32-frv.c (frv_reloc_name_lookup): New function.
2288 (bfd_elf32_bfd_reloc_name_lookup): Define.
2289 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2290 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
2291 (bfd_elf32_bfd_reloc_name_lookup): Define.
2292 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2293 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
2294 (bfd_elf32_bfd_reloc_name_lookup): Define.
2295 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
2296 (bfd_elf32_bfd_reloc_name_lookup): Define.
2297 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
2298 (bfd_elf32_bfd_reloc_name_lookup): Define.
2299 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
2300 (bfd_elf32_bfd_reloc_name_lookup): Define.
2301 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
2302 (bfd_elf32_bfd_reloc_name_lookup): Define.
2303 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
2304 (bfd_elf32_bfd_reloc_name_lookup): Define.
2305 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
2306 (bfd_elf32_bfd_reloc_name_lookup): Define.
2307 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2308 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2309 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2310 * elf32-m68k.c (reloc_name_lookup): New function.
2311 (bfd_elf32_bfd_reloc_name_lookup): Define.
2312 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2313 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
2314 (bfd_elf32_bfd_reloc_name_lookup): Define.
2315 * elf32-mep.c (mep_reloc_name_lookup): New function.
2316 (bfd_elf32_bfd_reloc_name_lookup): Define.
2317 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2318 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
2319 (bfd_elf32_bfd_reloc_name_lookup): Define.
2320 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2321 * elf32-mt.c (mt_reloc_name_lookup): New function.
2322 (bfd_elf32_bfd_reloc_name_lookup): Define.
2323 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
2324 (bfd_elf32_bfd_reloc_name_lookup): Define.
2325 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2326 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
2327 (bfd_elf32_bfd_reloc_name_lookup): Define.
2328 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
2329 (bfd_elf32_bfd_reloc_name_lookup): Define.
2330 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
2331 (bfd_elf32_bfd_reloc_name_lookup): Define.
2332 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
2333 (bfd_elf32_bfd_reloc_name_lookup): Define.
2334 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
2335 (bfd_elf32_bfd_reloc_name_lookup): Define.
2336 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2337 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
2338 (bfd_elf32_bfd_reloc_name_lookup): Define.
2339 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
2340 (bfd_elf32_bfd_reloc_name_lookup): Define.
2341 * elf32-vax.c (reloc_name_lookup): New function.
2342 (bfd_elf32_bfd_reloc_name_lookup): Define.
2343 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
2344 (bfd_elf32_bfd_reloc_name_lookup): Define.
2345 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
2346 (bfd_elf32_bfd_reloc_name_lookup): Define.
2347 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
2348 (bfd_elf32_bfd_reloc_name_lookup): Define.
2349 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
2350 (bfd_elf64_bfd_reloc_name_lookup): Define.
2351 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2352 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2353 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2354 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2355 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
2356 (bfd_elf64_bfd_reloc_name_lookup): Define.
2357 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
2358 (bfd_elf64_bfd_reloc_name_lookup): Define.
2359 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
2360 (bfd_elf64_bfd_reloc_name_lookup): Define.
2361 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2362 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
2363 (bfd_elf64_bfd_reloc_name_lookup): Define.
2364 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2365 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
2366 (bfd_elfNN_bfd_reloc_name_lookup): Define.
2367 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
2368 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
2369 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
2370 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
2371 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
2372 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
2373 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
2374 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
2375 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
2376 (MY(reloc_name_lookup)): New function.
2377 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
2378 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
2379 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
2380 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
2381 (coff_bfd_reloc_name_lookup): Define.
2382 * reloc.c (bfd_reloc_name_lookup): New function.
2383 * riscix.c (riscix_reloc_name_lookup): New function.
2384 (MY_bfd_reloc_name_lookup): Define.
2385 * som.c (som_bfd_reloc_name_lookup): New function.
2386 * targets.c (struct bfd_target): Add reloc_name_lookup.
2387 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
2388 * versados.c (versados_bfd_reloc_name_lookup): Define.
2389 * vms.c (vms_bfd_reloc_name_lookup): New function.
2390 * bfd-in2.h: Regenerate.
2391 * libbfd.h: Regenerate.
2392
2d82d84d
TS
23932007-03-26 Thiemo Seufer <ths@mips.com>
2394
a5cb1fd7 2395 PR ld/4208
2d82d84d
TS
2396 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
2397 matching relocation is found.
2398 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
2399
831480e9 24002007-03-23 H.J. Lu <hongjiu.lu@intel.com>
1a27db7d
L
2401
2402 * configure: Regenerated.
2403
a1ac8190
JM
24042007-03-23 Joseph Myers <joseph@codesourcery.com>
2405
2406 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
2407 * configure: Regenerate.
2408
aa7a0635
AM
24092007-03-23 Alan Modra <amodra@bigpond.net.au>
2410
2411 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
2412 Remove input_sec param. Adjust all calls.
2413 (write_one_stub): Adjust stub symbol.
2414 (needs_ovl_stub): New function, extracted from..
2415 (spu_elf_size_stubs): ..here.
2416 (spu_elf_relocate_section): Use needs_ovl_stub.
2417
e49e529d
JM
24182007-03-22 Joseph Myers <joseph@codesourcery.com>
2419
2420 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
2421 if nonempty.
2422 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
2423 * Makefile.in, configure, doc/Makefile.in: Regenerate.
2424
831480e9 24252007-03-22 H.J. Lu <hongjiu.lu@intel.com>
50572669
L
2426
2427 PR ld/4210
2428 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
2429 address and virtual size of the last section for the image
2430 size.
2431
0920dee7
L
24322007-03-22 H.J. Lu <hongjiu.lu@intel.com>
2433
2434 PR ld/4007
2435 * elf.c (assign_file_positions_for_load_sections): Check if
2436 all sections are in the segment.
2437
831480e9 24382007-03-20 H.J. Lu <hongjiu.lu@intel.com>
749b8d9d
L
2439
2440 PR ld/4208
2441 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
2442 matching LO16 relocation for HI16 relocation.
2443
27e55c4d
PB
24442007-03-20 Paul Brook <paul@codesourcery.com>
2445
2446 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
2447 * bfd-in2.h: Regenerate.
2448 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
2449 (record_arm_to_thumb_glue): Use globals->pic_veneer.
2450 (elf32_arm_create_thumb_stub): Ditto.
2451 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
2452
bf21ed78
MS
24532007-03-18 Mark Shinwell <shinwell@codesourcery.com>
2454
2455 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
2456 argument and extra last argument.
2457 * bfd-in2.h: Regenerate.
2458 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
2459 member.
2460 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
2461 extra last argument. Set no_enum_size_warning appropriately.
2462 (elf32_arm_merge_eabi_attributes): Improve enum sizes
2463 diagnostic, suppressing it when no_enum_size_warning dictates.
2464
5f6999aa
NC
24652007-03-20 Nick Clifton <nickc@redhat.com>
2466
2467 PR binutils/3535
2468 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
2469 specific conditions that need the program headers to be
2470 rewritten.
2471
831480e9 24722007-03-19 H.J. Lu <hongjiu.lu@intel.com>
d13c9dc6
L
2473
2474 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
2475 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2476 SizeOfInitializedData, SizeOfUninitializedData,
2477 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
2478 extra PE a.out header.
2479 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
2480 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
2481 defined.
2482 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
2483 defined.
2484 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
2485 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2486 SizeOfInitializedData, SizeOfUninitializedData,
2487 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
2488 extra PE a.out header.
2489
831480e9 24902007-03-18 H.J. Lu <hongjiu.lu@intel.com>
739bb57e
L
2491
2492 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
2493 only if BFD64 is defined.
2494
5384511f
AM
24952007-03-17 Alan Modra <amodra@bigpond.net.au>
2496
2497 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
2498 on setjmp calls.
2499
187b3d5d
L
25002007-03-15 H.J. Lu <hongjiu.lu@intel.com>
2501
2502 * doc/Makefile.in: Regenerated.
2503
c428fa83
L
25042007-03-15 H.J. Lu <hongjiu.lu@intel.com>
2505
2506 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
2507 create doc/bfdver.texi.
2508 * Makefile.in: Regenerated.
2509
2510 * configure.in (--with-bugurl): New option.
2511 * configure: Regenerated.
2512
2513 * version.h (REPORT_BUGS_TO): New.
2514
d1036acb
L
25152007-03-13 H.J. Lu <hongjiu.lu@intel.com>
2516
2517 PR binutils/3826
2518 * elf-bfd.h (elf_backend_data): Add elf_osabi.
2519 (_bfd_elf_set_osabi): New.
2520
2521 * elf.c (_bfd_elf_set_osabi): New.
2522
2523 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
2524 (elf_backend_post_process_headers): Defined with
2525 _bfd_elf_set_osabi.
2526 (ELF_OSABI): Properly defined for each target.
2527
2528 * elf32-i370.c (i370_elf_post_process_headers): Removed.
2529 (ELF_OSABI): Defined.
2530 (elf_backend_post_process_headers): Defined with
2531 _bfd_elf_set_osabi.
2532
2533 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2534 freebsd.
2535 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
2536
2537 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
2538 (ELF_OSABI): Defined.
2539 (elf_backend_post_process_headers): Defined with
2540 _bfd_elf_set_osabi.
2541
2542 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2543 freebsd.
2544 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
2545 elf_osabi.
2546
2547 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
2548 with elf_osabi.
2549 (ELF_OSABI): Properly defined for each target.
2550 (elf_backend_post_process_headers): Defined with
2551 _bfd_elf_set_osabi for Linux.
2552
2553 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
2554 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2555 (elf_backend_post_process_headers): Defined with
2556 _bfd_elf_set_osabi.
2557
2558 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
2559 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2560 (elf_backend_post_process_headers): Defined with
2561 _bfd_elf_set_osabi.
2562
2563 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
2564 with any ELF target of the compatible machine for which we do not
2565 have a specific backend.
2566
2567 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
2568 with elf_osabi.
2569
2570 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
2571 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
2572
d4c87fc1
AM
25732007-03-08 Alan Modra <amodra@bigpond.net.au>
2574
2575 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
2576 V850_OTHER_* bits.
2577
9c6fc49d
AM
25782007-03-08 Alan Modra <amodra@bigpond.net.au>
2579
2580 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
2581 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
2582 Run "make dep-am".
2583 * Makefile.in: Regenerate.
2584 * po/SRC-POTFILES.in: Regenerate.
2585
faed74d6
L
25862007-03-07 H.J. Lu <hongjiu.lu@intel.com>
2587
2588 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
2589 (x86_64-*-kfreebsd*-gnu): Likewise.
2590 (x86_64-*-netbsd*): Likewise.
2591 (x86_64-*-openbsd*): Likewise.
2592 (x86_64-*-linux-*): Likewise.
2593
2594 * configure.in: Support bfd_efi_app_x86_64_vec.
2595 * configure: Regenerated.
2596
2597 * efi-app-x86_64.c: New file.
2598
2599 * targets.c (bfd_efi_app_x86_64_vec): New.
2600 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
2601
15344ad7
L
26022007-03-07 Kai Tietz <kai.tietz@onevision.com>
2603
2604 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
2605 const for type reloc_howto_type.
2606
ab96bf03
AM
26072007-03-07 Alan Modra <amodra@bigpond.net.au>
2608
2609 PR 3958
2610 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
2611 (elf_discarded_section): Move..
2612 * bfd-in.h: ..to here.
2613 * bfd-in2.h: Regenerate.
2614 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
2615 from discarded sections before relocate_section has done its job.
2616 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
2617 relocs against symbols from discarded sections.
2618 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
2619 SECREL32.
2620 (elf_hppa_relocate_section): Handle relocatable link after setting
2621 sec, sym, h etc. for final link. Squash error messages for
2622 relocatable link. Clear section contents for relocs against
2623 symbols in discarded sections, and zero reloc. Remove existing
2624 zero r_symndx code.
2625 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
2626 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
2627 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
2628 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
2629 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
2630 (bfin_relocate_section): Likewise.
2631 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
2632 * elf32-cris.c (cris_elf_relocate_section): Likewise.
2633 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
2634 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
2635 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
2636 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2637 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
2638 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
2639 * elf32-i370.c (i370_elf_relocate_section): Likewise.
2640 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2641 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
2642 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
2643 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
2644 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
2645 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
2646 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
2647 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2648 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
2649 * elf32-mep.c (mep_elf_relocate_section): Likewise.
2650 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
2651 * elf32-mt.c (mt_elf_relocate_section): Likewise.
2652 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
2653 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2654 * elf32-s390.c (elf_s390_relocate_section): Likewise.
2655 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
2656 * elf32-sh.c (sh_elf_relocate_section): Likewise.
2657 * elf32-spu.c (spu_elf_relocate_section): Likewise.
2658 * elf32-v850.c (v850_elf_relocate_section): Likewise.
2659 * elf32-vax.c (elf_vax_relocate_section): Likewise.
2660 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
2661 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
2662 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
2663 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
2664 (elf64_alpha_relocate_section): Likewise.
2665 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
2666 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2667 * elf64-s390.c (elf_s390_relocate_section): Likewise.
2668 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
2669 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2670 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
2671 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
2672 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
2673
2674 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
2675 symbols for relocatable link. Don't use always-zero st_value.
2676 (elf_backend_rela_normal): Don't define.
2677 * elf32-bfin.c (bfinfdpic_relocate_section): Use
2678 RELOC_FOR_GLOBAL_SYMBOL.
2679 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2680 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
2681 section symbol adjustments with same for relocatable link.
2682 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2683 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
2684 (elf32_m68hc11_check_relocs): ..to here.
2685 * elf32-score.c (score_elf_final_link_relocate): Remove zero
2686 r_symndx code.
2687 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
2688
0e922b77
AM
26892007-03-07 Alan Modra <amodra@bigpond.net.au>
2690
2691 PR 4144
2692 * elf.c (assign_file_positions_for_load_sections): Don't
2693 adjust p_memsz for !SEC_LOAD section vma modulo page size.
2694 Instead, use the same lma based adjustment for SEC_LOAD
2695 sections.
2696
25c6282a
BW
26972007-03-01 Bob Wilson <bob.wilson@acm.org>
2698
2699 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
2700 (find_relaxable_sections): Do not increment src_count for unknown
2701 opcodes. Decode only once instead of calling is_l32r_relocation.
2702 (compute_text_actions): Remove unused no_insn_move flag. Assert that
2703 src_next matches src_count in relax_info.
2704
066c2a57
JM
27052007-03-01 Joseph Myers <joseph@codesourcery.com>
2706
2707 * Makefile.am (bfdver.h): Use "." not " " between version number
2708 and date.
2709 * Makefile.in: Regenerate.
2710 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
2711 * configure: Regenerate.
2712
ed6ba298
NS
27132007-02-28 Nathan Sidwell <nathan@codesourcery.com>
2714
2715 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
2716
7a8757b3
AM
27172007-02-27 Alan Modra <amodra@bigpond.net.au>
2718
2719 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
2720 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
2721
024b2372
CD
27222007-02-23 Carlos O'Donell <carlos@codesourcery.com>
2723
2724 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
2725 DWARF even with 64-bit addresses.
2726 (_bfd_dwarf2_find_nearest_line): Likewise.
2727
cb3ff1e5
NC
27282007-02-23 Nick Clifton <nickc@redhat.com>
2729
2730 PR binutils/3535
2731 * elf.c (copy_private_bfd_data): Always rewrite the program
2732 headers when a Solaris interpreter segment is involved.
2733
6a5bb875
PB
27342007-02-22 Paul Brook <paul@codesourcery.com>
2735
2736 * elflink.c (gc_mark_hook_fn): Remove.
2737 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
2738 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
2739 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
2740 (elf_backend_data): Add gc_mark_extra_sections.
2741 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
2742 definition.
2743 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
2744 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
2745 (elf_backend_gc_mark_extra_sections): Define.
2746
2889e75b
NC
27472007-02-21 Nick Clifton <nickc@redhat.com>
2748
2749 * elf.c (_bfd_elf_map_sections_to_segments): If the
2750 override_segment_assignment callback is defined then call it.
2751
78859468
AM
27522007-02-21 Alan Modra <amodra@bigpond.net.au>
2753
2754 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
2755
ae0d2616
TS
27562007-02-19 Thiemo Seufer <ths@mips.com>
2757
2758 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
2759 translation marker from untranslatable strings.
2760
6bfdb61b
AM
27612007-02-19 Alan Modra <amodra@bigpond.net.au>
2762
2763 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
2764 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
2765 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
2766 (elfNN_bed): Init new field.
2767 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
2768
92f01d61
JM
27692007-02-17 Mark Mitchell <mark@codesourcery.com>
2770 Nathan Sidwell <nathan@codesourcery.com>
2771 Vladimir Prus <vladimir@codesourcery.com
2772 Joseph Myers <joseph@codesourcery.com>
2773
2774 * configure.in (--with-pkgversion): New option.
2775 * configure: Regenerate.
2776 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
2777 * Makefile.in: Regenerate.
2778 * version.h (BFD_VERSION_STRING): Define using
2779 @bfd_version_package@.
2780
c0e3f241
CD
27812007-02-16 Carlos O'Donell <carlos@codesourcery.com>
2782
2783 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
2784 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
2785 and EF_MIPS_UCODE.
2786
72f6ea61
AM
27872007-02-15 Alan Modra <amodra@bigpond.net.au>
2788
2789 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
2790 declare.
2791 (_bfd_norelocs_canonicalize_reloc): Likewise.
2792 * libbfd.h: Regenerate.
2793 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
2794 (_bfd_norelocs_canonicalize_reloc): Likewise.
2795 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
2796 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
2797 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
2798 * ihex.c: Similarly.
2799 * mach-o-target.c: Similarly.
2800 * mach-o.c: Similarly.
2801 * mmo.c: Similarly.
2802 * pef.c: Similarly.
2803 * ppcboot.c: Similarly.
2804 * srec.c: Similarly.
2805 * xsym.c: Similarly.
2806
fab4a87f
L
28072007-02-14 H.J. Lu <hongjiu.lu@intel.com>
2808
2809 PR ld/3953
2810 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
2811 when adding default symbol.
2812
e4e0193e
AM
28132007-02-13 Alan Modra <amodra@bigpond.net.au>
2814
2815 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
2816 for branch lookup table.
2817
84f5d08e
AM
28182007-02-12 Alan Modra <amodra@bigpond.net.au>
2819
2820 * elf64-ppc.c (create_linkage_sections): Don't create
2821 .rela.rodata.brlt for --emit-relocs.
2822 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
2823 (ppc_size_one_stub): Count them. Simplify test of stub type
2824 when counting stub relocs. Set SEC_RELOC too.
2825 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
2826 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
2827
4aac632e
AM
28282007-02-12 Alan Modra <amodra@bigpond.net.au>
2829
2830 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
2831 with a zero symbol index.
2832
8da3dbc5
AM
28332007-02-12 Alan Modra <amodra@bigpond.net.au>
2834
2835 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
2836
b31847af
DB
28372007-02-05 Dave Brolley <brolley@redhat.com>
2838 Stan Cox <scox@redhat.com>
2839
2840 PR ld/3972
2841 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
2842
722b0ff7 28432007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
2844 Richard Sandiford <rsandifo@redhat.com>
2845 Stan Cox <scox@redhat.com>
2846 Nick Clifton <nickc@redhat.com>
2847 DJ Delorie <dj@redhat.com>
2848 Frank Ch. Eigler <fche@redhat.com>
2849 Ben Elliston <bje@redhat.com>
2850 Richard Henderson <rth@redhat.com>
2851
2852 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
2853 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
2854 (BFD32_BACKENDS): Add elf32-mep.lo.
2855 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
2856 (cpu-mep.lo,elf32-mep.lo): New targets.
2857 * archures.c (bfd_arch_mep): New enumerator.
2858 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
2859 (bfd_mep_arch): New external variable.
2860 (bfd_archures_list): Add bfd_mep_arch.
2861 * config.bfd: Support mep-*-elf.
2862 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
2863 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
2864 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
2865 declarations.
2866 (_bfd_target_vector): Add bfd_elf32_mep_vec and
2867 bfd_elf32_mep_little_vec.
722b0ff7
DB
2868 * mep-relocs.pl: New file.
2869 * cpu-mep.c: New file.
2870 * elf32-mep.c: New file.
2871 * bfd-in2.h: Regenerate.
e382d174 2872 * po/POTFILES.in: Regenerate.
722b0ff7
DB
2873 * libbfd.h: Regenerate.
2874 * Makefile.in: Regenerate.
2875 * configure: Regenerate.
2876
d9352518
DB
28772007-02-05 Dave Brolley <brolley@redhat.com>
2878
2879 * elflink.c (evaluate_complex_relocation_symbols): Check for
2880 STT_SRELC for global symbols.
2881 (perform_complex_relocations): Renamed to
2882 perform_complex_relocation and now examines only one relocation.
2883 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 2884 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
2885 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
2886 (OD,OS,OU): #undefs corrected to N, S and U repectively.
2887 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
2888 (complex_reloc_installation_howto): Removed.
2889 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
2890 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
2891
d9352518 28922007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
2893 Richard Sandiford <rsandifo@redhat.com>
2894 DJ Delorie <dj@redhat.com>
2895 Graydon Hoare <graydon@redhat.com>
2896 Nick Clifton <nickc@cambridge.redhat.com>
2897 Jeff Holcomb <jeffh@redhat.com>
2898 Frank Ch. Eigler <fche@redhat.com>
2899
2900 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
2901 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
2902 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
2903 * elflink.c (set_symbolValue): New static function.
d9352518
DB
2904 (resolve_symbol): Likewise.
2905 (resolve_section): Likewise.
2906 (undefined_reference): Likewise.
2907 (eval_symbol): Likewise.
2908 (evaluate_complex_relocation_symbols): Likewise.
2909 (put_value): Likewise.
2910 (get_value): Likewise.
e382d174
DB
2911 (decode_complex_addend):
2912 (bfd_elf_perform_complex_relocation): New function.
2913 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
2914 * reloc.c (BFD_RELOC_RELC): New relocation number.
2915 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 2916
f1ab2340 29172007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 2918
f1ab2340
BW
2919 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
2920 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
2921 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
2922 (elf_xtensa_allocate_got_size): Replace these with...
2923 (elf_xtensa_allocate_dynrelocs): ...this new function.
2924 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 2925
e5f131d1 29262007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 2927
e5f131d1
BW
2928 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
2929 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
2930 Set src_mask to zero.
2931 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
2932 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 2933
4608f3d9
BW
29342007-02-02 Bob Wilson <bob.wilson@acm.org>
2935
2936 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
2937 (elf_xtensa_dynamic_symbol_p): ...this.
2938
f0e6fdb2
BW
29392007-02-02 Bob Wilson <bob.wilson@acm.org>
2940
2941 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
2942 (struct elf_xtensa_link_hash_table): New.
2943 (elf_xtensa_hash_table): New.
2944 (elf_xtensa_link_hash_table_create): New.
2945 (elf_xtensa_check_relocs): Update plt_reloc_count references.
2946 Update arguments to add_extra_plt_sections.
2947 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
2948 table. Update for plt_reloc_count and add_extra_plt_sections.
2949 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
2950 argument with link info. Update calls to elf_xtensa_get_plt_section
2951 and elf_xtensa_get_gotplt_section.
2952 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
2953 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
2954 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
2955 (relax_property_section): Get sections from the hash table and update
2956 function calls.
2957 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
2958 dynobj argument with link info. Get sections for first plt chunk from
2959 the hash table.
2960 (bfd_elf32_bfd_link_hash_table_create): Define.
2961
c15f73f9
JJ
29622007-02-02 Jakub Jelinek <jakub@redhat.com>
2963
2964 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
2965 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
2966 (struct elf_symbol): Change first member into union.
2967 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
2968 internal syms. Only compare st_shndx fields.
2969 (elf_create_symbuf): New function.
2970 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
2971 for bfds, use a binary search, otherwise don't qsort symbols
2972 unnecessarily only to select which symbols are for the particular
2973 shndx.
2974
effdf42a
NC
29752007-02-01 Nick Clifton <nickc@redhat.com>
2976
2977 PR ld/3852
2978 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
2979 in the elf_link_hash_table structure.
2980
183e98be
AM
29812007-02-01 Alan Modra <amodra@bigpond.net.au>
2982
2983 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
2984 * elfxx-target.h (elf_backend_write_core_note): Define and use.
2985 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
2986 32-bit core note on 64-bit target.
2987 (elfcore_write_prstatus): Likewise.
2988 (elfcore_write_lwpstatus): Make note_name const.
2989 (elfcore_write_prfpreg): Likewise.
2990 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
2991 target.
2992 * elf32-ppc.c (ppc_elf_write_core_note): New function.
2993 (elf_backend_write_core_note): Define.
2994 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
2995 (elf_backend_write_core_note): Define.
2996
fc523535 29972007-01-31 H.J. Lu <hongjiu.lu@intel.com>
16cecee5
L
2998
2999 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
3000 (elf32_bed): Defined for elf32-us-cris.
3001
3002 * elf64-sh64.c (elf64_bed): Defined for Linux.
3003 (INCLUDED_TARGET_FILE): Removed.
3004
3005 * elfxx-target.h (elfNN_bed): Always define. Don't check
3006 INCLUDED_TARGET_FILE.
3007
c9b57b7e
DD
30082007-01-31 DJ Delorie <dj@redhat.com>
3009
3010 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
3011 message for dangerous relocs, special case the common user error.
3012
53020534
L
30132007-01-30 H.J. Lu <hongjiu.lu@intel.com>
3014
3015 * elf.c (copy_elf_program_header): Start from the first section
3016 in a segment and stop when all sections in a segment are
3017 accounted for.
3018
c7b8f16e
JB
30192007-01-29 Julian Brown <julian@codesourcery.com>
3020
3021 * bfd-in2.h: Regenerate.
3022 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
3023 instruction scanning should be done.
3024 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
3025 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
3026 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
3027 prototype.
3028 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
3029 argument.
3030 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
3031 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
3032 (elf32_vfp11_erratum_type): New enum.
3033 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
3034 veneers.
3035 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
3036 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
3037 vfp11_fix and num_vfp11_fixes fields.
3038 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
3039 vfp11_erratum_glue_size, num_vfp11_fixes fields.
3040 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
3041 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
3042 glue section.
3043 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
3044 to a section's map.
3045 (record_vfp11_erratum_veneer): Create a single veneer, and its
3046 associated symbols.
3047 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
3048 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
3049 BFDs.
3050 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
3051 required.
3052 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
3053 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
3054 (bfd_arm_vfp11_write_mask): Update write mask according to coded
3055 register number.
3056 (bfd_arm_vfp11_antidependency): New function.
3057 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
3058 (elf32_arm_compare_mapping): Declare.
3059 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
3060 BFD for potential erratum-triggering insns. Record results.
3061 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
3062 and branches to veneers have been placed in virtual memory after
3063 layout.
3064 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
3065 hash table.
3066 (elf32_arm_output_symbol_hook): Remove.
3067 (elf32_arm_write_section): Output veneers, and branches to veneers.
3068 Use maps from input sections, not output sections, for code
3069 byte-swapping.
3070 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
3071 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
3072 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
3073 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
3074
30752007-01-27 H.J. Lu <hongjiu.lu@intel.com>
83d1651b
L
3076
3077 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 3078 (INCLUDED_TARGET_FILE): Removed.
83d1651b 3079
914dfb0f
DA
30802007-01-27 Mike Frysinger <vapier@gentoo.org>
3081
3082 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
3083 (INCLUDED_TARGET_FILE): Remove.
3084
78eba9b6
DD
30852007-01-25 DJ Delorie <dj@redhat.com>
3086
3087 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
3088 R_M32C_16 or R_M32C_24 relocs.
3089
64ee10b6
NC
30902007-01-25 Nick Clifton <nickc@redhat.com>
3091
3092 PR binutils/3874
3093 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
3094 hash table was created by elf32_avr_link_hash_table_create before
3095 using it.
3096 (elf32_avr_link_hash_newfunc): New function. Just pass the call
3097 through to _bfd_elf_link_hash_newfunc.
3098 (elf32_avr_link_hash_table_create): Use
3099 elf32_avr_link_hash_newfunc instead of
3100 _bfd_elf_link_hash_newfunc.
3101 (elf32_avr_relocate_section): Check for the hash table pointer
3102 being NULL.
3103 (elf32_avr_relax_section, avr_build_one_stub,
3104 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
3105 elf32_avr_build_stubs): Likewise.
3106
40b36307
L
31072007-01-16 H.J. Lu <hongjiu.lu@intel.com>
3108
3109 PR ld/3831
3110 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
3111 argument, Elf_Internal_Sym *.
3112
3113 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
3114 symbol dynamic if info->dynamic_data is TRUE.
3115 (bfd_elf_record_link_assignment): Updated call to
3116 bfd_elf_record_link_assignment.
3117 (_bfd_elf_merge_symbol): Likewise. Always call
3118 bfd_elf_link_mark_dynamic_symbol.
3119
fc523535 31202007-01-12 H.J. Lu <hongjiu.lu@intel.com>
a454209d
L
3121
3122 * Makefile.am (BFD_LIBS): Removed.
3123 * Makefile.in: Regenerated.
3124
fc523535 31252007-01-11 H.J. Lu <hongjiu.lu@intel.com>
21e40a48
L
3126
3127 PR binutils/3631
3128 * Makefile.am (OFILES): Add @bfd64_libs@.
3129 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
3130 * Makefile.in: Regenerated.
3131
3132 * configure.in (bfd_libs): Replaced by ...
3133 (bfd64_libs): This.
3134 * configure: Regenerated.
3135
59e0647f
NS
31362007-01-11 Nathan Sidwell <nathan@codesourcery.com>
3137
3138 * elf.c (assign_file_positions_for_load_sections): We can
3139 require fewer phdrs than expected.
3140
3bdcfdf4
KH
31412007-01-08 Kazu Hirata <kazu@codesourcery.com>
3142
3143 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
3144 * bfd-in2.h: Regenerate.
3145 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
3146 bfd_mach_cpu32_fido.
3147 (m68k_arch_features): Use fido_a instead of cpu32.
3148 (bfd_m68k_compatible): Reject the combination of Fido and
3149 ColdFire. Accept the combination of CPU32 and Fido with a
3150 warning.
3151 * elf32-m68k.c (elf32_m68k_object_p,
3152 elf32_m68k_merge_private_bfd_data,
3153 elf32_m68k_print_private_bfd_data): Treat Fido as an
3154 architecture by itself.
3155
42037fe5
NC
31562007-01-08 Kai Tietz <kai.tietz@onevision.com>
3157
3158 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
3159
ebe8b991
JJ
31602007-01-05 Jakub Jelinek <jakub@redhat.com>
3161
3162 * texhex.c (first_phase): Don't fall through into the default
3163 case.
3164 (pass_over): Replace abort () calls with return FALSE. Fix
3165 buffer overflow.
3166
b327f31f
AM
31672007-01-04 Jie Zhang <jie.zhang@analog.com>
3168
3169 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
3170 SEC_EXCLUDE on zero size .eh_frame.
3171
10a2343e 3172For older changes see ChangeLog-2006
56882138
AM
3173\f
3174Local Variables:
3175mode: change-log
3176left-margin: 8
3177fill-column: 74
3178version-control: never
3179End:
This page took 0.516198 seconds and 4 git commands to generate.