ppc476 icache bug workaround
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2014-02-03 Alan Modra <amodra@gmail.com>
2
3 * elf32-ppc.c (struct ppc_elf_link_hash_table): Add params.
4 Delete emit_stub_syms, no_tls_get_addr_opt. Update all uses.
5 (ppc_elf_link_params): New function.
6 (ppc_elf_create_glink): Align .glink to 64 bytes for ppc476
7 workaround.
8 (ppc_elf_select_plt_layout): Remove plt_style and emit_stub_syms
9 parameters. Use htab->params instead.
10 (ppc_elf_tls_setup): Remove no_tls_get_addr_opt parameter.
11 (ppc_elf_size_dynamic_sections): Align __glink_PLTresolve to
12 64 bytes for ppc476 workaround.
13 (struct ppc_elf_relax_info): New.
14 (ppc_elf_relax_section): Exclude linker created sections and
15 those too small to hold one instruction. Don't add another
16 branch around trampolines on later relax passes. Don't
17 generate trampolines for undefined symbols when !relocatable,
18 nor for plugin symbols. Allocate space for ppc476 workaround
19 patch area. Free fixups on error return path.
20 (ppc_elf_relocate_section): Handle ppc476 workaround patching.
21 * elf32-ppc.h (struct ppc_elf_params): New.
22 (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Update prototype.
23 (ppc_elf_link_params): Declare.
24 * section.c (SEC_INFO_TYPE_TARGET): Define.
25 * bfd-in2.h: Regenerate.
26
27 2014-02-02 Sandra Loosemore <sandra@codesourcery.com>
28
29 * elf32-nios2.c (struct elf32_nios2_link_hash_table): Add
30 h_gp_got field.
31 (nios2_elf32_relocate_section): Use got_base to adjust
32 GOT-pointer-relative relocations relative to _gp_got.
33 (create_got_section): Create _gp_got symbol.
34 (nios2_elf32_finish_dynamic_symbol): Make _gp_got absolute.
35 (nios2_elf32_size_dynamic_sections): Set _gp_got offset.
36
37 2014-01-30 Sandra Loosemore <sandra@codesourcery.com>
38
39 * bfd-in2.h: Update from reloc.c.
40 * elf32-nios2.c: Include elf32-nios2.h.
41 (elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
42 (nios2_reloc_map): Likewise.
43 (enum elf32_nios2_stub_type): Declare.
44 (struct elf32_nios2_stub_hash_entry): Declare.
45 (nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
46 (struct elf32_nios2_link_hash_entry): Add hsh_cache field.
47 (struct elf32_nios2_link_hash_table): Add new fields bstab,
48 stub_bfd, add_stub_section, layout_sections_again, stub_group,
49 bfd_count, top_index, input_list, all_local_syms.
50 (nios2_call26_stub_entry): New.
51 (nios2_elf32_install_imm16): Move up in file.
52 (nios2_elf32_install_data): Move up in file.
53 (hiadj): Move up in file.
54 (stub_hash_newfunc): New.
55 (link_hash_newfunc): Initialize hsh_cache field.
56 (STUB_SUFFIX): New.
57 (nios2_stub_name): New.
58 (nios2_get_stub_entry): New.
59 (nios2_add_stub): New.
60 (nios2_elf32_setup_section_lists): New.
61 (nios2_elf32_next_input_section): New.
62 (CALL26_SEGMENT): New.
63 (MAX_STUB_SECTION_SIZE): New.
64 (group_sections): New.
65 (nios2_type_of_stub): New.
66 (nios2_build_one_stub): New.
67 (nios2_size_one_stub): New.
68 (get_local_syms): New.
69 (nios2_elf32_size_stubs): New.
70 (nios2_elf32_build_stubs): New.
71 (nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
72 (nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT. Add
73 trampolines for R_NIOS2_CALL26 stubs.
74 (nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
75 (nios2_elf32_gc_sweep_hook): Likewise.
76 (nios2_elf32_link_hash_table_create): Initialize the stub hash table.
77 (nios2_elf32_link_hash_table_free): New.
78 (bfd_elf32_bfd_link_hash_table_free): Define.
79 * elf32-nios2.h: New file.
80 * libbfd.h: Update from reloc.c.
81 * reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
82
83 2014-01-29 Nick Clifton <nickc@redhat.com>
84
85 PR binutils/16318
86 * elf32-metag.c (elf_metag_post_process_headers): Call
87 _bfd_elf_post_process_headers.
88 * elf32-sh64.c (sh64_elf_copy_private_data): Call
89 _bfd_elf_copy_private_data.
90 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
91
92 2014-01-29 Nick Clifton <nickc@redhat.com>
93
94 * bfd-in.h (bfd_set_section_vma): Delete.
95 (bfd_set_section_alignment): Delete.
96 (bfd_set_section_userdata): Delete.
97 (bfd_set_cacheable): Delete.
98 * bfd.c (bfd_set_cacheable): New static inline function.
99 * section.c (bfd_set_section_userdata): Likewise.
100 (bfd_set_section_vma): Likewise.
101 (bfd_set_section_alignment): Likewise.
102 * bfd-in2.h: Regenerate.
103
104 2014-01-28 Nick Clifton <nickc@redhat.com>
105
106 * dwarf2.c (find_abstract_instance_name): For DW_FORM_ref_addr
107 attributes select the CU containing the abbreviation, which may not
108 be the current CU.
109
110 2014-01-24 Alan Modra <amodra@gmail.com>
111
112 * elf64-ppc.c (ppc_build_one_stub): Correct reloc count passed
113 to get_relocs for ELFv2.
114
115 2014-01-23 H.J. Lu <hongjiu.lu@intel.com>
116
117 PR ld/16498
118 * elf.c (_bfd_elf_map_sections_to_segments): Issue a linker error
119 if TLS sections are not adjacent.
120
121 2014-01-22 Alan Modra <amodra@gmail.com>
122
123 * elflink.c (elf_link_add_object_symbols): Call minfo for --as-needed.
124
125 2014-01-22 Alan Modra <amodra@gmail.com>
126
127 * elf64-ppc.c (STK_LINKER): Comment typo fix.
128
129 2014-01-21 H.J. Lu <hongjiu.lu@intel.com>
130
131 PR ld/16467
132 * elflink.c (_bfd_elf_merge_symbol): When types of the existing
133 regular default symbol definition and the versioned dynamic
134 symbol definition mismatch, skip the default symbol definition
135 if one of them is IFUNC.
136
137 2014-01-21 H.J. Lu <hongjiu.lu@intel.com>
138
139 PR ld/2404
140 * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
141 info->export_dynamic nor h->ref_dynamic for type mismatch when
142 adding the default version.
143
144 2014-01-16 Alan Modra <amodra@gmail.com>
145
146 * elfxx-mips.c (mips_elf_record_got_page_entry): Pass in a
147 mips_elf_traverse_got_arg* rather than mips_got_info*.
148 Adjust caller. Alloc on output_bfd rather than symbol section
149 owner.
150
151 2014-01-15 H.J. Lu <hongjiu.lu@intel.com>
152
153 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
154 change.
155 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
156
157 2014-01-14 H.J. Lu <hongjiu.lu@intel.com>
158
159 PR ld/16428
160 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs
161 against __ehdr_start.
162 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
163
164 2014-01-14 H.J. Lu <hongjiu.lu@intel.com>
165
166 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
167 change.
168 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
169
170 2014-01-14 H.J. Lu <hongjiu.lu@intel.com>
171
172 PR ld/16428
173 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc
174 count if there are any non pc-relative relocs.
175 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
176
177 2014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org>
178 Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>
179
180 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct
181 offset while calculating relocation address.
182 (elfNN_aarch64_create_small_pltn_entry): Likewise.
183 (elfNN_aarch64_init_small_plt0_entry): Likewise.
184
185 2014-01-13 Ma Jiang <ma.jiang@zte.com.cn>
186
187 PR ld/16202
188 * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for
189 R_ARM_ABS8 and R_ARM_ABS16.
190
191 2014-01-13 Alan Modra <amodra@gmail.com>
192
193 * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc,
194 error when shared and force a plt call otherwise.
195 (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless
196 plt_type == PLT_NEW.
197 (ppc_elf_relocate_section): Add missing test to resolve ifuncs to
198 the appropriate call stub.
199
200 2014-01-10 Alan Modra <amodra@gmail.com>
201
202 PR ld/14207
203 PR ld/16322
204 PR binutils/16323
205 * elf.c (assign_file_positions_for_load_sections): Revert last change.
206 (assign_file_positions_for_non_load_sections): When setting up
207 PT_GNU_RELRO header, don't require a corresponding PT_LOAD
208 header that completely covers the relro region.
209
210 2014-01-09 Tristan Gingold <gingold@adacore.com>
211
212 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump
213 table macros and add macros to initializa the structure.
214
215 2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
216
217 PR ld/14207
218 PR ld/16322
219 PR binutils/16323
220 * elf.c (_bfd_elf_map_sections_to_segments): Don't check section
221 size for PT_GNU_RELRO segment.
222 (assign_file_positions_for_load_sections): If PT_LOAD segment
223 doesn't fit PT_GNU_RELRO segment, adjust its p_filesz and p_memsz.
224
225 2014-01-07 Tom Tromey <tromey@redhat.com>
226
227 * elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
228 wrappers.
229
230 2014-01-03 Nick Clifton <nickc@redhat.com>
231
232 PR binutils/16199
233 * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
234 zero.
235
236 2014-01-02 Yuanhui Zhang <asmwarrior@gmail.com>
237
238 PR binutils/14289
239 * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
240
241 2014-01-02 Nick Clifton <nickc@redhat.com>
242
243 PR binutils/11983
244 * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
245 filename in the bfd's filename field.
246 * elfcode.h (bfd_from_remote_memory): Likewise.
247 * ieee.c (ieee_object_p): Likewise.
248 * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
249 * oasys.c (oasys_openr_next_archived_file): Likewise.
250 * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
251 * opncls.c (bfd_fopen): Likewise.
252 (bfd_openstreamr): Likewise.
253 (bfd_openr_iovec): Likewise.
254 (bfd_openw): Likewise.
255 (bfd_create): Likewise.
256 (_bfd_delete_bfd): Free filename.
257
258 For older changes see ChangeLog-2013
259 \f
260 Copyright (C) 2014 Free Software Foundation, Inc.
261
262 Copying and distribution of this file, with or without modification,
263 are permitted in any medium without royalty provided the copyright
264 notice and this notice are preserved.
265
266 Local Variables:
267 mode: change-log
268 left-margin: 8
269 fill-column: 74
270 version-control: never
271 End:
This page took 0.03986 seconds and 5 git commands to generate.