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