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