1 2019-03-21 Jim Wilson <jimw@sifive.com>
4 * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
5 verify sym non-NULL before using. Add identical check using h.
7 2019-03-21 Sudakshina Das <sudi.das@arm.com>
9 * elf-bfd.h (struct elf_backend_data): Add argument to
11 * elf-properties.c (elf_merge_gnu_properties): Add argument to
12 itself and while calling bed->merge_gnu_properties.
13 (elf_merge_gnu_property_list): Update the calls for
14 elf_merge_gnu_properties.
15 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
16 of --force-bti warning and add argument.
17 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
19 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
20 * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
23 2019-03-20 Sudakshina Das <sudi.das@arm.com>
25 * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
26 * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
27 (elf_backend_fixup_gnu_properties): Define for AArch64.
29 2019-03-18 Alan Modra <amodra@gmail.com>
32 * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
33 for local iplt syms with ent->plt.offset == -1. Remove ineffective
34 attempt at writing glink stubs only once.
36 2019-03-16 Alan Modra <amodra@gmail.com>
39 * elf.c (_bfd_elf_rela_local_sym): Revert last change.
40 (_bfd_elf_rel_local_sym): Likewise.
41 * elflink.c (elf_link_input_bfd): Use bfd_und_section for
42 section of symbols with unrecognized shndx.
44 2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
47 * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
49 * cofflink.c (coff_link_add_symbols): Check for symbols defined
52 2019-03-15 Alan Modra <amodra@gmail.com>
55 * elflink.c (elf_link_add_object_symbols): Bail out on a local
56 symbol after globals if elf_bad_symtab is not set.
58 2019-03-15 Alan Modra <amodra@gmail.com>
61 * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
62 (_bfd_elf_rel_local_sym): Likewise.
64 2019-03-15 Alan Modra <amodra@gmail.com>
67 * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
68 object files with sh_size not a multiple of sh_entsize.
70 2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
73 * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
74 input with bad relocation.
76 22019-03-15 H.J. Lu <hongjiu.lu@intel.com>
78 * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
80 2019-03-14 Nick Clifton <nickc@redhat.com>
83 * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
84 (save_section_vma): Initialise field to the number of entries in
86 (section_vma_same): Check that the number of entries in the
87 sec_vma table matches the number of sections in the bfd.
89 2019-03-14 Nick Clifton <nickc@redhat.com>
92 * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
93 section owner pointer when adding the default symbol.
95 2019-03-14 Nick Clifton <nickc@redhat.com>
98 * elflink.c (elf_link_add_object_symbols): Add new local variable
99 extversym_end. Initialise it to point to the end of the version
100 symbol table, if present. Check it when initialising and updating
103 2019-03-13 Sudakshina Das <sudi.das@arm.com>
105 * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
106 (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
107 (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
108 (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
110 (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
111 (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
112 (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
114 2019-03-13 Sudakshina Das <sudi.das@arm.com>
115 Szabolcs Nagy <szabolcs.nagy@arm.com>
117 * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
118 (aarch64_bti_pac_info): New.
119 (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
120 (bfd_elf32_aarch64_set_options): Likewise.
121 * bfd-in2.h: Regenerate
122 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
123 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
124 (elfNN_aarch64_small_plt0_bti_entry): New.
125 (elfNN_aarch64_small_plt_bti_entry): New.
126 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
127 (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
128 (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
129 tlsdesc_plt_entry_size fields.
130 (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
131 (setup_plt_values): New helper function.
132 (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
134 (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
136 (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
137 (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
138 to plt stubs instead of fixed ones and update filling them according
140 (elfNN_aarch64_init_small_plt0_entry): Likewise.
141 (elfNN_aarch64_finish_dynamic_sections): Likewise.
142 (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
143 (elfNN_aarch64_plt_sym_val): Update size accordingly.
144 (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
146 (bfd_elfNN_get_synthetic_symtab): Define.
147 (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
148 and mising BTI NOTE SECTION.
151 2019-03-13 Sudakshina Das <sudi.das@arm.com>
153 * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
154 linker created inputs from merge.
155 * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
156 GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
157 (elfNN_aarch64_link_setup_gnu_properties): New.
158 (elfNN_aarch64_merge_gnu_properties): New.
159 (elf_backend_setup_gnu_properties): Define for AArch64.
160 (elf_backend_merge_gnu_properties): Likewise.
161 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
162 (_bfd_aarch64_elf_parse_gnu_properties): Define.
163 (_bfd_aarch64_elf_merge_gnu_properties): Define.
164 * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
165 (_bfd_aarch64_elf_parse_gnu_properties): Declare.
166 (_bfd_aarch64_elf_merge_gnu_properties): Declare.
167 (elf_backend_parse_gnu_properties): Define for AArch64.
169 2019-03-13 H.J. Lu <hongjiu.lu@intel.com>
172 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
173 merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
175 2019-03-12 Alan Modra <amodra@gmail.com>
177 * coffcode.h (buy_and_read): Delete unnecessary forward decl. Add
178 nmemb parameter. Use bfd_alloc2.
179 (coff_slurp_line_table): Use bfd_alloc2. Update buy_and_read calls.
181 (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
182 (coff_slurp_reloc_table): Use bfd_alloc2. Update buy_and_read calls.
183 * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
185 * elf.c (bfd_section_from_shdr): Use bfd_zalloc2. Style fix.
186 (assign_section_numbers): Style fix.
187 (swap_out_syms): Use bfd_malloc2.
188 (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
190 (_bfd_elf_make_empty_symbol): Style fix.
191 (elfobj_grok_stapsdt_note_1): Formatting.
192 * elfcode.h (elf_object_p): Use bfd_alloc2.
193 (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
194 (elf_slurp_symbol_table): Use bfd_zalloc2.
195 (elf_slurp_reloc_table): Use bfd_alloc2.
196 (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
197 * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
198 size calculation doesn't overflow.
199 (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
200 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
201 * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
203 2019-03-08 Alan Modra <amodra@gmail.com>
206 * merge.c (merge_strings): Return secinfo. Don't pad section
208 (_bfd_merge_sections): Pad section to alignment here, if input
209 sections contributing to merged output all pad to alignment.
212 2019-03-06 Nick Clifton <nickc@redhat.com>
214 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
216 * coffgen.c (coff_find_nearest_line_with_names): Do not call
217 _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
219 2019-03-01 Andreas Krebbel <krebbel@linux.ibm.com>
221 This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
222 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
225 * elf32-s390.c (allocate_dynrelocs): Update comment.
227 2019-02-28 Tamar Christina <tamar.christina@arm.com>
229 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
231 2019-02-28 Nick Clifton <nickc@redhat.com>
234 * elf.c (bfd_elf_string_from_elf_section): Check for a string
235 section that is not NUL terminated.
237 2019-02-27 H.J. Lu <hongjiu.lu@intel.com>
240 * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
241 by linker when checking copy reloc on protected symbol.
243 2019-02-24 Alan Modra <amodra@gmail.com>
246 * pdp11.c (set_section_contents): Revert 2015-02-24 change.
248 2019-02-20 Eric Tsai <erictsai@cadence.com>
250 * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
251 sections between the call site and call destination and adjust
252 call distance by the largest alignment.
254 2019-02-20 Alan Hayward <alan.hayward@arm.com>
256 * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
257 * elf.c (elfcore_grok_aarch_pauth): New function.
258 (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
259 (elfcore_write_aarch_pauth): New function.
260 (elfcore_write_register_note): Check for AArch64 pauth section.
262 2019-02-20 Alan Modra <amodra@gmail.com>
265 * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
268 2019-02-20 Michael Roitzsch <reactorcontrol@icloud.com>
270 * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
271 Darwin hosts, not just or1k.
272 * configure: Regenerate.
274 2019-02-20 Alan Modra <amodra@gmail.com>
277 * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
278 sentinel NUL to string buffer nearer to loop where it is used.
279 Don't go past sentinel when scanning strings, and don't write
281 * archive.c (do_slurp_coff_armap): Simplify string handling to
284 2019-02-19 Alan Modra <amodra@gmail.com>
287 * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
288 attempting to prevent read past end of section.
290 2019-02-18 Alan Modra <amodra@gmail.com>
293 * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
294 PRIx64 to generate warning messages. Print local sym names too.
296 2019-02-09 Vineet Gupta <vgupta@synopsys.com>
298 * elf32-arc (INIT_SYM_STRING): Delete.
299 (FINI_SYM_STRING): Likewise.
300 (init_str): Likewise.
301 (fini_str): Likewise.
303 2019-02-08 Alan Modra <amodra@gmail.com>
305 * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
306 for bss-plt" warning to make it an error.
308 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
311 * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
312 reloc_class_ifunc for ifunc symbols.
313 * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
315 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
317 * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
318 <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
320 2019-02-07 Nick Clifton <nickc@redhat.com>
322 * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
323 into the definitely obsolete list.
325 2019-02-05 H.J. Lu <hongjiu.lu@intel.com>
328 * elf64-x86-64.c (elf_x86_64_need_pic): Check
329 SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
330 (elf_x86_64_relocate_section): Move PIC check for PC-relative
332 (elf_x86_64_check_relocs): Here.
333 (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
334 to check if a symbol is defined in a non-shared object.
335 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
337 2019-01-21 Sergio Durigan Junior <sergiodj@redhat.com>
339 * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
340 of 'labs' (and fix GCC warning).
342 2019-01-25 Nick Clifton <nickc@redhat.com>
344 * po/ru.po: Updated Russian translation.
346 2019-01-23 Nick Clifton <nickc@redhat.com>
348 * po/fr.po: Updated French translation.
350 2019-01-21 Nick Clifton <nickc@redhat.com>
352 * po/pt.po: Updated Portuguese translation.
353 * po/uk.po: Updated Ukranian translation.
355 2019-01-21 Yuri Chornoivan <yurchor@ukr.net>
358 * elf32-nds32.c (nds32_relocate_section): Add space between words
360 * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
362 (riscv_i_or_e_p): Likewise.
363 (riscv_merge_arch_attr_info): Likewise.
365 2019-01-19 Nick Clifton <nickc@redhat.com>
367 * version.m4: Reset to 2.32.51
368 * configure: Regenerate.
369 * po/bfd.pot: Regenerate.
371 2018-06-24 Nick Clifton <nickc@redhat.com>
375 2019-01-16 Kito Cheng <kito@andestech.com>
377 * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
380 2019-01-16 Kito Cheng <kito@andestech.com>
381 Nelson Chu <nelson@andestech.com>
383 * elfnn-riscv.c (in_subsets): New.
384 (out_subsets): Likewise.
385 (merged_subsets): Likewise.
386 (riscv_std_ext_p): Likewise.
387 (riscv_non_std_ext_p): Likewise.
388 (riscv_std_sv_ext_p): Likewise.
389 (riscv_non_std_sv_ext_p): Likewise.
390 (riscv_version_mismatch): Likewise.
391 (riscv_i_or_e_p): Likewise.
392 (riscv_merge_std_ext): Likewise.
393 (riscv_merge_non_std_and_sv_ext): Likewise.
394 (riscv_merge_arch_attr_info): Likewise.
395 (riscv_merge_attributes): Likewise.
396 (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
398 * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
399 (elf_backend_obj_attrs_vendor): Define.
400 (elf_backend_obj_attrs_section_type): Likewise.
401 (elf_backend_obj_attrs_section): Likewise.
402 (elf_backend_obj_attrs_arg_type): Define as
403 riscv_elf_obj_attrs_arg_type.
404 * elfxx-riscv.c (riscv_estimate_digit): New.
405 (riscv_estimate_arch_strlen1): Likewise.
406 (riscv_estimate_arch_strlen): Likewise.
407 (riscv_arch_str1): Likewise.
408 (riscv_arch_str): Likewise.
409 * elfxx-riscv.h (riscv_arch_str): Declare.
411 2019-01-14 John Darrington <john@darrington.wattle.id.au>
413 * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
415 * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
416 source field. (md_apply_fix): Apply final fix
417 to BFD_RELOC_S12Z_OPR.
418 * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
420 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
423 * elf32-s390.c (allocate_dynrelocs): Update comment.
425 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
427 * warning.m4: Adjust egrep pattern for non-GNU compilers.
428 * configure: Regenerate.
430 2019-01-08 Alan Modra <amodra@gmail.com>
434 * ihex.c (ihex_write_object_contents): Properly check 32-bit
437 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
439 * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
440 * bfd/bfd-in2.h: Regenerate.
441 * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
442 * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
444 2019-01-04 Lifang Xia <lifang_xia@c-sky.com>
446 * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
447 default target, little endian target is more suitable.
449 2019-01-04 Alan Modra <amodra@gmail.com>
453 * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
455 (EQ_VALUE_IN_FIELD): Likewise.
456 * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
458 2019-01-01 Alan Modra <amodra@gmail.com>
460 Update year range in copyright notice of all files.
462 For older changes see ChangeLog-2018
464 Copyright (C) 2019 Free Software Foundation, Inc.
466 Copying and distribution of this file, with or without modification,
467 are permitted in any medium without royalty provided the copyright
468 notice and this notice are preserved.
474 version-control: never