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