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