Replace "link" with "sh_link"
[external/binutils.git] / bfd / ChangeLog
1 2016-04-14  H.J. Lu  <hongjiu.lu@intel.com>
2
3         * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
4         "sh_link".
5
6 2016-04-14  Nick Clifton  <nickc@redhat.com>
7
8         PR target/19938
9         * elf-bbfd.h (struct elf_backend_data): New field:
10         elf_strtab_flags.
11         New field: elf_backend_set_special_section_info_and_link
12         * elfxx-target.h (elf_backend_strtab_flags): Define if not already
13         defined.
14         (elf_backend_set_special_section_info_and_link): Define if not
15         already defined.
16         (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
17         elf_backend_strtab_flags macros to initialise fields in structure.
18         * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
19         being set even if SHF_MERGE is not set.
20         (elf_fake_sections): Likewise.
21         (section_match): New function.  Matches two ELF sections based
22         upon fixed characteristics.
23         (find_link): New function.  Locates a section in a BFD that
24         matches a section in a different BFD.
25         (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
26         fields of reserved sections.
27         (bfd_elf_compute_section_file_positions): Set the flags for the
28         .shstrtab section based upon the elf_strtab_flags field in the
29         elf_backend_data structure.
30         (swap_out_syms): Likewise for the .strtab section.
31         * elflink.c (bfd_elf_final_link): Set the flags for the
32         .strtab section based upon the elf_strtab_flags field in the
33         elf_backend_data structure.
34         * elf32-i386.c (elf32_i386_set_special_info_link): New function.
35         (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
36         targets.
37         (elf_backend_set_special_section_info_and_link): Define for
38         Solaris targets.
39         * elf32-sparc.c: Likewise.
40         * elf64-x86-64.c: Likewise.
41
42 2016-04-11  H.J. Lu  <hongjiu.lu@intel.com>
43
44         PR ld/19939
45         * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
46         to bfd_boolean.
47         * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
48         Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
49         applies to read-only section.
50         * elf32-i386.c (elf_i386_link_hash_table): Add
51         readonly_dynrelocs_against_ifunc.
52         (elf_i386_allocate_dynrelocs): Updated.
53         (elf_i386_size_dynamic_sections): Issue an error for read-only
54         segment with dynamic IFUNC relocations only if
55         readonly_dynrelocs_against_ifunc is TRUE.
56         * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
57         readonly_dynrelocs_against_ifunc.
58         (elf_x86_64_allocate_dynrelocs): Updated.
59         (elf_x86_64_size_dynamic_sections): Issue an error for read-only
60         segment with dynamic IFUNC relocations only if
61         readonly_dynrelocs_against_ifunc is TRUE.
62         * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
63         Updated.
64
65 2016-04-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>
66
67         * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
68         a fall through from error_ret_free_internal.  Free local_syms in
69         error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
70
71 2016-04-05  Cupertino Miranda  <cmiranda@synopsys.com>
72
73         * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
74         (relocate_plt_for_entry): Likewise.
75
76 2016-04-05  Cupertino Miranda  <cmiranda@synopsys.com>
77
78         * elf32-arc.c (elf_arc_check_relocs): Changed
79
80 2016-04-05  Cupertino Miranda  <cmiranda@synopsys.com>
81
82         * elf32-arc.c (name_for_global_symbol): Changed assert.
83         (get_replace_function): Created.:
84         (struct arc_relocation_data): Changed to signed types.
85         (defines S, L, P, PDATA): Casted to signed type.
86         (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
87         (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
88         (arc_do_relocation): Changed.
89
90 2016-04-05  Cupertino Miranda  <cmiranda@synopsys.com>
91
92         * elf32-arc.c (name_for_global_symbol): Added assert to check for
93         symbol index.
94         (elf_arc_relocate_section): Added and changed asserts, validating
95         the synamic symbol index.
96         (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
97         relocation if symbol has dynindx set to -1.
98
99 2016-04-05  Maciej W. Rozycki  <macro@imgtec.com>
100
101         * elflink.c (elf_link_add_object_symbols): Always turn hidden
102         and internal symbols which have a dynamic index into local
103         ones.
104
105 2016-04-04  Nick Clifton  <nickc@redhat.com>
106
107         PR 19872
108         * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
109         version number if the version is zero.
110
111 2016-04-01  Alan Modra  <amodra@gmail.com>
112
113         PR 19886
114         * elflink.c (on_needed_list): Recursively check needed status.
115         (elf_link_add_object_symbols): Adjust.
116
117 2016-03-30  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
118
119         * elf32-avr.c (avr_elf32_load_records_from_section): Free
120         internal_relocs only if they aren't cached.
121
122 2016-03-29  Nick Clifton  <nickc@redhat.com>
123
124         PR 17334
125         * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
126         assertion on the size of the got section to allow it to be bigger
127         than the number of relocs.
128
129 2016-03-29  Toni Spets  <toni.spets@iki.fi>
130
131         PR 19878
132         * coffcode.h (coff_write_object_contents): Revert accidental
133         2014-11-10 change.
134
135 2016-03-22  Alan Modra  <amodra@gmail.com>
136
137         PR 19850
138         * dwarf2.c (read_attribute_value): Skip info_ptr check for
139         DW_FORM_flag_present.
140
141 2016-03-22  Nick Clifton  <nickc@redhat.com>
142
143         * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
144         architecture name for backwards compatibility.
145
146         * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
147         unbounded stack use.
148
149         * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
150         sufficiently recent version of GCC.
151         * configure: Regenerate.
152
153 2016-03-22  Alan Modra  <amodra@gmail.com>
154
155         PR 19851
156         * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
157
158 2016-03-21  Andrew Burgess  <andrew.burgess@embecosm.com>
159
160         * archures.c (bfd_mach_arc_nps400): Define.
161         * bfd-in2.h: Regenerate.
162         * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
163         some existing entries to make space.
164         * elf32-arc.c (arc_elf_object_p): Add nps400 case.
165         (arc_elf_final_write_processing): Likewise.
166
167 2016-03-21  Andrew Burgess  <andrew.burgess@embecosm.com>
168
169         * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
170         EF_ARC_CPU_GENERIC.
171         (arc_elf_final_write_processing): Don't bother setting cpu field
172         in e_flags, this will have been set elsewhere.
173
174 2016-03-21  Andrew Burgess  <andrew.burgess@embecosm.com>
175
176         * elf32-arc.c (arc_elf_final_write_processing): Switch to using
177         EF_ARC_MACH_MSK.
178
179 2016-03-21  Nick Clifton  <nickc@redhat.com>
180
181         * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144
182         * configure: Regenerate.
183         * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of
184         alloca with call to xmalloc.
185         * elf32-nds32.c: Likewise.
186         * elf64-hppa.c: Likewise.
187         * elfxx-mips.c: Likewise.
188         * pef.c: Likewise.
189         * pei-x86_64.c: Likewise.
190         * som.c: Likewise.
191         * xsym.c: Likewise.
192
193 2016-03-15  H.J. Lu  <hongjiu.lu@intel.com>
194
195         PR ld/19827
196         * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol
197         locally in PIE.
198         (elf_i386_relocate_section): Likewise.
199         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
200         (elf_x86_64_relocate_section): Likewise.
201
202 2016-03-15  H.J. Lu  <hongjiu.lu@intel.com>
203
204         PR ld/19807
205         * elf64-x86-64.c (elf_x86_64_relocate_section): Check
206         no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S
207         relocation overflow check.
208
209 2016-03-14  H.J. Lu  <hongjiu.lu@intel.com>
210
211         * bfd-in2.h: Regenerated.
212
213 2016-03-11  Dan Gissel  <dgisselq@ieee.org>
214
215         PR 19713
216         * elf.c (_bfd_elf_section_offset): Ensure that the returned offset
217         uses bytes not octets.
218         * elflink.c (resolve_section): Likewise.
219         Add a bfd parameter.
220         (eval_section): Pass the input_bfd to resolve_section.
221         (bfd_elf_perform_complex_relocation): Convert byte offset to
222         octets before read and writing values.
223         (elf_link_input_bfd): Add byte to octet conversions.
224         (elf_reloc_link_order): Likewise.
225         (elf_fixup_link_order): Likewise.
226         (bfd_elf_final_link): Likewise.
227         * reloc.c (_bfd_final_link_relocate): Likewise.
228         * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
229
230 2016-03-10  Nick Clifton  <nickc@redhat.com>
231
232         * config.bfd: Mark the i370 target as obsolete.
233
234 2016-03-09  Pedro Alves  <palves@redhat.com>
235
236         * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
237         gcc ABI)" to printable name.
238         * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
239         of "v850-rh850" as printable name.
240
241 2016-03-09  Leon Winter  <winter-gcc@bfw-online.de>
242
243         PR ld/19623
244         * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
245         relocations against absolute symbols.
246
247 2016-03-09  Alan Modra  <amodra@gmail.com>
248
249         PR binutils/19775
250         * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero
251         length elements in the archive.
252
253 2016-03-08  H.J. Lu  <hongjiu.lu@intel.com>
254
255         PR ld/19789
256         * elflink.c (elf_link_add_object_symbols): Create dynamic sections
257         for -E/--dynamic-list only when not relocatable.
258
259 2016-03-08  H.J. Lu  <hongjiu.lu@intel.com>
260
261         PR ld/19784
262         * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
263         count for locally defined local IFUNC symbols in shared object.
264         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
265
266 2016-03-08  H.J. Lu  <hongjiu.lu@intel.com>
267
268         PR ld/19579
269         * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking
270         together.
271
272 2016-03-08  Cupertino Miranda  <Cupertino.Miranda@synopsys.com>
273             Andrew Burgess  <andrew.burgess@embecosm.com>
274
275         * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32.
276         (arc_bfd_put_32): Becomes an alias for bfd_put_32.
277         (arc_elf_howto_init): Added assert to validate relocations.
278         (get_middle_endian_relocation): Delete.
279         (middle_endian_convert): New function.
280         (ME): Redefine, now does nothing.
281         (IS_ME): New define.
282         (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO'
283         definition to call middle_endian_convert.  Add a new local
284         variable and make use of this throughout. Added call to
285         arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations.
286
287 2016-03-07  Nick Clifton  <nickc@redhat.com>
288
289         PR binutils/19775
290         * archive.c (bfd_generic_openr_next_archived_file): Allow zero
291         length elements in the archive.
292
293 2016-03-07  Jiong Wang  <jiong.wang@arm.com>
294
295         * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got
296         section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced.
297
298 2016-03-04  H.J. Lu  <hongjiu.lu@intel.com>
299
300         PR ld/19579
301         * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in
302         executable as definition if the new definition comes from a
303         shared library.
304
305 2016-03-02  Alan Modra  <amodra@gmail.com>
306
307         * Makefile.in: Regenerate.
308         * po/SRC-POTFILES.in: Regenerate.
309
310 2016-02-29  Cupertino Miranda  <cmiranda@synopsys.com>
311
312         * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the
313         relocation addend when sections get merged.
314
315 2016-02-29  Cupertino Miranda <Cupertino.Miranda@synopsys.com>
316
317         * elf32-arc.c (arc_elf_final_write_processing): Add condition to
318         the flag change.
319         (elf_arc_relocate_section): Fixes and conditions to support PIE.
320         Assert for code sections dynamic relocs.
321
322 2016-02-26  Renlin Li  <renlin.li@arm.com>
323
324         * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow
325         check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2.
326
327 2016-02-26  H.J. Lu  <hongjiu.lu@intel.com>
328
329         PR ld/19609
330         * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for
331         load with locally bound symbols if PIC is false or there is no
332         base register.  Optimize branch to 0 if PIC is false.
333         (elf_i386_relocate_section): Don't generate dynamic relocations
334         against undefined weak symbols if PIC is false.
335         * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization
336         if we can't estimate relocation overflow with --no-relax.
337         Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound
338         symbols if PIC is false.  Optimize branch to 0 if PIC is false.
339         (elf_x86_64_relocate_section): Don't generate dynamic relocations
340         against undefined weak symbols if PIC is false.
341
342 2016-02-26  H.J. Lu  <hongjiu.lu@intel.com>
343
344         PR ld/19645
345         * bfd.c (bfd): Change flags to 20 bits.
346         (BFD_CONVERT_ELF_COMMON): New.
347         (BFD_USE_ELF_STT_COMMON): Likewise.
348         (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and
349         BFD_USE_ELF_STT_COMMON.
350         (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
351         * configure.ac: Remove --enable-elf-stt-common.
352         * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for
353         common symbol depending on BFD_CONVERT_ELF_COMMON and
354         BFD_USE_ELF_STT_COMMON.
355         * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for
356         STT_COMMON.
357         * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check
358         STT_COMMON.
359         (elf_link_convert_common_type): New function.
360         (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for
361         common symbol depending on BFD_CONVERT_ELF_COMMON and
362         BFD_USE_ELF_STT_COMMON.  Set sym.st_info after sym.st_shndx.
363         * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON
364         and BFD_USE_ELF_STT_COMMON to object_flags.
365         (TARGET_LITTLE_SYM): Likewise.
366         * syms.c (BSF_KEEP_G): Renamed to ...
367         (BSF_ELF_COMMON): This.
368         * bfd-in2.h: Regenerated.
369         * config.in: Likewise.
370         * configure: Likewise.
371
372 2016-02-26  H.J. Lu  <hongjiu.lu@intel.com>
373
374         PR ld/19636
375         PR ld/19704
376         PR ld/19719
377         * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
378         (elf_i386_link_hash_entry): Add has_got_reloc and
379         has_non_got_reloc.
380         (elf_i386_link_hash_table): Add interp.
381         (elf_i386_link_hash_newfunc): Initialize has_got_reloc and
382         has_non_got_reloc.
383         (elf_i386_copy_indirect_symbol): Copy has_got_reloc and
384         has_non_got_reloc.
385         (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc.
386         (elf_i386_fixup_symbol): New function.
387         (elf_i386_pie_finish_undefweak_symbol): Likewise.
388         (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic
389         relocations and discard relocations against resolved undefined
390         weak symbols in executable.  Don't make resolved undefined weak
391         symbols in executable dynamic.  Keep dynamic non-GOT/non-PLT
392         relocation against undefined weak symbols in PIE.
393         (elf_i386_size_dynamic_sections): Set interp to .interp section.
394         (elf_i386_relocate_section): Don't generate dynamic relocations
395         against resolved undefined weak symbols in PIE, except for
396         R_386_PC32.
397         (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without
398         dynamic PLT/GOT relocations for resolved undefined weak symbols.
399         Don't generate dynamic relocation against resolved undefined weak
400         symbol in executable.
401         (elf_i386_finish_dynamic_sections): Call
402         elf_i386_pie_finish_undefweak_symbol on all symbols in PIE.
403         (elf_backend_fixup_symbol): New.
404         * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
405         (elf_x86_64_link_hash_entry): Add has_got_reloc and
406         has_non_got_reloc.
407         (elf_x86_64_link_hash_table): Add interp.
408         (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and
409         has_non_got_reloc.
410         (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and
411         has_non_got_reloc.
412         (elf_x86_64_check_relocs): Set has_got_reloc and
413         has_non_got_reloc.
414         (elf_x86_64_fixup_symbol): New function.
415         (elf_x86_64_pie_finish_undefweak_symbol): Likewise.
416         (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic
417         relocations and discard relocations against resolved undefined
418         weak symbols in executable.  Don't make resolved undefined weak
419         symbols in executable dynamic.
420         (elf_x86_64_size_dynamic_sections): Set interp to .interp section.
421         (elf_x86_64_relocate_section): Check relocation overflow for
422         dynamic relocations against unresolved weak undefined symbols.
423         Don't generate dynamic relocations against resolved weak
424         undefined symbols in PIE.
425         (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without
426         dynamic PLT/GOT relocations for resolved undefined weak symbols.
427         Don't generate dynamic relocation against resolved undefined weak
428         symbol in executable.
429         (elf_x86_64_finish_dynamic_sections): Call
430         elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE.
431         (elf_backend_fixup_symbol): New.
432
433 2016-02-26  Alan Modra  <amodra@gmail.com>
434
435         * elf64-ppc.c (create_linkage_sections): Create sfpr when
436         save_restore_funcs, rest of sections when not relocatable.
437         (ppc64_elf_init_stub_bfd): Always call create_linkage_sections.
438         (sfpr_define): Define all symbols on emitted code.
439         (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created
440         when relocatable.  Move sfpr_define loop earlier.
441
442 2016-02-24  H.J. Lu  <hongjiu.lu@intel.com>
443
444         * elf64-x86-64.c (elf_x86_64_need_pic): New function.
445         (elf_x86_64_relocate_section): Use it.  Replace
446         x86_64_elf_howto_table[r_type] with howto.
447
448 2016-02-24  H.J. Lu  <hongjiu.lu@intel.com>
449
450         PR ld/19698
451         * elflink.c (bfd_elf_record_link_assignment): Set versioned if
452         symbol version is unknown.
453
454 2016-02-24  H.J. Lu  <hongjiu.lu@intel.com>
455
456         * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset
457         to (bfd_vma) -1 when setting needs_plt to 0.
458         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
459
460 2016-02-23  H.J. Lu  <hongjiu.lu@intel.com>
461
462         * elflink.c (bfd_elf_record_link_assignment): Check for shared
463         library, instead of PIC, and don't check PDE when making linker
464         assigned symbol dynamic.
465
466 2016-02-23  Faraz Shahbazker  <faraz.shahbazker@imgtec.com>
467
468         * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment
469         ABIVERSION for non-executable stack.
470
471 2016-02-23  Rich Felker  <bugdal@aerifal.cx>
472
473         PR target/19516
474         * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol):
475         Always produce a RELATIVE reloc for a local symbol.
476
477 2016-02-23  Hans-Peter Nilsson  <hp@axis.com>
478
479         Fix test-case ld-elf/pr19617b
480         * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
481         discard unused non-function symbols when --dynamic-list-data.
482
483 2016-02-22  H.J. Lu  <hongjiu.lu@intel.com>
484
485         * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the
486         dynsym section, even if it is empty, with dynamic sections.
487
488 2016-02-22  H.J. Lu  <hongjiu.lu@intel.com>
489
490         * syms.c: Remove BSF_COMMON from comments.
491         * bfd-in2.h: Regenerated.
492
493 2016-02-22  Jiong Wang  <jiong.wang@arm.com>
494
495         * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation
496         for destination.  Remove useless function parameters.
497         (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub.
498
499 2016-02-19  Nick Clifton  <nickc@redhat.com>
500
501         PR ld/19629
502         * aoutx.h (aout_link_add_symbols): Check for out of range string
503         table offsets.
504
505         PR ld/19628
506         * reloc.c (bfd_generic_get_relocated_section_contents): Stop
507         processing if we encounter a reloc without an associated symbol.
508
509 2016-02-18  H.J. Lu  <hongjiu.lu@intel.com>
510
511         PR ld/19617
512         * elflink.c (elf_link_add_object_symbols): Always create dynamic
513         sections for -E/--dynamic-list.
514
515 2016-02-17  H.J. Lu  <hongjiu.lu@intel.com>
516
517         * elf64-x86-64.c (elf_backend_omit_section_dynsym): New.  Defined
518         to bfd_true.
519
520 2016-02-16  Joseph Myers  <joseph@codesourcery.com>
521
522         * plugin.c (plugin_vec): Set match priority to 255.
523         * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
524         matching against the plugin vector, take priority from there not
525         from TEMP.
526
527 2016-02-15  Nick Clifton  <nickc@redhat.com>
528
529         * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values
530         for length and type fields.  Use a signed value for the
531         suffix_length field.
532
533 2016-02-10  H.J. Lu  <hongjiu.lu@intel.com>
534
535         PR ld/19601
536         * elf32-i386.c (elf_i386_relocate_section): Mask off the least
537         significant bit in GOT offset for R_386_GOT32X.
538
539 2016-02-10  Nick Clifton  <nickc@redhat.com>
540
541         PR 19405
542         * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed
543         immediate values.
544         * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the
545         number of messages about FDE encoding preventing .eh_frame_hdr
546         generation.
547
548 2016-02-09  Nick Clifton  <nickc@redhat.com>
549
550         * oasys.c (oasys_archive_p): Fix indentation.
551         * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned
552         constant for left shifting.
553
554         * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more
555         helpful warning message to explain why certain AArch64 relocs
556         might overflow.
557
558 2016-02-05  Simon Marchi  <simon.marchi@ericsson.com>
559
560         * pe-mips.c (coff_mips_reloc): Fix formatting.
561
562 2016-02-05  Cupertino Miranda  <Cupertino.Miranda@synopsys.com>
563
564         * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2
565         to bfd_mach_arc_arc600.
566
567 2016-02-04  Alan Modra  <amodra@gmail.com>
568
569         * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
570         for big-endian.
571
572 2016-02-02  H.J. Lu  <hongjiu.lu@intel.com>
573
574         PR ld/19542
575         * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated
576         distances in the compressed_size field of the output section.
577
578 2016-02-02  Alan Modra  <amodra@gmail.com>
579
580         * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
581         ELFv2 entry optimization.
582
583 2016-02-02  H.J. Lu  <hongjiu.lu@intel.com>
584
585         PR binutils/19547
586         * elf.c (assign_section_numbers): Clear HAS_RELOC if there are
587         no relocations in relocatable files.
588
589 2016-02-01  H.J. Lu  <hongjiu.lu@intel.com>
590
591         PR ld/19553
592         * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
593         if a symbol from a library loaded via DT_NEEDED doesn't match
594         the symbol referenced by regular object.
595
596 2016-02-01  Nathaniel Smith  <njs@pobox.com>
597
598         * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both
599         CODE and DATA.
600
601 2016-02-01  Alan Modra  <amodra@gmail.com>
602
603         * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
604         an out of range reloc_index.
605         * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
606
607 2016-02-01  Kamil Rytarowski  <n54@gmx.com>
608
609         * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo.
610         (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c.
611         * Makefile.in: Regenerated.
612
613 2016-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
614
615         * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
616
617 2016-01-31  John David Anglin  <danglin@gcc.gnu.org>
618
619         PR ld/19526
620         * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output
621         files.
622         * elf64-hppa.c (elf32_hppa_final_link): Likewise.  Remove retval.
623
624 2016-01-30  H.J. Lu  <hongjiu.lu@intel.com>
625
626         PR ld/19539
627         * elf32-i386.c (elf_i386_reloc_type_class): Check relocation
628         against STT_GNU_IFUNC symbol only with dynamic symbols.
629         * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise.
630
631 2016-01-28  H.J. Lu  <hongjiu.lu@intel.com>
632
633         PR binutils/19523
634         * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to
635         decompress debug sections.
636
637 2016-01-25  Maciej W. Rozycki  <macro@imgtec.com>
638
639         * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
640         `dynindx'.
641
642 2016-01-25  Nick Clifton  <nickc@redhat.com>
643
644         PR target/19435
645         * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free
646         dsym filename buffer.
647
648 2016-01-24  Maciej W. Rozycki  <macro@imgtec.com>
649
650         * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
651
652 2016-01-24  Maciej W. Rozycki  <macro@imgtec.com>
653
654         * elfxx-mips.c (BZ16_REG): Correct calculation.
655
656 2016-01-21  Nick Clifton  <nickc@redhat.com>
657
658         * elf32-arc.c (ADD_RELA): Fix compile time warning errors by
659         changing the type of _loc to be bfd_byte *.
660         (elf_arc_finish_dynamic_symbol): Likewise.
661
662 2016-01-21  Nick Clifton  <nickc@redhat.com>
663
664         PR ld/19455
665         * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF
666         class of the linker stub bfd.
667         (elf32_arm_check_relocs): Skip check for pic format after
668         processing a vxWorks R_ARM_ABS12 reloc.
669         * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when
670         reporting a class mismatch.
671
672 2016-01-21  Jiong Wang  <jiong.wang@arm.com>
673
674         * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch
675         veneer for sym_sec != input_sec.
676         (elfNN_aarch64_size_stub): Support STT_SECTION symbol.
677         (elfNN_aarch64_final_link_relocate): Take rela addend into account when
678         calculation destination.
679
680 2016-01-21  Alan Modra  <amodra@gmail.com>
681
682         * elf-linux-core.h (swap_linux_prpsinfo32_out): New function.
683         (swap_linux_prpsinfo64_out): New function.
684         (LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
685         (LINUX_PRPSINFO64_SWAP_FIELDS): Delete.
686         * elf.c (elfcore_write_linux_prpsinfo32): Adjust.  Don't memset.
687         (elfcore_write_linux_prpsinfo64): Likewise.
688         * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function.
689         (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
690         (elfcore_write_ppc_linux_prpsinfo32): Adjust.  Don't memset.
691
692 2016-01-21  Alan Modra  <amodra@gmail.com>
693
694         * elf-linux-core.h: Rename from elf-linux-psinfo.h.
695         * elf.c: Adjust #include.
696         * elf32-ppc.c: Don't #include elf-linux-psinfo.h
697         * Makefile.am (SOURCE_HFILES): Update.
698         * Makefile.in: Regenerate.
699         * po/SRC-PORFILES.in: Regenerate.
700
701 2016-01-21  Alan Modra  <amodra@gmail.com>
702
703         * configure.ac: Move corefile selection later in file.  Move
704         tdefaults code immediately after other target vector code.
705         * configure: Regenerate.
706
707 2016-01-20  Mickael Guene  <mickael.guene@st.com>
708
709         * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread
710         section using '.text.noread' pattern.
711
712 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
713
714         * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
715
716 2016-01-18  Miranda Cupertino  <Cupertino.Miranda@synopsys.com>
717             Zissulescu Claudiu  <Claudiu.Zissulescu@synopsys.com>
718
719         * arc-plt.def: New file.
720         * arc-plt.h: Likewise.
721         * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
722                        elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
723                        elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
724                        elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
725         (name_for_global_symbol): Added.
726         (ADD_RELA): Helper to create dynamic relocs.
727         (new_got_entry_to_list): Create a new got entry in linked list.
728         (symbol_has_entry_of_type): Search for specific type of entry in
729         list.
730         (is_reloc_for_GOT): return FALSE for any TLS related relocs.
731         (is_reloc_for_TLS, arc_elf_set_private_flags)
732         (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
733         (arc_elf_merge_private_bfd_data): New functions.
734         (debug_arc_reloc): Cleaned debug info printing.
735         (PDATA reloc): Changed not to perform address alignment.
736         (reverse_me): Added. Fix for ARC_32 relocs.
737         (arc_do_relocation): Return bfd_reloc_of when no relocation should
738         occur.
739         (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
740         Changed function to access an array of list of GOT entries instead
741         of just an array of offsets.
742         (elf_arc_relocate_section): Added support for PIC and TLS related relocations.
743         (elf_arc_check_relocs): Likewise.
744         (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
745         (elf_arc_finish_dynamic_sections): Likewise
746         (arc_create_dynamic_sections): Modified conditions to create
747         dynamic sections.
748         (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
749         (plt_do_relocs_for_symbol, relocate_plt_for_symbol)
750         (relocate_plt_for_entry): Changed to support new way to define PLT
751         related code.
752         (add_symbol_to_plt): Likewise.
753         (arc_elf_link_hash_table_create): New function.
754
755 2016-01-18  Nick Clifton  <nickc@redhat.com>
756
757         PR ld/19440
758         * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external
759         section number into internal section number.
760         * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise.
761         * coffswap.h (coff_swap_sym_in): Likewise.
762         * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise.
763         * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal
764         section number field is big enough to hold the external value.
765
766 2016-01-17  Alan Modra  <amodra@gmail.com>
767
768         * configure: Regenerate.
769
770 2016-01-12  Yury Usishchev  <y.usishchev@samsung.com>
771
772         * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind
773         when address in first unwind entry does not match start of
774         section.
775
776 2016-01-08  Richard Sandiford  <richard.sandiford@arm.com>
777             Jiong Wang  <jiong.wang@arm.com>
778
779         PR ld/19368
780         * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to
781         reloc_class_ifunc.
782
783 2016-01-06  Andrew Burgess  <andrew.burgess@embecosm.com>
784
785         * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to
786         place 'R_' before the reloc name returned.
787         (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before
788         the relocation string.
789
790 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
791
792         * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function,
793         factored out from...
794         (_bfd_mips_elf_merge_private_bfd_data): ... here.
795
796 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
797
798         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move
799         attribute check after ELF file header flag check.
800
801 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
802
803         * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the
804         return status from `_bfd_elf_merge_object_attributes'.
805
806 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
807
808         * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function,
809         factored out from...
810         (_bfd_mips_elf_merge_private_bfd_data): ... here.
811
812 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
813
814         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the
815         handling of input MIPS ABI flags together.
816
817 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
818
819         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress
820         attribute checks for null input.
821
822 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
823
824         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local
825         pointers to target data.
826
827 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
828
829         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
830         an FP ABI warning.
831
832 2016-01-01  Alan Modra  <amodra@gmail.com>
833
834         Update year range in copyright notice of all files.
835
836 For older changes see ChangeLog-2015 and doc/ChangeLog-0415
837 \f
838 Copyright (C) 2016 Free Software Foundation, Inc.
839
840 Copying and distribution of this file, with or without modification,
841 are permitted in any medium without royalty provided the copyright
842 notice and this notice are preserved.
843
844 Local Variables:
845 mode: change-log
846 left-margin: 8
847 fill-column: 74
848 version-control: never
849 End: