OSDN Git Service

ld/
[pf3gnuchains/pf3gnuchains3x.git] / bfd / ChangeLog
1 2008-01-21  Alan Modra  <amodra@bigpond.net.au>
2
3         PR 4453
4         * format.c (bfd_check_format_matches): Don't accept archives as
5         fully matching unless they have a map.
6
7 2008-01-21  Alan Modra  <amodra@bigpond.net.au>
8
9         * elflink.c (_bfd_elf_link_output_relocs): Correct error return.
10
11 2008-01-21  Alan Modra  <amodra@bigpond.net.au>
12
13         * ecoff.c (_bfd_ecoff_archive_p): Delete.
14         * libecoff.h (_bfd_ecoff_archive_p): Delete.
15         * coff-alpha.c (ecoffalpha_little_vec): Use bfd_generic_archive_p.
16         * coff-mips.c (ecoff_little_vec, ecoff_big_vec): Likewise.
17         (ecoff_biglittle_vec): Likewise.
18
19 2008-01-19  Alan Modra  <amodra@bigpond.net.au>
20
21         PR 5646
22         * elf64-ppc.c (ppc64_elf_tls_optimize): Ensure htab->tls_get_addr
23         non-NULL before dereferencing.
24
25 2008-01-15  Alan Modra  <amodra@bigpond.net.au>
26
27         PR 5604
28         * elf-bfd.h (struct elf_backend_data): Add gc_keep.  Remove param
29         names from others.
30         (_bfd_elf_gc_keep): Declare.
31         * elfxx-target.h (elf_backend_gc_keep): Define.
32         (elfNN_bed): Init new field.
33         * elflink.c (_bfd_elf_gc_keep): New function.
34         (bfd_elf_gc_sections): Call gc_keep.
35         * elf64-ppc.c (elf_backend_gc_keep): Define.
36         (struct _ppc64_elf_section_data): Move .opd related fields to
37         a struct so they don't occupy the same storage.  Adjust accesses
38         throughout file.
39         (ppc64_elf_gc_keep): New function, split out from..
40         (ppc64_elf_gc_mark_hook): ..here.  Don't call _bfd_elf_gc_mark
41         to mark .opd section, just set gc_mark.
42         (ppc64_elf_edit_opd): Remove no_opd_opt parm.  Don't set opd->adjust
43         unless we are changing .opd.  Test non-NULL opd->adjust at all
44         accesses throughout file.
45         * elf64-ppc.h (ppc64_elf_edit_opd): Update prototype.
46
47 2008-01-15  Alan Modra  <amodra@bigpond.net.au>
48
49         * bfd-in.h (BFD_HOST_LONG_LONG): Delete.
50         * bfd-in2.h: Regenerate.
51
52 2008-01-11  Tristan Gingold  <gingold@adacore.com>
53             Eric Botcazou  <ebotcazou@adacore.com>
54
55         * elf32-ppc.c (ppc_elf_gc_sweep_hook): Exit early if generating a
56         relocatable.
57         * elf32-arm.c (elf32_arm_gc_sweep_hook): Likewise.
58         * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise.
59         * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise.
60         * elf32-i386.c (elf_i386_gc_sweep_hook): Likewise.
61         * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise.
62         * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise.
63         * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
64         * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
65         * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
66         * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise.
67         * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
68         * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
69         * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Likewise.
70         * elfxx-mips.c (_bfd_mips_elf_gc_sweep_hook): Likewise.
71         * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Likewise.
72         * elflink.c (bfd_elf_gc_sections): Do not punt on relocatable output
73         or executable output with relocations.
74
75 2008-01-09  Nick Clifton  <nickc@redhat.com>
76
77         PR gas/5552
78         * elf32-fr30.c (fr30_elf_howto_table): Set partial_inplace field
79         to FALSE for all relocs.
80
81 2008-01-09  Richard Sandiford  <rsandifo@nildram.co.uk>
82
83         PR ld/5526
84         * elf-bfd.h (eh_cie_fde): Add u.cie.u.full_cie and u.cie.merged
85         fields.  Rename u.cie.u.merged to u.cie.u.merged_with.
86         (eh_frame_sec_info): Add a cies field.
87         (eh_frame_hdr_info): Add a merge_cies field.
88         * elf-eh-frame.c (cie): Add a reloc_index member to the personality
89         union.
90         (_bfd_elf_begin_eh_frame_parsing): Set hdr_info->merge_cies instead
91         of hdr_info->cies.
92         (_bfd_elf_parse_eh_frame): Remove tmp_cie.  Ccreate an array of
93         cie structures in all cases and use it instead of extended_cies.
94         If merging, store the cie array in sec_info->cies and point each
95         CIE's eh_fde_cie at the associated element.  Do not try to
96         calculate the value of the personality routine here; record the
97         offset of the relocation instead.  Do not merge CIEs here.
98         (_bfd_elf_end_eh_frame_parsing): Do not free hdr_info->cies here...
99         (_bfd_elf_discard_section_eh_frame_hdr): ...do it here instead.
100         (_bfd_elf_gc_mark_fdes): Mark the original (unmerged) CIE.
101         (find_merged_cie): New function.
102         (_bfd_elf_gc_mark_fdes): Use it.  Free sec_info->cies.
103
104 2008-01-07  Nick Clifton  <nickc@redhat.com>
105
106         PR binutils/5535
107         * vms.c (vms_close_and_cleanup): Check for the presence of a
108         vms_private_data_struct before examining any of its fields.
109
110 2008-01-07  H.J. Lu  <hongjiu.lu@intel.com>
111
112         PR ld/5522
113         * elflink.c (elf_link_input_bfd): Don't write out a section if
114         its output section is marked with SEC_NEVER_LOAD.
115
116 For older changes see ChangeLog-2007
117 \f
118 Local Variables:
119 mode: change-log
120 left-margin: 8
121 fill-column: 74
122 version-control: never
123 End: