Use comp_unit_maybe_decode_line_info in more places
[external/binutils.git] / bfd / ChangeLog
1 2019-08-14  Alan Modra  <amodra@gmail.com>
2
3         * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
4         (comp_unit_find_nearest_line): Use it here..
5         (_bfd_dwarf2_find_symbol_bias): ..and here.
6
7 2019-08-14  Alan Modra  <amodra@gmail.com>
8
9         * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
10         * libbfd-in.h  (_bfd_dwarf2_find_nearest_line): Update prototype.
11         * coffgen.c (coff_find_nearest_line_with_names): Adjust
12         _bfd_dwarf2_find_nearest_line calls.
13         * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
14         * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
15         * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
16         * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
17         * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
18         * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
19         * libbfd.h: Regenerate.
20
21 2019-08-09  Mihailo Stojanovic  <mihailo.stojanovic@rt-rk.com>
22
23         * elf-bfd.h (struct elf_backend_data): New members.
24         * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
25         .gnu.hash section if necessary.
26         (struct collect_gnu_hash_codes): New member.
27         (elf_gnu_hash_process_symidx): New function name.
28         (elf_renumber_gnu_hash_syms): Ignore local and undefined
29         symbols. Record xlat location for every symbol which should have
30         a .MIPS.xhash entry.
31         (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
32         dynamic section if necessary.
33         (GNU_HASH_SECTION_NAME): New define.
34         (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
35         Update the section size info.
36         * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
37         (struct mips_elf_link_hash_entry): New member.
38         (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
39         table location.
40         (mips_elf_sort_hash_table): Initialize the pointer to the
41         .MIPS.xhash section.
42         (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
43         translation table entry with the symbol dynindx.
44         (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
45         (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
46         info.
47         (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
48         section.
49         (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
50         dynamic section.
51         (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
52         (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
53         sh_link info.
54         (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
55         (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
56         (_bfd_mips_post_process_headers): Mark the ABI version as
57         MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
58         but not a .hash section.
59         (_bfd_mips_elf_record_xhash_symbol): New function. Record a
60         position in the translation table, associated with the hash
61         entry.
62         * elfxx-mips.h (literal_reloc_p): Define
63         elf_backend_record_xhash_symbol backend hook.
64         * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
65         backend hook.
66
67 2019-08-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
68
69         * elf64-bpf.c (bpf_elf_relocate_section): New function.
70         (bpf_elf_insn_disp_reloc): Delete function.
71         (elf_backend_relocate_section): Define.
72
73 2019-08-07  Alan Modra  <amodra@gmail.com>
74
75         PR 24644
76         * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
77         for overflow in expressions involving nsymz.
78
79 2019-08-01  Ilia Diachkov  <ilia.diachkov@optimitech.com>
80
81         * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
82         two pages in relro presence.
83
84 2019-08-01  Max Filippov  <jcmvbkbc@gmail.com>
85
86         * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
87         (get_wsr_lbeg_opcode): New functions.
88         (check_loop_aligned): Detect relaxed loops and adjust loop_len
89         and insn_len for the first actual instruction of the loop.
90
91 2019-07-30  Alan Modra  <amodra@gmail.com>
92
93         PR 24768
94         * bfd.c (struct bfd): Add lto_slim_object flag.
95         * bfd-in2.h: Regenerate.
96
97 2019-07-29  Martin Liska  <mliska@suse.cz>
98
99         PR 24768
100         * archive.c (_bfd_compute_and_write_armap): Come up with
101         report_plugin_err variable.
102         * bfd-in2.h (struct bfd): Add lto_slim_object flag.
103         * elf.c (struct lto_section): New.
104         (_bfd_elf_make_section_from_shdr): Parse content of
105         .gnu_lto_.lto section.
106         * elflink.c: Report error for a missing LTO plugin.
107         * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
108
109 2019-07-28  Alan Modra  <amodra@gmail.com>
110
111         PR 24857
112         PR 24339
113         * elflink.c (elf_link_add_object_symbols): Report an informative
114         error on finding local symbols with index equal or greater than
115         symbol table sh_info.  Correct comment.  Allow such symbols in
116         dynamic objects.  Abort on NULL section for symbol.
117
118 2019-07-26  Alan Modra  <amodra@gmail.com>
119
120         * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
121         (elf_linker): Don't define.
122         * elflink.c (bfd_elf_final_link): Don't set elf_linker.
123
124 2019-07-25  YunQiang Su  <syq@debian.org>
125
126         PR 24832
127         * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
128         mips inputs.
129
130 2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
131
132         * elf32-arc.c (bfd_get_32_me): Add a small description, fix
133         formating.
134         (reloc_type_to_name): Fix formating.
135         (arc_elf_object_p): Likewise.
136         (debug_arc_reloc): Likewise.
137         (arc_do_relocation): Likewise.
138
139 2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
140
141         * elf32-arc.c (bfd_get_32_me): New function.
142         (bfd_put_32_me): Likewise.
143         (arc_elf_relax_section): Likewise.
144         (bfd_elf32_bfd_relax_section): Define.
145
146 2019-07-24  Alan Modra  <amodra@gmail.com>
147
148         * elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
149         elf_backend_final_write_processing, don't pass linker arg.
150         (_bfd_elf_final_write_processing): Update prototype.
151         * elf.c (_bfd_elf_write_object_contents): Adjust call.
152         (_bfd_elf_final_write_processing): Return error on incompatible
153         OSABI and has_gnu_osabi.  Remove linker arg.
154         * elf-nacl.h (nacl_final_write_processing): Update prototype.
155         * elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
156         * elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
157         (_bfd_mips_elf_final_write_processing): Likewise.
158         * elf-hppa.h (elf_hppa_final_write_processing): Return status
159         and remove linker arg.
160         * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
161         * elf-nacl.c (nacl_final_write_processing): Likewise.
162         * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
163         * elf32-arc.c (arc_elf_final_write_processing): Likewise.
164         * elf32-arm.c (arm_final_write_processing): Likewise.
165         (elf32_arm_final_write_processing): Likewise.
166         (elf32_arm_nacl_final_write_processing): Likewise.
167         (elf32_arm_vxworks_final_write_processing): Likewise.
168         * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
169         * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
170         * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
171         * elf32-cris.c (cris_elf_final_write_processing): Likewise.
172         * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
173         * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
174         * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
175         * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
176         * elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
177         * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
178         * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
179         * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
180         * elf32-pj.c (pj_elf_final_write_processing): Likewise.
181         * elf32-ppc.c (ppc_final_write_processing): Likewise.
182         (ppc_elf_final_write_processing): Likewise.
183         (ppc_elf_vxworks_final_write_processing): Likewise.
184         * elf32-sparc.c (sparc_final_write_processing): Likewise.
185         (elf32_sparc_final_write_processing): Likewise.
186         (elf32_sparc_vxworks_final_write_processing): Likewise.
187         * elf32-v850.c (v850_elf_final_write_processing): Likewise.
188         * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
189         * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
190         * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
191         * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
192         * elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
193         (_bfd_mips_elf_final_write_processing): Likewise.
194
195 2019-07-24  Alan Modra  <amodra@gmail.com>
196
197         * elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
198         early.
199         * elf32-arc.c (arc_elf_final_write_processing): Likewise.
200         * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
201
202 2019-07-24  Alan Modra  <amodra@gmail.com>
203
204         * elf32-visium.c (visium_elf_post_process_headers): Don't set
205         EI_OSABI header byte here.
206         (ELF_OSABI): Define.
207
208 2019-07-23  Alan Modra  <amodra@gmail.com>
209
210         * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
211         * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
212         (get_program_header_size): Formatting.  Only test SH_GNU_MBIND
213         when elf_gnu_osabi_mbind is set.
214         (_bfd_elf_map_sections_to_segments): Likewise.
215         (_bfd_elf_init_private_section_data): Likewise.
216         (_bfd_elf_final_write_processing): Update comment.
217         * elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
218         (elf_backend_special_sections): Define without .tbss for linux.
219
220 2019-07-23  Alan Modra  <amodra@gmail.com>
221
222         * elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
223         Remove none, any, all enums.
224         (struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
225         (_bfd_elf_final_write_processing): Declare.
226         * elf.c (_bfd_elf_write_object_contents): Unconditionally call
227         elf_backend_final_write_processing.
228         (_bfd_elf_post_process_headers): Move body of function to..
229         (_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
230         only when not already set.  Adjust for rename.
231         * elfxx-target.h (elf_backend_final_write_processing): Default to
232         _bfd_elf_final_write_processing.
233         * elf-hppa.h (elf_hppa_final_write_processing): Call
234         _bfd_elf_final_write_processing.
235         * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
236         * elf-nacl.c (nacl_final_write_processing): Likewise.
237         * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
238         * elf32-arc.c (arc_elf_final_write_processing): Likewise.
239         * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
240         * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
241         * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
242         * elf32-cris.c (cris_elf_final_write_processing): Likewise.
243         * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
244         * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
245         * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
246         * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
247         * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
248         * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
249         * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
250         * elf32-pj.c (pj_elf_final_write_processing): Likewise.
251         * elf32-v850.c (v850_elf_final_write_processing): Likewise.
252         * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
253         * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
254         * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
255         * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
256         * elf32-arm.c (arm_final_write_processing): Split out from..
257         (elf32_arm_final_write_processing): ..here.  Call
258         _bfd_elf_final_write_processing.
259         (elf32_arm_nacl_final_write_processing): Adjust.
260         * elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
261         (_bfd_mips_elf_final_write_processing): ..here.  Call
262         _bfd_elf_final_write_processing.
263         * elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
264         * elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
265         * elf32-ppc.c (ppc_final_write_processing): Split out from..
266         (ppc_elf_final_write_processing): ..here.  Call
267         _bfd_elf_final_write_processing.
268         (ppc_elf_vxworks_final_write_processing): Adjust.
269         * elf32-sparc.c (sparc_final_write_processing): Split out from..
270         (elf32_sparc_final_write_processing): ..here.  Call
271         _bfd_elf_final_write_processing.
272         (elf32_sparc_vxworks_final_write_processing): Adjust.
273         * elf32-d10v.c (elf_backend_final_write_processing): Don't define.
274         * elf32-d30v.c (elf_backend_final_write_processing): Don't define.
275         * elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
276         * elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
277         * elf32-s12z.c (elf_backend_final_write_processing): Don't define.
278         * elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
279         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
280         * elflink.c (elf_link_add_object_symbols): Likewise.
281         (elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
282         instead.
283
284 2019-07-23  Omar Majid  <omajid@redhat.com>
285
286         * coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
287         I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
288         AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
289         AMD64_NETBSD_MAGIC.
290         * peXXigen.c: Add comment about source of .NET magic numbers.
291
292 2019-07-19  Alan Modra  <amodra@gmail.com>
293
294         * reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
295         (BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
296         (BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
297         (BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
298         * elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
299         (ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
300         (must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
301         (ppc64_elf_check_relocs): Support pcrel tls relocs.
302         (ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
303         * bfd-in2.h: Regenerate.
304         * libbfd.h: Regenerate.
305
306 2019-07-18  Alan Modra  <amodra@gmail.com>
307
308         * elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
309         a TLS section symbol for edited relocs.  Tighten TLS symbol/reloc
310         match test.
311
312 2019-07-18  Alan Modra  <amodra@gmail.com>
313
314         * elf64-ppc.c (TLS_EXPLICIT): Define as 256.
315         (ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
316         is more than 8 bits.
317         (ppc64_elf_tls_optimize): Likewise.  Make tls_set, tls_clear, and
318         tls_type vars unsigned int.
319         (ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
320         to select r_type edit.
321
322 2019-07-18  Alan Modra  <amodra@gmail.com>
323
324         * elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
325         Correct comment.
326         * elf64-ppc.c (TLS_GDIE): Likewise.
327
328 2019-07-18  Alan Modra  <amodra@gmail.com>
329
330         * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
331         range of tp-relative offsets.
332
333 2019-07-15  Alan Modra  <amodra@gmail.com>
334
335         * elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
336         alias is no longer bfd_link_hash_defined, clear the alias.
337
338 2019-07-13  Alan Modra  <amodra@gmail.com>
339
340         * elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
341         tls_sec.
342         (_bfd_elf_init_1_index_section): Prefer not using TLS sections.
343         (_bfd_elf_init_2_index_sections): Likewise.
344         * elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
345         relocations for local TLS symbols, use STN_UNDEF as the relocation
346         symbol.
347         * elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
348         leave TLS symbol value in the addend.
349
350 2019-07-08  Alan Modra  <amodra@gmail.com>
351
352         PR 24785
353         * elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
354         size before reading first word.
355
356 2019-07-02  Nick Clifton  <nickc@redhat.com>
357
358         PR 24717
359         * elf.c (is_debuginfo_file): New function.
360         (assign_file_positions_for_non_load_sections): Do not warn about
361         allocated sections outside of loadable segments if they are found
362         in a debuginfo file.
363         * elf-bfd.h (is_debuginfo_file): Prototype.
364
365 2019-07-02  Nick Clifton  <nickc@redhat.com>
366
367         PR 24753
368         * compress.c (bfd_get_full_section_contents): Do not complain
369         about linker created sections that are larger than the file size.
370
371 2019-07-02  Christophe Lyon  <christophe.lyon@linaro.org>
372
373         * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
374         (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
375         for CMSE stubs.
376         (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
377
378 2019-07-02  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
379
380         * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
381         sections when .text section contain secure entry functions
382         is marked.
383
384 2019-07-01  Nick Clifton  <nickc@redhat.com>
385
386         PR 23839
387         * elf32-arm.c (elf32_arm_update_relocs): Do not include the
388         section VMA in the offset used to update exidx relocs.
389
390 2019-06-28  Nick Clifton  <nickc@redhat.com>
391
392         PR 24708
393         * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
394         large version reference section.
395         * compress.c (bfd_get_full_section_contents): Check for an
396         uncompressed section whose size is larger than the file size.
397
398 2019-06-28  Alan Modra  <amodra@gmail.com>
399
400         * format.c (bfd_check_format_matches): Don't match plugin target
401         if another target matches.  Expand comment.
402         * targets.c (_bfd_target_vector): Move plugin_vec after all other
403         non-corefile targets, outside !SELECT_VECS.
404         * config.bfd: Don't handle targ=plugin here.
405         * configure.ac: Don't add plugin to enable_targets or handle in
406         target loop setting selvecs and other target vars.
407         * configure: Regenerate.
408
409 2019-06-26  Nick Clifton  <nickc@redhat.com>
410
411         PR 24703
412         * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
413         messages for failures.
414         * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
415         if returning an error value.
416
417 2019-06-25  Jan Beulich  <jbeulich@suse.com>
418
419         * elf-properties.c (elf_find_and_remove_property): Rename last
420         parameter. Mention it in comment.
421
422 2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
423
424         * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
425         SEC_MERGE or SEC_CODE flags are set.
426         (_bfd_riscv_relax_section): New local symtype.  Set sym_sec and
427         symtype consistently.  Don't include sec_addr (sym_sec) in symval.
428         Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
429         Add sec_addr (sym_sec) after handling merge sections.
430
431 2019-06-24  H.J. Lu  <hongjiu.lu@intel.com>
432
433         PR ld/24721
434         * elf-properties.c (elf_merge_gnu_property_list): Remove the
435         property after reporting property removal.
436
437 2019-06-23  Alan Modra  <amodra@gmail.com>
438
439         PR 24704
440         * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
441         (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
442         Reduce range of offsets allowed for other GOT relocs.
443
444 2019-06-23  Alan Modra  <amodra@gmail.com>
445
446         PR 24689
447         * elfcode.h (elf_object_p): Warning fix.
448
449 2019-06-21  Alan Modra  <amodra@gmail.com>
450
451         PR 24689
452         * elfcode.h (elf_object_p): Check type of e_shstrndx section.
453
454 2019-06-19  Alan Modra  <amodra@gmail.com>
455
456         PR 24697
457         * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
458         R_PPC_EMB_RELSDA.  Mask low bit of R_PPC_EMB_SDA21 r_offset.
459
460 2019-06-19  Alan Modra  <amodra@gmail.com>
461
462         * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
463         functions that require r2 valid to use local entry.
464         (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
465
466 2019-06-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
467
468         * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
469         (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
470         with elfNN_aarch64_allocate_local_dynrelocs.
471
472 2019-06-14  Szabolcs Nagy  <szabolcs.nagy@arm.com>
473
474         * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
475
476 2019-06-14  Alan Modra  <amodra@gmail.com>
477
478         * Makefile.in: Regenerate.
479         * configure: Regenerate.
480
481 2019-06-14  Alan Modra  <amodra@gmail.com>
482
483         * elf64-ppc.c: Fix comments involving paddi.
484
485 2019-06-12  Adam Lackorzymski  <adam@os.inf.tu-dresden.de>
486
487         PR 24643
488         * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
489         absent, or the bfd is not in the ELF formart.
490         * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
491
492 2019-06-10  Christos Zoulas  <christos@zoulas.com>
493
494         PR 24650
495         * elf.c (elfcore_make_auxv_note_section): New function.
496         (elfcore_grok_note): Use it.
497         (elfcore_grok_freebsd_note): Likewise.
498         (elfcore_grok_openbsd_note): Likewise.
499         (elfcore_grok_netbsd_note): Likewise.  Plus add support for
500         NT_NETBSDCORE_AUXV notes.
501
502 2019-06-06  Sudakshina Das  <sudi.das@arm.com>
503
504         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
505         alignment of the new gnu property section.
506
507 2019-06-06  Sudakshina Das  <sudi.das@arm.com>
508
509         * bfd-in.h: Change comment.
510         * bfd-in2.h: Regenerate.
511         * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
512         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
513         Likwise.
514
515 2019-05-28  Faraz Shahbazker  <fshahbazker@wavecomp.com>
516
517         * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
518         Remove overflow check.
519
520 2019-05-28  Alan Modra  <amodra@gmail.com>
521
522         PR 24596
523         * cofflink.c (coff_link_check_archive_element): Don't assume
524         element is a coff object file after calling add_archive_element.
525
526 2019-05-28  Alan Modra  <amodra@gmail.com>
527
528         PR 24596
529         * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
530         attempt to set sh_entsize for excluded PLT section.
531
532 2019-05-28  Alan Modra  <amodra@gmail.com>
533
534         PR 24596
535         * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
536         to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
537         allocated in alpha_dynamic_entries_for_reloc.
538
539 2019-05-28  Alan Modra  <amodra@gmail.com>
540
541         PR 24596
542         * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
543         on NULL output_section.
544         * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
545
546 2019-05-28  Alan Modra  <amodra@gmail.com>
547
548         PR 24596
549         * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
550         entry when MUST_FIND.  Abort when MUST_FIND not found.
551         (elf_m68k_get_bfd2got_entry): Likewise.
552         (elf_m68k_relocate_section): Remove now useless assert.
553
554 2019-05-28  Alan Modra  <amodra@gmail.com>
555
556         PR 24596
557         * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
558         from bfd_link_info, not an output section owner.
559         (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
560         (elf_hppa_final_link_relocate): Likewise.
561
562 2019-05-28  Alan Modra  <amodra@gmail.com>
563
564         PR 24596
565         * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
566         create_object_symbols_section, obj_textsec, obj_datasec or
567         obj_bsssec.  Fix other errors in placement.
568         * config.bfd: Obsolete tic30-aout.
569
570 2019-05-28  Alan Modra  <amodra@gmail.com>
571
572         PR 24596
573         * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
574         end of section list as well as section_count.
575         * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
576         section list before returning error.
577
578 2019-05-27  Alan Modra  <amodra@gmail.com>
579
580         * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
581
582 2019-05-27  Alan Modra  <amodra@gmail.com>
583
584         PR 24596
585         * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
586
587 2019-05-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>
588
589         * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
590         (struct elf_aarch64_link_hash_table): Add variant_pcs member.
591         (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
592         (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
593         (elf_backend_merge_symbol_attribute): Define.
594
595 2019-05-24  Alan Modra  <amodra@gmail.com>
596
597         * po/SRC-POTFILES.in: Regenerate.
598
599 2019-05-24  Alan Modra  <amodra@gmail.com>
600
601         * elf64-ppc.c: Comment on powerxx _notoc stub variants.
602         (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
603         (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
604         (struct ppc_link_hash_table): Add powerxx_stubs.
605         (ppc64_elf_check_relocs): Set powerxx_stubs.
606         (build_powerxx_offset, size_powerxx_offset),
607         (num_relocs_for_powerxx_offset),
608         (emit_relocs_for_powerxx_offset): New functions.
609         (plt_stub_size): Size powerxx stubs.
610         (ppc_build_one_stub): Emit powerxx stubs.
611         (ppc_size_one_stub): Size powerxx stubs.  Omit .eh_frame for
612         powerxx stubs.
613
614 2019-05-24  Alan Modra  <amodra@gmail.com>
615
616         * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
617         R_PPC64_GOT_PCREL34.
618         (xlate_pcrel_opt): New function.
619         (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
620         (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
621         for R_PPC64_GOT_PCREL34.  Implement R_PPC64_PCREL_OPT optimisation.
622
623 2019-05-24  Alan Modra  <amodra@gmail.com>
624
625         * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
626         (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
627         (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
628         (BFD_RELOC_PPC64_PLT_PCREL34),
629         (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
630         (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
631         (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
632         (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
633         (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
634         * elf64-ppc.c (PNOP): Define.
635         (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
636         (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
637         (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
638         relocs.
639         (ppc64_elf_prefix_reloc): New function.
640         (struct ppc_link_hash_table): Add notoc_plt.
641         (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
642         (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
643         R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
644         (ppc64_elf_check_relocs): Handle pcrel got and plt relocs.  Set
645         has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC.  Handle
646         possible need for dynamic relocs on non-pcrel powerxx relocs.
647         (dec_dynrel_count): Handle non-pcrel powerxx relocs.
648         (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
649         (toc_adjusting_stub_needed): Likewise.
650         (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
651         (ppc64_elf_relocate_section): Handle new powerxx relocs.
652         * bfd-in2.h: Regenerate.
653         * libbfd.h: Regenerate.
654
655 2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
656
657         * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
658         * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
659         bpf_elf64_be_vec.
660         * configure: Regenerate.
661
662 2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
663
664         * configure: Regenerated.
665         * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
666         (ALL_MACHINES_CFILES): Add cpu-bpf.c.
667         (BFD64_BACKENDS): Add elf64-bpf.lo.
668         (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
669         * Makefile.in (SOURCE_HFILES): Regenerate.
670         * config.bfd (targ_cpu): Handle bpf-*-* targets.
671         * cpu-bpf.c: New file.
672         * elf64-bpf.c: Likewise.
673         * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
674         bpf_elf64_le_vec.
675         * archures.c: Define architecture bfd_arch_bpf and machine
676         bfd_arch_bpf.
677         * reloc.c: Define BFD relocations used by the BPF target.
678         * bfd-in2.h: Regenerated.
679         * libbfd.h: Likewise.
680
681 2019-05-22  Alan Modra  <amodra@gmail.com>
682
683         * elf32-arm.c (arm_allocate_glue_section_space): Clear section
684         contents.
685
686 2019-05-22  Alan Modra  <amodra@gmail.com>
687
688         * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
689         processing on "size error in section".
690
691 2019-05-22  Alan Modra  <amodra@gmail.com>
692
693         * som.c (som_bfd_free_cached_info): Call
694         _bfd_generic_close_and_cleanup.
695
696 2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
697
698         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
699         for TLS_TPREL_HI16(/LO16) relocations in shared library.
700
701 2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
702
703         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
704         checks.  Search the RELA table for n64 relocations.
705
706 2019-05-21  Matthew Fortune  <matthew.fortune@mips.com>
707             Faraz Shahbazker  <fshahbazker@wavecomp.com>
708
709         * elfxx-mips.c (LA25_BC): New macro.
710         (mips_elf_link_hash_table)<compact_branches>: New field.
711         (STUB_JALRC): New macro.
712         (mipsr6_o32_exec_plt0_entry_compact): New array.
713         (mipsr6_n32_exec_plt0_entry_compact): Likewise.
714         (mipsr6_n64_exec_plt0_entry_compact): Likewise.
715         (mipsr6_exec_plt_entry_compact): Likewise.
716         (mips_elf_create_la25_stub): Use BC instead of J for stubs
717         when compact_branches is true.
718         (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
719         PLT for MIPSR6 with compact_branches.  Do not reorder the
720         compact branches PLT.  Switch the lazy stub for MIPSR6
721         with compact_branches to use JALRC.
722         (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
723         when compact_branches is true.
724         (_bfd_mips_elf_compact_branches): New function.
725         * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
726
727 2019-05-21  Tamar Christina  <tamar.christina@arm.com>
728
729         PR ld/24373
730         * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
731         Fix print formatter.
732
733 2019-05-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>
734
735         PR 24460
736         * elf32-arm.c (get_value_helper): Remove.
737         (elf32_arm_final_link_relocate): Fix branch future relocations.
738
739 2019-05-21  Tamar Christina  <tamar.christina@arm.com>
740
741         PR ld/24373
742         * bfd-in.h (enum erratum_84319_opts): New
743         (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
744         int to enum erratum_84319_opts.
745         * bfd-in2.h: Regenerate.
746         * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
747         fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
748         (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
749         (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
750         (_bfd_aarch64_resize_stubs): Amend comment.
751         (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
752         requested.
753         (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
754         (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
755         erratum workaround.
756         (clear_erratum_843419_entry): Update erratum conditional.
757
758 2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
759
760         PR ld/24571
761         * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
762         when computing distance_short_enough.
763
764 2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
765
766         PR ld/24564
767         * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
768         Wrap around even if distance equals avr_pc_wrap_around.
769
770 2019-05-20  Nick Clifton  <nickc@redhat.com>
771
772         * po/fr.po: Updated French translation.
773
774 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
775
776         * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
777
778 2019-05-16  Alan Modra  <amodra@gmail.com>
779
780         * elf32-arm.c (elf32_arm_write_section): Revert last change.
781
782 2019-05-15  Alan Modra  <amodra@gmail.com>
783
784         * elf32-arm.c (elf32_arm_write_section): Don't leave
785         error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
786         unitialised section contents.
787
788 2019-05-14  Jamey Hicks  <jamey.hicks@gmail.com>
789
790         PR 19921
791         * verilog.c: (VerilogDataWidth): New variable.
792         (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
793
794 2019-05-08  Nick Clifton  <nickc@redhat.com>
795
796         PR 24523
797         * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
798         rather than FALSE if encountering a non-ELF file.
799
800 2019-05-06  Alan Modra  <amodra@gmail.com>
801
802         * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
803
804 2019-05-06  Alan Modra  <amodra@gmail.com>
805
806         * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
807         (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
808         Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
809         * libbfd.h: Regenerate.
810         * bfd-in2.h: Regenerate.
811
812 2019-05-04  Alan Modra  <amodra@gmail.com>
813
814         PR 24511
815         * syms.c (coff_section_type): Only allow '.', '$' and numeric
816         following the standard section names.
817         (bfd_decode_symclass): Prioritize section flag tests in
818         decode_section_type before name tests in coff_section_type.
819         * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
820         and fake_common_section using BFD_FAKE_SECTION.  Use "fake" as
821         their names and choose standard .text section flags for
822         fake_section.
823
824 2019-05-02  Nick Clifton  <nickc@redhat.com>
825
826         PR 24493
827         * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
828         .gnu.debugaltlink sections as debugging sections.
829
830 2019-04-30  Alan Modra  <amodra@gmail.com>
831
832         * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
833         (struct _ppc64_elf_section_data): Likewise.
834         (ppc64_elf_check_relocs): Set above fields.
835         (ppc64_elf_edit_toc): Add a pass over GOT relocs.
836         (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
837         when possible.
838
839 2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
840
841         PR ld/24486
842         * elflink.c (elf_link_output_extsym): Don't complain undefined
843         weak dynamic reference.
844
845 2019-04-25  Sudakshina Das  <sudi.das@arm.com>
846
847         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
848         (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
849         (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
850         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
851         (elfNN_aarch64_small_plt0_pac_entry): Remove.
852         (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
853         (elfNN_aarch64_small_plt0_bti_entry): Update.
854         (elfNN_aarch64_small_plt_bti_entry): Update.
855         (elfNN_aarch64_small_plt_pac_entry): Update.
856         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
857         (setup_plt_values): Setup new entries.
858         (elfNN_aarch64_finish_dynamic_sections): Remove size change.
859         (elfNN_aarch64_plt_sym_val): Likewise.
860
861 2019-04-22  Jim Wilson  <jimw@sifive.com>
862
863         * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
864
865 2019-04-19  Alan Modra  <amodra@gmail.com>
866
867         * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
868
869 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
870
871         * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
872         building shared object.
873         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
874
875 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
876
877         PR ld/24458
878         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
879         linker_def.
880
881 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
882
883         * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
884         relocation.
885         * bfd-in2.h: Regenerate.
886         * libbfd.h: Likewise.
887
888 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
889
890         * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
891         * bfd-in2.h: Regenerated.
892         * libbfd.h: Regenerated.
893
894 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
895
896         * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
897         * bfd-in2.h: Regenerated.
898         * libbfd.h: Likewise.
899
900 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
901
902         * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
903         * bfd-in2.h: Regenerated.
904         * libbfd.h: Regenerated.
905         * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
906         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
907         and R_ARM_THM_BF12 together.
908         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
909
910 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
911
912         * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
913         * libbfd.h: Regenerated.
914         * bfd-in2.h: Regenerated.
915         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
916         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
917         and R_ARM_THM_BF18 together.
918         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
919
920 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
921
922         * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
923         * bfd-in2.h: Regenerated.
924         * libbfd.h: Regenerated.
925         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
926         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
927         and R_ARM_THM_BF16 together.
928         (get_value_helper): New reloc helper.
929         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
930
931 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
932
933         * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
934         * bfd-in2.h: Regenerate.
935         * libbfd.h: Regenerate.
936
937 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
938
939         * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
940         * bfd-in2.h: Regenerate.
941         * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
942         * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
943         and update assert.
944         (using_thumb2): Likewise.
945         (using_thumb2_bl): Update assert.
946         (arch_has_arm_nop): Likewise.
947         (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
948         (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
949
950 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
951
952         * elf-linker-x86.h (elf_x86_cet_report): New.
953         (elf_linker_x86_params): Add cet_report.
954         * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
955         missing IBT and SHSTK properties if needed.
956
957 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
958
959         PR ld/24436
960         * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
961         "h != NULL".  Don't check "h != NULL" before calling.
962         bfd_elf_gc_record_vtentry.
963         * elf32-arm.c (elf32_arm_check_relocs): Likewise.
964         * elf32-bfin.c (bfin_check_relocs): Likewise.
965         * elf32-cris.c (cris_elf_check_relocs): Likewise.
966         * elf32-csky.c (csky_elf_check_relocs): Likewise.
967         * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
968         * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
969         * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
970         * elf32-frv.c (elf32_frv_check_relocs): Likewise.
971         * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
972         * elf32-i386.c (elf_i386_check_relocs): Likewise.
973         * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
974         * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
975         * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
976         * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
977         * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
978         * elf32-metag.c (elf_metag_check_relocs): Likewise.
979         * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
980         * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
981         * elf32-s390.c (elf_s390_check_relocs): Likewise.
982         * elf32-sh.c (sh_elf_check_relocs): Likewise.
983         * elf32-v850.c (v850_elf_check_relocs): Likewise.
984         * elf32-vax.c (elf_vax_check_relocs): Likewise.
985         * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
986         * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
987         * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
988         * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
989         * elf64-s390.c (elf_s390_check_relocs): Likewise.
990         * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
991         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
992         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
993         * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
994         VTENTRY entry.
995
996 2019-04-11  Alan Modra  <amodra@gmail.com>
997
998         PR 24435
999         * elflink.c (elf_link_add_object_symbols): Don't read partial
1000         dynamic entries from fuzzed objects.
1001
1002 2019-04-11  Tamar Christina  <tamar.christina@arm.com>
1003
1004         PR ld/24302
1005         * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
1006         DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
1007         (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
1008
1009 2019-04-10  Michael Forney  <mforney@mforney.org>
1010
1011         PR 24427
1012         * doc/chew.c (free_words): Correctly free "push_text" strings.
1013
1014 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
1015
1016         * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
1017
1018 2019-04-08  Alan Modra  <amodra@gmail.com>
1019
1020         * configure.ac (elfxx_x86): Define and use.
1021         * configure: Regenerate.
1022
1023 2019-04-06  H.J. Lu  <hongjiu.lu@intel.com>
1024
1025         * elf-linker-x86.h: New file.
1026         * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
1027         to get x86-specific linker options.
1028         * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
1029         (elf_x86_64_check_relocs): Likewise.
1030         (elf_x86_64_relocate_section): Likewise.
1031         (elf_x86_64_link_setup_gnu_properties): Likewise.
1032         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
1033         (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
1034         (_bfd_elf_linker_x86_set_options): New function.
1035         * elfxx-x86.h: Include "elf-linker-x86.h".
1036         (elf_x86_link_hash_table): Add params.
1037
1038 2019-04-03  Alan Modra  <amodra@gmail.com>
1039
1040         * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
1041         * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
1042         * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
1043         * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
1044         * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
1045         * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
1046
1047 2019-04-02  Jim Wilson  <jimw@sifive.com>
1048
1049         PR 24389
1050         * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
1051         ELF header flags to after check for ELF object file.  Loop through
1052         sections looking for code sections, if none, then skip ABI checks.
1053
1054 2019-03-30  Andrew Waterman  <andrew@sifive.com>
1055
1056         * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
1057         rd == X_RA case.
1058
1059 2019-03-29  Max Filippov  <jcmvbkbc@gmail.com>
1060
1061         * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
1062         info->export_dynamic to the conditional.
1063
1064 2019-03-28  Alan Modra  <amodra@gmail.com>
1065
1066         PR 24392
1067         * configure.ac: Invoke AC_CHECK_SIZEOF(int).
1068         * configure: Regenerate.
1069         * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
1070         workaround with SIZEOF_LONG vs. SIZEOF_INT check.
1071         * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
1072         * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
1073         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1074
1075 2019-03-21  Jim Wilson  <jimw@sifive.com>
1076
1077         PR 24365
1078         * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
1079         verify sym non-NULL before using.  Add identical check using h.
1080
1081 2019-03-21  Sudakshina Das  <sudi.das@arm.com>
1082
1083         * elf-bfd.h (struct elf_backend_data): Add argument to
1084         merge_gnu_properties.
1085         * elf-properties.c (elf_merge_gnu_properties): Add argument to
1086         itself and while calling bed->merge_gnu_properties.
1087         (elf_merge_gnu_property_list): Update the calls for
1088         elf_merge_gnu_properties.
1089         * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
1090         of --force-bti warning and add argument.
1091         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
1092         warning.
1093         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
1094         * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
1095         declaration.
1096
1097 2019-03-20  Sudakshina Das  <sudi.das@arm.com>
1098
1099         * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
1100         * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
1101         (elf_backend_fixup_gnu_properties): Define for AArch64.
1102
1103 2019-03-18  Alan Modra  <amodra@gmail.com>
1104
1105         PR 24355
1106         * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
1107         for local iplt syms with ent->plt.offset == -1.  Remove ineffective
1108         attempt at writing glink stubs only once.
1109
1110 2019-03-16  Alan Modra  <amodra@gmail.com>
1111
1112         PR 24337
1113         * elf.c (_bfd_elf_rela_local_sym): Revert last change.
1114         (_bfd_elf_rel_local_sym): Likewise.
1115         * elflink.c (elf_link_input_bfd): Use bfd_und_section for
1116         section of symbols with unrecognized shndx.
1117
1118 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
1119
1120         PR ld/24267
1121         * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
1122         section.
1123         * cofflink.c (coff_link_add_symbols): Check for symbols defined
1124         in discarded section.
1125
1126 2019-03-15  Alan Modra  <amodra@gmail.com>
1127
1128         PR 24339
1129         * elflink.c (elf_link_add_object_symbols): Bail out on a local
1130         symbol after globals if elf_bad_symtab is not set.
1131
1132 2019-03-15  Alan Modra  <amodra@gmail.com>
1133
1134         PR 24337
1135         * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
1136         (_bfd_elf_rel_local_sym): Likewise.
1137
1138 2019-03-15  Alan Modra  <amodra@gmail.com>
1139
1140         PR 24336
1141         * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
1142         object files with sh_size not a multiple of sh_entsize.
1143
1144 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
1145
1146         PR ld/24338
1147         * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
1148         input with bad relocation.
1149
1150 22019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
1151
1152         * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
1153
1154 2019-03-14  Nick Clifton  <nickc@redhat.com>
1155
1156         PR 24334
1157         * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
1158         (save_section_vma): Initialise field to the number of entries in
1159         the sec_vma table.
1160         (section_vma_same): Check that the number of entries in the
1161         sec_vma table matches the number of sections in the bfd.
1162
1163 2019-03-14  Nick Clifton  <nickc@redhat.com>
1164
1165         PR 24333
1166         * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
1167         section owner pointer when adding the default symbol.
1168
1169 2019-03-14  Nick Clifton  <nickc@redhat.com>
1170
1171         PR 24332
1172         * elflink.c (elf_link_add_object_symbols): Add new local variable
1173         extversym_end.  Initialise it to point to the end of the version
1174         symbol table, if present.  Check it when initialising and updating
1175         the ever pointer.
1176
1177 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
1178
1179         * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
1180         (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
1181         (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
1182         (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
1183         and PLT_PAC_PLT.
1184         (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
1185         (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
1186         (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
1187
1188 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
1189             Szabolcs Nagy  <szabolcs.nagy@arm.com>
1190
1191         * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
1192         (aarch64_bti_pac_info): New.
1193         (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
1194         (bfd_elf32_aarch64_set_options): Likewise.
1195         * bfd-in2.h: Regenerate
1196         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
1197         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
1198         (elfNN_aarch64_small_plt0_bti_entry): New.
1199         (elfNN_aarch64_small_plt_bti_entry): New.
1200         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
1201         (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
1202         (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
1203         tlsdesc_plt_entry_size fields.
1204         (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
1205         (setup_plt_values): New helper function.
1206         (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
1207         bti enable type.
1208         (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
1209         fixed macros.
1210         (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
1211         (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
1212         to plt stubs instead of fixed ones and update filling them according
1213         to the need for bti.
1214         (elfNN_aarch64_init_small_plt0_entry): Likewise.
1215         (elfNN_aarch64_finish_dynamic_sections): Likewise.
1216         (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
1217         (elfNN_aarch64_plt_sym_val): Update size accordingly.
1218         (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
1219         is set.
1220         (bfd_elfNN_get_synthetic_symtab): Define.
1221         (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
1222         and mising BTI NOTE SECTION.
1223
1224
1225 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
1226
1227         * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
1228         linker created inputs from merge.
1229         * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
1230         GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
1231         (elfNN_aarch64_link_setup_gnu_properties): New.
1232         (elfNN_aarch64_merge_gnu_properties): New.
1233         (elf_backend_setup_gnu_properties): Define for AArch64.
1234         (elf_backend_merge_gnu_properties): Likewise.
1235         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
1236         (_bfd_aarch64_elf_parse_gnu_properties): Define.
1237         (_bfd_aarch64_elf_merge_gnu_properties): Define.
1238         * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
1239         (_bfd_aarch64_elf_parse_gnu_properties): Declare.
1240         (_bfd_aarch64_elf_merge_gnu_properties): Declare.
1241         (elf_backend_parse_gnu_properties): Define for AArch64.
1242
1243 2019-03-13  H.J. Lu  <hongjiu.lu@intel.com>
1244
1245         PR ld/24322
1246         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
1247         merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
1248
1249 2019-03-12  Alan Modra  <amodra@gmail.com>
1250
1251         * coffcode.h (buy_and_read): Delete unnecessary forward decl.  Add
1252         nmemb parameter.  Use bfd_alloc2.
1253         (coff_slurp_line_table): Use bfd_alloc2.  Update buy_and_read calls.
1254         Delete assertion.
1255         (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
1256         (coff_slurp_reloc_table): Use bfd_alloc2.  Update buy_and_read calls.
1257         * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
1258         doesn't overflow.
1259         * elf.c (bfd_section_from_shdr): Use bfd_zalloc2.  Style fix.
1260         (assign_section_numbers): Style fix.
1261         (swap_out_syms): Use bfd_malloc2.
1262         (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
1263         overflow.
1264         (_bfd_elf_make_empty_symbol): Style fix.
1265         (elfobj_grok_stapsdt_note_1): Formatting.
1266         * elfcode.h (elf_object_p): Use bfd_alloc2.
1267         (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
1268         (elf_slurp_symbol_table): Use bfd_zalloc2.
1269         (elf_slurp_reloc_table): Use bfd_alloc2.
1270         (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
1271         * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
1272         size calculation doesn't overflow.
1273         (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
1274         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1275         * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
1276
1277 2019-03-08  Alan Modra  <amodra@gmail.com>
1278
1279         PR 24311
1280         * merge.c (merge_strings): Return secinfo.  Don't pad section
1281         to alignment here.
1282         (_bfd_merge_sections): Pad section to alignment here, if input
1283         sections contributing to merged output all pad to alignment.
1284         Formatting.
1285
1286 2019-03-06  Nick Clifton  <nickc@redhat.com>
1287
1288         * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
1289         table pointer.
1290         * coffgen.c (coff_find_nearest_line_with_names): Do not call
1291         _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
1292
1293 2019-03-01  Andreas Krebbel  <krebbel@linux.ibm.com>
1294
1295         This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
1296         2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
1297
1298         PR 20113
1299         * elf32-s390.c (allocate_dynrelocs): Update comment.
1300
1301 2019-02-28  Tamar Christina  <tamar.christina@arm.com>
1302
1303         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
1304
1305 2019-02-28  Nick Clifton  <nickc@redhat.com>
1306
1307         PR 24273
1308         * elf.c (bfd_elf_string_from_elf_section): Check for a string
1309         section that is not NUL terminated.
1310
1311 2019-02-27  H.J. Lu  <hongjiu.lu@intel.com>
1312
1313         PR ld/24276
1314         * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
1315         by linker when checking copy reloc on protected symbol.
1316
1317 2019-02-24  Alan Modra  <amodra@gmail.com>
1318
1319         PR 24144
1320         * pdp11.c (set_section_contents): Revert 2015-02-24 change.
1321
1322 2019-02-20  Eric Tsai  <erictsai@cadence.com>
1323
1324         * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
1325         sections between the call site and call destination and adjust
1326         call distance by the largest alignment.
1327
1328 2019-02-20  Alan Hayward  <alan.hayward@arm.com>
1329
1330         * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
1331         * elf.c (elfcore_grok_aarch_pauth): New function.
1332         (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
1333         (elfcore_write_aarch_pauth): New function.
1334         (elfcore_write_register_note): Check for AArch64 pauth section.
1335
1336 2019-02-20  Alan Modra  <amodra@gmail.com>
1337
1338         PR 24225
1339         * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
1340         return value.
1341
1342 2019-02-20  Michael Roitzsch  <reactorcontrol@icloud.com>
1343
1344         * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
1345         Darwin hosts, not just or1k.
1346         * configure: Regenerate.
1347
1348 2019-02-20  Alan Modra  <amodra@gmail.com>
1349
1350         PR 24236
1351         * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
1352         sentinel NUL to string buffer nearer to loop where it is used.
1353         Don't go past sentinel when scanning strings, and don't write
1354         NUL again.
1355         * archive.c (do_slurp_coff_armap): Simplify string handling to
1356         archive64.c style.
1357
1358 2019-02-19  Alan Modra  <amodra@gmail.com>
1359
1360         PR 24235
1361         * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
1362         attempting to prevent read past end of section.
1363
1364 2019-02-18  Alan Modra  <amodra@gmail.com>
1365
1366         PR 24225
1367         * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
1368         PRIx64 to generate warning messages.  Print local sym names too.
1369
1370 2019-02-09  Vineet Gupta  <vgupta@synopsys.com>
1371
1372         * elf32-arc (INIT_SYM_STRING): Delete.
1373         (FINI_SYM_STRING): Likewise.
1374         (init_str): Likewise.
1375         (fini_str): Likewise.
1376
1377 2019-02-08  Alan Modra  <amodra@gmail.com>
1378
1379         * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
1380         for bss-plt" warning to make it an error.
1381
1382 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
1383
1384         PR ld/18841
1385         * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
1386         reloc_class_ifunc for ifunc symbols.
1387         * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
1388
1389 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
1390
1391         * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
1392         <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
1393
1394 2019-02-07  Nick Clifton  <nickc@redhat.com>
1395
1396         * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
1397         into the definitely obsolete list.
1398
1399 2019-02-05  H.J. Lu  <hongjiu.lu@intel.com>
1400
1401         PR ld/24151
1402         * elf64-x86-64.c (elf_x86_64_need_pic): Check
1403         SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
1404         (elf_x86_64_relocate_section): Move PIC check for PC-relative
1405         relocations to ...
1406         (elf_x86_64_check_relocs): Here.
1407         (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
1408         to check if a symbol is defined in a non-shared object.
1409         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
1410
1411 2019-01-21  Sergio Durigan Junior  <sergiodj@redhat.com>
1412
1413         * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
1414         of 'labs' (and fix GCC warning).
1415
1416 2019-01-25  Nick Clifton  <nickc@redhat.com>
1417
1418         * po/ru.po: Updated Russian translation.
1419
1420 2019-01-23  Nick Clifton  <nickc@redhat.com>
1421
1422         * po/fr.po: Updated French translation.
1423
1424 2019-01-21  Nick Clifton  <nickc@redhat.com>
1425
1426         * po/pt.po: Updated Portuguese translation.
1427         * po/uk.po: Updated Ukranian translation.
1428
1429 2019-01-21  Yuri Chornoivan  <yurchor@ukr.net>
1430
1431         PR 24108
1432         * elf32-nds32.c (nds32_relocate_section): Add space between words
1433         in error message.
1434         * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
1435         error message.
1436         (riscv_i_or_e_p): Likewise.
1437         (riscv_merge_arch_attr_info): Likewise.
1438
1439 2019-01-19  Nick Clifton  <nickc@redhat.com>
1440
1441         * version.m4: Reset to 2.32.51
1442         * configure: Regenerate.
1443         * po/bfd.pot: Regenerate.
1444
1445 2018-06-24  Nick Clifton  <nickc@redhat.com>
1446
1447         2.32 branch created.
1448
1449 2019-01-16  Kito Cheng  <kito@andestech.com>
1450
1451         * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
1452         for OBJ_ATTR_PROC.
1453
1454 2019-01-16  Kito Cheng  <kito@andestech.com>
1455             Nelson Chu  <nelson@andestech.com>
1456
1457         * elfnn-riscv.c (in_subsets): New.
1458         (out_subsets): Likewise.
1459         (merged_subsets): Likewise.
1460         (riscv_std_ext_p): Likewise.
1461         (riscv_non_std_ext_p): Likewise.
1462         (riscv_std_sv_ext_p): Likewise.
1463         (riscv_non_std_sv_ext_p): Likewise.
1464         (riscv_version_mismatch): Likewise.
1465         (riscv_i_or_e_p): Likewise.
1466         (riscv_merge_std_ext): Likewise.
1467         (riscv_merge_non_std_and_sv_ext): Likewise.
1468         (riscv_merge_arch_attr_info): Likewise.
1469         (riscv_merge_attributes): Likewise.
1470         (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
1471
1472         * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
1473         (elf_backend_obj_attrs_vendor): Define.
1474         (elf_backend_obj_attrs_section_type): Likewise.
1475         (elf_backend_obj_attrs_section): Likewise.
1476         (elf_backend_obj_attrs_arg_type): Define as
1477         riscv_elf_obj_attrs_arg_type.
1478         * elfxx-riscv.c (riscv_estimate_digit): New.
1479         (riscv_estimate_arch_strlen1): Likewise.
1480         (riscv_estimate_arch_strlen): Likewise.
1481         (riscv_arch_str1): Likewise.
1482         (riscv_arch_str): Likewise.
1483         * elfxx-riscv.h (riscv_arch_str): Declare.
1484
1485 2019-01-14  John Darrington <john@darrington.wattle.id.au>
1486
1487         * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
1488         * libbfd.h: regen.
1489         * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
1490         source field.  (md_apply_fix): Apply final fix
1491         to BFD_RELOC_S12Z_OPR.
1492         * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
1493
1494 2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
1495
1496         PR 20113
1497         * elf32-s390.c (allocate_dynrelocs): Update comment.
1498
1499 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
1500
1501         * warning.m4: Adjust egrep pattern for non-GNU compilers.
1502         * configure: Regenerate.
1503
1504 2019-01-08  Alan Modra  <amodra@gmail.com>
1505
1506         PR 23699
1507         PR 24065
1508         * ihex.c (ihex_write_object_contents): Properly check 32-bit
1509         address range.
1510
1511 2019-01-05  Yoshinori Sato <ysato@users.sourceforge.jp>
1512
1513         * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
1514         * bfd/bfd-in2.h: Regenerate.
1515         * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
1516         * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
1517
1518 2019-01-04  Lifang Xia  <lifang_xia@c-sky.com>
1519
1520         * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
1521         default target, little endian target is more suitable.
1522
1523 2019-01-04  Alan Modra  <amodra@gmail.com>
1524
1525         PR 24061
1526         PR 21786
1527         * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
1528         adjust all callers.
1529         (EQ_VALUE_IN_FIELD): Likewise.
1530         * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
1531
1532 2019-01-01  Alan Modra  <amodra@gmail.com>
1533
1534         Update year range in copyright notice of all files.
1535
1536 For older changes see ChangeLog-2018
1537 \f
1538 Copyright (C) 2019 Free Software Foundation, Inc.
1539
1540 Copying and distribution of this file, with or without modification,
1541 are permitted in any medium without royalty provided the copyright
1542 notice and this notice are preserved.
1543
1544 Local Variables:
1545 mode: change-log
1546 left-margin: 8
1547 fill-column: 74
1548 version-control: never
1549 End: