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