X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2FChangeLog;h=701357c3ad7d8c3f416d7d1158bcf26c4253b97f;hb=f5e98b7d675230fdfee794afa5ebae1fbc2893a2;hp=8b7e53e1ad3d89a775430edc16721adb3757189a;hpb=ad9e24ad113a160d8d44dba0eb5cb02647a164e0;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8b7e53e1ad..701357c3ad 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,409 @@ +2021-04-23 Eric Botcazou + + * elf.c (special_sections_p): Add .persistent.bss. + +2021-04-23 Jan Beulich + + * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero + size field. + * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL + has zero size field. + +2021-04-22 Clément Chigot + + * hash.c (struct bfd_strtab_hash): Remove xcoff field. + Add length_field_size field. + (_bfd_stringtab_init): Change prototype. + Adapt to new length_field_size. + (_bfd_xcoff_stringtab_init): Likewise. + (_bfd_stringtab_add): Likewise. + (_bfd_stringtab_emit): Likewise. + * libbfd-in.h (_bfd_xcoff_stringtab_init): + Change prototype. + * libbfd.h: Regenerate. + * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): + Call _bfd_xcoff_stringtab_init with isxcoff64 value. + +2021-04-22 Clément Chigot + + * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for + unsupported storage class or auxialiry entries. + Improve and adapt to new aux structures. + Add C_DWARF support. + (_bfd_xcoff_swap_aux_out): Likewise. + * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise. + (_bfd_xcoff64_swap_aux_out): Likewise. + +2021-04-21 Eli Zaretskii + + PR 27760 + * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display + of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP, + IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags. + Decode the contents of the DllCharacteristics field. + +2021-04-21 Nick Clifton + + PR 27759 + * srec.c (srec_read_section): Replace assertions with error + returns. + +2021-04-20 Clément Chigot + + PR binutils/21700 + * reloc.c (BFD_RELOC_PPC_NEG): New relocation. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add + BFD_RELOC_PPC_NEG handler. + (xcoff_reloc_type_neg): Correctly substract addend. + * coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32 + howto. + (xcoff64_rtype2howto): Add handler for R_NEG_32. + (xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler. + * xcofflink.c (xcoff_need_ldrel_p): Check output section + for R_POS-like relocations. New argument added. + (xcoff_mark): Adapt to new xcoff_need_ldrel_p argument. + (xcoff_link_input_bfd): Likewise. + +2021-04-16 Alan Modra + + PR 27567 + * coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags. + (coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT, + ignore alignment checks when return is false. Formatting. + +2021-04-15 Nelson Chu + + PR27584 + * elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to + omit local and empty symbols since they usually generated to + mark the auipc instructions. + +2021-04-15 Lifang Xia + + * elf32-csky.c (csky_elf_howto_table) + : Set special_function to + bfd_elf_generic_reloc. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + +2021-04-14 H.J. Lu + + PR binutils/27708 + * elf.c (assign_file_positions_for_non_load_sections): Set + p_memsz to p_filesz for the loadable PT_NOTE segment. + +2021-04-14 Frederic Cambus + + * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef + checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS. + +2021-04-14 Alan Modra + + PR 27631 + * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf + when hh might be NULL, test for NULL first. + +2021-04-14 Alan Modra + + PR 27630 + * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when + hash might be NULL, cast instead. + +2021-04-13 Clément Chigot + + * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier. + +2021-04-13 Nelson Chu + + * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning + when the version of input or output is RISCV_UNKNOWN_VERSION, since + the extension is added implicitly. + * elfxx-riscv.c: Updated the obsolete comments. + (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h. + * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added. + +2021-04-12 Alan Modra + + * elf-bfd.h (ENABLE_CHECKING): Define. + (elf_link_hash_lookup): Abort if wrong type of hash table. + * configure.ac (--enable-checking): Add support. + * config.in: Regenerate. + * configure: Regenerate. + +2021-04-12 Alan Modra + + * elf-bfd.h (is_elf_hash_table): Convert macro to inline function. + (elf_link_hash_lookup, elf_link_hash_traverse): Likewise. + (elf_hash_table, elf_hash_table_id): Likewise. + * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant + is_elf_hash_table check. + * elf32-csky.c (elf32_csky_setup_section_lists): Likewise. + * elf32-hppa.c (clobber_millicode_symbols): Correct param types. + * elf64-alpha.c (elf64_alpha_output_extsym): Likewise. + * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise. + (elfNN_ia64_global_dyn_sym_thunk: Likewise. + * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise. + (elf64_ia64_global_dyn_sym_thunk): Likewise. + (elf64_vms_link_add_object_symbols): Pass base type of hash table + to is_elf_hash_table. + * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise. + (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise. + (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise. + (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise. + (bfd_elf_final_link): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise. + * elf64-ppc.c (ppc64_elf_set_toc): Likewise. Use bfd_link_hash_lookup. + +2021-04-12 Alan Modra + + * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry* + from elf_backend_archive_symbol_lookup. + (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*. + * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise. Check + we have a ppc_hash_table before accessing ppc_link_hash_entry + fields. + * elflink.c (_bfd_elf_archive_symbol_lookup): Return + bfd_link_hash_entry*. + (elf_link_add_archive_symbols): Adjust to suit. + +2021-04-12 Nelson Chu + + * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of + i-ext when expanding g-ext. + +2021-04-12 Nelson Chu + + * elfxx-riscv.c (riscv_ext_dont_care_version): Removed. + (riscv_parse_add_subset): Always add the implicit extensions, even if + their versions are RISCV_UNKNOWN_VERSION. + (riscv_parse_std_ext): Delay to add i-ext as the implicit extension + in the riscv_parse_add_implicit_subsets. Besides, add g-ext as the + implicit extension after it has been expanded. + (riscv_parse_add_implicit_subsets): Updated. + +2021-04-12 Nelson Chu + + * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward. + (riscv_std_s_ext_strtab): Likewise. + (riscv_std_h_ext_strtab): Likewise. + (riscv_std_zxm_ext_strtab): Added for the zxm prefix. + (enum riscv_prefix_ext_class): Moved forward and renamed from + riscv_isa_ext_class. Reorder them according to the parsing order, + since the enum values are used to check the orders in the + riscv_compare_subsets. + (struct riscv_parse_prefix_config): Moved forward and renamed from + riscv_parse_config_t. Also removed the ext_valid_p field, the + related functions are replaced by riscv_valid_prefixed_ext. + (parse_config): Moved forward and updated. The more letters of the + prefix string, the more forward it must be defined. Otherwise, we + will get the wrong mapping when using strncmp in riscv_get_prefix_class. + (riscv_get_prefix_class): Moved forward. Support to parse the + multi-letter prefix, like zxm. + (riscv_known_prefixed_ext): New function, check if the prefixed + extension is supported according to the right riscv_std_*_ext_strtab. + (riscv_valid_prefixed_ext): New function, used to replace the + riscv_ext_*_valid_p functions. + (riscv_init_ext_order): Do not set the values for prefix keywords + since they may have multiple letters for now. + (riscv_compare_subsets): Set the order values of prefix keywords + to negative numbers according to the riscv_prefix_ext_class. + (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we + have parsed the prefixed extensions. + (riscv_parse_prefixed_ext): Updated and removed the parameter config. + Report error when the prefix is unknown. + (riscv_parse_subset): Do not parse the prefixed extensions according + to the orders in the parse_config. Remove the confused message and + let riscv_parse_prefixed_ext to report the details. + * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c. + (riscv_get_prefix_class): Removed to static. + +2021-04-08 Mike Frysinger + + * configure.ac (ACX_BUGURL): Use https://. + * configure.com (COPY_TEXT): Likewise. + * configure: Regenerate. + +2021-04-05 Alan Modra + + * configure.ac: Don't check for long long or long double type. + Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h, + strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check + for strtoull, free, malloc, realloc, getenv, strstr, snprintf, + vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS. + (AC_ISC_POSIX): Don't invoke. + (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise. + * sysdep.h: Remove many HAVE_*_H checks and fallback declarations. + Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder + header order as per automake AC_INCLUDES_DEFAULT. + * bfd-in.h: Include inttypes.h unconditionally. + * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and + long double are available. + (bfd_scan_vma): Assume long long and strtoull are available. + * elflink.c: Include limits.h unconditionally. + * elfnn-riscv.c: Likewise. + * wasm-module.c: Likewise. + * hpux-core.c: Include dirent.h unconditionally. + * trad-core.c: Likewise. + * hosts/x86-64linux.h: Include stdlib.h unconditionally. + * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks. + * elf32-m68hc1x.c: Don't include alloca-conf.h. + * elf64-hppa.c: Likewise. + * som.c: Likewise. + * wasm-module.c: Likewise. + * xsym.c: Likewise. + * bfd-in2.h: Regenerate. + * config.in: Regenerate. + * configure: Regenerate. + +2021-04-01 Tamar Christina + + PR ld/26659 + * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow. + +2021-04-01 Martin Liska + + * ecoff.c (strneq): Remove strneq and use startswith. + (_bfd_ecoff_slurp_armap): Likewise. + +2021-04-01 Martin Liska + + * elf-bfd.h (bfd_section_is_ctf): Use startswith function. + * elf.c (_bfd_elf_make_section_from_shdr): Likewise. + (elf_get_reloc_section): Likewise. + * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise. + * elf32-m32r.c (m32r_elf_section_flags): Likewise. + * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise. + * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise. + (nds32_elf_relocate_section): Likewise. + (nds32_elf_action_discarded): Likewise. + (nds32_elf_check_relocs): Likewise. + (nds32_elf_section_flags): Likewise. + * elf32-or1k.c (or1k_elf_check_relocs): Likewise. + * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise. + * elf32-rx.c (rx_table_find): Likewise. + (rx_table_map): Likewise. + * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise. + (spu_elf_find_overlays): Likewise. + (needs_ovl_stub): Likewise. + (allocate_spuear_stubs): Likewise. + (build_spuear_stubs): Likewise. + (mark_overlay_section): Likewise. + (spu_elf_auto_overlay): Likewise. + (spu_elf_output_symbol_hook): Likewise. + * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise. + * elf32-xtensa.c (xtensa_property_section_name): Likewise. + * elf64-ppc.c (ppc64_elf_section_flags): Likewise. + (ppc64_elf_relocate_section): Likewise. + * elflink.c (resolve_section): Likewise. + (UNARY_OP): Likewise. + (BINARY_OP_HEAD): Likewise. + (elf_link_input_bfd): Likewise. + * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise. + * elfxx-riscv.c (riscv_parse_subset): Likewise. + * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise. + * opncls.c (get_build_id): Likewise. + +2021-03-31 Alan Modra + + PR 27671 + * bfd-in.h: Don't poison FALSE or TRUE. + * bfd-in2.h: Regenerate. + +2021-03-31 Alan Modra + + * sysdep.h: POISON_BFD_BOOLEAN: Define. + * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h, + * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c, + * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c, + * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c, + * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c, + * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c, + * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c, + * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c, + * coffcode.h, * coffgen.c, * cofflink.c, * compress.c, + * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c, + * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c, + * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c, + * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c, + * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c, + * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c, + * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c, + * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c, + * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c, + * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c, + * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c, + * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c, + * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c, + * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c, + * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c, + * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c, + * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c, + * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c, + * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c, + * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c, + * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c, + * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c, + * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h, + * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c, + * elf-nacl.h, * elf-properties.c, * elf-s390-common.c, + * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h, + * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c, + * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c, + * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c, + * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c, + * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c, + * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c, + * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c, + * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c, + * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, + * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c, + * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c, + * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c, + * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, + * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c, + * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c, + * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c, + * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h, + * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h, + * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c, + * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h, + * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c, + * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c, + * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c, + * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c, + * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c, + * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c, + * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h, + * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c, + * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c, + * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h, + * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h, + * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h, + * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h, + * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c, + * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h, + * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h, + * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c, + * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h, + * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c, + * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c, + * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c, + * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c, + * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c, + * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c, + * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c, + * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h, + * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c, + * xsym.h: Replace bfd_boolean with bool, FALSE with false, and + TRUE with true throughout. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * libcoff.h: Regenerate. + 2021-03-31 Alan Modra * bfd-in.h: Include stdbool.h.