Commit | Line | Data |
---|---|---|
4e7fbb34 JW |
1 | 2016-05-10 Jiong Wang <jiong.wang@arm.com> |
2 | ||
3 | * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant | |
4 | aarch64_tls_transition check. | |
5 | ||
4f4faa4d TP |
6 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
7 | ||
8 | * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type | |
9 | enumerator. | |
10 | (arm_stub_sym_claimed): New function. | |
11 | (elf32_arm_create_stub): Use veneered symbol name and section if | |
12 | veneer needs to claim its symbol, and keep logic unchanged otherwise. | |
13 | (arm_stub_claim_sym): New function. | |
14 | (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim | |
15 | veneered symbol, otherwise create local symbol as before. | |
16 | ||
39d911fc TP |
17 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
18 | ||
19 | * elf32-arm.c (elf32_arm_size_stubs): Use new macros | |
20 | ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get | |
21 | and set branch type of a symbol. | |
22 | (bfd_elf32_arm_process_before_allocation): Likewise. | |
23 | (elf32_arm_relocate_section): Likewise and fix identation along the | |
24 | way. | |
25 | (allocate_dynrelocs_for_symbol): Likewise. | |
26 | (elf32_arm_finish_dynamic_symbol): Likewise. | |
27 | (elf32_arm_swap_symbol_in): Likewise. | |
28 | (elf32_arm_swap_symbol_out): Likewise. | |
29 | ||
6bde4c52 TP |
30 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
31 | ||
32 | * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter. | |
33 | * bfd-in2.h: Regenerated. | |
34 | * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section | |
35 | parameter to add_stub_section callback. | |
36 | (elf32_arm_create_or_find_stub_sec): Get output section from link_sec | |
37 | and pass it down to add_stub_section. | |
38 | (elf32_arm_add_stub): Set section to stub_sec if NULL before using it | |
39 | for error message. | |
40 | (elf32_arm_size_stubs): Add output section parameter to | |
41 | add_stub_section function pointer parameter. | |
42 | ||
b715f643 TP |
43 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
44 | ||
45 | * elf32-arm.c (elf32_arm_create_stub): New function. | |
46 | (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation. | |
47 | ||
8d9d9490 TP |
48 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
49 | ||
50 | * elf32-arm.c (enum elf32_arm_stub_type): Delete | |
51 | arm_stub_a8_veneer_lwm enumerator. | |
52 | (arm_stub_a8_veneer_lwm): New unsigned constant to replace | |
53 | aforementioned enumerator. | |
54 | (struct elf32_arm_stub_hash_entry): Delete target_addend | |
55 | field and add source_value. | |
56 | (struct a8_erratum_fix): Delete addend field and add target_offset. | |
57 | (stub_hash_newfunc): Initialize source_value field amd remove | |
58 | initialization for target_addend. | |
59 | (arm_build_one_stub): Stop special casing Thumb relocations: promote | |
60 | the else to being always executed, moving the | |
61 | arm_stub_a8_veneer_b_cond specific code in it. Remove | |
62 | stub_entry->target_addend from points_to computation. | |
63 | (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset | |
64 | to target symbol from start of section rather than the offset from the | |
65 | stub address. | |
66 | (elf32_arm_size_stubs): Set stub_entry's source_value and target_value | |
67 | fields from struct a8_erratum_fix's offset and target_offset | |
68 | respectively. | |
69 | (make_branch_to_a8_stub): Rename target variable to loc. Compute | |
70 | veneered_insn_loc and loc using stub_entry's source_value. | |
71 | ||
15afaa63 TP |
72 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
73 | ||
74 | (elf32_arm_merge_eabi_attributes): Add merging logic for | |
75 | Tag_DSP_extension. | |
76 | ||
66a36822 PC |
77 | 2016-05-10 Pip Cet <pipcet@gmail.com> |
78 | ||
79 | PR ld/20059 | |
80 | * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type): | |
81 | Define as _bfd_generic_copy_link_hash_symbol_type when using | |
82 | generic hash table. | |
83 | ||
315350be NC |
84 | 2016-05-09 Nick Clifton <nickc@redhat.com> |
85 | ||
86 | PR binutils/20063 | |
87 | * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link | |
88 | field before accessing sections array. | |
89 | ||
9239bbd3 CM |
90 | 2016-05-09 Christophe Monat <christophe.monat@st.com> |
91 | ||
92 | PR ld/20030 | |
93 | * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding. | |
94 | (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs | |
95 | to nb_words. | |
96 | (create_instruction_vldmia): Add is_dp to disambiguate SP/DP | |
97 | encoding. | |
98 | (create_instruction_vldmdb): Likewise. | |
99 | (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding, | |
100 | uses it to re-encode. | |
101 | ||
73597c18 NC |
102 | 2016-05-09 Nick Clifton <nickc@redhat.com> |
103 | ||
104 | PR 19938 | |
105 | * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental | |
106 | commit. | |
107 | ||
ae1bb197 AM |
108 | 2016-05-09 Alan Modra <amodra@gmail.com> |
109 | ||
110 | * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check. | |
111 | ||
97196564 L |
112 | 2016-05-06 H.J. Lu <hongjiu.lu@intel.com> |
113 | ||
114 | PR ld/17550 | |
115 | * elf-bfd.h (elf_link_hash_entry): Update comments for indx, | |
116 | documenting that indx == -3 if symbol is defined in a discarded | |
117 | section. | |
118 | * elflink.c (elf_link_add_object_symbols): Set indx to -3 if | |
119 | symbol is defined in a discarded section. | |
120 | (elf_link_output_extsym): Strip a global symbol defined in a | |
121 | discarded section. | |
122 | ||
030e823c L |
123 | 2016-05-06 H.J. Lu <hongjiu.lu@intel.com> |
124 | ||
125 | * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel | |
126 | MCU. | |
127 | ||
c175a657 L |
128 | 2016-05-05 H.J. Lu <hongjiu.lu@intel.com> |
129 | ||
130 | * elf32-i386.c (elf_i386_convert_load): Extract the GOT load | |
131 | conversion to ... | |
132 | (elf_i386_convert_load_reloc): This. New function. | |
133 | * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load | |
134 | conversion to ... | |
135 | (elf_x86_64_convert_load_reloc): This. New function. | |
136 | ||
bedfd056 L |
137 | 2016-05-05 H.J. Lu <hongjiu.lu@intel.com> |
138 | ||
139 | * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd. | |
140 | Don't check if contents == NULL. | |
141 | (elf_i386_tls_transition): Add from_relocate_section. Check | |
142 | from_relocate_section instead of contents != NULL. Update | |
143 | elf_i386_check_tls_transition call. | |
144 | (elf_i386_check_relocs): Cache the section contents if | |
145 | keep_memory is FALSE. Pass FALSE as from_relocate_section to | |
146 | elf_i386_tls_transition. | |
147 | (elf_i386_relocate_section): Pass TRUE as from_relocate_section | |
148 | to elf_i386_tls_transition. | |
149 | (elf_backend_caches_rawsize): New. | |
150 | * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check | |
151 | if contents == NULL. | |
152 | (elf_x86_64_tls_transition): Add from_relocate_section. Check | |
153 | from_relocate_section instead of contents != NULL. | |
154 | (elf_x86_64_check_relocs): Cache the section contents if | |
155 | keep_memory is FALSE. Pass FALSE as from_relocate_section to | |
156 | elf_x86_64_tls_transition. | |
157 | (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section | |
158 | to elf_x86_64_tls_transition. | |
159 | (elf_backend_caches_rawsize): New. | |
160 | ||
6d6a648c MR |
161 | 2016-05-03 Maciej W. Rozycki <macro@imgtec.com> |
162 | ||
163 | PR 10549 | |
164 | * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle | |
165 | STB_GNU_UNIQUE. | |
166 | ||
1f56df9d JW |
167 | 2016-05-03 Jiong Wang <jiong.wang@arm.com> |
168 | ||
169 | * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype. | |
170 | * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise. | |
171 | * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize | |
172 | no_apply_dynamic_relocs. | |
173 | (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though | |
174 | dynamic relocations generated. | |
175 | ||
493f652c L |
176 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
177 | ||
178 | * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp | |
179 | setting to ... | |
180 | (elf_i386_create_dynamic_sections): Here. | |
181 | * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move | |
182 | interp setting to ... | |
183 | (elf_x86_64_create_dynamic_sections): Here. | |
184 | ||
e62b9723 L |
185 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
186 | ||
187 | * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC | |
188 | and replace (EH)->has_got_reloc with GOT_RELOC. | |
189 | (elf_i386_fixup_symbol): Pass has_got_reloc to | |
190 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
191 | (elf_i386_allocate_dynrelocs): Likewise. | |
192 | (elf_i386_relocate_section): Likewise. | |
193 | (elf_i386_finish_dynamic_symbol): Likewise. | |
194 | (elf_i386_convert_load): Pass TRUE to | |
195 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
196 | * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take | |
197 | GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC. | |
198 | (elf_x86_64_fixup_symbol): Pass has_got_reloc to | |
199 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
200 | (elf_x86_64_allocate_dynrelocs): Likewise. | |
201 | (elf_x86_64_relocate_section): Likewise. | |
202 | (elf_x86_64_finish_dynamic_symbol): Likewise. | |
203 | (elf_x86_64_convert_load): Pass TRUE to | |
204 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
205 | ||
c337a162 L |
206 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
207 | ||
208 | * elf32-i386.c (check_relocs_failed): New. | |
209 | (elf_i386_check_relocs): Set check_relocs_failed on error. | |
210 | (elf_i386_relocate_section): Skip if check_relocs failed. | |
211 | ||
afd9acee L |
212 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
213 | ||
214 | * elf64-x86-64.c (elf_x86_64_check_relocs): Set | |
215 | check_relocs_failed on error. | |
216 | ||
5522f910 NC |
217 | 2016-04-29 Nick Clifton <nickc@redhat.com> |
218 | ||
219 | PR 19938 | |
220 | * elf-bfd.h (struct elf_backend_data): Rename | |
221 | elf_backend_set_special_section_info_and_link to | |
222 | elf_backend_copy_special_section_fields. | |
223 | * elfxx-target.h: Likewise. | |
224 | * elf.c (section_match): Ignore the SHF_INFO_LINK flag when | |
225 | comparing section flags. | |
226 | (copy_special_section_fields): New function. | |
227 | (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field. | |
228 | Perform two scans over special sections. The first one looks for | |
229 | a direct mapping between the output section and an input section. | |
230 | The second scan looks for a possible match based upon section | |
231 | characteristics. | |
232 | * elf32-arm.c (elf32_arm_copy_special_section_fields): New | |
233 | function. Handle setting the sh_link field of SHT_ARM_EXIDX | |
234 | sections. | |
235 | * elf32-i386.c (elf32_i386_set_special_info_link): Rename to | |
236 | elf32_i386_copy_solaris_special_section_fields. | |
237 | * elf32-sparc.c (elf32_sparc_set_special_section_info_link): | |
238 | Rename to elf32_sparc_copy_solaris_special_section_fields. | |
239 | * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to | |
240 | elf64_x86_64_copy_solaris_special_section_fields. | |
241 | ||
786a118c NC |
242 | 2016-04-28 Nick Clifton <nickc@redhat.com> |
243 | ||
244 | * po/zh_CN.po: Updated Chinese (simplified) translation. | |
245 | ||
91f8bf69 L |
246 | 2016-04-27 H.J. Lu <hongjiu.lu@intel.com> |
247 | ||
248 | PR ld/20006 | |
249 | * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections | |
250 | when estimating distances between output sections. | |
251 | ||
a6a4679f AM |
252 | 2016-04-27 Alan Modra <amodra@gmail.com> |
253 | ||
254 | * elflink.c (_bfd_elf_is_start_stop): New function. | |
255 | (_bfd_elf_gc_mark_rsec): Use it. | |
256 | * elf-bfd.h (_bfd_elf_is_start_stop): Declare. | |
257 | ||
28cc9170 TS |
258 | 2016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> |
259 | ||
260 | * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *. | |
261 | * mmo.c (mmo_get_section_contents): Likewise. | |
262 | (mmo_set_section_contents): Likewise. | |
263 | ||
d5486c43 L |
264 | 2016-04-26 H.J. Lu <hongjiu.lu@intel.com> |
265 | ||
266 | * elf-bfd.h (elf_link_hash_table): Update comments for | |
267 | dynsymcount. | |
268 | * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for | |
269 | the unused NULL entry at the head of dynamic symbol table. | |
270 | (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0 | |
271 | checks. | |
272 | ||
6645479e L |
273 | 2016-04-21 H.J. Lu <hongjiu.lu@intel.com> |
274 | ||
275 | * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker | |
276 | created file from dynobj. | |
277 | ||
6cd255ca L |
278 | 2016-04-21 H.J. Lu <hongjiu.lu@intel.com> |
279 | ||
280 | * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a | |
281 | normal input file if possible. | |
282 | ||
4f3b23b3 NC |
283 | 2016-04-21 Nick Clifton <nickc@redhat.com> |
284 | ||
285 | * aout-adobe.c: Use _bfd_generic_link_check_relocs. | |
286 | * aout-target.h: Likewise. | |
287 | * aout-tic30.c: Likewise. | |
288 | * binary.c: Likewise. | |
289 | * bout.c: Likewise. | |
290 | * coff-alpha.c: Likewise. | |
291 | * coff-rs6000.c: Likewise. | |
292 | * coff64-rs6000.c: Likewise. | |
293 | * coffcode.h: Likewise. | |
294 | * i386msdos.c: Likewise. | |
295 | * i386os9k.c: Likewise. | |
296 | * ieee.c: Likewise. | |
297 | * ihex.c: Likewise. | |
298 | * libbfd-in.h: Likewise. | |
299 | * libecoff.h: Likewise. | |
300 | * mach-o-target.c: Likewise. | |
301 | * mmo.c: Likewise. | |
302 | * nlm-target.h: Likewise. | |
303 | * oasys.c: Likewise. | |
304 | * pef.c: Likewise. | |
305 | * plugin.c: Likewise. | |
306 | * ppcboot.c: Likewise. | |
307 | * som.c: Likewise. | |
308 | * srec.c: Likewise. | |
309 | * tekhex.c: Likewise. | |
310 | * versados.c: Likewise. | |
311 | * vms-alpha.c: Likewise. | |
312 | * xsym.c: Likewise. | |
313 | * elfxx-target.h: Use _bfd_elf_link_check_relocs. | |
314 | * linker.c (bfd_link_check_relocs): New function. | |
315 | (_bfd_generic_link_check_relocs): New function. | |
316 | * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of | |
317 | _bfd_link_check_relocs field. | |
318 | (struct bfd_target)L Add _bfd_link_check_relocs field. | |
319 | * bfd-in2.h: Regenerate. | |
320 | * libbfd.h: Regenerate. | |
321 | ||
e66cdd68 L |
322 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
323 | ||
324 | * elf32-i386.c (elf_i386_gc_sweep_hook): Removed. | |
325 | (elf_backend_gc_sweep_hook): Likewise. | |
326 | * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise. | |
327 | (elf_backend_gc_sweep_hook): Likewise. | |
328 | ||
5ce03cea L |
329 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
330 | ||
331 | * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations | |
332 | in excluded sections | |
333 | ||
338c190a L |
334 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
335 | ||
336 | PR ld/19969 | |
337 | * elf64-x86-64.c (check_relocs_failed): New. | |
338 | (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs. | |
339 | Support relocation agaist local symbol. Set check_relocs_failed. | |
340 | (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check | |
341 | R_X86_64_32 relocation overflow. | |
342 | (elf_x86_64_relocate_section): Skip if check_relocs failed. | |
343 | Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic. | |
344 | ||
466ee2af L |
345 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
346 | ||
347 | * elf32-i386.c (elf_i386_check_relocs): Call | |
348 | _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol. | |
349 | * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. | |
350 | ||
d9689752 L |
351 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
352 | ||
353 | * elf-bfd.h (_bfd_elf_link_check_relocs): New. | |
354 | * elflink.c (_bfd_elf_link_check_relocs): New function. | |
355 | (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs | |
356 | if check_relocs_after_open_input is FALSE. | |
357 | ||
e6c7cdec TS |
358 | 2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> |
359 | ||
360 | * cache.c: Update old style function definitions. | |
361 | * elf32-m68k.c: Likewise. | |
362 | * elf64-mmix.c: Likewise. | |
363 | * stab-syms.c: Likewise. | |
364 | ||
b98e6871 TS |
365 | 2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> |
366 | ||
367 | * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *. | |
368 | ||
6fd8e7c2 L |
369 | 2016-04-15 H.J. Lu <hongjiu.lu@intel.com> |
370 | ||
371 | * Makefile.in: Regenerated with automake 1.11.6. | |
372 | * aclocal.m4: Likewise. | |
373 | * doc/Makefile.in: Likewise. | |
374 | ||
4b0c052e AB |
375 | 2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com> |
376 | ||
377 | * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry. | |
378 | * bfd-in2.h: Regenerate. | |
379 | * libbfd.h: Regenerate. | |
380 | * elf32-arc.c: Add 'opcode/arc.h' include. | |
381 | (struct arc_relocation_data): Add symbol_name. | |
382 | (arc_special_overflow_checks): New function. | |
383 | (arc_do_relocation): Use arc_special_overflow_checks, reindent as | |
384 | required, add an extra comment. | |
385 | (elf_arc_relocate_section): Setup symbol_name in reloc_data. | |
386 | ||
33cbe6c0 AB |
387 | 2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com> |
388 | ||
389 | * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all | |
390 | entries. | |
391 | (elf_arc_relocate_section): Update enum uses. | |
392 | (elf_arc_check_relocs): Likewise. | |
393 | (elf_arc_finish_dynamic_symbol): Likewise. | |
394 | ||
7634c4e6 L |
395 | 2016-04-14 H.J. Lu <hongjiu.lu@intel.com> |
396 | ||
397 | * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with | |
398 | "sh_link". | |
399 | ||
84865015 NC |
400 | 2016-04-14 Nick Clifton <nickc@redhat.com> |
401 | ||
402 | PR target/19938 | |
403 | * elf-bbfd.h (struct elf_backend_data): New field: | |
404 | elf_strtab_flags. | |
405 | New field: elf_backend_set_special_section_info_and_link | |
406 | * elfxx-target.h (elf_backend_strtab_flags): Define if not already | |
407 | defined. | |
408 | (elf_backend_set_special_section_info_and_link): Define if not | |
409 | already defined. | |
410 | (elfNN_bed): Use elf_backend_set_special_section_info_and_link and | |
411 | elf_backend_strtab_flags macros to initialise fields in structure. | |
412 | * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS | |
413 | being set even if SHF_MERGE is not set. | |
414 | (elf_fake_sections): Likewise. | |
415 | (section_match): New function. Matches two ELF sections based | |
416 | upon fixed characteristics. | |
417 | (find_link): New function. Locates a section in a BFD that | |
418 | matches a section in a different BFD. | |
419 | (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link | |
420 | fields of reserved sections. | |
421 | (bfd_elf_compute_section_file_positions): Set the flags for the | |
422 | .shstrtab section based upon the elf_strtab_flags field in the | |
423 | elf_backend_data structure. | |
424 | (swap_out_syms): Likewise for the .strtab section. | |
425 | * elflink.c (bfd_elf_final_link): Set the flags for the | |
426 | .strtab section based upon the elf_strtab_flags field in the | |
427 | elf_backend_data structure. | |
428 | * elf32-i386.c (elf32_i386_set_special_info_link): New function. | |
429 | (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris | |
430 | targets. | |
431 | (elf_backend_set_special_section_info_and_link): Define for | |
432 | Solaris targets. | |
433 | * elf32-sparc.c: Likewise. | |
434 | * elf64-x86-64.c: Likewise. | |
435 | ||
2df3368d L |
436 | 2016-04-11 H.J. Lu <hongjiu.lu@intel.com> |
437 | ||
438 | PR ld/19939 | |
439 | * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer | |
440 | to bfd_boolean. | |
441 | * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated. | |
442 | Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc | |
443 | applies to read-only section. | |
444 | * elf32-i386.c (elf_i386_link_hash_table): Add | |
445 | readonly_dynrelocs_against_ifunc. | |
446 | (elf_i386_allocate_dynrelocs): Updated. | |
447 | (elf_i386_size_dynamic_sections): Issue an error for read-only | |
448 | segment with dynamic IFUNC relocations only if | |
449 | readonly_dynrelocs_against_ifunc is TRUE. | |
450 | * elf64-x86-64.c (elf_x86_64_link_hash_table): Add | |
451 | readonly_dynrelocs_against_ifunc. | |
452 | (elf_x86_64_allocate_dynrelocs): Updated. | |
453 | (elf_x86_64_size_dynamic_sections): Issue an error for read-only | |
454 | segment with dynamic IFUNC relocations only if | |
455 | readonly_dynrelocs_against_ifunc is TRUE. | |
456 | * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs): | |
457 | Updated. | |
458 | ||
15dd01b1 TP |
459 | 2016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com> |
460 | ||
461 | * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be | |
462 | a fall through from error_ret_free_internal. Free local_syms in | |
463 | error_ret_free_local if allocated from bfd_elf_get_elf_syms (). | |
464 | ||
1e5885b7 CZ |
465 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
466 | ||
467 | * elf32-arc.c (plt_do_relocs_for_symbol): Changed. | |
468 | (relocate_plt_for_entry): Likewise. | |
469 | ||
b3aee839 CZ |
470 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
471 | ||
472 | * elf32-arc.c (elf_arc_check_relocs): Changed | |
473 | ||
094fb063 CZ |
474 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
475 | ||
476 | * elf32-arc.c (name_for_global_symbol): Changed assert. | |
477 | (get_replace_function): Created.: | |
478 | (struct arc_relocation_data): Changed to signed types. | |
479 | (defines S, L, P, PDATA): Casted to signed type. | |
480 | (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise. | |
481 | (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed. | |
482 | (arc_do_relocation): Changed. | |
483 | ||
94e5c971 CZ |
484 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
485 | ||
486 | * elf32-arc.c (name_for_global_symbol): Added assert to check for | |
487 | symbol index. | |
488 | (elf_arc_relocate_section): Added and changed asserts, validating | |
489 | the synamic symbol index. | |
490 | (elf_arc_finish_dynamic_symbol): Do not fill the dynamic | |
491 | relocation if symbol has dynindx set to -1. | |
492 | ||
1f599d0e MR |
493 | 2016-04-05 Maciej W. Rozycki <macro@imgtec.com> |
494 | ||
495 | * elflink.c (elf_link_add_object_symbols): Always turn hidden | |
496 | and internal symbols which have a dynamic index into local | |
497 | ones. | |
498 | ||
67f101ee NC |
499 | 2016-04-04 Nick Clifton <nickc@redhat.com> |
500 | ||
501 | PR 19872 | |
502 | * dwarf2.c (parse_comp_unit): Skip warning about unrecognised | |
503 | version number if the version is zero. | |
504 | ||
7b15fa7a AM |
505 | 2016-04-01 Alan Modra <amodra@gmail.com> |
506 | ||
507 | PR 19886 | |
508 | * elflink.c (on_needed_list): Recursively check needed status. | |
509 | (elf_link_add_object_symbols): Adjust. | |
510 | ||
024ea11b SKS |
511 | 2016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> |
512 | ||
513 | * elf32-avr.c (avr_elf32_load_records_from_section): Free | |
514 | internal_relocs only if they aren't cached. | |
515 | ||
ed3056eb NC |
516 | 2016-03-29 Nick Clifton <nickc@redhat.com> |
517 | ||
518 | PR 17334 | |
519 | * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax | |
520 | assertion on the size of the got section to allow it to be bigger | |
521 | than the number of relocs. | |
522 | ||
e2b4fc91 TS |
523 | 2016-03-29 Toni Spets <toni.spets@iki.fi> |
524 | ||
525 | PR 19878 | |
526 | * coffcode.h (coff_write_object_contents): Revert accidental | |
527 | 2014-11-10 change. | |
528 | ||
a97fbc7e AM |
529 | 2016-03-22 Alan Modra <amodra@gmail.com> |
530 | ||
531 | PR 19850 | |
532 | * dwarf2.c (read_attribute_value): Skip info_ptr check for | |
533 | DW_FORM_flag_present. | |
534 | ||
9780e045 NC |
535 | 2016-03-22 Nick Clifton <nickc@redhat.com> |
536 | ||
96254e5c NC |
537 | * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an |
538 | architecture name for backwards compatibility. | |
539 | ||
7769fa97 NC |
540 | * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible |
541 | unbounded stack use. | |
542 | ||
9780e045 NC |
543 | * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a |
544 | sufficiently recent version of GCC. | |
545 | * configure: Regenerate. | |
546 | ||
6f4c0a42 AM |
547 | 2016-03-22 Alan Modra <amodra@gmail.com> |
548 | ||
549 | PR 19851 | |
550 | * plugin.c (try_load_plugin): Avoid -Wstack-usage warning. | |
551 | ||
8699fc3e AB |
552 | 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com> |
553 | ||
554 | * archures.c (bfd_mach_arc_nps400): Define. | |
555 | * bfd-in2.h: Regenerate. | |
556 | * cpu-arc.c (arch_info_struct): New entry for nps400, renumber | |
557 | some existing entries to make space. | |
558 | * elf32-arc.c (arc_elf_object_p): Add nps400 case. | |
559 | (arc_elf_final_write_processing): Likewise. | |
560 | ||
a9522a21 AB |
561 | 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com> |
562 | ||
563 | * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of | |
564 | EF_ARC_CPU_GENERIC. | |
565 | (arc_elf_final_write_processing): Don't bother setting cpu field | |
566 | in e_flags, this will have been set elsewhere. | |
567 | ||
c0334580 AB |
568 | 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com> |
569 | ||
570 | * elf32-arc.c (arc_elf_final_write_processing): Switch to using | |
571 | EF_ARC_MACH_MSK. | |
572 | ||
e1fa0163 NC |
573 | 2016-03-21 Nick Clifton <nickc@redhat.com> |
574 | ||
575 | * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144 | |
576 | * configure: Regenerate. | |
577 | * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of | |
578 | alloca with call to xmalloc. | |
579 | * elf32-nds32.c: Likewise. | |
580 | * elf64-hppa.c: Likewise. | |
581 | * elfxx-mips.c: Likewise. | |
582 | * pef.c: Likewise. | |
583 | * pei-x86_64.c: Likewise. | |
584 | * som.c: Likewise. | |
585 | * xsym.c: Likewise. | |
586 | ||
4e0c91e4 L |
587 | 2016-03-15 H.J. Lu <hongjiu.lu@intel.com> |
588 | ||
589 | PR ld/19827 | |
590 | * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol | |
591 | locally in PIE. | |
592 | (elf_i386_relocate_section): Likewise. | |
593 | * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. | |
594 | (elf_x86_64_relocate_section): Likewise. | |
595 | ||
4c10bbaa L |
596 | 2016-03-15 H.J. Lu <hongjiu.lu@intel.com> |
597 | ||
598 | PR ld/19807 | |
599 | * elf64-x86-64.c (elf_x86_64_relocate_section): Check | |
600 | no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S | |
601 | relocation overflow check. | |
602 | ||
fbe48798 L |
603 | 2016-03-14 H.J. Lu <hongjiu.lu@intel.com> |
604 | ||
605 | * bfd-in2.h: Regenerated. | |
606 | ||
37b01f6a DG |
607 | 2016-03-11 Dan Gissel <dgisselq@ieee.org> |
608 | ||
609 | PR 19713 | |
610 | * elf.c (_bfd_elf_section_offset): Ensure that the returned offset | |
611 | uses bytes not octets. | |
612 | * elflink.c (resolve_section): Likewise. | |
613 | Add a bfd parameter. | |
614 | (eval_section): Pass the input_bfd to resolve_section. | |
615 | (bfd_elf_perform_complex_relocation): Convert byte offset to | |
616 | octets before read and writing values. | |
617 | (elf_link_input_bfd): Add byte to octet conversions. | |
618 | (elf_reloc_link_order): Likewise. | |
619 | (elf_fixup_link_order): Likewise. | |
620 | (bfd_elf_final_link): Likewise. | |
621 | * reloc.c (_bfd_final_link_relocate): Likewise. | |
622 | * syms.c (_bfd_stab_section_find_nearest_line): Likewise. | |
623 | ||
3ed4ff97 NC |
624 | 2016-03-10 Nick Clifton <nickc@redhat.com> |
625 | ||
626 | * config.bfd: Mark the i370 target as obsolete. | |
627 | ||
4b05e0a7 PA |
628 | 2016-03-09 Pedro Alves <palves@redhat.com> |
629 | ||
630 | * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old | |
631 | gcc ABI)" to printable name. | |
632 | * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead | |
633 | of "v850-rh850" as printable name. | |
634 | ||
26c62da0 LW |
635 | 2016-03-09 Leon Winter <winter-gcc@bfw-online.de> |
636 | ||
637 | PR ld/19623 | |
638 | * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply | |
639 | relocations against absolute symbols. | |
640 | ||
03ee8583 AM |
641 | 2016-03-09 Alan Modra <amodra@gmail.com> |
642 | ||
643 | PR binutils/19775 | |
644 | * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero | |
645 | length elements in the archive. | |
646 | ||
9c1d7a08 L |
647 | 2016-03-08 H.J. Lu <hongjiu.lu@intel.com> |
648 | ||
649 | PR ld/19789 | |
650 | * elflink.c (elf_link_add_object_symbols): Create dynamic sections | |
651 | for -E/--dynamic-list only when not relocatable. | |
652 | ||
d1ed1c7d L |
653 | 2016-03-08 H.J. Lu <hongjiu.lu@intel.com> |
654 | ||
655 | PR ld/19784 | |
656 | * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference | |
657 | count for locally defined local IFUNC symbols in shared object. | |
658 | * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. | |
659 | ||
202ac193 L |
660 | 2016-03-08 H.J. Lu <hongjiu.lu@intel.com> |
661 | ||
662 | PR ld/19579 | |
663 | * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking | |
664 | together. | |
665 | ||
72f3b6aa CZ |
666 | 2016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com> |
667 | Andrew Burgess <andrew.burgess@embecosm.com> | |
668 | ||
669 | * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32. | |
670 | (arc_bfd_put_32): Becomes an alias for bfd_put_32. | |
671 | (arc_elf_howto_init): Added assert to validate relocations. | |
672 | (get_middle_endian_relocation): Delete. | |
673 | (middle_endian_convert): New function. | |
674 | (ME): Redefine, now does nothing. | |
675 | (IS_ME): New define. | |
676 | (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO' | |
677 | definition to call middle_endian_convert. Add a new local | |
678 | variable and make use of this throughout. Added call to | |
679 | arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations. | |
680 | ||
4fc87424 NC |
681 | 2016-03-07 Nick Clifton <nickc@redhat.com> |
682 | ||
683 | PR binutils/19775 | |
684 | * archive.c (bfd_generic_openr_next_archived_file): Allow zero | |
685 | length elements in the archive. | |
686 | ||
18f822a0 JW |
687 | 2016-03-07 Jiong Wang <jiong.wang@arm.com> |
688 | ||
689 | * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got | |
690 | section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced. | |
691 | ||
07492f66 L |
692 | 2016-03-04 H.J. Lu <hongjiu.lu@intel.com> |
693 | ||
694 | PR ld/19579 | |
695 | * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in | |
696 | executable as definition if the new definition comes from a | |
697 | shared library. | |
698 | ||
70a5df4f AM |
699 | 2016-03-02 Alan Modra <amodra@gmail.com> |
700 | ||
701 | * Makefile.in: Regenerate. | |
702 | * po/SRC-POTFILES.in: Regenerate. | |
703 | ||
841fdfcd CZ |
704 | 2016-02-29 Cupertino Miranda <cmiranda@synopsys.com> |
705 | ||
706 | * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the | |
707 | relocation addend when sections get merged. | |
708 | ||
7e458899 CZ |
709 | 2016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com> |
710 | ||
711 | * elf32-arc.c (arc_elf_final_write_processing): Add condition to | |
712 | the flag change. | |
713 | (elf_arc_relocate_section): Fixes and conditions to support PIE. | |
714 | Assert for code sections dynamic relocs. | |
715 | ||
c5e3a364 RL |
716 | 2016-02-26 Renlin Li <renlin.li@arm.com> |
717 | ||
718 | * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow | |
719 | check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2. | |
720 | ||
bae420ef L |
721 | 2016-02-26 H.J. Lu <hongjiu.lu@intel.com> |
722 | ||
723 | PR ld/19609 | |
724 | * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for | |
725 | load with locally bound symbols if PIC is false or there is no | |
726 | base register. Optimize branch to 0 if PIC is false. | |
727 | (elf_i386_relocate_section): Don't generate dynamic relocations | |
728 | against undefined weak symbols if PIC is false. | |
729 | * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization | |
730 | if we can't estimate relocation overflow with --no-relax. | |
731 | Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound | |
732 | symbols if PIC is false. Optimize branch to 0 if PIC is false. | |
733 | (elf_x86_64_relocate_section): Don't generate dynamic relocations | |
734 | against undefined weak symbols if PIC is false. | |
735 | ||
11e5f1ec L |
736 | 2016-02-26 H.J. Lu <hongjiu.lu@intel.com> |
737 | ||
738 | PR ld/19645 | |
739 | * bfd.c (bfd): Change flags to 20 bits. | |
740 | (BFD_CONVERT_ELF_COMMON): New. | |
741 | (BFD_USE_ELF_STT_COMMON): Likewise. | |
742 | (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and | |
743 | BFD_USE_ELF_STT_COMMON. | |
744 | (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise. | |
745 | * configure.ac: Remove --enable-elf-stt-common. | |
746 | * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for | |
747 | common symbol depending on BFD_CONVERT_ELF_COMMON and | |
748 | BFD_USE_ELF_STT_COMMON. | |
749 | * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for | |
750 | STT_COMMON. | |
751 | * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check | |
752 | STT_COMMON. | |
753 | (elf_link_convert_common_type): New function. | |
754 | (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for | |
755 | common symbol depending on BFD_CONVERT_ELF_COMMON and | |
756 | BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx. | |
757 | * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON | |
758 | and BFD_USE_ELF_STT_COMMON to object_flags. | |
759 | (TARGET_LITTLE_SYM): Likewise. | |
760 | * syms.c (BSF_KEEP_G): Renamed to ... | |
761 | (BSF_ELF_COMMON): This. | |
762 | * bfd-in2.h: Regenerated. | |
763 | * config.in: Likewise. | |
764 | * configure: Likewise. | |
765 | ||
aec6b87e L |
766 | 2016-02-26 H.J. Lu <hongjiu.lu@intel.com> |
767 | ||
768 | PR ld/19636 | |
769 | PR ld/19704 | |
770 | PR ld/19719 | |
771 | * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. | |
772 | (elf_i386_link_hash_entry): Add has_got_reloc and | |
773 | has_non_got_reloc. | |
774 | (elf_i386_link_hash_table): Add interp. | |
775 | (elf_i386_link_hash_newfunc): Initialize has_got_reloc and | |
776 | has_non_got_reloc. | |
777 | (elf_i386_copy_indirect_symbol): Copy has_got_reloc and | |
778 | has_non_got_reloc. | |
779 | (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc. | |
780 | (elf_i386_fixup_symbol): New function. | |
781 | (elf_i386_pie_finish_undefweak_symbol): Likewise. | |
782 | (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic | |
783 | relocations and discard relocations against resolved undefined | |
784 | weak symbols in executable. Don't make resolved undefined weak | |
785 | symbols in executable dynamic. Keep dynamic non-GOT/non-PLT | |
786 | relocation against undefined weak symbols in PIE. | |
787 | (elf_i386_size_dynamic_sections): Set interp to .interp section. | |
788 | (elf_i386_relocate_section): Don't generate dynamic relocations | |
789 | against resolved undefined weak symbols in PIE, except for | |
790 | R_386_PC32. | |
791 | (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without | |
792 | dynamic PLT/GOT relocations for resolved undefined weak symbols. | |
793 | Don't generate dynamic relocation against resolved undefined weak | |
794 | symbol in executable. | |
795 | (elf_i386_finish_dynamic_sections): Call | |
796 | elf_i386_pie_finish_undefweak_symbol on all symbols in PIE. | |
797 | (elf_backend_fixup_symbol): New. | |
798 | * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. | |
799 | (elf_x86_64_link_hash_entry): Add has_got_reloc and | |
800 | has_non_got_reloc. | |
801 | (elf_x86_64_link_hash_table): Add interp. | |
802 | (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and | |
803 | has_non_got_reloc. | |
804 | (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and | |
805 | has_non_got_reloc. | |
806 | (elf_x86_64_check_relocs): Set has_got_reloc and | |
807 | has_non_got_reloc. | |
808 | (elf_x86_64_fixup_symbol): New function. | |
809 | (elf_x86_64_pie_finish_undefweak_symbol): Likewise. | |
810 | (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic | |
811 | relocations and discard relocations against resolved undefined | |
812 | weak symbols in executable. Don't make resolved undefined weak | |
813 | symbols in executable dynamic. | |
814 | (elf_x86_64_size_dynamic_sections): Set interp to .interp section. | |
815 | (elf_x86_64_relocate_section): Check relocation overflow for | |
816 | dynamic relocations against unresolved weak undefined symbols. | |
817 | Don't generate dynamic relocations against resolved weak | |
818 | undefined symbols in PIE. | |
819 | (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without | |
820 | dynamic PLT/GOT relocations for resolved undefined weak symbols. | |
821 | Don't generate dynamic relocation against resolved undefined weak | |
822 | symbol in executable. | |
823 | (elf_x86_64_finish_dynamic_sections): Call | |
824 | elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE. | |
825 | (elf_backend_fixup_symbol): New. | |
826 | ||
b32547cd AM |
827 | 2016-02-26 Alan Modra <amodra@gmail.com> |
828 | ||
829 | * elf64-ppc.c (create_linkage_sections): Create sfpr when | |
830 | save_restore_funcs, rest of sections when not relocatable. | |
831 | (ppc64_elf_init_stub_bfd): Always call create_linkage_sections. | |
832 | (sfpr_define): Define all symbols on emitted code. | |
833 | (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created | |
834 | when relocatable. Move sfpr_define loop earlier. | |
835 | ||
ef77d6af L |
836 | 2016-02-24 H.J. Lu <hongjiu.lu@intel.com> |
837 | ||
838 | * elf64-x86-64.c (elf_x86_64_need_pic): New function. | |
839 | (elf_x86_64_relocate_section): Use it. Replace | |
840 | x86_64_elf_howto_table[r_type] with howto. | |
841 | ||
0f550b3d L |
842 | 2016-02-24 H.J. Lu <hongjiu.lu@intel.com> |
843 | ||
844 | PR ld/19698 | |
845 | * elflink.c (bfd_elf_record_link_assignment): Set versioned if | |
846 | symbol version is unknown. | |
847 | ||
13f42277 L |
848 | 2016-02-24 H.J. Lu <hongjiu.lu@intel.com> |
849 | ||
850 | * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset | |
851 | to (bfd_vma) -1 when setting needs_plt to 0. | |
852 | * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. | |
853 | ||
6b3b0ab8 L |
854 | 2016-02-23 H.J. Lu <hongjiu.lu@intel.com> |
855 | ||
856 | * elflink.c (bfd_elf_record_link_assignment): Check for shared | |
857 | library, instead of PIC, and don't check PDE when making linker | |
858 | assigned symbol dynamic. | |
859 | ||
17733f5b FS |
860 | 2016-02-23 Faraz Shahbazker <faraz.shahbazker@imgtec.com> |
861 | ||
862 | * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment | |
863 | ABIVERSION for non-executable stack. | |
864 | ||
47993b4a RF |
865 | 2016-02-23 Rich Felker <bugdal@aerifal.cx> |
866 | ||
867 | PR target/19516 | |
868 | * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): | |
869 | Always produce a RELATIVE reloc for a local symbol. | |
870 | ||
2d8dcb81 HPN |
871 | 2016-02-23 Hans-Peter Nilsson <hp@axis.com> |
872 | ||
873 | Fix test-case ld-elf/pr19617b | |
874 | * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't | |
875 | discard unused non-function symbols when --dynamic-list-data. | |
876 | ||
1a6e6083 L |
877 | 2016-02-22 H.J. Lu <hongjiu.lu@intel.com> |
878 | ||
879 | * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the | |
880 | dynsym section, even if it is empty, with dynamic sections. | |
881 | ||
75c1920b L |
882 | 2016-02-22 H.J. Lu <hongjiu.lu@intel.com> |
883 | ||
884 | * syms.c: Remove BSF_COMMON from comments. | |
885 | * bfd-in2.h: Regenerated. | |
886 | ||
9a228467 JW |
887 | 2016-02-22 Jiong Wang <jiong.wang@arm.com> |
888 | ||
889 | * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation | |
890 | for destination. Remove useless function parameters. | |
891 | (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub. | |
892 | ||
73768414 NC |
893 | 2016-02-19 Nick Clifton <nickc@redhat.com> |
894 | ||
e517df3d NC |
895 | PR ld/19629 |
896 | * aoutx.h (aout_link_add_symbols): Check for out of range string | |
897 | table offsets. | |
898 | ||
73768414 NC |
899 | PR ld/19628 |
900 | * reloc.c (bfd_generic_get_relocated_section_contents): Stop | |
901 | processing if we encounter a reloc without an associated symbol. | |
902 | ||
bf89386a L |
903 | 2016-02-18 H.J. Lu <hongjiu.lu@intel.com> |
904 | ||
905 | PR ld/19617 | |
906 | * elflink.c (elf_link_add_object_symbols): Always create dynamic | |
907 | sections for -E/--dynamic-list. | |
908 | ||
8f79b794 L |
909 | 2016-02-17 H.J. Lu <hongjiu.lu@intel.com> |
910 | ||
911 | * elf64-x86-64.c (elf_backend_omit_section_dynsym): New. Defined | |
912 | to bfd_true. | |
913 | ||
64bfc258 JM |
914 | 2016-02-16 Joseph Myers <joseph@codesourcery.com> |
915 | ||
916 | * plugin.c (plugin_vec): Set match priority to 255. | |
917 | * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When | |
918 | matching against the plugin vector, take priority from there not | |
919 | from TEMP. | |
920 | ||
9fb71ee4 NC |
921 | 2016-02-15 Nick Clifton <nickc@redhat.com> |
922 | ||
923 | * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values | |
924 | for length and type fields. Use a signed value for the | |
925 | suffix_length field. | |
926 | ||
32875eb1 L |
927 | 2016-02-10 H.J. Lu <hongjiu.lu@intel.com> |
928 | ||
929 | PR ld/19601 | |
930 | * elf32-i386.c (elf_i386_relocate_section): Mask off the least | |
931 | significant bit in GOT offset for R_386_GOT32X. | |
932 | ||
83da6e74 NC |
933 | 2016-02-10 Nick Clifton <nickc@redhat.com> |
934 | ||
935 | PR 19405 | |
936 | * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed | |
937 | immediate values. | |
938 | * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the | |
939 | number of messages about FDE encoding preventing .eh_frame_hdr | |
940 | generation. | |
941 | ||
027e9c75 NC |
942 | 2016-02-09 Nick Clifton <nickc@redhat.com> |
943 | ||
609332f1 NC |
944 | * oasys.c (oasys_archive_p): Fix indentation. |
945 | * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned | |
946 | constant for left shifting. | |
947 | ||
027e9c75 NC |
948 | * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more |
949 | helpful warning message to explain why certain AArch64 relocs | |
950 | might overflow. | |
951 | ||
6f57d046 SM |
952 | 2016-02-05 Simon Marchi <simon.marchi@ericsson.com> |
953 | ||
954 | * pe-mips.c (coff_mips_reloc): Fix formatting. | |
955 | ||
bdbca4e6 CM |
956 | 2016-02-05 Cupertino Miranda <Cupertino.Miranda@synopsys.com> |
957 | ||
958 | * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2 | |
959 | to bfd_mach_arc_arc600. | |
960 | ||
4f038ee5 AM |
961 | 2016-02-04 Alan Modra <amodra@gmail.com> |
962 | ||
963 | * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch | |
964 | for big-endian. | |
965 | ||
4a539596 L |
966 | 2016-02-02 H.J. Lu <hongjiu.lu@intel.com> |
967 | ||
968 | PR ld/19542 | |
969 | * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated | |
fb06f1c0 | 970 | distances in the compressed_size field of the output section. |
4a539596 | 971 | |
85fabe71 AM |
972 | 2016-02-02 Alan Modra <amodra@gmail.com> |
973 | ||
974 | * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict | |
975 | ELFv2 entry optimization. | |
976 | ||
14f2c699 L |
977 | 2016-02-02 H.J. Lu <hongjiu.lu@intel.com> |
978 | ||
979 | PR binutils/19547 | |
980 | * elf.c (assign_section_numbers): Clear HAS_RELOC if there are | |
981 | no relocations in relocatable files. | |
982 | ||
aef28989 L |
983 | 2016-02-01 H.J. Lu <hongjiu.lu@intel.com> |
984 | ||
985 | PR ld/19553 | |
986 | * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED | |
987 | if a symbol from a library loaded via DT_NEEDED doesn't match | |
988 | the symbol referenced by regular object. | |
989 | ||
655ed9ea NS |
990 | 2016-02-01 Nathaniel Smith <njs@pobox.com> |
991 | ||
992 | * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both | |
993 | CODE and DATA. | |
994 | ||
ec1f73bb AM |
995 | 2016-02-01 Alan Modra <amodra@gmail.com> |
996 | ||
997 | * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on | |
998 | an out of range reloc_index. | |
999 | * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise. | |
1000 | ||
b6471e6e KR |
1001 | 2016-02-01 Kamil Rytarowski <n54@gmx.com> |
1002 | ||
1003 | * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo. | |
1004 | (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c. | |
1005 | * Makefile.in: Regenerated. | |
1006 | ||
0bc7245a JK |
1007 | 2016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com> |
1008 | ||
1009 | * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation. | |
1010 | ||
6d4b2867 JDA |
1011 | 2016-01-31 John David Anglin <danglin@gcc.gnu.org> |
1012 | ||
1013 | PR ld/19526 | |
1014 | * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output | |
1015 | files. | |
1016 | * elf64-hppa.c (elf32_hppa_final_link): Likewise. Remove retval. | |
1017 | ||
d9e3b590 L |
1018 | 2016-01-30 H.J. Lu <hongjiu.lu@intel.com> |
1019 | ||
1020 | PR ld/19539 | |
1021 | * elf32-i386.c (elf_i386_reloc_type_class): Check relocation | |
1022 | against STT_GNU_IFUNC symbol only with dynamic symbols. | |
1023 | * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise. | |
1024 | ||
bf150a0b L |
1025 | 2016-01-28 H.J. Lu <hongjiu.lu@intel.com> |
1026 | ||
1027 | PR binutils/19523 | |
1028 | * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to | |
1029 | decompress debug sections. | |
1030 | ||
840855c5 MR |
1031 | 2016-01-25 Maciej W. Rozycki <macro@imgtec.com> |
1032 | ||
1033 | * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to | |
1034 | `dynindx'. | |
1035 | ||
cf466c2a NC |
1036 | 2016-01-25 Nick Clifton <nickc@redhat.com> |
1037 | ||
1038 | PR target/19435 | |
1039 | * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free | |
1040 | dsym filename buffer. | |
1041 | ||
eb6b0cf4 MR |
1042 | 2016-01-24 Maciej W. Rozycki <macro@imgtec.com> |
1043 | ||
1044 | * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation. | |
1045 | ||
e67f83e5 MR |
1046 | 2016-01-24 Maciej W. Rozycki <macro@imgtec.com> |
1047 | ||
1048 | * elfxx-mips.c (BZ16_REG): Correct calculation. | |
1049 | ||
23a42089 NC |
1050 | 2016-01-21 Nick Clifton <nickc@redhat.com> |
1051 | ||
1052 | * elf32-arc.c (ADD_RELA): Fix compile time warning errors by | |
1053 | changing the type of _loc to be bfd_byte *. | |
1054 | (elf_arc_finish_dynamic_symbol): Likewise. | |
1055 | ||
aebf9be7 NC |
1056 | 2016-01-21 Nick Clifton <nickc@redhat.com> |
1057 | ||
1058 | PR ld/19455 | |
1059 | * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF | |
1060 | class of the linker stub bfd. | |
1061 | (elf32_arm_check_relocs): Skip check for pic format after | |
1062 | processing a vxWorks R_ARM_ABS12 reloc. | |
1063 | * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when | |
1064 | reporting a class mismatch. | |
1065 | ||
2f340668 JW |
1066 | 2016-01-21 Jiong Wang <jiong.wang@arm.com> |
1067 | ||
1068 | * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch | |
1069 | veneer for sym_sec != input_sec. | |
1070 | (elfNN_aarch64_size_stub): Support STT_SECTION symbol. | |
1071 | (elfNN_aarch64_final_link_relocate): Take rela addend into account when | |
1072 | calculation destination. | |
1073 | ||
aeb70569 AM |
1074 | 2016-01-21 Alan Modra <amodra@gmail.com> |
1075 | ||
1076 | * elf-linux-core.h (swap_linux_prpsinfo32_out): New function. | |
1077 | (swap_linux_prpsinfo64_out): New function. | |
1078 | (LINUX_PRPSINFO32_SWAP_FIELDS): Delete. | |
1079 | (LINUX_PRPSINFO64_SWAP_FIELDS): Delete. | |
1080 | * elf.c (elfcore_write_linux_prpsinfo32): Adjust. Don't memset. | |
1081 | (elfcore_write_linux_prpsinfo64): Likewise. | |
1082 | * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function. | |
1083 | (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete. | |
1084 | (elfcore_write_ppc_linux_prpsinfo32): Adjust. Don't memset. | |
1085 | ||
de64ce13 AM |
1086 | 2016-01-21 Alan Modra <amodra@gmail.com> |
1087 | ||
1088 | * elf-linux-core.h: Rename from elf-linux-psinfo.h. | |
1089 | * elf.c: Adjust #include. | |
1090 | * elf32-ppc.c: Don't #include elf-linux-psinfo.h | |
1091 | * Makefile.am (SOURCE_HFILES): Update. | |
1092 | * Makefile.in: Regenerate. | |
1093 | * po/SRC-PORFILES.in: Regenerate. | |
1094 | ||
c603b11b AM |
1095 | 2016-01-21 Alan Modra <amodra@gmail.com> |
1096 | ||
1097 | * configure.ac: Move corefile selection later in file. Move | |
1098 | tdefaults code immediately after other target vector code. | |
1099 | * configure: Regenerate. | |
1100 | ||
91f68a68 MG |
1101 | 2016-01-20 Mickael Guene <mickael.guene@st.com> |
1102 | ||
1103 | * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread | |
1104 | section using '.text.noread' pattern. | |
1105 | ||
5b2c414d JB |
1106 | 2016-01-19 John Baldwin <jhb@FreeBSD.org> |
1107 | ||
1108 | * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes. | |
1109 | ||
34e967a5 MC |
1110 | 2016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com> |
1111 | Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com> | |
1112 | ||
1113 | * arc-plt.def: New file. | |
1114 | * arc-plt.h: Likewise. | |
1115 | * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry, | |
1116 | elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry, | |
1117 | elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry, | |
1118 | elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove. | |
1119 | (name_for_global_symbol): Added. | |
1120 | (ADD_RELA): Helper to create dynamic relocs. | |
1121 | (new_got_entry_to_list): Create a new got entry in linked list. | |
1122 | (symbol_has_entry_of_type): Search for specific type of entry in | |
1123 | list. | |
1124 | (is_reloc_for_GOT): return FALSE for any TLS related relocs. | |
1125 | (is_reloc_for_TLS, arc_elf_set_private_flags) | |
1126 | (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data) | |
1127 | (arc_elf_merge_private_bfd_data): New functions. | |
1128 | (debug_arc_reloc): Cleaned debug info printing. | |
1129 | (PDATA reloc): Changed not to perform address alignment. | |
1130 | (reverse_me): Added. Fix for ARC_32 relocs. | |
1131 | (arc_do_relocation): Return bfd_reloc_of when no relocation should | |
1132 | occur. | |
1133 | (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets. | |
1134 | Changed function to access an array of list of GOT entries instead | |
1135 | of just an array of offsets. | |
1136 | (elf_arc_relocate_section): Added support for PIC and TLS related relocations. | |
1137 | (elf_arc_check_relocs): Likewise. | |
1138 | (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol, | |
1139 | (elf_arc_finish_dynamic_sections): Likewise | |
1140 | (arc_create_dynamic_sections): Modified conditions to create | |
1141 | dynamic sections. | |
1142 | (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro. | |
1143 | (plt_do_relocs_for_symbol, relocate_plt_for_symbol) | |
1144 | (relocate_plt_for_entry): Changed to support new way to define PLT | |
1145 | related code. | |
1146 | (add_symbol_to_plt): Likewise. | |
1147 | (arc_elf_link_hash_table_create): New function. | |
1148 | ||
9ae678af NC |
1149 | 2016-01-18 Nick Clifton <nickc@redhat.com> |
1150 | ||
1151 | PR ld/19440 | |
1152 | * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external | |
1153 | section number into internal section number. | |
1154 | * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise. | |
1155 | * coffswap.h (coff_swap_sym_in): Likewise. | |
1156 | * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise. | |
1157 | * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal | |
1158 | section number field is big enough to hold the external value. | |
1159 | ||
5c14705f AM |
1160 | 2016-01-17 Alan Modra <amodra@gmail.com> |
1161 | ||
1162 | * configure: Regenerate. | |
1163 | ||
ac06903d YU |
1164 | 2016-01-12 Yury Usishchev <y.usishchev@samsung.com> |
1165 | ||
1166 | * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind | |
1167 | when address in first unwind entry does not match start of | |
1168 | section. | |
1169 | ||
109575d7 JW |
1170 | 2016-01-08 Richard Sandiford <richard.sandiford@arm.com> |
1171 | Jiong Wang <jiong.wang@arm.com> | |
1172 | ||
1173 | PR ld/19368 | |
1174 | * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to | |
1175 | reloc_class_ifunc. | |
1176 | ||
b05a65d0 AB |
1177 | 2016-01-06 Andrew Burgess <andrew.burgess@embecosm.com> |
1178 | ||
1179 | * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to | |
1180 | place 'R_' before the reloc name returned. | |
1181 | (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before | |
1182 | the relocation string. | |
1183 | ||
a3dc0a7f MR |
1184 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1185 | ||
1186 | * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function, | |
1187 | factored out from... | |
1188 | (_bfd_mips_elf_merge_private_bfd_data): ... here. | |
1189 | ||
d537eeb5 MR |
1190 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1191 | ||
1192 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move | |
1193 | attribute check after ELF file header flag check. | |
1194 | ||
43d223b5 MR |
1195 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1196 | ||
1197 | * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the | |
1198 | return status from `_bfd_elf_merge_object_attributes'. | |
1199 | ||
b2e9744f MR |
1200 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1201 | ||
1202 | * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function, | |
1203 | factored out from... | |
1204 | (_bfd_mips_elf_merge_private_bfd_data): ... here. | |
1205 | ||
28d45e28 MR |
1206 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1207 | ||
1208 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the | |
1209 | handling of input MIPS ABI flags together. | |
1210 | ||
23ba6f18 MR |
1211 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1212 | ||
1213 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress | |
1214 | attribute checks for null input. | |
1215 | ||
cf8502c1 MR |
1216 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1217 | ||
1218 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local | |
1219 | pointers to target data. | |
1220 | ||
dcb1c796 MR |
1221 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1222 | ||
1223 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct | |
1224 | an FP ABI warning. | |
1225 | ||
6f2750fe AM |
1226 | 2016-01-01 Alan Modra <amodra@gmail.com> |
1227 | ||
1228 | Update year range in copyright notice of all files. | |
1229 | ||
3499769a AM |
1230 | For older changes see ChangeLog-2015 and doc/ChangeLog-0415 |
1231 | \f | |
1232 | Copyright (C) 2016 Free Software Foundation, Inc. | |
1233 | ||
1234 | Copying and distribution of this file, with or without modification, | |
1235 | are permitted in any medium without royalty provided the copyright | |
1236 | notice and this notice are preserved. | |
1237 | ||
1238 | Local Variables: | |
1239 | mode: change-log | |
1240 | left-margin: 8 | |
1241 | fill-column: 74 | |
1242 | version-control: never | |
1243 | End: |