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