Revert "ARM STM32L4XX erratum test failure"
[external/binutils.git] / bfd / ChangeLog
1 2019-05-16  Alan Modra  <amodra@gmail.com>
2
3         * elf32-arm.c (elf32_arm_write_section): Revert last change.
4
5 2019-05-15  Alan Modra  <amodra@gmail.com>
6
7         * elf32-arm.c (elf32_arm_write_section): Don't leave
8         error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
9         unitialised section contents.
10
11 2019-05-14  Jamey Hicks  <jamey.hicks@gmail.com>
12
13         PR 19921
14         * verilog.c: (VerilogDataWidth): New variable.
15         (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
16
17 2019-05-08  Nick Clifton  <nickc@redhat.com>
18
19         PR 24523
20         * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
21         rather than FALSE if encountering a non-ELF file.
22
23 2019-05-06  Alan Modra  <amodra@gmail.com>
24
25         * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
26
27 2019-05-06  Alan Modra  <amodra@gmail.com>
28
29         * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
30         (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
31         Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
32         * libbfd.h: Regenerate.
33         * bfd-in2.h: Regenerate.
34
35 2019-05-04  Alan Modra  <amodra@gmail.com>
36
37         PR 24511
38         * syms.c (coff_section_type): Only allow '.', '$' and numeric
39         following the standard section names.
40         (bfd_decode_symclass): Prioritize section flag tests in
41         decode_section_type before name tests in coff_section_type.
42         * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
43         and fake_common_section using BFD_FAKE_SECTION.  Use "fake" as
44         their names and choose standard .text section flags for
45         fake_section.
46
47 2019-05-02  Nick Clifton  <nickc@redhat.com>
48
49         PR 24493
50         * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
51         .gnu.debugaltlink sections as debugging sections.
52
53 2019-04-30  Alan Modra  <amodra@gmail.com>
54
55         * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
56         (struct _ppc64_elf_section_data): Likewise.
57         (ppc64_elf_check_relocs): Set above fields.
58         (ppc64_elf_edit_toc): Add a pass over GOT relocs.
59         (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
60         when possible.
61
62 2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
63
64         PR ld/24486
65         * elflink.c (elf_link_output_extsym): Don't complain undefined
66         weak dynamic reference.
67
68 2019-04-25  Sudakshina Das  <sudi.das@arm.com>
69
70         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
71         (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
72         (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
73         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
74         (elfNN_aarch64_small_plt0_pac_entry): Remove.
75         (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
76         (elfNN_aarch64_small_plt0_bti_entry): Update.
77         (elfNN_aarch64_small_plt_bti_entry): Update.
78         (elfNN_aarch64_small_plt_pac_entry): Update.
79         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
80         (setup_plt_values): Setup new entries.
81         (elfNN_aarch64_finish_dynamic_sections): Remove size change.
82         (elfNN_aarch64_plt_sym_val): Likewise.
83
84 2019-04-22  Jim Wilson  <jimw@sifive.com>
85
86         * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
87
88 2019-04-19  Alan Modra  <amodra@gmail.com>
89
90         * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
91
92 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
93
94         * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
95         building shared object.
96         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
97
98 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
99
100         PR ld/24458
101         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
102         linker_def.
103
104 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
105
106         * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
107         relocation.
108         * bfd-in2.h: Regenerate.
109         * libbfd.h: Likewise.
110
111 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
112
113         * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
114         * bfd-in2.h: Regenerated.
115         * libbfd.h: Regenerated.
116
117 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
118
119         * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
120         * bfd-in2.h: Regenerated.
121         * libbfd.h: Likewise.
122
123 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
124
125         * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
126         * bfd-in2.h: Regenerated.
127         * libbfd.h: Regenerated.
128         * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
129         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
130         and R_ARM_THM_BF12 together.
131         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
132
133 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
134
135         * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
136         * libbfd.h: Regenerated.
137         * bfd-in2.h: Regenerated.
138         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
139         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
140         and R_ARM_THM_BF18 together.
141         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
142
143 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
144
145         * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
146         * bfd-in2.h: Regenerated.
147         * libbfd.h: Regenerated.
148         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
149         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
150         and R_ARM_THM_BF16 together.
151         (get_value_helper): New reloc helper.
152         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
153
154 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
155
156         * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
157         * bfd-in2.h: Regenerate.
158         * libbfd.h: Regenerate.
159
160 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
161
162         * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
163         * bfd-in2.h: Regenerate.
164         * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
165         * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
166         and update assert.
167         (using_thumb2): Likewise.
168         (using_thumb2_bl): Update assert.
169         (arch_has_arm_nop): Likewise.
170         (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
171         (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
172
173 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
174
175         * elf-linker-x86.h (elf_x86_cet_report): New.
176         (elf_linker_x86_params): Add cet_report.
177         * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
178         missing IBT and SHSTK properties if needed.
179
180 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
181
182         PR ld/24436
183         * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
184         "h != NULL".  Don't check "h != NULL" before calling.
185         bfd_elf_gc_record_vtentry.
186         * elf32-arm.c (elf32_arm_check_relocs): Likewise.
187         * elf32-bfin.c (bfin_check_relocs): Likewise.
188         * elf32-cris.c (cris_elf_check_relocs): Likewise.
189         * elf32-csky.c (csky_elf_check_relocs): Likewise.
190         * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
191         * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
192         * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
193         * elf32-frv.c (elf32_frv_check_relocs): Likewise.
194         * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
195         * elf32-i386.c (elf_i386_check_relocs): Likewise.
196         * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
197         * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
198         * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
199         * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
200         * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
201         * elf32-metag.c (elf_metag_check_relocs): Likewise.
202         * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
203         * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
204         * elf32-s390.c (elf_s390_check_relocs): Likewise.
205         * elf32-sh.c (sh_elf_check_relocs): Likewise.
206         * elf32-v850.c (v850_elf_check_relocs): Likewise.
207         * elf32-vax.c (elf_vax_check_relocs): Likewise.
208         * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
209         * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
210         * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
211         * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
212         * elf64-s390.c (elf_s390_check_relocs): Likewise.
213         * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
214         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
215         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
216         * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
217         VTENTRY entry.
218
219 2019-04-11  Alan Modra  <amodra@gmail.com>
220
221         PR 24435
222         * elflink.c (elf_link_add_object_symbols): Don't read partial
223         dynamic entries from fuzzed objects.
224
225 2019-04-11  Tamar Christina  <tamar.christina@arm.com>
226
227         PR ld/24302
228         * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
229         DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
230         (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
231
232 2019-04-10  Michael Forney  <mforney@mforney.org>
233
234         PR 24427
235         * doc/chew.c (free_words): Correctly free "push_text" strings.
236
237 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
238
239         * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
240
241 2019-04-08  Alan Modra  <amodra@gmail.com>
242
243         * configure.ac (elfxx_x86): Define and use.
244         * configure: Regenerate.
245
246 2019-04-06  H.J. Lu  <hongjiu.lu@intel.com>
247
248         * elf-linker-x86.h: New file.
249         * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
250         to get x86-specific linker options.
251         * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
252         (elf_x86_64_check_relocs): Likewise.
253         (elf_x86_64_relocate_section): Likewise.
254         (elf_x86_64_link_setup_gnu_properties): Likewise.
255         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
256         (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
257         (_bfd_elf_linker_x86_set_options): New function.
258         * elfxx-x86.h: Include "elf-linker-x86.h".
259         (elf_x86_link_hash_table): Add params.
260
261 2019-04-03  Alan Modra  <amodra@gmail.com>
262
263         * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
264         * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
265         * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
266         * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
267         * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
268         * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
269
270 2019-04-02  Jim Wilson  <jimw@sifive.com>
271
272         PR 24389
273         * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
274         ELF header flags to after check for ELF object file.  Loop through
275         sections looking for code sections, if none, then skip ABI checks.
276
277 2019-03-30  Andrew Waterman  <andrew@sifive.com>
278
279         * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
280         rd == X_RA case.
281
282 2019-03-29  Max Filippov  <jcmvbkbc@gmail.com>
283
284         * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
285         info->export_dynamic to the conditional.
286
287 2019-03-28  Alan Modra  <amodra@gmail.com>
288
289         PR 24392
290         * configure.ac: Invoke AC_CHECK_SIZEOF(int).
291         * configure: Regenerate.
292         * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
293         workaround with SIZEOF_LONG vs. SIZEOF_INT check.
294         * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
295         * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
296         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
297
298 2019-03-21  Jim Wilson  <jimw@sifive.com>
299
300         PR 24365
301         * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
302         verify sym non-NULL before using.  Add identical check using h.
303
304 2019-03-21  Sudakshina Das  <sudi.das@arm.com>
305
306         * elf-bfd.h (struct elf_backend_data): Add argument to
307         merge_gnu_properties.
308         * elf-properties.c (elf_merge_gnu_properties): Add argument to
309         itself and while calling bed->merge_gnu_properties.
310         (elf_merge_gnu_property_list): Update the calls for
311         elf_merge_gnu_properties.
312         * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
313         of --force-bti warning and add argument.
314         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
315         warning.
316         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
317         * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
318         declaration.
319
320 2019-03-20  Sudakshina Das  <sudi.das@arm.com>
321
322         * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
323         * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
324         (elf_backend_fixup_gnu_properties): Define for AArch64.
325
326 2019-03-18  Alan Modra  <amodra@gmail.com>
327
328         PR 24355
329         * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
330         for local iplt syms with ent->plt.offset == -1.  Remove ineffective
331         attempt at writing glink stubs only once.
332
333 2019-03-16  Alan Modra  <amodra@gmail.com>
334
335         PR 24337
336         * elf.c (_bfd_elf_rela_local_sym): Revert last change.
337         (_bfd_elf_rel_local_sym): Likewise.
338         * elflink.c (elf_link_input_bfd): Use bfd_und_section for
339         section of symbols with unrecognized shndx.
340
341 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
342
343         PR ld/24267
344         * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
345         section.
346         * cofflink.c (coff_link_add_symbols): Check for symbols defined
347         in discarded section.
348
349 2019-03-15  Alan Modra  <amodra@gmail.com>
350
351         PR 24339
352         * elflink.c (elf_link_add_object_symbols): Bail out on a local
353         symbol after globals if elf_bad_symtab is not set.
354
355 2019-03-15  Alan Modra  <amodra@gmail.com>
356
357         PR 24337
358         * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
359         (_bfd_elf_rel_local_sym): Likewise.
360
361 2019-03-15  Alan Modra  <amodra@gmail.com>
362
363         PR 24336
364         * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
365         object files with sh_size not a multiple of sh_entsize.
366
367 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
368
369         PR ld/24338
370         * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
371         input with bad relocation.
372
373 22019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
374
375         * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
376
377 2019-03-14  Nick Clifton  <nickc@redhat.com>
378
379         PR 24334
380         * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
381         (save_section_vma): Initialise field to the number of entries in
382         the sec_vma table.
383         (section_vma_same): Check that the number of entries in the
384         sec_vma table matches the number of sections in the bfd.
385
386 2019-03-14  Nick Clifton  <nickc@redhat.com>
387
388         PR 24333
389         * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
390         section owner pointer when adding the default symbol.
391
392 2019-03-14  Nick Clifton  <nickc@redhat.com>
393
394         PR 24332
395         * elflink.c (elf_link_add_object_symbols): Add new local variable
396         extversym_end.  Initialise it to point to the end of the version
397         symbol table, if present.  Check it when initialising and updating
398         the ever pointer.
399
400 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
401
402         * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
403         (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
404         (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
405         (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
406         and PLT_PAC_PLT.
407         (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
408         (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
409         (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
410
411 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
412             Szabolcs Nagy  <szabolcs.nagy@arm.com>
413
414         * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
415         (aarch64_bti_pac_info): New.
416         (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
417         (bfd_elf32_aarch64_set_options): Likewise.
418         * bfd-in2.h: Regenerate
419         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
420         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
421         (elfNN_aarch64_small_plt0_bti_entry): New.
422         (elfNN_aarch64_small_plt_bti_entry): New.
423         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
424         (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
425         (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
426         tlsdesc_plt_entry_size fields.
427         (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
428         (setup_plt_values): New helper function.
429         (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
430         bti enable type.
431         (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
432         fixed macros.
433         (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
434         (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
435         to plt stubs instead of fixed ones and update filling them according
436         to the need for bti.
437         (elfNN_aarch64_init_small_plt0_entry): Likewise.
438         (elfNN_aarch64_finish_dynamic_sections): Likewise.
439         (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
440         (elfNN_aarch64_plt_sym_val): Update size accordingly.
441         (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
442         is set.
443         (bfd_elfNN_get_synthetic_symtab): Define.
444         (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
445         and mising BTI NOTE SECTION.
446
447
448 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
449
450         * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
451         linker created inputs from merge.
452         * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
453         GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
454         (elfNN_aarch64_link_setup_gnu_properties): New.
455         (elfNN_aarch64_merge_gnu_properties): New.
456         (elf_backend_setup_gnu_properties): Define for AArch64.
457         (elf_backend_merge_gnu_properties): Likewise.
458         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
459         (_bfd_aarch64_elf_parse_gnu_properties): Define.
460         (_bfd_aarch64_elf_merge_gnu_properties): Define.
461         * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
462         (_bfd_aarch64_elf_parse_gnu_properties): Declare.
463         (_bfd_aarch64_elf_merge_gnu_properties): Declare.
464         (elf_backend_parse_gnu_properties): Define for AArch64.
465
466 2019-03-13  H.J. Lu  <hongjiu.lu@intel.com>
467
468         PR ld/24322
469         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
470         merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
471
472 2019-03-12  Alan Modra  <amodra@gmail.com>
473
474         * coffcode.h (buy_and_read): Delete unnecessary forward decl.  Add
475         nmemb parameter.  Use bfd_alloc2.
476         (coff_slurp_line_table): Use bfd_alloc2.  Update buy_and_read calls.
477         Delete assertion.
478         (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
479         (coff_slurp_reloc_table): Use bfd_alloc2.  Update buy_and_read calls.
480         * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
481         doesn't overflow.
482         * elf.c (bfd_section_from_shdr): Use bfd_zalloc2.  Style fix.
483         (assign_section_numbers): Style fix.
484         (swap_out_syms): Use bfd_malloc2.
485         (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
486         overflow.
487         (_bfd_elf_make_empty_symbol): Style fix.
488         (elfobj_grok_stapsdt_note_1): Formatting.
489         * elfcode.h (elf_object_p): Use bfd_alloc2.
490         (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
491         (elf_slurp_symbol_table): Use bfd_zalloc2.
492         (elf_slurp_reloc_table): Use bfd_alloc2.
493         (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
494         * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
495         size calculation doesn't overflow.
496         (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
497         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
498         * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
499
500 2019-03-08  Alan Modra  <amodra@gmail.com>
501
502         PR 24311
503         * merge.c (merge_strings): Return secinfo.  Don't pad section
504         to alignment here.
505         (_bfd_merge_sections): Pad section to alignment here, if input
506         sections contributing to merged output all pad to alignment.
507         Formatting.
508
509 2019-03-06  Nick Clifton  <nickc@redhat.com>
510
511         * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
512         table pointer.
513         * coffgen.c (coff_find_nearest_line_with_names): Do not call
514         _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
515
516 2019-03-01  Andreas Krebbel  <krebbel@linux.ibm.com>
517
518         This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
519         2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
520
521         PR 20113
522         * elf32-s390.c (allocate_dynrelocs): Update comment.
523
524 2019-02-28  Tamar Christina  <tamar.christina@arm.com>
525
526         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
527
528 2019-02-28  Nick Clifton  <nickc@redhat.com>
529
530         PR 24273
531         * elf.c (bfd_elf_string_from_elf_section): Check for a string
532         section that is not NUL terminated.
533
534 2019-02-27  H.J. Lu  <hongjiu.lu@intel.com>
535
536         PR ld/24276
537         * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
538         by linker when checking copy reloc on protected symbol.
539
540 2019-02-24  Alan Modra  <amodra@gmail.com>
541
542         PR 24144
543         * pdp11.c (set_section_contents): Revert 2015-02-24 change.
544
545 2019-02-20  Eric Tsai  <erictsai@cadence.com>
546
547         * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
548         sections between the call site and call destination and adjust
549         call distance by the largest alignment.
550
551 2019-02-20  Alan Hayward  <alan.hayward@arm.com>
552
553         * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
554         * elf.c (elfcore_grok_aarch_pauth): New function.
555         (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
556         (elfcore_write_aarch_pauth): New function.
557         (elfcore_write_register_note): Check for AArch64 pauth section.
558
559 2019-02-20  Alan Modra  <amodra@gmail.com>
560
561         PR 24225
562         * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
563         return value.
564
565 2019-02-20  Michael Roitzsch  <reactorcontrol@icloud.com>
566
567         * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
568         Darwin hosts, not just or1k.
569         * configure: Regenerate.
570
571 2019-02-20  Alan Modra  <amodra@gmail.com>
572
573         PR 24236
574         * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
575         sentinel NUL to string buffer nearer to loop where it is used.
576         Don't go past sentinel when scanning strings, and don't write
577         NUL again.
578         * archive.c (do_slurp_coff_armap): Simplify string handling to
579         archive64.c style.
580
581 2019-02-19  Alan Modra  <amodra@gmail.com>
582
583         PR 24235
584         * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
585         attempting to prevent read past end of section.
586
587 2019-02-18  Alan Modra  <amodra@gmail.com>
588
589         PR 24225
590         * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
591         PRIx64 to generate warning messages.  Print local sym names too.
592
593 2019-02-09  Vineet Gupta  <vgupta@synopsys.com>
594
595         * elf32-arc (INIT_SYM_STRING): Delete.
596         (FINI_SYM_STRING): Likewise.
597         (init_str): Likewise.
598         (fini_str): Likewise.
599
600 2019-02-08  Alan Modra  <amodra@gmail.com>
601
602         * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
603         for bss-plt" warning to make it an error.
604
605 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
606
607         PR ld/18841
608         * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
609         reloc_class_ifunc for ifunc symbols.
610         * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
611
612 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
613
614         * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
615         <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
616
617 2019-02-07  Nick Clifton  <nickc@redhat.com>
618
619         * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
620         into the definitely obsolete list.
621
622 2019-02-05  H.J. Lu  <hongjiu.lu@intel.com>
623
624         PR ld/24151
625         * elf64-x86-64.c (elf_x86_64_need_pic): Check
626         SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
627         (elf_x86_64_relocate_section): Move PIC check for PC-relative
628         relocations to ...
629         (elf_x86_64_check_relocs): Here.
630         (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
631         to check if a symbol is defined in a non-shared object.
632         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
633
634 2019-01-21  Sergio Durigan Junior  <sergiodj@redhat.com>
635
636         * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
637         of 'labs' (and fix GCC warning).
638
639 2019-01-25  Nick Clifton  <nickc@redhat.com>
640
641         * po/ru.po: Updated Russian translation.
642
643 2019-01-23  Nick Clifton  <nickc@redhat.com>
644
645         * po/fr.po: Updated French translation.
646
647 2019-01-21  Nick Clifton  <nickc@redhat.com>
648
649         * po/pt.po: Updated Portuguese translation.
650         * po/uk.po: Updated Ukranian translation.
651
652 2019-01-21  Yuri Chornoivan  <yurchor@ukr.net>
653
654         PR 24108
655         * elf32-nds32.c (nds32_relocate_section): Add space between words
656         in error message.
657         * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
658         error message.
659         (riscv_i_or_e_p): Likewise.
660         (riscv_merge_arch_attr_info): Likewise.
661
662 2019-01-19  Nick Clifton  <nickc@redhat.com>
663
664         * version.m4: Reset to 2.32.51
665         * configure: Regenerate.
666         * po/bfd.pot: Regenerate.
667
668 2018-06-24  Nick Clifton  <nickc@redhat.com>
669
670         2.32 branch created.
671
672 2019-01-16  Kito Cheng  <kito@andestech.com>
673
674         * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
675         for OBJ_ATTR_PROC.
676
677 2019-01-16  Kito Cheng  <kito@andestech.com>
678             Nelson Chu  <nelson@andestech.com>
679
680         * elfnn-riscv.c (in_subsets): New.
681         (out_subsets): Likewise.
682         (merged_subsets): Likewise.
683         (riscv_std_ext_p): Likewise.
684         (riscv_non_std_ext_p): Likewise.
685         (riscv_std_sv_ext_p): Likewise.
686         (riscv_non_std_sv_ext_p): Likewise.
687         (riscv_version_mismatch): Likewise.
688         (riscv_i_or_e_p): Likewise.
689         (riscv_merge_std_ext): Likewise.
690         (riscv_merge_non_std_and_sv_ext): Likewise.
691         (riscv_merge_arch_attr_info): Likewise.
692         (riscv_merge_attributes): Likewise.
693         (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
694
695         * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
696         (elf_backend_obj_attrs_vendor): Define.
697         (elf_backend_obj_attrs_section_type): Likewise.
698         (elf_backend_obj_attrs_section): Likewise.
699         (elf_backend_obj_attrs_arg_type): Define as
700         riscv_elf_obj_attrs_arg_type.
701         * elfxx-riscv.c (riscv_estimate_digit): New.
702         (riscv_estimate_arch_strlen1): Likewise.
703         (riscv_estimate_arch_strlen): Likewise.
704         (riscv_arch_str1): Likewise.
705         (riscv_arch_str): Likewise.
706         * elfxx-riscv.h (riscv_arch_str): Declare.
707
708 2019-01-14  John Darrington <john@darrington.wattle.id.au>
709
710         * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
711         * libbfd.h: regen.
712         * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
713         source field.  (md_apply_fix): Apply final fix
714         to BFD_RELOC_S12Z_OPR.
715         * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
716
717 2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
718
719         PR 20113
720         * elf32-s390.c (allocate_dynrelocs): Update comment.
721
722 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
723
724         * warning.m4: Adjust egrep pattern for non-GNU compilers.
725         * configure: Regenerate.
726
727 2019-01-08  Alan Modra  <amodra@gmail.com>
728
729         PR 23699
730         PR 24065
731         * ihex.c (ihex_write_object_contents): Properly check 32-bit
732         address range.
733
734 2019-01-05  Yoshinori Sato <ysato@users.sourceforge.jp>
735
736         * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
737         * bfd/bfd-in2.h: Regenerate.
738         * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
739         * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
740
741 2019-01-04  Lifang Xia  <lifang_xia@c-sky.com>
742
743         * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
744         default target, little endian target is more suitable.
745
746 2019-01-04  Alan Modra  <amodra@gmail.com>
747
748         PR 24061
749         PR 21786
750         * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
751         adjust all callers.
752         (EQ_VALUE_IN_FIELD): Likewise.
753         * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
754
755 2019-01-01  Alan Modra  <amodra@gmail.com>
756
757         Update year range in copyright notice of all files.
758
759 For older changes see ChangeLog-2018
760 \f
761 Copyright (C) 2019 Free Software Foundation, Inc.
762
763 Copying and distribution of this file, with or without modification,
764 are permitted in any medium without royalty provided the copyright
765 notice and this notice are preserved.
766
767 Local Variables:
768 mode: change-log
769 left-margin: 8
770 fill-column: 74
771 version-control: never
772 End: