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