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