[AArch64] Optimize .gnu.hash table size for executable
[external/binutils.git] / bfd / ChangeLog
1 2017-01-20  Jiong Wang <jiong.wang@arm.com>
2
3         * elfnn-aarch64.c (elf_aarch64_hash_symbol): New function.
4         (elf_backend_hash_symbol): Define.
5
6 2017-01-18  Maciej W. Rozycki  <macro@imgtec.com>
7
8         PR ld/20828
9         * elflink.c (bfd_elf_record_link_assignment): Clear any
10         `forced_local' marking for DSO symbols that are not being
11         provided.
12
13 2017-01-17  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
14
15         * elfnn-riscv.c (riscv_elf_object_p): New function.
16
17 2017-01-12  H.J. Lu  <hongjiu.lu@intel.com>
18
19         PR ld/21038
20         * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
21         plt_bnd_eh_frame.
22         (elf_x86_64_check_relocs): Create .eh_frame section for the
23         .plt.bnd section.
24         (elf_x86_64_size_dynamic_sections): Allocate and initialize
25         .eh_frame section for the .plt.bnd section.
26         (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section
27         for the .plt.bnd section.
28
29 2017-01-12  Nick Clifton  <nickc@redhat.com>
30
31         PR binutils/20876
32         * opncls.c (find_separate_debug_file): Add include_dirs
33         parameter.  Only include the directory part of the bfd's filename
34         in search paths if include_dirs is true.  Add a couple of extra
35         locations for looking for debug files.
36         ( bfd_follow_gnu_debuglink): Update invocation of
37         find_separate_debug_file.
38         (bfd_follow_gnu_debugaltlink): Likewise.
39         (get_build_id): New function: Finds the build-id of the given bfd.
40         (get_build_id_name): New function: Computes the name of the
41         separate debug info file for a bfd, based upon its build-id.
42         (check_build_id_file): New function: Checks to see if a separate
43         debug info file exists at the given location, and that its
44         build-id matches that of the original bfd.
45         (bfd_follow_build_id_debuglink): New function: Finds a separate
46         debug info file for a given bfd by using the build-id method.
47         * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id
48         method of locating a separate debug info file before using the
49         debuglink method.
50         * bfd-in2.h: Regenerate.
51
52 2017-01-11  H.J. Lu  <hongjiu.lu@intel.com>
53
54         PR ld/21038
55         * elf64-x86-64.c (elf_x86_64_eh_frame_bnd_plt): New.
56         (elf_x86_64_bnd_arch_bed): Use elf_x86_64_eh_frame_bnd_plt and
57         elf_x86_64_eh_frame_plt_got.
58         (elf_x86_64_size_dynamic_sections): Get unwind info from
59         elf_x86_64_bnd_arch_bed for the BND PLT.
60
61 2017-01-11  Jeremy Soller  <jackpot51@gmail.com>
62
63         * config.bfd: Add entries for i686-redox and x86_64-redox.
64
65 2017-01-10  H.J. Lu  <hongjiu.lu@intel.com>
66
67         * elf32-i386.c (elf_i386_check_relocs): Align .eh_frame section
68         to 4 bytes.
69         * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align
70         .eh_frame section to 4 bytes for x32.
71         (elf_x86_64_check_relocs): Likewise.
72
73 2017-01-10  H.J. Lu  <hongjiu.lu@intel.com>
74
75         PR ld/20830
76         * elf32-i386.c (elf_i386_eh_frame_plt_got): New.
77         (PLT_GOT_FDE_LENGTH): Likewise.
78         (elf_i386_plt_layout): Add eh_frame_plt_got and
79         eh_frame_plt_got_size.
80         (elf_i386_plt): Updated.
81         (elf_i386_link_hash_table): Add plt_got_eh_frame.
82         (elf_i386_check_relocs): Create .eh_frame section for .plt.got.
83         (elf_i386_size_dynamic_sections): Allocate and initialize
84         .eh_frame section for .plt.got.
85         (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for
86         .plt.got.
87         (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and
88         eh_frame_plt_got_size.
89         * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New.
90         (PLT_GOT_FDE_LENGTH): Likewise.
91         (elf_x86_64_backend_data): Add eh_frame_plt_got and
92         eh_frame_plt_got_size.
93         (elf_x86_64_arch_bed): Updated.
94         (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and
95         eh_frame_plt_got_size.
96         (elf_x86_64_nacl_arch_bed): Likewise.
97         (elf_x86_64_link_hash_table): Add plt_got_eh_frame.
98         (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got.
99         (elf_x86_64_size_dynamic_sections): Allocate and initialize
100         .eh_frame section for .plt.got.
101         (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section
102         for .plt.got.
103
104 2017-01-10  H.J. Lu  <hongjiu.lu@intel.com>
105
106         * elf32-i386.c (elf_i386_size_dynamic_sections): Set
107         plt_eh_frame->size to eh_frame_plt_size and use eh_frame_plt.
108
109 2017-01-09  Nick Clifton  <nickc@redhat.com>
110
111         * dwarf2.c (lookup_address_in_function_table): Return early if
112         there are no functions in the given comp unit, or if the high
113         address of the last function in the comp unit is less than the
114         desired address.
115
116 2017-01-09  Nick Clifton  <nickc@redhat.com>
117
118         PR binutils/21013
119         * coffgen.c (_bfd_coff_get_external_symbols): Generate an error
120         message if there are too many symbols to load.
121
122 2017-01-04  James Clarke  <jrtc27@jrtc27.com>
123
124         * elf64-alpha.c (elf64_alpha_relax_opt_call): Don't set tsec_free
125         if relocs are cached.
126
127 2017-01-03  Rich Felker  <bugdal@aerifal.cx>
128
129         PR ld/21017
130         * elf32-microblaze.c (microblaze_elf_check_relocs): Add an entry
131         for R_MICROBLAZE_GOTOFF_64.
132
133 2017-01-03  Nick Clifton  <nickc@redhat.com>
134
135         * mach-o.c (bfd_mach_o_lookup_uuid_command): Fix compile time
136         warning about using a possibly uninitialised variable.
137
138 2017-01-02  Alan Modra  <amodra@gmail.com>
139
140         * elf32-hppa.c (ensure_undef_weak_dynamic): New function.
141         (allocate_plt_static, allocate_dynrelocs): Use it.
142
143 2017-01-02  Alan Modra  <amodra@gmail.com>
144
145         * elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for
146         .PARISC.unwind section.
147
148 2017-01-02  Alan Modra  <amodra@gmail.com>
149
150         PR ld/20989
151         * elfxx-sparc.c (gdop_relative_offset_ok): New function.
152         (_bfd_sparc_elf_relocate_section): Use it to validate GOT
153         indirect to GOT pointer relative code edit.
154
155 2017-01-02  Alan Modra  <amodra@gmail.com>
156
157         Update year range in copyright notice of all files.
158
159 For older changes see ChangeLog-2016
160 \f
161 Copyright (C) 2017 Free Software Foundation, Inc.
162
163 Copying and distribution of this file, with or without modification,
164 are permitted in any medium without royalty provided the copyright
165 notice and this notice are preserved.
166
167 Local Variables:
168 mode: change-log
169 left-margin: 8
170 fill-column: 74
171 version-control: never
172 End: