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