X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=bfd%2FChangeLog;h=fa67c70f7d2deaba408a02dc1bd3634fa6cdacfd;hb=f5c5b7c124934b464b67c7c3c53a1c62a7f4e98a;hp=50027c63f3fbbdaec4892fbb5cd42752ca0637fe;hpb=ef551643dc282159185cb9916c7cb0308ae03cdd;p=binutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 50027c63f3f..fa67c70f7d2 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,848 @@ +2019-09-23 Alan Modra + + * bfd-in.h: Move m68k function declaration.. + * cpu-m68k.h: ..to here, new file.. + * elf32-m68k.h: ..and here, new file. + * elf32-m68k.c: Include cpu-m68k.h and elf32-m68k.h. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move bfin function declaration.. + * elf32-bfin.h: ..to here, new file. + * elf32-bfin.c: Include elf32-bfin.h. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move cr16 function declaration.. + * elf32-cr16.h: ..to here, new file. + * elf32-cr16.c: Include elf32-cr16.h. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h (bfd_sunos_get_needed_list), + (bfd_sunos_record_link_assignment), + (bfd_sunos_size_dynamic_sections), + (bfd_i386linux_size_dynamic_sections), + (bfd_sparclinux_size_dynamic_sections): Delete obsolete decls. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move xcoff function declarations.. + * xcofflink.h: ..to here, new file. + * xcofflink.c: Include xcofflink.h. + * coff-rs6000.c (bfd_xcoff_ar_archive_set_magic): Delete unused func. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Delete coff forward refs and move coff declaration.. + * coff-bfd.h: ..to here. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move arm declaraions.. + * cpu-arm.h: ..to here, new file.. + * coff-arm.h: ..and here, new file.. + * elf32-arm.h: ..and here, new file. + * cpu-arm.c: Include cpu-arm.h. + * coff-arm.c: Include cpu-arm.h and coff-arm.h. + * elf32-arm.c: Include cpu-arm.h and elf32-arm.h. + * pe-arm.c: Move function rename defines later. + * pe-arm-wince.c: Likewise and include sysdep.h and bfd.h early. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move tic6x function declaration.. + * elf32-tic6x.h: ..to here. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move aarch64 declarations and defines.. + * cpu-aarch64.h: ..to here, new file.. + * elfxx-aarch64.h: ..and here. + * cpu-aarch64.c: Include cpu-aarch64.h. + * elfnn-aarch64.c: Likewise. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Delete ticoff function declarations. + * coff-tic54x.c (bfd_ticoff_set_section_load_page), + (bfd_ticoff_get_section_load_page): Make static. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move h8300 function declaration to.. + * cpu-h8300.h: ..here, new file. + * cpu-h8300.c: Include cpu-h8300.h. + * elf32-h8300.c: Likewise. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move ia64 function declarations.. + * elfxx-ia64.h: ..to here. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move v850 function declarations.. + * elf32-v850.h: ..to here, new file. + * elf32-v850.c: Include elf32-v850.h. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move mips function declaration to.. + * elfxx-mips.h: ..here. + * bfd-in2.h: Regenerate. + +2019-09-23 Alan Modra + + * bfd-in.h: Move csky function declarations to.. + * elf32-csky.h: ..here, new file. + * elf32-csky.c: Include elf32-csky.h. + * bfd-in2.h: Regenerate. + +2019-09-20 Nelson Chu + + * elfnn-riscv.c (riscv_pcgp_hi_reloc): Add new field undefined_weak. + (riscv_record_pcgp_hi_reloc): New parameter undefined_weak. + Set undefined_weak field from it. + (relax_func_t): New parameter undefined_weak. + (_bfd_riscv_relax_call): New ignored parameter undefined_weak. + (_bfd_riscv_relax_tls_le): Likewise. + (_bfd_riscv_relax_align): Likewise. + (_bfd_riscv_relax_delete): Likewise. + (_bfd_riscv_relax_lui): New parameter undefined_weak. If true, + allow relaxing. For LO12* relocs, set rs1 to x0 when undefined_weak. + (_bfd_riscv_relax_pc): New parameter undefined_weak. For LO12* relocs, + set undefined_weak from hi_reloc. If true, allow relaxing. For LO12* + relocs, set rs1 to x0 when undefined_weak and change to non-pcrel + reloc. + (_bfd_riscv_relax_section): New local undefined_weak. Set for + undef weak relocs that can be relaxed. Pass to relax_func call. + +2019-09-20 Alan Modra + + * bfd-in.h (bfd_section_name, bfd_section_size, bfd_section_vma), + (bfd_section_lma, bfd_section_alignment, bfd_section_flags), + (bfd_section_userdata, bfd_is_com_section, discarded_section), + (bfd_get_section_limit_octets, bfd_get_section_limit): Delete macros. + * bfd.c (bfd_get_section_limit_octets, bfd_get_section_limit), + (bfd_section_list_remove, bfd_section_list_append), + (bfd_section_list_prepend, bfd_section_list_insert_after), + (bfd_section_list_insert_before, bfd_section_removed_from_list): + New inline functions. + * section.c (bfd_is_und_section, bfd_is_abs_section), + (bfd_is_ind_section, bfd_is_const_section, bfd_section_list_remove), + (bfd_section_list_append, bfd_section_list_prepend), + (bfd_section_list_insert_after, bfd_section_list_insert_before), + (bfd_section_removed_from_list): Delete macros. + (bfd_section_name, bfd_section_size, bfd_section_vma), + (bfd_section_lma, bfd_section_alignment, bfd_section_flags), + (bfd_section_userdata, bfd_is_com_section, bfd_is_und_section), + (bfd_is_abs_section, bfd_is_ind_section, bfd_is_const_section), + (discarded_section): New inline functions. + * bfd-in2.h: Regenerate. + +2019-09-20 Alan Modra + + * bfd-in.h (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name), + (bfd_asymbol_bfd, bfd_asymbol_flavour, bfd_set_asymbol_name): Delete. + * bfd.c (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name), + (bfd_asymbol_bfd, bfd_set_asymbol_name): New inline functions. + * targets.c (bfd_asymbol_flavour): Likewise. + * bfd-in2.h: Regenerate. + +2019-09-20 Alan Modra + + * archive.c (bfd_generic_archive_p): Use bfd_set_thin_archive. + * bfd-in.h (bfd_get_filename, bfd_get_cacheable, bfd_get_format), + (bfd_get_target, bfd_get_flavour, bfd_family_coff, bfd_big_endian), + (bfd_little_endian, bfd_header_big_endian, bfd_header_little_endian), + (bfd_get_file_flags, bfd_applicable_file_flags), + (bfd_applicable_section_flags, bfd_has_map, bfd_is_thin_archive), + (bfd_valid_reloc_types, bfd_usrdata, bfd_get_start_address), + (bfd_get_symcount, bfd_get_outsymbols, bfd_count_sections), + (bfd_get_dynamic_symcount, bfd_get_symbol_leading_char): Delete. + * bfd/bfd.c (bfd_get_filename, bfd_get_cacheable, bfd_get_format), + (bfd_get_file_flags, bfd_get_start_address, bfd_get_symcount), + (bfd_get_dynamic_symcount, bfd_get_outsymbols, bfd_count_sections), + (bfd_has_map, bfd_is_thin_archive, bfd_set_thin_archive), + (bfd_usrdata, bfd_set_usrdata): New inline functions. + * targets.c (bfd_get_target, bfd_get_flavour), + (bfd_applicable_file_flags, bfd_family_coff, bfd_big_endian), + (bfd_little_endian, bfd_header_big_endian), + (bfd_header_little_endian, bfd_applicable_section_flags), + (bfd_get_symbol_leading_char): New inline functions. + * bfd-in2.h: Regenerate. + +2019-09-20 Alan Modra + + * elf64-ppc.c (ppc64_glibc_dynamic_reloc): New function. + (ppc64_elf_relocate_section): Warn if emitting unsupported dynamic + relocations. + +2019-09-18 Alan Modra + + * bfd-in.h (bfd_get_section_name, bfd_get_section_vma), + (bfd_get_section_lma, bfd_get_section_alignment), + (bfd_get_section_size, bfd_get_section_flags), + (bfd_get_section_userdata): Delete. + (bfd_section_name, bfd_section_size, bfd_section_vma), + (bfd_section_lma, bfd_section_alignment): Lose bfd parameter. + (bfd_section_flags, bfd_section_userdata): New. + (bfd_is_com_section): Rename parameter. + * section.c (bfd_set_section_userdata, bfd_set_section_vma), + (bfd_set_section_alignment, bfd_set_section_flags, bfd_rename_section), + (bfd_set_section_size): Delete bfd parameter, rename section parameter. + (bfd_set_section_lma): New. + * bfd-in2.h: Regenerate. + * mach-o.c (bfd_mach_o_init_section_from_mach_o): Delete bfd param, + update callers. + * aoutx.h, * bfd.c, * coff-alpha.c, * coff-arm.c, * coff-mips.c, + * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c, + * compress.c, * ecoff.c, * elf-eh-frame.c, * elf-hppa.h, + * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-properties.c, + * elf-s390-common.c, * elf-vxworks.c, * elf.c, * elf32-arc.c, + * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c, + * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c, * elf32-csky.c, + * elf32-d10v.c, * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c, + * elf32-ft32.c, * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c, + * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c, + * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c, + * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c, + * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, + * elf32-nios2.c, * elf32-or1k.c, * elf32-ppc.c, * elf32-pru.c, + * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c, + * elf32-score7.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c, + * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c, * elf32-visium.c, + * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c, + * elf64-bpf.c, * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c, + * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c, + * elflink.c, * elfnn-aarch64.c, * elfnn-ia64.c, * elfnn-riscv.c, + * elfxx-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c, + * elfxx-tilegx.c, * elfxx-x86.c, * i386msdos.c, * linker.c, + * mach-o.c, * mmo.c, * opncls.c, * pdp11.c, * pei-x86_64.c, + * peicode.h, * reloc.c, * section.c, * syms.c, * vms-alpha.c, + * xcofflink.c: Update throughout for bfd section macro and function + changes. + +2019-09-18 Alan Modra + + * bfd-in.h (bfd_asymbol_section): Rename from bfd_get_section. + (bfd_get_output_section): Delete. + (bfd_asymbol_base): Delete. + (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name), + (bfd_asymbol_bfd, bfd_asymbol_flavour): Tidy. + (bfd_set_asymbol_name): New macro. + * bfd-in2.h: Regenerate. + * aout-cris.c: Update throughout to use bfd_asymbol_section. + * aoutx.h: Likewise. + * cofflink.c: Likewise. + * dwarf2.c: Likewise. + * ecoff.c: Likewise. + * elf.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-mips.c: Likewise. + * elf32-score.c: Likewise. + * elf32-score7.c: Likewise. + * elfn32-mips.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfxx-mips.c: Likewise. + * linker.c: Likewise. + * pdp11.c: Likewise. + * elf64-mmix.c (mmix_elf_reloc): Part expand bfd_get_output_section. + +2019-09-18 Simon Marchi + + * Makefile.in: Re-generate. + * configure: Re-generate. + * doc/Makefile.in: Re-generate. + +2019-09-18 Alan Modra + + * aoutx.h (slurp_symbol_table): Don't set symcount using bfd_get + macros. + * pdp11.c (slurp_symbol_table): Likewise. + * som.c (som_slurp_symbol_table): Likewise. + * coff-ppc.c (ppc_bfd_coff_final_link): Likewise. + * coffcode.h (coff_slurp_symbol_table): Likewise. + * cofflink.c (_bfd_coff_final_link): Likewise. + * ecoff.c (ecoff_slurp_symbolic_header): Likewise. + (_bfd_ecoff_slurp_symbolic_info): Likewise. + (_bfd_ecoff_slurp_symbol_table): Likewise. + (_bfd_ecoff_bfd_final_link): Likewise. + * elf.c (_bfd_elf_canonicalize_symtab): Likewise. + * elflink.c (elf_link_output_symstrtab): Likewise. + (bfd_elf_final_link): Likewise. + * peicode.h (pe_ILF_build_a_bfd): Likewise. + * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise. + * aoutx.h (some_aout_object_p, slurp_symbol_table): Don't set + start_address or symcount using bfd_get macros. + * coffgen.c (coff_real_object_p): Likewise. + * pdp11.c (some_aout_object_p, slurp_symbol_table): Likewise. + * som.c (som_object_setup, som_slurp_symbol_table): Likewise. + * elfcore.h (elf_core_file_p): Don't set start_address using + bfd_get macro. + * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Don't set dynsymcount + using bfd_get macro. + * bfd.c (bfd_set_file_flags): Don't set flags using bfd_get macro. + * linker.c (bfd_generic_link_read_symbols): Don't set outsymbols + or symcount using bfd_get macros. + (_bfd_generic_final_link, generic_add_output_symbol): Likewise. + * syms.c (bfd_set_symtab): Likewise. + * vms-alpha.c (alpha_vms_bfd_final_link): Likewise. + * archive.c (do_slurp_bsd_armap): Don't set has_armap using + bfd_has_map macro. + (do_slurp_coff_armap, bfd_slurp_armap): Likewise. + * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise. + * coff-rs6000.c (_bfd_xcoff_slurp_armap): Likewise. + * coff64-rs6000.c (xcoff64_slurp_armap): Likewise. + * ecoff.c (_bfd_ecoff_slurp_armap): Likewise. + * som.c (som_slurp_armap): Likewise. + +2019-09-18 Alan Modra + + * archures.c (bfd_get_arch): Make param const. + (bfd_get_mach, bfd_arch_bits_per_byte): Likewise. + (bfd_arch_bits_per_address, bfd_octets_per_byte): Likewise. + * bfd-in2.h: Regenerate. + +2019-09-18 Alan Modra + + * bfd-in.h (carsym.name): Make const. + * reloc.c (struct reloc_howto_struct.name): Likewise. + * targets.c (bfd_target.name): Likewise.! + * bfd.c (bfd_get_sign_extend_vma): Make variable const. + * som.c (som_bfd_fill_in_ar_symbols): Use an intermediary variable + when setting carsym.name. + * bfd-in2.h: Regenerate. + +2019-09-18 Alan Modra + + * mach-o.c (bfd_mach_o_fat_member_init): Likewise. Replace + xstrdup and xmalloc with bfd_strdup and bfd_malloc. Return an + error status. Adjust calls. + * vms-lib.c (_bfd_vms_lib_get_module): Test mhd->id earlier. + Close bfd on failure. Replace xstrdup/bfd_alloc use with + bfd_malloc. Use bfd_set_filename. + +2019-09-18 Alan Modra + + * elf64-ppc.c (must_be_dyn_reloc): Return 0 for TOC16 relocs. + (ppc64_elf_check_relocs): Support dynamic/copy relocs for TOC16. + (ppc64_elf_adjust_dynamic_symbol): Don't keep dynamic reloc when + needs_copy even if all relocs are in rw sections. + (dec_dynrel_count): Handle TOC16 relocs. + (ppc64_elf_relocate_section): Support dynamic relocs for TOC16. + (ppc64_elf_finish_dynamic_symbol): Adjust to handle needs_copy + semantic change. + +2019-09-16 Phil Blundell + + * version.m4: Set version to 2.33.50. + * Makefile.in, configure, doc/Makefile.in: Regenerated. + +2019-09-11 Tom Tromey + + * opncls.c (bfd_set_filename): New function. + * bfd-in2.h: Regenerate. + +2019-09-11 Alan Modra + + * targets.c (struct bfd_target): Add _bfd_group_name. + (BFD_JUMP_TABLE): Likewise. + * coffgen.c (bfd_coff_group_name): New function. + * elf.c (bfd_elf_group_name): New function. + * linker.c (_bfd_nolink_bfd_group_name): New function. + * section.c (bfd_generic_group_name): New function. + * elf-bfd.h (bfd_elf_group_name): Declare. + * libbfd-in.h (_bfd_nolink_bfd_group_name): Declare. + * libcoff-in.h (bfd_coff_group_name): Declare. + * aout-target.h (MY_bfd_group_name): Define. + * aout-tic30.c (MY_bfd_group_name): Define. + * bfd.c (bfd_group_name): Define. + * binary.c (binary_bfd_group_name): Define. + * coff-alpha.c (_bfd_ecoff_bfd_group_name): Define. + * coff-mips.c (_bfd_ecoff_bfd_group_name): Define. + * coff-rs6000.c (_bfd_xcoff_bfd_group_name): Define. + * coffcode.h (coff_bfd_group_name): Define. + * elfxx-target.h (bfd_elfNN_bfd_group_name): Define. + * i386msdos.c (msdos_bfd_group_name): Define. + * ihex.c (ihex_bfd_group_name): Define. + * mach-o-target.c (bfd_mach_o_bfd_group_name): Define. + * mmo.c (mmo_bfd_group_name): Define. + * pef.c (bfd_pef_bfd_group_name): Define. + * plugin.c (bfd_plugin_bfd_group_name): Define. + * ppcboot.c (ppcboot_bfd_group_name): Define. + * som.c (som_bfd_group_name): Define. + * srec.c (srec_bfd_group_name): Define. + * tekhex.c (tekhex_bfd_group_name): Define. + * verilog.c (verilog_bfd_group_name): Define. + * vms-alpha.c (vms_bfd_group_name, alpha_vms_bfd_group_name): Define. + * xsym.c (bfd_sym_bfd_group_name): Define. + * coff64-rs6000.c (rs6000_xcoff64_vec): Init new field. + (rs6000_xcoff64_aix_vec): Likewise. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * libcoff.h: Regenerate. + +2019-09-10 Nick Clifton + + PR 24907 + * archures.c (bfd_arch_info_type): Add max_reloc_offset_into_insn + field. + (bfd_default_arch_struct): Initialise the new field. + * bfd-in2.h: Regenerate. + * cpu-aarch64.c: Initialise the new field. + * cpu-alpha.c: Likewise. + * cpu-arc.c: Likewise. + * cpu-arm.c: Likewise. + * cpu-avr.c: Likewise. + * cpu-bfin.c: Likewise. + * cpu-bpf.c: Likewise. + * cpu-cr16.c: Likewise. + * cpu-cr16c.c: Likewise. + * cpu-cris.c: Likewise. + * cpu-crx.c: Likewise. + * cpu-csky.c: Likewise. + * cpu-d10v.c: Likewise. + * cpu-d30v.c: Likewise. + * cpu-dlx.c: Likewise. + * cpu-epiphany.c: Likewise. + * cpu-fr30.c: Likewise. + * cpu-frv.c: Likewise. + * cpu-ft32.c: Likewise. + * cpu-h8300.c: Likewise. + * cpu-hppa.c: Likewise. + * cpu-i386.c: Likewise. + * cpu-ia64.c: Likewise. + * cpu-iamcu.c: Likewise. + * cpu-ip2k.c: Likewise. + * cpu-iq2000.c: Likewise. + * cpu-k1om.c: Likewise. + * cpu-l1om.c: Likewise. + * cpu-lm32.c: Likewise. + * cpu-m10200.c: Likewise. + * cpu-m10300.c: Likewise. + * cpu-m32c.c: Likewise. + * cpu-m32r.c: Likewise. + * cpu-m68hc11.c: Likewise. + * cpu-m68hc12.c: Likewise. + * cpu-m68k.c: Likewise. + * cpu-m9s12x.c: Likewise. + * cpu-m9s12xg.c: Likewise. + * cpu-mcore.c: Likewise. + * cpu-mep.c: Likewise. + * cpu-metag.c: Likewise. + * cpu-microblaze.c: Likewise. + * cpu-mips.c: Likewise. + * cpu-mmix.c: Likewise. + * cpu-moxie.c: Likewise. + * cpu-msp430.c: Likewise. + * cpu-mt.c: Likewise. + * cpu-nds32.c: Likewise. + * cpu-nfp.c: Likewise. + * cpu-nios2.c: Likewise. + * cpu-ns32k.c: Likewise. + * cpu-or1k.c: Likewise. + * cpu-pdp11.c: Likewise. + * cpu-pj.c: Likewise. + * cpu-plugin.c: Likewise. + * cpu-powerpc.c: Likewise. + * cpu-pru.c: Likewise. + * cpu-riscv.c: Likewise. + * cpu-rl78.c: Likewise. + * cpu-rs6000.c: Likewise. + * cpu-rx.c: Likewise. + * cpu-s12z.c: Likewise. + * cpu-s390.c: Likewise. + * cpu-score.c: Likewise. + * cpu-sh.c: Likewise. + * cpu-sparc.c: Likewise. + * cpu-spu.c: Likewise. + * cpu-tic30.c: Likewise. + * cpu-tic4x.c: Likewise. + * cpu-tic54x.c: Likewise. + * cpu-tic6x.c: Likewise. + * cpu-tic80.c: Likewise. + * cpu-tilegx.c: Likewise. + * cpu-tilepro.c: Likewise. + * cpu-v850.c: Likewise. + * cpu-v850_rh850.c: Likewise. + * cpu-vax.c: Likewise. + * cpu-visium.c: Likewise. + * cpu-wasm32.c: Likewise. + * cpu-xc16x.c: Likewise. + * cpu-xgate.c: Likewise. + * cpu-xstormy16.c: Likewise. + * cpu-xtensa.c: Likewise. + * cpu-z80.c: Likewise. + * cpu-z8k.c: Likewise. + +2019-09-09 Phil Blundell + + binutils 2.33 branch created. + +2019-09-06 Alan Modra + + * aout-target.h (object_p): Formatting. + * bfd-in.h (bfd_get_filename): Don't cast to char*. + * corefile.c (generic_core_file_matches_executable_p): Constify + variables and remove cast. + * bfd-in2.h: Regenerate. + +2019-09-05 Alan Modra + + * elf64-ppc.c (ppc64_elf_check_relocs): Interpret an addend in + GOT_PCREL and PLT_PCREL relocs as affecting the value stored + in the GOT/PLT entry rather than affecting the offset to that + GOI/PLT entry. + (ppc64_elf_edit_toc, ppc64_elf_relocate_section): Likewise. + +2019-09-05 Alan Modra + + * elf64-ppc.c (xlate_pcrel_opt): Handle prefix loads and stores + in second instruction. + (ppc64_elf_relocate_section): Likewise. + +2019-09-05 Alan Modra + + PR 24955 + * libbfd-in.h (bfd_strdup): New inline function. + * archive.c (_bfd_get_elt_at_filepos): Use bfd_strdup. Close + bfd on error. + * elfcode.h (_bfd_elf_bfd_from_remote_memory): Use bfd_strdup. + * opncls.c (bfd_fopen): Use bfd_strdup. Close fd and stream + on error. + (bfd_openstreamr): Use bfd_strdup. + (bfd_openr_iovec, bfd_openw, bfd_create): Likewise. + * plugin.c (try_load_plugin): Use bfd_malloc. + * libbfd.h: Regenerate. + +2019-09-02 Alan Modra + + PR 11983 + * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Free debug_filename + on success. Tidy. + (read_alt_indirect_string): Likewise. + (read_alt_indirect_ref): Likewise. + +2019-08-31 Jim Wilson + + PR 23825 + * elfnn-riscv.c (riscv_elf_create_dynamic_sections): Add SEC_LOAD, + SEC_DATA, and SEC_HAS_CONTENTS to .tdata.dyn section. + +2019-08-30 Jim Wilson + + * elfnn-riscv.c (riscv_elf_relocate_section): For unresolvable reloc + error, call bfd_set_error, set ret to FALSE, and goto out label. + +2019-08-30 H.J. Lu + + PR ld/24951 + * archive.c (_bfd_get_elt_at_filepos): Copy BFD_COMPRESS, + BFD_DECOMPRESS and BFD_COMPRESS_GABI flags for thin archive. + +2019-08-29 Alan Modra + + PR 24697 + * elf32-ppc.c (ppc_elf_check_relocs): Call bad_shared_reloc + when !bfd_link_executable for R_PPC_EMB_SDA2I16 and + R_PPC_EMB_SDA2REL. Don't call bad_shared_reloc for any other + reloc. + +2019-08-29 Alan Modra + + * elf64-ppc.c (xlate_pcrel_opt): Add poff parameter. Allow offset + on second insn, return it in poff. + (ppc64_elf_relocate_section): Add offset to paddi addend for + PCREL_OPT. + +2019-08-28 Jim Wilson + + * elfnn-riscv.c (_bfd_riscv_relax_lui): Add check to exclude abs + section when setting max_alignment. Update comment. + (_bfd_riscv_relax_pc): Likewise. + +2019-08-29 Alan Modra + + PR 24891 + * bfd.c (struct bfd): Add no_element_cache. + * archive.c (_bfd_get_elt_at_filepos): Don't add element to + archive cache when no_element_cache. + (bfd_generic_archive_p): Set no_element_cache when opening first + element to check format. Close first element too. + (do_slurp_bsd_armap): Don't zero ardata->cache here. + * bfd-in2.h: Regenerate. + +2019-08-24 Alan Modra + + * elf64-ppc.c (ppc64_elf_edit_toc): Exclude undefined weak + symbols from GOT optimisation. + +2019-08-23 Stafford Horne + + * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Use correct value for + PLT GOT entries. + +2019-08-23 Nick Clifton + + PR 24456 + * elf.c (bfd_section_from_shdr): Issue an informative warning + message and continue processing other sections after encountering + a reloc section for a section which already has other relocs + associated with it. + +2019-08-23 Alan Modra + + PR 24933 + * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Don't exit + on error without freeing plts[] contents. + +2019-08-22 Dennis Zhang + + * cpu-arm.c: New entries for Cortex-M35P, Cortex-A77, Cortex-A76AE. + +2019-08-22 Nick Clifton + + PR 24922 + * pei-x86_64.c (pex64_xdata_print_uwd_codes): Add checks before + reading data from extra records. + +2019-08-22 Tamar Christina + + PR ld/24601 + * elfnn-aarch64.c (aarch64_relocate): Handle weak TLS and undefined TLS. + Also Pass input_bfd to _bfd_aarch64_elf_resolve_relocation. + * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use it. + * elfxx-aarch64.h (_bfd_aarch64_elf_resolve_relocation): Emit warning + for weak TLS. + +2019-08-22 Alan Modra + + * elf32-arm.c (cmse_scan): Don't use ARM_GET_SYM_CMSE_SPCL, + instead recognize CMSE_PREFIX in symbol name. + (elf32_arm_gc_mark_extra_sections): Likewise. + (elf32_arm_filter_cmse_symbols): Don't test ARM_GET_SYM_CMSE_SPCL. + (elf32_arm_swap_symbol_in): Don't invoke ARM_SET_SYM_CMSE_SPCL. + +2019-08-20 Dennis Zhang + + * cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65, + Cortex-A77, cortex-A65AE, and Cortex-A76AE. + +2019-08-20 Tamar Christina + + * elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub, + elf32_arm_stub_long_branch_v4t_thumb_thumb, + elf32_arm_stub_long_branch_v4t_thumb_arm, + elf32_arm_stub_short_branch_v4t_thumb_arm, + elf32_arm_stub_long_branch_v4t_thumb_arm_pic, + elf32_arm_stub_long_branch_v4t_thumb_thumb_pic, + elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to + previous instruction. + +2019-08-19 Tom Tromey + + * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table + holding symbols. + +2019-08-19 Alan Modra + + * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel + to has_optrel. + (struct _ppc64_elf_section_data): Likewise. + (ppc64_elf_check_relocs): Set has_optrel for more relocs. + (ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather + than TOC loop. Check PLT16 insns too. + +2019-08-16 H.J. Lu + + PR ld/24905 + * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for + PC-relative relocations back to ... + (elf_x86_64_relocate_section): Here. + +2019-08-16 Martin Liska + + PR ld/24912 + * elflink.c: Report error only for not relocatable. + * linker.c (_bfd_generic_link_add_one_symbol): Do not handle + here lto_slim_object as it's handled in caller. + +2019-08-16 Alan Modra + + * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs. + +2019-08-15 Jim Wilson + + * elfnn-riscv.c (perform_relocation) : If + RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction + to c.li instruction, and use ENCODE_RVC_IMM to set value. + +2019-08-15 Tom Tromey + + * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end + of section. + +2019-08-14 Alan Modra + + PR 24623 + * dwarf2.c (stash_comp_unit): New function, extracted from.. + (_bfd_dwarf2_find_nearest_line): ..here. + (find_abstract_instance): Parse comp units and decode line info + as needed. + +2019-08-14 Alan Modra + + * dwarf2.c (comp_unit_maybe_decode_line_info): Declare. + (comp_unit_find_nearest_line): Use it here.. + (_bfd_dwarf2_find_symbol_bias): ..and here. + +2019-08-14 Alan Modra + + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter. + * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. + * coffgen.c (coff_find_nearest_line_with_names): Adjust + _bfd_dwarf2_find_nearest_line calls. + * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise. + * elf32-arm.c (elf32_arm_find_nearest_line): Likewise. + * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise. + * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise. + * mach-o.c (bfd_mach_o_find_nearest_line): Likewise. + * libbfd.h: Regenerate. + +2019-08-09 Mihailo Stojanovic + + * elf-bfd.h (struct elf_backend_data): New members. + * elflink.c (_bfd_elf_link_create_dynamic_sections): Create + .gnu.hash section if necessary. + (struct collect_gnu_hash_codes): New member. + (elf_gnu_hash_process_symidx): New function name. + (elf_renumber_gnu_hash_syms): Ignore local and undefined + symbols. Record xlat location for every symbol which should have + a .MIPS.xhash entry. + (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to + dynamic section if necessary. + (GNU_HASH_SECTION_NAME): New define. + (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section. + Update the section size info. + * elfxx-mips.c (struct mips_elf_hash_sort_data): New members. + (struct mips_elf_link_hash_entry): New member. + (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation + table location. + (mips_elf_sort_hash_table): Initialize the pointer to the + .MIPS.xhash section. + (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash + translation table entry with the symbol dynindx. + (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH. + (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section + info. + (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash + section. + (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to + dynamic section. + (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH. + (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section + sh_link info. + (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag. + (MIPS_LIBC_ABI_XHASH): New ABI version enum value. + (_bfd_mips_post_process_headers): Mark the ABI version as + MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section, + but not a .hash section. + (_bfd_mips_elf_record_xhash_symbol): New function. Record a + position in the translation table, associated with the hash + entry. + * elfxx-mips.h (literal_reloc_p): Define + elf_backend_record_xhash_symbol backend hook. + * elfxx-target.h: Initialize elf_backend_record_xhash_symbol + backend hook. + +2019-08-07 Jose E. Marchesi + + * elf64-bpf.c (bpf_elf_relocate_section): New function. + (bpf_elf_insn_disp_reloc): Delete function. + (elf_backend_relocate_section): Define. + +2019-08-07 Alan Modra + + PR 24644 + * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check + for overflow in expressions involving nsymz. + +2019-08-01 Ilia Diachkov + + * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to + two pages in relro presence. + +2019-08-01 Max Filippov + + * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode) + (get_wsr_lbeg_opcode): New functions. + (check_loop_aligned): Detect relaxed loops and adjust loop_len + and insn_len for the first actual instruction of the loop. + +2019-07-30 Alan Modra + + PR 24768 + * bfd.c (struct bfd): Add lto_slim_object flag. + * bfd-in2.h: Regenerate. + +2019-07-29 Martin Liska + + PR 24768 + * archive.c (_bfd_compute_and_write_armap): Come up with + report_plugin_err variable. + * bfd-in2.h (struct bfd): Add lto_slim_object flag. + * elf.c (struct lto_section): New. + (_bfd_elf_make_section_from_shdr): Parse content of + .gnu_lto_.lto section. + * elflink.c: Report error for a missing LTO plugin. + * linker.c (_bfd_generic_link_add_one_symbol): Likewise. + +2019-07-28 Alan Modra + + PR 24857 + PR 24339 + * elflink.c (elf_link_add_object_symbols): Report an informative + error on finding local symbols with index equal or greater than + symbol table sh_info. Correct comment. Allow such symbols in + dynamic objects. Abort on NULL section for symbol. + +2019-07-26 Alan Modra + + * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field. + (elf_linker): Don't define. + * elflink.c (bfd_elf_final_link): Don't set elf_linker. + +2019-07-25 YunQiang Su + + PR 24832 + * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit + mips inputs. + +2019-07-24 Claudiu Zissulescu + + * elf32-arc.c (bfd_get_32_me): Add a small description, fix + formating. + (reloc_type_to_name): Fix formating. + (arc_elf_object_p): Likewise. + (debug_arc_reloc): Likewise. + (arc_do_relocation): Likewise. + 2019-07-24 Claudiu Zissulescu * elf32-arc.c (bfd_get_32_me): New function.